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

discr_math

.pdf
Скачиваний:
69
Добавлен:
14.05.2015
Размер:
2 Mб
Скачать

50

но; заменим дизъюнкцией, – конъюнкцией; разность любых двух множеств S \T S T можно заменить формулой s t .

В результате, если равенство (3.20) выполняется для произ-

вольных множеств, то ему должна соответствовать общезначимая

логическая формула:

x (y z) (x y) (x z).

(3.21)

Запишем (3.21) в упрощенном виде:

 

 

 

 

 

 

 

 

 

 

(3.22)

xy

 

z xy xz,

и с помощью эквивалентных преобразований приведем правую часть формулы (3.22) к ее левой части:

xy xz x(y z) x(y z) x yz .

Таким образом, равенство (3.31) является общезначимой ло-

гической формулой, и вместе с этой формулой доказано исходное равенство для множеств. Отметим, что вместо проведения преобра-

зований можно было бы в (3.21) построить таблицу истинности пра-

вой и левой частей равенства и убедиться в том, что эквиваленция xyz xy xz есть тавтология.

Пример 3.31. Выяснить, в каком отношении находятся множества

(A B) \ C и A (B \C). Первому из перечисленных множеств можно поставить в соответствие формулу F1 (x y) z , а вто-

рому – формулу F2 x (y z). Теперь составим таблицу истин-

ности двух импликаций (табл. 3.23):

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

51

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(x y)

 

 

x (y

 

)

 

 

 

 

 

 

 

 

 

 

(3.23)

 

 

 

 

 

 

 

 

 

 

 

z

z

 

 

и

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(x y)

 

 

x (y

 

) .

 

 

 

 

 

 

 

 

 

 

(3.24)

 

 

 

 

 

 

 

 

 

 

 

z

z

 

 

 

x

 

y

 

z

 

z

 

x y

 

 

(x y)

z

 

 

 

y

z

 

x (y

z

)

 

 

F1 F2

 

 

F2 F1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

0

 

0

 

1

 

0

 

 

0

 

 

 

 

 

 

0

 

 

 

0

 

 

 

 

 

 

 

 

 

1

 

 

1

 

 

 

0

 

0

 

1

 

0

 

0

 

 

0

 

 

 

 

 

 

0

 

 

 

0

 

 

 

 

 

 

 

 

 

1

 

 

1

 

 

 

0

 

1

 

0

 

1

 

1

 

 

1

 

 

 

 

 

 

1

 

 

 

1

 

 

 

 

 

 

 

 

 

1

 

 

1

 

 

 

0

 

1

 

1

 

0

 

1

 

 

0

 

 

 

 

 

 

0

 

 

 

0

 

 

 

 

 

 

 

 

 

1

 

 

1

 

 

 

1

 

0

 

0

 

1

 

1

 

 

1

 

 

 

 

 

 

0

 

 

 

1

 

 

 

 

 

 

 

 

 

1

 

 

1

 

 

 

1

 

0

 

1

 

0

 

1

 

 

0

 

 

 

 

 

 

0

 

 

 

1

 

 

 

 

 

 

 

 

 

1

 

 

0

 

 

 

1

 

1

 

0

 

1

 

1

 

 

1

 

 

 

 

 

 

1

 

 

 

1

 

 

 

 

 

 

 

 

 

1

 

 

1

 

 

 

1

 

1

 

1

 

0

 

1

 

 

0

 

 

 

 

 

 

0

 

 

 

1

 

 

 

 

 

 

 

 

 

1

 

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Табл. 3.23

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Импликация F1 F2 есть тавтология, а импликация

 

F1 F2 тавто-

логией не является, поэтому справедливо вложение:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(A B) \С A (B \ С) .

 

 

 

 

 

 

 

Двойственные логические функции

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Определение 3.14. Функция

f (x ,...,x

)

 

(

 

1,...,

 

n)

называется

f

x

x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

двойственной по отношению к логической функции

f (x1,...,xn) .

Пример 3.32. Двойственной к функции

 

 

f (x, y) x y

 

 

является

функция f (x, y)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(

 

,

 

) (

 

 

 

 

 

) x y ,

а функция, двойственная

f

x

y

x

y

52

к f (x) x, имеет вид f (x) f (x) (x) x . Если f (x) есть логи-

ческая постоянная, например, f (x) 0, то f (x) 1.

Пусть f (x1,...,xn) задана некоторой таблицей истинности.

Тогда для построения таблицы истинности двойственной функции необходимо заменить все единицы таблицы, включая и значения переменных, нулями, а нули – единицами. Например, функция, за-

данная таблицей 3.24, двойственна функции f (x, y,z), заданной таблицей 3.25.

x

y

z

f (x, y,z)

0

0

0

1

0

0

1

0

0

1

0

0

0

1

1

1

1

0

0

0

1

0

1

1

1

1

0

0

1

1

1

0

 

 

 

 

Табл. 3.24

x

y

z

f (x, y,z)

1

1

1

0

1

1

0

1

1

0

1

1

1

0

0

0

0

1

1

1

0

1

0

0

0

0

1

1

0

0

0

1

 

 

 

 

Табл. 3.25

Если f двойственна к функции f , то f является двойст-

венной к f : f ( f ) .

Кроме этого, для любых двух равных функций f1 f2 соот-

ветствующие двойственные функции так же будут равны f1 f2 .

Возможность перехода к равенству двойственных функций позволя-

53

ет получать новые соотношения равенства из уже известных (срав-

ните две формулы закона поглощения

x x y x и x(x y) x).

Пусть логическая функция f

представляет собой суперпо-

зицию некоторых

функций f g(h1,...,hn ). Тогда двойственная

функция

f есть суперпозиция соответствующих двойственных

функций

f g (h ,...,h ).

 

 

1

n

 

Определение 3.15. Функция, удовлетворяющая условию f (x1,x2, ,xn) f (x1,x2, ,xn),

называется самодвойственной.

Простейшей самодвойственной функцией является отрица-

ние f (x) x. Другой широко известный пример представлен само-

двойственной функцией f (x, y,z) xy xz yz (для проверки само-

двойственности последней функции достаточно построить соответ-

ствующие таблицы истинности).

На практике при построении двойственных функций часто используют принцип двойственности, который состоит в следую-

щем: если исходная функция f (x1, ,xn) представлена формулой,

содержащей лишь конъюнкции, дизъюнкции и отрицание, то для построения f (x1, ,xn) достаточно лишь заменить каждую дизъ-

юнкцию конъюнкцией, и наоборот.

54

Пример 3.33. Построить двойственную функцию f (x, y,z), если

f (x, y,z) xyz xy . Заменяя все дизъюнкции конъюнкциями и на-

оборот, получим функцию, двойственную функции f (x, y, z). f (x, y,z) (x y z)(x y) .

Полные системы логических функций

Определение 3.16. Система функций называется функционально полной системой, если любая логическая функция может быть пред-

ставлена в виде суперпозиции функций из , т.е. как формула над .

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

Теорема 3.8. Если любая функция системы представлена форму-

~

лой над некоторой другой системой и система функциональ-

~

но полная, то также будет функционально полной.

~

Если система и удовлетворяют условиям теоремы, то

~

мы будем говорить, что система сводится к системе .

Пример 3.34. Поскольку для любой логической функции существу-

ет представление этой функции в совершенной дизъюнктивной нор-

мальной форме (СДНФ, теорема 3.2), система функций

55

1 { , ,¬},

содержащая только конъюнкцию, дизъюнкцию и отрицание, являет-

ся функционально полной.

 

 

 

 

Пример 3.35. Системы

2 { ,¬}, 3 { ,¬},

4

{¬

, }

функционально полны. Приведем небольшие пояснения.

 

 

Система

2

полна, так как отсутствующая в этой системе

дизъюнкция, согласно законам де Моргана,

выражается

через

конъюнкцию и отрицание4:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x1 x2 (

 

 

 

 

 

 

 

 

).

 

 

 

 

 

 

 

 

x1

x2

 

 

 

 

Поэтому система

2

сводится к системе 1 .

 

 

 

 

Конъюнкция

x1 x2 так же выражается,

как суперпозиция

дизъюнкции и отрицания:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x1 x2 (

 

 

 

 

 

 

 

),

 

 

 

 

 

 

x1

x2

 

 

 

 

поэтому система

3

полная.

 

 

 

 

Система 4 полная, поскольку всегда справедливо равенство:

 

 

 

x1 x2

 

x2 ,

 

 

 

 

 

 

 

x1

 

 

 

 

и 4 сводится к системе

2 .

 

 

 

 

Пример 3.36. Система

5 {|} (штрих Шеффера)

и

6

{ }

(стрелка Пирса)

функционально полны. Напомним,

что штрихом

4 При использовании отрицания без переменной мы употребляем символ ¬. В строке с переменными отрицание будем записывать в виде x .

56

Шеффера обозначают функцию (x1 x2 ) . Отрицание ¬ и конъюнк-

цию нетрудно записать с помощью одного только штриха Шеффера:

x (x x) x| x ,

x1 x2 (x1 | x2) (x1 | x2)|(x1 | x2),

поэтому система 2 сводится к 5 .

Дизъюнкцию и отрицание выразим с помощью стрелки Пир-

са x1 x2 (x1 x2 ):

x (x x) x x ,

x1 x2 (x1 x2) (x1 x2) (x1 x2),

и система 6 сведена к полной системе 3 .

Пример 3.37. Система 7 { , ,1}, где представляет сложение

по модулю 2

(неравнозначность x1 x2 , исключающее «или»)

функционально полная. Напомним, что x1 x2

x1

 

 

 

x2 , по-

x2

x1

этому

 

 

 

 

 

 

 

 

 

 

 

 

 

x 0

 

1 x 1,

(3.25)

 

 

x

x

и система 7

сводится к системе 2 .

 

 

 

 

 

Последняя система логических функций

7 связана с воз-

можностью представления логической функции в виде полинома

(многочлена) Жегалкина.

57

Полиномом Жегалкина называют любую логическую функ-

цию, записанную в символах сложения по модулю 2 и конъюнкции.

Следующая формула задает общий вид такого полинома:

f (x1, ,xn )

(mod2) ai1i2...im xi1 xi2 xim .

(3.26)

 

{i1,i2 , ,im} B({1,2, ,n})

 

В формуле (3.26) множество индексов {i1,i2 , ,im } есть элемент булеана множества {1,2, , n}. Суммирование по модулю два в

(3.26) проводится по всем элементам булеана, причем пустому под-

множеству булеана соответствует коэффициент a0 .

Пример 3.38. При n 3 произвольный полином Жегалкина имеет

вид:

f (x1,x2,x3) a123 x1 x2 x3 a12 x1x2 a13 x1x3 a23 x2 x3

a1x1 a2 x2 a3 x3 a0 . (3.27)

Следующая формула (3.28) представляет линейный полином Жегал-

кина (многочлен первой степени):

f (x1, ,xn) an xn an 1 xn 1 a1 x1 a0

n

(mod2) ai xi a0 . (3.28)

i 1

Пример 3.39. Записать в виде полинома Жегалкина логическую

функцию x1x2 x1 x2 .

Сначала отметим, что для операции сложения по модулю 2

справедливы следующие равенства (все эти равенства нетрудно под-

58

твердить, составив соответствующие таблицы значений логических функций)

1 0 0 ,

x 0 x ,

x x 0

x1 x2 x2 x1 ,

x1(x2 x3) x1x2 x1x3 .

Теперь выразим дизъюнкцию через операцию :

x1 x2 x1x2 (x1 1)(x2 1) (x1 1)(x2 1) 1

x1x2 x1 x2 1 1 x1x2 x1 x2 0

 

 

 

 

 

 

 

 

 

 

 

 

 

x1x2 x1

x2 . (3.29)

Используя равенства (3.29) и (3.25), получим

 

x1 x2

 

 

 

x1 x2

 

 

 

x1 x2

 

 

 

 

 

x1

x2

x1

x2

x1

x2

 

0 x1 x2 (x1 1)(x2 1) x1 x2 x1 x2 x1 x2

1

0 x1 x2 1 x1 x2 1.

 

Нетрудно построить представление логической функции в виде полинома Жегалкина и в том случае, когда функция задается таблицей истинности.

Пример 3.40. Построить полином Жегалкина функции f (x1,x2,x3),

заданной таблицей 3.26.

59

x1

x2

x3

f (x1,x2,x3)

 

0

0

0

1

 

0

0

1

0

 

0

1

0

1

 

0

1

1

0

 

1

0

0

0

 

1

0

1

0

 

1

1

0

1

 

1

1

1

1

Табл. 3.26

 

 

 

 

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

нома Жегалкина задается равенством (3.27). Подстановка в (3.27)

наборов значений переменных (x1,x2,x3) — последовательностей нулей и единиц, приводит к следующим соотношениям для коэффи-

циентов полинома:

f (0,0,0)

a0 ,

 

 

 

 

f (1,0,0) a

1

a0 ,

f (1,1,0) a12

a1

a2

a0 ,

f (0,1,0) a2

a0 ,

f (1,0,1) a13

a1

a3

a0 ,

f (0,0,1) a3

a0 ,

f (0,1,1) a23

a2

a3

a0 ,

f (1,1,1) a123 a12 a13 a 23 a 1 a 2 a 3 a 0 .

Для вычисления коэффициентов многочлена необходимо

уметь решать простейшие уравнения над полем Z2 . Таблица 3.27

решений таких уравнений согласована с таблицей 3.20.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]