Как преобразовать выражение из SOP в POS и обратно в булеву алгебру?


9

Как преобразовать выражение суммы продуктов (SOP) в форму продукта сумм (POS) и наоборот в булевой алгебре?

например: F = xy '+ yz'


8
На самом деле это очень по теме цифровой логики. Это равносильно тому, чтобы сказать, как изменить схему, состоящую из группы ворот, питающих ворота или ворота, к одной, состоящей из группы ворот, питающей ворота и ворота.
Крис Страттон

1
Что такое СОП и ПОС?
AndrejaKo

3
СОП = сумма продуктов. POS = произведение сумм, например (x + y) (~ x + ~ y). Логическое «ИЛИ» - это сумма, а «И» - это произведение.
Eryk Sun

Это, конечно, преподается на курсах цифровой логики старшекурсников, но Тиблу прав, что это относится к математике SE. @TheLameProgrammer, посмотрите карты Карно (K maps) и теорему Деморгана.
Eryk Sun

2
... использовать законы Деморгана? Кроме того, приведенный в вопросе пример не является канонической СОП, поскольку все переменные должны присутствовать во всех терминах, верно?
Викацю

Ответы:


15

Я думаю, что самый простой способ - это конвертировать в k-карту, а затем получить POS. В вашем примере вы получили:

  \ xy
 z \  00    01    11    10
    +-----+-----+-----+-----+
 0  |     |  x  |  x  |  x  |
    +-----+-----+-----+-----+
 1  |     |     |     |  x  |
    +-----+-----+-----+-----+

В этом случае исключение левого столбца дает (x + y), а исключение двух нижних средних полей дает (z '+ y'), давая ответ (x + y) (z '+ y')


Но это должно быть F = (x + y) (y '+ z').
Eryk Sun

Ой, ты прав. Прошло много времени с тех пор, как я сделал k-карты, поэтому я прочитал это неправильно. Я исправил ответ.
FryGuy

5

F = xy '+ yz' в форме СОП

Это также может быть решено с помощью простой булевой алгебры :

Применяя закон распределения : - F = ( xy ') + y .г»

F = ( xy ' + y) . ( xy '+ z'), которая теперь преобразуется в форму POS .


4

Другой метод - просто принять комплимент заданного выражения:

As: xy '+ yz'

Принимая его комплимент:
(xy '+ yz') '

= (xy ')'. (yz ')' {Использование закона де Моргана (a + b) '= a'.b'}

= (Х '+ у) (у' + Z)

Что также является POS- формой ...!


6
Это дает POS. Но это полная противоположность данному выражению.
Нирмал Сеневиратне

2

Используйте закон Деморгана дважды.

Примените закон один раз:

F' = (xy' + yz')'
   = (xy')'(yz')'
   = (x'+y)(y'+z)
   = x'y' + x'z + yy' + yz
   = x'y' + x'z + yz

Применить снова:

F=F''
 =(x'y'+x'z+yz)'
 =(x'y')'(x'z)'(yz)'
 =(x+y)(x+z')(y'+z')
 =(x+y)(y'+z')

Проверьте ответ, используя wolframalpha.com

xy '+ yz'

(Х + у) (у '+ Z')

Изменить: Ответ может быть упрощен еще один шаг по закону консенсуса булевой алгебры


1

Если вы хотите проверить свою работу после выполнения ее вручную, вы можете использовать такую ​​программу, как Logic Friday .


1

Это в терминах минимума / суммы продуктов [SOP] и максимума / продукта сумм [POS], поэтому мы можем использовать для этого карту Карно (K map).

Для SOP мы спариваем 1 и пишем уравнение сопряжения в SOP, в то время как это можно преобразовать в POS, связав в нем 0 и записав уравнение в форме POS.

xyzx+y+z


0

См. Процедуру в Конъюнктивной нормальной форме: Преобразование из логики первого порядка .

Эта процедура охватывает более общий случай логики первого порядка, но логика высказываний является подмножеством логики первого порядка.

Упрощение, игнорируя логику первого порядка, это:

  • Устранить последствия
  • Переместить отрицания внутрь, применяя закон Деморгана
  • Распределите дизъюнкции по союзам

Очевидно, что если ваш ввод уже в DNF (он же SOP), то, очевидно, первый и второй шаги не применяются.


0

Пусть x = ab'c + bc '

x '= (ab'c + bc') '

По теореме Деморгана, x '= (a' + b + c ') (b' + c)

x '= a'b' + a'c + bb '+ bc + c'b' + c'c

x '= a'b' + a'c + bc + c'b '

Снова используя теорему Деморгана, x = (a'b '+ a'c + bc + c'b') '

x = (a + b) (a + c ') (b' + c ') (c + b)


Добро пожаловать в Электротехнику StackExchange. Если вы предоставляете новый ответ на старый вопрос, вы должны уточнить, что вы добавили к предыдущим ответам, или что было неверным в предыдущих ответах. Кстати, разве ваша вторая строка не в форме POS? ОП не спрашивал о сокращении уравнения, поэтому остальная часть вашего ответа может быть запутанной.
Джо Хасс

Это правильно.
Нирмал Сеневиратне
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.