Як перетворити вираз з SOP в POS і назад в булева алгебра?


9

Як перетворити вираз Сума продуктів (SOP) у форму Product of Sums (POS) і навпаки в булева алгебра?

наприклад: F = xy '+ yz'


8
Насправді це дуже багато на тему цифрової логіки. Це рівнозначно тому, як я можу змінити ланцюг, що складається з купок і воріт, що подають або ворота, на один, що складається з пучка або воріт, що подають і ворота.
Кріс Страттон

1
Що таке SOP та POS?
AndrejaKo

3
SOP = сума продуктів. POS = добуток сум, наприклад (x + y) (~ x + ~ y). Логічне "АБО" - це сума, а "І" - продукт.
Ерік Вс

Це, звичайно, викладають на курсах цифрової логіки з недооцінки, але тиблу прав, що це належить до математики SE. @TheLameProgrammer, Знайдіть карти Карно (K карти) та теорему DeMorgan.
Ерік Нд

2
... використовувати закони DeMorgan? Крім того, приклад, наведений у питанні, не є канонічним СОП, оскільки всі змінні повинні бути присутніми в усіх термінах, правда?
vicatcu

Відповіді:


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').
Ерік Вс

Упс, ти маєш рацію. Минув час, коли я робив k-карти, тому я неправильно читав. Я зафіксував відповідь.
FryGuy

5

F = xy '+ yz' це у формі SOP

Це також можна використати, використовуючи прості булеві алгебри :

Застосування закону розподілу : - F = ( xy ') + y . z '

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


4

Ще один метод - просто взяти комплімент для даного виразу:

Як: xy '+ yz'

Вживаючи комплімент:
(xy '+ yz') '

= (xy ')'. (yz ')' {Використання закону De Morgans (a + b) '= a'.b'}

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

Яка також POS- форма ...!


6
Це дає POS.Але це повна протилежність даному виразу.
Nirmal Seneviratne

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'

(x + y) (y '+ z')

Редагувати: Відповідь може бути спрощена ще на один крок булевим законом консенсусу алгебри


1

Якщо ви хочете перевірити свою роботу, зробивши її вручну, ви можете скористатися такою програмою, як Logic Friday .


1

Він міститься як мінімум / Сума продуктів [SOP] та максимум / Product of Sums [POS], тому ми можемо використовувати для нього карту Карно (карта K).

Для SOP ми поєднуємо 1 і записуємо рівняння спарювання в SOP, тоді як це можна перетворити в POS, з'єднавши в нього 0 і записавши рівняння в POS-форму.

Наприклад, для SOP, якщо ми пишемо xyz то для пози пишемо x+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? ОП не запитувало про зменшення рівняння, тому решта вашої відповіді може бути заплутаною.
Джо Хасс

Це вірно.
Nirmal Seneviratne
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.