Petriks metod

Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från versionen som granskades den 28 oktober 2021; kontroller kräver 3 redigeringar .

Petriks  metod är en metod för att erhålla alla minimala DNF från en tabell med primära implikanter . Det föreslogs 1956 av den amerikanske vetenskapsmannen Stanley Roy Petrik (1931-2006) [1] . Petriks metod är ganska svår att tillämpa för stora tabeller, men den är väldigt enkel att implementera programmatiskt.

Algoritm

  1. Förenkla tabellen över främsta implikanter genom att eliminera nödvändiga implikanter och deras motsvarande termer.
  2. Ange raderna i den förenklade tabellen: , etc.
  3. Bilda en boolesk funktion som är sann när alla kolumner är täckta. består av en CNF där varje konjunkt har formen , där varje variabel är en rad som täcker en kolumn .
  4. Förenkla till minimal DNF genom att multiplicera och tillämpa och .
  5. Varje sats i resultatet representerar en lösning, det vill säga en uppsättning rader som täcker alla minterms i tabellen över primära implikanter.
  6. Därefter, för varje lösning som finns i steg 5, måste du räkna antalet bokstaver i varje prime implikant.
  7. Välj en term (eller termer) som innehåller det minsta antalet bokstaver och skriv resultatet.

Exempel

Det finns en boolesk funktion av tre variabler, som ges av summan av minterms:

Tabell över främsta implikanter från Quine-McCluskey-metoden :

0 ett 2 5 6 7
K ( )
L ( )
M ( )
N ( )
P ( )
Q ( )

Baserat på anteckningarna i tabellen ovan skriver vi ut CNF (rader läggs till, deras summor multipliceras):

Med hjälp av fördelningsegenskapen inverterar vi uttrycket i DNF. Vi kommer också att använda följande ekvivalenser för att förenkla uttrycket: , och .

Nu använder vi igen för ytterligare förenkling:

Vi väljer produkter med minst antal variabler och är .

Vi väljer termen med minst antal bokstaver. I vårt fall expanderar båda produkterna till sex bokstaver:

Därför är båda termerna minimala.

Anteckningar

  1. Biografisk anteckning . Arkiverad från originalet den 13 april 2017.