- •Ахметова Наиля Абдулхамитовна
- •Введение
- •1. Элементы комбинаторики
- •1.1. Перестановки. Размещения. Сочетания
- •Теорема.
- •1.2. Задачи по комбинаторике
- •2. Функции алгебры логики
- •2.1. Элементарные функции алгебры логики
- •Пример 2.
- •2.2. Формульное задание функций алгебры логики
- •Упрощение записи формул:
- •Теорема о замене подформул на эквивалентные
- •Некоторые свойства элементарных функций
- •Следствия из свойств элементарных функций
- •Пример 3:
- •2.3 Принцип двойственности
- •Пример 1. Покажем с помощью таблицы истинности, что константа 0 двойственна к 1:
- •Пример 3. Покажем, что функция х1х2 двойственна к x1&x2, функция х1х2 двойственна к функции x1|x2.
- •Принцип двойственности
- •Лемма о несамодвойственной функции
- •2.4 Разложение булевой функции по переменным
- •Теорема о разложении функции по переменным
- •2.5. Полнота, примеры полных систем
- •Полные системы
- •Представление функции в виде полинома Жегалкина
- •Теорема Жегалкина
- •2.6. Замыкание и замкнутые классы
- •Важнейшие замкнутые классы в р2
- •Теорема Поста о полноте
- •Примеры использования теоремы Поста.
- •3. Составим критериальную таблицу для другой полной системы функций из р2: {0, 1,x1x2,x1x2}.
- •Теорема о достаточности четырех функций.
- •2.7. Функции k - значной логики
- •Теорема о полной в Рk системе функций
- •2.8. Задачи и упражнения по функциям алгебры логики
- •1. Построить таблицы соответствующих функций, выяснить, эквивалентны ли формулы и :
- •2. Построив таблицу для соответствующих функций, убедитесь в справедливости следующих эквивалентностей:
- •3. Минимизация булевых функций
- •3.1. Минимизация нормальных форм
- •Алгоритм Квайна построения сокращенной днф.
- •Метод Блейка
- •Алгоритм построения сокращенной днф с помощью кнф (метод Нельсона)
- •Построение всех тупиковых днф.
- •Алгоритм минимизации функций в классе днф
- •Алгоритм минимизации функций в классе кнф
- •Алгоритм минимизации функций в классе нормальных форм
- •3.2 Минимизация частично определенных функций
- •Алгоритм минимизации частично определенных функций в классе днф
- •Алгоритм минимизации частично определенных функций в классе кнф
- •Метод минимизирующих карт Карно
- •3.3 Задачи по минимизации и доопределению булевых функций
- •4. Логика высказываний
- •4.1. Введение в логику высказываний
- •4.2. Задачи по алгебре высказываний
- •Список литературы
2.5. Полнота, примеры полных систем
Определение.Система функций {f1,f2, ...,fs, ...}P2называется полной вР2, если любая функцияf(x1, ...,xn)P2может быть записана в виде формулы через функции этой системы.
Полные системы
1. P2 – полная система.
2. Система M={x1&x2,x1x2, } – полная система, т.к. любая функция алгебры логики может быть записана в виде формулы через эти функции.
Пример 1.Неполные системы: {}, {0,1}.
Лемма(достаточное условие полноты)
Пусть система U= {f1,f2, ...,fs, ...} полна вР2. ПустьB= {g1,g2, ...,gk, ...} – некоторая система изР2, причем любая функцияfi Uможет быть выражена формулой надB, тогда системаBполна вР2.
Доказательство. Пусть h(x1, ..., xn) P2, т.к. U полна в Р2, то h(x1, ..., xn) = =N[f1, ..., fs, ...] = N[L1[g1, ..., gk], ..., Ls[g1, ..., gk], ...] = U[g1, ..., gk]. Здесь мы воспользовались тем, что для любого i n fi может быть выражена формулой над B, поэтому fi=Li[gi, ..., gk].
3. Система {x1x2, } – полна вP2.
Возьмем в качестве полной в Р2системыU={x1x2, ,x1&x2},B={x1x2, }. Надо показать, что x1&x2представляется формулой надB. Действительно, по правилу Де Моргана получим:x1&x2=.
С помощью этой леммы докажем полноту еще ряда систем.
4. Система {x1&x2, } – полна вР2.
5. Система {x1|x2} полна вР2. Для доказательства возьмем в качестве полной вР2системы U= {x1&x2, } и выразимх1&х2и черезх1|x2 :
=x1 |x1,x1 &x2== (x1|x2)|(x1|x2).
6. Система {x1x2} полна вР2.U= {x1x2, }, =x1x1,x1x2 = = (x1x2) (x1x2).
7. Система {x1&x2,x1x2, 0, 1},U= {x1&x2, }, =x11.
Следствие.Полином Жегалкина.
f(x1, ...,xn)P2, представим ее в виде формулы через конъюнкцию и сумму по модулю два, используя числа 0 и 1. Это можно сделать, так как {x1&x2,x1x2, 0, 1} полна вР2. В силу свойстваx& (yz) =xyxzможно раскрыть все скобки, привести подобные члены, и получится полином отnпеременных, состоящий из членов видахх...х, соединенных знаком. Такой полином называется полиномом Жегалкина.
Общий вид полинома Жегалкина:
где ,s= 0, 1, ...,n, причем приs= 0 получаем свободный члена0.
Представление функции в виде полинома Жегалкина
1. Представим любую функцию формулой над {x1&x2,} и сделаем замену =x1. Этот способ удобен, если функция задана формулой.
Пример 2.(x1(x2x3))(x1 x2)x3 = (x1 x2 x3)(x1 x2)x3 = (x1x2 x1x3 x1x2 x2 x2x3)x3 = (x1x3 x2)x3 =x1x3x2x3 = ((x1x31)x21)x3 =x1x2x3x2x3x3.
Надо помнить, что четное число одинаковых слагаемых в сумме по mod2 дает 0.
2. Метод неопределенных коэффициентов. Он удобен, если функция задана таблицей.
Пример 3.Запишем с неопределенными коэффициентами полином Жегалкина для функции трех переменныхf(x1,x2,x3) = (01101001) =а0 а1х1 а2х2 а3х3 b1x1x2 b2x2x3 b3x1x3cx1x2x3. Затем находим коэффициенты, используя значения функции на всех наборах. На наборе (0, 0, 0)f(0, 0, 0) = 0, с другой стороны, подставив этот набор в полином, получимf(0, 0, 0) =а0, отсюдаа0 = 0.f(0, 0, 1) = 1, подставив набор (0, 0, 1) в полином, получим:f(0, 0, 1) =а0 а3, т.к.а0 = 0, отсюдаа3 = 1. Аналогично,f(0, 1, 0) = 1 =а2, f(0, 1, 1) = 0 =а2 а3 b2 =b2 = 0;а1 = 1; 0 =а1 а3 b3 =b3 = 0; 0 =а1 а2 b1 =b1 = 0; 1 = 111c;c= 0;f(x1,x2,x3) =x1 x2 x3.
3. Многочлен Жегалкина можно получить также с помощью треугольника Паскаля по единицам его левой стороны по таблице следующим образом. Построим многочлен Жегалкина для функции f= (10011110). Верхняя сторона треугольника есть функцияf. Любой другой элемент треугольника есть сумма по модулю для двух соседних элементов предыдущей строки. Левая сторона треугольника для функцииfсодержит шесть единиц. Многочлен Жегалкина будет содержать шесть слагаемых. Первая единица треугольника соответствует набору (000). Первое слагаемое многочлена есть 1. Третья снизу единица в левой стороне треугольника соответсвует набору (101). В качестве слагаемого многочлена беремx1x3. Аналогично для других единиц треугольника. Слева от наборов показаны слагаемые многочлена Жегалкина.
N |
x1x2x3 |
f |
Треугольник Паскаля |
1 x3 x2 x2x3 x1 x1x3 x1x2 x1x2x3 |
000 001 010 011 100 101 110 111 |
1 0 0 1 1 1 1 0 |
1 0 0 1 1 1 1 0 1 0 1 0 0 0 1 1 1 1 0 0 1 0 0 1 0 1 0 1 1 1 1 0 0 1 0 1 |
Тогда