English

Tactics for Reasoning modulo AC in Coq

Mathematical Software 2013-03-08 v2 Logic in Computer Science

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.

Cite

@article{arxiv.1106.4448,
  title  = {Tactics for Reasoning modulo AC in Coq},
  author = {Thomas Braibant and Damien Pous},
  journal= {arXiv preprint arXiv:1106.4448},
  year   = {2013}
}

Comments

16p

R2 v1 2026-06-21T18:25:59.621Z