prc(A,B,[A,B,C,D,E]). prc(A,C,[A,B,C,D,E]). prc(A,D,[A,B,C,D,E]). prc(A,E,[A,B,C,D,E]). prc(B,C,[A,B,C,D,E]). prc(B,D,[A,B,C,D,E]). prc(B,E,[A,B,C,D,E]). prc(C,D,[A,B,C,D,E]). prc(C,E,[A,B,C,D,E]). prc(D,E,[A,B,C,D,E]). one(A,[A,B,C,D,E]). three(C,[A,B,C,D,E]). neighbor(A,B,[A,B,C,D,E]). neighbor(B,C,[A,B,C,D,E]). neighbor(C,D,[A,B,C,D,E]). neighbor(D,E,[A,B,C,D,E]). neighbor(B,A,[A,B,C,D,E]). neighbor(C,B,[A,B,C,D,E]). neighbor(D,C,[A,B,C,D,E]). neighbor(E,D,[A,B,C,D,E]). nation(h(N,C,A,B,T),N). color(h(N,C,A,B,T),C). animal(h(N,C,A,B,T),A). drink(h(N,C,A,B,T),B). tobacco(h(N,C,A,B,T),T). go(X,Y) :- St = [h(N1,C1,A1,B1,T1),h(N2,C2,A2,B2,T2), h(N3,C3,A3,B3,T3),h(N4,C4,A4,B4,T4),h(N5,C5,A5,B5,T5)], member(X2,St),nation(X2,english),color(X2,green), member(X3,St),nation(X3,spanish),animal(X3,dog), member(X4,St),color(X4,red),drink(X4,coffee), member(X5,St),nation(X5,ukrainian),drink(X5,tea), neighbor(X6a,X6b,St),prc(X6b,X6a,St),color(X6a,red),color(X6b,white), member(X7,St),tobacco(X7,oldgold),animal(X7,snails), member(X8,St),color(X8,yellow),tobacco(X8,gauloises), three(X9,St),drink(X9,milk), one(X10,St),nation(X10,norwegian), neighbor(X11a,X11b,St),tobacco(X11a,chesterfield),animal(X11b,fox), neighbor(X12a,X12b,St),tobacco(X12a,gauloises),animal(X12b,horse), member(X13,St),tobacco(X13,luckystrikes),drink(X13,orangejuice), member(X14,St),nation(X14,japanese),tobacco(X14,gitanes), neighbor(X15a,X15b,St),nation(X15a,norwegian),color(X15b,blue), member(Q,St),animal(Q,zebra),nation(Q,X), member(R,St),drink(R,water),nation(R,Y).