
- •Содержание:
- •Диаграммы Венна.
- •Операции над множествами.
- •Свойства теоретико-множественных операций.
- •Представление множеств в эвм
- •Реализация операций над подмножествами заданного универсума в эвм.
- •Многоместные отношения. Композиция отношений. Степень и ядро отношений.
- •Свойства отношений.
- •Представление отношений в эвм.
- •Минимальные элементы. Теорема о существовании минимального элемента.
- •Алгоритм топологической сортировки
- •Операции над бинарными отношениями.
- •Тема 4. Замыкание отношений. Транзитивное замыкание, рефлексивное замыкание. Алгоритм Уоршалла вычисления транзитивного замыкания. Замыкание отношений.
- •Транзитивное замыкание отношений
- •Рефлексивное замыкание отношений
- •Алгоритм Уоршалла.
- •Представление функций в эвм.
- •Операции
- •Свойства бинарных операций:
- •Способы задания операций.
- •Тема 6. Алгебраическая система. Гомоморфизмы. Проверка условия гомоморфизма. Изоморфизмы. Изоморфные алгебры. Изоморфизм модели. Примеры изоморфных алгебр. Алгебраическая система
- •Гомоморфизмы. Проверка условия гомоморфизма. Изоморфизмы. Изоморфные алгебры. Изоморфизм модели. Примеры изоморфных алгебр.
- •Основные характеристики нечетких множеств
- •Примеры нечетких множеств
- •Операции над нечеткими множествами
- •Графическое представление операций
- •Тема 8. Алгебраические операции над нечеткими множествами.
- •Тема 9. Основное определение графов. Смежность. Изоморфизм графов. Элементы графов. Подграфы. Валентность. Теорема Эйлера. Основное определение.
- •Смежность.
- •Изоморфизм графов.
- •Элементы графов. Подграфы. Валентность.
- •Теорема Эйлера.
- •Тема 10. Маршруты в графах. Цепи. Циклы. Расстояние между вершинами. Связность. Виды графов: тривиальные и полные графы, двудольные графы, орграфы и сети. Маршруты в графах. Цепи. Циклы.
- •Расстояние между вершинами.
- •Связность.
- •Виды графов: тривиальные и полные графы, двудольные графы, орграфы и сети.
- •Тема 11. Матрица смежности, матрица инцидентности. Операции над графами. Представление графов в эвм. Матрица смежности. Матрица инцедентности.
- •Операции над графами: Объединение графов.
- •Пересечение графов
- •Композиция графов
- •Декартово произведение графов.
- •Операция произведения графов.
- •Представление графов в эвм
- •V k1 k2
- •Теорема Форда - Фалкерсона. Алгоритм нахождения максимального потока.
- •Тема 14. Кратчайшие пути. Алгоритм Флойда. Алгоритм Дейкстры.
- •Кратчайшие пути
- •Рёбра отрицательного веса
- •Представление кратчайших путей в алгоритме
- •Алгоритм Флойда
- •Алгори́тм Де́йкстры
- •Сложность алгоритма
- •Ориентированные, упорядоченные и бинарные деревья
- •Представление в эвм свободных, ориентированных и упорядоченных деревьев.
- •Тема 16. Применение деревьев в программировании. Ассоциативная память. Выровненные деревья. Сбалансированные деревья. Минимальный каркас. Схема алгоритма построения минимального каркаса.
- •Применение деревьев в программировании. Ассоциативная память. Выровненные деревья. Сбалансированные деревья.
- •Минимальный каркас. Схема алгоритма построения минимальных каркасов.
- •Тема 17. Циклы и коциклы. Эйлеровы циклы. Гамильтоновы циклы. Теорема Дирака. Раскраска графов. Хроматическое число. Планарные графы. Укладка графов. Алгоритм раскрашивания.
- •21. Циклы и коциклы. Эйлеровы циклы. Гамильтоновы циклы. Теорема Дирака.
- •Раскраска графов. Хроматическое число. Планарность. Укладка графов. Алгоритмы раскрашивания.
- •F1(X) – нулевая функция.
- •Дизъюнктивная нормальная форма.
- •Конъюнктивная нормальная форма.
- •Тема 19. Неполностью определенные (частные) пф. Минимизация пф и неполностью определенных пф. Понятие минимизации булевых функций.
- •Метод неопределённых коэффициентов.
- •Метод карт Карно
- •Метод Петрика
- •Теорема Поста
- •Тема 22. Законы алгебры логики в офпс и их следствия. Правило выполнения совместных логических действий, правило склеивания, правило поглощения, правило развертывания.
- •Тема 23. Задача анализа и синтеза логических схем
- •Тема 24. Элементы теории алгоритмов. Цели и задачи теории алгоритмов. Формализация понятия алгоритмов: определение Колмогорова, определение Маркова
Метод Петрика
Метод Петрика используется для нахождения всех минимальных покрытий конституент единицы и позволяет получить все тупиковые ДНФ по импликантной матрице. Суть метода заключается в следующем. По импликантной матрице строится так называемое конъюнктивное представление импликантной матрицы. Для этого все простые импликанты обозначаются разными буквами (обычно прописными латинскими). После этого, для каждого i-ro столбца импликантной матрицы строится дизъюнкция всех букв, обозначающих строки матрицы, пересечение которых сi-м столбцом отмечено крестиком. Конъюнктивное представление импликантной матрицы образуется как конъюнкция построенных дизъюнкций для всех столбцов матрицы. К конъюнктивному представлению матрицы могут быть применены все соотношения булевой алгебры с целью его упрощения. После раскрытия скобок и выполнения всех возможных поглощений получается дизъюнкция конъюнкций, каждая из которых содержит все импликанты тупиковой ДНФ. Рассмотрим табл. 3, строки которой соответствуют простым импликантам функцииf, а столбцы — конъюнкциям совершенной ДНФ (СДНФ). В каждую клетку записываем единицу, если соответствующая простая импликанта поглощает элементарную конъюнкцию и нуль — в противном случае. Такая таблица называется «импликантной таблицей».
Согласно определению, каждая тупиковая ДНФ определяется таким набором строк, что в таблице, образованной этими строками в каждом столбце имеется одна единица, причём из этого набора нельзя удалить ни одной строки так, чтобы при этом ни один столбец не стал нулевым.
Таблица 3
СДНФ Сокр. ДНФ |
1000 |
1100 |
1010 |
0101 |
0011 |
1110 |
1011 |
0111 | |
P1 |
1__0 |
1 |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
P2 |
101_ |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
P3 |
_001 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
P4 |
0_11 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
P5 |
01_1 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
Пусть в общем случае в таблице имеется Nстолбцов иmстрок. Поставим в соответствие простым импликантам сокращённой ДНФ переменныеP1…Pm. Фиксируем некоторую дизъюнкцию простых импликант. Будем считать, чтоPi= 1, еслиi-я простая импликанта входит в эту дизъюнкцию иPi= 0, в противном случае. Запишем в виде формалы условие того, что рассматриваемая дизъюнкция является ДНФ функции. Для этого необходимо, чтобы в каждом столбце таблицы была хотя бы одна единица, т.е.
,
где
—
элемент матрицы (таблицы), стоящий вi-й
строке иj-м столбце,
.
Эту формулу можно трактовать как КНФ некоторой двоичной функции от переменных P1…Pm, которая принимает значение 1 только на тех наборах переменных, которые соответствуют некоторым ДНФ исходной функции, и значение 0 — на наборах, которые соответствуют наборам импликант, не являющихся ДНФ исходной функции.
Заметим, что функция
монотонна, так как формула 3 не содержит
переменных с отрицаниями. Поэтому
согласно утверждению 3 для нахождения
её сокращённой ДНФ достаточно раскрыть
скобки в формуле 3, а затем произвести
все поглощения. Наконец, остаётся
заметить, что в силу указанного выше
свойства этой функции, её простые
импликанты и только они будут давать
тупиковые ДНФ исходной функцииf.
Для
табл. 3 функция
равна:
.
Отсюда P1P3P5даёт дляfтупиковую форму:
,
а P1P2P4P5даёт:
.
Метод Петрика используется для нахождения всех минимальных покрытий конституент единицы и позволяет получить все тупиковые ДНФ по импликантной матрице. Суть метода заключается в следующем. По импликантной матрице строится так называемое конъюнктивное представление импликантной матрицы. Для этого все простые импликанты обозначаются разными буквами (обычно прописными латинскими). После этого, для каждого i-ro столбца импликантной матрицы строится дизъюнкция всех букв, обозначающих строки матрицы, пересечение которых сi-м столбцом отмечено крестиком. Конъюнктивное представление импликантной матрицы образуется как конъюнкция построенных дизъюнкций для всех столбцов матрицы. К конъюнктивному представлению матрицы могут быть применены все соотношения булевой алгебры с целью его упрощения. После раскрытия скобок и выполнения всех возможных поглощений получается дизъюнкция конъюнкций, каждая из которых содержит все импликанты тупиковой ДНФ.
Пример. Задана импликантная матрица (табл. 4.6.1). Найти методом Петрика все тупиковые ДНФ булевой функции f, описываемой данной матрицей.
Таблица 4 |
|
| ||||||
Конституенты единицы | ||||||||
Простые импликанты |
/x1/x2/x3x4 |
/x1/x2x3x4 |
/x1x2/x3x4 |
/x1x2x3x4 |
x1x2x3/x4 |
x1x2x3x4 |
| |
/x1x4 |
Х |
Х |
Х |
Х |
|
| ||
x2x3x4 |
|
|
|
Х |
|
Х | ||
x1x2x3 |
|
|
|
|
Х |
Х |
|
Имеющиеся простые импликанты обозначим буквами:
/x1x4= A. x2x3x4= B. x1x2x3= C.
Тогда конъюнктивное представление w матрицы имеет вид
w = A*A*A*(A v B)*C(B v C).
Упростим его.
w = A*(A v B)*C(B v C) = AC.
Тупиковая ДНФ содержит две простые импликанты: А = /x1x4и C = x1x2x3и имеем вид f = /x1x4v x1x2x3."
Тема 21. Пять классов переключательных функций: линейные переключательные функции; переключательные функции, сохраняющие нуль; переключательные функции, сохраняющие единицу; монотонные переключательные функции; самодвойственные переключательные функции. Теорема о функциональной полноте. Основная функционально полная система логических функций. Функционально полные системы логических функций. Примеры функционально полных базисов.
Конечное
множество булевых функций
называют
системой
булевых функций.
Систему булевых функций называют полной,
если любая
булева функция может быть выражена в
виде формулы над этой системой (другими
словами, если она представима через
функции данной системы).
Примером
полной системы является так называемый
стандартный
базис,
содержащий дизъюнкцию, коньюнкцию и
отрицание:
.
Полнота этой системы легко доказывается
тем, что любая булева функция может быть
представлена в виде ДНФ или КНФ. А
учитывая, что
и
,
полными являются даже системы
и
.
Другой
распространённой полной системой
булевых функций является базис
Жегалкина:
,
включающий исключающее или, коньюнкцию
и константу 1. Можно доказать, что любая
булева функция представима в виде так
называемого полинома
Жегалкина:
где
.
В частном случае, полином Жегалкина
имеет линейный вид:
Булева функция, представимая в виде линейного полинома Жегалкина, называется линейной.
Существует простой способ выражения любой булевой функции над базисом Жегалкина. Этот способ носит название метода неопределённых коэффициентов. Рассмотрим этот метод на примере:
Рассмотрим
функцию
.
В общем виде полином Жегалкина для этой
функции имеет вид:
Вычислим
все коэффициенты начиная с
,
последовательно подставляя в полином
известные значения функции f:
Таким образом, функция имеет вид:
и не является линейной.