Математическая логика: часть 1 - Учебное пособие (Пономарев В.Ф.)

2.2. исчисление предикатов

 Все методы и результаты исчисления высказываний можно перенести на исчисление предикатов, т. е. каждая теорема и любой вывод исчисления высказываний становятся теоремой и выводом исчисления предикатов, если пропозициональные переменные заменить формулами языка предикатов, причем все вхождения одной и той же переменной везде заменить одной и той же формулой. Каждая схема теоремы и каждая схема вывода также сохраняются, если под знаками пропозициональных переменных принимать формулы языка предикатов.

Для того, чтобы формализовать процесс рассуждения в исчислении предикатов, необходимо выделить класс фор­мул, определяющих их эквивалентные преобразования при наличии кванторов, и класс отношений между формулами формирующих последователь­ную цепь формул от посылок до заключения. Следует отметить, что правила, аксиомы и законы исчисления высказываний есть подмножество правил, аксиом и законов исчисления предикатов. Дополнительные пра­вила, аксиомы и законы определяют возможности введения и удаления кванторов, подстановки и cмeны кванторов.

 

2.2.1 Интерпретация формул

Под интерпретацией следует понимать систему, состоящую из не­пустого множества V, называемом универсумом, и однозначного отображения на двухэлементное множество {и; л}, кото­рое каждому предикатному символу Pn  (t1; t2;¼ tn ) ставит в соот­ветствие  n - местное отношение на множестве V, каждому функциональному символу f ni  (t1; t2;¼ tn ) - n-местную операцию на множестве V, каждой предметной постоянной - элемент множе­ства V.

 При заданной интерпретации предметные переменные рассматриваются как переменные, пробегающие область универсума V, а символам логических и кванторных операций придается их обычный смысл.

Например, если универсум задан множеством целых чисел, то для $x $y $z (P2 (+(x, y); z)):= “существуют числа x, y, z, для которых z больше суммы чисел х и у", то при х=2, у=3, z=10 имеем двухместную операцию =5 и двухместное отношение между целым числом 10 и значением операции +(2,3)=5. Отображение P2(5;10) на двухэлементное множество дает значение “и”. При х=2, у=3, z=4 имеем +(2,3)=5 и P2 (5; 4)=л.

На рис. 10 приведена графическая интерпретация этой задачи.

 

 

 

 

 

 

 

 

Подпись: P2 (5; 4) 

Рис.10 Интерпретация $x $y $z (P2 (+(x, y); z)) для x=2, y=3, z=10 или z=4.

 

Другими словами, интерпретация функциональных символов опре­деляется по значениям функции на универсуме, заданном на множестве термов, входящих аргументами в эту функ­цию, а интерпретация предикатных символов по отображению на двухэлементное множество {и; л}.

Особо следует рассмотреть влияние свободных переменных  на интерпретацию формул исчисления предикатов.

Формула, не содержащая свободных переменных, называется замк­нутой и представляет собой высказывание об элементах, функциях и отношениях, которое принимает значение и или л. На рис. 10 рассмотрен случай замкнутой формулы.

Формула, содержащая свободные переменные, называется открытой и представляет собой отношений, заданное на множестве V,

Это отношение может быть истинным для одних значений из области интепретации и ложным для других.

При такой интерпретации выделяют три класса формул, тождест­венно истинные, тождественно ложные и выполнимые.

Тождественно истинные формулы (или тавтологии) -это особый класс формул исчисления предикатов, которые принимают значение “истины”  для всех интерпретаций входящих в нее предметных постоянных, функциональных и предикатных символов; эти формулы иг­рают роль законов и аксиом исчисления предикатов; любые подстановки и замещения в тождественно истинной формуле не изменяют ее значения.

Например,

для предиката P2(x, y):=”число x меньше числа y” формула "x$y(P2(x, y)):=”для любого целого числа x найдется число y, большее числа x” является тождественно истинной;

для любой F(x) формула $x(F(x))«ù"x(ùF(x)):=“формула ”существуют x, для которых F(x)=и”, эквивалентна формуле “не для всех x F(x)=л”” является тождественно истинной.

Тождественно ложные формулы (или противоречие)-это особый класс формул исчисления предикатов, которые принимают значение “ложь” для всех интерпретаций входящих в нее предметных постоянных, функциональных и предикатных символов; любые подстановки и замещения в тождественно ложной формуле не изменяют ее значения.

Например, для предиката P2(x, y):=”число x меньше числа y” формула $x"y(P2(x, y)):=”существует целое число x, которое меньше любого целого числа y” является тождественно ложной;

для любой F(x) формула $x(F(x))&"x(ùF(x)):=”“существует x, для которой F(x)=и”, и “для всех x F(x)=л ”” является тождественно ложной.

Выполнимые формулы - это особый класс формул исчисления преди­катов, которые принимают значение “истина”в некоторой области, т.е. не для всех интерпретаций входящих в нее предметных постоянных, функциональных и предикатных символов.

Например, формула $x(F(x))®ù"x(F(x)) является истинной для одного элемента множества V и ложной для всех элементов этого множества, т.к.

$x(F(x))®ù"x(F(x)):=” если существует x, для которого F(x)=и, то не для всех х универсума F(x)=и” .

 

2.2.2 Правила вывода

Вывод заключения из множества посылок записывается так же, как в исчислении высказываний

F1;F2;¼Fn|¾ B, где слева от знака “|¾” записывают множество формул посылок и необходимые аксиомы F1;F2;¼Fn, а справа – формулу заключения B. Тогда знак “|¾” означает “верно, что B выводима из F1;F2;¼Fn.

Отношение логического вывода эквивалентно теореме

|¾F1;F2;¼Fn®B.

Другая форма записи :        F1; F2;¼Fn     

B,

где над чертой записывают множество посылок и аксиом F1;F2;¼Fn, а под чертой заключение B.

Для организации вывода заключения из множества посылок используют правила подстановки и правила заключения.

 

2.2.2.1 Правила подстановки

 Если в формулу F(х), содержащей свободную переменную x, выполнить всюду подстановку вместо x терма t , то получим формулу F(t).

Этот факт записывают так:

xòtF(x)

                                                  F(t).

 

Подстановка некоторого терма t в формулу F(x) вместо ее свободной переменной x состоит в замещении всех свободных вхождений этой переменной данным термом t. Такая подстановка называется правильной. Подстановка будет неправильной если в результате подстановки сколемовской функции свободная переменная окажется в области действия квантора.

Например,

          1.       x1òx2$x3( P21(x1, x3)® P2 (x2))

$x3( P21(x2, x3)® P2 (x2)).

Это правильная подстановка, т.к. x1 –свободная переменная.

         

2.       x1òf(x2, t) $x3( P21(x1, x3)® P2 (x2))

$x3( P21(f(x2, t), x3)® P2 (x2)).

Это - правильная подстановка, т.к. x1 –свободная переменная.

 

 

 

          3.       x3òx2$x3( P21(x1, x3)® P2 (x2))

$x3( P21(x1, x2)® P2 (x2)).

Это - неправильная подстановка, т.к. x3 –связанная квантором $.

          4.       x2òx3$x3( P1(x1, x3)® P2 (x2))

$x3( P1(x1, x3)® P2 (x3)).

Это - неправильная подстановка, т.к. предикат P2 (x3) попадает в область действия квантора $.

Понятие правильной подстановки необходимо, например, для формулировки законов снятия квантора общности

"x F(x)

                                        F(t)

 

и введения квантора существования

F(t)

                                $xF(x).

 

2.2.2.2 Правила введения и удаления кванторов

Наиболее распространенными правилами являются:

1) Введение квантора общности: “если F1(t)® F2(x)   выводимая формула и F1(t)    не содержит свободной переменной x , то F1(t)® "x(F2(x)) также выводима”, т.е.

                                                   (F1(t)® F2(x))          

(F1(t)® "x(F2(x))).

2) Удаление квантора общности: "если "x(F(x)) выводимая формула, то вместо x можно выполнить подстановку терма t, свободного от x , и получить также выводимую формулу F (t), т.е.

"x(F(x))

          .                                                 F (t).

3) Введение квантора существования: "если терм t вхо­дит в предикат F(t) , то существует, по крайней мере одна предмет­ная переменная x , удовлетворяющая требованиям $x(F(x)) ”, т.е.                                

                     F(t)      

                                                            $x(F(x)).

 4) Смена квантора:

                     "x(F(x))                                            $x(F(x))

ù$x(ùF(x));                               ù"x(ùF(x)). 

5) Перенос квантора, если терм t не содержит переменной x:

a)      Âx(F1(x))Ú F2(t)

Âx(F1(x)Ú F2(t));

b) Âx(F1(x))&F2(t)

          Âx(F1(x)& F2(t);

c) F1(t)® Âx(F2(x))

          Âx(F1(t)®F2(x));

                    d) "x(P(x))®F(t)

$x(P(x)®F(t));

 

                    e) $x(P(x))®F(t)

"x(P(x)®F(t)).

6) Введение новой переменной:

a)      "x(F1(x))Ú"x(F2(x))

"y"x(F1(y)Ú F2(x));

b)      $x(F1(x))&$x( F2(x))

$y$x(F1(y)Ú F2(x)).

 

2.2.2.3 Правила заключения

Существует два основных правила определения истинности заключения:

а) если F1 и (F1®F2) выводимые фор­мулы, то F2 также выводима. Это - правило modus ponens (m.p).

F1; (F1®F2)

                                                            F2.

b) если ùF2 и (F1®F2) выводимые формулы, то ùF1 также. выводима. Это - правило modus  tollens (m.t).

ùF2; (F1®F2)

                                                            ùF1.

 

Эти правила определяют схему вывода и позволяют использовать правила подстановки, введения и удаления кванторов и делать вывод об истинности заключения.

         

 

2.2.3 Метод дедуктивного вывода

          В логике предикатов вывод определяется так же, как в исчислении высказываний. Все правила вывода логики высказываний включены в множество правил логики предикатов.

Пример: “Таможенные чиновники обыскивают каждого, кто въезжает в страну, кроме высокопоставленных лиц. Если некоторые люди способствуют провозу наркотиков, то на внутреннем рынке есть наркотик. Никто из высокопоставленных лиц не способствовает провозу наркотиков. Следовательно, некоторые из таможников способствуют провозу наркотиков?”

Пусть P1(x):=”x - таможенный чиновник”, P2(x,y):=”x обыскивает y”, P3(y):=”y въезжает в страну”, P4(y):=”y – высокопоставленное лицо”, P5(y):=”y способствует провозу наркотиков”.

          y(P3(y)P4(y)x(P1(x)P2(x,y)));

          y(P3(y)P5(y));

          y(P3(y)P4(yP5(y));

          x(P1(x)P5(x)).

          1) F1= y(P3(y)P5(y))                - посылка;

2) F2=P3(a)P5(a)                - заключение по формуле F1 и правилу удаления квантора существования;

3) F3= P3(a)        - заключение по формуле F2 и правилу удаления логической связки конъюнкции;

4) F4= P5(a)        - заключение по формуле F2 и правилу удаления логической связки конъюнкции;

5) F5=y(P3(y)P4(yP5(y))         посылка;

6) F6= P3(t)P4(tP5(t)         - заключение по формуле F5 и правилу  удаления квантора общности;

7) F7=P3(t)ÚP4(t)ÚP5(t)       - заключение по формуле F6 и ее эквивалентным преобразованиям;

8) F8=P4(a)     - заключение по формуле F7 при t=a для P3(a)=л и P5(a)=л;

9) F9=y(P3(y)P4(y)x(P1(x)P2(x,y)))      - посылка;

10) F10=yx (P3(y)P4(y) (P1(x)P2(x,y)))          - заключение по формуле F9 и правилу приведения к ПНФ;

11) F11=P3(a)P4(a)P1(t)P2(t,a)          - заключение по формуле F10 и правилу  удаления квантора общности;

12) F12= P3(a)P4(a)                 - заключение по формулам F3 и F8 и правилу введения логической связки конъюнкции исчисления высказываний;

13) F13=(P1(t)P2(t,a))       - заключение по формулам F11 и F12 и правилу modus ponens;

14) F14= P1(t)    -заключение по формуле F13 и правилу удаления логической связки конъюнкции исчисления высказываний;

15) F15=P5(a)=P5(t)   -заключение по формуле F4 и замене предметной постоянной термом;

16) F16= P1(t)P5(t)                   -заключение по формулам F14 и А15 и правилу введения логической связки конъюнкция исчисления высказываний;

17) F17=x(P1(x)P5(x))   -заключение по формуле F16 и правилу введения квантора существования. Так доказана истинность формулы x(P1(x)P5(x)).

 

 

 

 

 

 

 

 

 

P1(t)

 

 

ùP4(a)

 

t=a                                 

P3(a)&ùP4(a)

 

                             

a=t   

P5(t)

 

 

P1(t) &P5(t)

 

                             

         

$x(P1(x)&P5(x))

 

         

Рис. 11. Граф вывода заключения

                   

Пример: Доказать истинность заключения                        

                    "x( P1(x)®(ù P2(x))); "x(P3(x)®P1(x)) 

"x(P3(x)®(ù P2(x))).

1) F1="x( P1(x)®(ù P2(x)))         - посылка;

2) F2="x(P3 (x)®P1 (x))               -посылка;

3) F3=(P1 (t)®(ù P2 (t)))                - заключение по формуле F1 и правилу 2) удаления квантора общности;

4) F4= P3 (t)® P1 (t)                             - заключение по формуле F2 и правилу 2) удаления квантора общности;

5) F5= (P3 (t)®(ù P2 (t)))                - заключение по формулам F3,  F4 и закону силогизма исчисления высказываний (см 1.2.3.2 правило 11);

6) F6="x(P3(x)®(ùP2(x)))         - заключение по формуле F5 и правилу 1 введения квантора общности.

Так доказана истинность формулы "x(P3(x)®(ùP2(x))).

На рис. 12 приведен граф, иллюстрирующий процесс дедуктивного вывода.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

                                                                                 

 

 

 

(P3 (t)®(ù P2 (t)))

 

 

                                                                                                   

 

 

 

 

"x(P3(x)®(ùP2(x)))

 

 

 

                              Рис. 12. Граф вывода заключения

 

Пример: Доказать истинность заключения

"x($y(P21.(x; y)&P2(y))®$y((P3(y)& P24.(x; y))); ù$x(P3(x))

ù$x(P3(x))®"x"y(P21.(x; y)®(ùP2(y))).

 

1) F1="x($y(P21.(x; y)&P2(y))®$y((P3(y)& P24.(x; y)))   - посылка;

2) F2=ù $x(P3(x))                                                             -посылка;

3) F3="x(ùP3(x))      - заключение no формуле F2 и правилу 5) смены кванторов (закон де Моргана);

4) F4=ùP3 (t)               - заключение по формуле F3 и правилу 2) удаления квантора общности;

5) F5=ùP3(t)ÚùP24.(x;t)  - заключение по формуле F4 и правилу 4) исчисления высказываний;

6) F6="y(ùP3(y)Ú(ùP24 (x; y)))    - заключение по формуле F5 и правилу 1) введения квантора общности;

7) F7=ù$y(P3(y)&P24 (x; y))         - заключение по формуле F6 и правилу  смены кванторов (закон де Моргана);

8) F8=$y(P21.(t; y)&P2(y)®$y(P3(y)&P24.(t; y))   - заключение по формуле F1 и правилу 2) удаления квантора общности;

9) F9=ù $y(P21.(t; y)&P2(y))           - заключение пo формулам  F7 и F8 при условии t=x и правилу modus tollens;

10) F10="y(ù P21.(t; y)ÚùP2(y))   - заключение по формуле F9 и правилу  смены кванторов (закон де Моргана);

11) F11="y(P21. (t; y)®ù (P2 (y))       - заключение пo формуле F10 и эквивалентным преобразованиям алгебры предикатов;

12) F12="x"y(P21. (x; y)®ù (P2 (y))   - заключение по формуле F11 и  правилу 1) введения квантора общности;

13) ù$x(P3(x))®"x"y(P21.(x; y)®(ù P2(y))) – заключение по формулам  F2 и F12 и правилу modus ponens. Что и требовалось доказать.

ù $x(P3(x))

 

 

"x($y(P21.(x; y)&P2(y))®$y((P3(y)& P24.(x; y)))

 

 На рис. 13 приведен граф вывода этой задачи.

 

 

 

 

 

 

 

 

 

 

 

 

 

рис. 13  Граф вывода заключения

Пример. Доказать истинность заключения

$x(P1(x)&"y(P2(y)®P24.(x; y))); "x(P1(x)®"y(P3(y)®ùP24.(x; y)))

"x(P2(x)®ùP3(x)).

 

1) F1=$x(P1(x)&"y(P2(y)®P24.(x; y)))       - посылка;

2) F2="x(P1(x)®"y(P3(y)®ùP24 (x; y)))    - посылка;

3) F3=P1(а)&"y(P2(y)®P24.(a; y)) -заключение по формуле F1, правилу формирования ССФ;

4) F4=P1(a)- заключение по формуле F3 и правилу удаления конъюнкции исчисления высказываний

5) F5="y(P2(y)® P24.(a; y))   - заключение пo формуле F3 и правилу удаления конъюнкции исчисления высказываний;

6) F6=P2(t)® P24.(a; t)  -    заключение по формуле F5 и     правилу 2) удаления квантора общности;

7) F7=P1(t)®"y(P3(y)®ùP24 (t; y))   -           заключение по формуле F2 и правилу 2) удаления квантора общности;

8) F8="y(P3(y)®ù P24 (a; y))     - заключение по формулам F3 и F7  при t=a и правилу modus ponens;

9) F9=P3(t)®ùP24.(a; t)   - заключение по формуле F8 и правилу 2) удаления квантора общности;

10) F10=P24.(a; t)®ùP3(t)  - заключение по формуле F9 и закону контрапозиции (правило 8) исчисления высказываний);

11) F11=P2(t)®ùP3(t)  - заключение по формулам F6 и F10 и закону  силлогизма (правило 11) исчисления высказываний);

12) F12="x( P2 (x)®ùP3(x)) - заключение по формуле F11 и правилу 1)  введения квантора "x. Что требовалось доказать.

На рис. 14 приведен граф вывода этой задачи.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

                              x=a

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 14. Граф вывода заключения

 

2.2.4 Принцип резолюции

 Если матрица формулы в результате приведения к виду ПНФ не будет содержать свободных переменных и сколемовских функций, то для вывода заключения полностью пpuменим алгоритм принципа резолюции, рассмотренный в исчислении высказываний. Этот алгоритм основывается на том, что если две формулы состоящие из дизъюнкции атомов (в дальнейшем такие формулы будем называть дизъюнктами ) связаны конъюнкцией, и в них имеются два одинаковых или приводимых к одинаковым (унифицируемых ) атома с разными знаками, то из них можно получить третий дизъюнкт , который будет логическим следствием первых двух, и в нем будут исключены эти два атома. Однако, если в результате приведения к виду ССФ аргументы атомов содержат ск