Любая булева функция может иметь много представлений в виде ДНФ и КНФ. Особое место среди этих представлений занимают совершенные ДНФ (СДНФ) и совершенные КНФ (СКНФ).
Совершенная дизъюнктивная нормальная форма (СДНФ) – это ДНФ, в которой в каждый конъюнктивный одночлен каждая переменная х i из набора f(х1, х2, ..., хп) входит ровно один раз, причем входит либо сама х i либо ее отрицание .
Конструктивно СДНФ для каждой формулы алгебры высказываний, приведенной к ДНФ, можно определить так:
Совершенной дизъюнктивной нормальной формой (СДНФ) формулы алгебры высказываний называется ее ДНФ, обладающая следующими свойствами:
1. ДНФ не содержит двух одинаковых конъюнкций.
2. Ни одна конъюнкция не содержит одновременно двух одинаковых переменных.
3. Ни одна конъюнкция не содержит одновременно некоторую переменную и ее отрицание.
4. Каждая конъюнкция содержит либо переменную х i либо ее отрицание для всех переменных, входящих в формулу.
Конструктивно СКНФ для каждой формулы алгебры высказываний, приведенной к КНФ, можно определить так:
Совершенной конъюнктивной нормальной формой (СКНФ) данной формулы алгебры высказываний называется такая ее КНФ, которая удовлетворяет следующим свойствам:
1. КНФ не содержит двух одинаковых дизъюнкций.
2. Ни одна из дизъюнкций не содержит одновременно двух одинаковых переменных.
3. Ни одна из дизъюнкций не содержит одновременно некоторую переменную и ее отрицание.
4. Каждая дизъюнкция СКНФ содержит либо переменную х i либо ее отрицание для всех переменных, входящих в формулу.
Сформулируем следующие теоремы:
Приведенные формулы позволяют сформулировать следующие утверждения:
1. Каждая булева функция от n переменных, отличная от константы 0, имеет единственную СДНФ.
2.Каждая булева функция от п переменных, отличная от константы 1, имеет единственную СКНФ.
Эти утверждения называются теоремой о функциональной полноте.
Многочлены Жегалкина
Согласно сформулированным утверждениям, можно говорить, что система булевых функций полна. Тогда любую булеву функцию можно представить в виде многочлена от своих переменных и такой многочлен называется многочленом Жегалкина.
Многочленом Жегалкина называется многочлен, являющийся суммой константы и различных одночленов, в которые каждая из переменных входит не выше, чем в первой степени.
Сформулируем алгоритм построения многочлена Жегалкина. Выше было указано, что любую функцию, отличную от константы 0, можно представить в виде СДНФ. Если сравним таблицы истинности
Индивидуальные задания
Лексикографическое упорядочение наборов в таблице истинности булевой функции позволяет задать функцию двоичным набором длины 2n, который будем обозначать буквой F . Двоичный набор данной функции F = 11111111. Отметим, что двоичный набор определяет булеву функцию в том и только в том случае, когда его длина есть степень двойки, а соответствующий показатель степени определяет число переменных данной функции.
Задача 16
Постройте таблицу истинности функции. С помощью эквивалентных преобразований приведите функцию к ДНФ, КНФ, СДНФ, СКНФ. Составьте двумя способами полином Жегалкина и проверьте линейность функции.
Индивидуальные задания
Вариант | задание1 |
1 | 16(3) |
2 | 16(6) |
3 | 16(10) |
4 | 16(5) |
5 | 16(14) |
6 | 16(12) |
7 | 16(1) |
8 | 16(9) |
9 | 16(13) |
10 | 16(15) |
11 | 16(2) |
12 | 16(7) |
13 | 16(4) |
14 | 16(8) |
15 | 16(11) |
Контрольные вопросы
1. Что называется высказыванием?
2.Приведите пример высказываний. Какое высказывание называется истинным, а какое ложным?
3.Что называется составным высказыванием?
4.Перечислите виды логических операций над высказываниями и сформулируйте их определение.
5.Какие основные символы используются в теории высказываний?
6.Какие связки простейшие? Назовите другие связки.
7.Что такое таблица истинности высказывания и как она строится? Как еще называется эта таблица?
8.Какие существуют логические отношения между высказываниями?
9.Перечислите варианты импликации.
10.Сформулируйте основные законы алгебры высказываний. Как их доказать?
11.Что такое булева функция?
12.Как строится таблица истинности для булевых функций?
13.Что такое ДНФ и КНФ?
14.Дайте определение совершенного одночлена.
15.Приведите правило преобразования формул в СДНФ и СКНФ.
16.Как булевы функции связаны с формулами алгебры высказываний?
17.Дайте определение многочлена Жегалкина и сформулируйте теорему Жегалкина.
18.Сформулируйте первый алгоритм построения многочлена Жегалкина булевой функции.
19.В чем состоит метод неопределенных коэффициентов для построения многочлена Жегалкина?
20.Какой многочлен Жегалкина называется нелинейным?
21.Каков алгоритм определения линейности (нелинейности) булевой функции?
Дата: 2019-02-02, просмотров: 1016.