二等辺三角形に関する幾何学的特性を表すために、いくつかのプロローグルールを作成する必要があります。
最初のルールは言うことです
angleEqual(angle(A,B,C),angle(A,C,B)):-
triangle(A,B,C),
lineEqual(line(A,B),line(A,C)).
2番目のルールは言う
lineEqual(line(A,B),line(A,C)):-
triangle(A,B,C),
angleEqual(angle(A,B,C),angle(A,C,B)).
しかし、2つのルールが一緒になると相互依存関係が発生し、次のような事実が与えられた場合、プロローグは永遠にループします
triangle(a,b,c).
lineEqual(line(a,b),line(a,c)).
とクエリ
?- angleEqual(A,B).
何か案が?どうもありがとう。