Model Checking: the Interval Way Alberto Molinari ( j.w. with L. - - PowerPoint PPT Presentation

model checking the interval way
SMART_READER_LITE
LIVE PREVIEW

Model Checking: the Interval Way Alberto Molinari ( j.w. with L. - - PowerPoint PPT Presentation

Model Checking: the Interval Way Alberto Molinari ( j.w. with L. Bozzelli, A. Montanari, A. Peron, P. Sala ) University of Udine Department of Mathematics, Computer Science, and Physics (DMIF) July 27, 2018 MODEL CHECKING Model checking : the


slide-1
SLIDE 1

Model Checking: the Interval Way

Alberto Molinari ( j.w. with L. Bozzelli, A. Montanari, A. Peron, P. Sala ) University of Udine Department of Mathematics, Computer Science, and Physics (DMIF) July 27, 2018

slide-2
SLIDE 2

2

MODEL CHECKING

Model checking: the desired properties of a system are checked against a model of the system

the model is a (finite) state-transition graph system properties are specified by a temporal logic (e.g., LTL, CTL, CTL*, . . . )

Distinctive features of model checking:

exhaustive verification of all the possible behaviours fully automatic process a counterexample is produced for a violated property

slide-3
SLIDE 3

3

POINT-BASED VS. INTERVAL-BASED MC

Model checking (MC) is usually point-based:

properties express requirements over points (snapshots) of a computation (states of the state-transition system) they are specified by means of point-based temporal logics such as LTL, CTL, and CTL∗.

Interval-based MC:

Interval-based properties express conditions on computation stretches they are specified by means of interval temporal logics, which feature intervals as their basic ontological entities (e.g., HS)

ability to express: actions with duration, accomplishments, aggregations applied to computational linguistics, artificial intelligence, temporal databases, formal verification

slide-4
SLIDE 4

4

THE LOGIC HS

HS features a modality for each of the 13 Allen’s ordering relations between pairs of intervals (except for equality)

Allen rel. HS Definition Example x y v z v z v z v z v z v z meets A [x, y]RA[v, z] ⇐ ⇒ y = v before L [x, y]RL[v, z] ⇐ ⇒ y < v started-by B [x, y]RB[v, z] ⇐ ⇒ x = v ∧ z < y finished-by E [x, y]RE[v, z] ⇐ ⇒ y = z ∧ x < v contains D [x, y]RD[v, z] ⇐ ⇒ x < v ∧ z < y

  • verlaps

O [x, y]RO[v, z] ⇐ ⇒ x < v < y < z

ψ ::= p | ¬ψ | ψ ∨ ψ | Xψ | Xψ X ∈ {A, L, B, E, D, O}. All modalities can be expressed by means of A, B, E and their transposed modalities A, B, E only

slide-5
SLIDE 5

5

KRIPKE STRUCTURES

v0

v2

p2

v1

p1

v3

p3

v1

p1

v2

p2

v3

p3

HS formulas are interpreted

  • ver (finite) state-transition

systems whose states are labeled with sets of proposition letters (Kripke structures) An interval is a trace (finite path) in a Kripke structure

slide-6
SLIDE 6

6

HS (STATE-BASED) SEMANTICS

Bϕ3 ϕ3

Branching semantics of past/future operators

slide-7
SLIDE 7

7

HS (STATE-BASED) SEMANTICS ϕ1 B ϕ1 ϕ1 E ϕ1

Branching semantics of past/future operators

slide-8
SLIDE 8

8

HS (STATE-BASED) SEMANTICS AND MC

Truth of a formula ψ over a trace ρ of a Kripke structure K = (AP, W, δ, µ, w0): K , ρ | = p iff p ∈

w∈states(ρ) µ(w), for any letter p ∈ AP

(homogeneity assumption);

slide-9
SLIDE 9

9

HS (STATE-BASED) SEMANTICS AND MC

Truth of a formula ψ over a trace ρ of a Kripke structure K = (AP, W, δ, µ, w0): K , ρ | = p iff p ∈ µ(fst(ρ), lst(ρ)), for any letter p ∈ AP (endpoint-based labeling);

slide-10
SLIDE 10

10

HS (STATE-BASED) SEMANTICS AND MC

Truth of a formula ψ over a trace ρ of a Kripke structure K = (AP, W, δ, µ, w0): K , ρ | = r iff µ(ρ) ∈ L(r) (labeling based on regular expressions, subsuming the others);

slide-11
SLIDE 11

11

HS (STATE-BASED) SEMANTICS AND MC

Truth of a formula ψ over a trace ρ of a Kripke structure K = (AP, W, δ, µ, w0): K , ρ | = r iff µ(ρ) ∈ L(r) (labeling based on regular expressions, subsuming the others); negation, disjunction, and conjunction are standard; K , ρ | = A ψ . . . ; K , ρ | = B ψ . . . ; K , ρ | = E ψ . . . ; inverse operators A, B, E

slide-12
SLIDE 12

12

HS (STATE-BASED) SEMANTICS AND MC

Truth of a formula ψ over a trace ρ of a Kripke structure K = (AP, W, δ, µ, w0): K , ρ | = r iff µ(ρ) ∈ L(r) (labeling based on regular expressions, subsuming the others); negation, disjunction, and conjunction are standard; K , ρ | = A ψ . . . ; K , ρ | = B ψ . . . ; K , ρ | = E ψ . . . ; inverse operators A, B, E

MC

K | = ψ ⇐ ⇒ for all initial traces ρ of K , it holds that K , ρ | = ψ Possibly infinitely many traces!

slide-13
SLIDE 13

13

HS (STATE-BASED) SEMANTICS AND MC

Truth of a formula ψ over a trace ρ of a Kripke structure K = (AP, W, δ, µ, w0): K , ρ | = r iff µ(ρ) ∈ L(r) (labeling based on regular expressions, subsuming the others); negation, disjunction, and conjunction are standard; K , ρ | = A ψ . . . ; K , ρ | = B ψ . . . ; K , ρ | = E ψ . . . ; inverse operators A, B, E

MC

K | = ψ ⇐ ⇒ for all initial traces ρ of K , it holds that K , ρ | = ψ Possibly infinitely many traces!

slide-14
SLIDE 14

14

THE KRIPKE STRUCTURE KSCHED FOR A SIMPLE SCHEDULER

v0

v2

p2

v1

p1

v3

p3

v1

p1

v2

p2

v3

p3

slide-15
SLIDE 15

15

A SHORT ACCOUNT OF KSCHED

KSched models the behaviour of a scheduler serving 3 processes which are continuously requesting the use of a common resource (easily generalizable to an arbitrary number of processes) Initial state: v0 (no process is served in that state) In vi and vi the i-th process is served (pi holds in those states) The scheduler cannot serve the same process twice in two successive rounds: process i is served in state vi, then, after “some time”, a transition ui from vi to vi is taken; subsequently, process i cannot be served again immediately, as vi is not directly reachable from vi a transition rj, with j = i, from vi to vj is then taken and process j is served

slide-16
SLIDE 16

16

SOME PROPERTIES TO BE CHECKED OVER KSCHED

Validity of properties over all reachable computation intervals can be forced by modality [E] (they are suffixes of at least one initial trace). In any computation interval of length at least 4, at least 2 processes are witnessed (YES: no process can be executed twice in a row) KSched | = [E]

  • E3 ⊤ → (χ(p1, p2) ∨ χ(p1, p3) ∨ χ(p2, p3))
  • ,

where χ(p, q)=E A p ∧ E A q. In any computation interval of length at least 11, process 3 is executed at least once (NO: the scheduler can postpone the execution of a process ad libitum—starvation) KSched | = [E](E10 ⊤ → E A p3). In any computation interval of length at least 6, all processes are witnessed (NO: the scheduler should be forced to execute them in a strictly periodic manner, which is not the case) KSched | = [E](E5 → (E A p1 ∧ E A p2 ∧ E A p3)).

slide-17
SLIDE 17

17

MC: THE KEY NOTION OF BEK-DESCRIPTOR

The BE-nesting depth of an HS formula ψ (NestBE(ψ)) is the maximum degree of nesting of modalities B and E in ψ Two traces ρ and ρ′ of a Kripke structure K are k-equivalent iff: K , ρ | = ψ iff K , ρ′ | = ψ for all HS formulas ψ with NestBE(ψ) ≤ k

slide-18
SLIDE 18

18

MC: THE KEY NOTION OF BEK-DESCRIPTOR

The BE-nesting depth of an HS formula ψ (NestBE(ψ)) is the maximum degree of nesting of modalities B and E in ψ Two traces ρ and ρ′ of a Kripke structure K are k-equivalent iff: K , ρ | = ψ iff K , ρ′ | = ψ for all HS formulas ψ with NestBE(ψ) ≤ k For any given k, we provide a suitable tree representation for a trace, called a BEk-descriptor

slide-19
SLIDE 19

19

MC: THE KEY NOTION OF BEK-DESCRIPTOR

The BEk-descriptor for a trace ρ = v0v1 . . . vm−1 vm, denoted BEk(ρ), has the following structure:

(v0, {v1, . . . , vm−1}, vm) . . . . . . . . . . . . BEk−1(ρS2) . . . . . . . . . BEk−1(ρS1) . . . . . . . . . . . . . . . . . . . . . BEk−1(ρP2) . . . . . . . . . BEk−1(ρP1) . . . . . . . . . ← descriptor element ↑ ρP1, ρP2, . . . prefixes of ρ ↑ ρS1, ρS2, . . . suffixes of ρ

Remark: the descriptor does not feature sibling isomorphic subtrees

slide-20
SLIDE 20

20

AN EXAMPLE OF A BE2-DESCRIPTOR

v0

p

v1

q The BE2-descriptor for the trace ρ = v0v1v4

0v1 (for the sake of readability, only

the subtrees for prefixes are displayed and point intervals are excluded)

(v0, {v0, v1}, v1) (v0, ∅, v1) (v0, {v1}, v0) (v0, ∅, v1) (v0, {v0, v1}, v0) (v0, ∅, v1) (v0, {v1}, v0) (v0, {v0, v1}, v0) (v0, ∅, v1) (v0, {v1}, v0) (v0, {v0, v1}, v0)

slide-21
SLIDE 21

21

AN EXAMPLE OF A BE2-DESCRIPTOR

v0

p

v1

q The BE2-descriptor for the trace ρ = v0v1v4

0v1 (for the sake of readability, only

the subtrees for prefixes are displayed and point intervals are excluded)

(v0, {v0, v1}, v1) (v0, ∅, v1) (v0, {v1}, v0) (v0, ∅, v1) (v0, {v0, v1}, v0) (v0, ∅, v1) (v0, {v1}, v0) (v0, {v0, v1}, v0) (v0, ∅, v1) (v0, {v1}, v0) (v0, {v0, v1}, v0)

Remark: the subtree to the left is associated with both prefixes v0v1v3 and v0v1v4

0 (no sibling isomorphic subtrees in the descriptor)

slide-22
SLIDE 22

22

DECIDABILITY OF MC FOR FULL HS

FACT 1: For any Kripke structure K and any BE-nesting depth k ≥ 0, the number of different BEk-descriptors is finite (and thus at least one descriptor has to be associated with infinitely many traces)

slide-23
SLIDE 23

23

DECIDABILITY OF MC FOR FULL HS

FACT 1: For any Kripke structure K and any BE-nesting depth k ≥ 0, the number of different BEk-descriptors is finite (and thus at least one descriptor has to be associated with infinitely many traces) FACT 2: Two traces ρ and ρ′ of a Kripke structure K described by the same BEk-descriptor are k-equivalent

slide-24
SLIDE 24

24

DECIDABILITY OF HS MC

Theorem

The MC problem for full HS over Kripke structures is decidable (nonelementary algorithm)

Reference

  • A. Molinari, A. Montanari, A. Murano, G. Perelli, and A. Peron. Checking

interval properties of computations. Acta Informatica, pages 587–619, 2016

slide-25
SLIDE 25

25

DECIDABILITY OF HS MC

Theorem

The MC problem for full HS over Kripke structures is decidable (nonelementary algorithm)

Reference

  • A. Molinari, A. Montanari, A. Murano, G. Perelli, and A. Peron. Checking

interval properties of computations. Acta Informatica, pages 587–619, 2016

Theorem

The MC problem for BE over Kripke structures is EXPSPACE-hard.

Reference

  • L. Bozzelli, A. Molinari, A. Montanari, A. Peron, and P. Sala. Interval

Temporal Logic Model Checking: the Border Between Good and Bad HS Fragments. In IJCAR, pages 389–405, 2016

slide-26
SLIDE 26

26

THE LOGIC AABBE

Let us consider the case of the logic AABBE, which is obtained from full HS (AABEBE) by removing modality E

slide-27
SLIDE 27

27

THE LOGIC AABBE

Let us consider the case of the logic AABBE, which is obtained from full HS (AABEBE) by removing modality E A high-level account of the solution: we can restrict our attention to prefixes (Bk-descriptors suffice) the size of the tree representation of Bk-descriptors is larger than necessary (redundancy) and it prevents their efficient use in MC algorithms a trace representative can be chosen to represent a (possibly infinite) set of traces associated with the same Bk-descriptor a bound, which depends on both the number |W| of states of the Kripke structure and the B-nesting depth h of the formula to check, can be given to the length of trace representatives

slide-28
SLIDE 28

28

H-PREFIX SAMPLING i j P0

×

slide-29
SLIDE 29

29

H-PREFIX SAMPLING i j P1

× × × × × ×

slide-30
SLIDE 30

30

H-PREFIX SAMPLING i j P1 P2

× × × × × × × × ×

slide-31
SLIDE 31

31

H-PREFIX SAMPLING i j P1 P2 P3

× × × × × × × × × × ×

slide-32
SLIDE 32

32

A SMALL-MODEL (TRACE) RESULT

From a trace ρ, we can derive an h-equivalent trace ρ′ in this way:

1

we first compute the (h + 1)-prefix sampling Ph+1 of ρ;

2

then for all the pairs of consecutive ρ-positions i, j ∈ Ph+1, we replace each ρ(i, j) by another trace with no repeated occurrences of any state, except at most the first/last ones (hence no longer than (|K | + 2)).

ρ and ρ′ can be proved to be h-equivalent By the previous bound on |Ph+1|, we have |ρ′| ≤ (|K | + 2)h+2.

slide-33
SLIDE 33

33

AN EXPSPACE MC ALGORITHM FOR AABBE

Theorem (Small model/trace property)

Given a trace ρ, we can derive its trace representative ρ′, NestB(ψ)-equivalent to it, such that |ρ′| ≤ (|K | + 2)NestB(ψ)+2 Algorithm 1 ModCheck(K , ψ)

1: h ← NestB(ψ) 2: for all initial traces ρ′ with |ρ′| ≤ (|K | + 2)h+2 do 3:

if Check(K , h, ψ, ρ′) = 0 then return 0: “K , ρ′ | = ψ” ⊳ Counterex X return 1: “K | = ψ” ⊳ MC OK

Reference

  • L. Bozzelli, A. Molinari, A. Montanari, A. Peron, and P. Sala. Interval

temporal logic model checking based on track bisimilarity and prefix sampling. In ICTCS, pages 49–61, 2016

slide-34
SLIDE 34

34

COMPLEXITY RESULTS

Homogeneity Full HS, BE non-elementary EXPSPACE-hard AABBE, AAEBE ∈ AEXPPol PSPACE-hard AABE PSPACE-complete AABB, BB, B, PSPACE-complete AAEE, EE, E AAB, AAE, AB, AE PNP-complete AA, AB, AE, A, A ∈ PNP[O(log2 n)] PNP[O(log n)]-hard Prop, B, E co-NP-complete

slide-35
SLIDE 35

35

EXPRESSIVENESS RESULTS (UNDER HOMOGENEITY)

HSct HSlin HSst finitary CTL∗ LTL CTL CTL∗ ≡ ≡ < = < = = = =

Reference

  • L. Bozzelli, A. Molinari, A. Montanari, A. Peron, and P. Sala. Interval vs.

Point Temporal Logic Model Checking: an Expressiveness Comparison. In FSTTCS, 2016

slide-36
SLIDE 36

36

  • L. Bozzelli, A. Molinari, A. Montanari, and A. Peron.

An in-depth investigation of interval temporal logic model checking with regular expressions. In SEFM, pages 104–119, 2017.

  • L. Bozzelli, A. Molinari, A. Montanari, and A. Peron.

On the complexity of model checking for syntactically maximal fragments of the interval temporal logic HS with regular expressions. In GandALF, pages 31–45, 2017.

  • L. Bozzelli, A. Molinari, A. Montanari, A. Peron, and P. Sala.

Interval temporal logic model checking based on track bisimilarity and prefix sampling. In ICTCS, pages 49–61, 2016.

  • L. Bozzelli, A. Molinari, A. Montanari, A. Peron, and P. Sala.

Interval Temporal Logic Model Checking: the Border Between Good and Bad HS Fragments. In IJCAR, pages 389–405, 2016.

  • L. Bozzelli, A. Molinari, A. Montanari, A. Peron, and P. Sala.

Interval vs. Point Temporal Logic Model Checking: an Expressiveness Comparison. In FSTTCS, 2016.

slide-37
SLIDE 37

37

  • L. Bozzelli, A. Molinari, A. Montanari, A. Peron, and P. Sala.

Model Checking the Logic of Allen’s Relations Meets and Started-by is PNP-Complete. In GandALF, pages 76–90, 2016.

  • L. Bozzelli, A. Molinari, A. Montanari, A. Peron, and P. Sala.

Satisfiability and model checking for the logic of sub-intervals under the homogeneity assumption. In ICALP, pages 120:1–120:14, 2017.

  • A. Molinari, A. Montanari, A. Murano, G. Perelli, and A. Peron.

Checking interval properties of computations. Acta Informatica, pages 587–619, 2016.

  • A. Molinari, A. Montanari, and A. Peron.

Complexity of ITL model checking: some well-behaved fragments

  • f the interval logic HS.

In TIME, pages 90–100, 2015.

  • A. Molinari, A. Montanari, and A. Peron.

A model checking procedure for interval temporal logics based on track representatives. In CSL, pages 193–210, 2015.

slide-38
SLIDE 38

38

  • A. Molinari, A. Montanari, and A. Peron.

Constraining cycle alternations in model checking for interval temporal logic. In ICTCS, pages 211–226, 2016.

  • A. Molinari, A. Montanari, and A. Peron.

Model checking for fragments of Halpern and Shoham’s interval temporal logic based on track representatives. Information and Computation, 259:412–443, 2018.

  • A. Molinari, A. Montanari, A. Peron, and P. Sala.

Model Checking Well-Behaved Fragments of HS: the (Almost) Final Picture. In KR, pages 473–483, 2016.