Disjunktivní normální forma ( DNF ) v booleovské logice je normální forma , ve které má booleovská formule formu disjunkce konjunkcí literálů . Jakýkoli booleovský vzorec lze převést na DNF. [1] K tomu můžete použít zákon dvojí negace , de Morganův zákon , zákon distributivity . Disjunktivní normální forma je vhodná pro automatické dokazování věty .
Vzorce v DNF :
Vzorce , které nejsou v DNF :
Ale poslední dva vzorce jsou ekvivalentní následujícím vzorcům v DNF:
1) Zbavte se všech logických operací obsažených ve vzorci a nahraďte je těmi hlavními: konjunkce, disjunkce, negace. To lze provést pomocí ekvivalentních vzorců:
2) Nahraďte znaménko negace odkazující na celý výraz za znaménko negace odkazující na jednotlivé výroky proměnných na základě vzorců:
3) Zbavte se dvojitých negativních znamének.
4) Aplikujte, je-li to nutné, na operace konjunkce a disjunkce vlastnosti vzorců distributivity a absorpce.
Zredukujeme vzorec na DNF
Vyjádříme logickou operaci → skrz
Ve výsledném vzorci převedeme negaci na proměnné a snížíme dvojité negace:
Pomocí zákona distributivity dostaneme:
Pomocí idempotence konjunkce získáme DNF:
K -disjunktivní normální forma je disjunktivní normální forma, ve které každá spojka obsahuje přesně k literálů .
Například následující vzorec je napsán v 2-DNF:
Pokud v nějaké jednoduché spojce chybí proměnná, například Z, vložíme výraz do ní
,za kterým otevřeme závorky (zároveň nepíšeme opakující se disjunktní členy, protože podle zákona idempotence ). Například:
Z DNF jsme tedy dostali SDNF .
Následující formální gramatika popisuje všechny vzorce redukované na DNF:
<DNF> → <konjunkce> <DNF> → <DNF> ∨ <konjunkce> <konjunkce> → <doslova> <spojka> → (<spojka> ∧ <doslova>) <doslovný> → <termín> <doslovný> → ¬<termín>kde <term> označuje libovolnou booleovskou proměnnou.
Je třeba poznamenat, že pro usnadnění vnímání jsou symboly aritmetického násobení a sčítání často používány jako označení pro konjunkci a disjunkci, zatímco symbol násobení je často vynechán. V tomto případě vzorce Booleovské algebry vypadají jako algebraické polynomy, což je oku známější, ale někdy to může vést k nedorozuměním.
Například následující položky jsou ekvivalentní:
Z tohoto důvodu se DNF v ruskojazyčné literatuře někdy nazývá „součet produktů“, což je pauzovací papír z anglického termínu „součet produktů“.