Download presentation
Presentation is loading. Please wait.
1
Knowledge Representation and Reasoning José Júlio Alferes Luís Moniz Pereira
2
What is it ? What data does an intelligent “agent” deal with? - Not just facts or tuples. How does an “agent” know what surrounds it? The rules of the game? –One must represent that “knowledge”. And what to do afterwards with that knowledge? How to draw conclusions from it? How to reason? Knowledge Representation and Reasoning AI Algorithms and Data Structures Computation
3
What is it good for ? Basic subject matter for Artificial Intelligence –Planning –Legal Knowledge –Model-Based Diagnosis Expert Systems Semantic Web (http://www.w3.org) –Web of Knowledge ( http:// www.rewerse.com)
4
What is this course about ? Logic approaches to knowledge representation Issues in knowledge representation –semantics, expressivity, structure, efficiency Representation formalisms Forms of reasoning Methodologies Applications
5
What prior knowledge ? Computational Logic Introduction to Artificial Intelligence Logic Programming
6
Bibliography Will be pointed out as we go along (articles, surveys) in the summaries at the web page For the first part of the syllabus: –Reasoning with Logic Programming J. J. Alferes and L. M. Pereira Springer LNAI, 1996 –Nonmonotonic Reasoning G. Antoniou MIT Press, 1996.
7
Logic for KRR Logic is a language conceived for representing knowledge It was developed for representing mathematical knowledge What is appropriate for mathematical knowledge might not be so for representing common sense
8
Mathematical knowledge vs common sense Complete vs incomplete knowledge – x : x N → x R – go_Work → use_car Solid inferences vs default ones –In the face incomplete knowledge –In emergency situations –In taxonomies –In legal reasoning –...
9
Monotonicity of Logic Classical Logic is monotonic T |= F → T U T’ |= F This is a basic property which makes sense for mathematical knowledge But is not desirable for knowledge representation in general !
10
Non-monotonic logics Do not obey that property Default Logic –Introduces default rules Autoepistemic Logic –Introduces (modal) operators which speak about knowledge and beliefs Logic Programming
11
Default Logic Proposed by Ray Reiter (1980) go_Work → use_car Does not admit exceptions ! Default rules go_Work : use_car use_car
12
More examples anniversary(X) friend(X) : give_gift(X) give_gift(X) friend(X,Y) friend(Y,Z) : friend (X,Z) friend(X,Z) accused(X) : innocent(X) innocent(X)
13
Default Logic Syntaxe A theory is a pair (W,D), where: –W is a set of 1st order formulas –D is a set of default rules of the form: : 1, …, n – (pre-requisites), i (justifications) and (conclusion) are 1st order formulas
14
The issue of semantics If is true (where?) and all i are consistent (with what?) then becomes true (becomes? Wasn’t it before?) Conclusions must: –be a closed set –contain W –apply the rules of D maximally, without becoming unsupported
15
Default extensions (S) is the smallest set such that: –W (S) –Th( (S)) = (S) –A:Bi/C D, A (S) and Bi S → C (S) E is an extension of (W,D) iff E = (E)
16
Quasi-inductive definition E is an extension iff E = U i E i for: –E0 = W –E i+1 = Th(E i ) U {C: A:B j /C D, A E i, B j E}
17
Some properties (W,D) has an inconsistent extension iff W is inconsistent –If an inconsistent extension exists, it is unique If W Just Conc is inconsistent, then there is only a single extension If E is an extension of (W,D), then it is also an extension of (W E’,D) for any E’ E
18
Operational semantics The computation of an extension can be reduced to finding a rule application order (without repetitions). = ( 1, 2,...) and [k] is the initial segment of with k elements In( ) = Th(W {conc( ) | }) –The conclusions after rules in are applied Out( ) = { | just( ) and } –The formulas which may not become true, after application of rules in
19
Operational semantics (cont’d) is applicable in iff pre( ) In( ) and In( ) is a process iff k , k is applicable in [k-1] A process is: –successful iff In( ) ∩ Out( ) = {}. Otherwise it is failed. –closed iff D applicable in → Theorem: E is an extension iff there exists , successful and closed, such that In( ) = E
20
Computing extensions (Antoniou page 39) extension(W,D,E) :- process(D,[],W,[],_,E,_). process(D,Pcur,InCur,OutCur,P,In,Out) :- getNewDefault(default(A,B,C),D,Pcur), prove(InCur,[A]), not prove(InCur,[~B]), process(D,[default(A,B,C)|Pcur],[C|InCur],[~B|OutCur],P,In,Out). process(D,P,In,Out,P,In,Out) :- closed(D,P,In), successful(In,Out). closed(D,P,In) :- not (getNewDefault(default(A,B,C),D,P), prove(In,[A]), not prove(In,[~B]) ). successful(In,Out) :- not ( member(B,Out), member(B,In) ). getNewDefault(Def,D,P) :- member(Def,D), not member(Def,P).
21
Normal theories Every rule has its justification identical to its conclusion Normal theories always have extensions If D grows, then the extensions grow (semi- monotonicity) They are not good for everything: –John is a recent graduate –Normally recent graduates are adult –Normally adults, not recently graduated, have a job (this cannot be coded with a normal rule!)
22
Problems No guarantee of extension existence Deficiencies in reasoning by cases –D = {italian:wine/wine french:wine/wine} –W ={italian v french} No guarantee of consistency among justifications. –D = {:usable(X), broken(X)/usable(X)} –W ={broken(right) v broken(left)} Non cummulativity –D = {:p/p, pvq: p/ p} –derives p v q, but after adding p v q no longer does so
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.