Extracting the Resolution Algorithm from a Completeness Proof for the Propositional Calculus

  • Robert Constable
  • Wojciech Moczydłowski
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4514)


We prove constructively that for any propositional formula φ in Conjunctive Normal Form, we can either find a satisfying assignment of true and false to its variables, or a refutation of φ showing that it is unsatisfiable. This refutation is a resolution proof of ¬φ. From the formalization of our proof in Coq, we extract Robinson’s famous resolution algorithm as a Haskell program correct by construction. The account is an example of the genre of highly readable formalized mathematics.


Propositional Calculus Completeness Proof Conjunctive Normal Form Propositional Formula Completeness Theorem 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Gallier, J.H.: The completeness of propositional resolution: A simple and constructive proof. Logical Methods in Computer Science 2(5), 1–7 (2006)CrossRefMathSciNetGoogle Scholar
  2. 2.
    Chang, C.C., Keisler, H.J.: Model Theory. Studies in Logic and the Foundations of Mathematics, vol. 73. North-Holland, Amsterdam (1973)MATHGoogle Scholar
  3. 3.
    Robinson, J.A.: A machine oriented logic based on the resolution principle. Journal of the Association of Computing Machinery 12, 23–41 (1965)MATHGoogle Scholar
  4. 4.
    R., H., Lewis, C.H.P.: Elements of the Theory of Computation. Prentice-Hall, Englewood Cliffs (1994)Google Scholar
  5. 5.
    Gallier, J.H.: Logic for Computer Science, Foundations of Automatic Theorem Proving. Harper and Row, New York (1986)MATHGoogle Scholar
  6. 6.
    Constable, R.L., Allen, S.F., Bromley, H.M., Cleaveland, W.R., Cremer, J.F., Harper, R.W., Howe, D.J., Knoblock, T.B., Mendler, N.P., Panangaden, P., Sasaki, J.T., Smith, S.F.: Implementing Mathematics with the Nuprl Proof Development System. Prentice-Hall, Englewood Cliffs (1986)Google Scholar
  7. 7.
    Constable, R.L., Howe, D.J.: Implementing metamathematics as an approach to automatic theorem proving. In: Banerji, R.B. (ed.) Formal Techniques in Artificial Intelligence: A Source Book, pp. 45–76. Elsevier, Amsterdam (1990)Google Scholar
  8. 8.
    Constable, R.L., Moczydłowski, W.: Extracting programs from constructive HOL proofs via IZF set-theoretic semantics. In: Furbach, U., Shankar, N. (eds.) IJCAR 2006. LNCS (LNAI), vol. 4130, pp. 162–176. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  9. 9.
    Underwood, J.L.: The tableau algorithm for intuitionistic propositional calculus as a constructive completeness proof. In: Proceedings of the Workshop on Theorem Proving with Analytic Tableaux, Marseille, France, pp. 245–248 (1993), Available as Technical Report MPI-I-93-213, Max-Planck-Institut für Informatik, Saarbrücken, GermanyGoogle Scholar

Copyright information

© Springer Berlin Heidelberg 2007

Authors and Affiliations

  • Robert Constable
    • 1
  • Wojciech Moczydłowski
    • 1
  1. 1.Department of Computer Science, Cornell University, Ithaca, NY 14853USA

Personalised recommendations