з1. Функции алгебры логики. Равенство функций.
Тождества для элементарных функций.
1. Функции алгебры логики.
Определение 1. Пусть E2 = {0, 1} Ч основное множество (исходный алфавит значений n переменных), тогда E2 = {(1, Е, n) | i iE2}. Тогда всюду определённой булевой функциn ей назовём отображение f (x1, Е, xn): E2 E2. Такую функцию можно задать таблично, а можно как суперпозицию других, более простых функций. Например, для n = 1:
x 0 1 x x 0 0 1 0 1 0 1 1 При этом функция 0 называется константой нулём, функция 1 Ч константой единицей, функция x Ч тождественной, а функция x Ч отрицанием x. При этом для последней функции допускается также иное обозначение: x мx.
Для n = 2:
x y f1 f2 f3 f4 f5 f6 f0 0 0 0 0 1 1 1 0 1 1 0 1 1 0 1 1 0 1 0 1 0 0 1 1 1 1 1 0 1 1 0 При заполнении таблицы столбцы переменных заполняются в лексикографическом порядке (по возрастанию двоичных чисел).
f1 Ч дизъюнкция, функция лили, логическое сложение: f1 = x y.
f2 Ч конъюнкция: f2 = x y = x & y = xy.
f3 Ч сложение по модулю 2 (исключающее лили): f3 = x y = x + y.
f4 Ч импликация: f4 = x y.
f5 Ч эквивалентность: f5 = x ~ y = x y.
f6 Ч штрих Шеффера: f6 = x | y = xy.
f7 Ч стрелка Пирса: f7 = x y = x y.
емма (о числе слов). В алфавите A = {a1, Е, ar} из r букв можно построить ровно rm различных слов длины m.
Доказательство. Проведём индукцию по m. Для m = 1 утверждение очевидно. Пусть утверждение леммы верно для m - 1, то есть существует ровно rm - 1 различных слов длины m - 1. Для каждого такого слова длины m - 1 существует ровно r возможностей добавить одну букву в конец. Так как всего слов длины m - 1 Ч rm - 1, то различных слов длины m получится r rm - 1 = rm. Лемма доказана.
Рассмотрим таблицу некоторой функции алгебры логики от n переменных.
x1 x2 Е xn f 0 0 Е 0 0 0 Е 1 n 2n Е Е Е Е Е 1 1 Е 1 2 -n Для её задания необходимо и достаточно определить её значения на 2n наборах. Таким образом, получаем, что всего различных функций от n переменных столько, сколько существует n различных наборов из нулей и единиц длины 2n, т.е. 22.
Используя последний факт можно, например, получить оценку числа функций от 10 переменных. Всего таких функций будет 22 = 21024 > 21000 = (210) > (1000) = 10300. Таким образом, при росте числа переменных число функций возрастает очень быстро, и их табличное задание становится неудобным.
2. Равенство функций. В обычной алгебре справедливо равенство x + y - y = x, несмотря на то, что в левой части записана функция от двух переменных, а в правой Ч от одной. Таким образом, функции от разного числа переменных могут быть одинаковыми, что даёт повод ввести понятие существенных и фиктивных переменных.
Определение 2. Переменная xi называется существенной переменной функции алгебры логики f (x1, Е, xn), если существуют такие 1, Е, i - 1, i + 1, Е, nE2, что f (1, Е,i - 1, 0, i + 1,Е, n) f (1, Е, i - 1, 1, i + 1, Е, n).
Такие наборы, отличающиеся лишь одной переменной xi, называются соседними по xi. В противном случае переменная xi называется фиктивной.
Если xi Ч фиктивная переменная функции f, то функция f однозначно определяется некоторой функцией g (x1, Е, xi - 1, xi + 1, Е, xn). Таблицу любой функции можно расширить введением любого числа фиктивных переменных.
Определение 3. Две функции алгебры логики называются равными, если одну из них можно получить из другой путём добавления и изъятия любого числа фиктивных переменных.
3. Формулы.
Определение 4. Пусть имеется некоторое множество функций A = {f1 (Е), f2 (Е), Е, fn (Е), Е}.
Введем понятие формулы над A:
1) Любая функция из A называется формулой над A.
2) Если f (x1, Е, xn) A и для любого i Hi Ч либо переменная, либо формула над A, то выражение вида f (H1, H2, Е, Hn) является также формулой над A.
3) Только те объекты называются формулами над A, которые можно построить с помощью пунктов 1 и 2 данного определения.
Замечание. Среди H1, H2, Е, Hn вполне могут быть одинаковые.
4. Основные эквивалентности.
1. Коммутативность: 2. Ассоциативность:
x y = y x ; (x y) z = x (y z) = x y z ;
xy = yx ; (xy) z=x (yz)=xyz ;
x y = y x ; (x y) z = x (y z) = x y z.
x ~ y = y ~ x.
3. Дистрибутивность:
4. x = x, (x y) z = (xz) (yz) ;
правила де Моргана:
(x y) z = (xz) (yz) ;
x y = x y, (xy) z = (x z)(y z).
x y = x y.
5. Законы поглощения.
6. x y = x y x x = x x y = x y x x = x x x = 1 x y = x y x x = x y = (x y) (x y) x 1 = x ~ y = x y = (xy) (x y) x 1 = x x 0 = x x 0 = 0.
Приоритет конъюнкции выше, чем приоритеты дизъюнкции и суммы по модулю 2. Благодаря этому, часто удаётся опустить ряд ненужных скобок. Имеют место следующие очевидные утверждения:
x1 x2 Е xn = 1 i xi = 1, x1 x2 Е xn = 1 i: xi = 1.
x, = Определение 5. x в степени сигма называется функция x = x, = 0 ; x = 1 x =.
з2. Теорема о разложении функции алгебры логики по переменным.
Теорема о совершенной дизъюнктивной нормальной форме.
Теорема 1 (о разложении функции алгебры логики по переменным). Для любой функции алгебры логики f (x1, Е, xn) и для любого k (1 k n) справедливо следующее равенство:
1 2 k f (x1,Е, xn)= x1 x2 Е xk f (1,2,Е,, xk+1,Е, xn).
k k (1,,Е, )E2 k ~ Доказательство. Для любого набора = (1,2,Е,n ) вычислим значение правой части на этом наборе. Как только хотя бы один из сомножителей будет равен нулю, вся конъюнкция обратится в нуль. Таким образом, из ненулевых конъюнкций останется лишь одна Ч та, в которой i = i и 1 1 2 k 2 k 1 2 Еk f (1,,Е,,k +1,Е,n )= 0 Е 0 1 2 k f (1,Е,n ), 2 k k (1,,Е, )E2 k а в силу того, что xx = 1, указанное выражение равно f (1, 2, Е, n). Теорема доказана.
Следствие 1. Разложение произвольной функции алгебры логики по одной переменной имеет вид f (x1, x2,Е, xn )= x1 f (0, x2,Е, xn ) x1 f (1, x2,Е, xn ).
Следствие 2 (теорема о совершенной дизъюнктивной нормальной форме). Для любой функции алгебры логики f (x1, x2, Е, xn), отличной от тождественного нуля, справедливо следующее представление:
1 2 n f (x1,Е, xn)=,Е,n )=1 x1 x2 xn.
(1,Е,n ): f ( Доказательство. Пусть функция f (x1, x2,Е, xn) отлична от тождественного нуля. Напишем разложение этой функции по k = n переменным:
2 n f (x1,Е, xn )= x1 x2 Еxn f (1,,Е, ), 2 n n (1,,Е, )E2 n что можно переписать в эквивалентном виде 1 2 1 2 n n x1 x2 Еxn f (1,Е,n),Е,n )=0 x1 x2 Еxn f (1,Е,n).
(1,Е,n ): f (,Е,n )=1 (1,Е,n ): f ( 1 Учитывая, что в первой дизъюнкции все значения функции равны единице, а вторая обнуляется из-за того, что все значения функции в ней равны нулю, получаем утверждение следствия. Следствие доказано.
Теорема 2 (о совершенной конъюнктивной нормальной форме). Для любой функции алгебры логики f (x1, x2, Е, xn), отличной от тождественной единицы, справедливо представление 2 n f (x1,Е, xn )= & (x1 x2 Е xn ).
(1,,Е, ) 2 n f (1,,Е, )=2 n з3. Полные системы. Примеры полных систем (с доказательством полноты).
Определение. Множество функций алгебры логики A называется полной системой (в P2), если любую функцию алгебры логики можно выразить формулой над A.
Теорема 3. Система A = {, &, м} является полной.
Доказательство. Если функция алгебры логики f отлична от тождественного нуля, то f выражается в виде совершенной дизъюнктивной нормальной формы, в которую входят лишь дизъюнкция, конъюнкция и отрицание. Если же f 0, то f = x x. Теорема доказана.
емма 2. Если система A Ч полная, и любая функция системы A может быть выражена формулой над некоторой другой системой B, то B Ч также полная система.
Доказательство. Рассмотрим произвольную функцию алгебры логики f (x1, Е, xn) и две системы функций: A = {g1, g2, Е} и B = {h1, h2, Е}. В силу того, что система A полна, функция f может быть выражена в виде формулы над ней: f (x1,Е, xn )= [g1, g2,Е], где gi = i[h1,h2,Е], то есть функция f представляется в виде f (x1,Е, xn )= [1,2,Е], иначе говоря, может быть представлена формулой над B. Перебирая таким образом все функции алгебры логики, получим, что система B также полна. Лемма доказана.
Теорема 4. Следующие системы являются полными в P2:
1) {x y, x};
2) {x y, x};
3) {x | y};
4) {x y, x y, 1}.
Доказательство. 1) Известно (теорема 3), что система A = {x y, x y, x} полна. Покажем, что полна система B = {x y, x}. Действительно, из закона де Моргана x y = x y получаем, что x y = x y, то есть конъюнкция выражается через дизъюнкцию и отрицание, и все функции системы A выражаются формулами над системой B. Согласно лемме 2 система B полна.
2) Аналогично пункту 1: x y = x y x y = x y и из леммы 2 следует истинность утверждения пункта 2.
3) x | x = x, x y = x | y = (x | y)| (x | y) и согласно лемме 2 система полна.
4) x = x 1 и согласно лемме 2 система полна.
Теорема доказана.
з4. Теорема Жегалкина о представимости функции алгебры логики полиномом.
Определение 1. Монотонной конъюнкцией от переменных x1,Е, xn называется любое выражение вида xi xi xi xi, где s 1, 1 ij n j = 1, 2, Е, s, все переменные различны 1 2 3 s (ij ik, если j k); либо просто 1.
Определение 2. Полиномом Жегалкина над x1, Е, xn называется выражение вида K1 K2 K3 Е Kl, где l 1 и все Kj суть различные монотонные конъюнкции над x1, Е, xn; либо константа 0.
Теорема 5 (теорема Жегалкина). Любую функцию алгебры логики f (x1, Е, xn) можно единственным образом выразить полиномом Жегалкина над x1, Е, xn.
Доказательство. 1) Докажем существование полинома. Система {x y, x y, 1} полна, следовательно, любую функцию алгебры логики f (x1, Е, xn) можно реализовать формулой над {x y, x y, 1}.
a) Пользуясь дистрибутивностью, раскрываем все скобки в этой реализации и получаем, что f (x1, Е, xn) = K1 K2 Е Kl, где любая Ki Ч конъюнкция переменных и единиц.
b) Преобразуем все полученные конъюнкции в элементарные, пользуясь при этом коммутативностью и соотношениями x x = x, 1 1 = 1 и A 1 = A. Очевидно, все конъюнкции станут монотонными.
c) Преобразуем полученную сумму в полином Жегалкина, пользуясь при этом соотношениями A A = A и A 0 = A. В результате получим либо Ki Ki Ki Е Ki, 1 2 3 m либо константу 0.
Существование доказано.
2) Докажем единственность представления. Подсчитаем число различных всевозможных монотонных конъюнкций от n переменных. Для этого составим таблицу вида x1 x2 x3 xx1x2x4 1 1 0, x2x3 0 1 1 1 0 0 0 где каждой переменной соответствует единица, если она присутствует в монотонной конъюнкции и ноль в противном случае. При этом константе единице поставим в соответствие нулевой набор. Очевидно, что построенное отображение биективно. Следовательно, всего различных монотонных конъюнкций от n переменных Ч 2n. Построим аналогичное биективное отображение между всевозможными суммами монотонных конъюнкций и векторами длины 2n Ч числа конъюнкций. Для этого составим таблицу вида xy x y xy +1 1 0 0 1, 0 0 0 0 где под соответствующей монотонной конъюнкцией стоит единица, если она входит в данную сумму, и ноль, если не входит. При этом константе ноль ставится в соответствие нулевой набор. Очевидно, такое отображение биективно. Всего таких различных сумм будет n столько, сколько существует различных булевых векторов длины 2n, то есть Ч 22. Мы получили, что число различных полиномов Жегалкина совпадает с числом функций алгебры логики. Поскольку отображение из множества полиномов во множество функций сюръективно, то оно и биективно, так как множества полиномов Жегалкина над n переменными и функций алгебры логики от n переменных равномощны. Единственность доказана.
Pages: | 1 | 2 | 3 | 4 | 5 | ... | 7 | Книги по разным темам