Table of Contents
Fetching ...

Visibly Recursive Automata

Kévin Dubrulle, Véronique Bruyère, Guillermo A. Pérez, Gaëtan Staquet

Abstract

As an alternative to visibly pushdown automata, we introduce visibly recursive automata (VRAs), composed of a set of classical automata that can call each other. VRAs are a strict extension of so-called systems of procedural automata, a model proposed by Frohme and Steffen. We study the complexity of standard language-theoretic operations and classical decision problems for VRAs. Since the class of deterministic VRAs forms a strict subclass in terms of expressiveness, we propose a (weaker) notion that does not restrict expressive power and which we call codeterminism. Codeterminism comes with many desirable algorithmic properties that we demonstrate by using it, e.g., as a stepping stone towards implementing complementation of VRAs.

Visibly Recursive Automata

Abstract

As an alternative to visibly pushdown automata, we introduce visibly recursive automata (VRAs), composed of a set of classical automata that can call each other. VRAs are a strict extension of so-called systems of procedural automata, a model proposed by Frohme and Steffen. We study the complexity of standard language-theoretic operations and classical decision problems for VRAs. Since the class of deterministic VRAs forms a strict subclass in terms of expressiveness, we propose a (weaker) notion that does not restrict expressive power and which we call codeterminism. Codeterminism comes with many desirable algorithmic properties that we demonstrate by using it, e.g., as a stepping stone towards implementing complementation of VRAs.
Paper Structure (33 sections, 18 theorems, 18 equations, 7 figures, 1 table, 1 algorithm)

This paper contains 33 sections, 18 theorems, 18 equations, 7 figures, 1 table, 1 algorithm.

Key Result

proposition 1

Given a VRA $\mathcal{A}$, let $cwr \in \Sigma_{\mathit{call}}\cdot \mathit{WM}(\widetilde{\Sigma})\cdot \Sigma_{\mathit{ret}}$ and $p,q\in Q_\mathcal{A}$:

Figures (7)

  • Figure 1: Example of a VRA and a recursive run of it.
  • Figure 2: Illustration of the semantics of a VRA on $cwr \in \Sigma_{\mathit{call}} \cdot \mathit{WM}(\widetilde{\Sigma}) \cdot \Sigma_{\mathit{ret}}$, with $q_i \in I^J$, $q_f\in F^J$ and $f(J)=\langle c,r \rangle$.
  • Figure 3: Set of recursive language s of three automata $\mathcal{A}^{J_1}$, $\mathcal{A}^{J_2}$ and $\mathcal{A}^{J_3}$, and the corresponding set of languages of the automata $\mathcal{B^J}$, for all $\mathcal{J}\subseteq \{J_1,J_2,J_3\}$.
  • Figure 4: A deterministic VRA with no equivalent SPA.
  • Figure 5: A two-state deterministic VPA.
  • ...and 2 more figures

Theorems & Definitions (50)

  • definition 1: Finite automaton
  • definition 2: Well-matched word
  • definition 3: Procedural alphabet
  • definition 4: Visibly recursive automaton
  • proposition 1
  • proposition 2
  • proof : Sketch
  • theorem 1: Equivalence of VRAs and VPAs
  • definition 5: Codeterministic VRA
  • definition 6: Complete VRA
  • ...and 40 more