Abstract
Monadic second-order logic on finite words (MSO) is a decidable yet
expressive logic into which many decision problems can be encoded. Since MSO
formulas correspond to regular languages, equivalence of MSO formulas can be
reduced to the equivalence of some regular structures (e.g. automata). We
verify an executable decision procedure for MSO formulas that is not based
on automata but on regular expressions.
Decision procedures for regular expression equivalence have been formalized before, usually based on Brzozowski derivatives. Yet, for a straightforward embedding of MSO formulas into regular expressions an extension of regular expressions with a projection operation is required. We prove total correctness and completeness of an equivalence checker for regular expressions extended in that way. We also define a language-preserving translation of formulas into regular expressions with respect to two different semantics of MSO.
License
Topics
Related publications
- TRAYTEL, D., & NIPKOW, T. (2015). Verified decision procedures for MSO on words based on derivatives of regular expressions. Journal of Functional Programming, 25. https://doi.org/10.1017/s0956796815000246
- author's copy
Session MSO_Regex_Equivalence
- List_More
- Pi_Regular_Set
- Pi_Regular_Exp
- Pi_Derivatives
- Pi_Regular_Operators
- Pi_Regular_Exp_Dual
- Pi_Equivalence_Checking
- Init_Normalization
- PNormalization
- Formula
- M2L
- M2L_Normalization
- M2L_Equivalence_Checking
- WS1S
- WS1S_Normalization
- WS1S_Equivalence_Checking
- M2L_Examples
- WS1S_Examples