# Timed Automata.

## Presentation on theme: "Timed Automata."— Presentation transcript:

Timed Automata

Final Exam Time: June 25th, 2pm-4pm
Location: TBD

Aim of the Lecture knowledge of a basic formalism for modeling timed
systems basic understanding of verification algorithms for timed systems (useful for practical modeling and verification).

Example: Peterson's Algorithm
flag[0], flag[1] (initialed to false) — meaning I want to access CS turn (initialized to 0) — used to resolve conflicts Process 0: while (true) { <noncritical section>; flag[0] := true; turn := 1; while flag[1] and turn = 1 do { }; <critical section>; flag[0] := false; } Process 1: while (true) { <noncritical section>; flag[1] := true; turn := 0; while flag[0] and turn = 0 do { }; <critical section>; flag[1] := false; }

Example: Peterson's Algorithm

Example: Peterson's Algorithm

Fischer's Protocol id — shared variable
each process has it's own timer (for delaying) for correctness it is necessary that K2 > K1 Process i: while (true) { <noncritical section>; while id != 0 do {} delay K1; id := i; delay K2; if (id = i) { <critical section>; id := 0; }

Modeling Real Time Systems
Two models of time: discrete time domain continuous time domain

Discrete Time Domain clock ticks at regular interval
at each tick something may happen between ticks — the system only waits

Discrete Time Domain choose a fixed sample period ε
all events happen at multiples of ε simple extension of classical models main disadvantage — how to choose ε ? big ε  too coarse model low ε  time fragmentation, too big state space usage: particularly synchronous systems (hardware circuits)

Continuous Time Domain
time is modeled as real numbers delays may be arbitrarily small more faithful model, suited for asynchronous systems uncountable state space  cannot be directly handled automatically by “brute force”

Timed Automata extension of finite state machines with clocks
continuous real semantics limited list of operations over clocks  automatic verification is feasible allowed operations: comparison of a clock with a constant reset of a clock uniform flow of time (all clocks have the same rate)

What is a Timed Automaton?
an automaton with locations (states) and edges the automaton spends time only in locations, not in edges

What is a Timed Automaton? (2)
real valued clocks (x, y, z) all clocks run at the same speed clock constraints can be guards on edges

What is a Timed Automaton? (3)
clocks can be reset when taken an edge only a reset to value 0 is allowed

What is a Timed Automaton? (4)
location invariants forbid to stay in a state too long invariants force taking an edge

Clock Constraints

Timed Automata Syntax

Semantics: Main Idea semantics is a state space (reminder: guarded command language, extended finite state machines) states given by: location (local state of the automaton) clock valuation transitions: waiting — only clock valuation changes action — change of location

Clock Valuations

Evaluation of Clock Constraints

Examples

Timed Automata Semantics

Example What is a clock valuation? What is a state?
Find a run = sequence of states

Example

Example 2 What does the automaton do? Write an example of a run...

Examples construct a simple timed automata model of:
a digital wristwatch with 4 modes: cycle through modes “intelligent” return to basic mode (after used, timeout, ...) daily (morning) schedule: breakfast, transport, lecture, ... (include minimal times necessary, deadlines, ...)

Semantics: Notes the semantics is infinite state (even uncountable)
the semantics is even infinitely branching

Reachability Problem Reachability Problem
Input: a timed automaton A, a location l of the automaton Question: does there exists a run of A which ends in l This problem formalises the verification of safety problems — is an erroneous state reachable?

Example How to do it algorithmically?

Reachability Problem Theorem： Notes
The reachability problem is PSPACE-complete. Notes note that even decidability of the problem is not straightforward — remind that the semantics is infinite state decidability proved by region construction (to be discussed) completeness proved by general reduction from linearly bounded Turing machine (not discussed)

Region Construction Main idea: some clock valuations are equivalent
work with regions of valuations instead of valuations finite number of regions

Preliminaries

Equivalence on Clock Valuation

Equivalence on Clock Valuation

Equivalence: Example 1

Equivalence: Example 2

Regions

Regions: Example

Regions: Example

Region Graph

Operations on Regions To construct the region graph, we need the following operations: let time pass — go to adjacent region at top right intersect with a clock constraint (note that clock constraints define supersets of regions) if region is in the constraint: no change otherwise: empty reset a clock — go to a corresponding region

Example: Automaton

Example: Region Graph

Other Problems verification of temporal (timed) logic
universality, language inclusion (undecidable!) (timed) bisimulation of timed automata

Zones

Difference Bound Matrix

Zone Graph: Example

Approximations

Extensions For practical modeling we use several extensions:
location invariants parallel composition of automata channel communication, synchronization integer variables These issues are solved in the ‘usual way’. Here we focused on the basic model, basic aspects dealing with time.

Example: Parallel Composition

Fischer's Protocol id — shared variable
each process has it's own timer (for delaying) for correctness it is necessary that K2 > K1 Process i: while (true) { <noncritical section>; while id != 0 do {} delay K1; id := i; delay K2; if (id = i) { <critical section>; id := 0; }

Fischer's Protocol: Mode

Summary timed automata: formal syntax and semantics
reachability problem: the basic verification problem, decidable (PSPACE-complete) practical verification: zones, approximation techniques, ...

Hybrid System Systems containing both discrete and continuous components Practical Examples: Embedded System Controller VLSI circuits System Biology Safety Critical Area Formal Verification Formal Model : Hybrid Automata

Hybrid Automata Widely studied formal models for hybrid systems
They consist of A finite state transition system Differential equations in each location Example

Linear Hybrid Automata
Approximate

Safety Verification Reachability
Find a sequence of states which can reach the target The continuous states between states and Flow function and first derivative and for all reals satisfies invariant in

Reachability Analysis
Approach Over-approximation Geometric Computation Tools HyTech PHAVer Performance Undecidable Imprecise Low dimension

Reachability Analysis
Bounded Model Checking Search for a potential behavior within k step Usually solved by SMT techniques Need to encode all the potential bounded behavior firstly Medium bound －> Large SMT problem Control The Complexity!

Thank You