:- magquad(M) <<< n_magquad_vars(5,M,Vars), labeling_zs([ffc],Vars). ----- n599 ------------------------
The fields in a magic square are numbered from 1 to n^2 with all sums of colums, rows, and the two diagonals being equal. The process of labeling is illustrated as follows. The darker a field the fewer values are possible for a variable. A black field contains an actual number. The size of the number represents the time when that variable was bound. Newer (more volatile) bindings are thus represented by smaller numbers.
The following complete animations (up to the first solution) can be viewed with the help of a postscript previewer like ghostscript. Unfortunately, the Adobe Previewer is not capable of displaying the actual animation.