FAV-ZCU/KMA DMA/Otázky ke zkoušce/13. Minimalizace Booleovských funkcí.md

2.5 KiB

Minimalizace Booleovských funkcí

K minimalizaci Booleovských funkcí se využívá Quineho-McCluskeyho metoda minimalizace.

Metoda minimalizace

Implikantem Booleovy funkce f se nazývá každý součin literálů proměnných, který implikuje f.

  • f(x, y, z) = x \overline z + \overline y
  • cíl: vynechání některých součinů tak, že výsledek je stále roven funkci f
  • součin literálů p je implikantem funkce f, pokud p \leq f
  • implikant je prostý, pokud součin vzniklý odstraněním libovolného literálu z p přestane být implikantem funkce f

Postup

Mějme Booleovskou funkci f zadanou tabulkou.

  1. Vybereme řádky, kde je hodnota f rovna 1.
  2. Z těchto řádků vybereme ty, které je možné dát do dvojic, ve kterých se budou lišit pouze v jedné pozici.
  3. Dvojice vypíšeme a lišící se pozici nahradíme symbolem -.
  4. Prosté implikanty nevybrané ve 2. kroce a také ty upravené zapíšeme pod sebe a přiřadíme k nim součinové klauzule podle tabulky níže.
řádek x y z klauzule
2. 0 1 0 \overline xy\overline z
1., 5. - 0 1 \overline yz
5., 7. 1 - 1 xz

Máme vyjádření f(x, y, z) = \overline xy\overline z + \overline yz + xz.

Tabulka pokrytí

Hledáme nezkratitelné vyjádření, které stále bude rovno funkci f.

Sloupce odpovídají jednotlivým původním vstupům, pro něž f nabývá hodnoty 1, řádky odpovídají získaným prostým implikantům.

x y z 1. 2. 5. 7.
- 0 1 [ ] [ ]
1 - 1 [ ] [ ]
0 1 0 [ ]

Každý ze sloupců v tabulce musí být pokryt nějakým prostým implikantem. Vybereme nejprve ty sloupce, které jsou pokrytelné pouze jedním prostým implikantem a k nim vždy příslušný implikant.

x y z 1. 2. 5. 7. implikant
- 0 1 [x] [ ] \overline yz
1 - 1 [ ] [x] xz
0 1 0 [x] \overline xy\overline z

Pokrytí existuje jediné. Celkem máme tak jedno výsledné řešení, minimální disjunktivní formu f(x, y, z) = \overline xy\overline z + \overline yz + xz.