必须编写一些序言规则来表示等腰三角形的几何特性。
第一条规则是说
angleEqual(angle(A,B,C),angle(A,C,B)):-
triangle(A,B,C),
lineEqual(line(A,B),line(A,C)).
第二条规则说
lineEqual(line(A,B),line(A,C)):-
triangle(A,B,C),
angleEqual(angle(A,B,C),angle(A,C,B)).
但是,如果给定以下事实,这两个规则一起将导致相互依赖,并且 prolog 将永远循环
triangle(a,b,c).
lineEqual(line(a,b),line(a,c)).
并查询
?- angleEqual(A,B).
任何想法?非常感谢。