Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
100
Добавлен:
12.03.2015
Размер:
2.99 Mб
Скачать

§17 Геометрическое представление булевых функций.

f: A→B

ψ ψ

x→y = f(x).

A – область значений аргумента

B – область значений функции

Задавая функции в таблицах истинности, строим функцию по заранее известным значениям простейших функций.

Задавая дискретно значения аргументов, мы получаем четное или дискретное значение функции.

x1

x2

...

xn

f(x1,...,xn)

0

0

...

0

1(0)

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

1

1

...

1

1(0)

f

А В

Для наглядности будем строить функцию для 3 аргументов.

Договоримся, чтобы каждая вершина определяла x1&x2&x3, но для простоты будем указывать x1x2x3. если , то пишем, если, то указываем.

Каждой точке будет соответствовать значение функции. Иногда в вершинах указываем значение функции 1 или 0.

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

Если необходимо отметить вершины, грани и ребра по рангам, то можно отметить. Каждой вершине соответствует конъюнкция 3 ранга – участвует 3 переменных, ребра – конъюнкция 2 ранга – 2 переменных, грани – конъюнкция 1 ранга или сами переменные.

Более того говорят, что конъюнкции меньшего ранга покрывают конъюнкции большего ранга по следующему правилу:

По сути дела мы занимаемся 1 склеиванием ребер, правило склеивания используется во всех методах минимизации.

Выделение 2 области задания функции:

Это множество вершин T1↔{1}, где функция принимает истинное значение и множество вершин T0↔{0}, где функция принимает ложное значение.

T↔T1UT2 – множество всех вершин единичного куба.

например:

–конкретное множество вершин, где функция принимает истинное значение, а остальные вершины очевидно – ложные.

.

Вывод:

Обобщая геометрическое изображение геометрических булевых функций, где n>3, можем сказать следующее для булевых функций необходимо построить единичный n-мерный куб, к вершинам n-мерного куба будут соответствовать вершины n-го ранга, ребрам конъюнкции (n-1)-го ранга, граням (n-2)-го ранга.

§18 Методы минимизации булевых функций.

1. Метод неопределенных коэффициентов.

Для простоты рассмотрим этот метод для 3-х переменных.

индекс означает номер коэффициента, а верхний означает какое значение принимает переменная, возможно 2 вида записи:

1.

2.

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

Для записи функции необходимо знать значение коэффициента .

Порядок определения коэффициента следующие:

1. необходимо указать значение аргумента, у которого функция принимает единичные значения или нулевые для этого нужно записать систему уравнений, правая часть которой есть значение функций, а левая часть коэффициенты всевозможных элементарных конъюнкций, полученных из конъюнкций n-го ранга при данном значении функций. Количество уравнений равно 2n. При совместном решении 2n уравнений на 1 шаге вычеркиваются коэффициенты построчно, соответствующему 0-му значению функции.

2. на втором шаге в оставшихся строчках вычеркиваются одноименные коэффициенты, вычеркнутые на 1 шаге.

3. среди оставшихся коэффициентов не вычеркнутых строк выбираются коэффициенты соответствующие конъюнкции наименьшего ранга.

Полученные коэффициенты из всей системы соединяются знаком дизъюнкции (V) и для каждого коэффициента расписана соответствующая элементарная конъюнкция, окончательно составленное выражение из элементарной дизъюнкции и есть МДНФ.

Пример:

разбиваем строчную запись на систему уравнений.

f(x1,x2,x3) т.к. коэффициент фактически обозначает значение переменных, то

f(1,1,1) при записи элементарной конъюнкции переменных можно

f(0,1,1) опустить.

значение функций на кубике

, если все xi принимают значение И.

Выбираем коэффициент меньшего ранга