Tactics for Reasoning modulo AC in Coq

Thomas Braibant 1 Damien Pous 2
2 PLUME - Preuves et Langages
LIP - Laboratoire de l'Informatique du Parallélisme
Abstract : We present a set of tools for rewriting modulo associativity and commutativity (AC) in Coq, solving a long-standing practical problem. We use two building blocks: first, an extensible reflexive decision procedure for equality modulo AC; second, an OCaml plug-in for pattern matching modulo AC. We handle associative only operations, neutral elements, uninterpreted function symbols, and user-defined equivalence relations. By relying on type-classes for the reification phase, we can infer these properties automatically, so that end-users do not need to specify which operation is A or AC, or which constant is a neutral element.
Type de document :
Communication dans un congrès
Certified Proofs and Programs, 2011, Taiwan. pp167-182, 2011, <10.1007/978-3-642-25379-9_14>
Liste complète des métadonnées


https://hal.archives-ouvertes.fr/hal-00484871
Contributeur : Damien Pous <>
Soumis le : jeudi 22 septembre 2011 - 10:34:00
Dernière modification le : vendredi 3 juin 2016 - 01:06:24
Document(s) archivé(s) le : dimanche 4 décembre 2016 - 20:15:02

Fichiers

main.pdf
Fichiers produits par l'(les) auteur(s)

Identifiants

Collections

Citation

Thomas Braibant, Damien Pous. Tactics for Reasoning modulo AC in Coq. Certified Proofs and Programs, 2011, Taiwan. pp167-182, 2011, <10.1007/978-3-642-25379-9_14>. <hal-00484871v4>

Partager

Métriques

Consultations de
la notice

236

Téléchargements du document

130