<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://debianws.lexgopc.com/wiki143/index.php?action=history&amp;feed=atom&amp;title=Disjunctive_normal_form</id>
	<title>Disjunctive normal form - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://debianws.lexgopc.com/wiki143/index.php?action=history&amp;feed=atom&amp;title=Disjunctive_normal_form"/>
	<link rel="alternate" type="text/html" href="http://debianws.lexgopc.com/wiki143/index.php?title=Disjunctive_normal_form&amp;action=history"/>
	<updated>2026-05-13T04:47:28Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.1</generator>
	<entry>
		<id>http://debianws.lexgopc.com/wiki143/index.php?title=Disjunctive_normal_form&amp;diff=3224634&amp;oldid=prev</id>
		<title>imported&gt;Jochen Burghardt: /* Definition */ cf. Talk:Disjunctive_normal_form#Meaning_of_&quot;Conjunct&quot;; also reuire parentheses around each Disjunct</title>
		<link rel="alternate" type="text/html" href="http://debianws.lexgopc.com/wiki143/index.php?title=Disjunctive_normal_form&amp;diff=3224634&amp;oldid=prev"/>
		<updated>2025-10-23T15:10:35Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Definition: &lt;/span&gt; cf. &lt;a href=&quot;/wiki143/index.php?title=Talk:Disjunctive_normal_form&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Talk:Disjunctive normal form (page does not exist)&quot;&gt;Talk:Disjunctive_normal_form#Meaning_of_&amp;quot;Conjunct&amp;quot;&lt;/a&gt;; also reuire parentheses around each Disjunct&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Previous revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 15:10, 23 October 2025&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{Short description|Standard form of a boolean function}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{Short description|Standard form of a boolean function}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;In [[boolean logic]], a &#039;&#039;&#039;disjunctive normal form&#039;&#039;&#039; (&#039;&#039;&#039;DNF&#039;&#039;&#039;) is a [[&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;canonical &lt;/del&gt;normal form]] of a logical formula consisting of a disjunction of conjunctions; it can also be described as an &#039;&#039;&#039;OR of ANDs&#039;&#039;&#039;, a [[sum of products]], or {{mdash}} in [[philosophical logic]] {{mdash}} a &#039;&#039;cluster concept&#039;&#039;.{{sfn|Post|1921}} &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;As a &lt;/del&gt;[[&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Normal form (abstract rewriting)|&lt;/del&gt;normal form]], &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;it is useful &lt;/del&gt;in [[automated theorem proving]].&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;In [[boolean logic]], a &#039;&#039;&#039;disjunctive normal form&#039;&#039;&#039; (&#039;&#039;&#039;DNF&#039;&#039;&#039;) is a [[&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;normal form (abstract rewriting)|&lt;/ins&gt;normal form]] of a logical formula consisting of a disjunction of conjunctions; it can also be described as an &#039;&#039;&#039;OR of ANDs&#039;&#039;&#039;, a [[sum of products]], or {{mdash}} in [[philosophical logic]] {{mdash}} a &#039;&#039;cluster concept&#039;&#039;.{{sfn|Post|1921}} &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;The disjunctive normal form and its counterpart, the &lt;/ins&gt;[[&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;conjunctive &lt;/ins&gt;normal form]], &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;are the most common standardized ways of representing [[boolean expressions]]. They are widely used &lt;/ins&gt;in &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;various applications such as [[circuit design]] or &lt;/ins&gt;[[automated theorem proving]].&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Definition==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Definition==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l6&quot;&gt;Line 6:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 6:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The following is a [[context-free grammar]] for DNF:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The following is a [[context-free grammar]] for DNF:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;: &#039;&#039;DNF&#039;&#039; &amp;lt;math&amp;gt;\, \to \,&amp;lt;/math&amp;gt; &#039;&#039;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Conjunct&lt;/del&gt;&#039;&#039; &amp;lt;math&amp;gt;\, \mid \, &amp;lt;/math&amp;gt; &#039;&#039;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Conjunct&lt;/del&gt;&#039;&#039; &amp;lt;math&amp;gt;\, \lor \,&amp;lt;/math&amp;gt; &#039;&#039;DNF&#039;&#039;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;: &#039;&#039;DNF&#039;&#039; &amp;lt;math&amp;gt;\, \to \,&amp;lt;/math&amp;gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;(&lt;/ins&gt;&#039;&#039;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Disjunct&lt;/ins&gt;&#039;&#039;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;) &lt;/ins&gt;&amp;lt;math&amp;gt;\, \mid \, &amp;lt;/math&amp;gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;(&lt;/ins&gt;&#039;&#039;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Disjunct&lt;/ins&gt;&#039;&#039;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;) &lt;/ins&gt;&amp;lt;math&amp;gt;\, \lor \,&amp;lt;/math&amp;gt; &#039;&#039;DNF&#039;&#039;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;: &#039;&#039;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Conjunct&lt;/del&gt;&#039;&#039; &amp;lt;math&amp;gt;\, \to \,&amp;lt;/math&amp;gt; &#039;&#039;Literal&#039;&#039; &amp;lt;math&amp;gt;\, \mid\, &amp;lt;/math&amp;gt; &#039;&#039;Literal&#039;&#039; &amp;lt;math&amp;gt;\, \land \,&amp;lt;/math&amp;gt; &#039;&#039;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Conjunct&lt;/del&gt;&#039;&#039;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;: &#039;&#039;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Disjunct&lt;/ins&gt;&#039;&#039; &amp;lt;math&amp;gt;\, \to \,&amp;lt;/math&amp;gt; &#039;&#039;Literal&#039;&#039; &amp;lt;math&amp;gt;\, \mid\, &amp;lt;/math&amp;gt; &#039;&#039;Literal&#039;&#039; &amp;lt;math&amp;gt;\, \land \,&amp;lt;/math&amp;gt; &#039;&#039;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Disjunct&lt;/ins&gt;&#039;&#039;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;: &amp;#039;&amp;#039;Literal&amp;#039;&amp;#039; &amp;lt;math&amp;gt;\, \to \,&amp;lt;/math&amp;gt; &amp;#039;&amp;#039;Variable&amp;#039;&amp;#039; &amp;lt;math&amp;gt;\, \mid \,&amp;lt;/math&amp;gt; &amp;lt;math&amp;gt;\, \neg \,&amp;lt;/math&amp;gt; &amp;#039;&amp;#039;Variable&amp;#039;&amp;#039;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;: &amp;#039;&amp;#039;Literal&amp;#039;&amp;#039; &amp;lt;math&amp;gt;\, \to \,&amp;lt;/math&amp;gt; &amp;#039;&amp;#039;Variable&amp;#039;&amp;#039; &amp;lt;math&amp;gt;\, \mid \,&amp;lt;/math&amp;gt; &amp;lt;math&amp;gt;\, \neg \,&amp;lt;/math&amp;gt; &amp;#039;&amp;#039;Variable&amp;#039;&amp;#039;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Where &amp;#039;&amp;#039;Variable&amp;#039;&amp;#039; is any variable.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Where &amp;#039;&amp;#039;Variable&amp;#039;&amp;#039; is any variable.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l161&quot;&gt;Line 161:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 161:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==References==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==References==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{sfn whitelist |CITEREFSobolev2020}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{sfn whitelist |CITEREFSobolev2020}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;*{{cite book|last1=Arora | first1=Sanjeev |author1-link=Sanjeev Arora|last2=Barak|first2= Boaz |author2-link=Boaz Barak| title=Computational Complexity: A Modern Approach | publisher=[[Cambridge University Press]]|date=20 April 2009|pages=579|isbn=9780521424264|doi=10.1017/CBO9780511804090}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;*{{cite book|last1=Arora | first1=Sanjeev |author1-link=Sanjeev Arora &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;(computer scientist)&lt;/ins&gt;|last2=Barak|first2= Boaz |author2-link=Boaz Barak| title=Computational Complexity: A Modern Approach | publisher=[[Cambridge University Press]]|date=20 April 2009|pages=579|isbn=9780521424264|doi=10.1017/CBO9780511804090}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;*{{cite book|last1=Davey | first1=B.A.|last2=Priestley |first2= H.A. | title=Introduction to Lattices and Order |title-link= Introduction to Lattices and Order | publisher=Cambridge University Press | series=Cambridge Mathematical Textbooks | year=1990 }}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;*{{cite book|last1=Davey | first1=B.A.|last2=Priestley |first2= H.A. | title=Introduction to Lattices and Order |title-link= Introduction to Lattices and Order | publisher=Cambridge University Press | series=Cambridge Mathematical Textbooks | year=1990 }}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;*{{cite book | isbn=0-444-88074-7 | editor-first=Jan |editor-last= Van Leeuwen | editor-link=Jan van Leeuwen | title=Formal Models and Semantics | publisher=[[Elsevier]] | series=Handbook of Theoretical Computer Science | volume=B | year=1990 | first1=Nachum |last1=Dershowitz |author1-link=Nachum Dershowitz |first2= Jean-Pierre |last2=Jouannaud |author2-link= Jean-Pierre Jouannaud | contribution=Rewrite Systems | pages=243&amp;amp;ndash;320 }}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;*{{cite book | isbn=0-444-88074-7 | editor-first=Jan |editor-last= Van Leeuwen | editor-link=Jan van Leeuwen | title=Formal Models and Semantics | publisher=[[Elsevier]] | series=Handbook of Theoretical Computer Science | volume=B | year=1990 | first1=Nachum |last1=Dershowitz |author1-link=Nachum Dershowitz |first2= Jean-Pierre |last2=Jouannaud |author2-link= Jean-Pierre Jouannaud | contribution=Rewrite Systems | pages=243&amp;amp;ndash;320 }}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>imported&gt;Jochen Burghardt</name></author>
	</entry>
	<entry>
		<id>http://debianws.lexgopc.com/wiki143/index.php?title=Disjunctive_normal_form&amp;diff=48764&amp;oldid=prev</id>
		<title>imported&gt;Marc Schroeder: /* Maximum number of conjunctions */</title>
		<link rel="alternate" type="text/html" href="http://debianws.lexgopc.com/wiki143/index.php?title=Disjunctive_normal_form&amp;diff=48764&amp;oldid=prev"/>
		<updated>2025-05-10T17:51:10Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Maximum number of conjunctions&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Short description|Standard form of a boolean function}}&lt;br /&gt;
In [[boolean logic]], a &amp;#039;&amp;#039;&amp;#039;disjunctive normal form&amp;#039;&amp;#039;&amp;#039; (&amp;#039;&amp;#039;&amp;#039;DNF&amp;#039;&amp;#039;&amp;#039;) is a [[canonical normal form]] of a logical formula consisting of a disjunction of conjunctions; it can also be described as an &amp;#039;&amp;#039;&amp;#039;OR of ANDs&amp;#039;&amp;#039;&amp;#039;, a [[sum of products]], or {{mdash}} in [[philosophical logic]] {{mdash}} a &amp;#039;&amp;#039;cluster concept&amp;#039;&amp;#039;.{{sfn|Post|1921}} As a [[Normal form (abstract rewriting)|normal form]], it is useful in [[automated theorem proving]].&lt;br /&gt;
&lt;br /&gt;
==Definition==&lt;br /&gt;
A logical formula is considered to be in DNF if it is a [[logical disjunction|disjunction]] of one or more [[logical conjunction|conjunctions]] of one or more [[literal (mathematical logic)|literals]].{{sfn|Davey|Priestley|1990|page=153}}{{sfn|Gries|Schneider|1993|page=67}}{{sfn|Whitesitt|2012|pages=33-37}} A DNF formula is in &amp;#039;&amp;#039;&amp;#039;full disjunctive normal form&amp;#039;&amp;#039;&amp;#039; if each of its variables appears exactly once in every conjunction and each conjunction appears at most once (up to the order of variables). As in [[conjunctive normal form]] (CNF), the only propositional operators in DNF are [[logical conjunction|and]] (&amp;lt;math&amp;gt;\wedge&amp;lt;/math&amp;gt;), [[logical disjunction|or]] (&amp;lt;math&amp;gt;\vee&amp;lt;/math&amp;gt;), and [[negation|not]] (&amp;lt;math&amp;gt;\neg&amp;lt;/math&amp;gt;). The &amp;#039;&amp;#039;not&amp;#039;&amp;#039; operator can only be used as part of a literal, which means that it can only precede a [[propositional variable]].&lt;br /&gt;
&lt;br /&gt;
The following is a [[context-free grammar]] for DNF:&lt;br /&gt;
: &amp;#039;&amp;#039;DNF&amp;#039;&amp;#039; &amp;lt;math&amp;gt;\, \to \,&amp;lt;/math&amp;gt; &amp;#039;&amp;#039;Conjunct&amp;#039;&amp;#039; &amp;lt;math&amp;gt;\, \mid \, &amp;lt;/math&amp;gt; &amp;#039;&amp;#039;Conjunct&amp;#039;&amp;#039; &amp;lt;math&amp;gt;\, \lor \,&amp;lt;/math&amp;gt; &amp;#039;&amp;#039;DNF&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;Conjunct&amp;#039;&amp;#039; &amp;lt;math&amp;gt;\, \to \,&amp;lt;/math&amp;gt; &amp;#039;&amp;#039;Literal&amp;#039;&amp;#039; &amp;lt;math&amp;gt;\, \mid\, &amp;lt;/math&amp;gt; &amp;#039;&amp;#039;Literal&amp;#039;&amp;#039; &amp;lt;math&amp;gt;\, \land \,&amp;lt;/math&amp;gt; &amp;#039;&amp;#039;Conjunct&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;Literal&amp;#039;&amp;#039; &amp;lt;math&amp;gt;\, \to \,&amp;lt;/math&amp;gt; &amp;#039;&amp;#039;Variable&amp;#039;&amp;#039; &amp;lt;math&amp;gt;\, \mid \,&amp;lt;/math&amp;gt; &amp;lt;math&amp;gt;\, \neg \,&amp;lt;/math&amp;gt; &amp;#039;&amp;#039;Variable&amp;#039;&amp;#039;&lt;br /&gt;
Where &amp;#039;&amp;#039;Variable&amp;#039;&amp;#039; is any variable.&lt;br /&gt;
&lt;br /&gt;
For example, all of the following formulas are in DNF:&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;math&amp;gt;(A \land \neg B \land \neg C) \lor (\neg D \land E \land F \land D \land F)&amp;lt;/math&amp;gt;&lt;br /&gt;
*&amp;lt;math&amp;gt;(A \land B) \lor (C)&amp;lt;/math&amp;gt;&lt;br /&gt;
*&amp;lt;math&amp;gt;(A \land B)&amp;lt;/math&amp;gt;&lt;br /&gt;
*&amp;lt;math&amp;gt;(A)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The formula &amp;lt;math&amp;gt;A \lor B&amp;lt;/math&amp;gt; is in DNF, but not in full DNF; an equivalent full-DNF version is &amp;lt;math&amp;gt;(A \land B) \lor (A \land \lnot B) \lor (\lnot A \land B)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The following formulas are &amp;#039;&amp;#039;&amp;#039;not&amp;#039;&amp;#039;&amp;#039; in DNF:&lt;br /&gt;
*&amp;lt;math&amp;gt;\neg(A \lor B)&amp;lt;/math&amp;gt;, since an OR is nested within a NOT&lt;br /&gt;
*&amp;lt;math&amp;gt;\neg(A \land B) \lor C&amp;lt;/math&amp;gt;, since an AND is nested within a NOT&lt;br /&gt;
*&amp;lt;math&amp;gt;A \lor (B \land (C \lor D))&amp;lt;/math&amp;gt;, since an OR is nested within an AND&amp;lt;ref&amp;gt;However, this one is in [[negation normal form]].&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Conversion to DNF==&lt;br /&gt;
In [[classical logic]] each propositional formula can be converted to DNF{{sfn|Davey|Priestley|1990|page=152-153}} ...&lt;br /&gt;
[[File:Karnaugh map KV 4mal4 18.svg|thumb|[[Karnaugh map]] of the disjunctive normal form {{color|#800000|(¬&amp;#039;&amp;#039;A&amp;#039;&amp;#039;∧¬&amp;#039;&amp;#039;B&amp;#039;&amp;#039;∧¬&amp;#039;&amp;#039;D&amp;#039;&amp;#039;)}} ∨ {{color|#000080|(¬&amp;#039;&amp;#039;A&amp;#039;&amp;#039;∧&amp;#039;&amp;#039;B&amp;#039;&amp;#039;∧&amp;#039;&amp;#039;C&amp;#039;&amp;#039;)}} ∨ {{color|#008000|(&amp;#039;&amp;#039;A&amp;#039;&amp;#039;∧&amp;#039;&amp;#039;B&amp;#039;&amp;#039;∧&amp;#039;&amp;#039;D&amp;#039;&amp;#039;)}} ∨ {{color|#800080|(&amp;#039;&amp;#039;A&amp;#039;&amp;#039;∧¬&amp;#039;&amp;#039;B&amp;#039;&amp;#039;∧¬&amp;#039;&amp;#039;C&amp;#039;&amp;#039;)}}]]&lt;br /&gt;
[[File:Karnaugh map KV 4mal4 19.svg|thumb|Karnaugh map of the disjunctive normal form {{color|#800080|(¬&amp;#039;&amp;#039;A&amp;#039;&amp;#039;∧&amp;#039;&amp;#039;C&amp;#039;&amp;#039;∧¬&amp;#039;&amp;#039;D&amp;#039;&amp;#039;)}} ∨ {{color|#008000|(&amp;#039;&amp;#039;B&amp;#039;&amp;#039;∧&amp;#039;&amp;#039;C&amp;#039;&amp;#039;∧&amp;#039;&amp;#039;D&amp;#039;&amp;#039;)}} ∨ {{color|#000080|(&amp;#039;&amp;#039;A&amp;#039;&amp;#039;∧¬&amp;#039;&amp;#039;C&amp;#039;&amp;#039;∧&amp;#039;&amp;#039;D&amp;#039;&amp;#039;)}} ∨ {{color|#800000|(¬&amp;#039;&amp;#039;B&amp;#039;&amp;#039;∧¬&amp;#039;&amp;#039;C&amp;#039;&amp;#039;∧¬&amp;#039;&amp;#039;D&amp;#039;&amp;#039;)}}. Despite the different grouping, the same fields contain a &amp;quot;1&amp;quot; as in the previous map.]]&lt;br /&gt;
&lt;br /&gt;
=== ... by syntactic means ===&lt;br /&gt;
The conversion involves using [[logical equivalence]]s, such as [[double negation elimination]], [[De Morgan&amp;#039;s laws]], and the [[Distributive property#Propositional logic|distributive law]]. Formulas built from the [[Functional completeness#Introduction|primitive]] [[Logical connective|connectives]] &amp;lt;math&amp;gt;\{\land,\lor,\lnot\}&amp;lt;/math&amp;gt;&amp;lt;ref&amp;gt;Formulas with other connectives can be brought into [[negation normal form]] first.&amp;lt;/ref&amp;gt; can be converted to DNF by the following [[Abstract rewriting system|canonical term rewriting system]]:{{sfn|Dershowitz|Jouannaud|1990|page=270|loc=Sect.5.1}}&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{array}{rcl}&lt;br /&gt;
(\lnot \lnot x) &amp;amp; \rightsquigarrow &amp;amp; x \\&lt;br /&gt;
(\lnot (x \lor y)) &amp;amp; \rightsquigarrow &amp;amp; ((\lnot x) \land (\lnot y)) \\&lt;br /&gt;
(\lnot (x \land y)) &amp;amp; \rightsquigarrow &amp;amp; ((\lnot x) \lor (\lnot y)) \\&lt;br /&gt;
(x \land (y \lor z)) &amp;amp; \rightsquigarrow &amp;amp; ((x \land y) \lor (x \land z)) \\&lt;br /&gt;
((x \lor y) \land z) &amp;amp; \rightsquigarrow &amp;amp; ((x \land z) \lor (y \land z)) \\&lt;br /&gt;
\end{array}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== ... by semantic means ===&lt;br /&gt;
The full DNF of a formula can be read off its [[truth table]].&amp;lt;ref&amp;gt;{{harvnb|Smullyan|1968|p=14}}: &amp;quot;Make a truth-table for the formula. Each line of the table which comes out &amp;quot;T&amp;quot; will yield one of the basic conjunctions of the disjunctive normal form.&amp;quot;&amp;lt;/ref&amp;gt;{{sfn|Sobolev|2020}} For example, consider the formula&lt;br /&gt;
:&amp;lt;math&amp;gt;\phi = ((\lnot (p \land q)) \leftrightarrow (\lnot r \uparrow (p \oplus q)))&amp;lt;/math&amp;gt;.&amp;lt;ref&amp;gt;&amp;lt;math&amp;gt;\phi&amp;lt;/math&amp;gt; = ((&amp;#039;&amp;#039;&amp;#039;[[Negation|NOT]]&amp;#039;&amp;#039;&amp;#039; (p &amp;#039;&amp;#039;&amp;#039;[[Logical conjunction|AND]]&amp;#039;&amp;#039;&amp;#039; q)) &amp;#039;&amp;#039;&amp;#039;[[If and only if|IFF]]&amp;#039;&amp;#039;&amp;#039; ((&amp;#039;&amp;#039;&amp;#039;[[Negation|NOT]]&amp;#039;&amp;#039;&amp;#039; r) &amp;#039;&amp;#039;&amp;#039;[[Sheffer stroke|NAND]]&amp;#039;&amp;#039;&amp;#039; (p &amp;#039;&amp;#039;&amp;#039;[[XOR]]&amp;#039;&amp;#039;&amp;#039; q)))&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The corresponding [[truth table]] is&lt;br /&gt;
:{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt;&lt;br /&gt;
! &amp;lt;math&amp;gt;q&amp;lt;/math&amp;gt;&lt;br /&gt;
! &amp;lt;math&amp;gt;r&amp;lt;/math&amp;gt;&lt;br /&gt;
! style=&amp;quot;background:black&amp;quot;| &lt;br /&gt;
! &amp;lt;math&amp;gt;(&amp;lt;/math&amp;gt;&lt;br /&gt;
! &amp;lt;math&amp;gt;\lnot&amp;lt;/math&amp;gt;&lt;br /&gt;
! &amp;lt;math&amp;gt;(p \land q)&amp;lt;/math&amp;gt;&lt;br /&gt;
! &amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;&lt;br /&gt;
! &amp;lt;math&amp;gt;\leftrightarrow&amp;lt;/math&amp;gt;&lt;br /&gt;
! &amp;lt;math&amp;gt;(&amp;lt;/math&amp;gt;&lt;br /&gt;
! &amp;lt;math&amp;gt;\lnot r&amp;lt;/math&amp;gt;&lt;br /&gt;
! &amp;lt;math&amp;gt;\uparrow&amp;lt;/math&amp;gt;&lt;br /&gt;
! &amp;lt;math&amp;gt;(p \oplus q)&amp;lt;/math&amp;gt;&lt;br /&gt;
! &amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| T || T || T ||style=&amp;quot;background:black&amp;quot;| || || F || T || || style=&amp;quot;background:papayawhip&amp;quot; | F || || F || T || F ||&lt;br /&gt;
|-&lt;br /&gt;
| T || T || F ||style=&amp;quot;background:black&amp;quot;| || || F || T || || style=&amp;quot;background:papayawhip&amp;quot; | F || || T || T || F ||&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background:lightgreen&amp;quot;|T || style=&amp;quot;background:lightgreen&amp;quot;|F || style=&amp;quot;background:lightgreen&amp;quot;|T ||style=&amp;quot;background:black&amp;quot;| || || T || F || || style=&amp;quot;background:papayawhip&amp;quot; | &amp;#039;&amp;#039;&amp;#039;T&amp;#039;&amp;#039;&amp;#039; || || F || T || T ||&lt;br /&gt;
|-&lt;br /&gt;
| T || F || F ||style=&amp;quot;background:black&amp;quot;| || || T || F || || style=&amp;quot;background:papayawhip&amp;quot; | F || || T || F || T ||&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background:lightgreen&amp;quot;|F || style=&amp;quot;background:lightgreen&amp;quot;|T || style=&amp;quot;background:lightgreen&amp;quot;|T ||style=&amp;quot;background:black&amp;quot;| || || T || F || || style=&amp;quot;background:papayawhip&amp;quot; | &amp;#039;&amp;#039;&amp;#039;T&amp;#039;&amp;#039;&amp;#039; || || F || T || T ||&lt;br /&gt;
|-&lt;br /&gt;
| F || T || F ||style=&amp;quot;background:black&amp;quot;| || || T || F || || style=&amp;quot;background:papayawhip&amp;quot; | F || || T || F || T ||&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background:lightgreen&amp;quot;|F || style=&amp;quot;background:lightgreen&amp;quot;|F || style=&amp;quot;background:lightgreen&amp;quot;|T ||style=&amp;quot;background:black&amp;quot;| || || T || F || || style=&amp;quot;background:papayawhip&amp;quot; | &amp;#039;&amp;#039;&amp;#039;T&amp;#039;&amp;#039;&amp;#039; || || F || T || F ||&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background:lightgreen&amp;quot;|F || style=&amp;quot;background:lightgreen&amp;quot;|F || style=&amp;quot;background:lightgreen&amp;quot;|F ||style=&amp;quot;background:black&amp;quot;| || || T || F || || style=&amp;quot;background:papayawhip&amp;quot; | &amp;#039;&amp;#039;&amp;#039;T&amp;#039;&amp;#039;&amp;#039; || || T || T || F ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* The full DNF equivalent of &amp;lt;math&amp;gt;\phi&amp;lt;/math&amp;gt; is&lt;br /&gt;
:&amp;lt;math&amp;gt;&lt;br /&gt;
(      p \land \lnot q \land       r) \lor&lt;br /&gt;
(\lnot p \land       q \land       r) \lor&lt;br /&gt;
(\lnot p \land \lnot q \land       r) \lor&lt;br /&gt;
(\lnot p \land \lnot q \land \lnot r)&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
* The full DNF equivalent of &amp;lt;math&amp;gt;\lnot \phi&amp;lt;/math&amp;gt; is&lt;br /&gt;
:&amp;lt;math&amp;gt;&lt;br /&gt;
(      p \land       q \land       r) \lor&lt;br /&gt;
(      p \land       q \land \lnot r) \lor&lt;br /&gt;
(      p \land \lnot q \land \lnot r) \lor&lt;br /&gt;
(\lnot p \land       q \land \lnot r)&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Remark ===&lt;br /&gt;
A propositional formula can be represented by one and only one full DNF.{{refn|name=&amp;quot;noreps&amp;quot;|It is assumed that repetitions and variations&amp;lt;ref&amp;gt;like &amp;lt;math&amp;gt;(a \land b) \lor (b \land a) \lor (a \land b \land b)&amp;lt;/math&amp;gt;&amp;lt;/ref&amp;gt; based on the [[Commutative property|commutativity]] and [[Associative property|associativity]] of &amp;lt;math&amp;gt;\lor&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;\land&amp;lt;/math&amp;gt; do not occur.}} In contrast, several &amp;#039;&amp;#039;plain&amp;#039;&amp;#039; DNFs may be possible. For example, by applying the rule &amp;lt;math&amp;gt;((a \land b) \lor (\lnot a \land b)) \rightsquigarrow b&amp;lt;/math&amp;gt; three times, the full DNF of the above &amp;lt;math&amp;gt;\phi&amp;lt;/math&amp;gt; can be simplified to &amp;lt;math&amp;gt;(\lnot p \land \lnot q) \lor (\lnot p \land r) \lor (\lnot q \land r)&amp;lt;/math&amp;gt;. However, there are also equivalent DNF formulas that cannot be transformed one into another by this rule, see the pictures for an example.&lt;br /&gt;
&lt;br /&gt;
==Disjunctive Normal Form Theorem==&lt;br /&gt;
It is a theorem that all consistent formulas in [[Propositional calculus|propositional logic]] can be converted to disjunctive normal form.&amp;lt;ref name=&amp;quot;:0&amp;quot;&amp;gt;{{Cite book |last=Halbeisen |first=Lorenz |title=Gödel´s theorems and zermelo´s axioms: a firm foundation of mathematics |last2=Kraph |first2=Regula |date=2020 |publisher=Birkhäuser |isbn=978-3-030-52279-7 |location=Cham |pages=27}}&amp;lt;/ref&amp;gt;&amp;lt;ref name=&amp;quot;:13&amp;quot; /&amp;gt;&amp;lt;ref name=&amp;quot;:1&amp;quot;&amp;gt;{{Cite book |last=Cenzer |first=Douglas |title=Set theory and foundations of mathematics: an introduction to mathematical logic |last2=Larson |first2=Jean |last3=Porter |first3=Christopher |last4=Zapletal |first4=Jindřich |date=2020 |publisher=World Scientific |isbn=978-981-12-0192-9 |location=New Jersey |pages=19–21}}&amp;lt;/ref&amp;gt;&amp;lt;ref name=&amp;quot;:2&amp;quot;&amp;gt;{{Cite book |last=Halvorson |first=Hans |title=How logic works: a user&amp;#039;s guide |date=2020 |publisher=Princeton University Press |isbn=978-0-691-18222-3 |location=Princeton Oxford |pages=195}}&amp;lt;/ref&amp;gt; This is called the &amp;#039;&amp;#039;&amp;#039;Disjunctive Normal Form Theorem&amp;#039;&amp;#039;&amp;#039;.&amp;lt;ref name=&amp;quot;:0&amp;quot; /&amp;gt;&amp;lt;ref name=&amp;quot;:13&amp;quot; /&amp;gt;&amp;lt;ref name=&amp;quot;:1&amp;quot; /&amp;gt;&amp;lt;ref name=&amp;quot;:2&amp;quot; /&amp;gt; The formal statement is as follows:&amp;lt;blockquote&amp;gt;&amp;#039;&amp;#039;&amp;#039;Disjunctive Normal Form Theorem:&amp;#039;&amp;#039;&amp;#039; Suppose &amp;lt;math&amp;gt;X&amp;lt;/math&amp;gt; is a sentence in a propositional language &amp;lt;math&amp;gt;\mathcal{L}&amp;lt;/math&amp;gt; with &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt; sentence letters, which we shall denote by &amp;lt;math&amp;gt;A_1,...,A_n&amp;lt;/math&amp;gt;. If &amp;lt;math&amp;gt;X&amp;lt;/math&amp;gt; is not a contradiction, then it is truth-functionally equivalent to a disjunction of conjunctions of the form &amp;lt;math&amp;gt;\pm A_1 \land ... \land \pm A_n&amp;lt;/math&amp;gt;, where &amp;lt;math&amp;gt;+A_i=A_i&amp;lt;/math&amp;gt;, and &amp;lt;math&amp;gt;-A_i= \neg A_i&amp;lt;/math&amp;gt;.&amp;lt;ref name=&amp;quot;:13&amp;quot;&amp;gt;{{Cite book |last=Howson |first=Colin |title=Logic with trees: an introduction to symbolic logic |date=1997 |publisher=Routledge |isbn=978-0-415-13342-5 |location=London; New York |pages=41}}&amp;lt;/ref&amp;gt;&amp;lt;/blockquote&amp;gt;The proof follows from the procedure given above for generating DNFs from [[truth table]]s. Formally, the proof is as follows:&amp;lt;blockquote&amp;gt;Suppose &amp;lt;math&amp;gt;X&amp;lt;/math&amp;gt; is a sentence in a propositional language whose sentence letters are &amp;lt;math&amp;gt;A, B, C, \ldots&amp;lt;/math&amp;gt;. For each row of &amp;lt;math&amp;gt;X&amp;lt;/math&amp;gt;&amp;#039;s truth table, write out a corresponding [[Logical conjunction|conjunction]] &amp;lt;math&amp;gt;\pm A \land \pm B \land \pm C \land \ldots&amp;lt;/math&amp;gt;, where &amp;lt;math&amp;gt;\pm A&amp;lt;/math&amp;gt; is defined to be &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; if &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; takes the value &amp;lt;math&amp;gt;T&amp;lt;/math&amp;gt; at that row, and is &amp;lt;math&amp;gt;\neg A&amp;lt;/math&amp;gt; if &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; takes the value &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; at that row; similarly for &amp;lt;math&amp;gt;\pm B&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;\pm C&amp;lt;/math&amp;gt;, etc. (the [[alphabetical order]]ing of &amp;lt;math&amp;gt;A, B, C, \ldots&amp;lt;/math&amp;gt; in the conjunctions is quite arbitrary; any other could be chosen instead). Now form the [[Logical disjunction|disjunction]] of all these conjunctions which correspond to &amp;lt;math&amp;gt;T&amp;lt;/math&amp;gt; rows of &amp;lt;math&amp;gt;X&amp;lt;/math&amp;gt;&amp;#039;s truth table. This disjunction is a sentence in &amp;lt;math&amp;gt;\mathcal{L}[A, B, C, \ldots; \land, \lor, \neg]&amp;lt;/math&amp;gt;,&amp;lt;ref&amp;gt;That is, the language with the propositional variables &amp;lt;math&amp;gt;A, B, C, \ldots&amp;lt;/math&amp;gt; and the connectives &amp;lt;math&amp;gt;\{\land, \lor, \neg\}&amp;lt;/math&amp;gt;.&amp;lt;/ref&amp;gt; which by the reasoning above is truth-functionally equivalent to &amp;lt;math&amp;gt;X&amp;lt;/math&amp;gt;. This construction obviously presupposes that &amp;lt;math&amp;gt;X&amp;lt;/math&amp;gt; takes the value &amp;lt;math&amp;gt;T&amp;lt;/math&amp;gt; on at least one row of its truth table; if &amp;lt;math&amp;gt;X&amp;lt;/math&amp;gt; doesn’t, i.e., if &amp;lt;math&amp;gt;X&amp;lt;/math&amp;gt; is a [[contradiction]], then &amp;lt;math&amp;gt;X&amp;lt;/math&amp;gt; is equivalent to &amp;lt;math&amp;gt;A \land \neg A&amp;lt;/math&amp;gt;, which is, of course, also a sentence in &amp;lt;math&amp;gt;\mathcal{L}[A, B, C, \ldots; \land, \lor, \neg]&amp;lt;/math&amp;gt;.&amp;lt;ref name=&amp;quot;:13&amp;quot; /&amp;gt;&amp;lt;/blockquote&amp;gt;This theorem is a convenient way to derive many useful [[metalogic]]al results in propositional logic, such as, [[Triviality (mathematics)|trivially]], the result that the set of connectives &amp;lt;math&amp;gt;\{\land, \lor, \neg\}&amp;lt;/math&amp;gt; is [[Functional completeness|functionally complete]].&amp;lt;ref name=&amp;quot;:13&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Maximum number of conjunctions ==&lt;br /&gt;
&amp;lt;span id=&amp;quot;max_conjunctions&amp;quot;&amp;gt; &amp;lt;!-- is anker: do not delete --&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
Any propositional formula is built from &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt; variables, where &amp;lt;math&amp;gt;n \ge 1&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
There are &amp;lt;math&amp;gt;2n&amp;lt;/math&amp;gt; possible literals: &amp;lt;math&amp;gt;L = \{ p_1, \lnot p_1, p_2, \lnot p_2, \ldots, p_n, \lnot p_n\}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;L&amp;lt;/math&amp;gt; has &amp;lt;math&amp;gt;(2^{2n} -1)&amp;lt;/math&amp;gt; non-empty subsets.&amp;lt;ref&amp;gt;&amp;lt;math&amp;gt;\left|\mathcal{P}(L)\right| = 2^{2n}&amp;lt;/math&amp;gt;&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This is the maximum number of conjunctions a DNF can have.&amp;lt;ref name=&amp;quot;noreps&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A full DNF can have up to &amp;lt;math&amp;gt;2^{n}&amp;lt;/math&amp;gt; conjunctions, one for each row of the truth table.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Example 1&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Consider a formula with two variables &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;q&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The longest possible DNF has &amp;lt;math&amp;gt;2^{(2 \times 2)} -1 = 15&amp;lt;/math&amp;gt; conjunctions:&amp;lt;ref name= &amp;quot;noreps&amp;quot; /&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt; &lt;br /&gt;
\begin{array}{lcl}&lt;br /&gt;
(\lnot p) \lor (p) \lor (\lnot q) \lor (q) \lor \\&lt;br /&gt;
(\lnot p \land       p) \lor&lt;br /&gt;
\underline{(\lnot p \land \lnot q)} \lor&lt;br /&gt;
\underline{(\lnot p \land       q)} \lor&lt;br /&gt;
\underline{(      p \land \lnot q)} \lor&lt;br /&gt;
\underline{(      p \land       q)} \lor&lt;br /&gt;
(\lnot q \land       q) \lor \\&lt;br /&gt;
(\lnot p \land       p \land \lnot q) \lor	&lt;br /&gt;
(\lnot p \land       p \land       q) \lor	&lt;br /&gt;
(\lnot p \land \lnot q \land       q) \lor	&lt;br /&gt;
(      p \land \lnot q \land       q) \lor \\&lt;br /&gt;
(\lnot p \land       p \land \lnot q \land q)&lt;br /&gt;
\end{array}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The longest possible full DNF has 4 conjunctions: they are underlined.&lt;br /&gt;
&lt;br /&gt;
This formula is a [[Tautology (logic)|tautology]]. It can be simplified to &amp;lt;math&amp;gt;(\neg p \lor p)&amp;lt;/math&amp;gt; or to &amp;lt;math&amp;gt;(\neg q \lor q)&amp;lt;/math&amp;gt;, which are also tautologies, as well as valid DNFs.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Example 2&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Each DNF of the e.g. formula &amp;lt;math&amp;gt;(X_1 \lor Y_1) \land (X_2 \lor Y_2) \land \dots \land (X_n \lor Y_n)&amp;lt;/math&amp;gt; has &amp;lt;math&amp;gt;2^n&amp;lt;/math&amp;gt; conjunctions.&lt;br /&gt;
&lt;br /&gt;
==Computational complexity==&lt;br /&gt;
The [[Boolean satisfiability problem]] on [[conjunctive normal form]] formulas is [[NP-completeness#Boolean satisfiability problem|NP-complete]]. By the [[duality principle (Boolean algebra)|duality principle]], so is the falsifiability problem on DNF formulas. Therefore, it is [[co-NP-hard]] to decide if a DNF formula is a [[Tautology (logic)|tautology]].&lt;br /&gt;
&lt;br /&gt;
Conversely, a DNF formula is satisfiable if, and only if, one of its conjunctions is satisfiable. This can be decided in [[P (complexity)|polynomial time]] simply by checking that at least one conjunction does not contain conflicting literals.&lt;br /&gt;
&lt;br /&gt;
==Variants==&lt;br /&gt;
An important variation used in the study of [[Analysis of algorithms|computational complexity]] is &amp;#039;&amp;#039;k-DNF&amp;#039;&amp;#039;. A formula is in &amp;#039;&amp;#039;k-DNF&amp;#039;&amp;#039; if it is in DNF and each conjunction contains at most k literals.{{sfn|Arora|Barak|2009}}&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
* [[Algebraic normal form]] – an XOR of AND clauses&lt;br /&gt;
* [[Blake canonical form]] – DNF including all prime implicants&lt;br /&gt;
** [[Quine–McCluskey algorithm]] – algorithm for calculating prime implicants&lt;br /&gt;
* [[Conjunction/disjunction duality]]&lt;br /&gt;
* [[Propositional logic]]&lt;br /&gt;
* [[Truth table]]&lt;br /&gt;
&lt;br /&gt;
==Notes==&lt;br /&gt;
{{reflist}}&lt;br /&gt;
&lt;br /&gt;
==References==&lt;br /&gt;
{{sfn whitelist |CITEREFSobolev2020}}&lt;br /&gt;
*{{cite book|last1=Arora | first1=Sanjeev |author1-link=Sanjeev Arora|last2=Barak|first2= Boaz |author2-link=Boaz Barak| title=Computational Complexity: A Modern Approach | publisher=[[Cambridge University Press]]|date=20 April 2009|pages=579|isbn=9780521424264|doi=10.1017/CBO9780511804090}}&lt;br /&gt;
*{{cite book|last1=Davey | first1=B.A.|last2=Priestley |first2= H.A. | title=Introduction to Lattices and Order |title-link= Introduction to Lattices and Order | publisher=Cambridge University Press | series=Cambridge Mathematical Textbooks | year=1990 }}&lt;br /&gt;
*{{cite book | isbn=0-444-88074-7 | editor-first=Jan |editor-last= Van Leeuwen | editor-link=Jan van Leeuwen | title=Formal Models and Semantics | publisher=[[Elsevier]] | series=Handbook of Theoretical Computer Science | volume=B | year=1990 | first1=Nachum |last1=Dershowitz |author1-link=Nachum Dershowitz |first2= Jean-Pierre |last2=Jouannaud |author2-link= Jean-Pierre Jouannaud | contribution=Rewrite Systems | pages=243&amp;amp;ndash;320 }}&lt;br /&gt;
*{{cite book|first1=David |last1=Gries|first2=Fred B. |last2=Schneider|title=A Logical Approach to Discrete Math|url=https://books.google.com/books?id=ZWTDQ6H6gsUC&amp;amp;q=%22disjunctive+normal+form%22&amp;amp;pg=PA67|date=22 October 1993|publisher=Springer Science &amp;amp; Business Media|isbn=978-0-387-94115-8}}&lt;br /&gt;
*{{cite book|last1= Hilbert|first1=David|author1-link=David Hilbert|last2= Ackermann|first2=Wilhelm |author2-link=Wilhelm Ackermann|title=Principles of Mathematical Logic|url=https://books.google.com/books?id=45ZGMjV9vfcC&amp;amp;q=%22disjunctive+normal+form%22|year=1999|publisher=American Mathematical Soc.|isbn=978-0-8218-2024-7}}&lt;br /&gt;
*{{cite book|last=Howson|first=Colin|author-link=Colin Howson|title=Logic with trees: an introduction to symbolic logic|url=https://books.google.com/books?id=Y4WGAgAAQBAJ&amp;amp;q=%22disjunctive+normal+form%22|date=11 October 2005|orig-date=1997|publisher=Routledge|isbn=978-1-134-78550-6}}&lt;br /&gt;
*{{Cite journal|last=Post|first=Emil|author-link=Emil Post|title=Introduction to a General Theory of Elementary Propositions|date=July 1921|volume=43|issue=3|pages= 163–185| journal=[[American Journal of Mathematics]]|doi=10.2307/2370324|jstor=2370324}}&lt;br /&gt;
*{{Cite book|last=Smullyan|first=Raymond M.|author-link=Raymond Smullyan |title=First-Order Logic|year=1968|edition=1st edition, Second Printing 1971 |publisher=[[Springer Science+Business Media|Springer-Verlag]]|pages=160|location=New York Heidelberg Berlin|doi=10.1007/978-3-642-86718-7|isbn= 978-3-642-86718-7|series= Ergebnisse der Mathematik und ihrer Grenzgebiete|volume=43}}&lt;br /&gt;
* {{SpringerEOM|title=Disjunctive normal form|author-last1=Sobolev|author-first1=S.K.|oldid=54535|date=2020}}&lt;br /&gt;
*{{cite book|first=J. Eldon |last=Whitesitt|title=Boolean Algebra and Its Applications|url=https://books.google.com/books?id=20Un1T78GlMC&amp;amp;q=%22disjunctive+normal+form%22|date=24 May 2012|orig-year=1961|publisher=Courier Corporation|isbn=978-0-486-15816-7}}&lt;br /&gt;
&lt;br /&gt;
{{Normal forms in logic}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Normal forms (logic)]]&lt;br /&gt;
[[Category:Knowledge compilation]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Marc Schroeder</name></author>
	</entry>
</feed>