UniLFS: A Unifying Logical Framework for Service Modeling and Contracting

Similar documents
ServLog: A Unifying Logical Framework for Service Modeling and Contracting

Semantic Web Service Choreography: Contracting and Enactment

20 years of Transaction Logic

Test and Evaluation of Autonomous Systems in a Model Based Engineering Context

Business Process Modelling

Proofs and Proof Certification in the TLA + Proof System

Counterexample Guided Synthesis of Monitors for Realizability Enforcement. Matthias Güdemann Gwen Salaün Meriem Ouederni

Qualitative Analysis of WorkFlow nets using Linear Logic: Soundness Verification

An Overview on Protocol Adaptors for Service Component Integration

Module 3. Requirements Analysis and Specification. Version 2 CSE IIT, Kharagpur

BPAL: A Platform for Managing Business Process Knowledge Bases via Logic Programming

Rules in the Semantic Web Services Language (SWSL): An Overview for Standardization Directions

Expressive Logical Framework for Reasoning about Complex Events and Situations

How to Make a Correct Multiprocess Program Execute Correctly on a Multiprocessor

Situation Calculus and YAGI

Code BEAM SF Hype For Types. Using Dialyzer to bring type checking to your Elixir code

Distributed Information System as a System of Asynchronous Concurrent Processes

Axiomatic Specification. Al-Said, Apcar, Jerejian

Lecture 5 - Axiomatic semantics

Extending WISE with Contract Management

Business Process Modelling & Semantic Web Services

Lezione 14 Model Transformations for BP Analysis and Execution

A Technical Comparison of XPDL, BPML and BPEL4WS

Logik für Informatiker Logic for computer scientists

Verifying Java Programs Verifying Java Programs with KeY

is easing the creation of new ontologies by promoting the reuse of existing ones and automating, as much as possible, the entire ontology

Joint Entity Resolution

Reasoning on semantically annotated processes

Compositional Software Model Checking

Module 6. Knowledge Representation and Logic (First Order Logic) Version 2 CSE IIT, Kharagpur

Automated Compliance Verification of Business Processes in Apromore

HANDBOOK OF LOGIC IN ARTIFICIAL INTELLIGENCE AND LOGIC PROGRAMMING

Distributed Systems Programming (F21DS1) Formal Verification

Resource-bound process algebras for Schedulability and Performance Analysis of Real-Time and Embedded Systems

The RuleML System of Families of Languages

3.4 Deduction and Evaluation: Tools Conditional-Equational Logic

An Intuitive Formal Approach to Dynamic Workflow Modeling and Analysis

Presented by: David Martin (SRI)

IG-JADE-PKSlib. An Agent Based Framework for Advanced Web Service Composition and Provisioning. Erick Martínez & Yves Lespérance

Process Modelling using Petri Nets

Techniques for the unambiguous specification of software

SERGEI OBIEDKOV LEARNING HORN FORMULAS WITH QUERIES

A Formal Model for Web-Service Composition

Proving the Correctness of Distributed Algorithms using TLA

A declarative meta modeling approach to define process migration constraints

Functional Programming

Leslie Lamport: The Specification Language TLA +

DATABASE THEORY. Lecture 18: Dependencies. TU Dresden, 3rd July Markus Krötzsch Knowledge-Based Systems

Cyber Physical System Verification with SAL

Contemporary Design. Traditional Hardware Design. Traditional Hardware Design. HDL Based Hardware Design User Inputs. Requirements.

Overview of lectures today and Wednesday

CSCI.6962/4962 Software Verification Fundamental Proof Methods in Computer Science (Arkoudas and Musser) Chapter p. 1/27

CS 6110 S14 Lecture 38 Abstract Interpretation 30 April 2014

Constraint-enabled Process Modeling. Conrad Bock U.S. National Institute of Standards and Technology November 20, 2007

OpenVera Assertions. March Synopsys, Inc.

Cover Page. The handle holds various files of this Leiden University dissertation

Constraint Solving. Systems and Internet Infrastructure Security

AUTOMATED BEHAVIOUR REFINEMENT USING INTERACTION PATTERNS

CLF: A logical framework for concurrent systems

/ Approximation Algorithms Lecturer: Michael Dinitz Topic: Linear Programming Date: 2/24/15 Scribe: Runze Tang

1.3. Conditional expressions To express case distinctions like

Tasks graph and data dependencies Towards an object-oriented logic

Introductory logic and sets for Computer scientists

A New Statement for Selection and Exception Handling in Imperative Languages arxiv: v3 [cs.pl] 24 Aug 2015

CIS 1.5 Course Objectives. a. Understand the concept of a program (i.e., a computer following a series of instructions)

INCONSISTENT DATABASES

OMG Specifications for Enterprise Interoperability

BOOGIE. Presentation by Itsik Hefez A MODULAR REUSABLE VERIFIER FOR OBJECT-ORIENTED PROGRAMS MICROSOFT RESEARCH

Lecture 11 Lecture 11 Nov 5, 2014

1. true / false By a compiler we mean a program that translates to code that will run natively on some machine.

Diagnostic Information for Control-Flow Analysis of Workflow Graphs (aka Free-Choice Workflow Nets)

Semantic Web. Semantic Web Services. Morteza Amini. Sharif University of Technology Fall 94-95

Workflow : Patterns and Specifications

An Information Model for High-Integrity Real Time Systems

Principles of Programming Languages

A graphical user interface for service adaptation

Enhancing Business Processes Using Semantic Reasoning. Monica. J. Martin Sun Java Web Services. 26 May

Semantic Web. Ontology Pattern. Gerd Gröner, Matthias Thimm. Institute for Web Science and Technologies (WeST) University of Koblenz-Landau

Specification and Analysis of Contracts Tutorial

! Use of formal notations. ! in software system descriptions. ! for a broad range of effects. ! and varying levels of use. !

Reasoning on Business Processes and Ontologies in a Logic Programming Environment

Nondeterministic Query Algorithms

Business Process Management Seminar 2007/ Oktober 2007

Proof Carrying Code(PCC)

Conservative re-use ensuring matches for service selection

Indistinguishability: Friend and Foe of Concurrent Data Structures. Hagit Attiya CS, Technion

Graph Representation of Declarative Languages as a Variant of Future Formal Specification Language

Specification of Workflow Processes Using the Action Description Language C

Model Driven Engineering (MDE)

Database Systems. Sven Helmer. Database Systems p. 1/567

Supplementary Notes on Abstract Syntax

Chapter 3: Propositional Languages

An Evolution of Mathematical Tools

Higher-Order Logic. Specification and Verification with Higher-Order Logic

Modeling Systems Using Design Patterns

Formal editing: jedit-mmt. Narrative editing: LaTeX-MMT. Browsing: MMT web server. Building: MMT scripting language. The MMT API: A Generic MKM System

1. M,M sequential composition: try tactic M; if it succeeds try tactic M. sequential composition (, )

Software Model Checking: Theory and Practice

G Programming Languages - Fall 2012

Monitoring Interfaces for Faults

Transcription:

UniLFS: A Unifying Logical Framework for Service Modeling and Contracting RuleML 2103: 7th International Web Rule Symposium July 11-13, 2013 Dumitru Roman 1 and Michael Kifer 2 1 SINTEF / University of Oslo, Norway 2 State University of New York at Stony Brook, New York, U.S.A. dumitru.roman@sintef.no, kifer@cs.sunysb.edu

Outline Context and motivation: Automated service contracting UniLFS: Modeling and reasoning about service behavior for automated service contracting Elements of service contracts Expressivity of the modeling language for service contracts Reasoning technique for service contracting Related work Conclusions and outlook Dumitru Roman & Michael Kifer 2

Dumitru Roman & Michael Kifer 3 Tasks to be automated when dealing with Services

Automated service contracting Overall aim: Automate service contracting Problems with traditional service contracting High costs for contract establishment and management Slow for rapidly changing business situations Automated service contracting can potentially Lower contract establishment and management costs Speed up and improve contract establishment and management Current status: Limited expressivity of modeling frameworks and lack of sound and complete contract establishment techniques General approach 1. Focus on those aspects of contracting that constrain interactions in processes 2. Define the conceptual framework 3. Formalization, representation, and reasoning Dumitru Roman & Michael Kifer 4

Dumitru Roman & Michael Kifer 5 Service contracting overview and objectives Service Contract = Choreography + Service Policies + Client Contract Requirements Main objectives: 1. An expressive language for contracting Service choreography Service policies Client contract requirements 2. A reasoning mechanism to decide if service contracting is possible

Dumitru Roman & Michael Kifer 6 Service contracting example overview Is this contract s execution possible?

UniLFS A language for service contracts Aim An expressive representational framework for service contracts: combining procedural and declarative aspects Common requirements Service choreographies Conditional control flow: Sequential, concurrent, non-deterministic, and iterative interactions Data flow: Local and non-local data passing between interactions Service Policies and Client Contract Requirements Temporal, conditional, and data constraints Dumitru Roman & Michael Kifer 7

Modeling service choreographies Tasks: Task atoms and task definitions (hierarchical representations) Composition of tasks: Sequential, concurrent, non-deterministic, and conditional Data passing between tasks Data-passing through shared arguments is possible between a task and its direct successors, or within the definition of a composite task Data-passing through shared data space is used when passing data is not possible through shared arguments due to the difference in scope of the arguments Dumitru Roman & Michael Kifer 8

Dumitru Roman & Michael Kifer 9 Example

Modeling policies as constraints Existence constraints Serial constraints Complex constraints if C1 and C2 are constraints, then so are C1 and C2 C1 or C2 Dumitru Roman & Michael Kifer 10

Dumitru Roman & Michael Kifer 11 Example

Dumitru Roman & Michael Kifer 12 The Problem of Service Contracting and Enactment Service contracting: Decide if the contract is satisfiable Service enactment: If it is, find an enactment Service choreography What is the actual order of interactions Is this contract s if service contracting execution possible? is possible? 12

Solution overview 1. Concurrent Transaction Logic (CTR) our formalism for Choreographies Service policies Client contract requirements 2. Extend CTR when necessary 3. Prove correctness Dumitru Roman & Michael Kifer 13

Dumitru Roman & Michael Kifer 14 Short introduction to CTR Why CTR? Logic for specification and execution of transactional processes Integrates queries, updates, and transaction composition Has proof procedure for concurrent Horn formulas: proof =execution Can express a wide variety of constraints Has been applied in the area of workflow verification and scheduling with promising results Atomic CTR formulas: same as in classical logic More complex formulas: built using connectives a b, a b, a /\ b, a \/ b, a, a Process a ( b Subproc ) g Subproc ( c ( d ( e f ))) a and c or e d b f Subproc g Process

Dumitru Roman & Michael Kifer 15 Graphical representation of a service choreography in UniLFS

Dumitru Roman & Michael Kifer 16 Graphical notation for constraints in UniLFS

More examples of constraints that can be captured in UniLFS if p is executed, then q must also execute (before or after q) if p is executed, then p must also be executed, and vice versa every occurrence of task p must be followed by an occurrence of task q with the same argument and there must be an occurrence of p before every occurrence of p and their arguments must be the same if task p is executed then q must execute after it, and before that q there can be no other p if task q is executed, it has to be preceded by an occurrence of p; the next instance of q can execute only after another occurrence p tasks p and q must alternate Dumitru Roman & Michael Kifer 17

Service contract formalization with CTR Example ConcurrentHorn /\ Constraints /\ Dumitru Roman & Michael Kifer 18

Contributions Prior work Original CTR proof theory does not handle constraints Prior work added simple constraints, but New No iterative processes No constraints on iterations No data flow Add the necessary modeling primitives Extend the CTR proof theory to handle service contracting with iterations, data flow, constraints, etc. As a result Can capture much of BPMN and WS-BPEL process modeling, extend them with declarative constraints And contracting over them Dumitru Roman & Michael Kifer 19

Reasoning about service contracts with CTR Contracting: Find out if an execution of the CTR formula Choreography /\ Policy /\ ClientRequirements exists Enactment: Find a constructive proof for this execution Main result: The extended inference system is sound and complete for proving the above Soundness: Every found execution is correct Completeness: All possible executions can be found Dumitru Roman & Michael Kifer 20

Extended proof theory An overview Sequent: Meaning: can execute starting at state s given P in such a way that C is satisfied Each inference rule looks like this: For example: sequent 1 sequent 2 Has seven inference rules and one axiom Dumitru Roman & Michael Kifer 21

Related Work E-contracting Pieces of frameworks, models, architectures and different aspects and phases of e-contracting (negotiation, enforcement, violation detection, monitoring, legal aspects), but no unifying formalism We provide a unifying and general framework for e-contracting Workflow/process modeling Most languages are procedural (WS-BPEL, BPMN, YAWL). The declarative ones (DecSerFlow) are inexpressive Our framework: very expressive. Integrates conditional control flow, data flow, hierarchical modeling, and complex constraints Process verification Most of the existing approaches use temporal logic/model checking. No obvious way to handle certain aspects: data flow, hierarchical modeling We use CTR. More natural modeling language. Sometimes has better complexity. Dumitru Roman & Michael Kifer 22

Conclusions and Outlook UniLFS summary Identified main element of service contracts and formally formulated the problem of service contracting Modeling: Developed an expressive representational framework for service contracts, combining procedural and declarative elements Reasoning: Developed a sound and complete proof theory for deciding if contracting for a service is possible Future work Semi-automated extraction of UniLFS specifications from text (e.g. contracts) Complexity study, e.g. subsets of constraints for which the verification problem has a better complexity Implementation Dumitru Roman & Michael Kifer 23

Dumitru Roman & Michael Kifer 24 Thank you!? \/!