Diszjunktív normál forma

A diszjunktív normálforma ( DNF ) a logikai logikában egy olyan normálforma , amelyben a Boole-képlet literálok kötőszóinak diszjunkciója . Bármely Boole-képlet átalakítható DNF-vé. [1] Ehhez használhatja a kettős tagadás törvényét , de Morgan törvényét , az eloszlás törvényét . A diszjunktív normálalak alkalmas az automatikus tételbizonyításra .

Példák

Képletek a DNF-ben :

A DNF-ben nem szereplő képletek :

De az utolsó két képlet egyenértékű a következő képletekkel a DNF-ben:

DNF építése

Algoritmus egy DNF létrehozásához

1) Szabaduljon meg a képletben szereplő összes logikai művelettől, és cserélje le őket a főbbekre: konjunkció, diszjunkció, tagadás. Ezt egyenértékű képletekkel lehet megtenni:

2) Cserélje ki a teljes kifejezésre utaló tagadójelet tagadójelekre, amelyek az egyes változók állításaira vonatkoznak, a képletek alapján:

3) Szabadulj meg a kettős negatív előjelektől.

4) Szükség esetén alkalmazza a konjunkció és a diszjunkció műveleteire az eloszlási és abszorpciós képletek tulajdonságait.

Példa DNF létrehozására

Csökkentsük a képletet DNF-re

A logikai műveletet → keresztül fejezzük ki

A kapott képletben a tagadást átvisszük a változókra, és csökkentjük a kettős tagadásokat:

Az eloszlási törvény segítségével a következőket kapjuk:

A kötőszó idempotenciáját felhasználva DNF-et kapunk:

k -diszjunktív normálforma

A k -diszjunktív normálforma olyan diszjunktív normálforma, amelyben minden kötőszó pontosan k literált tartalmaz .

Például a következő képlet 2-DNF-ben van írva:

Átállás DNF-ről SDNF-re

Ha valamilyen egyszerű kötőszóból hiányzik egy változó, például a Z, akkor a kifejezést beillesztjük abba

,

ami után kinyitjuk a zárójeleket (ugyanakkor nem írjuk az ismétlődő diszjunkt tagokat, hiszen az idempotencia törvénye szerint ). Például:

Így a DNF-ből SDNF -t kaptunk .

A DNF-et leíró formális nyelvtan

A következő formális nyelvtan leírja az összes DNF-re redukált képletet:

<DNF> → <összekötő> <DNF> → <DNF> ∨ <összekötő> <kötőszó> → <szó szerinti> <kötőszó> → (<kötőszó> ∧ <szó szerinti>) <szó szerinti> → <kifejezés> <szó szerinti> → ¬<kifejezés>

ahol a <term> tetszőleges logikai változót jelöl.

Jelölés jellemzői

Meg kell jegyezni, hogy az érzékelés megkönnyítése érdekében az aritmetikai szorzás és összeadás szimbólumait gyakran használják kötő- és diszjunkció jelölésére, míg a szorzás szimbólumát gyakran elhagyják. Ebben az esetben a Boole-algebrai képletek algebrai polinomoknak tűnnek, ami ismerősebb a szem számára, de néha félreértésekhez vezethet.

Például a következő bejegyzések egyenértékűek:

Emiatt a DNF-et az orosz nyelvű irodalomban néha "termékek összegének" nevezik, amely az angol "sum of products" kifejezésből származó pauszpapír.

Lásd még

Jegyzetek

  1. Pozdnyakov S.N., Rybin S.V. Diszkrét matematika. - S. 303.

Irodalom

Linkek