Rozdzielna forma normalna - Disjunctive normal form

W operacji logicznych , A rozłączne postaci normalnej ( DNF ) jest kanoniczną postać normalna formuły logicznej obejmującej alternatywą koniunkcji; można go również opisać jako OR z AND , sumę produktów lub ( w logice filozoficznej ) pojęcie klastra . Jako forma normalna jest użyteczna w automatycznym dowodzeniu twierdzeń .

Definicja

Formuła logiczna jest uważana za w DNF, jeśli jest alternatywą jednego lub więcej spójników 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 koniunkcji. Podobnie jak w przypadku koniunkcyjnej postaci normalnej (CNF), jedynymi operatorami zdań w DNF są i ( ), lub ( ), a nie ( ). Nie operatora może być stosowany jedynie w ramach dosłownego, co oznacza, że można go tylko poprzedzają zmienną zdaniową .

Poniżej znajduje się gramatyka bezkontekstowa dla DNF:

  1. DNF → ( Spójka ) DNF
  2. DNF → ( Koniunkcja )
  3. KoniunkcjaDosłowna koniunkcja
  4. KoniunkcjaDosłowny
  5. LiterałZmienna
  6. LiterałZmienna

Gdzie zmienna to dowolna zmienna.

Na przykład wszystkie poniższe formuły są w DNF:

Jednak następujące formuły nie są dostępne w DNF:

  • , ponieważ OR jest zagnieżdżony w NOT
  • , ponieważ AND jest zagnieżdżony w NOT
  • , ponieważ OR jest zagnieżdżony w AND

Formuła jest w DNF, ale nie w pełnym DNF; odpowiednikiem pełnej wersji DNF jest .

Konwersja do DNF

Mapa Karnaugha dysjunktywnej postaci normalnej A ∧¬ B ∧¬ D )ABC )( ABD )( A ∧¬ B ∧¬ C )
Mapa Karnaugha dysjunktywnej postaci normalnej AC ∧¬ D )( BCD )( A ∧¬ CD )BCD ) . Pomimo różnych grupowań, te same pola zawierają „1” jak na poprzedniej mapie.

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

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 przekonwertowanie formuły na DNF daje formułę z 2 n terminami.

Każda konkretna funkcja Boole'a może być reprezentowana przez jedną i tylko jedną pełną dysjunktywną formę normalną, jedną z form kanonicznych . W przeciwieństwie do tego, dwie różne zwykłe dysjunktywne formy normalne mogą oznaczać tę samą funkcję Boole'a, patrz rysunki.

Złożoność obliczeniowa

Problem spełnialności na równoczesne postaci normalnej wzorze jest NP-trudny ; zgodnie z zasadą dwoistości , tak samo jest z problemem falsyfikowalności we wzorach DNF. Dlatego też współ-NP-trudno jest zdecydować, czy formuła DNF jest tautologią .

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żde połączenie zawiera co najwyżej k literałów.

Zobacz też

Uwagi

Bibliografia

Zewnętrzne linki