在下面的代码中,我在姐妹函数中遇到错误,该函数在**中"非法字符"
区块报价
个人=P1**(=表示不等于)
区块报价
域人员=SYMBOL
谓词家长(人,人)女性(人)男性(人)母亲(人,人)父亲祖父祖母(人,人)姐妹(人,人)
条款女性(快乐)。女性(辛德拉)。雌性(朱丽叶)。女性(丽莎)。
male(parker).
male(peter).
male(herry).
male(bob).
male(paul).
parent(juliet,lisa).
parent(bob,lisa).
parent(bob,paul).
parent(bob,merry).
parent(juliet,paul).
parent(juliet,merry).
parent(peter,herry).
parent(lisa,herry).
parent(merry,parker).
parent(merry,syndra).
father(X,Person):-parent(X,Person) , male(X).
mother(X,Person):-parent(X,Person) , female(X).
grandfather(X,Person):-parent(Y,Person),father(X,Y).
grandmother(X,Person):-parent(Y,Person),mother(X,Y).
sister(X,Person):-parent(Z,X),parent(Z,Person),Person = P1,female(Person).
不确定,我不能尝试,因为我现在没有Turbo Prolog,但我隐约记得变量不需要声明。
我怀疑Child应该是Person(毕竟,Child就是一个人)。尝试以这种方式简化
DOMAINS
Person = SYMBOL
PREDICATES
parent(Person,Person)
female(Person)
male(Person)
mother(Person,Person)
...