Abstract. We present QuickSpec, a tool that automatically generates algebraic specifications for sets of pure functions. The tool is based on testing, rather than static analysis or theorem proving. The main challenge QuickSpec faces is to keep the number of generated equations to a minimum while maintaining completeness. We demonstrate how QuickSpec can improve one's understanding of a program module by exploring the laws that are generated using two case studies: a heap library for Haskell and a fixed-point arithmetic library for Erlang.
QUICKSPEC REF is another inference tool that is based on testing and can be used to generate laws that a Haskell program satisfies.
QuickSpec: Guessing formal specifications using testing
In Tests and Proofs, Fourth International Conference, TAP
Computer Science