
- •1. Разл.Парадигмы пр-я и подходы к опр-ю выч-ти. Декларативные яп как альт. Императивным. Лп как алг-я модель, альт-я модели Тьюринга — фон Неймана.
- •3.Исчисление предикатов 1-го порядка. Понятие о формальной аксиоматической системе.Выводимость (|-) в форм. Аксиом. Системе.Правило вывода modus ponens.
- •4. Понятие о полноте, непротиворечивости и корректности логической системы. Связь логического вывода с общезначимостью. Тh о дедукции.
- •5.Алгоритмическая неразрешимость исчисления предикатов. Тh Черча. Th Геделя о неполноте формальной арифметики.
- •6. Норм-е формы. Дизьюнкты Хорна. Сведение ф-л лог.Пр-в к фразам Хорна.
- •7. Унификация. Правила унификации сложных структур.
- •8. Правило вывода modus tollens. Простое и обобщенное правило резолюции.
- •9. Метод резолюции для реализации эф-го логического вывода в логических программах на основе фраз Хорна. Стратегии резолюции. Sld-резолюция.
- •11. Декларативная и процедурная семантика языка лп. Примеры.
- •12. Отрицание в логическом программировании. Отрицание по неуспеху и предположение о замкнутости мира. Sldnf-резолюция.
- •14. Основные объекты языка Пролог: атомы, числа, константы, переменные, термы, структурные термы, предикаты.
- •15. Операторы. Представление и выч-ие арифметич-х выр-й. Опред-е польз-м операторы. Представление предикатов и правил структурными термами.
- •16. Подходы к организации циклов в лп. Примеры. Предикаты for, repeat.
- •17. Управление перебором и отсечение( cut). Предикат not.
- •18. Встроенные предикаты Пролога: read, write, nl.
- •21. Описание основных предикатов обработки списков: определение длины, взятие n-ого элемента, принадлежность элемента списку, конкатенация списков.
- •22. Описание основных предикатов обработки списков: удаление элемента из списка, определение подсписка, перестановки.
- •23. Порядковое представление списков в Прологе. Представ-е матриц. Примеры.
- •25. Деревья. Деревья поиска, основные операции с деревьями поиска.
- •26. Сбалансир-е деревья. Алгоритм добавления узла в сбалансир-е дерево.
- •27. Представления графов. Алгоритмы поиска пути (в глубину, в ширину).
- •28. Метод генерации и проверок для решения задач. Метод ветвей и границ. Явный и неявный перебор в Пролог-программах.
- •31. Операторы. Преобр.Симв.Выр.В дерево.Выч-е значений арифм.Выр.По строке.
- •30. Решение задач методом поиска в пространстве состояний. Пример. Принципы подбора алгоритма поиска пути в зависимости от задачи.
- •32. Символьные вычисления. Алгоритм символьного дифференцирования.
- •33. Подходы к символьному упрощению выражений.
- •34. Анализ ест-го языка с использованием контекстно-свободной грамматики. Подход к интерпретации знаний в естественно-языковом материале.
- •35. Учет контекстных усл. Работа со словарями. Глуб. И пов. Структуры в ест.Яз.
- •36.Расширение логического интерпретатора Пролога средствами языка. Мета-интерпритаторы. Примеры
- •24. Разностные списки. Хвостовая рекурсия. Сведение рекурсивного нехвостового определения к хвостовому. Примеры.
6. Норм-е формы. Дизьюнкты Хорна. Сведение ф-л лог.Пр-в к фразам Хорна.
Df
Литера - атомарная формула или ее
отрицание. Df
Дизъюнкт - формула из дизъюнкции литер.
КНФ
- Конъюнкция
элементарных дизъюнкций. Приведение:
дистрибутивность A
(B
C)
(A
B)
(A
C);
де Морган: не(A
B)
неA
неB;
не(A
B)
неA
неB;
Df
(A
B)
= неA
неB;
(A
B)
= (A
B)
(неA
неB).
Предваренная
(ПНФ) – пренексная – (
x_1…
x_n)
F(x_1…x_n),
{
},
F
– ф-ла, кот.не содержит кванторов.
Приведение: 1.Перенос кванторов в начало
формулы; 2.Устранение конфликтов между
именами связанных перем-х.
Скулемовская
(СНФ) – квантор
удаляется,
а соответствующая перем-я заменяется
на константу: (
x)(
y)Q(x,y)
(
x)Q(x,f(x)).
Приведение:1.Выберем самый левый
;
2. Заменяем
со
связанной перем-й на не входящий в ф-лу
функциональный символ; 3.Пока остался
хотя бы 1
повторяем
алгоритм. Th
Ф-ла
логики предикатов невыполнима
(общезначима) тттк невыполнима
(общезначима) ее СНФ.
Клаузальная
(КлНФ) – дизъюнкция литер А_1
А_2…
A_n,
A_i
\in{P(),
неP()}.
1.Приведение к ПНФ; 2.Приведение к СНФ;
3.Отбрасывание
(для компактности); 4.Приведение к КНФ;
5.Запись дизъюнктов в КНФ в виде мн-ва
ф-л в КлНФ.
Дизъюнкт
(фраза) Хорна - A
неB_1…
неB_n.
Приведение: A
неB_1…
неB_n
= неB_1…
неB_n
А = не(B_1
…
B_n)
А = [неX
v
Y
= (X
Y)]
= (B_1
…
B_n)
А. Если пройти в обратном порядке,
получаем сведение формул логики
предикатов к дизъюнкту Хорна. Основное
ограничение: нет отрицания в посылках
и заключениях.
7. Унификация. Правила унификации сложных структур.
Df
Подстановка
=
{X_1/t_1,…X_n/t_n}
– мнво пар пер-х X_i
и соотв-х им термов t_i,
где (
I
j)
X_i
X_j,
t_i
X_i.
Df
Применение
к ф-ле или терму
F
(F
) - Формула или терм (определяемые
рекурсивно), где все X_i
заменены на соотв. t_i.
Df
Унифика-тор
- подстановка
,
для ф-л
или
термов
F
и G,
если
F
= G
.
Df
Угифицирующиеся ф-лы - формулы, для
которых
унификатор. Смысл унификации - выявлять
эквив-е ф-лы, кот.м.б. приведены одна к
другой путем замены переменных. Если
мн-во уни-фицируемо, то сущ-ет, как
правило, не один унификатор этого мн-ва,
а несколько. Среди всех унификаторов
данного мн-ва выделяют так называемый
наиболее общий унификатор Df
(mgu)
— содержит только замены, необх-е
для приведения 2х формул к идентичному
виду. Обозначают:
=
mgu(F,
G).
Правила,
кот.исп-ся для унификации 2х произв.термов:
1.Переменные
– с чем
угодно. При унификации с другой переменной,
они
связываются; 2.Константы.
Только с такой же константой. 3.Предикаты.
Тттк у них одинак.: функциональный
символ, арность, все аргументы попарно
унифицируются. Иначе унификации нет.
8. Правило вывода modus tollens. Простое и обобщенное правило резолюции.
modus tollens – классическое правило вывода: A B, неB |- неA. Если док-во A B верно, но мы пришли к противоречию в заключении, то исходная посылка неверна.
Резолюция
Исп. A
B = неА v
B,
перепишем и получим:
•Простое правило - неА
v
B,
неB
|- неA.
КлНФ:•Расширенная
(L_1
…
L_n)
неА, (M_1
…
M_k)
А |- (L_1
…
L_n)
(M_1
…
M_k),
где L_1,…,L_n,M_1,…,M_k
– литеры, A
– атомарная ф-ла. Посылки – исх.ф-лы,
Резольвента – результир.ф-ла. Объединение
посылок, исключение общего дизъюнкта
и его отрицания. •Обобщенная (L_1
…
L_n)
неА,(M_1
…
M_k)
B
|- ((L_1
…
L_n)
(M_1
…
M_k))
,
где
=mgu(A,B).
Очень мощное правило. Достаточно для
построения дедуктивной системы.
Достигается за счет того, что не требуется
правил подстановки, - понятие унификации
позволяет автоматически находить
подходящие правила, применения резолюций.
Для док-ва методом резолюций исп-ся
метод опровержения. Надо
д-ть A
из посылок
{B_1,…,B_n}.
Пытаемся
доказать противоречивость
{B_1,…,B_n,неA}.
При
помощи метода резолюций пытаются
получить пустой дизъюнкт □: A,
неA
□.