reasoning about the behavior of semantic web services with concurrent transaction logic
DESCRIPTION
Reasoning about the Behavior of Semantic Web Services with Concurrent Transaction Logic. Presented By Dumitru Roman, Michael Kifer University of Innsbruk, State University of New York 2008-01-04 Summerized By Sungchan Park. Overview. - PowerPoint PPT PresentationTRANSCRIPT
ReasoningReasoning about the Behavior of Semantic Web about the Behavior of Semantic Web Services with Concurrent Transaction LogicServices with Concurrent Transaction Logic
Presented By Dumitru Roman, Michael Kifer
University of Innsbruk, State University of New York
2008-01-04
Summerized By Sungchan Park
Copyright 2008 by CEBT
OverviewOverview
Improve the authors’ previous works on Web Service modeling
Concurrent Transaction Logic(CTR)
– Logic based Modeling and Analysis of Workflows. 1998
– A Logical Framework for Scheduling Workflows under Resource Allocation Constraints. 2002
– CTR-S: A Logic for Specifying Contracts in Semantic Web Services. 2004
Reasoning about behavior about WS
– Contracting, Enactment
Improvement
– Conditional control, data flow
– More general constraints
– Simpler logic than CTR-S
Center for E-Business Technology
Copyright 2008 by CEBT
Modeling & Reasoning about Service Modeling & Reasoning about Service BehaviorBehavior
Center for E-Business Technology
Copyright 2008 by CEBT
Modeling & Reasoning about Service Behavior: Modeling & Reasoning about Service Behavior: ExampleExample
Center for E-Business Technology
Copyright 2008 by CEBT
The Basics of CTRThe Basics of CTR
Atomic formula
P(t1, t2, …, tn)
– P : predicate
– ti : function term
Complex formulas are built using connectives and quantifiers
Informal Sematics
Database states
– Eg. s1, s2, …, sn
Paths( sequences of states)
– Eg. <s1>, <s1, s2>, …
– Truth value of CTR formula is determined over path
– Formula a is true over a path <s1, s2, …, sn> iff a can “excute” starting at state s1, change to s2, s3, … etc. Will terminate at state sn.
Center for E-Business Technology
Copyright 2008 by CEBT
The Basics of CTR, Cont.The Basics of CTR, Cont.
CTR Connectives
a ⊗ b
– execute athen execute b
a | b
– a and bmust both execute concurrently in an interleaved fashion.
a ᴧ b
– a and b must both execute along the same path
– Constraints
a ᴠ b
– execute a or execute b non-deterministically
¬a
– execute in any way, provided that this will not be a valid execution of a
⊙a
– execute a in isolation execution i.e., without interleaving with other concurrently running activities
Center for E-Business Technology
Copyright 2008 by CEBT
Concurrent-Horn subset of CTRConcurrent-Horn subset of CTR
Concurrent-Horn rule
p ← q
– Means “if q can execute along path <s1, … , sn>, then so p can
do”
– p : atomic formula
– q : concurrent horn goal
Atomic formula
a ⊗ b, a | b, a V b when a and b are concurrent horn goals
⊙a when a is concurrent horn goal
Examples
– Process ← a ⊗ ( b | Subproc ) ⊗ g
– Subproc ← ( c ⊗ ( d v ( e ⊗ f )))
Center for E-Business Technology
Copyright 2008 by CEBT
Concurrent-Horn subset of CTR, Cont.Concurrent-Horn subset of CTR, Cont.
Can use SLD-like proof procedure
In previous work, G ᴧ C can be transformed into horn goal by limiting class of constraints
In present work, however, the extended proof theory of CTR overcomes the limitation of constraints
Center for E-Business Technology
Copyright 2008 by CEBT
Modeling Services with CTR: Control Modeling Services with CTR: Control FlowFlow
Center for E-Business Technology
Copyright 2008 by CEBT
Modeling Services with CTR: Modeling Services with CTR: ConstraintsConstraints
Unlike previous works, we use predicates with variables—not just propositions—to represent control and data flow.
Constraints Algebra
Event
– e = ∃DataFlowVar eventName(DataFlowVar)
Primitive
– ∇e : Event e must happen = path ⊗ e ⊗ path
– ¬ ∇e : Event e must not happen
Immediate serial constraints
– ∇ ⊙(e1 ⊗ … ⊗ en) : e1, …, en happen next to each other with no other event in-between
Serial constraints
– ∇ (e1 ⊗ … ⊗ en) : e1, …, en excute in that order with possible interleaving
Complex constraints
– C1 ∧ C2, C1 ∨C2
Center for E-Business Technology
Copyright 2008 by CEBT
Modeling Services with CTR: Constraints, Cont.Modeling Services with CTR: Constraints, Cont.
Expression Examples Events e and f must both occur (in any order)
– ∇e ∧ ∇f
It is not possible for e and f to happen together– ¬ ∇e ∧ ¬ ∇f
If event e occurs, then f must also occur (before or after e)– ∇e → ∇f
If event e occurs, then f must occur later– ∇e → (∇e ⊗ ∇f)
If event f has occurred, then event e must have occurred some time prior to that– ∇f → (∇e ⊗ ∇f)
If both e and f occur, then e must come before f– (∇e ∧ ∇f) → (∇e ⊗ ∇f)
If event e occurs, then f must occur right after e with no event in-between– ∇e → ∇ ⊙(e ⊗ f)
If k and d both occur then d must happen right after k with no other event in-between– (∇k ∧ ∇d) → ∇ ⊙(k ⊗ d)
Center for E-Business Technology
Copyright 2008 by CEBT
Modeling Services with CTR: Constraints, Cont.Modeling Services with CTR: Constraints, Cont.
Center for E-Business Technology
Copyright 2008 by CEBT
Modeling Services with CTR: Modeling Services with CTR: Data Flow and Conditional Control FlowData Flow and Conditional Control Flow
Data flows imply constraints
Center for E-Business Technology
Copyright 2008 by CEBT
Modeling Services with CTR: Modeling Services with CTR: Data Flow and Conditional Control FlowData Flow and Conditional Control Flow
Conditions in control flow are checked ahead and unsatisfiable branches are eliminated
Center for E-Business Technology
Copyright 2008 by CEBT
Reasoning about Choreography and Reasoning about Choreography and ContractsContracts
Contracting
Determine if contracting for the service is possible
– Find out if there is an execution of the CTR formula G ∧ C given the set of service choreography definition R
– Check that there is a path s1, s2, …, such that
R, s1, …, sk ㅑ G ∧ C
Enactment
Find a constructive proof that
– R, s1, …, sk ㅑ G ∧ C for some paht s1, …, sk
– Each proof is a way to execute the choreography so that all constraints are satisfied
Center for E-Business Technology
Copyright 2008 by CEBT
Reasoning about Choreography and Contracts, Reasoning about Choreography and Contracts, Cont.Cont.
Phase 1
Transform to normal form
– From G ∧ C to ∨i(Gi ∧j serialConstrij)
Gi is a concurrent-Horn goal and SerialConstrij is either an immediate serial constr. or a serial constr.
– NP-Complete in the size of largest number of disjuncts in C
Phase 2
Find the proof using inference rules
– If proof is found, them enactment of the service is possible
– Linear in the size of the execution path
Center for E-Business Technology
Copyright 2008 by CEBT
Reasoning about Choreography and Contracts, Reasoning about Choreography and Contracts, Phase 1Phase 1
Transformation rules
Applying Complex Constraints
Applying Primitive Constraints
If the result is ¬path, then enactment is not possible
Otherwise, the result is a formula of the form ∨i(Gi ∧j serialConstrij)
Center for E-Business Technology
Copyright 2008 by CEBT
Reasoning about Choreography and Contracts, Reasoning about Choreography and Contracts, Phase 2Phase 2
Phase 2 has two step
1. Check constraints for internal consistency and eliminate redundancy
2. Apply inference rules
Center for E-Business Technology
Copyright 2008 by CEBT
Reasoning about Choreography and Contracts,Reasoning about Choreography and Contracts,Phase 2:Step 1Phase 2:Step 1
Check inconsistency
Inconsistent patterns
Eliminate redundancy
Examples
Center for E-Business Technology
Copyright 2008 by CEBT
Reasoning about Choreography and Contracts,Reasoning about Choreography and Contracts,Phase 2:Step 2Phase 2:Step 2
Extended Inference System
hot(Ψ)
– “ready to be excute”
1. hot(Ψ) = Ψ , if Ψ is atomic formula
2. hot(Ψ ⊗ Ф) = hot(Ψ)
3. hot(Ψ | Ф) = hot(Ψ) | hot(Ф)
4. hot(Ψ ∨ Ф) = hot(Ψ) ∨ hot(Ф)
enabled(C)
– The set of enabled component of a set of constraints C is as follows: enabled(C) = {x | x is a root node of C or x is not in C}
eligible(Ψ)
– x, if x ∈ hot(Ψ) ∩ enabled(C) and x is and exclusive node in C
– hot(Ψ) enabled(C), otherwise eligible(Ψ) ⊆ hot(Ψ)
Center for E-Business Technology
Copyright 2008 by CEBT
Reasoning about Choreography and Contracts,Reasoning about Choreography and Contracts,Phase 2:Step 2, Cont.Phase 2:Step 2, Cont.
Inference rules
1. Applying transactional definitions
– If b ← β be a rule in P and assume that its variables have been renamed so that none are shared with Ψ. If a and b unify with the most general unifier σ then then,
– Ψ’ is Ψ with some occurrence replaced with b
– C’ is C after deleting a and splicing edges adjacent on a
2. Querying the database
– If (∃)aσ is true in D and aσ and G’σ share no var. then,
– Ψ’ is Ψ with some occurrence of a deleted
Center for E-Business Technology
Copyright 2008 by CEBT
Reasoning about Choreography and Contracts,Reasoning about Choreography and Contracts,Phase 2:Step 2, Cont.Phase 2:Step 2, Cont.
Inference rules, cont.
3. Executing elementary updates
– If aσ is an elementary state transition from state D1 to D2 then
– Ψ’ is Ψ with some occurrence of a deleted
– C’ is C with after deleting some nodes
4. Executing atomic transactions
– If ⊙α is hot component in then,
– Ψ’ is Ψ with some occurrence of a deleted
Center for E-Business Technology
Copyright 2008 by CEBT
Reasoning about Choreography and Contracts,Reasoning about Choreography and Contracts,Phase 2:Step 2, Cont.Phase 2:Step 2, Cont.
Difference with previous CTR inference system
1. Rule 3 operates on eligible occurrence of atomic formula, while previous one did on a larger set of hot occurrence
2. Rule 1 and 3 also modify the set of constraints
Center for E-Business Technology
Copyright 2008 by CEBT
Bird’s Eye View of the ApproachBird’s Eye View of the Approach
The Web service designer starts to build Web service choreography by drawing a control flow graph, a data flow graph, and specifying service policy using a GUI tool.
The logical representations can be constructed automatically from an appropriately instrumented GUI tool.
The designer then uses the algorithm to find un-enactable parts of the control flow graph.
The designer uses the CTR reasoner-based algorithm to make sure that the control graph is consistent with the service policies.
The client submits the contract requirements to verify that a contract is possible. As before, verification is done using the CTR.
Center for E-Business Technology
Copyright 2008 by CEBT
Related WorkRelated Work
Service contracting Existing work focuses on defining frameworks, models, and architectures
different aspects and phases of e-contracting (negotiation, enforcement, violation detection, monitoring, legal aspects)
We provide a simple yet realistic and useful framework for e-contracting– Solve a concrete problem in establishing of contracts and enacting Web services
Workflow/process modeling Many languages for process modeling, e.g. YAWL, DecSerFlow
Ours is as expressive as DecSerFlow, and additionally integrates with conditional control flows, data flows, provides reasoning mechanisms
Process verification Most of the existing approaches use model checking for verification
– Complexity exponential in the size of the control graph
CTR’s integrates several process modeling paradigms: conditional control flows, data flows, hierarchical modeling, constraints– Complexity polynomial in the size of the control graph and exponential in the size of
the constraints (due to better structuring of the problem)
Center for E-Business Technology
Copyright 2008 by CEBT
ConclusionConclusion
Formulated the problems of choreography, contracting, and enactment for semantic Web services using Concurrent Transaction Logic
complex set of constraints
data flow and conditional process controls
extended CTR proof theory
Presented reasoning techniques for
deciding if automatic contracting for a service is possible
finding a choreography that obeys the policy of the service and the user requirements of the contract
enacting the service
Can be extended to multi-party contracts
Possible extensions
more expressive interaction patterns, e.g. loops
subsets of constraints for which the verification problem has a better complexity
Center for E-Business Technology