Proof System HY-566. Proof layer Next layer of SW is logic and proof layers. – allow the user to state any logical principles, – computer can to infer.

Slides:



Advertisements
Similar presentations
Computer Science CPSC 322 Lecture 25 Top Down Proof Procedure (Ch 5.2.2)
Advertisements

CH-4 Ontologies, Querying and Data Integration. Introduction to RDF(S) RDF stands for Resource Description Framework. RDF is a standard for describing.
Bottom-up Evaluation of XPath Queries Stephanie H. Li Zhiping Zou.
SLD-resolution Introduction Most general unifiers SLD-resolution
Cs7120 (Prasad)L22-MetaPgm1 Meta-Programming
Semantics Static semantics Dynamic semantics attribute grammars
Logic Programming Automated Reasoning in practice.
The Logic of Intelligence Pei Wang Department of Computer and Information Sciences Temple University.
Ilias Tachmazidis 1,2, Grigoris Antoniou 1,2,3, Giorgos Flouris 2, Spyros Kotoulas 4 1 University of Crete 2 Foundation for Research and Technology, Hellas.
Answer Set Programming Overview Dr. Rogelio Dávila Pérez Profesor-Investigador División de Posgrado Universidad Autónoma de Guadalajara
Logic.
1 Knowledge Based Systems (CM0377) Lecture 8 (Last modified 5th March 2001)
The International RuleML Symposium on Rule Interchange and Applications Local and Distributed Defeasible Reasoning in Multi-Context Systems Antonis Bikakis,
CSE 425: Logic Programming I Logic and Programs Most programs use Boolean expressions over data Logic statements can express program semantics –I.e., axiomatic.
Chapter 12: Expert Systems Design Examples
CPSC 322, Lecture 19Slide 1 Propositional Logic Intro, Syntax Computer Science cpsc322, Lecture 19 (Textbook Chpt ) February, 23, 2009.
Constraint Logic Programming Ryan Kinworthy. Overview Introduction Logic Programming LP as a constraint programming language Constraint Logic Programming.
Slides prepared by Rose Williams, Binghamton University Chapter 1 Getting Started 1.1 Introduction to Java.
Visual Web Information Extraction With Lixto Robert Baumgartner Sergio Flesca Georg Gottlob.
The Data Mining Visual Environment Motivation Major problems with existing DM systems They are based on non-extensible frameworks. They provide a non-uniform.
1 Chapter 9 Rules and Expert Systems. 2 Chapter 9 Contents (1) l Rules for Knowledge Representation l Rule Based Production Systems l Forward Chaining.
Programming Language Semantics Mooly SagivEran Yahav Schrirber 317Open space html://
Copyright © 2006 The McGraw-Hill Companies, Inc. Programming Languages 2nd edition Tucker and Noonan Chapter 18 Program Correctness To treat programming.
Semantics with Applications Mooly Sagiv Schrirber html:// Textbooks:Winskel The.
1 CILOG User Manual Bayesian Networks Seminar Sep 7th, 2006.
Describing Syntax and Semantics
TIBCO Designer TIBCO BusinessWorks is a scalable, extensible, and easy to use integration platform that allows you to develop, deploy, and run integration.
1. Motivation Knowledge in the Semantic Web must be shared and modularly organised. The semantics of the modular ERDF framework has been defined model.
Evaluating Centralized, Hierarchical, and Networked Architectures for Rule Systems Benjamin Craig University of New Brunswick Faculty of Computer Science.
Reverse Engineering State Machines by Interactive Grammar Inference Neil Walkinshaw, Kirill Bogdanov, Mike Holcombe, Sarah Salahuddin.
Formal Models of Computation Part II The Logic Model
Chapter 14: Artificial Intelligence Invitation to Computer Science, C++ Version, Third Edition.
2APL A Practical Agent Programming Language March 6, 2007 Cathy Yen.
Notes for Chapter 12 Logic Programming The AI War Basic Concepts of Logic Programming Prolog Review questions.
Knowledge Interchange Format Michael Gruninger National Institute of Standards and Technology
INTERPRETING IMPERATIVE PROGRAMMING LAGUAGES IN EXTENSIBLE STYLESHEET LANGUAGE TRANSFORMATIONS (XSLT) Authors: Ruhsan Onder Assoc.
Computer Science Department UoC. Outline Emerald Framework Overview Communication pattern Software Requirements Setup sequence Cs566 project objective.
A view-based approach for semantic service descriptions Carsten Jacob, Heiko Pfeffer, Stephan Steglich, Li Yan, and Ma Qifeng
1 Knowledge Based Systems (CM0377) Lecture 4 (Last modified 5th February 2001)
RELATIONAL FAULT TOLERANT INTERFACE TO HETEROGENEOUS DISTRIBUTED DATABASES Prof. Osama Abulnaja Afraa Khalifah
Computer Science Department UoC. Outline Project Teams Key Points description Suggested Task Delegation Files Needed & previous work.
ISBN Chapter 3 Describing Semantics -Attribute Grammars -Dynamic Semantics.
Slide 1 Propositional Definite Clause Logic: Syntax, Semantics and Bottom-up Proofs Jim Little UBC CS 322 – CSP October 20, 2014.
Actions Planning and Defeasible Reasoning Guillermo R. Simari Alejandro J. García Marcela Capobianco Dept. of Computer Science and Engineering U NIVERSIDAD.
3.2 Semantics. 2 Semantics Attribute Grammars The Meanings of Programs: Semantics Sebesta Chapter 3.
Chapter 3 Part II Describing Syntax and Semantics.
Programming Languages and Design Lecture 3 Semantic Specifications of Programming Languages Instructor: Li Ma Department of Computer Science Texas Southern.
Syntax and Semantics CIS 331 Syntax: the form or structure of the expressions, statements, and program units. Semantics: the meaning of the expressions,
The AI War LISP and Prolog Basic Concepts of Logic Programming
1 Typing XQuery WANG Zhen (Selina) Something about the Internship Group Name: PROTHEO, Inria, France Research: Rewriting and strategies, Constraints,
Of 33 lecture 1: introduction. of 33 the semantic web vision today’s web (1) web content – for human consumption (no structural information) people search.
CSE Winter 2008 Introduction to Program Verification January 15 tautology checking.
An infrastructure for context-awareness based on first order logic Ubiquitous Software Lab Oh Min Kyoung
Programming Languages Third Edition Chapter 4 Logic Programming.
Computer Science CPSC 322 Lecture 22 Logical Consequences, Proof Procedures (Ch 5.2.2)
1 Knowledge Based Systems (CM0377) Lecture 6 (last modified 20th February 2002)
MB: 26 Feb 2001CS Lecture 11 Introduction Reading: Read Chapter 1 of Bratko Programming in Logic: Prolog.
Knowledge Based Information System
The International RuleML Symposium on Rule Interchange and Applications Visualization of Proofs in Defeasible Logic Ioannis Avguleas 1, Katerina Gkirtzou.
Some Thoughts to Consider 5 Take a look at some of the sophisticated toys being offered in stores, in catalogs, or in Sunday newspaper ads. Which ones.
An argument-based framework to model an agent's beliefs in a dynamic environment Marcela Capobianco Carlos I. Chesñevar Guillermo R. Simari Dept. of Computer.
Belief dynamics and defeasible argumentation in rational agents M. A. Falappa - A. J. García G. R. Simari Artificial Intelligence Research and Development.
Artificial Intelligence Knowledge Representation.
Python: Control Structures
Web Ontology Language for Service (OWL-S)
Database management concepts
Programming Languages 2nd edition Tucker and Noonan
CPSC 322 Introduction to Artificial Intelligence
Programming Languages 2nd edition Tucker and Noonan
Representations & Reasoning Systems (RRS) (2.2)
Presentation transcript:

Proof System HY-566

Proof layer Next layer of SW is logic and proof layers. – allow the user to state any logical principles, – computer can to infer new knowledge by applying these principles on the existing data. This project implements a defeasible reasoning system which presents explanations to users for the answers to their queries.

Defeasible Logic A defeasible theory is a triple (F, R, >) – F is a set of literals (called facts) – R a finite set of rules – > a superiority relation on R Two kind of rules – Strict rules (A→P) can’t be defeated – Defeasible rules (A=>P) can be defeated

Defeasible Logic Metaprogram Simulates the proof theory of defeasible logic contains clauses : – denite provability – defeasible provability – When rule is blocked/unblocked – When rule is defeated/undefeateds

Explanation Example An e-shop tell to Bob’s that he owns 30$ Explanation (facts and rules): – purchase(Bob,DVD) - fact – price(DVD,30) - fact – delivered(DVD,Bob)- fact – purchase(Bob,DVD), price(DVD,30), delivered(DVD,Bob) → owes(Bob,30)- rule

Extension of RULML RuleML is an XML based language that supports rule representation for the Semantic Web. A new XML schema, extension of RuleML, is proposed for explanation representation in defeasible logic

Ext. RULML - Atom, Fact Atom: operator, var or const, optionaly NOT rich Bob A Fact is consisted by an Atom that comprise a certain knowledge

Ext. RULML - Rules Strict - Defeasible Rules. – Head: is an Atom – Body: number of Atoms rich Bob wins_lotto Bob

Ext. RULML - Explanations Definitely Provable Explanations – Denote the Atom – Definite Proof Definite Proof – Fact for that Atom – Strict Rule with Head the Atom and Body (multiple) atoms that must be proved definitely.

Explanations Example rich Bob rich Bob wins_lotto Bob wins_lotto Bob

Other Explanations Defeasibly Provable Explanations – arises from the defeasible logic specification. Not Definitely Provable Explanations – consists of all the strict rules with head equal to the negation of the non provable Atom Not Defeasibly Provable Explanations – arises from the defeasible logic specification

Proof tree construction (1/3) The foundation of the proof system – Prolog metaprogram implements rules of Defeasible Logic – The trace of the XSB implementation of prolog XSB: logic programming engine used to run the metaprogram. To communicate with the XSB the invocation of the XSB executable was used (Javas exec method) – Send commands to the XSB interpreter – Receive the output that was produced as an effect. Load the metaprogram and the defeasible theory

Proof tree construction (2/3) Load the metaprogram and the defeasible theory At the evaluation of a query XSB will print a message each time a predicate is: – Initially entered (Call) – Successfully returned from (Exit), – Failed back into (Redo), and – Completely failed out of (Fail).

Proof tree construction (3/3) A tree whose nodes are traced predicates is constructed by the Java XSB invoker when trace is parsed. Each node has information – A string for the predicates name – The predicates arguments – Whether it was found to be true (Exit) or false (Fail) – Whether it was failed back into (Redo) – Boolean attribute tells if predicate is negated.

Why the tree needs pruning? XSB trace contains data not needed for proof – A metaprogram to translate the DL into logic programming is used. Additional clauses are needed which add information to trace – Prolog shows successful and unsuccessful paths The tree produced by the XSB trace is built according to the metaprogram structure but the final tree needs to be compliant with the XML schema

Pruning Rules Heuristic rules are used in order to prune the proof tree According to the truth value and the type of the root node we may want to maintain – only successful paths – only failed paths – combinations of them.

Pruning Motivation Example1 Suppose we have the following defeasibly theory translated in logic programming as: – fact(a). – fact(e). – defeasible(r1,b,a). – defeasible(r2,b,e). – defeasible(r3,~(b),d).

Example1: Defeasible provability of b Pruned

Example1: Defeasible provability of b We are interested in successful (True) paths The pruning algorithm removes – the subtree with the false goal to prove that b is denitely provable – the false predicate to find a strict supportive rule for b – the metaprogram additional negation clause.

Pruning Motivation Example2 Suppose we have the following defeasibly theory translated in logic programming as: – fact(a). – defeasible(r1,b,a). – defeasible(r2,~(b),a).

Example2: Defeasible provability of b We are interested in unsuccessful paths and the pruning algorithm keeps the initial proof tree.

Pruning resume The proof tree after using the heuristic techniques is similar to an explanation derived by the use of pure DL Drawback: heuristics are fully dependent on the metaprogram. – Changes at metaprogram => changes at pruning implementation.

Pruning Example The marked rule is pruned

Pruning Example 2 The marked rule is pruned

Agent Interface to the Proof System The system makes use of two kinds of agents – 'Agent' which issues queries – 'Main Agent' which is responsible to answer the queries. Both agents are based on JADE (Java Agent DEvelopment Framework) – a software framework to develop agent-based applications

Process to answer a query (1/3) Main Agent XSB XML Writter Invoker Pruner Agent 2) Predicate1)Question3) Predicate 4) result trace 5) result tree 7) Pruned result6) result tree 8) Pruned result9) XML proof 10) answer or proof

Process to answer a query (2/3) 1. An agent issues a query to the Main Agent. - predicate::(proof|answer) 2. Main Agent sends Predicate to the Invoker – Invoker is responsible to communicate with XSB 3. Invoker executes the Predicate. 4. XSB returns the full result trace. 5. Invoker returns result tree to Main Agent. 6. Main Agent sends result tree to the Pruner

Process to answer a query (3/3) 7. Pruner returns pruned result to Main Agent. 8. Main Agent sends the pruned result to the XML writer (only if proof requested) 9. XML writer returns the XML Proof. 10. Main Agent returns Answer or Proof - ANSWER(true | false) - PROOF:(proof string) - ERROR:(error message)

Visual Agent

Command Line Agent Reads in a random way the questions from a configuration file Sends the question to the Main Agent with the order read The format of the questions is of the form – predicate::(proof|answer) The answers and proofs are stored at a files