# 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$.