Deciding Kleene Algebras in Coq - Archive ouverte HAL Accéder directement au contenu
Communication Dans Un Congrès Année : 2010

Deciding Kleene Algebras in Coq

Résumé

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.
Fichier principal
Vignette du fichier
main.pdf (436.17 Ko) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)

Dates et versions

hal-00383070 , version 1 (11-05-2009)
hal-00383070 , version 2 (13-08-2009)
hal-00383070 , version 3 (15-02-2010)
hal-00383070 , version 4 (14-06-2010)
hal-00383070 , version 5 (20-05-2011)

Identifiants

Citer

Thomas Braibant, Damien Pous. Deciding Kleene Algebras in Coq. ITP, Aug 2010, Edinburgh, United Kingdom. pp.163-178, ⟨10.1007/978-3-642-14052-5_13⟩. ⟨hal-00383070v5⟩
316 Consultations
1109 Téléchargements

Altmetric

Partager

Gmail Facebook X LinkedIn More