Around State Equation Piotr Hofman University of Warsaw Outline 1 - - PowerPoint PPT Presentation

around state equation
SMART_READER_LITE
LIVE PREVIEW

Around State Equation Piotr Hofman University of Warsaw Outline 1 - - PowerPoint PPT Presentation

Around State Equation Piotr Hofman University of Warsaw Outline 1 Petri Nets. 2 The continuous reachability and the state equation. 3 Qcover and Icover. 4 Extensions of Petri Nets and corresponding state equations: reset, 1 test for zero, 2


slide-1
SLIDE 1

Around State Equation

Piotr Hofman

University of Warsaw

slide-2
SLIDE 2

Outline

1 Petri Nets. 2 The continuous reachability and the state equation. 3 Qcover and Icover. 4 Extensions of Petri Nets and corresponding state equations: 1

reset,

2

test for zero,

3

data (unordered, ordered).

slide-3
SLIDE 3

Petri Nets.

P1 T1 P2 P3 T2 P4

Places. Transitions.

slide-4
SLIDE 4

Petri Nets.

P1 T1 P2 P3 T2 P4

Places. Transitions. Tokens, a Configuration.

slide-5
SLIDE 5

Petri Nets.

P1 T1 P2 P3 T2 P4

Places. Transitions. Tokens, a Configuration. Firing a transition.

slide-6
SLIDE 6

Petri Nets.

P1 T1 P2 P3 T2 P4

Places. Transitions. Tokens, a Configuration. Firing a transition.

slide-7
SLIDE 7

Petri Nets.

P1 T1 P2 P3 T2 P4

Places. Transitions. Tokens, a Configuration. Firing a transition.

slide-8
SLIDE 8

Description of the net, three matrices.

P1 T1 P2 P3 T2 P4 Pre(N) =

    

1 1 1

    

Post(N) =

    

1 1 1 1

    

∆ = Post(N) − Pre(N)

    

−1 1 1 −1 1 −1 1

    

slide-9
SLIDE 9

Reachability.

Reachability is hard.

slide-10
SLIDE 10

Reachability.

Reachability is hard. We consider its relaxations.

slide-11
SLIDE 11

Reachability.

Reachability is hard. We consider its relaxations.

Integer reachability (state equation).

slide-12
SLIDE 12

Reachability.

Reachability is hard. We consider its relaxations.

Integer reachability (state equation).

1 We consider a model where the number of tokens may

get negative.

slide-13
SLIDE 13

Reachability.

Reachability is hard. We consider its relaxations.

Integer reachability (state equation).

1 We consider a model where the number of tokens may

get negative.

2 As transitions are non blocking, the effect of the path

depends only on the occurrences of transitions.

slide-14
SLIDE 14

Reachability.

Reachability is hard. We consider its relaxations.

Integer reachability (state equation).

1 We consider a model where the number of tokens may

get negative.

2 As transitions are non blocking, the effect of the path

depends only on the occurrences of transitions.

3 Integer programming.

slide-15
SLIDE 15

Reachability.

Reachability is hard. We consider its relaxations.

Integer reachability (state equation).

1 We consider a model where the number of tokens may

get negative.

2 As transitions are non blocking, the effect of the path

depends only on the occurrences of transitions.

3 Integer programming.

Continuous reachability.

slide-16
SLIDE 16

Reachability.

Reachability is hard. We consider its relaxations.

Integer reachability (state equation).

1 We consider a model where the number of tokens may

get negative.

2 As transitions are non blocking, the effect of the path

depends only on the occurrences of transitions.

3 Integer programming.

Continuous reachability.

1 We consider a model where a fraction of a transition

may be fired (the number of tokens gets rational).

slide-17
SLIDE 17

Reachability.

Reachability is hard. We consider its relaxations.

Integer reachability (state equation).

1 We consider a model where the number of tokens may

get negative.

2 As transitions are non blocking, the effect of the path

depends only on the occurrences of transitions.

3 Integer programming.

Continuous reachability.

1 We consider a model where a fraction of a transition

may be fired (the number of tokens gets rational).

2 Reachability may be captured by the fragment of the

existential fragment of FO(Q, +, <).

slide-18
SLIDE 18

Reachability.

Reachability is hard. We consider its relaxations.

Integer reachability (state equation).

1 We consider a model where the number of tokens may

get negative.

2 As transitions are non blocking, the effect of the path

depends only on the occurrences of transitions.

3 Integer programming.

Continuous reachability.

1 We consider a model where a fraction of a transition

may be fired (the number of tokens gets rational).

2 Reachability may be captured by the fragment of the

existential fragment of FO(Q, +, <).

3 We denote the fragment by FOpoly0(Q, +, <)

(by M. Blondin, C. Haase, LICS 2017).

slide-19
SLIDE 19

Reachability.

Reachability is hard. We consider its relaxations.

Integer reachability (state equation).

1 We consider a model where the number of tokens may

get negative.

2 As transitions are non blocking, the effect of the path

depends only on the occurrences of transitions.

3 Integer programming.

Continuous reachability.

1 We consider a model where a fraction of a transition

may be fired (the number of tokens gets rational).

2 Reachability may be captured by the fragment of the

existential fragment of FO(Q, +, <).

3 We denote the fragment by FOpoly0(Q, +, <)

(by M. Blondin, C. Haase, LICS 2017).

4 A key part is the state equation solved over Q+.

slide-20
SLIDE 20

Reachability.

Reachability is hard.We consider its relaxations. f - target configuration. i - initial configuration.

Integer reachability (state equation).

f − i = ∆ x where x ∈ N|T|

slide-21
SLIDE 21

Reachability.

Reachability is hard.We consider its relaxations. f - target configuration. i - initial configuration.

Integer reachability (state equation).

f − i = ∆ x where x ∈ N|T| and an equivalent form: Can f − i be expressed as

i ∆[ji]

where ∆[ji] are columns of ∆?

slide-22
SLIDE 22

Reachability.

Reachability is hard.We consider its relaxations. f - target configuration. i - initial configuration.

Integer reachability (state equation).

f − i = ∆ x where x ∈ N|T| and an equivalent form: Can f − i be expressed as

i ∆[ji]

where ∆[ji] are columns of ∆?

Continuous reachability, the main equation.

f − i = ∆ x where x ∈ Q+|T|

slide-23
SLIDE 23

Reachability.

Reachability is hard.We consider its relaxations. f - target configuration. i - initial configuration.

Integer reachability (state equation).

f − i = ∆ x where x ∈ N|T| and an equivalent form: Can f − i be expressed as

i ∆[ji]

where ∆[ji] are columns of ∆?

Continuous reachability, the main equation.

f − i = ∆ x where x ∈ Q+|T| and an equivalent form: Can f − i be expressed as

i ai∆[ji]

where ai ∈ Q+ and ∆[ji] are columns of ∆?

slide-24
SLIDE 24

Qcover + Icover

1 Make a standard backward coverability algorithm. 2 For every new element in the pre(base) check if it can be covered

from the initial configuration. if NO then drop it else add it to the base.

3 covered in the

continuous reachability sense (Qcover), integer reachability sense (Icover).

4 Use SMT-solver to solve linear programs / integer programs.

slide-25
SLIDE 25

Different extensions of Petri Nets

New types of arc

Reset + affine. Test for zero (backward coverability algorithm does not work).

Coloured tokens /data

1 Unordered data Petri nets. The backward coverability algorithm

terminates.

2 Ordered data Petri nets. The backward coverability algorithm

terminates.

3 Tuples of unordered data. The backward coverability algorithm does

not terminate (coverability is undecidable).

slide-26
SLIDE 26

State equation in the case of the reset nets.

1 A place gets value 0 if it is reset. 2 We consider integer runs. 3 Integer reachability is NP − complete, result by S. Halfon and Ch.

Haase, RP 2014.

Affine

Filip explained it.

slide-27
SLIDE 27

Test for zero( unpublished results form June 2018).

Description.

1 A special test for zero arc. 2 A transition can be fired if the number of tokens in

the place equals zero.

slide-28
SLIDE 28

Test for zero( unpublished results form June 2018).

Description.

1 A special test for zero arc. 2 A transition can be fired if the number of tokens in

the place equals zero.

2 places may be tested for zero + finite automaton.

Integer reachability is undecidable, by S. Lasota.

slide-29
SLIDE 29

Test for zero( unpublished results form June 2018).

Description.

1 A special test for zero arc. 2 A transition can be fired if the number of tokens in

the place equals zero.

2 places may be tested for zero + finite automaton.

Integer reachability is undecidable, by S. Lasota.

1 place can be tested for zero.

Integer reachability is NP − complete by P. Hofman, D. Knop, M. Pilipczuk, Akshay S., M. Wrochna.

slide-30
SLIDE 30

Test for zero( unpublished results form June 2018).

Description.

1 A special test for zero arc. 2 A transition can be fired if the number of tokens in

the place equals zero.

2 places may be tested for zero + finite automaton.

Integer reachability is undecidable, by S. Lasota.

1 place can be tested for zero.

Integer reachability is NP − complete by P. Hofman, D. Knop, M. Pilipczuk, Akshay S., M. Wrochna.

1 place can be tested for zero.

Continuous reachability is P − complete by P. Hofman, Akshay S.

slide-31
SLIDE 31

Test for zero( unpublished results form June 2018).

Description.

1 A special test for zero arc. 2 A transition can be fired if the number of tokens in

the place equals zero.

2 places may be tested for zero + finite automaton.

Integer reachability is undecidable, by S. Lasota.

1 place can be tested for zero.

Integer reachability is NP − complete by P. Hofman, D. Knop, M. Pilipczuk, Akshay S., M. Wrochna.

1 place can be tested for zero.

Continuous reachability is P − complete by P. Hofman, Akshay S.

slide-32
SLIDE 32

Continuous reachability + one test for zero

Abstract Petri nets

1 The finite set of places, say d. 2 The finite set of formulas over 2d free

variables x1, x2 . . . x2d.

3 The set of transitions is a set of all true

valuations of a formula.

4 The set of configurations is Q+d.

slide-33
SLIDE 33

Continuous reachability + one test for zero

Abstract Petri nets

1 The finite set of places, say d. 2 The finite set of formulas over 2d free

variables x1, x2 . . . x2d.

3 The set of transitions is a set of all true

valuations of a formula.

4 The set of configurations is Q+d.

Examples

1 Formulas are constant - Normal Petri Net.

slide-34
SLIDE 34

Continuous reachability + one test for zero

Abstract Petri nets

1 The finite set of places, say d. 2 The finite set of formulas over 2d free

variables x1, x2 . . . x2d.

3 The set of transitions is a set of all true

valuations of a formula.

4 The set of configurations is Q+d.

Examples

1 Formulas are constant - Normal Petri Net. 2 Formulas are of the form ∃y∈Q+

x = y · t, where t ∈ Z2d - Continuous Petri Nets.

slide-35
SLIDE 35

Continuous reachability + one test for zero

Abstract Petri nets

1 The finite set of places, say d. 2 The finite set of formulas over 2d free

variables x1, x2 . . . x2d.

3 The set of transitions is a set of all true

valuations of a formula.

4 The set of configurations is Q+d.

Examples

1 Formulas are constant - Normal Petri Net. 2 Formulas are of the form ∃y∈Q+

x = y · t, where t ∈ Z2d - Continuous Petri Nets.

3 Each formula is a system of homogeneous linear equation.

slide-36
SLIDE 36

Continuous reachability + one test for zero

Abstract Petri nets

1 The finite set of places, say d. 2 The finite set of formulas over 2d free

variables x1, x2 . . . x2d.

3 The set of transitions is a set of all true

valuations of a formula.

4 The set of configurations is Q+d.

Examples

1 Formulas are constant - Normal Petri Net. 2 Formulas are of the form ∃y∈Q+

x = y · t, where t ∈ Z2d - Continuous Petri Nets.

3 Each formula is a system of homogeneous linear equation. 4 Each formula is an expression in FOpoly0(Q, +, <).

slide-37
SLIDE 37

Continuous reachability + one test for zero

1 Split the run to fragments between consecutive tests for zero.

slide-38
SLIDE 38

Continuous reachability + one test for zero

1 Split the run to fragments between consecutive tests for zero. 2 Every such fragment is a run of a continuous Petri net.

slide-39
SLIDE 39

Continuous reachability + one test for zero

1 Split the run to fragments between consecutive tests for zero. 2 Every such fragment is a run of a continuous Petri net. 3 Recall that the continuous Petri net reachability can be described as

a formula in FOpoly0(Q, +, <).

slide-40
SLIDE 40

Continuous reachability + one test for zero

1 Split the run to fragments between consecutive tests for zero. 2 Every such fragment is a run of a continuous Petri net. 3 Recall that the continuous Petri net reachability can be described as

a formula in FOpoly0(Q, +, <).

4 We construct an abstract Petri net with formulas in

FOpoly0(Q, +, <) in which transition corresponds to reachability in the continuous Petri net.

slide-41
SLIDE 41

Continuous reachability + one test for zero

1 Split the run to fragments between consecutive tests for zero. 2 Every such fragment is a run of a continuous Petri net. 3 Recall that the continuous Petri net reachability can be described as

a formula in FOpoly0(Q, +, <).

4 We construct an abstract Petri net with formulas in

FOpoly0(Q, +, <) in which transition corresponds to reachability in the continuous Petri net.

5 Every run in the abstract Petri net corresponds to a run of the

  • riginal continuous Petri net with test for zero.
slide-42
SLIDE 42

Continuous reachability + one test for zero

1 Split the run to fragments between consecutive tests for zero. 2 Every such fragment is a run of a continuous Petri net. 3 Recall that the continuous Petri net reachability can be described as

a formula in FOpoly0(Q, +, <).

4 We construct an abstract Petri net with formulas in

FOpoly0(Q, +, <) in which transition corresponds to reachability in the continuous Petri net.

5 Every run in the abstract Petri net corresponds to a run of the

  • riginal continuous Petri net with test for zero.

6 It can be proven that reachability in an abstract net with formulas in

FOpoly0(Q, +, <) can be efficiently described as FOpoly0(Q, +, <) formula.

slide-43
SLIDE 43

Petri nets with data.

slide-44
SLIDE 44

Net with data

p2

2 2

p1

1 2 3

p3

1 2

p4

2 3

slide-45
SLIDE 45

Net with data

Let D be an infinite data domain. Configuration is a function from P × D → N. p2

2 2

p1

1 2 3

p3

1 2

p4

2 3

slide-46
SLIDE 46

Net with data

Let D be an infinite data domain. Configuration is a function from P × D → N. p2

2 2

p1

1 2 3

p3

1 2

p4

2 3

formula φ

2x y, z v u

slide-47
SLIDE 47

Net with data

Let D be an infinite data domain. Configuration is a function from P × D → N. p2

2 2

p1

1 2 3

p3

1 2

p4

2 3

formula φ

2x y, z v u The formula φ is

  • ver variables u, v, x, y, z.
slide-48
SLIDE 48

Net with data

Let D be an infinite data domain. Configuration is a function from P × D → N. p2

2 2

p1

1 2 3

p3

1 2

p4

2 3

formula φ

2x y, z v u x = 2 y = 1 z = 3 u = 3 v = 2 The formula φ is

  • ver variables u, v, x, y, z.
slide-49
SLIDE 49

Net with data

Let D be an infinite data domain. Configuration is a function from P × D → N. p2

2 2

p1

1 2 3

p3

1 2

p4

2 3

formula φ

2x y, z v u x = 2 y = 1 z = 3 u = 3 v = 2 The formula φ is

  • ver variables u, v, x, y, z.
slide-50
SLIDE 50

Net with data

Let D be an infinite data domain. Configuration is a function from P × D → N. p2

2 2

p1

1 2 3

p3

1 2

p4

2 3

formula φ

2x y, z v u x = 2 y = 1 z = 3 u = 3 v = 2 The formula φ is

  • ver variables u, v, x, y, z.
slide-51
SLIDE 51

Net with data

Let D be an infinite data domain. Configuration is a function from P × D → N. p2

2 2

p1

1 2 3

p3

1 2

p4

2 3

formula φ

2x y, z v u x = 2 y = 1 z = 3 u = 3 v = ? The formula φ is

  • ver variables u, v, x, y, z.
slide-52
SLIDE 52

Net with data

Let D be an infinite data domain. Configuration is a function from P × D → N. p2

2 2

p1

1 2 3

p3

1 2

p4

2 3

formula φ

2x y, z v u x = 2 y = 1 z = 3 u = 3 v = 8

You can create new names!

The formula φ is

  • ver variables u, v, x, y, z.
slide-53
SLIDE 53

Petri net with data

Formula φ?

UDPN

Predicates use = and = (= is for free as we have negation). Unordered Data Petri Nets:

slide-54
SLIDE 54

Petri net with data

Formula φ?

UDPN

Predicates use = and = (= is for free as we have negation). Unordered Data Petri Nets:

1 a toy model, 2 disequality is not very useful in modelling.

slide-55
SLIDE 55

Petri net with data

Formula φ?

UDPN

Predicates use = and = (= is for free as we have negation). Unordered Data Petri Nets:

1 a toy model, 2 disequality is not very useful in modelling.

ODPN

Predicates use ≤. Ordered Data Petri Nets:

1 set of data values forms a linear and dense order(the

second assumption can be dropped)

slide-56
SLIDE 56

Petri net with data

Formula φ?

UDPN

Predicates use = and = (= is for free as we have negation). Unordered Data Petri Nets:

1 a toy model, 2 disequality is not very useful in modelling.

ODPN

Predicates use ≤. Ordered Data Petri Nets:

1 set of data values forms a linear and dense order(the

second assumption can be dropped)

2 order can be used to mimic global freshness, so to

express a dynamic process creation,

slide-57
SLIDE 57

Petri net with data

Formula φ?

UDPN

Predicates use = and = (= is for free as we have negation). Unordered Data Petri Nets:

1 a toy model, 2 disequality is not very useful in modelling.

ODPN

Predicates use ≤. Ordered Data Petri Nets:

1 set of data values forms a linear and dense order(the

second assumption can be dropped)

2 order can be used to mimic global freshness, so to

express a dynamic process creation,

3 order can be used to simulate time( up to

coverability).

slide-58
SLIDE 58

Simplifications.

UDPN

We restrict formulas to conjunctions of equalities and disequalities such that relation between every two variables is specified.

slide-59
SLIDE 59

Simplifications.

UDPN

We restrict formulas to conjunctions of equalities and disequalities such that relation between every two variables is specified. p2

2 2

p1

1 2

p3

1

p4

2

formula φ

2x x, z z x φ := x = z

slide-60
SLIDE 60

Simplifications.

UDPN

We restrict formulas to conjunctions of equalities and disequalities such that relation between every two variables is specified.

1 They are equally expressive; 2 1 original transition is substituted by exponentially

many of the restricted transitions. p2

2 2

p1

1 2

p3

1

p4

2

formula φ

2x x, z z x φ := x = z

slide-61
SLIDE 61

Simplifications.

UDPN

We restrict formulas to conjunctions of equalities and disequalities such that relation between every two variables is specified.

1 They are equally expressive; 2 1 original transition is substituted by exponentially

many of the restricted transitions.

ODPN

Variables are linearly ordered.

1 They are equally expressive; 2 1 original transition is substituted by exponentially

many of the restricted transitions.

slide-62
SLIDE 62

Integer reachability.

Integer reachability

is defined as usual, configurations are functions P × D → Z.

slide-63
SLIDE 63

Integer reachability.

Integer reachability

is defined as usual, configurations are functions P × D → Z.

Integer reachability in UDPN

is NP − complete (P. Hofman, J. Leroux, P. Totzke, LICS 2017).

slide-64
SLIDE 64

Integer reachability.

Integer reachability

is defined as usual, configurations are functions P × D → Z.

Integer reachability in UDPN

is NP − complete (P. Hofman, J. Leroux, P. Totzke, LICS 2017).

Integer reachability where transitions are given as formulas.

Complexity is open.

slide-65
SLIDE 65

Continuous reachability in UDPN

Continuous reachability

is defined as usual, configurations are functions P × D → Q+.

slide-66
SLIDE 66

Continuous reachability in UDPN

Continuous reachability

is defined as usual, configurations are functions P × D → Q+.

Continuous reachability

is P − complete (U. Gupta, P. Sash (two students), under supervision of P. Hofman and Akshay S., June 2018).

slide-67
SLIDE 67

Continuous reachability in UDPN

Continuous reachability

is defined as usual, configurations are functions P × D → Q+.

Continuous reachability

is P − complete (U. Gupta, P. Sash (two students), under supervision of P. Hofman and Akshay S., June 2018).

Combination of:

1 techniques for integer reachability in UDPN, 2 techniques for continuous reachability in Petri nets.

slide-68
SLIDE 68

Integer reachability in ODPN

Integer reachability

is defined as usual, configurations are functions P × D → Z.

slide-69
SLIDE 69

Integer reachability in ODPN

Integer reachability

is defined as usual, configurations are functions P × D → Z.

Integer reachability

is Petri net reachability complete (P. Hofman, S. Lasota, CONCUR 2018).

slide-70
SLIDE 70

Integer reachability in ODPN

Integer reachability

is defined as usual, configurations are functions P × D → Z.

Integer reachability

is Petri net reachability complete (P. Hofman, S. Lasota, CONCUR 2018).

Surprisingly P − complete is:

If f − i can be expressed as

i ai∆[ji] ◦ τi

where ai ∈ Q+, ∆[ji] are columns of ∆ and τi is a function from variables to data (P. Hofman, S. Lasota, CONCUR 2018).

slide-71
SLIDE 71

Thank you!