Пређи на садржај

Корисник:KiboBibo/DisjunktivnaNormalnaForma(DNF)

Извор: Викикњиге

Disjunktivna normalna forma (DNF) je standardizovani način predstavljanja logičkih formula u Bulovoj algebri. Formula je u DNF ako je napisana kao disjunkcija (logičko „ili”) konjunkcija (logičko „i”) literala. DNF se koristi u logici i računarstvu, posebno u analizi i optimizaciji logičkih funkcija, te je vrlo važan u teoriji automatizovanog rešavanja logičkih problema.

Definicija

[уреди]

Formula u disjunktivnoj normalnoj formi je disjunkcija (OR) jednog ili više konjunkcija (AND), gde su članovi tih konjunkcija literali. Literali su jednostavni izrazi koji mogu biti:

  • Propozicija (npr. 𝑝),
  • Negacija propozicije (npr. ¬𝑝).

Dakle, DNF se može opisati kao:

(𝐿1∧𝐿2∧…∧𝐿𝑛)∨(𝐿𝑛+1∧𝐿𝑛+2∧…∧𝐿𝑚)∨…

Gde su 𝐿1,𝐿2,…,𝐿𝑛 literali (propozicije ili negacije).

Osnovna svojstva DNF

[уреди]
  • Disjunktivnost: Formula je disjunkcija između dva ili više izraza. Svaka od tih disjunkcija je konjunkcija (AND) literala.
  • Konjunkcija unutar disjunkcije: Unutar disjunkcije, svaki izraz je konjunkcija (AND) jednog ili više literala. Na primer, (p∧q)∨(¬p∧r)∨(q∧¬r).
  • Jednostavnost: DNF omogućava jasno predstavljanje logičkih izraza koji se mogu lako evaluirati, jer se formula može proveriti kao tačna ako je bilo koja konjunkcija tačna.

Pravila za DNF

[уреди]

Za formulu da bi bila u DNF, potrebno je primeniti nekoliko osnovnih zakona i pravila logike:

  1. ¬(A∧B)≡¬A∨¬B,
  2. ¬(A∨B)≡¬A∧¬B.
  • Distributivnost: Da bi se dobila DNF, često je potrebno primeniti distributivna pravila logičkih operacija, kao što su:
  1. A∧(B∨C)≡(A∧B)∨(A∧C),
  2. (A∨B)∧(C∨D)≡(A∧C)∨(A∧D)∨(B∧C)∨(B∧D).
  • Dvostruka negacija: Formula sa dvostrukom negacijom može biti pojednostavljena, jer ¬¬A≡A.

Primeri DNF

[уреди]
  1. Jednostavan primer: Razmotrimo formulu p ∨ q. Ovo je već DNF, jer je to disjunkcija između literala 𝑝 i 𝑞.
  2. Složeni primer: Razmotrimo formulu (p∧q)∨(¬r∧s). Ovaj izraz je u DNF jer je to disjunkcija između dve konjunkcije:
  • (p∧q),
  • (¬r∧s).

Formula sa negacijama: Ako imamo formulu ¬(p∧q)∨r, prvo primenjujemo De Morganove zakone na ¬(p∧q), što daje ¬p∨¬q, pa dobijamo:

(¬p∨¬q)∨r

Ovaj izraz je takođe u DNF.

Pretvaranje u DNF

[уреди]

Proces pretvaranja logičke formule u DNF obuhvata nekoliko ključnih koraka:

  1. Razotkrivanje negacija: Primena De Morganovih zakona kako bi se negacije premestile na literale. Na primer, ¬(p∧q) postaje ¬p∨¬q.
  2. Primena distributivnosti: Kada je potrebno, koristite distributivnost da biste transformisali formulu u disjunktivni oblik. Na primer, (p∨q)∧r postaje (p∧r)∨(q∧r).
  3. Eliminacija kontradikcija: Ako postoje kontradikcije poput p∧¬p, one se uklanjaju jer su uvek lažne.
  4. Ponovno razmatranje formule: Ako je potrebno, iterirajte kroz ove korake dok formula ne bude u ispravnom DNF obliku.

Prednosti i mane DNF

[уреди]

Prednosti:

  • Jednostavno razumevanje: Formula u DNF je intuitivna i jednostavna za tumačenje. Dovoljno je proveriti sve konjunkcije u disjunkciji; ako je bilo koja konjunkcija tačna, cela formula je tačna.
  • Lako za evaluaciju: Formule u DNF je lako evaluirati. Svaka konjunkcija u disjunkciji predstavlja uslov koji treba biti zadovoljen, a evaluacija može biti efikasna.

Mane:

  • Eksponencijalni rast: Za složene izraze, DNF može postati vrlo obimna. Broj konjunkcija može rasti eksponencijalno u zavisnosti od broja varijabli u izrazu.
  • Nije uvek minimalna: DNF nije uvek minimalni oblik Bulove funkcije. Na primer, može postojati drugačiji oblik (kao što je konjunktivna normalna forma, CNF) koji je kraći ili jednostavniji.

Primena DNF

[уреди]
  1. Automatsko dokazivanje teorema: DNF je koristan u logici za automatsko dokazivanje teorema, jer omogućava sistematsku pretragu svih mogućnosti za dokazivanje iskaza.
  2. Optimizacija Bulovih funkcija: DNF se koristi za analizu i minimizaciju Bulovih funkcija. Iako DNF nije uvek najefikasniji način za predstavljanje Bulovih funkcija, omogućava lakše razumevanje strukture funkcije.
  3. Računarski algoritmi: U oblasti računarstva, DNF se koristi u algoritmima za rešavanje problema u logičkih formama i u optimizaciji u elektronskim sklopovima.

Zaključak

[уреди]

Disjunktivna normalna forma je osnovni alat u logici i računarstvu za predstavljanje i analizu logičkih izraza. Iako može biti vrlo obimna za složene funkcije, njena jednostavnost i jasnoća čine je korisnom u mnogim aplikacijama, uključujući automatizovano rešavanje logičkih problema i optimizaciju Bulovih funkcija.