Минимизация логических функций, заданных в базисе
Метод неопределенных коэфициентов применим для минимизации функций, заданных в различных базисах. Пусть функция
1)
2)
3)
Минимизация при этом усложняется, так как ее основными критериями являются минимальные ранги каждого терма и их минимальное количество, при этом в ходе минимизации в базисе
Количество коэффициентов, остающихся в нулевых строках должно быть четным, а в единичных – нечетным. Лучше всего рассматривать единичные строки и оставлять те коэффициенты минимального ранга, которые чаще всего повторяются в этих строках. В общем случае для получения минимальной формы выполняют следующие действия:
1) Подсчитывают, сколько раз в единичных строках встречаются термы первого ранга и оставляют из них те, которые встречаются максимальное число раз.
2) Находят нулевые строки, в которых встречаются оставленные в первом шаге термы и их не обнуляют.
3) Рассматривая нулевую строку, в которой остался одни единичные термы и находят в ней еще единичный терм, встречающийся максимальное число раз в единичных строках, в которых еще не было оставлено ни одного терма и.т.д.
Метод Квайна-Мак-Класки может быть применим при минимизации этого базиса, при этом кроме эффективных значений функции, где
Не полностью определенные ФАЛ (1.6)
Определение:не полностью определенные ФАЛ от n переменных называется функции, заданные на множестве наборов меньше чем
Если количество неопределенных наборов равно m то путем различных доопределений можно получить
Пример: доопределить функцию
Где символ * означает "может быть".
Доопределим *=0
1)
Доопределим *=1
2)
Если доопределять *=0 или *=1 то получим минимальный вариант:
3)
Пример показывает, что доопределение функции существенно влияет на конечный результат минимизации. При доопределении
Пример: найти минимальную форму для
Составим таблицу истинности:
| | | | |
0 | 0 | 0 | 0 | 1 |
0 | 0 | 0 | 1 | * |
0 | 0 | 1 | 0 | * |
0 | 0 | 1 | 1 | 0 |
0 | 1 | 0 | 0 | * |
0 | 1 | 0 | 1 | 0 |
0 | 1 | 1 | 0 | 1 |
0 | 1 | 1 | 1 | * |
1 | 0 | 0 | 0 | * |
1 | 0 | 0 | 1 | 1 |
1 | 0 | 1 | 0 | 0 |
1 | 0 | 1 | 1 | * |
1 | 1 | 0 | 0 | 0 |
1 | 1 | 0 | 1 | * |
1 | 1 | 1 | 0 | 1 |
1 | 1 | 1 | 1 | * |
1)доопрделим *=1 и получим минимальный вид функции
Доопрделим *=0
Оптимальное доопрделение функций соответствующее минимальному покрытию может быть найдено по методу Квайна.
| | | |
| V | ||
| V | V | |
| V | V | |
| V |
В результате получится минимальный вид функции вида:
Временные булевы функции. (1.7)
Определение: Временная булева функция – логическая функция вида
Утверждение: число различных временных булевых функций равно
Доказательство: если функция времени принимает n значений
Любая временная булева функция может быть представлена в виде
Где
Пример:
| | | |
0 | 0 | 0 | 0 |
0 | 1 | 0 | 0 |
1 | 0 | 0 | 1 |
1 | 1 | 0 | 0 |
0 | 0 | 1 | 0 |
0 | 1 | 1 | 1 |
1 | 0 | 1 | 1 |
1 | 1 | 1 | 0 |
0 | 0 | 2 | 0 |
0 | 1 | 2 | 0 |
1 | 0 | 2 | 1 |
1 | 1 | 2 | 1 |