Deciding Kleene Algebra Terms Equivalence in Coq


Autoria(s): Pereira, David; Moreira, Nelma; Sousa, Simão Patrício Melo de
Data(s)

11/01/2016

11/01/2016

01/05/2015

Resumo

This paper presents a mechanically verified implementation of an algorithm for deciding the equivalence of Kleene algebra terms within the Coq proof assistant. The algorithm decides equivalence of two given regular expressions through an iterated process of testing the equivalence of their partial derivatives and does not require the construction of the corresponding automata. Recent theoretical and experimental research provides evidence that this method is, on average, more efficient than the classical methods based on automata. We present some performance tests, comparisons with similar approaches, and also introduce a generalization of the algorithm to decide the equivalence of terms of Kleene algebra with tests. The motivation for the work presented in this paper is that of using the libraries developed as trusted frameworks for carrying out certified program verification.

Identificador

http://hdl.handle.net/10400.22/7356

http://dx.doi.org/10.1016/j.jlamp.2014.12.004

Idioma(s)

eng

Publicador

Elsevier

Relação

PTDC/EIA/65862/2006 (RESCUE)

FCOMP- 01-0124-FEDER-020486 (AVIACC)

FCOMP-01-0124-FEDER-037281 (CISTER)

Journal of Logical and Algebraic Methods in Programming;Vol. 84, Issue 3

http://www.sciencedirect.com/science/article/pii/S235222081400100X

Direitos

openAccess

Palavras-Chave #Proof assistants #Regular expressions #Kleene algebra with tests #Program verification
Tipo

article