Tools, utilities, and strategies for dealing with particular kinds of proofs.

- Gl
- A symbolic simulation framework for proving finitely bounded ACL2 theorems by bit-blasting with a Binary Decision Diagram (BDD) package or a SAT solver.
- Witness-cp
- Clause processor for quantifier-based reasoning.
- Ccg
- A powerful automated termination prover for ACL2
- Install-not-normalized
- Install an unnormalized definition
- Rewrite$
- Rewrite a term
- Removable-runes
- Compute runes to disable
- Efficiency
- Efficiency considerations
- Rewrite-bounds
- Substitute upper bounds and lower bounds for subterms in comparisons.
- Bash
`Bash`is a tool that simplifies a term, producing a list of simplified terms such that if all output terms are theorems, then so is the input term.- Def-dag-measure
- Generic framework that allows simple traversals of DAGs.
- Fgl
- A prover framework that supports bit-blasting.
- Bdd
- Ordered binary decision diagrams with rewriting
- Remove-hyps
- Macro for defining a theorem with a minimal set of hypotheses
- Contextual-rewriting
- A meta-rule system that lets the ACL2 rewriter pass around contextual information. Similar to Dave Greve's NARY. This extends ACL2's notion of congruence-based rewriting.
- Simp
`Simp`returns a list of simplified versions of its input term, each paired with a hypothesis list under which the input and output terms are provably equal.- Rewrite$-hyps
- Rewrite a list of hypotheses
- Bash-term-to-dnf
`Bash-term-to-dnf`is a tool that simplifies a term, producing a list of clauses such that if all output clauses are theorems, then so is the input term.- Use-trivial-ancestors-check
- Override ACL2's built-in ancestors check heuristic with a simpler and less surprising one.
- Minimal-runes
- Compute runes to leave enabled
- Clause-processor-tools
- Noteworthy clause-processors
- Fn-is-body
- Prove that a function called on its formals equals its body
- Without-subsumption
- Perform proofs without subsumption/replacement to preserve hypotheses that might otherwise be dropped.
- Rewrite-equiv-hint
- A hint to induce ACL2 to perform substitutions using equivalence relations from the hypothesis
- Def-bounds
- Find and prove upper and lower bounds for an expression, following a series of simplification steps.
- Rewrite$-context
- Rewrite a list of contextual assumptions
- Try-gl-concls
- Find true conclusions using GL
- Hint-utils
- Tools that produce hints to guide the prover.