Thomas Braibant ; Damien Pous - Deciding Kleene Algebras in Coq

lmcs:1043 - Logical Methods in Computer Science, March 2, 2012, Volume 8, Issue 1 - https://doi.org/10.2168/LMCS-8(1:16)2012
Deciding Kleene Algebras in CoqArticle

Authors: Thomas Braibant ; Damien Pous ORCID

    We present a reflexive tactic for deciding the equational theory of Kleene algebras in the Coq proof assistant. This tactic relies on a careful implementation of efficient finite automata algorithms, so that it solves casual equations instantaneously and properly scales to larger expressions. The decision procedure is proved correct and complete: correctness is established w.r.t. any model by formalising Kozen's initiality theorem; a counter-example is returned when the given equation does not hold. The correctness proof is challenging: it involves both a precise analysis of the underlying automata algorithms and a lot of algebraic reasoning. In particular, we have to formalise the theory of matrices over a Kleene algebra. We build on the recent addition of firstorder typeclasses in Coq in order to work efficiently with the involved algebraic structures.


    Volume: Volume 8, Issue 1
    Published on: March 2, 2012
    Imported on: May 16, 2011
    Keywords: Computer Science - Logic in Computer Science,Computer Science - Symbolic Computation,F 1.1, F 3.1, F.4.1, F.4.3, D 2.4

    Classifications

    17 Documents citing this article

    Consultation statistics

    This page has been seen 1781 times.
    This article's PDF has been downloaded 576 times.