ACL2 is the latest inception of the Boyer-Moore theorem prover, the 2005 recipient of the ACM Software System Award. In the hands of an expert, it feels like a finely tuned race car, and it has been used to prove some of the most complex theorems ever proved about commercially designed systems. Unfortunately, ACL2 has a steep learning curve, and novices tend have a very different experience: they crash and burn. As part of a project to make ACL2 and formal reasoning accessible to the masses, we have developed ACL2s, the ACL2 sedan. ACL2s streamlines the learning process with features not previously available for ACL2. Our goal is to develop a tool that is "self-teaching," i.e., it should be possible for an undergraduate to sit down and play with it and learn how to program in ACL2 and how to reason about the programs she writes. The latest version of ACL2s is a significant step in that direction.
[1]
Panagiotis Manolios,et al.
ACL2s: "The ACL2 Sedan"
,
2007,
29th International Conference on Software Engineering (ICSE'07 Companion).
[2]
Yves Bertot,et al.
A Generic Approach to Building User Interfaces for Theorem Provers
,
1998,
J. Symb. Comput..
[3]
Robert S. Boyer,et al.
A computational logic handbook
,
1979,
Perspectives in computing.
[4]
Christoph Lüth,et al.
Proof General / Eclipse: A Generic Interface for Interactive Proof
,
2005,
IJCAI.
[5]
Alan Bundy,et al.
Constructing Induction Rules for Deductive Synthesis Proofs
,
2006,
CLASE.
[6]
Neil D. Jones,et al.
The size-change principle for program termination
,
2001,
POPL '01.
[7]
Panagiotis Manolios,et al.
Termination Analysis with Calling Context Graphs
,
2006,
CAV.
[8]
Panagiotis Manolios,et al.
Integrating CCG Analysis into ACL 2 ⋆
,
2006
.