3
Q
一階邏輯&序言
A
回答
4
我想你指的就是以下幾點:
mammal(X) :- dog(X).
mammal(X) :- cat(X).
insect(X) :- fly(X).
也就是說,哺乳動物或者是東西是狗或貓。您必須明確指定屬於該哺乳動物類別的類別。昆蟲也一樣。
與一階邏輯問題連接這一點,mammal
第一項內容如下:爲每一個X,其中X是狗,X也爲哺乳動物(同爲貓),依此類推。
4
我已經延長@迭戈塞維利亞的答案,包括什麼是動物的原始問題,並添加了執行。
% Your original facts
dog(spot).
cat(nyny).
fly(harry).
% @ Diego Sevilla's predicates
mammal(X) :- dog(X).
mammal(X) :- cat(X).
insect(X) :- fly(X).
% Defining what an animal is - either insect or (;) mammal
animal(X) :- insect(X) ; mammal(X).
% Running it, to get the names of all animals
?- animal(X).
X = harry ;
X = spot ;
X = nyny.