Мы только что начали работать над Prolog в одном из моих классов программирования. Я получаю несколько ошибок, и я не совсем уверен в том, что их вызывает. Это домашнее задание, поэтому я не ожидаю никаких выписанных ответов, но любые подсказки будут оценены.Ошибка компиляции Prolog «Неопределенная ссылка на предикат»
Вот мой код:
/* Database for family. It consists of facts and rules. */
/* Facts */
male(mark).
/* Question 1.1 */
male(tom).
male(eric).
male(josh).
male(austin).
/* Question 1.1 */
female(jen).
female(beth).
female(lisa).
female(alice).
female(alex).
father_of(mark, beth). /* mark is the father of beth */
/* Question 1.1
father_of(josh, eric).
father_of(eric, mark).
father_of(eric, jen).
father_of(austin, alice).
mother_of(jen, tom). /* jen is the mother of tom */
/* Question 1.1
mother_of(lisa, eric).
mother_of(alex, alice).
mother_of(alice, jen).
mother_of(alice, mark).
/* Rules */
is_male(X) :-
male(X);
father_of(X, _).
/* Question 1.2 */
is_female(X) :-
female(X);
mother_of(X, _).
/* Question 1.3 */
grandfather_of(X, Z) :-
father_of(X, Y),
(mother_of(Y, Z); father_of(Y, Z)).
grandmother_of(X, Z) :-
mother_of(X, Y),
(mother_of(Y, Z); father_of(Y, Z)).
Ошибки я получаю: /tmp/gplc0GI9tg.o: В функции `Lpred7_1' :
(.text + 0x2d1): неопределенная ссылка на predicate(mother_of/2)' /tmp/gplc0GI9tg.o: In function
предикат (grandfather_of/2) ':
(.text + 0x35d): не определено ссылка на predicate(mother_of/2)' /tmp/gplc0GI9tg.o: In function
предиката (grandmother_of/2)':
(.text + 0x3a8): не определено ссылка на predicate(mother_of/2)' /tmp/gplc0GI9tg.o: In function
предиката (grandmother_of/2) ':
(.text + 0x3ed): не определено ссылка на `предиката (mother_of/2)' collect2: ошибка: LD возвращается 1 статус выхода компиляции не удалось
Проверьте, где ваши комментарии начинаются и заканчиваются ... – Steven
@Stevem Спасибо, что нашли отзыв! – Jordanthedud