- •Ахметова Наиля Абдулхамитовна
- •Введение
- •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.Построить сокращенную ДНФ по ДНФDфункцииf(x,y,z), где
После первого этапа получаем:
После второго этапа получаем сокращенную ДНФ:
Алгоритм построения сокращенной днф с помощью кнф (метод Нельсона)
Пусть f(x1, … ,xn) есть некоторая функция алгебры логики. Построим дляfнекоторую КНФ. Осуществим далее следующие преобразования.
1. В КНФ раскроем скобки и удалим дублирующие члены, затем удалим дизъюнктивные слагаемые, содержащие одновременно переменную и ее отрицание. В результате получим дизъюнкцию конъюнкций, каждая из которых содержит только по одному элементу из каждой скобки КНФ.
2. В полученном выражении удалим нулевые дизъюнктивные слагаемые.
3. В полученном выражении проведем все поглощения, а затем удалим дублирующие члены.
В результате проведенных операций получим сокращенную ДНФ функции f. Покажем это.
Для каждой элементарной дизъюнкции Dв КНФ и каждой элементарной конъюнкцииKв сокращенной ДНФ (сокр. ДНФ) существует некоторый множитель видаxизK, содержащийся вD, т.е.
DДНФKсокр. ДНФxa K(xaD).
Допустим противное: в КНФ существует элементарная конъюнкция D, в сокращенной ДНФ существует элементарная конъюнкцияK, для которой всякий множитель видаxa изKне входит вD. Не уменьшая общности возьмем для простоты
Положим x1 = a1, …, xk=ak, xk+1 = ck+1 ak+1, …, xr = cr ar. ТогдаK(a1, …,ak) = 1, и потомуf(a1, …,ak,ck+1, …,cr ) = 1. С другой стороны,D(ck+1,…,cr) = 0, и потомуf (a1, …,ak,ck+1, …,cr ) = 0. Противоречие.
Пусть по-прежнему для простоты произвольный простой импликант Kиз сокращенной ДНФ равен . Тогда элементы попадут в не менее чемkскобок из КНФ. Если допустим, что этого нет, то при перемножении скобок из КНФ не получим дизъюнктивного слагаемого, которое содержало бы множители , а потому, строя из результата перемножения сокращенную ДНФ вычеркиванием лишних сомножителей, не получим простого импликантаK.
Так как содержатся вkразных скобках КНФ, а всякая другая скобка, отличная от указанныхkскобок, содержит хотя бы один элемент видаxизK, то при раскрытии скобок имеем простой импликантK. После проведения всех операций поглощения и удаления дублирующих множителей, останутся только простые импликанты из сокращенной ДНФ, ибо если предположить наличие в результате хотя бы одного дизъюнктивного слагаемого, отличного от всех простых импликантов сокращенной ДНФ, то можно подобрать такие значения переменных функцииf, на которых все простые импликанты примут значение 0, а это дополнительное слагаемое – значение 1, чего быть не может.
Пример 3.Построим сокращенную ДНФ этим способом для функции
f= (1111010010101111) из примера 1 :
Сокращенная ДНФ для функции
что, естественно, совпадает с результатом примера 1.
Пример 4.Построить сокращенную ДНФ по заданной КНФ
После раскрытия скобок имеем:
После второго этапа получаем сокращенную ДНФ:
Тупиковой ДНФ ( ТДНФ)функцииfназывается такая ДНФ ее простых импликант, из которых нельзя выбросить ни одного импликанта, не изменив функцииf.
Теорема. Всякая минимальная ДНФ некоторой функции является ее тупиковой ДНФ.
Доказательство. В МДНФ входят только простые импликанты, иначе некоторые множители в непростом имликанте можно удалить в противоречие с минимальностью исходной ДНФ. В МДНФ нет лишних импликант, иначе исходная ДНФ не является минимальной.
Вывод. Для получения МДНФ функцииfнеобходимо построить все ТДНФ функцииfи выбрать из них те, которые содержат минимальное число букв.