Учебник Пролога: Записывается набор фактов
После установки SWI-Prolog или GNU Prolog по выбору ты входишь в систему, щелкая значок на рабочем столе, в результате чего открывается интерактивная консоль. Тогда можно ввести факты, правила и вопросы. Мы покинем систему, введя:
?- halt.
Обратите внимание, что любая команда или строка кода заканчивается точкой в Prolog .
Первое, что нужно сделать в программе - констатировать факты.
Как мыслит человеческий разум, используя ссылки, слова, представляющие вещи, пролог использует ссылки, прежде чем добавить им отношения. Эти ссылки и их отношения называют «фактами».
Пример фактов:
alyssa.
fille(alyssa).
fille(kiera).
Здесь нет прописных инициалов с именами, потому что это только для переменных, что мы увидим ниже. Но можно написать:
fille('Alyssa').
fille('Kiera').
Добавить факт в пространство программы, ссылку или отношения, как только что сделали, утверждает их существование. Тогда можно спросить, правда ли что-то.
Но раньше, чтобы не вводить одни и те же данные в каждом сеансе, эти факты будут помещаться в исходный файл расширения «.pl», как, например, «faits.pl».
Следующая команда в консоли prolog :
consult(faits.pl)
загружает содержимое этого файла в память и компилирует его.
Затем можно запрашивать систему, вводя запросы. Например:
?- fille('Kiera').
Система отвечает «да», потому что этот факт хорошо зарегистрирован .
Если вы печатаете:
?- fille('Tom').
Он ответит: «Нет».
Переменная пролога начинается с заглавной буквы или может состоять из простой заглавной буквы типа «X». Если спросить систему с переменной, а не ссылкой, она сделает «унификацию» переменной со всеми фактами, которые проверяются на заданное отношение. Например:
?- fille(X).
Консоль покажет:
X = 'Alyssa' ?
и будет ждать, пока вы нажмете на пробел, чтобы получить следующую строку. Затем она покажет:
X = 'Kiera'
Факты могут использоваться в правилах для формирования знаний, с помощью которых можно решать более сложные задачи.