
Получается, что Пат - сестра себе самой?!Наверное, когда мы определяли отношение сестра,мы не имели этого ввиду. Однако ответ Прологасовершенно логичен, поскольку онруководствовался нашим правилом, а это правилоничего не говорит о том, что, если X - сестра Y, то X иY не должны совпадать. Пролог (с полным правом)считает, что X и Y могут быть одним и тем жеобъектом и в качестве следствия из этого делаетвывод, что любая женщина, имеющая родителя,является сестрой самой себе.
Чтобы исправить наше правило о сестрах, егонужно дополнить утверждением, что X и Y должныразличаться. В следующих главах мы увидим, какэто можно сделать, в данный же момент мыпредположим, что отношение различны ужеизвестно пролог-системе и что цель
различны( X, Y)
достигается тогда и только тогда, когда X и Y неравны. Усовершенствованное правило дляотношения сестра примет тогдаследующий вид:
сестра( X, Y) :-
родитель( Z, X),
родители( Z, Y),
женщина( X),
различны( X, Y).
Некоторые важные моменты этого раздела:
Пролог-программы можно расширять, добавляя в них новые предложения.
Прологовские предложения бывают трех типов:
факты
,
правила
и
вопросы
.
Факты содержат утверждения, которые
являются всегда, безусловно верными.
Правила содержат утверждения, истинность которых зависит от некоторых условий.
С помощью вопросов пользователь может спрашивать систему о том, какие утверждения являются
