descriptional complexity of pushdown store languages
play

Descriptional Complexity of Pushdown Store Languages Andreas - PowerPoint PPT Presentation

Descriptional Complexity of Pushdown Store Languages Andreas Malcher Katja Meckel Carlo Mereghetti Beatrice Palano Institut f ur Informatik, Universit at Giessen, Germany Dipartimento di Informatica, Universit` a degli Studi di Milano


  1. Descriptional Complexity of Pushdown Store Languages Andreas Malcher Katja Meckel Carlo Mereghetti Beatrice Palano Institut f¨ ur Informatik, Universit¨ at Giessen, Germany Dipartimento di Informatica, Universit` a degli Studi di Milano Milano, Italy ICTCS 2012, Varese, Italy

  2. Descriptional complexity: questions Take the length of description as complexity measure. ➜ How succinctly can a model represent a formal language in comparison with other models? ➜ What is the maximum blow-up when changing from one model to another? (Upper bounds) ➜ Are there languages such that a maximum blow-up is achieved? (Lower bounds)

  3. Descriptional complexity: questions Take the length of description as complexity measure. ➜ How succinctly can a model represent a formal language in comparison with other models? ➜ What is the maximum blow-up when changing from one model to another? (Upper bounds) ➜ Are there languages such that a maximum blow-up is achieved? (Lower bounds) Results ➜ Recursive trade-offs ➜ Non-recursive trade-offs

  4. Devices and related structures Not only devices themselves are of interest, but also structures related to them.

  5. Devices and related structures Not only devices themselves are of interest, but also structures related to them. Examples: ➜ Turing machines and the set of valid computations (Hartmanis 1967)

  6. Devices and related structures Not only devices themselves are of interest, but also structures related to them. Examples: ➜ Turing machines and the set of valid computations (Hartmanis 1967) ➜ Quantum finite automata and control languages (Mereghetti, Palano 2006)

  7. Devices and related structures Not only devices themselves are of interest, but also structures related to them. Examples: ➜ Turing machines and the set of valid computations (Hartmanis 1967) ➜ Quantum finite automata and control languages (Mereghetti, Palano 2006) ➜ Pushdown automata with context-dependent nondeterminism (Kutrib, Malcher 2006)

  8. Devices and related structures Not only devices themselves are of interest, but also structures related to them. Examples: ➜ Turing machines and the set of valid computations (Hartmanis 1967) ➜ Quantum finite automata and control languages (Mereghetti, Palano 2006) ➜ Pushdown automata with context-dependent nondeterminism (Kutrib, Malcher 2006) ➜ Grammars and regulated rewriting (Dassow, P˘ aun 1989)

  9. Devices and related structures Not only devices themselves are of interest, but also structures related to them. Examples: ➜ Turing machines and the set of valid computations (Hartmanis 1967) ➜ Quantum finite automata and control languages (Mereghetti, Palano 2006) ➜ Pushdown automata with context-dependent nondeterminism (Kutrib, Malcher 2006) ➜ Grammars and regulated rewriting (Dassow, P˘ aun 1989) ➜ . . .

  10. Devices and related structures Not only devices themselves are of interest, but also structures related to them. Examples: ➜ Turing machines and the set of valid computations (Hartmanis 1967) ➜ Quantum finite automata and control languages (Mereghetti, Palano 2006) ➜ Pushdown automata with context-dependent nondeterminism (Kutrib, Malcher 2006) ➜ Grammars and regulated rewriting (Dassow, P˘ aun 1989) ➜ . . . ➜ Finite automata and the size of their syntactic monoid (Holzer, K¨ onig 2002)

  11. Pushdown store languages The pushdown store language of a PDA M is the set P ( M ) of all words occurring on the pushdown store along accepting computations of M . P ( M ) = { u ∈ Γ ∗ | ∃ x, y ∈ Σ ∗ , q ∈ Q, f ∈ F : ( q 0 , xy, Z 0 ) ⊢ ∗ ( q, y, u ) ⊢ ∗ ( f, λ, γ ) , for some γ ∈ Γ ∗ } .

  12. Pushdown store languages The pushdown store language of a PDA M is the set P ( M ) of all words occurring on the pushdown store along accepting computations of M . P ( M ) = { u ∈ Γ ∗ | ∃ x, y ∈ Σ ∗ , q ∈ Q, f ∈ F : ( q 0 , xy, Z 0 ) ⊢ ∗ ( q, y, u ) ⊢ ∗ ( f, λ, γ ) , for some γ ∈ Γ ∗ } . Theorem (Greibach 1967) Let M be a PDA. Then, P ( M ) is a regular language.

  13. Example The language { a n b n | n ≥ 1 } is accepted by the following (deterministic) PDA M = �{ q 0 , q 1 , q 2 } , { a, b } , { Z, Z 0 } , δ, q 0 , Z 0 , { q 2 }� such that δ ( q 0 , a, Z 0 ) = { ( q 0 , ZZ 0 ) } , δ ( q 0 , a, Z ) = { ( q 0 , ZZ ) } , δ ( q 0 , b, Z ) = { ( q 1 , λ ) } , δ ( q 1 , b, Z ) = { ( q 1 , λ ) } , δ ( q 1 , λ, Z 0 ) = { ( q 2 , Z 0 ) } .

  14. Example The language { a n b n | n ≥ 1 } is accepted by the following (deterministic) PDA M = �{ q 0 , q 1 , q 2 } , { a, b } , { Z, Z 0 } , δ, q 0 , Z 0 , { q 2 }� such that δ ( q 0 , a, Z 0 ) = { ( q 0 , ZZ 0 ) } , δ ( q 0 , a, Z ) = { ( q 0 , ZZ ) } , δ ( q 0 , b, Z ) = { ( q 1 , λ ) } , δ ( q 1 , b, Z ) = { ( q 1 , λ ) } , δ ( q 1 , λ, Z 0 ) = { ( q 2 , Z 0 ) } . The pushdown store language is P ( M ) = Z ∗ Z 0 .

  15. Finite automata construction Autebert, Berstel, and Boasson (1997) propose the following construction:

  16. Finite automata construction Autebert, Berstel, and Boasson (1997) propose the following construction: Let M = � Q, Σ , Γ , δ, q 0 , Z 0 , F � be a PDA. For every q ∈ Q , Acc ( q ) = { u ∈ Γ ∗ | ∃ x, y ∈ Σ ∗ : ( q 0 , xy, Z 0 ) ⊢ ∗ ( q, y, u ) } , Co-Acc ( q ) = { u ∈ Γ ∗ | ∃ y ∈ Σ ∗ , f ∈ F, u ′ ∈ Γ ∗ : ( q, y, u ) ⊢ ∗ ( f, λ, u ′ ) } .

  17. Finite automata construction Then, the pushdown store language is � P ( M ) = Acc ( q ) ∩ Co-Acc ( q ) . q ∈ Q

  18. Finite automata construction Then, the pushdown store language is � P ( M ) = Acc ( q ) ∩ Co-Acc ( q ) . q ∈ Q Finally, for every q ∈ Q , a left-linear grammar G Acc ( q ) for Acc ( q ) and a right-linear grammar G Co-Acc ( q ) for Co-Acc ( q ) is constructed.

  19. Finite automata construction Then, the pushdown store language is � P ( M ) = Acc ( q ) ∩ Co-Acc ( q ) . q ∈ Q Finally, for every q ∈ Q , a left-linear grammar G Acc ( q ) for Acc ( q ) and a right-linear grammar G Co-Acc ( q ) for Co-Acc ( q ) is constructed. Estimation of the size:

  20. Finite automata construction Then, the pushdown store language is � P ( M ) = Acc ( q ) ∩ Co-Acc ( q ) . q ∈ Q Finally, for every q ∈ Q , a left-linear grammar G Acc ( q ) for Acc ( q ) and a right-linear grammar G Co-Acc ( q ) for Co-Acc ( q ) is constructed. Estimation of the size: ➜ An NFA for Acc ( q ) needs | Q | · | Γ | + 1 states.

  21. Finite automata construction Then, the pushdown store language is � P ( M ) = Acc ( q ) ∩ Co-Acc ( q ) . q ∈ Q Finally, for every q ∈ Q , a left-linear grammar G Acc ( q ) for Acc ( q ) and a right-linear grammar G Co-Acc ( q ) for Co-Acc ( q ) is constructed. Estimation of the size: ➜ An NFA for Acc ( q ) needs | Q | · | Γ | + 1 states. ➜ An NFA for Co-Acc ( q ) needs | Q | + 1 states.

  22. Finite automata construction Then, the pushdown store language is � P ( M ) = Acc ( q ) ∩ Co-Acc ( q ) . q ∈ Q Finally, for every q ∈ Q , a left-linear grammar G Acc ( q ) for Acc ( q ) and a right-linear grammar G Co-Acc ( q ) for Co-Acc ( q ) is constructed. Estimation of the size: ➜ An NFA for Acc ( q ) needs | Q | · | Γ | + 1 states. ➜ An NFA for Co-Acc ( q ) needs | Q | + 1 states. ➜ An NFA for the intersection Acc ( q ) ∩ Co-Acc ( q ) needs ( | Q | · | Γ | + 1)( | Q | + 1) states.

  23. Finite automata construction Then, the pushdown store language is � P ( M ) = Acc ( q ) ∩ Co-Acc ( q ) . q ∈ Q Finally, for every q ∈ Q , a left-linear grammar G Acc ( q ) for Acc ( q ) and a right-linear grammar G Co-Acc ( q ) for Co-Acc ( q ) is constructed. Estimation of the size: ➜ An NFA for Acc ( q ) needs | Q | · | Γ | + 1 states. ➜ An NFA for Co-Acc ( q ) needs | Q | + 1 states. ➜ An NFA for the intersection Acc ( q ) ∩ Co-Acc ( q ) needs ( | Q | · | Γ | + 1)( | Q | + 1) states. ➜ The union over all q ∈ Q gives a factor | Q | .

  24. Finite automata construction Then, the pushdown store language is � P ( M ) = Acc ( q ) ∩ Co-Acc ( q ) . q ∈ Q Finally, for every q ∈ Q , a left-linear grammar G Acc ( q ) for Acc ( q ) and a right-linear grammar G Co-Acc ( q ) for Co-Acc ( q ) is constructed. Estimation of the size: ➜ An NFA for Acc ( q ) needs | Q | · | Γ | + 1 states. ➜ An NFA for Co-Acc ( q ) needs | Q | + 1 states. ➜ An NFA for the intersection Acc ( q ) ∩ Co-Acc ( q ) needs ( | Q | · | Γ | + 1)( | Q | + 1) states. ➜ The union over all q ∈ Q gives a factor | Q | . ➜ Altogether, we need | Q | 3 | Γ | + | Q | 2 ( | Γ | + 1) + | Q | + 1 states.

  25. Finite automata construction improved Avoid the union (factor | Q | ) by considering Acc ( Q ) = { [ q ] u ∈ [ Q ]Γ ∗ | u ∈ Acc ( q ) } , Co-Acc ( Q ) = { [ q ] u ∈ [ Q ]Γ ∗ | u ∈ Co-Acc ( q ) } .

  26. Finite automata construction improved Avoid the union (factor | Q | ) by considering Acc ( Q ) = { [ q ] u ∈ [ Q ]Γ ∗ | u ∈ Acc ( q ) } , Co-Acc ( Q ) = { [ q ] u ∈ [ Q ]Γ ∗ | u ∈ Co-Acc ( q ) } . Then, P ( M ) is Acc ( Q ) ∩ Co-Acc ( Q ) where the first symbol is removed.

  27. Finite automata construction improved Avoid the union (factor | Q | ) by considering Acc ( Q ) = { [ q ] u ∈ [ Q ]Γ ∗ | u ∈ Acc ( q ) } , Co-Acc ( Q ) = { [ q ] u ∈ [ Q ]Γ ∗ | u ∈ Co-Acc ( q ) } . Then, P ( M ) is Acc ( Q ) ∩ Co-Acc ( Q ) where the first symbol is removed. Estimation of the size:

Recommend


More recommend