Wie konvertiere ich einen Ausdruck von SOP nach POS und zurück in die Boolesche Algebra?


9

Wie konvertiere ich einen SOP-Ausdruck (Sum of Products) in das POS-Formular (Product of Sums) und umgekehrt in die Boolesche Algebra?

zB: F = xy '+ yz'


8
Tatsächlich ist dies ein sehr wichtiges Thema für die digitale Logik. Es ist gleichbedeutend damit zu sagen, wie ich eine Schaltung, die aus einem Bündel von und Toren besteht, die ein oder Tor speisen, in einen Schaltkreis ändere, der aus einem Bündel von oder Toren besteht, die ein und Tor speisen.
Chris Stratton

1
Was ist SOP und POS?
AndrejaKo

3
SOP = Summe der Produkte. POS = Produkt von Summen, zB (x + y) (~ x + ~ y). Das logische "ODER" ist eine Summe, während "UND" ein Produkt ist.
Eryk Sun

Dies wird sicherlich in Kursen für digitale Logik unterrichtet, aber tyblu hat Recht, dass dies in die Mathematik-SE gehört. @TheLameProgrammer, Karnaugh-Karten (K-Karten) und den Satz von DeMorgan nachschlagen.
Eryk Sun

2
... DeMorgans Gesetze anwenden? Außerdem ist das in der Frage bereitgestellte Beispiel keine kanonische SOP, da alle Variablen in allen Begriffen vorhanden sein sollten, oder?
Vicatcu

Antworten:


15

Ich denke, der einfachste Weg ist, in eine k-Map zu konvertieren und dann den POS zu bekommen. In Ihrem Beispiel haben Sie:

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

In diesem Fall ergibt das Ausschließen der linken Spalte (x + y) und das Ausschließen der beiden unteren mittleren Kästchen (z '+ y'), was eine Antwort von (x + y) (z '+ y') ergibt.


Aber es sollte F = (x + y) (y '+ z') sein.
Eryk Sun

Hoppla, du hast recht. Es ist schon eine Weile her, dass ich K-Maps gemacht habe, also habe ich es falsch gelesen. Ich habe die Antwort korrigiert.
FryGuy

5

F = xy '+ yz' liegt in SOP- Form vor

Dies kann auch mit einfachen Booleschen Algebra- Techniken wie folgt gelöst werden :

Anwendung des Verteilungsgesetzes : - F = ( xy ') + y . z '

F = ( xy ' + y) . ( xy '+ z'), das jetzt in die POS- Form konvertiert wird.


4

Eine andere Methode ist nur das Kompliment des gegebenen Ausdrucks:

Als: xy '+ yz'

Nimm sein Kompliment:
(xy '+ yz') '

= (xy ')'. (yz ')' {Verwenden von De Morgans Laws (a + b) '= a'.b'}

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

Welches ist auch POS- Form ...!


6
Dies ergibt einen POS.Aber es ist das genaue Gegenteil des gegebenen Ausdrucks.
Nirmal Seneviratne

2

Verwenden Sie das DeMorgan-Gesetz zweimal.

Wenden Sie das Gesetz einmal an:

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

Nochmals bewerben:

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

Überprüfen Sie die Antwort mit wolframalpha.com

xy '+ yz'

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

Bearbeiten: Die Antwort kann durch das Konsensgesetz der Booleschen Algebra noch einen Schritt vereinfacht werden



1

Es gibt die Begriffe Minimum / Summe der Produkte [SOP] und Maximum / Produkt der Summen [POS] an, sodass wir dafür eine Karnaugh-Karte (K-Karte) verwenden können.

Für SOP paaren wir 1 und schreiben die Paarungsgleichung in SOP, während diese in POS umgewandelt werden kann, indem 0 darin gepaart und die Gleichung in POS-Form geschrieben wird.

Wenn wir zum Beispiel für SOP schreiben, schreiben wir für pos .x + y + zxyzx+y+z


0

Siehe das Verfahren unter Konjunktive Normalform: Konvertieren von Logik erster Ordnung .

Diese Prozedur deckt den allgemeineren Fall der Logik erster Ordnung ab, aber die Aussagenlogik ist eine Teilmenge der Logik erster Ordnung.

Vereinfacht durch Ignorieren der Logik erster Ordnung ist es:

  • Beseitigen Sie Implikationen
  • Bewegen Sie Negationen nach innen, indem Sie das Gesetz von DeMorgan anwenden
  • Verteilen Sie Disjunktionen über Konjunktionen

Wenn Ihre Eingabe bereits in DNF (auch bekannt als SOP) erfolgt, gelten der erste und der zweite Schritt offensichtlich nicht.


0

Sei x = ab'c + bc '

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

Nach dem Satz von DeMorgan ist 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 '

Unter erneuter Anwendung des Satzes von DeMorgan ist x = (a'b '+ a'c + bc + c'b') '

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


Willkommen bei Electrical Engineering StackExchange. Wenn Sie eine neue Antwort auf eine alte Frage geben, sollten Sie klarstellen, was Sie zu den vorherigen Antworten hinzugefügt haben oder was in früheren Antworten falsch war. Ist Ihre zweite Zeile nicht in POS-Form? Das OP hat nicht nach einer Reduzierung der Gleichung gefragt, sodass der Rest Ihrer Antwort verwirrend sein könnte.
Joe Hass

Das ist richtig.
Nirmal Seneviratne
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.