Dysjunkcyjna postać normalna

W logice boolowskiej dysjunkcyjna postać normalna ( DNF ) jest kanoniczną postacią normalną formuły logicznej składającej się z dysjunkcji spójników; można to również opisać jako OR z ORAZ , sumę produktów lub (w logice filozoficznej ) koncepcję klastra . [ potrzebne źródło ] Jako postać normalna jest użyteczna w automatycznym dowodzeniu twierdzeń .

Definicja

Formuła logiczna jest uważana za DNF, jeśli jest dysjunkcją jednego lub więcej koniunkcji jednego lub więcej literałów . Formuła DNF jest w pełnej rozłącznej postaci normalnej, jeśli każda z jej zmiennych występuje dokładnie raz w każdym połączeniu. jak w koniunkcyjnej postaci normalnej (CNF), jedynymi operatorami zdaniowymi w DNF są i lub ( , a nie ( ¬ ). Operator not może być używany tylko jako część literału, co oznacza, że ​​może poprzedzać zmienną zdaniową .

Poniżej znajduje się gramatyka bezkontekstowa dla DNF:

  1. DNF → ( koniunkcja ) DNF
  2. DNF → ( spójnik )
  3. Spójnik Dosłowny Spójnik
  4. Spójnik Literał
  5. Dosłownie Zmienna
  6. Literał Zmienna

Gdzie Zmienna to dowolna zmienna.

Na przykład wszystkie poniższe formuły znajdują się w formacie DNF:

Jednak następujące formuły nie występują w DNF:

  • , ponieważ OR jest zagnieżdżone w NOT
  • , ponieważ AND jest zagnieżdżone w NOT
  • , ponieważ OR jest zagnieżdżone w ORAZ

Formuła ale nie w pełnym DNF równoważna pełna wersja DNF to .

Konwersja do DNF

Mapa Karnaugha dysjunktywnej postaci normalnej A ∧¬ B ∧¬ D ) A B C ) ( A B D ) ( A ∧¬ B ∧¬ C )
Mapa Karnaugha dysjunktywnej postaci normalnej A C ∧¬ D ) ( B C D ) ( A ∧¬ C D ) B ∧¬ C ∧¬ D ) . Pomimo innego grupowania, te same pola zawierają „1”, jak na poprzedniej mapie.

Konwersja formuły na DNF obejmuje użycie logicznych równoważności , takich jak eliminacja podwójnej negacji , prawa De Morgana i prawo rozdzielności .

Wszystkie formuły logiczne można przekształcić w równoważną rozłączną postać normalną. Jednak w niektórych przypadkach konwersja do DNF może prowadzić do wykładniczej eksplozji formuły. Na przykład konwersja formuły do DNF daje formułę zawierającą 2 n wyrazów.

Każda poszczególna funkcja boolowska może być reprezentowana przez jedną i tylko jedną pełną dysjunktywną postać normalną, jedną z form kanonicznych . W przeciwieństwie do tego, dwie różne zwykłe rozłączne formy normalne mogą oznaczać tę samą funkcję boolowską; zobacz ilustracje.

Złożoność obliczeniowa

Boolowski problem spełnialności na koniunkcyjnych formułach w postaci normalnej jest NP-trudny ; przez zasadę dwoistości , tak samo jest z problemem falsyfikowalności we wzorach DNF. Dlatego trudno jest zdecydować, czy formuła DNF jest tautologią .

I odwrotnie, formuła DNF jest spełnialna wtedy i tylko wtedy, gdy jedna z jej koniunkcji jest spełnialna; można to rozstrzygnąć w czasie wielomianowym .

Warianty

Ważną odmianą stosowaną w badaniu złożoności obliczeniowej jest k-DNF . Formuła jest w k-DNF, jeśli jest w DNF, a każda koniunkcja zawiera co najwyżej k literałów.

Zobacz też

Notatki

Linki zewnętrzne