![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
3.4.1. Предваренная нормальная форма
Определение. Формула А логики предикатов задана в предваренной (или в пренексной) нормальной форме, если она имеет вид (Q1x1)...Qkxk)В(х1,...,хk), где Qi Î { $, " }, i = 1,2,...,k, а В есть бескванторная формула.
Теорема. Для всякой формулы А в ЛП существует равносильная ей формула в предваренной нормальной форме.
Доказательство. Индукция по построению формулы А. Пусть число логических связок в формуле А равно k.
БАЗИС. k = 0. Тогда А есть элементарная формула без кванторов; поэтому формула А находится в предваренной нормальной форме.
ПРЕДПОЛОЖЕНИЕ ИНДУКЦИИ. Допустим, что теорема верна для всякой формулы с числом логических связок меньше k.
ШАГ ИНДУКЦИИ. Покажем, что теорема справедлива для всякой формулы с числом логических связок k. Пусть формула А имеет k логических связок. Возможны следующие случаи.
1. А есть (Qx)B(x), где Q Î { $, " }. Так как глубина построения формулы В(х) меньше k, то по предположению индукции формула В(х) представима в предваренной нормальной форме С(х). Тогда (Qx)C(x) есть предваренная нормальная форма формулы А.
2. А есть В * С, где знак * Î {&, V, ® }. Так как число логических связок в формулах В и С меньше k, то по предположению индукции существуют предваренные нормальные формы Е и F для формул В и С соответственно. Пользуясь доказанными в п.3.3 равносильностями 1-18, выносим в формуле
Е * F кванторы за скобки и получаем искомую предваренную нормальную форму для формулы А.
3. А есть ù В. Так как число логических связок в формуле В меньше k, то по предположению индукции формула В имеет предваренную нормальную форму (Q1x1)…(Qkxk)C, где С есть бескванторная формула. Тогда формула ù В имеет предваренную нормальную форму (Q’ 1 x 1 )...( Q'k x k ) ù C, где Q’i есть $, если Qi есть ", и Q’i есть ", если Qi есть $, i = 1,2,...,k.
Пример. (" y)(ù P(x) ® Q(y)) ® ($ y)(ù (" z)(P(y) V Q(z))) =
((" y)(ù P(x) ® Q(y))) V ($y)($ z) ù (P(y) V Q(z)) =
($ у) ù (ù Р(х) V Q(y)) V ($ y)($ z)(ù ù P(y) & ù Q(z)) =
($ y)(ù P(x) ® Q(y)) V ($ z)(P(y) & ù Q(z)) =
($ y)($ z)) ù P(x) ® Q(y))V P(y) & ù Q(z)).
3.4.2. Стандартная форма Скулема
Пусть А есть замкнутая формула логики предикатов. Приведем ее к пренексной (т.е. к предваренной) нормальной форме А1 = (Q 1x1)…(Q kxk)
B1(х1,...,хk). Пусть Q r в формуле А, есть первый слева квантор существования, т.е. А1 = (" x1)...(" xr-1)($ xr) (Q r+1xr+1)...(Q kxk)B1(x1,...,xr-1,xr,xr+1,...,xk). Выберем новый, ранее не встречавшийся (r-1)-местный функциональный символ f, и перейдем к формуле А2 = (" x1)...(" xr-1)(Q xr+1)...(Q xk)
![]() |
Если r = 1, то в формуле A lуберем квантор ($ х1) и вместо х1, находящегося в области действия квантора ($ х1), подставим в А1 константу а, ранее в А 1не встречавшуюся.
Утверждение 1. Формула А 1невыполнима тогда и только тогда, когда А2 невыполнима.
Доказательство. Пусть формула А1 невыполнима. Покажем, что
формула А2 невыполнима. Допустим противное: А2 выполнима, т.е.
существует множество D, предикаты и функции, определенные на D,
предметы из D такие, что высказывание ("x1)...("xr-1)(Q r+1xr+1)...(Q kxk)
B l(x1,... ,xr- 1 ,f (x1,... ,xr-1),xг+1,... ,xk) истинно. Тогда для всяких x l ,...,xr- 1из D существует хr = f (x 1,... ,хr- 1 ) из D такое, что высказывание (Q r+1xr+1)… (Q kxk ) Bl (x l, … ,xr- 1 ,xr,xr+ l ,…, xk) истинно, т.е. высказывание (" x 1,…
("xr-1)($xr) (Q r+1 xr+ l )... (Qkxk) B 1 (x l ,...,xr- 1 ,xr,xr+ 1 ,...,xk) истинно. Поэтому формула А1 выполнима. Противоречие с невыполнимостью A1. Следовательно, формула А2 невыполнима.
Пусть формула А2 невыполнима. Покажем, что формула А1 невыполнима. Допустим противное: A1 выполнима. Тогда существует множество D, предикаты и функции, определенные на D, предметы из D, для которых высказывание (" x 1,...("xr-1)($xr)(Q r+1 xr+ l )…(Qkxk)B 1 (x l ,...,xr- 1 ,xr,xr+ 1 ,...,xk) истинно. Тогда для всяких x1,..., xr- 1из D существует xr из D, т.е. существует функция
xr = f(x1,..., x r-1): D r-1 ® D, для которой высказывание
(Q r+1 xr+ l )...(Qkxk)B 1 (x l ,...,xr- 1 ,xr,xr+ 1 ,...,xk)
истинно. Тогда высказывание
(" x 1)...("xr-1)(Q r+1 xr+ l )B 1 (x l ,...,xr- 1, f(x1,…,xr- 1 ),xr+ 1 ,…,xk)
истинно, т.е. формула А2 выполнима. Противоречие с невыполнимостью А2. Следовательно, формула А2 невыполнима.
Утверждение 1 доказано.
Отметим теперь первое слева вхождение квантора существования в формуле А2. Проделаем аналогичное устранение этого квантора. Получим формулу A3. В ней проведем устранение первого слева квантора существования. И так далее, пока все кванторы существования не будут устранены (за счет введения новых функциональных символов. В результате получим новую формулу D без кванторов существования, называемую стандартной формой Скулема. Функции, возникающие при построении этой стандартной формы, называются скулемовскими.
Утверждение 2. Формула А невыполнима тогда и только тогда, когда ее стандартная форма Скулема невыполнима.
Доказательство следует издоказанного выше утверждения 1, справедливого при каждом новом устранении из формулы А квантора существования.
Пример. А = ($x1)("x2)($x3)("x4)(P(x1,x2,x3) ® Р(х2,х3,х4)).
Вместо х1 ставим константу а. Получаем формулу
("x2) ($x3)("x4)(P(a,x2,x3) ® Р(х2,х3,х4)).
Переменную х3 заменяем на f(x2), в результате получаем формулу
В = ("x2)("x4)(P(a,x2,f(x2)) ® P(x2,f(x2),x4)).
Формула В есть стандартная форма Скулема формулы А.
Замечание. В стандартной форме Скулема бескванторную ее часть обычно представляют в конъюнктивной нормальной форме и рассматривают как множество дизъюнктивных слагаемых (дизъюнктов). Кванторы общности для этого множества дизъюнктов опускают.
3.5. Проблема разрешимости в логике предикатов
Основной вопрос математической логики есть проблема разрешимости ее формул, т.е. вопрос об установлении общезначимости (или формальной доказуемости) формул этой логики. Проблема разрешимости в ЛП состоит в существовании алгоритма, который по любой формуле логики предикатов устанавливал бы, является эта формула общезначимой или не является.
Теорема (А.Черча). Проблема распознавания общезначимости
формул логики предикатов алгоритмически неразрешима.
Б. А. Трахтенброт установил алгоритмическую неразрешимость ЛП на конечных классах: проблема разрешимости в ЛП остается неразрешимой, если при установлении общезначимости формул ЛП ограничимся конечными множествами.
Хотя и не существует алгоритма, который по любой предъявленной формуле в ЛП устанавливал бы, является эта формула общезначимой или не является, возможны попытки отыскания таких алгоритмов для некоторых классов формул логики предикатов. Были найдены, например, алгоритмы, устанавливающие общезначимость класса замкнутых формул, предваренные нормальные формы которых содержат только кванторы существования. Существует алгоритм распознавания общезначимости класса замкнутых формул, предваренные нормальные формы которых содержат только кванторы общности. Алгоритмически разрешим класс формул, построенных только из одноместных предикатов (монадическая логика). Монадическая логика остается разрешимой, даже если допустить кванторы по предикатным переменным. Оказался алгоритмически разрешимым ряд других классов формул логики предикатов. Исследования по установлению разрешающих алгоритмов в ЛП показали, что относительно мало классов формул имеют разрешающие алгоритмы. Многие классы формул оказались алгоритмически неразрешимыми. Работа по отысканию разрешающих алгоритмов продолжается и поныне.
В семидесятые годы XX века был разработан универсальный язык программирования Пролог, в основу которого была положена логика предикатов. Вычисление общезначимости формул в Прологе проводится в приведенном Дж.А.Робинсоном логическом формализме, называемом методом резолюций. В последующем мы изложим этот метод и покажем, как он используется в универсальном языке программирования Пролог.
Дата публикования: 2015-01-23; Прочитано: 390 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!