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

Дискретка_Экзамен_Ответы / булевы / 5 скобочная минимизация булевых функций

.docx
Скачиваний:
80
Добавлен:
11.03.2015
Размер:
36.08 Кб
Скачать

5.6.3. Скобочная минимизация булевых функций

Скобочная минимизация булевых функций (факторизация) в ряде случаев позволяет получить скобочную форму, значительно более простую, чем минимальная ДНФ. Процесс факторизации заключается в многократном выполнении операции вынесения за скобки общих членов. Работу факторного алгоритма рассмотрим на примере.

Пусть минимальная ДНФ функции f имеет вид:

Обозначим каждую элементарную конъюнкцию буквами А, В, С, D. Тогда функцию f можно представить множеством: F = (A, B, C, D).

На первом этапе работы алгоритма ищутся все попарные пересечения элементов множества F. B нашем случае имеем:

AB=x1; AC=; AD=;

BC=x1; BD=x1x5; CD=.

Выбирается та пара элементов множества F, пересечение которых дает конъюнкцию наибольшей длины. Для рассматриваемого примера выберем либо пару (А, С), либо (А, D), либо (C, D), что с точки зрения результатов работы алгоритма безразлично. Выберем пару (C, D) и запишем функцию f аналитически, вынося общий элемент за скобки по отношению к C и D. Получим:

Обозначим A1=; B1=; C1=.

Получим F1=(A1, B1, C1).

На втором этапе алгоритма ищутся все попарные пересечения элементов множества F1. В нашем случае имеем:

A1B1=x1; A1C1=; B1C1=x1.

Вновь выбирается пара элементов множества F1, пересечение которых дает конъюнкцию наибольшей длины. Выберем пару (A1, C1) и запишем функцию f аналитически, вынося общий элемент за скобки по отношению к A1 и C1. Получим:

.

Обозначив А2=, В2=, получим множест-во F2=(A2, B2). Ищем пересечение элементов множества F2. Получаем A2B2=x1. Окончательно имеем:

.