Definition

Disjunctive Clause ^definition-disjunctive-clause

A disjunctive clause, , is of the form:

  • is a literal, it can either be an atom () or its negation ()

Conjunctive Normal Form ^definition-cnf

A formula is in conjunctive normal form iff it can be expressed as:

where is a disjunctive clause. Hence, a formula is in CNF if it can be expressed as a conjunction of disjunctive clauses

Clausal Form ^definition-cf

CNF can also be expressed as a multiset, known as its clausal form

  • Each set represents a disjunctive phrase : means
    • Disjunctive phrases with one literal are singletons : means
    • An empty set inside the multiset evaluates to false: means
  • Each element in the set is a literal

Because a literal can only be an atom or its negation, for atoms, we have a maximum of literals. There are possible subsets for a set with elements. The longest clausal form of atoms would be a multiset consisting of all its subsets. However, we cannot include an empty subset.

Hence, we have such phrases in the longest possible clause.

For example:

  • One atom (): The longest CF we can create is which has phrases.
  • Two atoms ( and ): Has phrases

Converting to CNF

Propositional Logic

In propositional logic, to convert to CNF, we first need to convert to Negation Normal Form (NNF):

  1. First convert to NNF:

Converting to NNF

  1. Use distributivity: 4. Distributivity:

It also helps to remove duplicates, tautologies and subsumptions#todo

Predicate Logic

In predicate logic, we still need to obtain a NNF by the same method, but we need to do some additional steps before we can distribute:

  1. First, convert to NNF
  2. Apply a proper renaming to any shadowed variables Shadowing
  3. Apply a proper renaming such that no two variables in different scopes have the same name.
  4. Eliminate any existential quantifiers via Skolemization
  5. ‘Hide’ all universally quantifiers (they are still present, just not shown!)
  6. Convert to CNF by distributing, same as for propositional: 4. Distributivity:

Theorems

Note that this is not true for predicate logic!

T2: Every unsatisfiable of conjunctives clauses has a refutation

Let be a set of conjunctive clauses.

Examples

Propositional Logic

#todo