automata for real time systems
play

Automata for Real-Time Systems B. Srivathsan Chennai Mathematical - PowerPoint PPT Presentation

Automata for Real-Time Systems B. Srivathsan Chennai Mathematical Institute 1/33 Let T denote the set of all timed words L ( A ) = T ? Universality: Given A , is Inclusion: Given A , B , is L ( B ) L ( A ) ? Universality and


  1. Automata for Real-Time Systems B. Srivathsan Chennai Mathematical Institute 1/33

  2. Let T Σ ∗ denote the set of all timed words L ( A ) = T Σ ∗ ? Universality: Given A , is Inclusion: Given A , B , is L ( B ) ⊆ L ( A ) ? Universality and inclusion are undecidable when A has two clocks or more A theory of timed automata Alur and Dill. TCS’94 2/33

  3. A decidable case of the inclusion problem 3/33

  4. L ( A ) = T Σ ∗ ? Universality: Given A , is Inclusion: Given A , B , is L ( B ) ⊆ L ( A ) ? One-clock restriction Universality and inclusion are decidable when A has at most one clock On the language inclusion problem for timed automata: Closing a decidability gap Ouaknine and Worrell. LICS’05 4/33

  5. L ( A ) = T Σ ∗ ? Universality: Given A , is Inclusion: Given A , B , is L ( B ) ⊆ L ( A ) ? One-clock restriction Universality and inclusion are decidable when A has at most one clock On the language inclusion problem for timed automata: Closing a decidability gap Ouaknine and Worrell. LICS’05 In this lecture: universality for one clock TA 4/33

  6. Step 0: Well-quasi orders and Higman’s Lemma 5/33

  7. Quasi-order Given a set Q , a quasi-order is a reflexive and transitive relation: ⊑ ⊆ Q × Q ◮ ( N , ≤ ) ◮ ( Z , ≤ ) Let Λ = { A , B , . . . , Z } , Λ ∗ = { set of words } ◮ (Λ ∗ , lexicographic order ⊑ L ) : AAAB ⊑ L AAB ⊑ L AB ◮ (Λ ∗ , prefix order ⊆ P ) : AB ⊆ P ABA ⊆ P ABAA ◮ (Λ ∗ , subword order � ) HIGMAN � HIGHMOUNTAIN [OW’05] 6/33

  8. Well-quasi-order An infinite sequence � q 1 , q 2 , . . . � in ( Q , ⊑ ) is saturating if ∃ i < j : q i ⊑ q j A quasi-order ⊑ is a well-quasi-order (wqo) if every infinite sequence is saturating ◮ ( N , ≤ ) ◮ ( Z , ≤ ) ◮ (Λ ∗ , lexicographic order ⊑ L ) : ◮ (Λ ∗ , prefix order ⊆ P ) : ◮ (Λ ∗ , subword order � ) 7/33

  9. Well-quasi-order An infinite sequence � q 1 , q 2 , . . . � in ( Q , ⊑ ) is saturating if ∃ i < j : q i ⊑ q j A quasi-order ⊑ is a well-quasi-order (wqo) if every infinite sequence is saturating ◮ ( N , ≤ ) √ ◮ ( Z , ≤ ) × − 1 ≥ − 2 ≥ − 3 , . . . ◮ (Λ ∗ , lexicographic order ⊑ L ) : × B ⊒ L AB ⊒ L AAB . . . ◮ (Λ ∗ , prefix order ⊆ P ) : × B , AB , AAB , . . . ◮ (Λ ∗ , subword order � ) 7/33

  10. Well-quasi-order An infinite sequence � q 1 , q 2 , . . . � in ( Q , ⊑ ) is saturating if ∃ i < j : q i ⊑ q j A quasi-order ⊑ is a well-quasi-order (wqo) if every infinite sequence is saturating ◮ ( N , ≤ ) √ ◮ ( Z , ≤ ) × − 1 ≥ − 2 ≥ − 3 , . . . ◮ (Λ ∗ , lexicographic order ⊑ L ) : × B ⊒ L AB ⊒ L AAB . . . ◮ (Λ ∗ , prefix order ⊆ P ) : × B , AB , AAB , . . . ◮ (Λ ∗ , subword order � ) ? 7/33

  11. Higman’s lemma Let ⊑ be a quasi-order on Λ Define the induced monotone domination order � on Λ ∗ as follows: a 1 . . . a m � b 1 . . . b n if there exists a strictly increasing function f : { 1 , . . . , m } �→ { 1 , . . . , n } s.t ∀ 1 ≤ i ≤ m : a i ⊑ b f ( i ) 8/33

  12. Higman’s lemma Let ⊑ be a quasi-order on Λ Define the induced monotone domination order � on Λ ∗ as follows: a 1 . . . a m � b 1 . . . b n if there exists a strictly increasing function f : { 1 , . . . , m } �→ { 1 , . . . , n } s.t ∀ 1 ≤ i ≤ m : a i ⊑ b f ( i ) Higman’52 If ⊑ is a wqo on Λ , then the induced monotone domination order � is a wqo on Λ ∗ 8/33

  13. Subword order { A , B , . . . , Z } Λ := x ⊑ y if x = y ⊑ := 9/33

  14. Subword order { A , B , . . . , Z } Λ := x ⊑ y if x = y ⊑ := is a wqo as Λ is finite ⊑ 9/33

  15. Subword order { A , B , . . . , Z } Λ := x ⊑ y if x = y ⊑ := is a wqo as Λ is finite ⊑ Induced monotone domination order � is the subword order HIGMAN � HIGHMOUNTAIN 9/33

  16. Subword order { A , B , . . . , Z } Λ := x ⊑ y if x = y ⊑ := is a wqo as Λ is finite ⊑ Induced monotone domination order � is the subword order HIGMAN � HIGHMOUNTAIN By Higman’s lemma, � is a wqo too If we start writing an infinite sequence of words, we will eventually write down a superword of an earlier word in the sequence 9/33

  17. Step 1: A naive procedure for universality of one-clock TA 10/33

  18. Terminology Let A = ( Q , Σ , Q 0 , { x } , T , F ) be a timed automaton with one clock ◮ Location: q 0 , q 1 , · · · ∈ Q ◮ State: ( q , u ) where u ∈ R ≥ 0 gives value of the clock ◮ Configuration: finite set of states x < 1 , a 1 ≤ x ≤ 3 , Σ q 0 q 1 x ≥ 2 , b { x } 11/33

  19. Terminology Let A = ( Q , Σ , Q 0 , { x } , T , F ) be a timed automaton with one clock ◮ Location: q 0 , q 1 , · · · ∈ Q ◮ State: ( q , u ) where u ∈ R ≥ 0 gives value of the clock ◮ Configuration: finite set of states { ( q 1 , 2 . 3 ) , ( q 0 , 0 ) } x < 1 , a 1 ≤ x ≤ 3 , Σ q 0 q 1 x ≥ 2 , b { x } 11/33

  20. Transition between configurations: 0 . 2 , a { ( q 0 , 0 ) } − − − → x < 1 , a 1 ≤ x ≤ 3 , Σ q 0 q 1 x ≥ 2 , b { x } 12/33

  21. Transition between configurations: 0 . 2 , a { ( q 0 , 0 ) } − − − → { ( q 1 , 0 . 2 ) } x < 1 , a 1 ≤ x ≤ 3 , Σ q 0 q 1 x ≥ 2 , b { x } 12/33

  22. Transition between configurations: 0 . 2 , a 2 . 1 , b { ( q 0 , 0 ) } − − − → { ( q 1 , 0 . 2 ) } − − − → x < 1 , a 1 ≤ x ≤ 3 , Σ q 0 q 1 x ≥ 2 , b { x } 12/33

  23. Transition between configurations: 0 . 2 , a 2 . 1 , b { ( q 0 , 0 ) } − − − → { ( q 1 , 0 . 2 ) } − − − → { ( q 1 , 2 . 3 ) , ( q 0 , 0 ) } . . . x < 1 , a 1 ≤ x ≤ 3 , Σ q 0 q 1 x ≥ 2 , b { x } 12/33

  24. Transition between configurations: 0 . 2 , a 2 . 1 , b { ( q 0 , 0 ) } − − − → { ( q 1 , 0 . 2 ) } − − − → { ( q 1 , 2 . 3 ) , ( q 0 , 0 ) } . . . x < 1 , a 1 ≤ x ≤ 3 , Σ q 0 q 1 x ≥ 2 , b { x } δ, a C 1 − − → C 2 if δ, a C 2 = { ( q 2 , u 2 ) | ∃ ( q 1 , u 1 ) ∈ C 1 s. t. ( q 1 , u 1 ) → ( q 2 , u 2 ) } − − 12/33

  25. Labeled transition system of configurations 0 . 4 , a 3 . 6 , b . . . . . . . . . . . . . . . . . . 13/33

  26. Labeled transition system of configurations 0 . 4 , a 3 . 6 , b . . . . . . . . . . . . . . Bad: all locations non-accepting . . . . 13/33

  27. Labeled transition system of configurations 0 . 4 , a 3 . 6 , b . . . . . . . . . . . . . . Bad: all locations non-accepting . . . . Is a bad configuration reachable from some initial configuration? 13/33

  28. . . . . . . . . . . . . . . . . . . Need to handle two dimensions of infinity! 14/33

  29. . . . . . . . . . . . . abstraction by equivalence ∼ C 1 C 2 . . . . . . C 1 ∼ C 2 iff: C 1 goes to a bad config. C 2 goes to a bad config. ⇔ 15/33

  30. . . . . . . . . . . . . C 1 . . finite domination order � . C 2 . . . C 1 � C 2 iff: C 2 goes to a bad config C 1 goes to a bad config. too ⇒ 16/33

  31. . . . . . . . . . . . . C 1 . . finite domination order � . C 2 . . . C 1 � C 2 iff: C 2 goes to a bad config C 1 goes to a bad config. too ⇒ No need to explore C 2 ! 16/33

  32. Step 2: The equivalence Credits: Examples in this part taken from one of Ouaknine’s talks 17/33

  33. Equivalent configurations: Examples C 1 = { ( q 0 , 0 . 5 ) } ≁ C 2 = { ( q 0 , 1 . 3 ) } q 0 C 1 . . . . . . . . . q 0 C 2 . . . . . . . . . 18/33

  34. Equivalent configurations: Examples C 1 = { ( q 0 , 0 . 5 ) } ≁ C 2 = { ( q 0 , 1 . 3 ) } q 0 C 1 . . . . . . . . . q 0 C 2 . . . . . . . . . x > 1 , Σ Σ q 0 q 1 C 2 is universal, but C 1 rejects ( a , 0 ) 18/33

  35. q 0 . . . . . . . . . ∼ q 0 . . . . . . . . . q 0 . . . . . . . . . ∼ q 0 . . . . . . . . . 19/33

  36. q 0 C 1 . . . . . . . . . 0 . 7 1 . 2 ≁ q 0 C 2 . . . . . . . . . 0 . 3 1 . 8 20/33

  37. q 0 C 1 . . . . . . . . . 0 . 7 1 . 2 ≁ q 0 C 2 . . . . . . . . . 0 . 3 1 . 8 x < 1 ∨ x > 2 , Σ Σ q 0 q 1 C 2 is universal, but C 1 rejects ( a , 0 . 5 ) 20/33

  38. Let K be the largest constant appearing in A Define REG = { r 0 , r 1 0 , r 1 , . . . , r K , r ∞ K } r 0 r 1 r 1 r 2 r 2 · · · r K r ∞ K 0 1 0 1 2 K 21/33

  39. Let K be the largest constant appearing in A Define REG = { r 0 , r 1 0 , r 1 , . . . , r K , r ∞ K } r 0 r 1 r 1 r 2 r 2 · · · r K r ∞ K 0 1 0 1 2 K C = { ( q 1 , 0 . 0 ) , ( q 1 , 0 . 3 ) , ( q 1 , 1 . 2 ) , ( q 2 , 1 . 0 ) , ( q 3 , 0 . 8 ) , ( q 3 , 1 . 3 ) } 21/33

  40. Let K be the largest constant appearing in A Define REG = { r 0 , r 1 0 , r 1 , . . . , r K , r ∞ K } r 0 r 1 r 1 r 2 r 2 · · · r K r ∞ K 0 1 0 1 2 K C = { ( q 1 , 0 . 0 ) , ( q 1 , 0 . 3 ) , ( q 1 , 1 . 2 ) , ( q 2 , 1 . 0 ) , ( q 3 , 0 . 8 ) , ( q 3 , 1 . 3 ) } { ( q 1 , r 0 , 0 ) , ( q 1 , r 1 0 , 0 . 3 ) , ( q 1 , r 2 1 , 0 . 2 ) , ( q 2 , r 1 , 0 ) , ( q 3 , r 1 0 , 0 . 8 ) , ( q 3 , r 2 1 , 0 . 3 ) } 21/33

Recommend


More recommend