Теормин 2014 (avasite), страница 5
Описание файла
Документ из архива "Теормин 2014 (avasite)", который расположен в категории "". Всё это находится в предмете "математическая логика и логическое программирование" из 7 семестр, которые можно найти в файловом архиве МГУ им. Ломоносова. Не смотря на прямую связь этого архива с МГУ им. Ломоносова, его также можно найти и в других разделах. .
Онлайн просмотр документа "Теормин 2014 (avasite)"
Текст 5 страницы из документа "Теормин 2014 (avasite)"
(следует из предыдущих 2-х лемм)
Теорема Тьюринга об алгоритмической неразрешимости проблемы останова
Проблема останова машин Тьюринга алгоритмически неразрешима, т. е. не существует алгоритма (машины Тьюринга), способного вычислить следующую функцию
(доказательство знает каждый первокурсник)
Следствие 1.
Не существует алгоритма, способного определить по заданному запросу G к хорновской логической программе P,
-
является ли дерево SLD-резолютивных вычислений запроса G конечным;
-
содержит ли дерево SLD-резолютивных вычислений запроса G хотя бы одно успешное вычисление;
-
является ли заданная подстановка θ вычисленным ответом на запрос G .
Следствие 2 (Теорема Черча)
Не существует алгоритма, способного определить по заданной замкнутой формуле логики предикатов ϕ, является ли эта формула общезначимой, т. е. проблема общезначимости "| = ϕ ?"алгоритмически неразрешима.
(просто потому что иначе задача проверки является ли заданная подстановка – вычисленным ответом была бы алгоритмически разрешима, что привело бы к алгоритмической разрешимости задачи останова МТ)
Лекция 16. Управление вычислениями логических программ. Оператор отсечения.
Есть два основных способа управления вычислением логической программы:
-
Выбирать правильный порядок расположения атомов в телах процедур (по принципу: вначале решать простые задачи, а потом сложные).
-
Выбирать правильный порядок расположения программных утверждений (по принципу: вначале предлагать простые способы решения, а потом сложные).
Оператор отсечения
Для этого в языках логического программирования вводится оператор отсечения (cut). Этот оператор представляет собой 0-местный предикат !, оказывающий специальный побочный эффект.
С точки зрения декларативной семантики, предикат ! имеет постоянное значение true. Для его описания не требуется никаких программных утверждений (! — встроенный предикат). Поэтому оператор отсечения может использоваться в запросах и в телах программных утверждений, не оказывая при этом никакого влияния на их логический смысл.
Операционная семантика оператора отсечения ! задается следующими правилами:
-
Если запрос G и программное утверждение D: A0 ← A1, …, !, …, An порождают SLD-резольвенту G0, то в стеке вычислений программы запрос G получает специальную служебную пометку (∗, индивидуальную для каждого вхождения оператора !
-
Если в запросе G оператор ! активен, т. е. G = ? !, C1, …, Ck, то в стеке вычислений программы запрос G получает специальную служебную пометку ∗), индивидуальную для каждого вхождения оператора !, и при этом порождается новый запрос G0 = ? C1, …, Ck;
-
Если по ходу вычисления при откате достигается элемент стека вычислений программы, помеченный ∗), то из стека удаляются все элементы, расположенные между элементами, помеченными (∗ и ∗) (включая и сами эти элементы).
Программное утверждение A0 ← A1, …, Ak, !, Ak+1, …, An содержащее оператор отсечения можно прочитывать двояко:
-
Чтобы решить задачу A0 нужно найти только первое решение задач A1, …, Ak и далее решать задачи Ak+1, …, An. Если решение задач A1, …, Ak найти не удается, то воспользоваться альтернативными процедурами решения задачи A0.
-
Чтобы решить задачу A0 нужно проверить условия A1, …, Ak. Если эти условия выполнены, то приступить к решению задач Ak+1, .., An и не обращаться к другим вариантам решения задачи A0. Если же эти условия не выполнены, то обратиться к альтернативным способам решения задачи A0.
Таким образом, оператор отсечения позволяет удобно использовать в логическом программировании стандартные конструкции императивного программирования.
-
Ветвление. S0: if P then S1 else S2 fi
Pif−then−else: S0 ← P, !, S1; S0 ← S2;
-
Итерация. S0: while P do S1 od
Pwhile−do: S0 ← P, !, S1, S0; S0 ←;
Лекция 17. Отрицание в логическом программировании. Оператор not. Встроенные предикаты и фукнции. Оператор вычисления значений. Модификация баз данных.
Допущение Замкнутости Мира. Пусть имеется некоторое непротиворечивое множество замкнутых формул Γ (например, хорновская логическая программа) и замкнутая формула ϕ (например, запрос или отдельная подцель). Тогда формула ¬ϕ является логическим следствием множества Γ в допущении замкнутости мира Γ |=CWA ¬ϕ, если неверно, что ϕ логически следует из Γ, т. е. Γ |≠ ϕ.
(Здесь CWA — аббревиатура Closed World Assumption)
Правило SLDNF-резолюции
Пусть имеется запрос G0: ?not(C0), C1, …, Cn к программе P. Для вычисления SLDNF-резольвенты G1
-
формируется запрос G’: ? C0 к программе P;
-
проводится построение (обход) дерева вычислений T запроса G’: ? C0;
-
в зависимости от устройства дерева T возможен один из трех исходов:
-
Успех. Дерево T конечно, и все его ветви (SLD-резолютивные вычисления) являются тупиковыми.
-
Неудача. При построении (обходе) дерева T было обнаружено успешное вычисление.
-
Бесконечное вычисление. Дерево T бесконечно и при его построении (обходе) не было обнаружено успешных вычислений.
-
Теорема (корректности SLDNF-резолюции)
Если запрос G: ? not(C0) к хорновской логической программе P имеет успешное SLDNF-резолютивное вычисление, то P |=CWA ¬∃y C0.
(Есть успешное вычисление т.е. древе разбора – все тупики, т.е. не существует такой подстановки, что бы в какой-нибудь интерпретации выводилось бы С0 т.е. из P не следует С0 т.е. по определению CWA следует то, что нужно)
Лекция 18. Итуиционистская логика.
Интуиционизм — это философское течение в математике, возникшее в начале 20 века как критический отклик на неограниченное применение формальных логических методов в математике, приводящее к парадоксам (антиномиям). По мнению интуиционистов (Брауэр, Вейль, Пуанкаре), парадоксы возникают в связи с тем, что законы логики, справедливые для конечных множеств, безосновательно переносятся на бесконечные множества.
Семантика Колмогорова–Брауэра–Гейтинга
-
ϕ & ψ: Решить обе задачи ϕ и ψ и предъявить решение;
-
ϕ ∨ ψ: Выбрать одну из двух задач ϕ и ψ, решить выбранную задачу и предъявить решение;
-
ϕ → ψ: Показать, что решение задачи ψ сводится к решению задачи ϕ, т. е. предъявить способ, который позволяет, располагая решением задачи ϕ, построить решение задачи ψ;
-
¬ ϕ: Доказать, что задача ϕ не имеет решения. Законами интуиционистской логики считаются только те формулы, которые соответствуют описаниям составных задач, имеющих решение при любых условиях.
Законы интуиционистской логики
-
P → P — каждую задачу можно свести к ней самой;
-
(P → Q) & (Q → R) → (P → R) — чтобы свести задачу R к задаче P достаточно найти задачу Q, к которой можно свести задачу R, и которую, в свою очередь, можно свести к задаче P;
-
P → ¬¬P — чтобы убедиться в том, что не существует доказательства неразрешимости задачи P, достаточно найти решение задачи P;
-
(¬P ∨ ¬Q) → ¬(P &Q) — чтобы показать, что обе задачи P и Q нельзя решить одновременно, достаточно выбрать одну из этих задач и показать, что она неразрешима.
Определение (модель Крипке)
Пусть P = {P1, P2, …, Pn, …} — множество атомарных формул (названия задач).
Интуиционистская интерпретация — это реляционная система I = <S, R, ξ>, в которой
-
S ≠ ∅ — множество состояний (состояний знания);
-
R ⊆ S × S — отношение переходов на S, которое является отношением нестрогого частичного порядка:
-
рефлексивное R(s, s);
-
транзитивное R(s1, s2)&R (s2, s3) ⇒ R(s1, s3);
-
антисимметричное R(s1, s2) & R(s2, s1) ⇒ s1 = s2;
-
ξ: S × P → {true, false} — оценка атомарных формул, удовлетворяющая условию монотонности:
R (s1, s2) & ξ (P , s1) = true ⇒ ξ (P , s2) = true.
Определение (семантика Крипке)
Пусть I = <S, R, ξ> — интуиционистская интерпретация. Тогда отношение выполнимости I, s |=I ϕ формулы ϕ в состоянии s интерпретации I определяется так:
-
если ϕ = P ∈ P, то I, s |=I ϕ ⇐⇒ ξ (s, P) = true;
-
I, s |=I ϕ1&ϕ2 ⇐⇒ I, s |=I ϕ1 и I, s |=I ϕ2;
-
I, s |=I ϕ1 ∨ ϕ2 ⇐⇒ I, s |=I ϕ1 или I, s |=I ϕ2;
-
I, s |=I ϕ1 → ϕ2 ⇐⇒ для любого состояния s’, если (s, s’) ∈ R и I, s’|=I ϕ1, то I, s’|=I ϕ2;
-
I, s |=I ¬ϕ1 ⇐⇒ для любого состояния s', если(s, s') ∈ R, то I, s' |≠I ϕ1.
Формула ϕ называется интуиционистски общезначимой (законом интуиционистской логики), если для любой интерпретации I и для любого состояния s верно I, s |=I ϕ.
Теорема 1
|=I ϕ ⇒ |=C ϕ
Теорема 2 (дизъюнктивное свойство)
|=I ϕ ∨ ψ ⇐⇒ |=I ϕ или |=I ψ
Теорема 3 (экзистенциальное свойство)
|=I ∀x1 …∀x1∃y ϕ(x1, …, xn, y) ⇐⇒ существует такой терм t(x1, …, xn), что |=I ϕ(x1, …, xn, t(x1, …, xn))
t(x1, ..., xn) — это программа решения задачи ϕ.
Это называется «изоморфизмом Карри–Ховарда».
Лекция 19. Модальные логики.
Синтаксис модальных формул
Расширим синтаксис классической логики предикатов, введя два логических оператора:
-
□ (модальность необходимого) и
-
◊ (модальность возможного),
при помощи которых разрешается строить формулы следующего вида:
-
(□ϕ) «необходимо ϕ»,
-
(◊ϕ) «возможно ϕ».
Семантика Крипке модальных формул
Определим самое общее отношение выполнимости для модальных формул.
Пусть P = {P1, P2, …, Pn, …} — множество атомарных формул (элементарные высказывания).
Модальная интерпретация или модель Крипке — это реляционная система I = <W, R, ξ>, в которой
-
W ≠ ∅ — множество состояний (возможные миры);
-
R ⊆ W × W — отношение достижимости на W,
-
ξ: W × P → {true, false} — оценка атомарных формул.
Система <W, R> называется шкалой Крипке (frame).
Если (w, w') ∈ R, то возможный мир w' называется альтернативным миром для w.
Отношение выполнимости для модальных формул
Пусть I = <W , R, ξ> — модель Крипке.
Тогда отношение выполнимости I, s |= ϕ формулы ϕ в мире s модели I определяется так:
-
если ϕ = P ∈ P , то I, s |= ϕ ⇐⇒ ξ (w, P) = true;
-
I, w |= ϕ1&ϕ2 ⇐⇒ I, w |= ϕ1 и I, w |= ϕ2;
-
I, w |= ϕ1 ∨ ϕ2 ⇐⇒ I, w |= ϕ1 или I, w |= ϕ2;
-
I, w |= ϕ1 → ϕ2 ⇐⇒ I, w |≠ ϕ1 или I, w |= ϕ2;
-
I, w |= ¬ϕ1 ⇐⇒ I, w |= ϕ1;
-
I, w |= □ϕ ⇐⇒ для любого альтернативного мира w' если <w, w’> ∈ R, то I, w'|= ϕ;
-
I, w |= ◊ϕ ⇐⇒ существует такой альтернативный мир w', что <w, w'> ∈ R и I, w' |= ϕ.
Свойства:
-
|= ◊ϕ ≡ ¬□¬ϕ;
-
|= □ (ϕ1 → ϕ2) → (ϕ1 → ϕ2);
-
|= ϕ ⇒ |= □ϕ (правило необходимости).
Характеристические формулы
-
□ϕ → ϕ рефлексивные шкалы ∀w R(w, w);
-
□ϕ → □□ϕ транзитивные шкалы ∀w1∀w2∀w3 (R(w1, w2)&R(w2, w3) → R(w1, w3));
-
◊□ϕ → □ϕ симметричные шкалы ∀w1∀w2 (R(w1, w2) → R(w2, w1)).
Эпистемические логики и мультагентные системы
Эпистемические логики — это разновидности модальных логик, изучающие модальности знания и мнения (веры) идеализированных агентов. Интерес представляют вопросы о том, какими знаниям располагает субъект, насколько он осознает свои знания (и незнания), и какие причинно-следственные связи возникают между утверждениями, касающимися вопросов знания и веры. В эпистемической логике модальный оператор □ϕ следует прочитывать «Я знаю, что ϕ», а ◊ϕ — «Я допускаю, что ϕ».
Эпистемические логики и мультагентные системы
Основные законы (аксимы) эпистемической логики:
-
Аксиома адекватности знания: □ϕ → ϕ
«Мои знания верны».
-
Аксиома позитивной интроспекции: □ϕ → □□ϕ
«Я вполне представляю все, что мне известно».
-
Аксиома негативной интроспекции: ◊□ϕ → □ϕ
«Я вполне сознаю, что именно мне неизвестно».
Пусть A = {a1, a2, …, an} — множество агентов. Тогда
□a ϕ означает «Агент a знает, что ϕ верно».
□C ϕ означает «Все агенты знают, что ϕ верно».