ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 04.08.2024

Просмотров: 1731

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

СОДЕРЖАНИЕ

Содержание

1. Теория множеств

1.1. Основные определения

1.2. Операции над множествами

1.3. Системы множеств

1.4. Декартово произведение множеств

1.5. Бинарные отношения

1.5.1. Определение бинарного отношения

1.5.2. Способы задания бинарного отношения

1.5.3. Свойства бинарных отношений

1.5.4. Отношения эквивалентности

1.7. Контрольные вопросы и упражнения

2. Математическая логика

2.1.Алгебра логики

2.1.1. Логические высказывания

2.1.2. Основные логические операции

2.1.3. Формулы алгебры логики

2.1.4. Логические функции

Функции одной переменной

Функции двух переменных

2.2. Булева алгебра

2.2.1. Булевы функции и операции

Свойства булевых операций

2.2.2. Совершенные дизъюнктивная и конъюнктивная нормальные формы

2.3. Полные системы логических функций

Класс функций, сохраняющих ноль

Класс функций, сохраняющих единицу

Класс самодвойственных функций

Класс монотонных функций

Класс линейных функций

2.4. Задача минимизации днф

2.4.1. Основные определения

2.4.2. Этапы минимизации днф

2.4.3. Минимизация днф методом Квайна

2.5. Синтез логических схем

2.6. Контрольные вопросы и упражнения

3. Теория графов

3.1. Основные определения

3.1.1. Общие понятия

3.1.2. Ориентированные и неориентированные графы

3.1.3. Маршруты в графах

3.1.4. Частичные графы и подграфы

3.1.5. Связность в графах

3.1.6. Изоморфизм. Плоские графы

3.2. Отношения на множествах и графы

3.3. Матрицы смежности и инциденций графа

3.4. Операции над графами

3.4.1. Сумма графов

3.4.2. Пересечение графов

3.5. Степени графов

3.5.1. Степени неориентированных графов

3.5.2. Степени ориентированных графов

3.6. Характеристики графов

3.6.1. Характеристики расстояний в графах

3.6.2. Характеристические числа графов

3.7. Циклы и разрезы графа

3.7.1. Остов и кодерево

3.7.2 . Базисные циклы и разрезающие множества

Свойства базисных циклов и разрежающих множеств

3.7.3. Цикломатическая матрица и матрица разрезов

Составление цикломатической матрицы

Составление матрицы разрезов

3.8. Задача определения путей в графах

3.8.1. Определение путей в графе

3.8.2. Алгоритм определения кратчайших путей

Алгоритм Дейкстры

Первая итерация

Вторая итерация

Третья итерация

3.9. Обход графа

3.9.1. Эйлеровы маршруты

3.9.2. Гамильтоновы маршруты

3.10. Контрольные вопросы и упражнения

Список литературы

То есть, импликант Ul обращается в единицу на тех же набо­рах, что и дизъ­юнкция ядерных импликантов: не входит ни в одну из тупиковых ДНФ функции f(x1, ..., xn).

Возвращаясь к примеру 2, отметим, что:

Импликант х1х4удов­летворяет следствию из теоремы 8:

х1х4 х2х4  х1 х2  1

и по­этому не входит ни в одну тупиковую форму.

Импликант х2х3х4, для которого

х2х3х4х2х4х1х2≢1 не удовлетворяет следствию.

Импликантх1х3х4, для которого

х1х3х4х2х4 х1 х2 ≢1, не удовлетворяет следствию.

Импликантх1х2х3, для которого

х1х2 х3х2х4  х1 х2 ≢ 1, не удовлетворяет следствию.

Таким образом, последовательность действий при выполнении второго этапа состоит в следующем:

  1. для каждого простого импликанта сокращённой ДНФ про­верить, входит он в ядро или нет. Отметить неядерные импликанты;

  2. проверить для отмеченных импликантов выполне­ние следствия из теоремы 8. Простые импликанты, для которых выпол­нено следствие, удалить из сокращённой ДНФ;

  3. проверить возможность удаления оставшихся отмечен­ных конъюнкций. Из полученных тупиковых ДНФ выбрать минималь­ную ДНФ.

Рассмотрим эту последовательность действий на примере 2.

  1. нашли ядро функции f(х1, х2, х3, х4), состоящее из простых импликантов х2х4 и х1 х2. Отметим курсивом в сокращённой ДНФ неядерные импликанты:

х2х4х1х4  х1 х2х2 х3 х4 х1 х3 х4 х1х2 х3;

  1. среди помеченных импликантов нашли удовлет­воряющий следствию из теоремы 8. Это импликант х1х4. Удалим его из со­кращённой ДНФ:

х2х4  х1 х2х2 х3 х4 х1 х3 х4 х1х2 х3;

  1. для получения тупиковых ДНФ удаляем подмно­жества от­меченных импликантов. Можно удалить следующие подмножества:


2 х3 х4,х1 х3 х4,х1х2 х3}I, { х2 х3 х4,х1 х3 х4}II, { х2 х3 х4, х1х2 х3}III, {х1 х3 х4,х1х2 х3}IV, {x2 x3 x4 }V, {х1 х3 х4}VI, {х1х2 х3} VII.

При каждом удалении нужно проверять, представляет ли оставшаяся ДНФ функцию f(х1, х2, х3, х4).

Если удалить подмножество I, то получим ДНФ, не представ­ляющую функциюf(х1, х2, х3, х4), так как на наборе {0,1,1,1} функ­ция:

f (х1, х2, х3, х4) = 1, а х2х4  х1х2 = 0.

Если удалить подмножество II, то получим ДНФ, не представ­ляющую функциюf(х1, х2, х3, х4), так как на наборе {0,1,1,1} функ­ция

f(х1, х2, х3, х4) = 1, а х2х4  х1 х2  х1х2 х3 = 0.

Если удалить подмножество III, получим минимальную ДНФ функции f(x1, x2, х3, х4):

х2х4х1х2х1х3х4– минимальная ДНФ.


2.4.3. Минимизация днф методом Квайна

Существуют и другие методы, позволяющие независимо от ис­ходной формы представления функции найти все ее тупиковые формы и выбрать из них минимальную. Одним из них является ме­тод Квайна. В соответствии с этим методом отыскание минимальной ДНФ проводится в несколько этапов.

Первый этап. Функция, заданная в виде логической формулы произвольной формы, представляется в СДНФ. При этом:

  1. последовательным применением эквивалентных преобразо­ваний логическая функция приводится к ДНФ, то есть к форме, не содержащей знаков отрицания над функциями, более сложными, чем один из аргументов;

  2. каждый член ДНФ, представляющий собой конъюнкцию ме­нее n членов (n – количество аргументов функции), развер­тывается в дизъюнкцию нескольких элементарных конъюнкций умножением на выражение вида (х1х1) • (х2х2)•…, тождественно равное едини­це;

  3. приводятся, если возможно, подобные члены.

Второй этап. Отыскиваются все простые импликанты данной функции. Для этого выписываются все элементарные конъюнкции, входящие в СДНФ. Каждая из пар этих конъюнкций исследуется на возможность склеивания. Члены, участвовавшие хотя бы в одном склеивании, отмечаются, но не исключаются из дальнейших сравне­ний.

В результате выявляются группы конъюнкций, содержа­щие по (n- 1) члену. С этой группой конъюнкций проводится та же процедура, после которой получим группы конъюнкций, содержа­щие по (n- 2) членов и так далее, пока не останется ни одного члена, допускающего склеивания с каким либо другим членом.

Добавление к исходной ДНФ любого количества «склеенных» членов не изменяет вида функции. Последующее исключение всех членов, отмеченных в процессе склеивания, тоже не изменяет функ­цию, так как они поглощаются склеенными членами. Все неотме­ченные в процессе преобразований члены представляют собой про­стые импликанты, а их дизъюнкция эквивалентна исходной функ­ции.

Третий этап. Дизъюнкция всех простых импликантов может оказаться избыточной формой представления функции. Поэтому исследуется возможность удаления некоторых из них. Для этого составляется импликантная таблица, строки которой обозначают­ся выявленными на втором этапе простыми импликантами, а столб­цы –элементарными конъюнкциями, входящими в СДНФ.


Любая клетка этой таблицы отмечается, если простой импликант, записанный в соответствующей строке, является составной частью элементарной конъюнкции, записанной в соответствующем столбце. Иначе говоря, данный простой импликант покрывает нашу функцию на наборе, соответствующем элементарной конъюнкции, записанной в столбце.

В каждом столбце при этом может оказаться несколько отме­ченных клеток. Задача упрощения ДНФ сводится к вычеркиванию из таблицы максимального количества строк таким образом, чтобы заданная функция на всех наборах, обращающих ее в единицу, ока­залась покрытой хотя бы одним простым импликантом.

Эту задачу можно выполнить в следующей последовательно­сти:

  1. выявляются столбцы, содержащие только одну помеченную клетку. Простые импликанты, соответствующие этим клеткам, запи­сываются в окончательное выражение для ДНФ как обязательные члены. После этого в таблице вычерки­ваются строки, соответст­вующие обязательным простым ипликантам и столбцы, содержащие отмеченные клетки в вычеркнутых строках. Вычеркивание столбцов возможно потому, что соответствующие им элементарные конъ­юнкции уже покрыты обязательными простыми импликантами, и поэтому их можно исключить из дальнейшего рассмотрения;

  2. если после этого в таблице окажутся такие пары столбцов, что всем отмеченным клеткам второго столбца соответствуют в тех же строках отмеченные клетки первого столбца, а возможно, и неко­торые другие отмеченные клетки, то первый столбец вычеркивается. Это возможно потому, что какую бы совокупность простых импликантов, покрывающую элементарную конъюнкцию, которая соот­ветствует второму столбцу мы ни подобрали, этой совокупностью автоматически будет покрываться и конъюнкция, соответствующая первому столбцу;

  3. строки, не содержащие после выполнения п.п. 1 и 2 ни од­ной отмеченной клетки, также вычеркиваются. Это возможно потому, что все конъюнкции, которые могут быть покрыты данным про­стым импликантом, уже покрыты другими простыми импликантами, которые должны войти в окончательное выражение для ДНФ;

  4. в сокращенной таблице выявляется пара строк, содержащая хотя бы по одной отмеченной клетке в каждом столбце. Простые импликанты, соответствующие этим строкам, добавляются к ДНФ;

  5. если оказывается несколько вариантов выполнения п. 4, то все они сравниваются, и выбирается простейший вариант.


Пример.Минимизировать функцию:

f(х1, х2, х3, х4) = х1 х2 х4  х2 х3 х4 х1х2 х3 х1х2х4.

В результате развертывания элементар­ных конъюнкций получим:

Таблица 2.7. Импликантная таблица

х1х2 х3 х4

х1х2х3 х4

х1 х2 х3 х4

х1х2 х3 х4

х1х2 х3х4

х1х2х3х4

х1 х2 х4

Х

Х

х2 х3 х4

Х

Х

х1 х3 х4

Х

Х

х1х2 х3

Х

Х

х1х2х4

Х

Х