Disjunctieve normaalvorm

In dit artikel duiken we in de fascinerende wereld van Disjunctieve normaalvorm en onderzoeken we de oorsprong, betekenis en relevantie ervan vandaag de dag. Disjunctieve normaalvorm heeft in de loop van de tijd de interesse en nieuwsgierigheid van veel mensen gewekt, en in dit artikel zullen we proberen licht te werpen op alle aspecten die het zo speciaal maken. Van zijn impact op de samenleving tot zijn invloed op verschillende gebieden heeft Disjunctieve normaalvorm een onuitwisbare stempel gedrukt die het verdient om diepgaand te worden geanalyseerd en begrepen. Ga met ons mee op deze reis vol ontdekkingen en kennis over Disjunctieve normaalvorm, een ervaring die verrijkend en onthullend belooft te worden.

In de logica is een formule in disjunctieve normaalvorm (Engels: disjunctive normal form, DNF) als die bestaat uit een disjunctie van conjuncties van literalen. In een disjunctieve normaalvorm komen slechts drie booleaanse operatoren voor: en, of en negatie. Daarbij kan de negatie alleen als onderdeel van een literaal voorkomen. Er bestaat ook een conjunctieve normaalvorm, een conjunctie van disjuncties.

Voorbeelden

Voorbeelden van formules in disjunctieve normaalvorm:

De volgende formules zijn echter niet in disjunctieve normaalvorm:

(negatie is niet toegestaan als buitenste connectief)
(een disjunctie staat in een conjunctie)

Vervulbaarheid

Het is mogelijk om in polynomiale tijd te controleren of een formule in disjunctieve normaalvorm vervulbaar is. Het algoritme in pseudocode:

isDNFSatisfiable(formule F):
for each disjunct D in F:
if D bevat geen complementaire literals:
return true
return false

Een formule in disjunctieve normaalvorm is namelijk vervulbaar als ten minste 1 van zijn disjuncten vervulbaar is; elk van deze disjuncten is een conjunctie van literals. Een conjunctie van literals is vervulbaar als het geen complementaire literals (zowel p als de negatie daarvan) bevat. Men kan dus de formule aflopen en voor elk van de disjuncten controleren of het geen complementaire literals bevat. Als dit het geval is voor een disjunct dan is die vervulbaar en daarmee is de gehele formule ook vervulbaar.

Bijzonderheid

  • Een disjunctie staat ook in disjunctieve normaalvorm; elk van de conjuncties bevat exact 1 literal.

Zie ook