structured occurrence network for provenance: talk for ipaw12 paper
DESCRIPTION
IPAW'12 talk for this paper: http://homepages.cs.ncl.ac.uk/paolo.missier/doc/IPAW12-SON.pdfTRANSCRIPT
Modelling provenance usingStructured Occurrence Networks
Paolo Missier, Brian Randell, Maciej KoutnyNewcastle University, UK
IPAW’12Santa Barbara, CA, June 2012
Thursday, June 21, 2012
IPAW
201
2 - P
.Mis
sier
Petri Nets and Occurrence Nets
2
Historically, Occurrence Nets have been used to define process semantics of Petri Nets [2]
[2] Best, Eike, and Raymond Devillers. “Sequential and concurrent behaviour in Petri net theory.” Theoretical Computer Science 55, no. 1 (1987): 87-136. http://www.sciencedirect.com/science/article/pii/0304397587900909.
Thursday, June 21, 2012
IPAW
201
2 - P
.Mis
sier
Occurrence Nets
3
ON = (C, E, F ) with nodes C E and a flow relation F ⊆ (C ×E)∪(E × C) satisfying the following:(i) for every condition c there is at most one event e such that (e,c) ∈ F, and at most one event f such that (c,f) ∈ F; (ii) for every event e there is at least one condition c such that (c, e) ∈ F , and at least one condition d such that (e,
d) ∈ F ; (iii) ON forms an acyclic graph and F + is a partial order relation (the relation PrecON = (F ◦ F)|C×C is acyclic)
ON is about capturing causal relationships between events and conditions
Thursday, June 21, 2012
IPAW
201
2 - P
.Mis
sier
Provenance and Occurrence Nets
• "Provenance is defined as a record that describes the people, institutions, entities, and activities involved in producing, influencing, or delivering a piece of data or a thing." [PROV]
4
• An Occurrence Net is an abstract record of a single execution of some computing system• Only information about causality and
concurrency between events and visited local states is represented
Thursday, June 21, 2012
IPAW
201
2 - P
.Mis
sier
Provenance and Occurrence Nets
• "Provenance is defined as a record that describes the people, institutions, entities, and activities involved in producing, influencing, or delivering a piece of data or a thing." [PROV]
4
• An Occurrence Net is an abstract record of a single execution of some computing system• Only information about causality and
concurrency between events and visited local states is represented
Data: The evolution of variable A as a ON:
Thursday, June 21, 2012
IPAW
201
2 - P
.Mis
sier
Provenance and Occurrence Nets
• "Provenance is defined as a record that describes the people, institutions, entities, and activities involved in producing, influencing, or delivering a piece of data or a thing." [PROV]
4
• An Occurrence Net is an abstract record of a single execution of some computing system• Only information about causality and
concurrency between events and visited local states is represented
Data: The evolution of variable A as a ON:
Agents: The evolution of Bob, the document editor:
readpaper
p1
performed exp.
readpaper
p2
verifiedresults
draftedinternalmemo
ready to
draftptd
Thursday, June 21, 2012
IPAW
201
2 - P
.Mis
sier
From ON to Structured ONON is an adequate starting point, but extensions are needed to represent the activity of complex systems
• Structured Occurrence Nets provide these extensions as new relationships amongst multiple ONs [2]
5
[2] Koutny, M., and B Randell. “Structured Occurrence Nets: A Formalism for Aiding System Failure Prevention and Analysis Techniques.” Fundamenta Informaticae 97 (2009).
Thursday, June 21, 2012
IPAW
201
2 - P
.Mis
sier
From ON to Structured ONON is an adequate starting point, but extensions are needed to represent the activity of complex systems
• Structured Occurrence Nets provide these extensions as new relationships amongst multiple ONs [2]
5
[2] Koutny, M., and B Randell. “Structured Occurrence Nets: A Formalism for Aiding System Failure Prevention and Analysis Techniques.” Fundamenta Informaticae 97 (2009).
Thursday, June 21, 2012
IPAW
201
2 - P
.Mis
sier
Provenance modelling patterns using SON
• Data is viewed as an evolving system
• Agents are also evolving systems, thus their evolution is also captured
• Uniform representation of Agents / Activity / Data interplay
• Representation of multi-layered Provenance– eg:the provenance of a workflow run is underpinned by system-level provenance– SONs are suitable for modelling at multiple levels of abstraction
6
Main goal of this work:to explore the use of Structured Occurrence Nets
as a formal model of provenance
Expected by-product of the investigation:suggest enhancements to the current SON model
Thursday, June 21, 2012
IPAW
201
2 - P
.Mis
sier
Talk outline• C-SON: ON + communication relation
– a provenance pattern to represent workflow patterns
• T-SON: C-SON + temporal abstraction
• (more abstraction relations omitted in the talk)
• Modelling multi-layered provenance
• Agents as evolving systems
– provenance of agents
7
Thursday, June 21, 2012
IPAW
201
2 - P
.Mis
sier
Communication SONs
8
• Goal: to capture communication between ONs that otherwise proceed concurrently
• by introducing a Communication relation amongst activities in two ONs– induces a partial order on the states and conditions of the two nets– must result in an acyclic net
e1 cannot have happened after f1
e2, f2 must have happened simultaneously
Thursday, June 21, 2012
IPAW
201
2 - P
.Mis
sier
Communication SONs
8
• Goal: to capture communication between ONs that otherwise proceed concurrently
• by introducing a Communication relation amongst activities in two ONs– induces a partial order on the states and conditions of the two nets– must result in an acyclic net
e1 cannot have happened after f1
e2, f2 must have happened simultaneously
Thursday, June 21, 2012
IPAW
201
2 - P
.Mis
sier
C-SON at work - a first provenance pattern
9
• Each ON models one variable as a system.
• The composed activity “A:=A+1; A:=A+B; B:=A+B” is represented as a SON composed of a pair of communicating ONs
• The resulting SON captures a (partial) order of possible reads and writes leading to the final result
Thursday, June 21, 2012
IPAW
201
2 - P
.Mis
sier
Workflow execution traces using C-SON
10
f
X
r10 10 r 10
g
Y
w 200 r 200
w 20
Z
w 20
Y:= f(X)
<X,Z> := g(X,Y)
(a)Program
specification
(c)SON representation of
Execution trace
f()
Z = "20"
g()
X= 10
X = 20
Y = "200"
(b)Executioninstance
Program execution
Thursday, June 21, 2012
IPAW
201
2 - P
.Mis
sier
Temporal SON (T-SON)• Goal: to replace part of an ON with new “atomic” actions
– a form of temporal abstraction– these new actions only appear atomic at one level of abstraction
11
Thursday, June 21, 2012
IPAW
201
2 - P
.Mis
sier
T-SON in action: multi-layered provenance • Provenance of computed data naturally comes in layers:
– program execution (incl. workflow controller)• system-level primitives, network protocols
12
Program execution
X
r10 10
fX
r10 10
fetch 1010 send
ttt
Program execution
f
get compute
ttt
Temporal abstraction used to hide/reveal lower-level details of both systems and their interaction (i.e., reading from storage)
Thursday, June 21, 2012
IPAW
201
2 - P
.Mis
sier
T-SON: multi-layered provenance
13
Program execution
X
r10 10
f
Serviceexecution
Additional unfolding:- assume f is a service call- reveal details of communication with an underlying service implementation
Thursday, June 21, 2012
IPAW
201
2 - P
.Mis
sier
T-SON: multi-layered provenance
14
msgreceive
msgsend
X
r10 10
fetch 1010 send
ttt
Program execution
f
get msgprep
ttt
msgsend receive
Serviceexecution
Thursday, June 21, 2012
IPAW
201
2 - P
.Mis
sier
Agents as evolving systems
15
Alice and Bob collaborate on document editing
An agent performs activities that account for changes in the state of the data• F is data (a file)• Data and agents are modelled as systems
• Each system is a SON• Communication abstraction used to synchronize events across different systems
• Bob.draft → F.write, F.read → Alice.”read draft” etc.• For example, Bob in the state b2 is unaware of Alice’s feedback• Bob in state b3 has read Alice’s feedback
Thursday, June 21, 2012
IPAW
201
2 - P
.Mis
sier
Agents as evolving systems• Tracking the state of agents is important
– we know that it is the “version” of Bob that is aware of Alice’s comment that is responsible for the latest edit
16
Below: Bob’s edits to the document do not take account of Alice’s comments
F
w f1
draftptd b2
Bob
r f1 w f2 r f2 w f3
edit b4
Alice
readdraft a2a1 leave
comments
Thursday, June 21, 2012
IPAW
201
2 - P
.Mis
sier
Summary• SONs extend well-known Occurrence Nets
• Simple graphical notation with formal grounding– amenable to various types of analysis
• Appealing for capturing system evolution and inter-system communication
• Accommodates multiple levels of abstraction
• Evolution traces of Data, Agents and Activities provenance queried seamlessly
• Some software tool support (in progress), more work needed here
• Feedback for customizations of the SON model itself!
17
Thursday, June 21, 2012
IPAW
201
2 - P
.Mis
sier
18 Martinique, Jan. 2012
Selected References • V. Khomenko, M. Koutny, A. Yakovlev: Logic Synthesis for Asynchronous
Circuits Based on Petri Net Unfoldings and Incremental SAT. Fundamenta Informaticae 70, 2006.
• http://www.cs.ncl.ac.uk/publications/inproceedings/papers/749.pdf • M. Koutny, B. Randell: Structured Occurrence Nets: A Formalism for
Aiding System Failure Prevention and Analysis Techniques. Fundamenta Informaticae 97, 2009.
• http://www.cs.ncl.ac.uk/publications/trs/papers/1162.pdf • B. Li, M. Koutny: Verification and Simulation Tool for Communication Structured
Occurrence Nets. CS-TR, Newcastle University, (to appear). • P.M. Merlin and B. Randell: State Restoration in Distributed Systems. Proc.
FTCS-8, 1978. • http://www.cs.ncl.ac.uk/publications/inproceedings/papers/347.pdf
• I. Poliakov, V. Khomenko, A. Yakovlev: Workcraft - A Framework for Interpreted Graph Models. LNCS 5606, 2009.
• B. Randell, M. Koutny: Failures: Their Definition, Modelling and Analysis. LNCS 4711, 2007.
• http://www.cs.ncl.ac.uk/publications/trs/papers/994.pdf • B. Randell, M. Koutny: Structured Occurrence Nets: Incomplete,
Contradictory and Uncertain Failure Evidence. CS-TR 1170, Newcastle University, 2009.
• http://www.cs.ncl.ac.uk/publications/trs/papers/1170.pdf
24
Thursday, June 21, 2012
IPAW
201
2 - P
.Mis
sier
EXTRA material
19
Thursday, June 21, 2012
IPAW
201
2 - P
.Mis
sier
SON provenance and PROV
20
b2
Bob
f2 r f2 w f3
readfeedback editb3 b4
F
edit f3
Bob_b3
wasGeneratedBy
wasAssociatedWith
f2used
readfeedback
wasGeneratedBy
used
Bob_b2
wasAssociatedWithwasDerivedFrom
r f2
Bob_b4wasDerivedFrom
wasGeneratedBy
(a)
(b)
Thursday, June 21, 2012
IPAW
201
2 - P
.Mis
sier
T-SON and finite-duration activities
21
s e
f
t t t t ttt
[s,e]
duration interval of f
t1 t2 tn
Time
Activity fwith duration [s,e]
c c
In Occurrence Nets, events (activities) are instantaneous.Using temporal abstraction one can add a time duration to activities
Thursday, June 21, 2012
IPAW
201
2 - P
.Mis
sier
SON -- behavioural abstraction
22
• Insight: ‘system’ and ‘state’ are not separate concepts
• The same graph node may be used to represent either a state or a system, at different levels of abstraction
Key idea of Structured Occurrence Nets:
• multiple ONs, each portraying a system/state at some level of abstraction
• associations amongst the ONs are then established by means of new relation types
Thursday, June 21, 2012
IPAW
201
2 - P
.Mis
sier
B-abstraction in use
23
– An application of behavioural abstraction -- state/system duality– Bob’s state b1 expands into a system’s activities (b1)– the expansion provides additional insight into Bob’s “knowledge level” /
“preparedness” prior to drafting the document
Bob’s state as a system
Thursday, June 21, 2012
IPAW
201
2 - P
.Mis
sier
Finding good abstractions - cuts in ON and SON
24
(a)
(b)
(c)
(d)
(e)
Thursday, June 21, 2012