© 1985 by British Computer Society
| ||||||||||||||||||||||||||||||||||||||||||||||||||
Lessons learned from LCF: A Survey of Natural Deduction Proofs*

Computer Laboratory, Corn Exchange Street, Cambridge, CB2 3QG, UK
The LCF project has produced a family of interactive, programmable theorem-provers, particularly intended for verifying computer hardware and software. The introduction sketches basic concepts: the metalanguage ML, the logic PPLAMBDA, backwards proof, rewriting, and theory construction. A historical section surveys some LCF proofs. Several proofs involve denotational semantics, notably for compiler correctness. Functional programs for parsing and unification have been verified. Digital circuits have been proved correct, and some subsequently fabricated.
There is an extensive bibliography of work related to LCF. The most dynamic issues at present are data types, subgoaling techniques, logics of computation, and the development of ML.
* An early version of this paper will appear in Workshop on Formal Software Development: Combining Specification Methods, edited by D.Bjørner, Springer (1985).
Computer Laboratory, Corn Exchange Street, Cambridge, CB2 3QG