Symbolic Algorithms for Language Equivalence and Kleene Algebra with Tests - Archive ouverte HAL
Rapport Année : 2014

Symbolic Algorithms for Language Equivalence and Kleene Algebra with Tests

Résumé

We first propose algorithms for checking language equivalence of finite automata over a large alphabet. We use symbolic automata, where the transition function is compactly represented using a (multi-terminal) binary decision diagrams (BDD). The key idea consists in computing a bisimulation by exploring reachable pairs symbolically, so as to avoid redundancies. This idea can be combined with already existing optimisations, and we show in particular a nice integration with the disjoint sets forest data-structure from Hopcroft and Karp's standard algorithm. Then we consider Kleene algebra with tests (KAT), an algebraic theory that can be used for verification in various domains ranging from compiler optimisation to network programming analysis. This theory is decidable by reduction to language equivalence of automata on guarded strings, a particular kind of automata that have exponentially large alphabets. We propose several methods allowing to construct symbolic automata out of KAT expressions, based either on Brzozowski's derivatives or standard automata constructions. All in all, this results in efficient algorithms for deciding equivalence of KAT expressions.
Fichier principal
Vignette du fichier
symbolic_kat.pdf (245.15 Ko) Télécharger le fichier
Origine Fichiers produits par l'(les) auteur(s)

Dates et versions

hal-01021497 , version 1 (09-07-2014)
hal-01021497 , version 2 (01-11-2014)

Identifiants

Citer

Damien Pous. Symbolic Algorithms for Language Equivalence and Kleene Algebra with Tests. 2014. ⟨hal-01021497v1⟩
229 Consultations
1175 Téléchargements

Altmetric

Partager

More