Nabo kontrol i prolog
Hej...Jeg sidder med er prolog program, hvor jeg har deklareret en håndfuld celler på flg. måde:
cell(1, 2).
cell(1, 3).
etc.
Jeg ville gerne lave en clause, der kontrollerer om to celler er naboer. Jeg har forsøgt mig med flg.
neighbor(c(X, Y), c(Z, W)) :- X =:= Z + 1, Y =:= W.
neighbor(c(X, Y), c(Z, W)) :- X =:= Z - 1, Y =:= W.
neighbor(c(X, Y), c(Z, W)) :- Y =:= W + 1, X =:= Z.
neighbor(c(X, Y), c(Z, W)) :- Y =:= W - 1, X =:= Z.
...hvilket åbenlyst ikke fungerer hvis f.eks. den ene celle er ubekendt.
Nogen forslag til hvordan jeg får det til at fungere? Hvad gør jeg evt. forkert?
på forhånd tak for hjælpen
