Summary
In mathematical logic, a formula is in negation normal form (NNF) if the negation operator (, ) is only applied to variables and the only other allowed Boolean operators are conjunction (, ) and disjunction (, ). Negation normal form is not a canonical form: for example, and are equivalent, and are both in negation normal form. In classical logic and many modal logics, every formula can be brought into this form by replacing implications and equivalences by their definitions, using De Morgan's laws to push negation inwards, and eliminating double negations. This process can be represented using the following rewrite rules (Handbook of Automated Reasoning 1, p. 204): (In these rules, the symbol indicates logical implication in the formula being rewritten, and is the rewriting operation.) Transformation into negation normal form can increase the size of a formula only linearly: the number of occurrences of atomic formulas remains the same, the total number of occurrences of and is unchanged, and the number of occurrences of in the normal form is bounded by the length of the original formula. A formula in negation normal form can be put into the stronger conjunctive normal form or disjunctive normal form by applying distributivity. Repeated application of distributivity may exponentially increase the size of a formula. In the classical propositional logic, transformation to negation normal form does not impact computational properties: the satisfiability problem continues to be NP-complete, and the validity problem continues to be co-NP-complete. For formulas in conjunctive normal form, the validity problem is solvable in polynomial time, and for formulas in disjunctive normal form, the satisfiability problem is solvable in polynomial time. The following formulae are all in negation normal form: The first example is also in conjunctive normal form and the last two are in both conjunctive normal form and disjunctive normal form, but the second example is in neither. The following formulae are not in negation normal f
About this result
This page is automatically generated and may contain information that is not correct, complete, up-to-date, or relevant to your search query. The same applies to every other page on this website. Please make sure to verify the information with EPFL's official sources.
Related concepts (3)
Boolean function
In mathematics, a Boolean function is a function whose arguments and result assume values from a two-element set (usually {true, false}, {0,1} or {-1,1}). Alternative names are switching function, used especially in older computer science literature, and truth function (or logical function), used in logic. Boolean functions are the subject of Boolean algebra and switching theory. A Boolean function takes the form , where is known as the Boolean domain and is a non-negative integer called the arity of the function.
Boolean algebra
In mathematics and mathematical logic, Boolean algebra is a branch of algebra. It differs from elementary algebra in two ways. First, the values of the variables are the truth values true and false, usually denoted 1 and 0, whereas in elementary algebra the values of the variables are numbers. Second, Boolean algebra uses logical operators such as conjunction (and) denoted as ∧, disjunction (or) denoted as ∨, and the negation (not) denoted as ¬.
Negation normal form
In mathematical logic, a formula is in negation normal form (NNF) if the negation operator (, ) is only applied to variables and the only other allowed Boolean operators are conjunction (, ) and disjunction (, ). Negation normal form is not a canonical form: for example, and are equivalent, and are both in negation normal form. In classical logic and many modal logics, every formula can be brought into this form by replacing implications and equivalences by their definitions, using De Morgan's laws to push negation inwards, and eliminating double negations.
Related courses (2)
PHYS-512: Statistical physics of computation
This course covers the statistical physics approach to computer science problems ranging from graph theory and constraint satisfaction to inference and machine learning. In particular the replica and
CS-101: Advanced information, computation, communication I
Discrete mathematics is a discipline with applications to almost all areas of study. It provides a set of indispensable tools to computer science in particular. This course reviews (familiar) topics a
Related lectures (7)
Graphical Models: Representing Probabilistic Distributions
Covers graphical models for probabilistic distributions using graphs, nodes, and edges.
Boolean Optimization: MIGs and Majority Gates
Explores Boolean function optimization using Majority-Inverter Graphs and Majority Gates, including algebraic rules and exact synthesis.
Propositional Logic: Normal Forms and Applications
Explores Disjunctive Normal Form and Conjunctive Normal Form in propositional logic, their applications, and complexity, with practical examples.
Show more