Davis-Putnam algorithm

From Wikipedia, the free encyclopedia

The Davis-Putnam algorithm was developed by Martin Davis and Hilary Putnam for checking the satisfiability of propositional logic formulae in conjunctive normal form, i.e., sets of clauses. It is a form of resolution in which variables are iteratively chosen and removed by resolving every clause in which the variable is contained positively with any clause in which the variable is negated.

The algorithm works as follows:

  • for every variable in the formula
    • for every clause c containing the variable and every clause n containing the negation of the variable
      • resolve c and n and add the resolvent to the formula
    • remove all original clauses containing the variable or its negation

The name Davis–Putnam algorithm or DP algorithm is sometimes incorrectly used to refer to the related but distinct DPLL algorithm.

[edit] References

  • R. Dechter and I. Rish. Directional resolution: The Davis-Putnam procedure, revisited. In Proceedings of the Fourth International Conference on the Principles of Knowledge Representation and Reasoning (KR'94), pages 134–145, 1994.
In other languages