- •Литература
- •Перечень компьютерных программ, наглядных и других пособий, методических указаний и материалов и технических средств обучения
- •1.2.Операции над множествами
- •1.3. Булева алгебра множеств
- •1.4. Разбиения и покрытия
- •2. Отношения бинарные и n-арные
- •2.1. Декартово произведение
- •2.2. Бинарные отношения (соответствия)
- •2.3. Операции над бинарными отношениями
- •2.4. Функциональные отношения
- •2.5. Бинарные отношения на множестве
- •2.6. Алгебраические системы
- •3. Основные понятия теории графов
- •3.1. Абстрактный граф
- •3.2. Графическое представление бинарного отношения
- •Множеств а и в
- •3.3. Матричные представления графа
- •3.4. Части графа
- •3.5. Достижимость и связность
- •3.6. Доминирующие множества графа
- •3.7. Независимые множества графа
- •3.8. Раскраска графа
- •3.9.Планарность графов
- •3.10. Инварианты графов
- •4. Булевы функции
- •4.1. Способы задания булевой функции
- •4.2. Элементарные булевы функции и алгебраические формы
- •4.3. Интерпретации булевой алгебры
- •4.4. Нормальные формы булевых функций
- •4.4.1. Дизъюнктивные нормальные формы
- •4.4.2. Конъюнктивные нормальные формы
- •4.5 Полнота и замкнутость системы логических функций
- •4.6. Локальные упрощения днф
- •4.6.1. Удаление избыточных элементарных конъюнкций
- •4.6.2. Удаление избыточных литералов
- •4.7. Графическое представление булева пространства и булевых функций
- •4.7.1. Булев гиперкуб
- •4.7.2. Развертка гиперкуба на плоскости. Карта Карно
- •4.8. Минимизация днф
- •4.8.1. Метод Квайна-МакКласки
- •4.8.2. Метод Блейка-Порецкого
- •4.8.3. Визуально-матричный метод минимизации
- •5. Элементы математической логики
- •5.1 Алгебра высказываний
- •Всякое высказывание логично следует из самого себя.
- •2. Закон противоречия:
- •Если из а следует b, а b ложно, то а тоже ложно.
- •5.2. Логические отношения
- •5.3.Проверка правильности рассуждений
- •5.4. Решение логических задач методом характеристического уравнения
- •5.6. Кванторы
- •5.7 Эквивалентные соотношения. Префиксная нормальная форма
- •6. Основы теории алгоритмов
- •6.1. Интуитивное понятие об алгоритме
- •6.2. Три типа алгоритмических моделей
- •6.3. Кризис теории множеств антиномии. Выводы из антиномий
- •6.4. Машины Тьюринга как модели алгоритмов
- •6.5. Алгоритмы решения некоторых задач теории графов на графах
- •7. Конечный автомат и его описание.
- •7.2. Представления автомата
- •7.3. Связь между моделями Мили и Мура
- •7.4. Автомат с абстрактным состоянием. Булев автомат
- •7.5. Понятие о регулярных выражениях алгебры событий.
- •7.6. Задачи абстрактной теории конечных автоматов
- •8. Комбинаторные задачи и методы комбинаторного поиска
- •8.1. Задачи подсчета числа комбинаторных решений
- •8.2. Особенности оптимизационных комбинаторных задач
- •8.3. Вычислительная сложность
- •8.4. Методы комбинаторного поиска
- •8.5. Задача о кратчайшем покрытии и методы ее решения
- •8.5.1. Постановка задачи
- •8.5.2. Приближенные методы решения задачи
- •8.5.3. Точный метод
- •Вопросы к зачету
- •28. Нормальные формы булевых функций. Дизъюнктивные нормальные формы
- •44. Эквивалентные соотношения. Префиксная нормальная форма
- •Практический раздел Контрольная работа Указания по выбору варианта
- •Контрольное задание №1. Используя диаграммы Эйлера-Венна, решить задачу
- •Методические указания
- •Задачи для самостоятельного решения
- •Контрольное задание №2. Получить сднф, скнф, используя таблицу истинности. Построить днф, кнф, упростив выражение.
- •Методические указания
- •Задачи для самостоятельного решения
- •Контрольное задание №3. Упростить схему (рис. 2)
- •Методические указания
- •Задачи для самостоятельного решения
- •Задачи для самостоятельного решения
- •Методические указания
- •Задачи для самостоятельного решения
- •Контрольное задание №6. Найти инварианты неориентированного графа, заданного матрицей смежности
- •Методические указания
- •Задачи для самостоятельного решения
Контрольное задание №2. Получить сднф, скнф, используя таблицу истинности. Построить днф, кнф, упростив выражение.
((х у) (х z))y
Методические указания
Всякая логическая функция n переменных может быть задана таблицей, в левой части которой перечислены все 2ⁿ наборов значений переменных (т.е. двоичных векторов длины n), а в правой части - значения функции на этих наборах. В этой таблице (таблица истинности) наборы расположены в лексикографическом порядке, который совпадает с порядком возрастания значений наборов, рассматриваемых как двоичные числа.
Характеристическое множество логической переменной функции – это множество М1 двоичных наборов, на котором функция принимает значение 1. Логическая функция может быть задана с помощью своего характеристического множества М1 или с помощью множества М0 наборов, на котором она равна 0.
В табл. 2 приведены все булевы функции fi (х1, х2) от двух аргументов. В левом столбце показаны их выражения в терминах нескольких функций, принятых за основные, а в следующих столбцах значения, принимаемые данными функциями на каждом из четырех наборов значений аргументов х1 и х2 (приведенных в верхней части таблицы).
Таблица 2
Булевы функции от двух аргументов
-
х1
0
0
1
1
х2
0
1
0
1
f0 = 0– константа 0
0
0
0
0
f1 = х1 х2– конъюнкция
0
0
0
1
f2– отрицание импликации
0
0
1
0
f3 = х1
0
0
1
1
f4– отрицание обратной импликации
0
1
0
0
f5 = х2
0
1
0
1
f6 = х1 х2– сложение по модулю 2
0
1
1
0
f7 = х1 х2- дизъюнкция
0
1
1
1
f8 = х1 х2– стрелка Пирса
1
0
0
0
f9 = х1 х2– эквиваленция
1
0
0
1
f10 =х2
1
0
1
0
f11 = х2 х1– обратная импликация
1
0
1
1
f12 =х1
1
1
0
0
f13 = х1 х2– импликация
1
1
0
1
f14 = х1 х2– штрих Шеффера
1
1
1
0
f15 = 1 – константа 1
1
1
1
1
Для установления порядка выполнения операций в формулах используются скобки. При отсутствии скобок порядок устанавливается согласно приоритетам операций. Первым приоритетом обладает операция отрицания, затем выполняется . Третьим приоритетом обладают операции и , четвертым приоритетом – операции ~ и . Для упрощения написания формул иногда символ конъюнкции опускается.
Все операции алгебры логики можно выразить через булевы операции. Справедливость формул (1)-(3) можно доказать простой подстановкой значений из табл. 2:
х у = xy x y; (1)
х ~ у =xy x y; (2)
х у =x y. (3)
Всякая дизъюнкция элементарных конъюнкций называется дизъюнктивной нормальной формой (ДНФ).
Всякая конъюнкция элементарных дизъюнкция называется конъюнктивной нормальной формой (КНФ).
Любую логическую функцию, не равную тождественно единице, можно представить в ДНФ. Любую логическую функцию, не равную тождественно нулю, можно представить в КНФ.
Дизъюнктивная нормальная форма логической функции называется совершенной (СДНФ), если все её составляющие есть конституенты единицы.
Всякую, не равную тождественно нулю, логическую функцию можно представить в виде СДНФ.
Конъюнктивная нормальная форма называется совершенной (СКНФ), если все её составляющие есть конституенты нуля.
Всякую, не равную тождественно единице, логическую функцию можно представить в виде СКНФ.
Алгоритм построения СДНФ по таблице истинности функции состоит из трех шагов.
В таблице истинности выбираются наборы, на которых функция принимает значение 1 (единицы).
Для наборов, выбранных на первом шаге, составляются конституенты единицы, в которые переменная входит с инверсией, если в соответствующем наборе она принимает значение 0 (ноль), и без инверсии, если в соответствующем наборе она принимает значение 1 (единицы).
Составляется дизъюнкция построенных на втором шаге конституент единицы.
Алгоритм построения СКНФ по таблице истинности логической функции содержит три шага.
В таблице истинности функции выбираются наборы, на которых функция принимает значение 0 (нуля).
Для этих наборов составляются конституенты нуля, в которые переменная входит с инверсией, если в наборе она принимает значение единицы, и без инверсии, если в наборе она принимает значение нуля.
Составляется конъюнкция построенных на предыдущем шаге конституент нуля.
Приведение формулы к ДНФ сводится к раскрытию скобок в соответствии с первым дистрибутивным законом в булевой формуле функции, содержащей знаки инверсии на самих переменных, с последующим исключением тождественных нулей и объединением равных членов.
Приведение формулы к КНФ сводится к раскрытию скобок в соответствии со вторым дистрибутивным законом в булевой формуле, содержащей знаки инверсии на самих переменных, с последующим исключение тождественных единиц и объединением равных членов.
Решение.
Построим истинностную таблицу сложного высказывания, заданного формулой S = ((х у) (х z))
Очевидно, истинностная таблица будет содержать строк.Построим таблицу (табл. 3).
Таблица 3
Истинностная таблица
-
x
y
z
х у
х z
((х у) (х z))
S
0
0
0
1
1
0
1
1
0
0
1
1
1
1
1
1
0
1
0
0
1
0
1
0
0
1
1
0
1
1
1
0
1
0
0
1
0
1
1
1
1
0
1
1
0
0
0
0
1
1
0
0
1
1
1
0
1
1
1
0
1
0
1
0
Согласно алгоритмам построения СДНФ и СКНФ по таблице истинности получим следующие результаты
СДНФ =
СКНФ =
Пользуясь формулами (1) и (3), построим булево выражение, эквивалентное формуле ((х у) (х z))y и найдем ДНФ и КНФ
((х у) (х z))y = (x y xz x z)y = (x y z)y =xy yz,
откуда ДНФ = xy yz, КНФ = (x z)y .