slide1 n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
* Department of Computing Science University of Newcastle upon Tyne PowerPoint Presentation
Download Presentation
* Department of Computing Science University of Newcastle upon Tyne

Loading in 2 Seconds...

play fullscreen
1 / 29

* Department of Computing Science University of Newcastle upon Tyne - PowerPoint PPT Presentation


  • 109 Views
  • Uploaded on

Canonical Prefixes of Petri Net Unfoldings. V. Khomenko *, M . Koutny *, and W.Vogler**. * Department of Computing Science University of Newcastle upon Tyne ** Institut f ür Inform a tik, Universität Augsburg. Motivation. investigate fundamental properties of unfoldings and their prefixes

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about '* Department of Computing Science University of Newcastle upon Tyne' - saki


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide1

Canonical Prefixes of Petri Net Unfoldings

V.Khomenko*, M.Koutny*, and W.Vogler**

*Department of Computing Science

University of Newcastleupon Tyne

**Institut für Informatik, Universität Augsburg

slide2

Motivation

  • investigate fundamental properties of unfoldings and their prefixes
  • extend the applicability of the existing techniques
slide3

s – initial state

s

a

a

b

b

r

c

r

s

p

d

a

c

d

r

r

p

c

b

c

b

Unfolding finite state machines

FSM

unfolding

  • all reachable states are represented
  • all instances of a state have the same future
  • infinite unfoldings are of little use for MC
slide4

s – initial state

s

a

a

b

b

r

c

r

s

p

d

c

d

r

p

Complete prefix

prefix

  • cut if there is a preceding instance of the same state
  • the prefix still contains all reachable states
slide5

s – initial state

s

a

a

b

b

r

c

r

s

p

d

c

d

r

p

The prefix is finite

prefix

  • the prefix has no infinite paths, and we can apply …
slide6

König’s lemma

A finitely branching, rooted, directed acyclic graph with infinitely many nodes reachable from the root has an infinite path from the root

NB: branching is finite but may be unbounded!

D.König: Über eine Schlußweise aus dem Endlichen ins Unendliche. Acta Litt. ac. sci. Szeged 3 (1927) 121-130

slide7

s – initial state

s

a

a

b

b

r

c

r

s

p

d

a

c

d

r

r

p

c

b

c

b

Unfolding more complicated machines

unfolding

x is an integer variable

with the initial value 0

a: x=x+1

b: x=x-1

c: x=x+1

d: x=x

Problem 1: can x ever have a value other than 0 at s?

slide8

s – initial state

s

X=0

a

a

b

b

r

c

r

s

p

d

c

d

X=0

r

p

Prefix – first attempt

prefix

x is an integer variable

with the initial value 0

a: x=x+1

b: x=x-1

c: x=x+1

d: x=x

  • x is always 0 at s in the prefix
  • a clear mistake, e.g. a c d b
  • what is behind this error ?
slide9

s – initial state

s: x=0

a

a

b

b

c

r: x=1

r

p: x=2

s: x=0

d

c

d

r: x=2

p

Prefix is not complete!

prefix

x is an integer variable

with the initial value 0

a: x=x+1

b: x=x-1

c: x=x+1

d: x=x

  • not every execution is represented
  • correction: cut if there is a preceding instance of the same state with the same value of x
  • no complete and finite prefix in this case
slide10

s – initial state

s: x=0

a

a

b

b

c

r: x=1

r

p: x=2

s: x=0

d

c

d

r: x=1

p

Prefix is complete

prefix

x is an integer variable

with the initial value 0

a: x=x+1

b: x=x-1

c: x=x+1

d: x=x-1

correction

  • now the prefix is complete and finite
  • is it crucial that the previous machine had an infinite state space while this one has not ?
slide11

s

s: x=0

a

a

b

b

c

r

r: x=1

p: x=3

s: x=0

c

d

d

r: x=3

p

b

c

p: x=5

s: x=3

  • this prefix is complete for Problem 2
  • x>1 cannot decrease, so no need to look below the leaves !

d

a

r: x=5

r: x=4

Another machine with infinite state space

a: x=x+1

b: x=if (x<2) then (x-1) else x

c: x=x+2

d: x=x

Problem 2: can x ever be equal to 1 at s?

slide12

A generalization

  • M is a machine with execution tree ET
  • Prop is a property specified on executions of M
  • ~ is an equivalence relation on executions
  • if E1~E2 then:
    • E1 satisfies Prop iff E2 satisfies Prop
    • for every extension E1’ of E1 there is an extension E2’ of E2 such that E1’~E2’
  • PREF is the prefix obtained thus: an execution is terminated as soon as there is a ‘smaller’ equivalent execution
slide13

Properties

Canonicity:PREF is unique

Completeness: All executions in ET satisfy Propiff all executions in PREF satisfy Prop

Finiteness:PREF is finite iff the number of equivalence classes of ~is finite

Proof: Follows from König’s Lemma

slide14

Application 1

Prop= “there is an execution leading to a given state”

E1~E2 iff both executions lead to the same state

of M (variable is not present)

PREF is finite as ~ has finitely many equivalence

classes

slide15

Application 2

Prop= “there is an execution leading to a given state

of M and setting x to a given value”

E1~E2 iff both executions lead to the same state of M

and set x to the same value

PREF is finite iff x can be set to finitely many values

Note: the latter may be difficult to establish (global

reasoning)

slide16

Application 3

Prop= “there is an execution leading to a given state

of M and setting x to a given value k”

M is a machine such that if x>m>k, then no transition can set x to a value <m

Note: this may be easy to establish (local reasoning)

E1~E2 iff both executions lead to the same state of M

AND they set x

EITHER to the same value <m OR to (possibly different) values >m

PREF is always finite

slide17

Some conclusions

  • Unfolding based techniques can be execution-oriented rather than state-oriented
  • By choosing suitable ~ we may finely tune the construction of the prefix to match the verification problem
  • König’s lemma plays a key role in dealing with the finiteness of the prefix

We may try to generalize these ideas to branching processes of Petri nets

slide19

1

2

k

König’s lemma for branching processes?

A condition with infinite branching

König's Lemma cannot be directly applied to branching processes, since branching on conditions can be infinite

The branching process can potentially be infinite even when all the paths are finite

But we may try to prove a net-specific result !

slide20

König’s lemma for branching processes

Theorem: An infinite branching process of a P/T-net always contains an infinite chain of causally related events starting at the initial event

The result holds also for unbounded nets!

slide21

Some notation

Unf the (full) unfolding of a fixed P/T-net

E the set of events of Unf

Conf the set of finite configurations of Unf

Loc the set of local configurations of Unf

Note that configurations are in fact (partial-order) executions

slide22

Cutting context

A cutting context is a triple

Θ = ( ~ , < , {Ce}e  E )

where:~ is an equivalence relation on Conf

< is a strict and well-founded partial order on Conf refining set inclusion [ERV]

Ce is a subset of Conf

~ and < must be preserved by finite extensions, i.e. if C1~C2 and C1<C2 then for every finite extension C1’ of C1 there is a finite extension C2’ of C2 such that C1’~C2’ and C1’<C2’

slide23

Cutting contexts – examples

CeConf – [Hel]

CeLoc – standard [ERV, McM …]

C1~C2 if the same markings are produced – standard [ERV, McM …]

C1~C2 if symmetric markings are produced –

[CGP]

C1~C2if the same markings are produced and

Code(C1)=Code(C2), where Code is the

signal coding function – [KKY]

slide24

Completeness

  • A branching process π is complete w.r.t. a set E’ of events if:
  • for every CConf there is a finite configuration
  • C’inπsuch that C~C’ and C’E’=
  • if C is a finite configuration of π such that
  • CE’=, C{e} is an extension of C in Unf,
  • then C{e} is an extension of C in π
  • πis complete if it is complete w.r.t. some E’
  • Note: this notion of completeness is strictly stronger than the standard one (e.g. in [ERV])
slide25

Static cut-off events

  • Sets of events feasible and cut-off are defined by induction:
  • e is feasible if it has no cut-off predecessors
  • e is a cut-off event if it is feasible and there is
  • a configuration CCe consisting of feasible
  • non-cut-off events such that C~[e] and C<[e]

The canonical prefix CAN is the branching process comprising the feasible events

No algorithm is needed to define cut-offs and the prefix!

slide26

Properties of CAN

Canonicity:CAN is unique

Completeness:CAN is complete w.r.t. the set of cut-off events

Finiteness:CAN is infinite iff Unf contains an infinite chain of feasible events

Proof: Follows from König's Lemma for branching processes

slide27

More about finiteness

  • Finiteness 2:
  • If ~ has finitely many equivalence classes and each Ce contains Loc, then CAN is finite
  • If ~ has infinitely many equivalence classes, then CAN is infinite

Note: upper bounds on the size of CAN can also be obtained in certain cases

slide28

Generating CAN

Theorem: The standard (non-deterministic!) unfolding algorithms always generate CAN!!!

The result holds for the algorithm proposed in [ERV] and for the parallel algorithm in [HKK]

slide29

What has been achieved?

  • General flexible framework for constructing complete prefixes of net unfoldings
  • Canonicity of the prefix given a fixed cutting context
  • Stronger notion of completeness
  • New / improved proofs of correctness of the existing algorithms for constructing finite prefixes
  • König’s Lemma for branching processes of P/T-nets (also unbounded ones)