[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
article
Free access

A mechanical proof of the Church-Rosser theorem

Published: 01 June 1988 Publication History

Abstract

The Church-Rosser theorem is a celebrated metamathematical result on the lambda calculus. We describe a formalization and proof of the Church-Rosser theorem that was carried out with the Boyer-Moore theorem prover. The proof presented in this paper is based on that of Tait and Martin-Löf. The mechanical proof illustrates the effective use of the Boyer-Moore theorem prover in proof checking difficult metamathematical proofs.

References

[1]
BARENDREGT, H.P. The Lambda Calculus. North Holland, Amsterdam, 1980.
[2]
BOYER, R. S., AND MOORE, J.S. A Computational Logic. Academic Press, Orlando, Fla., 1979.
[3]
BOYER, R. S., AND MOORE, J.S. Metafunctions: Proving them correct and using them efficiently as new proof procedures. In The Correctness Problem in Computer Science. R. S. Boyer and J. S. Moore, Eds. Academic Press. Orlando, Fla., 198 l, pp. 103-184.
[4]
CHURCH, A. The Calculi of Lambda Conversion. Princeton University Press, Princeton, N. J., 1941.
[5]
CHURCH, A., AND ROSSER, J.B. Some properties of conversion. Trans. Am. Math. Soc. 39 (I 936) 472-482.
[6]
CONSTABLE, R. L., KNOBLOCK, T. B., AND BATES, J.L. Writing programs that construct proofs. J. Aurora. Reasoning 1, 3 (1985), 285-326.
[7]
DE BRUIJN, N. G. Lambda calculus notation with nameless dummies, a tool for automatic formula manipulation, with application to the Church-Rosser theorem, lndag. Math. 34, 5 (1972), 381-392.
[8]
DE BRUIJN, N. G. A Survey of the Project AUTOMATH. In Essays on Combinatory Logic, Lambda Calculus and Formalism. J. P. Seldin and J. R. Hindley, Eds. Academic Press, Orlando, Fla., 1980, pp. 589-606.
[9]
HINDLEY, J. R., LERCHER, B., AND SELDIN, J.P. Introduction to Combinatory Logic. Cambridge University Press, London, 1972.
[10]
HINDLEY, J. R., AND SELDIN, J. P. Introduction to Combinators and h-Calculus. Cambridge University Press, London, 1986.
[11]
MCCARTHY, j., ABRAHAMS, P. W., EDWARDS, D. J., HART, T. P., AND LEVIN, M.I. The LISP 1.5 Programmers Manual. MIT Press, Cambridge, Mass., 1962.
[12]
ROSSER, J.B. Highlights of the history oflambda-calculus. In Conference Record of the 1982 ACM Symposium on LISP and Functional Programming (Pittsburgh, Pa., Aug. 15-18). ACM, New York, 1982, pp. 216-225.
[13]
SHANKAR, N. Towards mechanical metamathematics. Tech. Rep. 43. Institute for Computing Science, Univ. of Texas, Austin, Tex., 1984.
[14]
SHANKAR, N. Proof-checking metamathematics. Ph.D. dissertation, Dept. of Computer Science, Univ. of Texas, Austin, Tex., 1986.
[15]
STENLUND, S. Combinators, ~-Terms, and Proof Theory. Reidel, Dordrecht, The Netherlands, 1972.
[16]
WHITEHEAD, A.N. An Introduction to Mathematics. Oxford University Press, New York, 1958.

Cited By

View all

Recommendations

Reviews

Doris C. Appleby

The Church-Rosser (CR) theorem, which dates from 1936, implies the consistency of Churchs lambda calculus, a formalization of function theory. In Shankars notation, X :2WZ Y if X and Y are lambda terms (functions of a single variable) and X can be reduced to Y through repeated use of the transformation rules. Shankar then states the CR theorem as “If X :2WZ Y and X :2WZ Z, then there exists a W such that Y :2WZ W and Z :2WZ W.” Because of the shape of a diagram representing the CR theorem, this relationship between X, Y, Z, and W is called the diamond property. Since the original proof of the CR theorem was inelegant and complicated, over thirty years were devoted to alternate methods. In 1972, Martin-Lo¨f published a much simplified proof based on lectures by W. Tait. This proof was later mechanized by deBruijn using the AUTOMATH proof-checking system. The Boyer-Moore theorem prover (BMTP) is closely related to the notation of the LISP programming language, which is itself based on the lambda calculus. Most theorems cannot be proved directly using the BMTP and must be structured through a series of lemmas, which are submitted to and verified by the BMTP, saved, and then used in the main proof. The BMTP is experimental and is continually being tested and improved. This paper presents a proof of the CR theorem that is based on the Martin-Lo¨fTait proof and is similar to the work of deBruijn. Shankar formalizes transformation rules using a process called a “walk,” which reduces term X to term Y through a series of steps, each of which preserves the diamond property. The proof is structured in five steps: (1)a formalization of the lambda calculus; (2)verification of the diamond property for walks following the deBruijn notation; (3)the Church-Rosser theorem; (4)proving that a reduction is the transitive closure of a walk for particular terms; and (5)translation back and forth between the standard lambda notation (recognized by the BMTP) and the deBruijn notation, which eliminates renaming of variables and thus simplifies the proof of the CR theorem. Although he presents no new results, Shankar claims that the proof tells us a great deal about the BMTP. Some of the complex lemmas are easier to convey to the BMTP than to express in English, counterexamples to failed theses are automatically generated, and proofs involving recursion or induction are accomplished in a particularly straightforward manner. This is a well-written paper that should be accessible to advanced undergraduates. It might be a good start for a student interested in formal methods of program verification. The complete code as presented to the BMTP is included in a fourteen-page appendix.

Access critical reviews of Computing literature here

Become a reviewer for Computing Reviews.

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image Journal of the ACM
Journal of the ACM  Volume 35, Issue 3
July 1988
280 pages
ISSN:0004-5411
EISSN:1557-735X
DOI:10.1145/44483
Issue’s Table of Contents

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 June 1988
Published in JACM Volume 35, Issue 3

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)84
  • Downloads (Last 6 weeks)8
Reflects downloads up to 12 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2024)More Church-Rosser Proofs in BELUGAElectronic Proceedings in Theoretical Computer Science10.4204/EPTCS.402.6402(34-42)Online publication date: 23-Apr-2024
  • (2013) Viewing -terms through maps Indagationes Mathematicae10.1016/j.indag.2013.08.00324:4(1073-1104)Online publication date: Nov-2013
  • (2012)Proof Pearl: Abella Formalization of λ-Calculus Cube PropertyCertified Programs and Proofs10.1007/978-3-642-35308-6_15(173-187)Online publication date: 13-Dec-2012
  • (2011)The Mechanical Verification of a DPLL-Based Satisfiability SolverElectronic Notes in Theoretical Computer Science (ENTCS)10.5555/2952797.2952916269:C(3-17)Online publication date: 22-Apr-2011
  • (2011)The Mechanical Verification of a DPLL-Based Satisfiability SolverElectronic Notes in Theoretical Computer Science10.1016/j.entcs.2011.03.002269(3-17)Online publication date: Apr-2011
  • (2011)A Solution to the PoplMark Challenge Based on de Bruijn IndicesJournal of Automated Reasoning10.1007/s10817-011-9230-549:3(327-362)Online publication date: 4-Jun-2011
  • (2010)A Formalization of the Knuth---Bendix(---Huet) Critical Pair TheoremJournal of Automated Reasoning10.1007/s10817-010-9165-245:3(301-325)Online publication date: 1-Oct-2010
  • (2009)BooksArtificial Intelligence for Engineering, Design, Analysis and Manufacturing10.1017/S08900604000011653:02(137)Online publication date: 27-Feb-2009
  • (2008)Engineering formal metatheoryACM SIGPLAN Notices10.1145/1328897.132844343:1(3-15)Online publication date: 7-Jan-2008
  • (2008)Engineering formal metatheoryProceedings of the 35th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages10.1145/1328438.1328443(3-15)Online publication date: 7-Jan-2008
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Full Access

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media