¿Hay una manera fácil de hacer una consulta en prolog solo devolver cada resultado una vez?resultados únicos de prolog
por ejemplo estoy intentando algo como:
deadly(Xn) :- scary(X), Xn is X - 1, Xp is X + 1, not(safe(Xn)), safe(Xp).
deadly(Xp) :- scary(X), Xn is X - 1, Xp is X + 1, not(safe(Xp)), safe(Xn).
deadly(X).
y conseguir
X = 5
X = 5
X = 5
X = 5
....
Por no muy útil para mí.
cada vez que he usado! ha detenido por completo la evaluación y quiero que cada valor que encuentre el prólogo, pero solo una vez por valor. (Probaré y reduciré mi caso) – BCS
Es una cuestión de cuándo y dónde usarlo. Decir "nunca más volver aquí" tiene un significado totalmente diferente antes o después de la primera captura de datos. – MarkusQ