20
правок
Изменения
Нет описания правки
[[Файл:Гиперкуб.PNG||right]]
Этот способ работает при количестве переменных не больше трёх (в противном необходимо вводить четвёртое или следующие за ним измерения для представления фигур).
Сначала мы рисуем куб в системе отсчёта <tex>Oxyz </tex> (названия координатных осей соответствуют названиям переменных). Затем каждую вершину обрабатываем следующим образом:*Если у нас конъюнкт, переменные в котором равны соответствующим координатам вершины (пример: вершине с координатами <tex>(0,1,1) </tex>соответствует конъюнкт <tex>(\neg X \wedge Y \wedge Z)</tex>, он равен единице при <tex>X=0, Y=1 </tex> и <tex>Z=1</tex>), то в эту вершину мы помещаем закрашенный чёрным кружок.
*В противном случае мы помещаем в вершину закрашенный белый кружок.
Далее обработка гиперкуба идёт следующим образом:
пока у нас есть незакрашенные вершины, мы выбираем грань, либо вершину, либо ребро, на которых больше всего закрашенных чёрным вершин и ещё не обработанных вершин.
*Если в данном гиперкубе есть грань, все вершины на которой закрашены чёрным, то мы можем записать её в качестве конъюнкта, где будет только переменная с неизменяющейся соответствующей ей координатой, например, грань, на которой лежат закрашенные вершины <tex>(0,1,1), (0,1,0), (1,1,0) </tex> и <tex>(1,1,1) </tex> мы можем записать как конъюнкт <tex>Y</tex>.*Теперь мы смотрим, остались ли на рёбрах куба закрашенные и не отмеченные нами в ДНФ вершины. Если — да, то рёбра с такими вершинами мы можем записать в качестве конъюнкта, где будут только переменные с неизменяющимися соответствующим им координатами, например, ребро, соединяющее закрашенные вершины (<tex>(0,1,1) </tex> и <tex>(1,1,1) </tex> мы можем записать как конъюнкт <tex>(Y \wedge Z)</tex>.*И если после такой обработки у нас остались свободные вершины, мы просто переписываем координаты каждой такой вершины в отдельный конъюнкт, равный <tex>1</tex>. Например, вершину <tex>(1,0,1) </tex> мы бы переписали как конъюнкт <tex>(X \wedge \neg Y \wedge Z)</tex>.
В итоге нашу изначальную ДНФ можно записать как <tex>(Y) \vee (X \wedge Z)</tex>.
|}
<br>
<br>
{| border="1"
|}
<br>
===Метод Квайна===