Results 1 
8 of
8
Tactics for reasoning modulo AC in Coq
 In First International Conf. on Certified Programs and Proofs
, 2011
"... Abstract. We present a set of tools for rewriting modulo associativity and commutativity (AC) in Coq, solving a longstanding practical problem. We use two building blocks: first, an extensible reflexive decision procedure for equality modulo AC; second, an OCaml plugin for pattern matching modulo ..."
Abstract

Cited by 3 (0 self)
 Add to MetaCart
(Show Context)
Abstract. We present a set of tools for rewriting modulo associativity and commutativity (AC) in Coq, solving a longstanding practical problem. We use two building blocks: first, an extensible reflexive decision procedure for equality modulo AC; second, an OCaml plugin for pattern matching modulo AC. We handle associative only operations, neutral elements, uninterpreted function symbols, and userdefined equivalence relations. By relying on typeclasses for thereification phase, we can infer these properties automatically, so that endusers do not need to specify which operation is A or AC, or which constant is a neutral element. 1
Requirements for a Program Refinement Engine
 PATTER RECOGNITION LETTERS
, 1995
"... Refinement is a mathematicallybased technique for developing a program from an abstract specification so that the program satisfies the specification. The aim of the Program Refinement Tool project is to develop a generic refinement tool suitable for supporting a methodology for the interactive ..."
Abstract

Cited by 2 (1 self)
 Add to MetaCart
Refinement is a mathematicallybased technique for developing a program from an abstract specification so that the program satisfies the specification. The aim of the Program Refinement Tool project is to develop a generic refinement tool suitable for supporting a methodology for the interactive development of programs based on the refinement calculus. This report summarizes our investigation into an appropriate engine to use for the refinement calculator and theorem prover in this tool.
Automation of HigherOrder Logic
 THE HANDBOOK OF THE HISTORY OF LOGIC, EDS. D. GABBAY & J. WOODS; VOLUME 9: LOGIC AND COMPUTATION, EDITOR JÖRG SIEKMANN
, 2014
"... ..."
(Show Context)
DECIDING KLEENE ALGEBRAS IN COQ
, 2011
"... braries to assist in the mechanization of formal proofs in Coq. The first library provides algebraic tools for reasoning about binary relations and can be found at ..."
Abstract
 Add to MetaCart
(Show Context)
braries to assist in the mechanization of formal proofs in Coq. The first library provides algebraic tools for reasoning about binary relations and can be found at
Generalized Rewriting in Type Theory
"... While type theories such as Nuprl are expressive logics for theorem proving, they present difficulties for designers of term rewriting systems. The two most serious difficulties are: 1) They do not provide a global equality. Instead users rewrite over arbitrary userdefined relations. 2) Each rewrit ..."
Abstract
 Add to MetaCart
(Show Context)
While type theories such as Nuprl are expressive logics for theorem proving, they present difficulties for designers of term rewriting systems. The two most serious difficulties are: 1) They do not provide a global equality. Instead users rewrite over arbitrary userdefined relations. 2) Each rewrite step must be proved valid. In general, these proofs cannot be recursively generated. We have overcome these difficulties and designed a package for the Nuprl system that works well in practice. Our solution is an extensible set of functions for directing and validating relational inferences. The heart of our package is a set of operators that use a usersupplied lemma database to create new rewrites from old ones. These routines place no restrictions on relations; a rewrite's success depends on the strength of the database. Overall, the package allows rewrites to be pieced together in numerous ways, providing the user with a tool to construct sophisticated rewrite strategies. 1 Introductio...