Reasoning About the Behavior of Semantic Web Services with - - PowerPoint PPT Presentation

reasoning about the behavior of semantic web services
SMART_READER_LITE
LIVE PREVIEW

Reasoning About the Behavior of Semantic Web Services with - - PowerPoint PPT Presentation

Reasoning About the Behavior of Semantic Web Services with Concurrent Transaction Logic 33rd International Conference on Very Large Data Bases (VLDB) September 23-27 2007, Vienna, Austria Dumitru Roman 1 and Michael Kifer 2 1 University of


slide-1
SLIDE 1

33rd International Conference on Very Large Data Bases (VLDB)

September 23-27 2007, Vienna, Austria Dumitru Roman1 and Michael Kifer2

1University of Innsbruck / DERI Innsbruck, Austria 2State University of New York at Stony Brook, New York, U.S.A.

dumitru.roman@deri.at, kifer@cs.sunysb.edu

Reasoning About the Behavior

  • f Semantic Web Services

with Concurrent Transaction Logic

slide-2
SLIDE 2

26.09.2007 2

Semantic Web Services

SWS Approaches: OWL-S, SWSF, WSMO, SAWSDL, etc.

slide-3
SLIDE 3

26.09.2007 3

Outline

  • Motivation

– Service behavior: modeling, reasoning, and enactment

  • Introduction to Concurrent Transaction Logic (CTR)

(we use it to do stuff)

  • Service modeling with CTR

– Control Flow – Events and Constraints – Data Flow and Conditional Control Flow

  • Reasoning about choreography and contracts

– Phase 1: Transformation – Phase 2: Extended Proof Theory

  • Related Work
  • Conclusions
slide-4
SLIDE 4

26.09.2007 4

Outline

  • Motivation

– Service behavior: modeling, reasoning, and enactment

  • Introduction to Concurrent Transaction Logic

(CTR)

  • Service modeling with CTR
  • Reasoning about choreography and contracts
  • Related Work
  • Conclusions
slide-5
SLIDE 5

26.09.2007 5

Modeling & Reasoning About Service Behavior

slide-6
SLIDE 6

26.09.2007 6

Example: (Conditional) Control and Data Flow Graphs & Constraints

Is this contract’s execution possible?

slide-7
SLIDE 7

26.09.2007 7

Outline

  • Motivation

– Service behavior: modeling, reasoning, and enactment

  • Introduction to Concurrent Transaction

Logic (CTR)

  • Service modeling with CTR
  • Reasoning about choreography and contracts
  • Related Work
  • Conclusions
slide-8
SLIDE 8

26.09.2007 8

Introduction to CTR

  • An extension of the classical predicate logic to program and

reason about state changes

– Reduces to classical logic when no state transitions – Atomic formulas of CTR are identical to those of the classical logic:

  • p(t1, t2, …, tn) – where p is a predicate symbol, the ti's are function terms
  • More complex formulas are built using connectives and quantifiers
  • Informal semantics

– A set of database states

  • E.g. s1, s2, …, sn

– A collection of paths (sequences of states)

  • E.g. < s1>, < s1, s2>, < s1, s2, …, sn >

– Truth value of CTR formulas is determined over paths, not at states

  • E.g. if a formula a is true over a path < s1, s2, …, sn >, it means that a can

“execute” starting at state s1, change to state s2, s3 …, etc. Will terminate at state sn

slide-9
SLIDE 9

26.09.2007 9

CTR Syntax

  • Countable sets of symbols

– predicate symbols – function symbols – variables

  • Logical connectives

– a ⊗ b – execute a then execute b – a | b – a and b must both execute concurrently in an interleaved fashion. – a /\ b – a and b must both execute along the same path – a \/ b – execute a or execute b non-deterministically – ¬a – execute in any way, provided that this will not be a valid execution

  • f a

– a – execute a in isolation execution i.e., without interleaving with

  • ther concurrently running activities
  • Example: a ⊗ ( b | ( c ⊗ ( d ∨ ( e ⊗ f ))) ) ⊗ g
slide-10
SLIDE 10

26.09.2007 10

Concurrent-Horn Subset of CTR

  • Concurrent-Horn goals:

– Any atomic formula is a concurrent-Horn goal – a ⊗ b, a | b, and a \/ b are concurrent-Horn goals, if so are a and b

– a is a concurrent-Horn goals, if so is a

  • Concurrent-Horn rules

– CTR formulas of the form head <- body (i.e. head \/ ¬ body), where head is an atomic formula and body is a concurrent- Horn goal

  • head can be viewed as a subroutine name:
  • ne way to execute head is to execute its definition, body
  • Example:

Process ← a ⊗ ( b | Subproc ) ⊗ g Subproc ← ( c ⊗ ( d ∨ ( e ⊗ f )))

  • An SLD-like proof procedure proves concurrent Horn

formulas and executes them at the same time

a c d e f g b

and

  • r

Subproc Process

slide-11
SLIDE 11

26.09.2007 11

CTR – Elementary State Transitions

  • Propositions that represent “built-in” state

transitions

– Usually we use the following elementary state transitions: insert.p and delete.p

  • insert.p: add fact p to the current state
  • delete.p: delete fact p from the current state

– We also use elementary transitions to represent events that happen during workflows: place_order,

delivery, etc.

slide-12
SLIDE 12

26.09.2007 12

Outline

  • Motivation

– Service behavior: modeling, reasoning, and enactment

  • Introduction to Concurrent Transaction Logic (CTR)
  • Service modeling with CTR

– Control Flow – Events and Constraints – Data Flow and Conditional Control Flow

  • Reasoning about choreography and contracts
  • Related Work
  • Conclusions
slide-13
SLIDE 13

26.09.2007 13

Modeling Service Choreography with CTR (Control Flow Graphs & Data Flow)

path ≡ Ψ \/ ¬Ψ

slide-14
SLIDE 14

26.09.2007 14

Outline

  • Motivation

– Service behavior: modeling, reasoning, and enactment

  • Introduction to Concurrent Transaction Logic (CTR)
  • Service modeling with CTR

– Control Flow – Events and Constraints – Data Flow and Conditional Control Flow

  • Reasoning about choreography and contracts
  • Related Work
  • Conclusions
slide-15
SLIDE 15

26.09.2007 15

Constraint Algebra

1. Primitive constraints

– Event e must happen – Event e must not happen

2. Immediate serial constraints

– Events e1, e2, …, en must happen next to each other with no

  • ther events in-between

3. Serial constraints

– Events e1, e2, …, en must execute (or not execute) in that

  • rder with possible interleaving

4. Complex constraints

– If C1, C2 are constraints then so are C1 /\ C2 , and C1\/C2

∇e1 ⊗¬∇e2 ⊗∇e3 ⊗¬∇e4 ⊗… ⊗∇en

∇e ¬∇e ∇(e1 ⊗e2 ⊗e3 ⊗… ⊗∇en)

∇ a ≡ path ⊗ a ⊗ path

slide-16
SLIDE 16

26.09.2007 16

Constraints Expressivity Examples

  • Events e and f must both occur (in any order)

  • It is not possible for e and f to happen together

  • If event e occurs, then f must also occur (before or after e)

– ;

  • If event e occurs, then f must occur later

– ;

  • If event f has occurred, then event e must have occurred some time prior to that

  • If both e and f occur, then e must come before f

– ;

  • If event e occurs, then f must occur right after e with no event in-between

  • If k and d both occur then d must happen right after k with no other event in-between

– (or )

slide-17
SLIDE 17

26.09.2007 17

Service Constraints: Example

slide-18
SLIDE 18

26.09.2007 18

Outline

  • Motivation

– Service behavior: modeling, reasoning, and enactment

  • Introduction to Concurrent Transaction Logic (CTR)
  • Service modeling with CTR

– Control Flow – Events and Constraints – Data Flow and Conditional Control Flow

  • Reasoning about choreography and contracts

– Phase 1: Transformation – Phase 2: Extended Proof Theory

  • Related Work
  • Conclusions
slide-19
SLIDE 19

26.09.2007 19

Constraints Implied by Data Flow

slide-20
SLIDE 20

26.09.2007 20

Reduction of Conditional Control Flows

Can propagate constraints and reduce control flows by eliminating (or flagging) impossible parts.

slide-21
SLIDE 21

26.09.2007 21

Outline

  • Motivation

– Service behavior: modeling, reasoning, and enactment

  • Introduction to Concurrent Transaction Logic (CTR)
  • Service modeling with CTR

– Control Flow – Events and Constraints – Data Flow and Conditional Control Flow

  • Reasoning about choreography and contracts
  • Related Work
  • Conclusions
slide-22
SLIDE 22

26.09.2007 22

Reasoning About Service Behavior

  • 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 definitions R, i.e.

  • Check that there is a path s1, s2, …, sk such that (╞ is CTR

entailment)

R, s1, …, sk ╞ G /\ C

  • Enactment

– Find a constructive proof that R, s1, …, sk ╞ G /\ C for some path s1, …, sk

  • Each such proof is a way to execute the choreography so

that all the constraints are satisfied

slide-23
SLIDE 23

26.09.2007 23

Solution – Overview

  • Phase 1

– Aim: get rid of primitive constraints and distribute disjunctions – Translate the formula G /\ C into an equivalent formula \/i(Gi /\j serialConstri,j) where each serialConstri,j is either an immediate serial constraint or a (plain) serial constraint, and Gi is a concurrent-Horn goal

  • Each step in this transformation can be viewed as an inference rule in a

proof theory

  • Phase 2

– Extend the proof theory of Horn CTR to formulas of the form G /\j serialConstrj which result from the Phase 1. Then use proof theory on these formulas

  • If a proof is found, then enactment of the service is possible
slide-24
SLIDE 24

26.09.2007 24

Outline

  • Motivation

– Service behavior: modeling, reasoning, and enactment

  • Introduction to Concurrent Transaction Logic (CTR)
  • Service modeling with CTR

– Control Flow – Events and Constraints – Data Flow and Conditional Control Flow

  • Reasoning about choreography and contracts

– Phase 1: Transformation – Phase 2: Extended Proof Theory

  • Related Work
  • Conclusions
slide-25
SLIDE 25

26.09.2007 25

Phase 1 – Normal Form Transformation

  • Applying Complex Constraints
  • Applying Primitive Constraints
  • The result of the transformation can be one of:

– ¬path, i.e. inconsistency

  • Enactment is not possible

– A formula of the form \/i(Gi /\j serialConstri,j)

  • Scheduling might be possible; apply Phase 2 for each Gi /\j serialConstri,j separately
slide-26
SLIDE 26

26.09.2007 26

Outline

  • Motivation

– Service behavior: modeling, reasoning, and enactment

  • Introduction to Concurrent Transaction Logic (CTR)
  • Service modeling with CTR

– Control Flow – Events and Constraints – Data Flow and Conditional Control Flow

  • Reasoning about choreography and contracts

– Phase 1: Transformation – Phase 2: Extended Proof Theory

  • Related Work
  • Conclusions
slide-27
SLIDE 27

26.09.2007 27

Phase 2 – Extended Proof Theory

  • A proof theory for formulas of the form

G /\j serialConstrj

  • Two steps
  • 1. Check constraints for internal consistency and eliminate

redundancy

  • If the constraints are consistent, then go to next step, which is

based on inference rules

  • 2. Inference rules
slide-28
SLIDE 28

26.09.2007 28

Phase 2, Step 1 – Constraint Graphs

  • Constraint graph
  • Inconsistency patterns (capture all inconsistencies)
slide-29
SLIDE 29

26.09.2007 29

Phase 2, Step 1 – Redundancy Elimination & Well Formed Constraint Graphs

slide-30
SLIDE 30

26.09.2007 30

Phase 2, Step 2 – Inference Rules

  • Applying transaction definitions

– if a <- b is in P then

ψ’ is ψ with some occurrence of a replaced with b; C’ is C after deleting a and splicing edges adjacent on a

  • Querying the database

– if a is a database predicate in ψ and D |= a then ψ’ is ψ with some occurrence of a deleted

slide-31
SLIDE 31

26.09.2007 31

Phase 2, Step 2 – Inference Rules (Cont’d)

  • Executing elementary updates

– If a is an elementary update s.t. D1 –a–> D2 then

ψ’ is ψ with some occurrence of a deleted C’ is C after deleting some nodes (details omitted)

  • Executing atomic transactions

– If α occurs in ψ then

ψ’ is ψ with some occurrence of α deleted

slide-32
SLIDE 32

26.09.2007 32

Outline

  • Motivation

– Service behavior: modeling, reasoning, and enactment

  • Introduction to Concurrent Transaction Logic (CTR)
  • Service modeling with CTR

– Control Flow – Events and Constraints – Data Flow and Conditional Control Flow

  • Reasoning about choreography and contracts

– Phase 1: Transformation – Phase 2: Extended Proof Theory

  • Related Work
  • Conclusions
slide-33
SLIDE 33

26.09.2007 33

Related 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)

slide-34
SLIDE 34

26.09.2007 34

Outline

  • Motivation

– Service behavior: modeling, reasoning, and enactment

  • Introduction to Concurrent Transaction Logic (CTR)
  • Service modeling with CTR

– Control Flow – Events and Constraints – Data Flow and Conditional Control Flow

  • Reasoning about choreography and contracts

– Phase 1: Transformation – Phase 2: Extended Proof Theory

  • Related Work
  • Conclusions
slide-35
SLIDE 35

26.09.2007 35

Conclusions

  • 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

slide-36
SLIDE 36

26.09.2007 36

Thank you!