% Chess board after Alekhnovich04 % unique: u(...) is true if precisely one argument is 1 and the rest are 0 u(1). u(1,0). u(0,1). u(1,0,0). u(0,1,0). u(0,0,1). u(1,0,0,0). u(0,1,0,0). u(0,0,1,0). u(0,0,0,1). % coding: o=square, x=removed square, number=possible domino % o 2 o 6 o x % 1 5 10 % o 4 o 9 o 14 o % 3 8 13 18 % o 7 o 12 o 17 o % 11 16 20 % x o 15 o 19 o test(B):-B=[A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,A16,A17,A18,A19,A20], u(A1,A2), u(A1,A4,A3), u(A2,A5,A6), u(A3,A7), u(A4,A5,A9,A8), u(A6,A10), u(A7,A8,A11,A12), u(A9,A10,A13,A14), u(A11,A15), u(A12,A13,A16,A17), u(A14,A18), u(A15,A16,A19), u(A17,A18,A20), u(A19,A20). % o 2 o 6 o 23 x % 1 5 10 24 % o 4 o 9 o 14 o % 3 8 13 18 % o 7 o 12 o 17 o % 21 11 16 20 % x 22 o 15 o 19 o test2(B):-B=[A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,A16,A17,A18,A19,A20, A21, A22, A23, A24], u(A1,A2), u(A1,A4,A3), u(A2,A5,A6), u(A3,A7,A21), u(A4,A5,A9,A8), u(A6,A10,A23), u(A21,A22),u(A7,A8,A11,A12), u(A9,A10,A13,A14), u(A23,A24), u(A22,A11,A15), u(A12,A13,A16,A17), u(A14,A18,A24), u(A15,A16,A19), u(A17,A18,A20), u(A19,A20).