Предикаты для работы с утверждениями, структурами, атомами.
1)consult(X) – для добавления утверждений из некоторого файла к утвер- ждениям, имеющимся в конец БД. X-атом, содерж. имя файла.
reconsult(X) – вводимые утверждения заменяют все имеющиеся утвер-я
для того же самого предиката.
Llisting- вывод утвержд. из БД в текущий выходной файл. listing(N/A)-все
утверждения для предиката с именем N и арностью A. listing(N)-утвер-я
всех предикатов с именем N любой арности. С помощью listing можно
сохранять состояние БД перед завер. работы, а с пом. reconsult загру-
жать информацию.
clause(X,Y) – для создания программ, анализ. или обрабат. другие программы, X и Y-голова и тело некоторого имеющегося в БД утвержд.
X д.б. конкретизирован, чтобы стал известен функтор структуры. Если
утв. сопост. с фактом, то Y сопоставим с true.
asserta(X) – добавляет новое утверж. X в начало БД.
assert(X),assertz(X) – в конец БД. assert((a:-b,c)).
retract(X) – удаляет из БД первое утв-е, сопоставимое с X. При возврате
поиск и удаление следующего утвержд-я, сопоставимого с Х.
2)functor(T,F,N)- для распознания и создания структур. T-структура с функтором, F-функтор, N-арность структуры.
arg(N,T,A)-доступ к компонентам структуры. A-N-ый компонент структ.T,
в случае успеха.
Предикат T=..L обеспечивает альтерн. способ обраб. структур, выдает
список всех компонент структуры.
name(X,Y): X-атом, а Y-список ASCII-кодов символов атома X.