Interaction with the Boyer-Moore theorem prover: A tutorial study using the arithmetic-geometric mean theorem

There are many papers describing problems solved using the Boyer-Moore theorem prover, as well as papers describing new tools and functionalities added to it. Unfortunately, so far there has been no tutorial paper describing typical interactions that a user has with this system when trying to solve a nontrivial problem, including a discussion of issues that arise in these situations. In this paper we aim to fill this gap by illustrating how we have proved an interesting theorem with the Boyer-Moore theorem prover: a formalization of the assertion that the arithmetic mean of a sequence of natural numbers is greater than or equal to their geometric mean. We hope that this report will be of value not only for (non-expert) users of this system, who can learn some approaches (and tricks) to use when proving theorems with it, but also for implementors of automated deduction systems. Perhaps our main point is that, at least in the case of Nqthm, the user can interact with the system without knowing much about how it works inside. This perspective suggests the development of theorem provers that allow interaction that is user oriented and not system developer oriented.

[1]  David Basin,et al.  The Boyer-Moore Prover and Nuprl: an experimental comparison , 1991 .

[2]  J. Strother Moore,et al.  An approach to systems verification , 1989, Journal of Automated Reasoning.

[3]  Robert S. Boyer,et al.  Metafunctions: Proving Them Correct and Using Them Efficiently as New Proof Procedures. , 1979 .

[4]  Matt Kaufmann,et al.  Generalization in the presence of free variables: A mechanically-checked correctness proof for one algorithm , 1991, Journal of Automated Reasoning.

[5]  Laurence Pierre,et al.  Formal verification of VHDL descriptions in the Prevail environment , 1992, IEEE Design & Test of Computers.

[6]  Matt Kaufmann,et al.  An extension of the Boyer-Moore Theorem Prover to support first-order quantification , 1992, Journal of Automated Reasoning.

[7]  Matt Kaufmann Addition of Free Variables to the PC-NQTHM Interactive Enhancement of the Boyer-Moore Theorem Prover , 1989 .

[8]  Matt Kaufmann An Interactive Enhancement to the Boyer-Moore Theorem Prover , 1988, CADE.

[9]  Robert S. Boyer,et al.  A computational logic handbook , 1979, Perspectives in computing.

[10]  Matt Kaufmann An Example in Nqthm: Ramsey's Theorem , 1992 .

[11]  Robert S. Boyer,et al.  The Boyer-Moore theorem prover and its interactive enhancement , 1995 .

[12]  Robert S. Boyer,et al.  Computational Logic , 1990, ESPRIT Basic Research Series.

[13]  Donald I. Good,et al.  Mathematical Methods for Digital Systems Development , 1991, VDM Europe.