- •Практическое занятие №11 Тема: Минимизация булевых функций методом Квайна.
- •Теоретическая часть
- •1. Нахождение первичных импликант.
- •2. Расстановка меток ().
- •3. Нахождение существенных импликант.
- •Практическое занятие №12 Тема: Минимизация булевых функций методом Мак-Класки.
- •Теоретическая часть
- •Контрольные вопросы
- •Индивидуальные задания
- •Практическое занятие №13 Тема: Минимизация булевой функции методом Карно-Вейча.
- •Теоретическая часть
- •Диаграмма Карно-Вейча для 7-и переменных
- •Контрольные вопросы
- •Методические указания
- •Индивидуальные задания
- •Практическое занятие №14 Тема: Геометрический метод нахождения минимальной днф и кнф.
- •Теоретическая часть Геометрическое представление функций алгебры логики
- •Тупиковость на основе геометрических представлений
- •Методические указания
- •Контрольные вопросы
- •Индивидуальные задания
Диаграмма Карно-Вейча для 7-и переменных
Контрольные вопросы
1. Изобразите карты Карно для 2-7 переменных.
2. В чем преимущество этого метода перед другими, ранее изученными?
3. Назовите правила минимизации метода Карно-Вейча.
Методические указания
Метод получения минимальных форм с помощью карт Карно объясняется на примерах.
Пример 1:Найти минимальные ДНФ и КНФ функции f(a,b,c) методом Карно-Вейча.
f(a,b,c)=abcabcabcabcabc
Объединить единицы можно двумя способами:
а)
|
b |
b | ||
a |
1 |
1 |
1 |
0 |
a |
0 |
0 |
1 |
1 |
|
c |
c |
c |
б)
|
b |
b | ||
a |
1 |
1 |
1 |
0 |
a |
0 |
0 |
1 |
1 |
|
c |
c |
c |
Этим вариантам соответствуют две минимальных ДНФ:
а) f(a,b,c,d)=abacab;
б) f(a,b,c,d)=abbc ab.
Для получения минимальной КНФ следует объединить нули функции:
|
b |
b | ||
a |
1 |
1 |
1 |
0 |
a |
0 |
0 |
1 |
1 |
|
c |
c |
c |
f(a,b,c)=(a b)( abc)
Пример 2: Найти минимальную ДНФ булевой функции:
f(a,b,c,d)=abcdabcdadcdabcdabcdabcdabcd.
Карта Карно для этой функции приведена ниже. На ней показан способ наиболее рационального покрытия единиц.
|
b |
b |
| ||
a |
1 |
0 |
0 |
0 |
c |
1 |
0 |
0 |
1 |
c | |
a |
1 |
0 |
1 |
1 | |
0 |
1 |
0 |
0 |
c | |
|
d |
d |
d |
|
Минимальная ДНФ этой функции будет иметь вид:
f(a,b,c,d)=cdabd abcabcd.
Индивидуальные задания
8.1 С помощью карт Карно найдите МДНФ и МКНФ булевой функции:
f(a,b,c,d)=ab (cd a
f(a,b,c,d)=dcbac
f(a,b,c,d)=adc a b
f(a,b,c,d)=dba c ab
f(a,b,c,d)=bac d
f(a,b,c,d)=ad bac
f(a,b,c,d)=dbadcb
f(a,b,c,d)=acbdba
f(a,b,c,d)=bdcada
f(a,b,c,d)=bcdabc
f(a,b,c,d)=bcadbd
f(a,b,c,d)=cbadcb
f(a,b,c,d)=dbca
f(a,b,c,d)=dcdba
f(a,b,c,d)=dbaca
f(a,b,c,d)=dbdbac
f(a,b,c,d)=cbdbdac
f(a,b,c,d)=cbdab
f(a,b,c,d)=adaddcb
f(a,b,c,d)=ccaddcb;
f(a,b,c,d)=acbdba
f(a,b,c,d)=bdcada
f(a,b,c,d)=bcdabc
f(a,b,c,d)=bcadbd
f(a,b,c,d)=cbadcb
f(a,b,c,d)=dbadcb
f(a,b,c,d)=acbdba
f(a,b,c,d)=bdcada
f(a,b,c,d)=bcdabc
f(a,b,c,d)=bcadbd.
Практическое занятие №14 Тема: Геометрический метод нахождения минимальной днф и кнф.
Цель работы: овладение минимизацией булевых функций методом Блейка-Порецкого и геометрическим методом.
Теоретическая часть Геометрическое представление функций алгебры логики
Многие преобразования, выполняемые над булевыми функциями, удобно интерпретируются с геометрическим представлением функций. Функцию двух переменных можно интерпретировать как некоторую плоскость, заданную в системе координат X1X2.
На каждой оси откладываются единичные отрезки X1X2 и получаем квадрат, вершины которого соответствуют комбинациям переменных. Это и будет геометрическое представление функций 2-х переменных (рис.1).
Рис.1.
Из такого геометрического представления функций двух переменных следует: две вершины, принадлежащие одному и тому же ребру, называются соседними и они «склеиваются» по переменной, меняющейся вдоль этого ребра
.
Для функций 3-х переменных геометрическое представление интерпретируется в виде куба (рис.2.), вершины которого обозначают десятичными цифрами, двоичными цифрами и переменными Х. Ребра куба поглощают вершины, грани поглощают свои ребра и, следовательно, вершины.
В общем случае совокупность векторов отображается на множество вершин n-мерного куба. Все такие вершины образуют логическое пространство.
Булева функция отображается на n-мерном кубе путем выделения вершин, соответствующих векторам, на которых функцияпринимает значения «1». Такие значения отмечаются точками.
Рис.2.
В геометрическом смысле каждый набор , т.е. каждая вершина, может рассматриваться как n-мерный вектор, определяющий точку n-мерного пространства. Поэтому все множество наборов, на которых определена функция n переменных, представляется в виде вершин n-мерного куба.
Рис.3.
Координаты вершин куба должны быть указаны в порядке, соответствующему порядку перечисления переменных в записи функций. Геометрическое представление может использоваться при разработке методов минимизации с применением минимизирующих карт.
Функция 4-х переменных геометрически представляется в виде 4-мерного куба (рис.3).
Функция 5-ти переменных представляется в виде 5-мерного куба (рис 4).и т.д
Рис. 4
Формулировка геометрической задачи (задачи о покрытии):необходимо найти для данного множества N такое покрытие гранями, принадлежащими Nf,
, чтобы ранг был наименьшим.
Эта задача эквивалентна задаче о минимизации булевой функции.
Следовательно, задача минимизации булевых функций имеет две постановки:
в аналитической форме;
в геометрической форме (задача о покрытии).
Употребляются два языка: аналитический и геометрический.