Алгоритм извлечения (Рота)
Метод Рота ориентируется на задание логической функции в форме произвольного кубического покрытия, что позволяет упростить процесс подготовки выражения для минимизации. Достоинство алгоритма Рота – полная формализация действий на всех этапах минимизации функции.
Специальные логические операции алгоритма Рота: *, ∩ , #
Реализация алгоритма извлечения осуществляется на основе специальных логических операций, которые позволяют полностью формализовать процесс получения минимальной формы.
Операция умножения кубов (*).Операцияумножения кубов а=а1а2...аn и b=b1b2...bn обозначается как с=а*b и служит для образования r-куба, противоположные (r-1) грани которого содержатся в кубах а и b. Предварительные координаты куба c определяются в соответствии с таблицей, приведенной ниже.
* | х | ||||
Y | |||||
| у | ||||
x | х |
î ______________Ú_________________þ
bi
Окончательно координаты куба формируются:
m(a1*b1)m(a2*b2) ... m(an*bn), если ai*bi=y только для одного i,
a*b=
Æ, если ai*bi=y для i ³ 2,
где m(ai*bi) – окончательная i-я координата куба с; m(0)=0; m(1)=1; m(x)=x;
y – условное обозначение того, что координаты ai и bi противоположны.
Эта операция соответствует операции склеивания: образуется новый r-куб, если кодовое расстояние двух исходных кубов равно 1.
Рассмотрим некоторые примеры, графическая интерпретация которых приведена на рис. 26.
1) 011 2) 11х
*001*01х
0y1 Þ 0x1– ребро покрывает две вершины у1х Þ х1х – грань
3) 0х1 4) х1х
*1х0 *011
уху Þ Æ – две координаты имеют значение у. 011
Операция пересечения кубов (∩).Операция пересечения кубов а=а1а2...аn и b=b1b2...bn обозначается как с=а∩b и служит для выделения куба с=с1с2...сn , являющегося общей частью кубов а и b. Координаты с1с2...сn определяются согласно следующей таблице.
∩ | x | ||||
Æ | |||||
| Æ | ||||
x | x |
î______________Ú_________________þ
bi
m(a1∩b1)m(a2∩b2) ... m(an∩bn,),
a∩b=
Æ, если существует такое i, для которого ai ∩ bi =Æ,
где m(ai*bi) – окончательная i-я координата куба с; m(0)=0; m(1)=1; m(x)=x.
Рассмотрим примеры и их графическую интерпретацию (рис. 27).
1) Ç100 2) Ç1х0
00110х
Æ0Æ Þ Æ общей части у 100 Þ 100 общая часть
кубов нет кубов (рёбер) - вершина
3) Çх1х 4) Ç0хх
0хх 0х0
01х Þ 01х общая часть – ребро 0х0 ( совпадает с
операцией *)
Операция вычитания кубов (#).Операция вычитания из куба а=а1а2...аn куба b=b1b2...bn обозначается как с=а#b и служит для удаления из куба а общей части кубов а и b.
Координаты куба с формируются согласно следующей таблице.
# | x | ||||
z | y | z | |||
| y | z | z | ||
x | z |
î ______________Ú_________________þ
bi
Æ, если для любого i аi#bi=z,
c=а#b= a, если существует такое i, что аi#bi=y,
U а1а2...аi-1 ai аi+1 ... аn, если ai равно 0 или 1 для одного или
i=1 нескольких i,
где z означает, что координаты совпадают, а y, как для операции *, означает, что координаты ai и bi противоположны.
По этим ai-координатам производится объединение (U) кубов, получаемых в результате замены в кубе а символа х на соответствующее значение (0,1) координаты ai. Рассмотрим примеры выполнения операции # и их графическую интерпретацию (рис. 28).
1) #х1х 2) # х1x
x11110
zz0 Þ x10 0z1 Þ 01x
3) #хx1 4) #х11 x11
x10 xx1
z0y Þ xx1 zzz Þ Æ
5) # 0ххx
хх01
zz10 Þ 0x1x
0xx0
Далее рассмотрим алгоритм извлечения (Рота) на примере минимизации булевой функции, заданной покрытием С0 (рис.29).
Рис. 29. Геометрическое задание исходного покрытия
Исходное покрытие С0 задано объединением множеств кубов L и N. Кубы комплекса N − это наборы, на которых функция не определена и которые включаются в покрытие ради возможного дополнительного упрощения комплекса L в процессе минимизации. Минимальное покрытие комплексов L и N, С min называется К-покрытием L.
Общий алгоритм построения минимального К-покрытия называется алгоритмом извлечения и состоит в следующем:
▪ нахождении множества Z простых импликант комплекса К;
▪ выделении L-экстремалей на множестве Z;
▪ применении алгоритма ветвления при отсутствии L-экстремалей;
▪ нахождении абсолютно минимального покрытия из некоторого множества избыточных покрытий.
Дата добавления: 2022-02-05; просмотров: 456;