Extracting the Resolution Algorithm from a Completeness Proof for the Propositional Calculus
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.
KeywordsPropositional Calculus Completeness Proof Conjunctive Normal Form Propositional Formula Completeness Theorem
Unable to display preview. Download preview PDF.
- 4.R., H., Lewis, C.H.P.: Elements of the Theory of Computation. Prentice-Hall, Englewood Cliffs (1994)Google Scholar
- 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.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
- 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