Detecting global variables in denotational specifications
ACM Transactions on Programming Languages and Systems (TOPLAS) - Lecture notes in computer science Vol. 174
Message-based functional operating systems
Science of Computer Programming
Theoretical Computer Science
Common LISP: the language (2nd ed.)
Common LISP: the language (2nd ed.)
ACM Computing Surveys (CSUR)
High-speed, analyzable simulators
Computer-Aided reasoning
Computer-Aided Reasoning: An Approach
Computer-Aided Reasoning: An Approach
Symbolic Simulation of the JEM1 Microprocessor
FMCAD '98 Proceedings of the Second International Conference on Formal Methods in Computer-Aided Design
Transforming the Theorem Prover into a Digital Design Tool: From Concept Car to Off-Road Vehicle
CAV '98 Proceedings of the 10th International Conference on Computer Aided Verification
Monads for Functional Programming
Advanced Functional Programming, First International Spring School on Advanced Functional Programming Techniques-Tutorial Text
Rewriting for Symbolic Execution of State Machine Models
CAV '01 Proceedings of the 13th International Conference on Computer Aided Verification
Proceedings of the seventh ACM SIGPLAN international conference on Functional programming
Efficient execution in an automated reasoning environment
Journal of Functional Programming
Verified Software: Theories, Tools, Experiments
Imperative Functional Programming with Isabelle/HOL
TPHOLs '08 Proceedings of the 21st International Conference on Theorem Proving in Higher Order Logics
Proceedings of the 2008 International Conference on Formal Methods in Computer-Aided Design
Proceedings of the Eighth International Workshop on the ACL2 Theorem Prover and its Applications
Primality proving with elliptic curves
TPHOLs'07 Proceedings of the 20th international conference on Theorem proving in higher order logics
Trace-based verification of imperative programs with I/O
Journal of Symbolic Computation
Verification of stack manipulation in the SCIP processor
SSV'10 Proceedings of the 5th international conference on Systems software verification
Proof pearl: Dijkstra's shortest path algorithm verified with ACL2
TPHOLs'05 Proceedings of the 18th international conference on Theorem Proving in Higher Order Logics
Extending coq with imperative features and its application to SAT verification
ITP'10 Proceedings of the First international conference on Interactive Theorem Proving
Hi-index | 0.00 |
ACL2 is a first-order applicative programming language based on Common Lisp. It is also a mathematical logic for which a mechanical theorem-prover has been implemented in the style of the Boyer-Moore theorem prover. The ACL2 system is used primarily in the modeling and verification of computer hardware and software, where the executability of the language allows models to be used as prototype designs or "simulators." To support efficient execution of certain kinds of models, especially models of microprocessors, ACL2 provides "singlethreaded objects," structures with the usual "copy on write" applicative semantics but for which writes are implemented destructively. Syntactic restrictions insure consistency between the formal semantics and the implementation. The design of single-threaded objects has been influenced both by the need to make execution efficient and the need to make proofs about them simple. We discuss the issues.