ms4(L):-
	Som is 4 * (4 * 4 + 1) // 2,

	L = [A11, A12, A13, A14,
	     A21, A22, A23, A24,
	     A31, A32, A33, A34,
	     A41, A42, A43, A44],

	fd_domain(L,1,16),

	fd_all_different(L),

	A11 + A12 + A13 + A14 #= Som,
	A21 + A22 + A23 + A24 #= Som,
	A31 + A32 + A33 + A34 #= Som,
	A41 + A42 + A43 + A44 #= Som,

	A11 + A21 + A31 + A41 #= Som,
	A12 + A22 + A32 + A42 #= Som,
	A13 + A23 + A33 + A43 #= Som,
	A14 + A24 + A34 + A44 #= Som,

	A11 + A22 + A33 + A44 #= Som,
	A14 + A23 + A32 + A41 #= Som,

	% Definition of the search procedure in 'queens.pl'
	fd_labeling(L).

