June 14, 2004DIP Meeting, Lausanne Service Discovery Using Transaction Logic Reasoning Michael Kifer.

Slides:



Advertisements
Similar presentations
May 23, 2004OWL-S straw proposal for SWSL1 OWL-S Straw Proposal Presentation to SWSL Committee May 23, 2004 David Martin Mark Burstein Drew McDermott Deb.
Advertisements

July 1, 2004SWSL Rules SWSL Rules Sketch of the proposed language BG & MK.
5/2004 SWSI F2F The ?*&! Straw Proposal (formerly CTR++) Michael Kifer.
Semantics Static semantics Dynamic semantics attribute grammars
1 Intention of slide set Inform WSMOLX of what is planned for Choreography & Orhestration in DIP CONTENTS Terminology Clarification / what will be described.
Friday, April 17, PTR: A Probabilistic Transaction Logic Julian Fogel A logic for reasoning about action under uncertainty. A mathematically sound.
1 Ontology Language Comparisons doug foxvog 16 September 2004.
Copyright © 2006 Addison-Wesley. All rights reserved.1-1 ICS 410: Programming Languages Chapter 3 : Describing Syntax and Semantics Axiomatic Semantics.
ISBN Chapter 3 Describing Syntax and Semantics.
1 Design by Contract Building Reliable Software. 2 Software Correctness Correctness is a relative notion  A program is correct with respect to its specification.
1/22 Programs : Semantics and Verification Charngki PSWLAB Programs: Semantics and Verification Mordechai Ben-Ari Mathematical Logic for Computer.
Andrew Courter Texas Tech University CS5331.  PKS Why PKS? STRIPS The Databases Inference Algorithm Extended Features  PKS Examples  Conclusion and.
A Probabilistic Framework for Information Integration and Retrieval on the Semantic Web by Livia Predoiu, Heiner Stuckenschmidt Institute of Computer Science,
1 The Fourth Summer School on Ontological Engineering and the Semantic Web (SSSW'06) Semantic Web Services Hands-On Session with IRS-III and WSMO Studio.
Introduction to Semantics To be able to reason about the meanings of utterances, we need to have ways of representing the meanings of utterances. A formal.
MFI-7: Meta-model for Service Registration Zaiwen Feng, Keqing He, Chong Wang, Jian Wang and Fei He Wuhan University ISO/IEC JTC1/SC32/WG2 N1521.
CS 330 Programming Languages 09 / 18 / 2007 Instructor: Michael Eckmann.
Information Hiding and Encapsulation
Let remember from the previous lesson what is Knowledge representation
Embedded Systems Laboratory Department of Computer and Information Science Linköping University Sweden Formal Verification and Model Checking Traian Pop.
CS 330 Programming Languages 09 / 16 / 2008 Instructor: Michael Eckmann.
Describing Syntax and Semantics
1 Service Discovery using Diane Service Descriptions Ulrich Küster and Birgitta König-Ries University Jena Germany
Principle of Functional Verification Chapter 1~3 Presenter : Fu-Ching Yang.
9-Aug-15 Vocabulary. Programming Vocabulary Watch closely, you might even want to take some notes. There’s a short quiz at the end of this presentation!
Evgeny Zolin, School of Computer Science, University of Manchester, UK, Andrey Bovykin, Department of Computer Science, University.
Integrating DLs with Logic Programming Boris Motik, University of Manchester Joint work with Riccardo Rosati, University of Rome.
Ontologies Reasoning Components Agents Simulations Belief Update, Planning and the Fluent Calculus Jacques Robin.
Logic Specification and Z Schema 3K04 McMaster. Basic Logic Operators Logical negation ( ¬ ) Logical conjunction ( Λ or & ) Logical disjunction ( V or.
Agent Model for Interaction with Semantic Web Services Ivo Mihailovic.
Ming Fang 6/12/2009. Outlines  Classical logics  Introduction to DL  Syntax of DL  Semantics of DL  KR in DL  Reasoning in DL  Applications.
1 Inference Rules and Proofs (Z); Program Specification and Verification Inference Rules and Proofs (Z); Program Specification and Verification.
Declarative vs Procedural Programming  Procedural programming requires that – the programmer tell the computer what to do. That is, how to get the output.
Advanced Topics in Propositional Logic Chapter 17 Language, Proof and Logic.
1 Logical Agents CS 171/271 (Chapter 7) Some text and images in these slides were drawn from Russel & Norvig’s published material.
ISBN Chapter 3 Describing Semantics -Attribute Grammars -Dynamic Semantics.
An Ontological Framework for Web Service Processes By Claus Pahl and Ronan Barrett.
VDM++ Tutorial Model Quality. Overview Introduction Assessing internal consistency Assessing external consistency.
WSMO Discovery Realization in Semantic Web Fred Michael Stollberg - 03 November
LDK R Logics for Data and Knowledge Representation PL of Classes.
CS Introduction to AI Tutorial 8 Resolution Tutorial 8 Resolution.
Universität Innsbruck Leopold Franzens  Copyright 2007 DERI Innsbruck Technical Task Fair December 2007 SWS Composition The SUPER Approach.
ISBN Chapter 3 Describing Semantics.
Chapter 3 Part II Describing Syntax and Semantics.
1 Logical Agents CS 171/271 (Chapter 7) Some text and images in these slides were drawn from Russel & Norvig’s published material.
A Logical Framework for Web Service Discovery The Third International Semantic Web Conference Hiroshima, Japan, Michael Kifer 1, Rubén Lara.
For Monday Finish chapter 19 Take-home exam due. Program 4 Any questions?
 Copyright 2005 Digital Enterprise Research Institute. All rights reserved. WSLA Language Specification
Reasoning about the Behavior of Semantic Web Services with Concurrent Transaction Logic Presented By Dumitru Roman, Michael Kifer University of Innsbruk,
ece 627 intelligent web: ontology and beyond
WSMO - new structure, main intermediate deliverables - 2nd F2F meeting SDK cluster working group on Semantic Web Services Lausanne, Switzerland,
WSMO Implementation Workshop 2004 Woogle meets Semantic Web Fred U. Keller, M. Stollberg, D. Fensel.
The International RuleML Symposium on Rule Interchange and Applications Visualization of Proofs in Defeasible Logic Ioannis Avguleas 1, Katerina Gkirtzou.
EEL 5937 Content languages EEL 5937 Multi Agent Systems Lecture 10, Feb. 6, 2003 Lotzi Bölöni.
DBC NOTES. Design By Contract l A contract carries mutual obligations and benefits. l The client should only call a routine when the routine’s pre-condition.
ALLOY: A Formal Methods Tool Glenn Gordon Indiana University of Pennsylvania COSC 481- Formal Methods Dr. W. Oblitey 26 April 2005.
Logics for Data and Knowledge Representation ClassL (part 1): syntax and semantics.
The Role of Semantics and Terminologies in a Service-Oriented Architecture Paul Smits, Michael Lutz European Commission – DG Joint Research Centre Ispra,
CENG 424-Logic for CS Introduction Based on the Lecture Notes of Konstantin Korovin, Valentin Goranko, Russel and Norvig, and Michael Genesereth.
Chapter 7. Propositional and Predicate Logic
Orna Kupferman Yoad Lustig
Design by Contract Jim Fawcett CSE784 – Software Studio
Design by Contract Jim Fawcett CSE784 – Software Studio
Web Ontology Language for Service (OWL-S)
Reasoning About Code; Hoare Logic
Lecture 5 Floyd-Hoare Style Verification
Logics for Data and Knowledge Representation
Program correctness Axiomatic semantics
Presentation transcript:

June 14, 2004DIP Meeting, Lausanne Service Discovery Using Transaction Logic Reasoning Michael Kifer

June 14, 2004DIP Meeting, Lausanne2 A Service Discovery Framework Background theory (ontology) Service –Precondition –Precondition: a formula that states what must true of the input (possibly other things too, but not in WSMO) –Postcondition –Postcondition (usually called “effect” in other terminologies): a formula that states what is guaranteed to hold after the service executes Goal – what the client wants –Input –Input: a formula representing an object or an object template –Intent –Intent: a formula that states what the user wants to happen after the service is done

June 14, 2004DIP Meeting, Lausanne3 Logical Formulation Ontology |= Precond(Input\ActualInput) /\ (Postcond(Input\ActualInput) -> Intent) Requires query containment reasoning Can such reasoning be done in a rule-based language?

June 14, 2004DIP Meeting, Lausanne4 Logical Formulation (cont’d) 1. Ontology |= Postcond(Input\ActualInput) -> Intent Iff 2. Ontology /\ Postcond(Input\ActualInput) |= Intent (1) can’t be done in a rule-based language, but (2) can Postcond is not part of the background theory – must be assumed hypothetically –Not possible in standard first-order logic, especially not in a rule-based language –But possible in Transaction Logic (

June 14, 2004DIP Meeting, Lausanne5 Discovery in Transaction Logic Ontology |= Postcond(Input\ActualInput) -> Intent Iff Ontology |=  (insert{ Postcond(Input\ActualInput)} /\ Intent) This can be accomplished in the rule-based subset of Transaction Logic –And easily implemented in the FLORA-2 system (

June 14, 2004DIP Meeting, Lausanne6 Limitations of Transaction Logic Based Discovery Obviously: rule-based, so no disjunctions in the rule heads Some things might be harder to do than in DL (eg, universals), but not significantly so Supports: –Preconditions: Boolean combos of atomic formulas, which may in turn be defined by rules. –Postconditions: Facts and rules. No Boolean combos (e.g., negation or disjunction) –Goals: Like preconditions: Boolean combos of atomic formulas, which may in turn be defined by rules.

June 14, 2004DIP Meeting, Lausanne7 Example: Travel Reservation Services can sell tickets from city A to city B or sell citipasses for a city. Features shown: –input as a reified object –complex goals (Boolean combos) –rules in postconditions and goals –service effects can depend on input –services/goals can include time ranges –goals/services can contain universal quantifiers

June 14, 2004DIP Meeting, Lausanne8 Example: Taxonomy germany, france, europe, etc. – classes of cities paris, bonn, etc. – cities germany :: europe. austria :: europe. france :: europe. tyrol :: austria. Innsbruck : tyrol. lienz : tyrol. vienna : austria. bonn : germany. frankfurt : germany. paris : france. nancy : france.

June 14, 2004DIP Meeting, Lausanne9 Example: A Service Description Serv1 sells tickets & citipasses serv1[ precondition(Input) -> ${ Input ~ Req[from->From, to->To], Req : request, From : germany, To : austria ; Input ~ Req[citipass-> City], Req : request, City : tyrol }, postcondition(Input)-> ${ (ticket(Req)[start->From, destination->To, timerange->[12,18]] :- Input ~ Req[from->From, to->To], Req : request), (pass(Req)[location->City] :- Input ~ Req[citipass->City], City : tyrol, Req : request) } ].

June 14, 2004DIP Meeting, Lausanne10 Example: A Goal Find services that can sell a pass for some city in Tyrol and for every city in France goal123[ input -> ${_#1[citipass->_]}, intent-> ${Pass[location->X:france; location->X:tyrol], Pass[not doesnotServiceAllFrance]}, % NOTE: With Lloyd-Topor this can be expressed more naturally: % FORALL City if City:france then Pass[location->City] intentAxioms -> ${Pass[doesnotServiceAllFrance] :- City : france, Pass[not location-> City]} ], _#1:request.

June 14, 2004DIP Meeting, Lausanne11 A Service Discovery Rule #doFindService(Goal) :- Goal[input->Input], Serv[precondition(Input)->Precond], Precond, Goal[input->FreshInput], Serv[postcondition(FreshInput) -> PostCond], insertrule{PostCond}, % hypothetically assume postcondition % Hypothetically assume the definitions of the Desire if Goal[intentAxioms->DesireRules] then insertrule{DesireRules}, % Check if our goal is satisfied by the service Goal[intent->Desire], if Desire then (write('Service '), write(Serv), writeln(' % Remove the hypothetically added facts and rules deleterule{PostCond}, if Goal[desireAxioms->DesireRules] then deleterule{DesireRules}.

June 14, 2004DIP Meeting, Lausanne12 Conclusions Service discovery can be conveniently done in a rule-based language + Transaction Logic Representing pre/post conditions heavily relies on the ability to reify complex formulas, including rules – RDF’s reification of triples is insufficient (need a real logic, not an Ersatz-logic) Frame-based representation gives a nice syntax for describing services