Embedding finite automata within regular expressions

Shoham Ben-David, Dana Fisman, Sitvanit Ruah

Research output: Contribution to journalArticlepeer-review

8 Scopus citations

Abstract

Regular expressions and their extensions have become a major component of industry-oriented specification languages such as IEEE PSL [IEEE Standard for Property Specification Language (PSL). IEEE Std 1850™-2005]. The model checking procedure of regular expression based formulas, involves constructing an automaton which runs in parallel with the model. In this paper we re-examine the automata construction. We propose an algorithm that allows an intermediate representation mixing both regular expressions and automata. This representation can be thought of as plugging an automaton inside a regular expression, to replace an existing sub-expression. In order to be verified, the intermediate representation is then translated into another automaton, resulting in a set of automata running in parallel. A key feature of this algorithm is that the plug-in automaton is independent of the regular expression from which it originated, and thus can be used in several different properties. We demonstrate the usefulness of our method by providing a set of applications. We show how the use of our method allows modularity and flexibility of the automata construction, and can increase expressiveness when seres are mixed with ctl. We give two applications for which it significantly reduces the size of the automata built for formulas, thus reducing the overall run time of the model checking procedure.

Original languageEnglish
Pages (from-to)202-218
Number of pages17
JournalTheoretical Computer Science
Volume404
Issue number3
DOIs
StatePublished - 28 Sep 2008
Externally publishedYes

Keywords

  • Embedding
  • Finite automata
  • Linear translation
  • Model checking
  • On-the-fly
  • PSL
  • Regular expression

ASJC Scopus subject areas

  • Theoretical Computer Science
  • General Computer Science

Fingerprint

Dive into the research topics of 'Embedding finite automata within regular expressions'. Together they form a unique fingerprint.

Cite this