A Logical Characterization of Timed Pushdown Languages Manfred Droste and Vitaly Perevoshchikov 1 Leipzig University CSR 2015, Listvyanka 1 Supported by the DFG Research Training Group "QuantLA"
(Dense-)Timed Pushdown Automata 1 (TPDA) TPDA are nondeterministic finite automata (NFA) equipped with: real-valued clocks timed stack ➋➌ ➋ PDA TPDA ➋ ➋ ➋➌ NFA TA 1 Abdulla, Atig, Stenman ’12
Timed Pushdown Automata 1 (TPDA) Definition A TPDA over an alphabet Σ : A = ( Q ❀ C ❀ Γ ❀ I ❀ T ❀ F ) where Q is a finite set of states C is a finite set of clocks Γ is a stack alphabet I ❀ F ⊆ Q are initial and final state a ❀ ✣❀ Λ q ′ where: T is a finite set of edges of the form q � � � → s q ❀ q ′ ∈ Q , a ∈ Σ ✣ is a clock constraint over C , Λ ⊆ C is a set of clocks to be reset s is: push I ( ✌ ) , # or pop I ( ✌ ) where ✌ ∈ Γ and I is an interval 1 Abdulla, Atig, Stenman ’12
TPDA: Example a , push [ 0 ❀ 0 ] ( ✌ ) a , pop [ 1 ❀ 2 ) ( ✌ ) Σ = { a ❀ b } A C = { x } b , x ≤ 2, x ∶= 0, # Γ = { ✌ } . 1 2
TPDA: Example a , push [ 0 ❀ 0 ] ( ✌ ) a , pop [ 1 ❀ 2 ) ( ✌ ) Σ = { a ❀ b } A C = { x } b , x ≤ 2, x ∶= 0, # Γ = { ✌ } . 1 2 A run of A : 1 x = 0
TPDA: Example a , push [ 0 ❀ 0 ] ( ✌ ) a , pop [ 1 ❀ 2 ) ( ✌ ) Σ = { a ❀ b } A C = { x } b , x ≤ 2, x ∶= 0, # Γ = { ✌ } . 1 2 A run of A : 0.3 1 x = 0 1 x = 0 ✿ 3 delay
TPDA: Example a , push [ 0 ❀ 0 ] ( ✌ ) a , pop [ 1 ❀ 2 ) ( ✌ ) Σ = { a ❀ b } A C = { x } b , x ≤ 2, x ∶= 0, # Γ = { ✌ } . 1 2 A run of A : 0.3 a 1 x = 0 ✿ 3 ✌ ∶ 0 1 x = 0 1 x = 0 ✿ 3 delay switch
TPDA: Example a , push [ 0 ❀ 0 ] ( ✌ ) a , pop [ 1 ❀ 2 ) ( ✌ ) Σ = { a ❀ b } A C = { x } b , x ≤ 2, x ∶= 0, # Γ = { ✌ } . 1 2 A run of A : 0.3 a 1 x = 0 ✿ 3 ✌ ∶ 0 1 x = 0 1 x = 0 ✿ 3 delay switch 0.7 x = 1 ✌ ∶ 0 ✿ 7 1 delay
TPDA: Example a , push [ 0 ❀ 0 ] ( ✌ ) a , pop [ 1 ❀ 2 ) ( ✌ ) Σ = { a ❀ b } A C = { x } b , x ≤ 2, x ∶= 0, # Γ = { ✌ } . 1 2 A run of A : 0.3 a 1 x = 0 ✿ 3 ✌ ∶ 0 1 x = 0 1 x = 0 ✿ 3 delay switch 0.7 a x = 1 ✌ ∶ 0 ✿ 7 ✌ ∶ 0 1 1 x = 1 delay switch ✌ ∶ 0 ✿ 7
TPDA: Example a , push [ 0 ❀ 0 ] ( ✌ ) a , pop [ 1 ❀ 2 ) ( ✌ ) Σ = { a ❀ b } A C = { x } b , x ≤ 2, x ∶= 0, # Γ = { ✌ } . 1 2 A run of A : 0.3 a 1 x = 0 ✿ 3 ✌ ∶ 0 1 x = 0 1 x = 0 ✿ 3 delay switch 0.7 a x = 1 ✌ ∶ 0 ✿ 7 ✌ ∶ 0 1 1 x = 1 delay switch ✌ ∶ 0 ✿ 7 1 ✌ ∶ 1 1 x = 2 delay ✌ ∶ 1 ✿ 7
TPDA: Example a , push [ 0 ❀ 0 ] ( ✌ ) a , pop [ 1 ❀ 2 ) ( ✌ ) Σ = { a ❀ b } A C = { x } b , x ≤ 2, x ∶= 0, # Γ = { ✌ } . 1 2 A run of A : 0.3 a 1 x = 0 ✿ 3 ✌ ∶ 0 1 x = 0 1 x = 0 ✿ 3 delay switch 0.7 a x = 1 ✌ ∶ 0 ✿ 7 ✌ ∶ 0 1 1 x = 1 delay switch ✌ ∶ 0 ✿ 7 1 b ✌ ∶ 1 ✌ ∶ 1 1 x = 2 2 x = 0 delay switch ✌ ∶ 1 ✿ 7 ✌ ∶ 1 ✿ 7
TPDA: Example a , push [ 0 ❀ 0 ] ( ✌ ) a , pop [ 1 ❀ 2 ) ( ✌ ) Σ = { a ❀ b } A C = { x } b , x ≤ 2, x ∶= 0, # Γ = { ✌ } . 1 2 A run of A : 0.3 a 1 x = 0 ✿ 3 ✌ ∶ 0 1 x = 0 1 x = 0 ✿ 3 delay switch 0.7 a x = 1 ✌ ∶ 0 ✿ 7 ✌ ∶ 0 1 1 x = 1 delay switch ✌ ∶ 0 ✿ 7 1 b ✌ ∶ 1 ✌ ∶ 1 1 x = 2 2 x = 0 delay switch ✌ ∶ 1 ✿ 7 ✌ ∶ 1 ✿ 7 0.1 2 x = 0 ✿ 1 ✌ ∶ 1 ✿ 1 delay ✌ ∶ 1 ✿ 8
TPDA: Example a , push [ 0 ❀ 0 ] ( ✌ ) a , pop [ 1 ❀ 2 ) ( ✌ ) Σ = { a ❀ b } A C = { x } b , x ≤ 2, x ∶= 0, # Γ = { ✌ } . 1 2 A run of A : 0.3 a 1 x = 0 ✿ 3 ✌ ∶ 0 1 x = 0 1 x = 0 ✿ 3 delay switch 0.7 a x = 1 ✌ ∶ 0 ✿ 7 ✌ ∶ 0 1 1 x = 1 delay switch ✌ ∶ 0 ✿ 7 1 b ✌ ∶ 1 ✌ ∶ 1 1 x = 2 2 x = 0 delay switch ✌ ∶ 1 ✿ 7 ✌ ∶ 1 ✿ 7 0.1 a 2 x = 0 ✿ 1 ✌ ∶ 1 ✿ 1 2 x = 0 ✿ 1 ✌ ∶ 1 ✿ 8 delay switch ✌ ∶ 1 ✿ 8
TPDA: Example a , push [ 0 ❀ 0 ] ( ✌ ) a , pop [ 1 ❀ 2 ) ( ✌ ) Σ = { a ❀ b } A C = { x } b , x ≤ 2, x ∶= 0, # Γ = { ✌ } . 1 2 A run of A : 0.3 a 1 x = 0 ✿ 3 ✌ ∶ 0 1 x = 0 1 x = 0 ✿ 3 delay switch 0.7 a x = 1 ✌ ∶ 0 ✿ 7 ✌ ∶ 0 1 1 x = 1 delay switch ✌ ∶ 0 ✿ 7 1 b ✌ ∶ 1 ✌ ∶ 1 1 x = 2 2 x = 0 delay switch ✌ ∶ 1 ✿ 7 ✌ ∶ 1 ✿ 7 0.1 a 2 x = 0 ✿ 1 ✌ ∶ 1 ✿ 1 2 x = 0 ✿ 1 ✌ ∶ 1 ✿ 8 delay switch ✌ ∶ 1 ✿ 8 0.1 2 x = 0 ✿ 2 ✌ ∶ 1 ✿ 9 delay
TPDA: Example a , push [ 0 ❀ 0 ] ( ✌ ) a , pop [ 1 ❀ 2 ) ( ✌ ) Σ = { a ❀ b } A C = { x } b , x ≤ 2, x ∶= 0, # Γ = { ✌ } . 1 2 A run of A : 0.3 a 1 x = 0 ✿ 3 ✌ ∶ 0 1 x = 0 1 x = 0 ✿ 3 delay switch 0.7 a x = 1 ✌ ∶ 0 ✿ 7 ✌ ∶ 0 1 1 x = 1 delay switch ✌ ∶ 0 ✿ 7 1 b ✌ ∶ 1 ✌ ∶ 1 1 x = 2 2 x = 0 delay switch ✌ ∶ 1 ✿ 7 ✌ ∶ 1 ✿ 7 0.1 a 2 x = 0 ✿ 1 ✌ ∶ 1 ✿ 1 2 x = 0 ✿ 1 ✌ ∶ 1 ✿ 8 delay switch ✌ ∶ 1 ✿ 8 0.1 a 2 x = 0 ✿ 2 ✌ ∶ 1 ✿ 9 2 x = 0 ✿ 1 delay switch
TPDA: Example a , push [ 0 ❀ 0 ] ( ✌ ) a , pop [ 1 ❀ 2 ) ( ✌ ) Σ = { a ❀ b } A C = { x } b , x ≤ 2, x ∶= 0, # Γ = { ✌ } . 1 2 A run of A : 0.3 a 1 x = 0 ✿ 3 ✌ ∶ 0 1 x = 0 1 x = 0 ✿ 3 delay switch 0.7 a x = 1 ✌ ∶ 0 ✿ 7 ✌ ∶ 0 1 1 x = 1 delay switch ✌ ∶ 0 ✿ 7 1 b ✌ ∶ 1 ✌ ∶ 1 1 x = 2 2 x = 0 delay switch ✌ ∶ 1 ✿ 7 ✌ ∶ 1 ✿ 7 0.1 a 2 x = 0 ✿ 1 ✌ ∶ 1 ✿ 1 2 x = 0 ✿ 1 ✌ ∶ 1 ✿ 8 delay switch ✌ ∶ 1 ✿ 8 0.1 a 2 x = 0 ✿ 2 ✌ ∶ 1 ✿ 9 2 x = 0 ✿ 1 delay switch Accepted timed word: ( a ❀ 0 ✿ 3 )( a ❀ 1 )( b ❀ 2 )( a ❀ 2 ✿ 1 )( a ❀ 2 ✿ 2 )
Relative Distance Logic (RDL) 1 Let Σ be an alphabet. Definition Relative distance logic RDL ( Σ ) : consists of formulas of the form ∃ X 1 ✿✿✿ ∃ X n ✿✬ where ✬ ∶∶ = P a ( x ) ∣ x ≤ y ∣ x ∈ X ∣ d ( X ❀ x ) ∼ c ∣ ✬ ∨ ✬ ∣ ¬ ✬ ∣ ∃ x ✿✬ with a ∈ Σ , ∼ ∈ {< ❀ = ❀ > } , c ∈ N . 1 Wilke ’94
Relative Distance Logic (RDL) 1 Let Σ be an alphabet. Definition Relative distance logic RDL ( Σ ) : consists of formulas of the form ∃ X 1 ✿✿✿ ∃ X n ✿✬ where ✬ ∶∶= P a ( x ) ∣ x ≤ y ∣ x ∈ X ∣ d ( X ❀ x ) ∼ c ∣ ✬ ∨ ✬ ∣ ¬ ✬ ∣ ∃ x ✿✬ with a ∈ Σ , ∼ ∈ {< ❀ = ❀ > } , c ∈ N . Model: a timed word w = ( a 1 ❀ t 1 ) ✿✿✿ ( a n ❀ t n ) ∈ T Σ + . ( w ❀✛ ) ⊧ d ( X ❀ x ) ∼ c t ✛ ( x ) − t i ∼ c t j t 1 t 2 t 3 t i time ✛ ( x ) 1 2 3 j position i ✛ ( X ) ✛ ( X ) 1 Wilke ’94
Relative Distance Logic (RDL) 1 Let Σ be an alphabet. Definition Relative distance logic RDL ( Σ ) : consists of formulas of the form ∃ X 1 ✿✿✿ ∃ X n ✿✬ where ✬ ∶∶= P a ( x ) ∣ x ≤ y ∣ x ∈ X ∣ d ( X ❀ x ) ∼ c ∣ ✬ ∨ ✬ ∣ ¬ ✬ ∣ ∃ x ✿✬ with a ∈ Σ , ∼ ∈ {< ❀ = ❀ > } , c ∈ N . Theorem (Wilke ’94) Let L ⊆ T Σ + be a timed language. TFAE: 1 L is recognizable by a timed automaton 2 L is definable by a RDL ( Σ ) -sentence. 1 Wilke ’94
Logic for Pushdown Automata 1 Matching logic ML( Σ ): ∃ match ✖✿ FO ( Σ ❀ < ❀✖ ) Definition (Matching). A relation M ⊆ { 1 ❀✿✿✿❀ n } 2 is a matching if: ( x ❀ y ) ∈ M ⇒ x < y ; every x ∈ { 1 ❀✿✿✿❀ n } belongs to at most one pair in M ; 1 Lautemann, Schwentick, Thérien ’94
Logic for Pushdown Automata 1 Matching logic ML( Σ ): ∃ match ✖✿ FO ( Σ ❀ < ❀✖ ) Definition (Matching). A relation M ⊆ { 1 ❀✿✿✿❀ n } 2 is a matching if: ( x ❀ y ) ∈ M ⇒ x < y ; every x ∈ { 1 ❀✿✿✿❀ n } belongs to at most one pair in M ; M is non-crossing: ✔ ✖ 1 Lautemann, Schwentick, Thérien ’94
Logic for Pushdown Automata 1 Matching logic ML( Σ ): ∃ match ✖✿ FO ( Σ ❀ < ❀✖ ) Definition (Matching). A relation M ⊆ { 1 ❀✿✿✿❀ n } 2 is a matching if: ( x ❀ y ) ∈ M ⇒ x < y ; every x ∈ { 1 ❀✿✿✿❀ n } belongs to at most one pair in M ; M is non-crossing: ✔ ✖ 1 Lautemann, Schwentick, Thérien ’94
Timed Matching Logic (TML) Definition TML ( Σ ) is the set of formulas of the form ∃ match ✖✿ ∃ X 1 ✿ ✿✿✿ ∃ X n ✿✬ where ✬ is defined by the grammar: ✬ ∶∶= P a ( x ) ∣ x ≤ y ∣ x ∈ X ∣ ✖ ( x ❀ y ) ∼ c ∣ d ( X ❀ x ) ∼ c ∣ ✬ ∨ ✬ ∣ ¬ ✬ ∣ ∃ x ✿✬ where a ∈ Σ , ∼ ∈ {< ❀ = ❀ > } and c ∈ N .
Timed Matching Logic (TML) Definition TML ( Σ ) is the set of formulas of the form ∃ match ✖✿ ∃ X 1 ✿ ✿✿✿ ∃ X n ✿✬ where ✬ is defined by the grammar: ✬ ∶∶= P a ( x ) ∣ x ≤ y ∣ x ∈ X ∣ ✖ ( x ❀ y ) ∼ c ∣ d ( X ❀ x ) ∼ c ∣ ✬ ∨ ✬ ∣ ¬ ✬ ∣ ∃ x ✿✬ where a ∈ Σ , ∼ ∈ {< ❀ = ❀ > } and c ∈ N . Let w = ( a 1 ❀ t 1 ) ✿✿✿ ( a n ❀ t n ) ∈ T Σ + . Then, ( w ❀✛ ) ⊧ ✖ ( x ❀ y ) ∼ c iff: ( ✛ ( x ) ❀✛ ( y )) ∈ ✛ ( ✖ ) t ✛ ( y ) − t ✛ ( x ) ∼ c ✛ ( x ) ✛ ( y ) n 1
✿✿✿ ❀✿✿✿❀ ❀ ❀ ❀ ❀✿✿✿❀ ❀ ✿✿✿ ❀ Example: Timed Dyck Languages Definition Let Σ = { a 1 ❀✿✿✿❀ a m } be a set of opening brackets Let Σ = { a 1 ❀✿✿✿❀ a m } be a set of corresponding closing brackets
Recommend
More recommend