3 COMP 1 5 9 3 Algorithmic Verification Timed Automata and - - PowerPoint PPT Presentation

3 comp 1 5 9 3 algorithmic verification
SMART_READER_LITE
LIVE PREVIEW

3 COMP 1 5 9 3 Algorithmic Verification Timed Automata and - - PowerPoint PPT Presentation

<latexit


slide-1
SLIDE 1

Timed Automata Timed Languages

COMP 3 9 1 5 3 Algorithmic Verification

<latexit sha1_base64="P4jUJHo6g1yopyZBD74hiv3LdI=">AIZHicjVRb9NIFD6kXEKW6l4QEhoCBalIa4JYJqVcTSF14QRaIFqanQ2D5xRpnYZjxpG6L8Cn7d/oH9EfvEmWPnRgy7juw5/ubMd75zif1Uq8w2m39fqKxcvHT5SvVq7Y9r12/cvLV6+yhLBibAwyDRifnsywy1ivHQKqvxc2pQ9n2Nn/zevtv/dIomU0n80Q5TPOnLKFYdFUhL0JfVyve2j5GKR1b1vqUqsAOD41o7TkI8zqy0WO8orfd8PcAH2826ULGySuoTsfHV2xSjtsVz63fyNeuM9t+/OxiPx38uMxgMmUD6ySkKo6KuFUln76tHVHqnhGqnOdUJRotU/mok7OfqXZLqHbLqSKDGJeJ0ruOqSw/r5xpiJqkMNWMhOW0Skha5STBUMZzeTmKVl0GAaZWxRGX6fzXdQqNPMubgmGEXIgydGeGuqoXqDeH7paiM4bWHNqa8Z5vFikJacWGV9/yGtNWkMq/dJQYZbt9FYgjNMJZO0Yhwvz9+XWerPR5EsG15hrENxHSrlTa0IYQEAhAHxBisGRrkJDR7xg8aEJK2AmMCDNkKd5HGEONzg7IC8lDEtqjZ0RvxwUa07vjzPh0QFE03YZOCnhc+IRkdxjNVxdfzPn+KsaIuZ3GIa1+wdkn1EKX0P86N/H8v+dcTpYUvuRcFOlMGXFZBgsZdWjV9G5Jv3sOyRPJCumUISsgTBOaIy6GoTWvq8u8y3W7Idk/S4Xd6oH3zj+xGeCaVp9ZjIUzeU9YE15rhLqdCal96yI7mrv8op4x50yhJ3Rvu0zBhzqOMyGsLXrH3K9gj1OmVFNdV8gnj+l28Xo8BYJ3cIFdMCKpFm7f5767majRvfyLaT+cVjPjPFz9keJ70IAW2f1p5IwrH5Bnh+5FBX3OVdHq5n6Zz2lxWZ7R0/VYsJ3MacgonoB97lfM/RAcyXkgc7jpzKvfWMoI4ZS7O2SdlnuC8Iw8M54ZzTmNWK/intf5H6JoR9NOxJ0dwgPKuUkdmuXsVM9nmnKlU45mp3WY/OeQJ6oLQtyd6SB7vtaLyvO6WZ7dfM4Rzum5B4/o7dFvlEw8c0SyJUlZyioM+yZFrfMTuSJTeM5mpgbuW+f9/GVbNo62G97zxvMP2+uv3xRfvSrcg4ewQfPyAl7DWziAQwgq/6Ilc2Vp1f+qV6rlXv5K6VC8WZNVi4qvd/AB3w9Tw=</latexit>

Timed Automata and Languages

  • Dr. Liam O’Connor

CSE, UNSW (and LFCS, University of Edinburgh) Term 1 2020

1

slide-2
SLIDE 2

Timed Automata Timed Languages

Timed Systems

The systems we have examined so far have a notion of time, but

  • nly of events happening one after the other. This is an

abstraction called discrete time. For dense time systems, we care about a real-valued continuous time clocks. Example (Dense Time System) A light controlled by one button, where a “double press” of the button increases the brightness of the light. The second button press must be at most 3 time units after the first button press for the “double press” behaviour to trigger. After 12 time units, the light must turn off.

2

slide-3
SLIDE 3

Timed Automata Timed Languages

Can we get away with discrete time?

No Theorem (Brzozowski and Seger) For every k ≥ 1 there is a system where the set of states reachable in dense time is strictly larger than the set of states reachable in discrete time in 1

k steps.

This is shown for asynchronous circuits, but applies generally.

3

slide-4
SLIDE 4

Timed Automata Timed Languages

Towards Timed Automata

Off On Bright press; x := 0; y := 0 press; x ≤ 3 timeout; y = 12 press press; x > 3 timeout; y = 12 [y ≤ 12] [y ≤ 12]

4

slide-5
SLIDE 5

Timed Automata Timed Languages

Timed Automata

A timed automaton is a finite automaton with one or more real valued clocks. Transitions are annotated with resets and guards and states may be annotated with invariants. Definition A timed automaton A is a 6-tuple (L, ℓ0, Act, X, Inv, − →) where: L is a set of locations. ℓ0 is the initial location. Act is the set of discrete actions. X is the set of clock variables. Inv(ℓ) is a clock constraint invariant associated with ℓ. Transitions are defined as ℓ

g;a;r

− − − → ℓ′ where

g is zero or more clock constraint guards. a is an action ∈ Act r is zero or more clock resets

5

slide-6
SLIDE 6

Timed Automata Timed Languages

Clock Constraints

For reasons that will become clear later, we want to restrict clock constraints to linear subtractions: ϕ ::= x ∼ k | x − y ∼ k | ϕ1 ∧ ϕ2 where x, y ∈ X and k ∈ Z and (∼) ∈ {<, ≤, =, ≥, >}

6

slide-7
SLIDE 7

Timed Automata Timed Languages

States and Runs

States The state of a timed automaton is a tuple of the location ∈ L and the values of all clocks ∈ R. Runs A run of a timed automaton is some interleaving of delay steps (which pass some time) and discrete steps, which take an action. Example (For the light automaton. . . ) (Off, x = y = 0) 265+π2 − − − − → (Off, x = y = 265 + π2)

press

− − − → (On, x = y = 0) 3.2 − − → (On, x = y = 3.2)

press

− − − → (Off, x = y = 3.2) 27.87 − − − → (Off, x = y = 31.07) − → · · ·

7

slide-8
SLIDE 8

Timed Automata Timed Languages

Product

The product of timed automata is as the discrete time product, where we take the conjunction of all guards and invariants, and the union of all resets. Example (Boardwork) Let’s compute the product of the light automaton with this user automaton: ℓ0 ℓ1 z ≥ 5; press press; z := 0 [z ≤ 6]

8

slide-9
SLIDE 9

Timed Automata Timed Languages

Timed Words and Languages

Timed Words A timed word is a finite or infinite sequence of pairs of actions and time stamps. Example (overlines indicate sequences) L1 = {(a, t) | a = (01)∗0 ∧ ∀i ≥ 0. t2(i+1) − t2i = 3} L2 = {(a, t) | a = (01)ω ∧ ∀i ≥ 0. t2i+1 ≤ t2i + 1} Timed Languages Extend TA definition of A with a set F of final states and a set R

  • f repeating states.

A finite word w is ∈ L(A) iff a run generating the word w ends in a state F. An infinite word w is ∈ L(A) iff a run generating the word w visits states in R infinitely often.

9

slide-10
SLIDE 10

Timed Automata Timed Languages

Timed Regular Languages

Definition A language is timed regular iff there exists a timed automaton that recognises it. Timed regular languages are closed under union and intersection in the usual way — merge the initial states and product respectively. Problem Write a timed automaton for words on the alphabet {a, b} that contain two a’s exactly 1 time unit apart. Complement is not timed regular ⇒ not closed.

10

slide-11
SLIDE 11

Timed Automata Timed Languages

ε-Transitions

Unlike for discrete time systems, ε transitions add power for timed automata. Example Consider the language where actions must occur on integer time

  • stamps. This can be done with a ε reset, but cannot be expressed

as a timed automaton without ε.

11

slide-12
SLIDE 12

Timed Automata Timed Languages

True Invariants

Do we need invariants? Not to recognise a given timed regular language. This is because our timed words only pair time stamps with discrete actions, so violating invariants by sitting still does not change the set of recognised words. So, we just move the invariants to both the incoming and outgoing transitions like so: ℓ1

g;a;r

− − − → ℓ2 becomes ℓ1

g ∧ Inv(ℓ1) ∧ r(Inv(ℓ2));a;r

− − − − − − − − − − − − − − − − − → ℓ2 Where r(ϕ) is applying the resets r as a substitution to ϕ.

12