:- 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.

- N=4 with
- simple labeling 1K (6K)
- first failure labeling 1K (6K)
- ffc labeling 2K (14K)

- N=5 with
- simple labeling 270K (2582K) -- maybe faster
- first failure labeling 41K (354K)
- ffc labeling 83K (710K)

[logprog|GUPU|UWN]