FAV-ZCU/KMA DMA/Otázky ke zkoušce/12. Booleovské funkce.md

2.7 KiB

Booleovské funkce

Definice

  • Booleovská funkce n proměnných je libovolná funkce f: B^n_{2} \to B_{2}.

Může jí být například Booleovská funkce dvou proměnných + nebo \cdot.

Množina F_{n} všech booleovských funkcí n proměnných s uspořádáním \leq daným předpisem f \leq g, pokud pro každé x \in B^n_{2} platí f(x) \leq g(x), je Booleova alebra.

Základní booleovské funkce je možné kombinovat do složitějších funkcí.

Pravdivostní tabulky

Zapisují se do tabulky, kde je jeden řádek pro každou kombinaci hodnot proměnných.

x y x+y x\cdot y
0 0 0 0
0 1 1 0
1 0 1 0
1 1 1 1
x \overline x
0 1
1 0

Booleovské polynomy

Booleův polynom v proměnných x_{1}, x_{2}, \dots, x_{n} je každá Booleova funkce, v proměnných x_{1}, x_{2}, \dots, x_{n}, která vznikne podle následujících pravidel:

  1. konstanty 0 a 1, každá proměnná x_{i}, (i=1,\dots,n) je Booleův polynom,
  2. jsou-li a, b Booleovy polynomy, potom i funkce \overline a, a \vee b a a \wedge b jsou Booleovy polynomy.

Dva Booleovy polynomy jsou si rovny, pokud definují tutéž Booleovu funkci.

Klauzule

Polynomy ve tvaru y_{1} \vee y_{2} \vee \dots \vee y_{n}, resp. y_{1} \wedge y_{2} \wedge \dots y_{n}, kde y_{i} = x_{i} nebo y_{i} = \overline{x_{i}} se nazývají spojová, resp. průseková klauzule v proměnných x_{1}, \dots, x_{n}. Pro každé i=1,\dots,n nazveme y_{i} literálem proměnné x_{i}.

  • x_{1} \vee x_{2} \vee \overline{x_{3}} \vee x_{4} \vee \overline{x_{5}} - spojová klauzule
  • \overline{x_{1}} \wedge x_{2} \wedge x_{3} \wedge x_{4} \wedge \overline{x_{5}} - průseková klauzule
  • x_{1} \vee \overline{x_{2}} \wedge x_{3} - ani spojová, ani průseková klauzule

Formy

O Booleově polynomu, který je spojením průsekových, resp. průsekem spojových klauzulí říkáme, že je zapsán v disjunktivní (spojové) resp. konjunktivní (průsekové) normální formě.

  • značíme DNF, resp. KNF

Jestliže navíc každá klauzule obsahuje literály všech proměnných, potom tyto formy nazýváme úplnými formami.

  • značíme ÚDNF, resp. ÚKNF

Každou nekonstantní Booleovu funkci n proměnných lze vyjádřit Booleovým polynomem n proměnných v úplné disjunktivní i konjunktivní normální formě.

  • konstantní Booleova funkce
    • 0 ... konjunktivní (kontradikce)
    • 1 ... disjunktivní (tautologie)