Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Дискретная математика / Основные / Матлогика_Лекции

.pdf
Скачиваний:
106
Добавлен:
16.03.2016
Размер:
500.91 Кб
Скачать

таблица 2.4.1.

 

y

 

0

0

1

1

 

 

 

z

 

0

1

1

0

 

 

 

x

 

 

 

 

 

 

 

 

 

0

 

000

001

011

010

 

 

1

 

100

101

011

010

 

 

 

 

таблица

2.4.2.

 

 

 

 

 

 

0

0

 

1

 

1

 

 

Z

 

0

1

 

1

 

0

 

 

w

 

 

 

 

 

 

 

 

 

x y

 

 

 

 

 

 

 

 

 

00

 

0000

0001

 

0011

 

0010

 

 

01

 

0100

0101

 

0011

 

0010

 

 

11

 

1100

1101

 

1111

 

1110

 

 

10

 

1000

1001

 

1011

 

1010

 

Для построения минимальной ДНФ производится процедура склеивания "1". Склеивающимся значениям "1" соответствуют соседние клетки, т.е. клетки отличающиеся лишь значением одной переменной (на графическом изображении разделенных вертикальной или горизонтальной линией с учетом соседства противоположных крайних клеток).

Процесс склеивания "1" сводится к объединению в группы единичных клеток карты Карно, при этом необходимо выполнять следующие правила;

1.Количество клеток, входящих в одну группу, должно выражаться числом кратным 2, т.е. 2m где m=0,1,2,...

2.Каждая клетка, входящая в группу из 2m клеток, должна иметь m соседних в группе.

3.Каждая клетка должна входить хотя бы в одну группу.

4.В каждую группу должно входить максимальное число клеток, т.е. ни одна группа не должна содержаться в другой группе.

5.Число групп должно быть минимальным.

Считывание функции f по группе склеивания производится следующим образом: переменные, которые сохраняют одинаковые значения в клетках группы склеивания, входят в конъюнкцию, причем значениям 1 соответствуют сами переменные, а значениям 0 их отрицания.

Приведем шаблоны, которые помогают строить покрытия 1 (переменные считаем теми же, но их писать не будем). Для

20

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

 

А) n=3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

F=z

 

 

 

f=¬x

 

 

 

 

F=¬y

 

 

 

1

 

1

 

1

1

1

 

1

 

1

 

 

 

 

1

 

 

1

 

1

 

 

 

 

 

 

 

1

 

 

 

 

1

F=¬z&¬y

 

 

 

f=¬x&y

 

 

 

 

F=¬y&x

 

1

 

 

 

 

 

 

1

1

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

1

 

B) n=4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

F=w

 

 

 

f=¬y

 

 

 

 

F=¬z

 

 

 

1

 

1

 

1

1

1

 

1

 

1

 

 

 

 

1

 

 

1

 

1

 

 

 

 

 

 

 

1

 

 

 

 

1

 

 

1

 

1

 

 

 

 

 

 

 

1

 

 

 

 

1

 

 

1

 

1

 

1

1

1

 

1

 

1

 

 

 

 

1

 

F=¬x&z

 

 

 

f=y&w

 

 

 

F=¬x&¬y

 

 

 

1

 

1

 

 

 

 

 

 

 

1

 

1

1

 

1

 

 

1

 

1

 

 

1

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

F=¬y&¬w

 

 

 

f=¬y&¬z

 

 

 

F=¬z&¬x

 

1

 

 

 

1

 

1

1

 

 

 

 

1

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

1

 

1

1

 

 

 

 

 

 

 

 

 

 

F=y&z&w

 

 

f=¬y&¬z&¬w

 

 

F=x&y&¬z

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

1

 

 

 

 

1

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

Пример 2.4.1. Построить МДНФ.

 

 

 

 

 

 

 

 

21

Z

0

0

1

1

w

0

1

1

0

x y

 

 

 

 

00

1

1

 

1

01

1

1

1

 

 

 

 

 

 

11

 

1

1

 

10

 

 

 

1

Сначала смотрим, есть ли покрытия_1 из 16 клеток покрывающих хотя бы одну непокрытую 1. Таких покрытий нет. Переходим к покрытиям из 8 клеток. Смотрим, есть ли покрытия 1 из 8 клеток покрывающих хотя бы одну непокрытую 1. Таких покрытий нет. Переходим к покрытиям из 4 клеток. Смотрим, есть ли покрытия 1 из 4 клеток покрывающих хотя бы одну непокрытую 1. Таких покрытий два. Переходим к покрытиям из 2 клеток. Такое покрытие одно. Таким образом, все 1 стали покрытыми. Далее, смотрим можно ли убрать некоторые покрытия, так чтобы все единицы остались

покрытыми. В конце выписываем МДНФ: f =x z y w y z w. Замечание. Для построения минимальной КНФ функции f,

достаточно построить минимальную ДНФ для функции f , а затем использовать f =f и законы де Моргана.

Глава III. Алгебра Жегалкина.

Множество булевых функций, заданный в базисе Жегалкина S4={ ,&,1} называется алгеброй Жегалкина.

Основные свойства. 1. .коммутативность

H1 H2=H2 H1, H1&H2=H2&H1;

2. ассоциативность

H1 (H2 H3)=(H1 H2) H3, H1&(H2&H3)=(H1&H2)&H3; 3. дистрибутивность

H1&(H2 H3)=(H1&H2) (H1&H3); 4. свойства констант

H&1=H, H&0=0, H 0=H; 5. H H=0, H&H=H.

Утверждение 3.1.1. Через операции алгебры Жегалкина можно

выразить все другие булевы функции:

 

¬x=1 x,

x y=x y xy,

x y=1 x y,

xy=1 x xy, xy=1 x y xy,

x|y=1 xy.

Определение. Полиномом Жегалкина (полиномом по модулю 2) от n переменных x1 ,x2 ,…,xn называется выражение вида

c0 с1 x1 c2 x2 … cnxn c1 2 x1 x2 … c12…nx1 x2 …xn,

22

где постоянные ск могут принимать значения 0 ли 1.

Если полином Жегалкина не содержит произведений отдельных переменных, то он называется линейным ( линей ная функция).

Например, f=x yz xyz и f1=1 x y z–полиномы, причем второй является линейной функцией.

Теорема 3.1.1. Каждая булева функция представляется в виде полинома Жегалкина единственным образом.

Приведем основные методы построения полиномов Жегалкина от заданной функции.

1. Метод неопределенных коэффициентов. Пусть P(x1 ,x2 ,…,xn) -

искомый полином Жегалкина, реализующий заданную функцию f(x1 ,x2 ,…,xn). Запишем его в виде

P= c0 с1 x1 c2 x2 … cnxn c1 2 x1 x2 … c12…nx1 x2 …xn.

Найдем коэффициенты ск. Для этого последовательно придадим переменным x1 ,x2 ,…,xn значения из каждой строки таблицы истинности. В итоге получим систему из 2n уравнений с 2n неизвестными, имеющую единственное решение. Решив ее, находим коэффициенты полинома P(x1 ,x2 ,…,xn).

2. Метод, основанный на преобразовании формул над множеством связок {¬,&}. Строят некоторую формулу Ф над

множеством

связок{¬,&},

реализующую

данную

 

функцию

f(x1 ,x2 ,…,xn).

Затем заменяют

всюду подформулы вида

 

на A 1,

A

раскрывают скобки, пользуясь дистрибутивным законом (см. свойство 3), а затем применяют свойства 4 и 5.

Пример 3.1.1. Построить полином Жегалкина функции f(x,y)=xy.

Решение. 1. (метод неопределенных коэффициентов). Запишем искомый полином в виде

P= c0 с1 x c2 y c1 2 xy

Пользуясь таблицей истинности

x

0

0

1

1

y

0

1

0

1

xy

1

1

0

1

получаем, что

 

 

 

f(0,0)=P(0,0)= c0

=1,

f(0,1)=P(0,1)= c0

c2 =1,

f(1,0)=P(1,0)= c0

c1 =0,

f(1,1)=P(1,1)= c0

с1 c2 c12 =1

Откуда последовательно находим, c0 =1, с1 =1, c2 =0, c12 =1. Следовательно

xy=1 x xy (сравните с утверждением 3.1).

2.(Метод преобразования формул.) Имеем

23

x y = x y = x y = (x (y 1)) 1 = 1 x x y .

Заметим, что преимущество алгебры Жегалкина (по сравнению с другими алгебрами) состоит в арифметизации логики, что позволяет выполнять преобразования булевых функций довольно просто. Ее недостатком по сравнению с булевой алгеброй является громоздкость формул.

Глава IV. Высказывания. Предикаты.

§ 4 . 1 . Высказывания.

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

Высказыванием назовем повествовательное предложение относительно которого можно однозначно сказать истинно оно (значение И или 1) или ложно (значение Л или 0) в конкретный момент времени. Например, «5-простое число», «нажата клавиша «Esc»» и т.д. При помощи связок «не», «и», «или», «если,… то», «если и только если» (им отвечают операции «¬», «&», « », «», « » соответственно) можно построить более сложные высказывания (предложения). Так строится алгебра высказываний.

Для упрощения записи сложных высказываний вводится старшинство связок: «¬», «&», « », «», « », что помогает опустить лишние скобки.

Простые высказывания назовем пропозициональными переменными.

Введем понятие формулы.

1.Пропозициональные переменные являются формулами.

2.Если А, В формулы, то выражения ¬А, А В, А В, АВ, А В являются формулами.

3.Формулами являются только выражения построенные в

соответствии с пп.1 и 2.

Формула, принимающая значение И при всех значениях пропозициональных переменных называется тавтологией (или общезначимой), а формула, принимающая значение Л при всех значениях пропозициональных переменных называется

противоречием (или невыполнимой)

Описание свойств алгебры высказываний аналогично описанию соответствующих функций в булевой алгебре и мы их опускаем.

24

§ 4 . 2 . Предикаты. Логические операции над предикатами.

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

Определение 2.1 Пусть x1 ,x2 ,…,xn — символы переменных произвольной природы. Эти переменные будем называть предметными. Пусть наборы переменных (x1 ,x2 ,…,xn) принадлежат множеству M=(M1,M2,…Mn), которое будем называть предметной областью (т.е. xi Mi, где Мi называются областью определения переменной хi). Предикатом местности n (n-местным предикатом), определенным на предметной области M, называют логическую функцию принимающую либо значение И либо значение Л.

Пример 4.2.1. D(x1,x2) = «Натуральное число х1 делится (без остатка) на натуральное число х2.» — двуместный предикат, определенный на множестве пар натуральных чисел M=N N.

Очевидно, D(4,2) = И, D(3,5) = 0.

Пример 4.2.2. Q(x) ==«x2 <-1, х R» — одноместный предикат, определенный на множестве действительных чисел М=R. Ясно, что Q(- 1) = Л, Q(5) = Л, и вообще предикат Q(x) — тождественно ложен, т. е. Q(x) = Л для всех х R.

Пример 4.2.3. В(x,у,z) =«х2 +y2 <z; х,у,z R.» — трехместный предикат, определенный на R3 . В(1,1,-2)=Л, В(1,1,2)=И.

Предикат Р, определенный на M, называется тождественно истинным, если он принимает значение И при любых значениях предметных переменных; Предикат Р называется тождественно ложным, если он принимает значение Л при любых значениях предметных переменных. Предикат Q из примера 4.2.2. является тождественно ложным.

Поскольку предикаты — это функции со значениями во множестве высказыраний, где введены логические операции, то эти операции естественно определяются и для предикатов. Пусть P и Q — предикаты, определенные на M. Тогда

1.¬P (x1 , x 2 ,, x n ) = P(x1 , x 2 ,, x n )

2.(P Q)(x1, x2,, xn ) = P(x1, x2,, xn ) Q(x1, x2,, xn )

3.(P Q)(x1, x2,, xn ) = P(x1, x2,, xn ) Q(x1, x2,, xn )

4.(P Q)(x1, x2 ,, xn ) = P(x1, x2,, xn ) Q(x1, x2,, xn )

25

Предикаты Р и Q, определенные на M, называются равносильными (пишут Р=Q), если P(x1 ,x2 ,…,xn)=Q(x1 ,x2 ,…,xn) для любого набора (x1 ,x2 ,…,xn) предметных переменных из M.

Теорема 4.2.1 Множество n-местных предикатов, определенных на M, образует булеву алгебру предикатов. Т.о., для них справедливы основные эквивалентности (см. §1.6).

§ 4 . 3 . Кванторы, их свойства.

Пусть P(x1 ,x2 ,…,xn) — n-местный предикат, определенный на M. Зафиксируем xi =a. Определим (n-1)-местный предикат Q(x1 ,x2 ,…,xk-1, xk+1,xn) следующим образом: Q(x1 ,x2 ,…,xk-1,xk+1,xn)=P(x1 ,x2 ,…,xk- 1,a,xk+1,xn). Говорят, что предикат Q(x1 ,x2 ,…,xk-1, xk+1,xn) получен из предиката P(x1 ,x2 ,…,xn) фиксацией значения i-й переменной: xi =a.

Определение 4.3.1. Пусть Р(х) — одноместный предикат. Поставим ему в соответствие высказывание, обозначаемое xP(x) (читается «для любого х Р(х)»}, которое истинно тогда и только тогда, когда Р(х) — тождественно истинный предикат. О высказыванииxP(x) говорят, что оно получено из предиката Р навешиванием квантора всеобщности по переменной х.

Определение 4.3.2. Пусть Р(х) — одноместный предикат. Поставим ему в соответствие высказывание, обозначаемое xP(x) (читается «существует х Р(х)»), которое ложно тогда и только тогда, когда Р(х) — тождественно ложный предикат. О высказывании xP(x) говорят, что оно получено из предиката Р навешиванием квантора существования по переменной х.

Замечание 1. Обозначения и для кванторов — это перевернутые латинские буквы А и Е соответственно, которые являются первыми буквами в английских словах All — все, Exist — существовать.

Замечание 2. Высказывания можно считать предикатами, не содержащими переменных, т. е. 0-местными предикатами (или предикатами любой местности).

Пусть P(x1 ,x2 ,…,xn) — n-местный предикат, определенный на M. Зафиксируем в нем значения переменных x1 ,x2 ,…,xk-1,xk+1,xn. На полученный одноместный предикат Q(xк) навесим квантор всеобщности (существования), получим высказывание. Тем самым фиксированному набору значений переменных x1 ,x2 ,…,xk-1,xk+1,xn с помощью квантора всеобщности (существования) поставлено в соответствие высказывание. Говорят, что этот (n-1)-местный предикат переменных x1 ,x2 ,…,xk-1,xk+1,xn получен из исходного предиката P(x1 ,x2 ,…,xn) навешиванием квантора всеобщности (существования) по

26

k-й переменной. Этот предикат обозначают: xкP(x1 ,x2 ,…,xn) ( xк P(x1 ,x2 ,…,xn)). Об к-й переменной (которой уже нет) говорят, что она связана квантором всеобщности (существования).

Пример 4.3.1. Пусть D(x1,x2) = «Натуральное число х1 делится (без остатка) на натуральное число х2.» — двухместный предикат. Навесим последовательно на его переменные кванторы. Ясно, что

1)

x1 x2D(x1,x2)=0

2)

x2

x1D(x1,x2)=0

3)

x1

x2D(x1,x2)=1

4)

x2

x1D(x1,x2)=1

5)

x1

x2D(x1,x2)=1

6)

x2

x1D(x1,x2)=1

7)

x1

x2D(x1,x2)=0

8)

x1

x2D(x1,x2)=1.

 

 

 

Таким образом (сравнением 7 и 8 в последнем примере) мы доказали теорему:

Обычно, связки и кванторы упорядочиваются по приоритету следующим образом ¬, , , &, , , .

Теорема 4.3.1. Разноименные кванторы, вообще говоря, не коммутируют.

Теорема 4.3.2. (основные равносильности, содержащие кванторы) Имеют место следующие равносильности:

1.

Законы де Моргана

 

 

 

 

 

 

 

 

 

xP ( x )

= x

P ( x )

 

,

 

xP ( x )

= x

P ( x )

 

2.

Коммутативность

 

 

 

 

 

 

 

 

x yP(x, y) = y xP(x, y)

,

x yP(x, y) = y xP(x, y)

3.

Дистрибутивность

 

 

 

 

 

 

 

 

x(P(x) & Q(x)) = xP(x) & xQ(x) ,

x(P(x) Q(x)) = xP(x) xQ(x)

4.

Ограничение действия кванторов

 

 

 

 

 

x(P(x) Q(y)) = xP(x) Q(y) ,

x(P(x) & Q(y) = xP(x) & Q(y)

5.Для любого двухместного предиката

y xP(x, y) x yP(x, y) =1

Глава V. Формальные теории.

§ 5 . 1 . Определение формальной теории.

Формальная теория (или исчисление) Ψ— это: 1. множество A символов, образующих алфавит;

1. множество F слов в алфавите A, F A, которые называются

формулами;

3.подмножество B формул, B F, которые называются аксиомами;

4.множество отношений R на множестве формул, которые называются

правилами вывода.

27

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

Множество формул F обычно задается индуктивным определением, например, с помощью формальной грамматики. Как правило, это множество бесконечно. Множества A и F в совокупности определяют язык, или сигнатуру, формальной теории.

Множество аксиом B может быть конечным или бесконечным. Если множество аксиом бесконечно, то, как правило, оно задается с помощью конечного множества схем аксиом и правил порождения конкретных аксиом из схемы аксиом.

Множество правил вывода R, как правило, конечно. Итак, исчисление Ψ есть четверка (A, F, B, R).

Выводом в исчислении Ψ называется последовательность формул F1 ,F2 ,…,Fn такая, что для любого k (1kn) формула Fk есть либо аксиома исчисления Ψ, либо непосредственное следствие каких-либо предыдущих формул, полученное по правилу вывода.

Формула G называется теоремой исчисления Ψ (выводимой в Ψ или доказуемой в Ψ), если существует вывод F1 ,F2 ,…,Fn,G который называется выводом формулы G или доказательством теоремы G. Записывается это следующим образом:

F1 ,F2 ,…,Fn├ G.

Исчисление Ψ называется непротиворечивым, если не все его формулы доказуемы. Можно дать другое определение непротиворечивости: Исчисление Ψ называется непротиворечивым, если в нем не являются выводимыми одновременно формулы F и ¬F (отрицание F).

Исчисление Ψ называется полным (или адекватным), если каждому истинному высказыванию М соответствует теорема теории Ψ.

Формальная теория Ψ называется разрешимой, если существует алгоритм, который для любой формулы теории определяет, является ли эта формула теоремой теории Ψ или нет.

§ 5 . 2 . Исчисление высказываний.

Используя понятие формального исчисления, определим

исчисление высказываний (ИВ).

 

 

Алфавит ИВ состоит из

 

 

 

1. букв А, В, Q,

R,

Р и других,

возможно с индексами

(которые

называются

пропозициональными

переменными},

 

 

 

2.логических символов (связок) ¬, &, , ,

3.вспомогательных символов (,).

28

Множество формул ИВ определяется индуктивно:

1.все пропозициональные переменные являются формулами ИВ;

2.если A, B —.формулы ИВ, то¬A, A B, A B, AB —

формулы ИВ;

3.выражение является формулой ИВ тогда и только тогда, когда это может быть установлено с помощью пунктов "1" и

"2".

Таким образом, любая формула ИВ строится из пропозициональных переменных с помощью связок ¬, , , , .

В дальнейшем при записи формул будем опускать некоторые скобки, используя те же соглашения, что и в предыдущей главе.

Аксиомами ИВ являются следующие формулы (для любых формул

A,B,C)

1.A(BA);

2.(AB)((A(BC))(AC));

3.(A B)A;

4.(A B)B;

5.(AB)((AC)(A(B C)));

6.A(A B);

7.A(B A);

8.(AC)((BC)((A B)C));

9.(AB)((A→¬B)→¬A);

10.¬¬AA.

Указанные формулы называются схемами аксиом ИВ. При подстановке конкретных формул в какую-либо схему получается частный случай схемы аксиом.

Правилом вывода в ИВ является правило заключения {modus ponens):

если A и AB — выводимые формулы, то B — также выводимая формула.

Символически это записывается так:

A , A B

.

 

 

B

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

Говорят, что формула G выводима из формул F1 ,F2 ,…,Fn (обозначается F1 ,F2 ,…,Fn├G), если существует последовательность формул F1 ,F2 ,…,Fk,G, в которой любая формула является либо аксиомой, либо принадлежит списку формул F1 ,F2 ,…,Fn (называемых гипотезами), либо получается из предыдущих формул по правилу вывода. Выводимость формулы G из (обозначается ├G) равносильно тому, что G — теорема ИВ.

29

Соседние файлы в папке Основные