Auto-Epistemic Logic Proposed by Moore (1985) Contemplates reflection on self knowledge (auto-epistemic) Allows for representing knowledge not just about.

Slides:



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

Biointelligence Lab School of Computer Sci. & Eng.
CSCI 115 Chapter 6 Order Relations and Structures.
Logic Programming Automated Reasoning in practice.
Automated Reasoning Systems For first order Predicate Logic.
Hoare’s Correctness Triplets Dijkstra’s Predicate Transformers
1 Logic Logic in general is a subfield of philosophy and its development is credited to ancient Greeks. Symbolic or mathematical logic is used in AI. In.
Answer Set Programming Overview Dr. Rogelio Dávila Pérez Profesor-Investigador División de Posgrado Universidad Autónoma de Guadalajara
Auto-Epistemic Logic Proposed by Moore (1985) Contemplates reflection on self knowledge (auto-epistemic) Permits to talk not just about the external world,
Logic Concepts Lecture Module 11.
Everything You Need to Know (since the midterm). Diagnosis Abductive diagnosis: a minimal set of (positive and negative) assumptions that entails the.
Outline Recap Knowledge Representation I Textbook: Chapters 6, 7, 9 and 10.
Logic in general Logics are formal languages for representing information such that conclusions can be drawn Syntax defines the sentences in the language.
1 Basic abstract interpretation theory. 2 The general idea §a semantics l any definition style, from a denotational definition to a detailed interpreter.
The idea of completion In LP one uses “if” but mean “iff” [Clark78] This doesn’t imply that -1 is not a natural number! With this program we mean: This.
Constraint Logic Programming Ryan Kinworthy. Overview Introduction Logic Programming LP as a constraint programming language Constraint Logic Programming.
Auto-Epistemic Logic Proposed by Moore (1985) Contemplates reflection on self knowledge (auto-epistemic) Allows for representing knowledge not just about.
Logic in Computer Science Transparency No Chapter 3 Propositional Logic 3.6. Propositional Resolution.
Logic in Computer Science Transparency No Chapter 3 Propositional Logic 3.6. Propositional Resolution 3.7. Natural Deduction.
Knoweldge Representation & Reasoning
ASP vs. Prolog like programming ASP is adequate for: –NP-complete problems –situation where the whole program is relevant for the problem at hands èIf.
ASP vs. Prolog like programming ASP is adequate for: –NP-complete problems –situation where the whole program is relevant for the problem at hands èIf.
Programming Language Semantics Denotational Semantics Chapter 5 Part III Based on a lecture by Martin Abadi.
Chapter 7 Reasoning about Knowledge by Neha Saxena Id: 13 CS 267.
Belief Revision Lecture 1: AGM April 1, 2004 Gregory Wheeler
Partially Ordered Sets (POSets)
Propositional Logic Reasoning correctly computationally Chapter 7 or 8.
Database Systems Normal Forms. Decomposition Suppose we have a relation R[U] with a schema U={A 1,…,A n } – A decomposition of U is a set of schemas.
Notes for Chapter 12 Logic Programming The AI War Basic Concepts of Logic Programming Prolog Review questions.
1 Knowledge Based Systems (CM0377) Lecture 12 (Last modified 2nd May 2002)
Proof Systems KB |- Q iff there is a sequence of wffs D1,..., Dn such that Dn is Q and for each Di in the sequence: a) either Di is in KB or b) Di can.
1 Knowledge Based Systems (CM0377) Lecture 4 (Last modified 5th February 2001)
The Integers. The Division Algorithms A high-school question: Compute 58/17. We can write 58 as 58 = 3 (17) + 7 This forms illustrates the answer: “3.
Chapter 2 Mathematical preliminaries 2.1 Set, Relation and Functions 2.2 Proof Methods 2.3 Logarithms 2.4 Floor and Ceiling Functions 2.5 Factorial and.
Pattern-directed inference systems
Advanced Topics in Propositional Logic Chapter 17 Language, Proof and Logic.
Logical Agents Logic Propositional Logic Summary
1 Knowledge Representation. 2 Definitions Knowledge Base Knowledge Base A set of representations of facts about the world. A set of representations of.
Of 33 lecture 12: propositional logic – part I. of 33 propositions and connectives … two-valued logic – every sentence is either true or false some sentences.
Slide 1 Propositional Definite Clause Logic: Syntax, Semantics and Bottom-up Proofs Jim Little UBC CS 322 – CSP October 20, 2014.
CS 267: Automated Verification Lecture 3: Fixpoints and Temporal Properties Instructor: Tevfik Bultan.
1 IS 2150 / TEL 2810 Introduction to Security James Joshi Associate Professor, SIS Lecture 3 September 15, 2009 Mathematical Review Security Policies.
CSE Winter 2008 Introduction to Program Verification January 31 proofs through simplification.
Propositional calculus
LDK R Logics for Data and Knowledge Representation Propositional Logic: Reasoning First version by Alessandro Agostini and Fausto Giunchiglia Second version.
A Logic of Partially Satisfied Constraints Nic Wilson Cork Constraint Computation Centre Computer Science, UCC.
Logical Agents Chapter 7. Outline Knowledge-based agents Logic in general Propositional (Boolean) logic Equivalence, validity, satisfiability.
CSE 311 Foundations of Computing I Lecture 9 Proofs and Set Theory Autumn 2012 CSE
LDK R Logics for Data and Knowledge Representation ClassL (Propositional Description Logic with Individuals) 1.
© Copyright 2008 STI INNSBRUCK Intelligent Systems Propositional Logic.
1 Propositional Logic Limits The expressive power of propositional logic is limited. The assumption is that everything can be expressed by simple facts.
Web Science & Technologies University of Koblenz ▪ Landau, Germany Models of Definite Programs.
CSE 311: Foundations of Computing Fall 2013 Lecture 8: Proofs and Set theory.
Set Theory Concepts Set – A collection of “elements” (objects, members) denoted by upper case letters A, B, etc. elements are lower case brackets are used.
Logical Agents Chapter 7. Outline Knowledge-based agents Propositional (Boolean) logic Equivalence, validity, satisfiability Inference rules and theorem.
Logic Program Semantics Background Luís Moniz Pereira U.I. at Jakarta, Jan/Feb 2006 AI Centre, Universidade Nova de Lisboa.
Logics for Data and Knowledge Representation ClassL (part 1): syntax and semantics.
Artificial Intelligence Logical Agents Chapter 7.
Logical Agents. Outline Knowledge-based agents Logic in general - models and entailment Propositional (Boolean) logic Equivalence, validity, satisfiability.
Chapter 2 Sets and Functions.
Chapter 3 The Real Numbers.
Fixpoints and Reachability
Models of Definite Programs
Resolution in the Propositional Calculus
Models of Definite Programs
Back to “Serious” Topics…
Bottom Up: Soundness and Completeness
Bottom Up: Soundness and Completeness
Logic Logic is a discipline that studies the principles and methods used to construct valid arguments. An argument is a related sequence of statements.
Models of Definite Programs
Presentation transcript:

Auto-Epistemic Logic Proposed by Moore (1985) Contemplates reflection on self knowledge (auto-epistemic) Allows for representing knowledge not just about the external world, but also about the knowledge I have of it

Syntax of AEL 1 st Order Logic, plus the operator L (applied to formulas) L  means “I know  ” Examples: MScOnSW → L MScOnSW (or  L MScOnSW →  MScOnSW) young (X)   L  studies (X) → studies (X)

Meaning of AEL What do I know? –What I can derive (in all models) And what do I not know? –What I cannot derive But what can be derived depends on what I know –Add knowledge, then test

Semantics of AEL T* is an expansion of theory T iff T* = Th(T  { L  : T* |=  }  {  L  : T* |≠  }) Assuming the inference rule  / L  : T* = Cn AEL (T  {  L  : T* |≠  }) An AEL theory is always two-valued in L, that is, for every expansion:   | L   T*   L   T*

Knowledge vs. Belief Belief is a weaker concept –For every formula, I know it or know it not –There may be formulas I do not believe in, neither their contrary The Auto-Epistemic Logic of knowledge and Belief (AELB), introduces also operator B  – I believe in 

AELB Example I rent a film if I believe I’m neither going to baseball nor football games B  baseball  B  football → rent_filme I don’t buy tickets if I don’t know I’m going to baseball nor know I’m going to football  L baseball   L football →  buy_tickets I’m going to football or baseball baseball  football I should not conclude that I rent a film, but do conclude I should not buy tickets

Axioms about beliefs Consistency Axiom  B  Normality Axiom B (F → G) → ( B F → B G) Necessitation rule F B F

Some consequences of the Axioms B (F /\ G) ≡ B F /\ B G B F →  B  F B (F \/ G) →  B  F \/  B  G

Minimal models In what do I believe? –In that which belongs to all preferred models Which are the preferred models? –Those that, for one same set of beliefs, have a minimal number of true things A model M is minimal iff there does not exist a smaller model N, coincident with M on B  e L  atoms When  is true in all minimal models of T, we write T |= min 

AELB expansions T* is a static (autoepistemic) expansion of T iff T* = Cn AELB (T  {  L  : T* |≠  }  { B  : T* |= min  }) where Cn AELB denotes closure using the axioms of AELB plus necessitation for L

Some properties of static autoepistemic expansions T* |= L  iff T* |=  T* |= B  if T* |= min  The other direction of the last implication only holds for particular cases (e.g. rational theories – those without positive occurrences of belief atoms).

The special case of AEB Because of its properties, the case of theories without the knowledge operator is especially interesting The definition of expansion becomes: T* =   (T*) where   (T*) = Cn AEB (T  { B  : T* |= min  }) and Cn AEB denotes closure using the axioms of AEB

Least expansion Theorem: Operator  is monotonic, i.e. T  T 1  T 2 →   (T 1 )    (T 2 ) Hence, there always exists a minimal expansion of T, obtainable by transfinite induction: –T 0 = Cn  (T) –T i+1 =   (T i ) –T  = U  T  (for limit ordinals  )

Consequences Every AEB theory has at least one expansion If a theory is affirmative (i.e. all clauses have at least a positive literal) then it has at least a consistent expansion There is a procedure to compute the semantics

Example B  Earthquake /\ B  Fires  Calm B  (Earthquake \/ Fires)  Worried B  Earthquake /\ B  Fires  Panicked B  Calm  CallHome Earthquake \/ Fires

Computation of Static Completion T 0 = Cn AEB (T) –T 0 |= Earthquake \/ Fires –T 0 |= min  Earthquake \/  Fires T 1 =   (T 0 )= Cn AEB (T 0  { B  : T 0 |= min  }) –T 1 = Cn AEB (T 0  { B( Eq \/ Fi), B(  Eq \/  Fi),…}) –T 1 |= Worried –T 1 |=  B Earthquake \/  B Fires –T 1 |=  B  Earthquake \/  B  Fires –T 1 |= min  Calm and T 1 |= min  Panicked

Static Completion (cont.) T 2 =   (T 1 )= Cn AEB (T 1  { B  : T 1 |= min  }) –T 2 = Cn AEB (T 1  { B( Eq \/ Fi), B(  Eq \/  Fi), B  Calm, B  Panicked, B Worried,… }) –T 2 |= CallHome T 3 =   (T 2 )= Cn AEB (T 2  { B  : T 2 |= min  }) –T 2 = Cn AEB (T 1  { B( Eq \/ Fi), B(  Eq \/  Fi), B  Calm, B  Panicked, B Worried, B CallHome, … })

LP for Knowledge Representation Due to its declarative nature, LP has become a prime candidate for Knowledge Representation and Reasoning This has been more noticeable since its relations to other NMR formalisms were established For this usage of LP, a precise declarative semantics was in order

Language A Normal Logic Programs P is a set of rules: H   A 1, …, A n, not B 1, … not B m (n,m  0) where H, A i and B j are atoms Literal not B j are called default literals When no rule in P has default literal, P is called definite The Herbrand base H P is the set of all instantiated atoms from program P. We will consider programs as possibly infinite sets of instantiated rules.

Declarative Programming A logic program can be an executable specification of a problem member(X,[X|Y]). member(X,[Y|L])  member(X,L). Easier to program, compact code Adequate for building prototypes Given efficient implementations, why not use it to “program” directly?

LP and Deductive Databases In a database, tables are viewed as sets of facts: Other relations are represented with rules:   ),( ).,( londonlisbonflight adamlisbonflight LondonLisbon AdamLisbon tofromflight  ).,(),(,(),,(),( ).,(),( BAconnectionnotBAherchooseAnot BCconnectionCAflightBAconnection BAflightBAconnection   

LP and Deductive DBs (cont) LP allows to store, besides relations, rules for deducing other relations Note that default negation cannot be classical negation in: A form of Closed World Assumption (CWA) is needed for inferring non-availability of connections ).,(),(,(),,(),( ).,(),( BAconnectionnotBAherchooseAnot BCconnectionCAflightBAconnection BAflightBAconnection   

Default Rules The representation of default rules, such as “All birds fly” can be done via the non-monotonic operator not ).( ( ()( ()(.)(),()( ppenguin abird PpenguinPabnormal PpenguinPbird AabnormalnotAbirdAflies   

The need for a semantics In all the previous examples, classical logic is not an appropriate semantics –In the 1st, it does not derive not member(3,[1,2]) –In the 2nd, it never concludes choosing another company –In the 3rd, all abnormalities must be expressed The precise definition of a declarative semantics for LPs is recognized as an important issue for its use in KRR.

2-valued Interpretations A 2-valued interpretation I of P is a subset of H P –A is true in I (ie. I(A) = 1) iff A  I –Otherwise, A is false in I (ie. I(A) = 0) Interpretations can be viewed as representing possible states of knowledge. If knowledge is incomplete, there might be in some states atoms that are neither true nor false

3-valued Interpretations A 3-valued interpretation I of P is a set I = T U not F where T and F are disjoint subsets of H P –A is true in I iff A  T –A is false in I iff A  F –Otherwise, A is undefined (I(A) = 1/2) 2-valued interpretations are a special case, where: H P = T U F

Lattice-valued interpretations We can generalize the previous definition to an arbitrary lattice of truth-values Let L be a complete lattice then an interpretation of a program P is a mapping I:H P → L Notice that any complete lattice has a least element (  ) and a top element ( T ), so a “true” proposition is mapped into T while a “false” proposition is mapped into . Some interesting useful complete lattices: –{0,1} with 0 < 1. –{0,1/2,1} with 0 < 1/2 < 1 –[0,1] –Belnap’s four valued logic with with 0 <unknown | contradictory < 1

Intermezzo: lattices A partially ordered set (poset) is a set equipped with a reflexive, antisymmetric and transitive binary relation ≤: –Reflexivity: a ≤ a –Antisymmetry: if a ≤ b and b ≤ a then a=b –Transitivity: if a ≤ b and b ≤ c then a ≤ c A lattice is a poset such that for any two elements x and y the set {x,y} has both a least upper bound (join or supremum - \/) and a greatest lower bound (meet or infimum - /\). The join and meet obey to the following properties: –Commutative laws: a \/ b = b \/ a, and a /\ b = b /\ a –Associative laws: a \/ (b \/ c)= (a \/ b) \/ c, and a /\ (b /\ c)= (a /\ b) /\ c –Absorption laws: a \/ (a /\ b)= a, and a /\ (a \/ b)= a Notice that x ≤ y iff x = x /\ y, or equivalently y = x \/ y. A complete lattice is a lattice where all subsets have a join and a meet.

Models Models can be defined via an evaluation function Î: –For an atom A, Î(A) = I(A) –For a formula F, Î(not F) = T - Î(F) (for lattices with complement) –For formulas F and G: Î((F,G)) = glb(Î(F), Î(G)) Î((F;G)) = lub(Î(F), Î(G)) Î(F  G)= T iff Î(F) ≥ Î(G). I is a model of P iff, for all rule H  B of P: Î(H  B) = T

Minimal Models Semantics The idea of this semantics is to minimize positive information. What is implied as true by the program is true; everything else is false. {pr(c),pr(e),ph(s),ph(e),aM(c),aM(e)} is a model Lack of information that cavaco is a physicist, should indicate that he isn’t The minimal model is: {pr(c),ph(e),aM(e)} )( )( )()( cavacopresident einsteinphysicist X XaticianableMathem 

Minimal Models Semantics D [Truth ordering] For interpretations I and J, I  J iff for all atom A, I(A)  I(J), i.e. for the case of 2-valued interpretations T I  T J and F I  F J T Every definite logic program has a least (truth ordering) model. D [minimal models semantics] An atom A is true in (definite) P iff A belongs to its least model. Otherwise, A is false in P.

T P operator (2-valued case) The minimal models of a definite P can be computed (bottom-up) via operator T P D [T P ] Let I be an interpretation of definite P. T P (I) = {H: (H  Body)  P and Body  I} T If P is definite, T P is monotone and continuous. Its minimal fixpoint can be built by:  I 0 = {} and I n = T P (I n-1 ) with n > 0 T The least model of definite P is T P  ({})

T P operator (L-valued case) D [T P ] Let I be an interpretation of definite P. T P (I)(H) = lub { Î( Body ) : (H  Body)  P } T If P is definite, T P is monotone. Its minimal fixpoint can be built by iterating the T P operator:  I 0 = T P  ={}  I α = T P  α = T P (I α -1 ) = T P ( T P  α-1 ), where α is a successor ordinal  I β = T P  = |_| α < β T P  α = |_| α < β I α where β is a limit ordinal

T P operator (L-valued case) T There is a successor ordinal  such that T P  = T P  -1, i.e. there is a least fixpoint of T P. Furthermore, the least model of definite program P coincides with the least fixpoint of T P. In general, more than  iterations might be needed to reach the least fixpoint. However, if lattice L is finite then at most  iterations are enough.

Computation of minimal models For the 2-valued case there is a complete method: SLD resolution (Linear resolution with a selection function for definite sentences). A SLD-goal of the form ← A 1, …, A m, L, C 1, …, C n has a successor ← (A 1, …, A m, B 1, …, B k, C 1, …, C n ) θ for each rule H :- B 1, …, B k, belonging to the program such that L and H unify with mgu θ. A SLD-derivation is a sequence of applications of SLD-resolution, and a SLD- refutation is a SLD-derivation which ends in the empty clause, i.e. no goals after ←. For the lattice-valued case, there are proof procedures based on tabulation methods, which we will not present.

On Minimal Models SLD can be used as a proof procedure for the minimal models semantics: –If the is a SLD-derivation for A, then A is true –Otherwise, A is false The semantics does not apply to normal programs: –p  not q has two minimal models: {p} and {q} There is no least model !