Qu'est-ce qu'un moyen élégant d'unifier X, Y avec (1,2), (1, -2), (-1,2), (-1, -2), (2,1), (2, - 1), (-2,1), (-2, -1)?Qu'est-ce qu'un moyen élégant d'unifier X, Y avec (1,2), (1, -2), (-1,2), (-1, -2), (2,1), (2, -1), (-2,1), (-2, -1)?
En procédant ainsi, semble sujette aux erreurs et fastidieux:
foo(1,2).
foo(1,-2).
foo(-1,-2).
...
...
...
Et cette façon semble trop cher:
foo(X,Y) :-
L = [1,-1,2,-2],
member(X,L),
member(Y,L),
abs(X,X1), abs(Y,Y1),
X1 =\= Y1.
Cela peut nécessiter quelques précisions. : P – Noldorin
Je vois un octogone! Fuir! –
Exemple ajouté ^^^ – TheOne