# Monitoring the execution of Solve

I have a big system of linear equations.

I need an exact result. It is a symbolic problem in the sense I want an exact result, but I don't have variables, everything is an (exact) number.

To give you an Idea, this is my script, where:

Length[CouplesFinaux] = (3^7)*2.
degreMax = {2, 2, 2, 2, 2, 2, 2}


(Again, I have 3^7 unknowns A and B in my system)

res = fonctionRes @@@ CouplesFinaux;

eq = polynomeAtrouver @@@ CouplesFinaux;

listeEquations =
Table[eq[[k]] == res[[k]], {k, 1, Length[CouplesFinaux]}];

inconnues =
Union[Flatten[
Table[A[i1, i2, i3, i4, i5, i6, i7], {i1, 0, degreMax[[1]]}, {i2,
0, degreMax[[2]]}, {i3, 0, degreMax[[3]]}, {i4, 0,
degreMax[[4]]}, {i5, 0, degreMax[[5]]}, {i6, 0,
degreMax[[6]]}, {i7, 0, degreMax[[7]]}]],
Flatten[Table[
B[i1, i2, i3, i4, i5, i6, i7], {i1, 0, degreMax[[1]]}, {i2, 0,
degreMax[[2]]}, {i3, 0, degreMax[[3]]}, {i4, 0,
degreMax[[4]]}, {i5, 0, degreMax[[5]]}, {i6, 0,
degreMax[[6]]}, {i7, 0, degreMax[[7]]}]]];

solutions = Solve[listeEquations, inconnues]


The system is a little long to solve and I would like to follow its execution.

How can I do this? I know there is the Monitor and ProgressIndicator functions that are used to monitor an execution, but I would need a variable to follow, here I can't how I could make it work.

Do you have an Idea of how I could proceed?

 : I tried as suggested to use EvaluationMonitor but it doesn't work

• related mathematica.stackexchange.com/a/94281/27539. The main idea is that you can use EvaluationMonitor to check the progress of the variables being solved
– glS
Jul 2, 2017 at 13:31
• @glS EvaluationMonitor is not recognized by my solve function. Jul 6, 2017 at 16:11
• (1) I cannot rune the code above so it's difficult to test anything. (2) There is no direct way to monitor exact linear algebra computations. (3) As I commented in a prior version of this question, it might require implementation of an iterative method along the lines of the one by Zhendong Wan. Jul 6, 2017 at 17:00