1 / 56

Inconsistency Tolerance in SNePS

Inconsistency Tolerance in SNePS. Stuart C. Shapiro Department of Computer Science and Engineering, and Center for Cognitive Science University at Buffalo, The State University of New York 201 Bell Hall, Buffalo, NY 14260-2000 shapiro@cse.buffalo.edu http://www.cse.buffalo.edu/~shapiro/.

karlyn
Download Presentation

Inconsistency Tolerance in SNePS

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Inconsistency Tolerance in SNePS Stuart C. Shapiro Department of Computer Science and Engineering, and Center for Cognitive Science University at Buffalo, The State University of New York 201 Bell Hall, Buffalo, NY 14260-2000 shapiro@cse.buffalo.edu http://www.cse.buffalo.edu/~shapiro/

  2. Acknowledgements • João Martins • Frances L. Johnson • Bharat Bhushan • The SNePS Research Group • NSF, Instituto Nacional de Investigação Cientifica, Rome Air Development Center, AFOSR, U.S. Army CECOM S. C. Shapiro

  3. Outline • Introduction • Some Rules of Inference • ~I and Belief Revision • Credibility Ordering and Automatic BR • Reasoning in Different Contexts • Default Reasoning by Preferential Ordering • Summary S. C. Shapiro

  4. SNePS • A logic- and network-based • Knowledge representation • Reasoning • And acting • System [Shapiro & Group ’02] This talk will ignore network and acting aspects. S. C. Shapiro

  5. Logic • Based on R, the logic of relevant implication [Anderson & Belnap ’75; Martins & Shapiro ’88, Shapiro ’92] S. C. Shapiro

  6. Supported wffs P{… <origin tag, origin set> …} Set of hypotheses From which P has been derived. hyphypothesis derderived Origin set tracks relevance and ATMS assumptions. S. C. Shapiro

  7. Outline • Introduction • Some Rules of Inference • ~I and Belief Revision • Credibility Ordering and Automatic BR • Reasoning in Different Contexts • Default Reasoning by Preferential Ordering • Summary S. C. Shapiro

  8. Rules of Inference:Hypothesis Hyp: P {<hyp,{P}>} : whale(Willy) and free(Willy). wff3: free(Willy) and whale(Willy) {<hyp,{wff3}>} S. C. Shapiro

  9. Rules of Inference:&E &E: From A and B {<t,s>} infer A {<der,s>} or B {<der,s>} wff3: free(Willy) and whale(Willy) {<hyp,{wff3}>} : free(Willy)? wff2: free(Willy) {<der,{wff3}>} S. C. Shapiro

  10. Rules of Inference:andorE The os is the union of os's of parents wff3: free(Willy) and whale(Willy) {<hyp,{wff3}>} wff6:all(x)(andor(0,1){manatee(x), dolphin(x), whale(x)}) {<hyp,{wff6}>}: dolphin(Willy)? wff9: ~dolphin(Willy) {<der,{wff3,wff6}>} At most 1 S. C. Shapiro

  11. Rules of Inference:=>E The origin set is the union of os's of parents. Since wff10: all(x)(whale(x) => mammal(x)) {<hyp,{wff10}>} and wff1: whale(Willy){<der,{wff3}>} I infer wff11: mammal(Willy) {<der,{wff3,wff10}>} S. C. Shapiro

  12. Rules of Inference:=>I origin set is diff of os's of parents. wff12: all(x)(orca(x) => whale(x)) {<hyp,{wff12}>} : orca(Keiko) => mammal(Keiko)? Let me assume that wff13: orca(Keiko) {<hyp,{wff13}>} Since wff12: all(x)(orca(x) => whale(x)) {<hyp,{wff12}>}and wff13: orca(Keiko){<hyp,{wff13}>} I infer whale(Keiko) {<der,{wff12,wff13}>} S. C. Shapiro

  13. Rules of Inference:=>I (cont’d) origin set is diff of os's of parents. Since wff10: all(x)(whale(x) => mammal(x)) {<hyp,{wff10}>} and wff16: whale(Keiko) {<der,{wff12,wff13}>}I infer mammal(Keiko) {<der,{wff10,wff12,wff13}>} Since wff14: mammal(Keiko) {<der,{wff10,wff12,wff13}>}was derived assuming wff13: orca(Keiko) {<hyp,{wff13}>}I infer wff15: orca(Keiko) => mammal(Keiko) {<der,{wff10,wff12}>} S. C. Shapiro

  14. Outline • Introduction • Some Rules of Inference • ~I and Belief Revision • Credibility Ordering and Automatic BR • Reasoning in Different Contexts • Default Reasoning by Preferential Ordering • Summary S. C. Shapiro

  15. ~I and Belief Revision • ~I triggered when a contradiction is derived. • Proposition to be negated must be one of the hypotheses underlying the contradiction. • Origin set is the rest of the hypotheses. • SNeBR [Martins & Shapiro ’88] involved in choosing the culprit. S. C. Shapiro

  16. Adding Inconsistent Hypotheses wff19: all(x)(whale(x) => fish(x)){<hyp,{wff19}>} wff20: all(x)(andor(0,1){mammal(x), fish(x)}) {<hyp,{wff20}>} wff21: all(x)(fish(x) <=> has(x,scales)) {<hyp,{wff21}>} S. C. Shapiro

  17. Finding the Contradiction : has(Willy, scales)? Since wff19: all(x)(whale(x) => fish(x)) {<hyp,{wff19}>} and wff1: whale(Willy) {<der,{wff3}>}I infer fish(Willy) {<der,{wff3,wff19}>} Since wff21: all(x)(fish(x) <=> has(x,scales)) {<hyp,{wff21}>} and wff23: fish(Willy) {<der,{wff3,wff19}>}I infer has(Willy,scales) {<der,{wff3,wff19,wff21}>} Since wff20: all(x)(andor(0,1){mammal(x), fish(x)}) {<hyp,{wff20}>} and wff11: mammal(Willy) {<der,{wff3,wff10}>}I infer it is not the case that wff23: fish(Willy) S. C. Shapiro

  18. Manual Belief Revision A contradiction was detected within context default-defaultct. The contradiction involves the newly derived proposition: wff24: ~fish(Willy) {<der,{wff3,wff10,wff20}>} and the previously existing proposition: wff23: fish(Willy) {<der,{wff3,wff19}>} You have the following options: 1. [c]ontinue anyway, knowing that a contradiction is derivable; 2. [r]e-start the exact same run in a different context which is not inconsistent; 3. [d]rop the run altogether. (please type c, r or d)=><= r S. C. Shapiro

  19. BR Advice In order to make the context consistent you must delete at least one hypothesis from the set listed below. This set of hypotheses is known to be inconsistent: 1 : wff20: all(x)(andor(0,1){mammal(x),fish(x)}) {<hyp,{wff20}>} (1 dependent proposition: (wff24)) 2 : wff19: all(x)(whale(x) => fish(x)) {<hyp,{wff19}>} (2 dependent propositions: (wff23 wff22)) 3 : wff10: all(x)(whale(x) => mammal(x)){<hyp,{wff10}>} (3 dependent propositions: (wff24 wff15 wff11)) 4 : wff3: free(Willy) and whale(Willy) {<hyp,{wff3}>} (8 dependent propositions: (wff24 wff23 wff22 wff11 wff9 wff5 wff2 wff1)) User deletes #2: wff19. S. C. Shapiro

  20. Willy has no Scales Since wff21: all(x)(fish(x) <=> has(x,scales)) {<hyp,{wff21}>} and it is not the case that wff23: fish(Willy) {<der,{wff3,wff19}>} I infer it is not the case that wff22: has(Willy,scales) {<der,{wff3,wff19,wff21}>} wff26: ~has(Willy,scales){<der,{wff3,wff10,wff20,wff21}>} S. C. Shapiro

  21. Final KB: hyps & positive ders : list-asserted-wffs wff3: free(Willy) and whale(Willy) {<hyp,{wff3}>} wff6: all(x)(andor(0,1){manatee(x),dolphin(x),whale(x)}) {<hyp,{wff6}>} wff10: all(x)(whale(x) => mammal(x)) {<hyp,{wff10}>} wff12: all(x)(orca(x) => whale(x)) {<hyp,{wff12}>} wff20: all(x)(andor(0,1){mammal(x),fish(x)}) {<hyp,{wff20}>} wff21: all(x)(fish(x) <=> has(x,scales)) {<hyp,{wff21}>} wff1: whale(Willy) {<der,{wff3}>} wff2: free(Willy) {<der,{wff3}>} wff11: mammal(Willy) {<der,{wff3,wff10}>} wff15: orca(Keiko) => mammal(Keiko) {<der,{wff10,wff12}>} S. C. Shapiro

  22. Final KB: hyps & negative ders : list-asserted-wffs wff3: free(Willy) and whale(Willy) {<hyp,{wff3}>} wff6: all(x)(andor(0,1){manatee(x),dolphin(x),whale(x)}) {<hyp,{wff6}>} wff10: all(x)(whale(x) => mammal(x)) {<hyp,{wff10}>} wff12: all(x)(orca(x) => whale(x)) {<hyp,{wff12}>} wff20: all(x)(andor(0,1){mammal(x),fish(x)}) {<hyp,{wff20}>} wff21: all(x)(fish(x) <=> has(x,scales)) {<hyp,{wff21}>} wff9: ~dolphin(Willy) {<der,{wff3,wff10}>} wff24: ~fish(Willy) {<der,{wff3,wff10,wff20}>} wff25: ~(all(x)(whale(x) => fish(x))) {<ext,{wff3,wff10,wff20}>} wff26: ~has(Willy,scales) {<der,{wff3,wff10,wff20,wff21}>} S. C. Shapiro

  23. Summary • Logic is paraconsistent: P{<t1, {h1 … hi}>}, ~P{<t2, {h(i+1) … hn}>} ~hj • When a contradiction is explicitly found, the user is engaged in its resolution. S. C. Shapiro

  24. Outline • Introduction • Some Rules of Inference • ~I and Belief Revision • Credibility Ordering and Automatic BR • Reasoning in Different Contexts • Default Reasoning by Preferential Ordering • Summary S. C. Shapiro

  25. Credibility Ordering and Automatic Belief Revision* • Hypotheses may be given sources. • Sources may be given relative credibility. • Hypotheses inherit relative credibility from sources. • Hypotheses may be given relative credibility directly. (Not shown.) • SNeBR may use relative credibility to choose a culprit by itself. [Shapiro & Johnson ’00] *Not yet in released version. S. C. Shapiro

  26. Contradictory Sources wff1: all(x)(andor(0,1){mammal(x),fish(x)}) {<hyp,{wff1}>} wff2: all(x)(fish(x) <=> has(x,scales)) {<hyp,{wff2}>} wff3: all(x)(orca(x) => whale(x)) {<hyp,{wff3}>} : Source(Melville, all(x)(whale(x) => fish(x)).). wff5: Source(Melville,all(x)(whale(x) => fish(x))) {<hyp,{wff5}>} : Source(Darwin, all(x)(whale(x) => mammal(x)).). wff7: Source(Darwin,all(x)(whale(x) => mammal(x))) {<hyp,{wff7}>}: Sgreater(Darwin, Melville). wff8: Sgreater(Darwin,Melville) {<hyp,{wff8}>} wff11: free(Willy) and whale(Willy) {<hyp,{wff11}>} Note: Source & Sgreater props are regular object-language props. S. C. Shapiro

  27. Finding the Contradiction : has(Willy, scales)?Since wff4: all(x)(whale(x) => fish(x)) {<hyp,{wff4}>}and wff9: whale(Willy) {<der,{wff11}>}I infer fish(Willy) {<der,{wff4,wff11}>} Since wff2: all(x)(fish(x) <=> has(x,scales)) {<hyp,{wff2}>}and wff14: fish(Willy) {<der,{wff4,wff11}>}I infer has(Willy,scales)Since wff6: all(x)(whale(x) => mammal(x)) {<hyp,{wff6}>}and wff9: whale(Willy) {<der,{wff11}>}I infer mammal(Willy)Since wff1: all(x)(andor(0,1){mammal(x),fish(x)}) {<hyp,{wff1}>}and wff15: mammal(Willy) {<der,{wff6,wff11}>}I infer it is not the case that wff14: fish(Willy) {<der,{wff4,wff11}>} S. C. Shapiro

  28. Automatic BR A contradiction was detected within context default-defaultct. The contradiction involves the newly derived proposition: wff17: ~fish(Willy) {<der,{wff1,wff6,wff11}>} and the previously existing proposition: wff14: fish(Willy) {<der,{wff4,wff11}>} The least believed hypothesis: (wff4) The most common hypothesis: (nil) The hypothesis supporting the fewest wffs: (wff1) I removed the following belief: wff4: all(x)(whale(x) => fish(x)) {<hyp,{wff4}>} I no longer believe the following 2 propositions: wff14: fish(Willy) {<der,{wff4,wff11}>} wff13: has(Willy,scales) {<der,{wff2,wff4,wff11}>} S. C. Shapiro

  29. Summary • User may select automatic BR. • Relative credibility is used. • User is informed of lost beliefs. S. C. Shapiro

  30. Outline • Introduction • Some Rules of Inference • ~I and Belief Revision • Credibility Ordering and Automatic BR • Reasoning in Different Contexts • Default Reasoning by Preferential Ordering • Summary S. C. Shapiro

  31. Reasoning in Different Contexts • A context is a set of hypotheses and all propositions derived from them. • Reasoning is performed within a context. • A conclusion is available in every context that is a superset of its origin set. [Martins & Shapiro ’83] • Contradictions across contexts are not noticed. S. C. Shapiro

  32. Darwin Context : set-context Darwin () : set-default-context Darwin wff1: all(x)(andor(0,1){mammal(x),fish(x)}) {<hyp,{wff1}>} wff2: all(x)(fish(x) <=> has(x,scales)) {<hyp,{wff2}>} wff3: all(x)(orca(x) => whale(x)) {<hyp,{wff3}>} wff4: all(x)(whale(x) => mammal(x)) {<hyp,{wff4}>} wff7: free(Willy) and whale(Willy) {<hyp,{wff7}>} S. C. Shapiro

  33. Melville Context : describe-context((assertions (wff8 wff7 wff4 wff3 wff2 wff1)) (restriction nil) (named (science))): set-context Melville (wff8 wff7 wff3 wff2 wff1)((assertions (wff8 wff7 wff3 wff2 wff1)) (restriction nil) (named (melville))): set-default-context Melville((assertions (wff8 wff7 wff3 wff2 wff1)) (restriction nil) (named (melville))): all(x)(whale(x) => fish(x)). wff9: all(x)(whale(x) => fish(x)) {<hyp,{wff9}>} S. C. Shapiro

  34. Melville: Willy has scales : has(Willy, scales)?Since wff9: all(x)(whale(x) => fish(x)){<hyp,{wff9}>}and wff5: whale(Willy) {<der,{wff7}>}I infer fish(Willy) {<der,{wff7,wff9}>} Since wff2: all(x)(fish(x) <=> has(x,scales)) {<hyp,{wff2}>}and wff11: fish(Willy) {<der,{wff7,wff9}>}I infer has(Willy,scales) {<der,{wff2,wff7,wff9}>} wff10: has(Willy,scales) {<der,{wff2,wff7,wff9}>} S. C. Shapiro

  35. Darwin: No scales : set-default-context Darwin : has(Willy, scales)?Since wff4: all(x)(whale(x) => mammal(x)) {<hyp,{wff4}>}and wff5: whale(Willy) {<der,{wff7}>}I infer mammal(Willy)Since wff1: all(x)(andor(0,1){mammal(x),fish(x)}) {<hyp,{wff1}>}and wff12: mammal(Willy) {<der,{wff4,wff7}>}I infer it is not the case that wff11: fish(Willy) Since wff2: all(x)(fish(x) <=> has(x,scales)) {<hyp,{wff2}>}and it is not the case that wff11: fish(Willy) {<der,{wff7,wff9}>}I infer it is not the case that wff10: has(Willy,scales) wff15: ~has(Willy,scales) {<der,{wff1,wff2,wff4,wff7}>} S. C. Shapiro

  36. Summary • Contradictory information may be isolated in different contexts. • Reasoning is performed in a single context. • Results are available in other contexts. S. C. Shapiro

  37. Outline • Introduction • Some Rules of Inference • ~I and Belief Revision • Credibility Ordering and Automatic BR • Reasoning in Different Contexts • Default Reasoning by Preferential Ordering • Summary S. C. Shapiro

  38. Default Reasoning by Preferential Ordering • No special syntax for default rules. • If P and ~P are derived • but argument for one is undercut by an argument for the other • don’t believe the undercut conclusion. • Unlike BR, believe the hypotheses, but not a conclusion. [Grosof ’97, Bhushan ’03] S. C. Shapiro

  39. Preclusion Rules in SNePS* • P undercuts ~P if • Precludes(P, ~P) or • Every origin set of ~P has some hyp h such that there is some hyp q in an origin set of P such that Precludes(q, h). • Precludes(P, Q) is a proposition like any other. *Not yet in released version. S. C. Shapiro

  40. Animal Modes of Mobility wff1: all(x)(orca(x) => whale(x)) wff2: all(x)(whale(x) => mammal(x)) wff3: all(x)(deer(x) => mammal(x)) wff4: all(x)(tuna(x) => fish(x)) wff5: all(x)(canary(x) => bird(x)) wff6: all(x)(penguin(x) => bird(x)) wff7: all(x)(andor(0,1){swims(x),flies(x),runs(x)}) wff8: all(x)(mammal(x) => runs(x)) wff9: all(x)(fish(x) => swims(x)) wff10: all(x)(bird(x) => flies(x)) wff11: all(x)(whale(x) => swims(x)) wff12: all(x)(penguin(x) => swims(x)) S. C. Shapiro

  41. Using Preclusion for Exceptions wff13: Precludes(all(x)(whale(x) => swims(x)), all(x)(mammal(x) => runs(x))) wff14: Precludes(all(x)(penguin(x) => swims(x)), all(x)(bird(x) => flies(x))) wff15: orca(Willy) wff16: tuna(Charlie) wff17: deer(Bambi) wff18: canary(Tweety) wff19: penguin(Opus) S. C. Shapiro

  42. Who Swims?(Contradictory Conclusions) : swims(?x)? I infer swims(Opus) I infer swims(Charlie) I infer swims(Willy) I infer flies(Tweety) I infer it is not the case that swims(Tweety) I infer flies(Opus) I infer it is not the case that wff20: swims(Opus) I infer runs(Willy) I infer it is not the case that wff24: swims(Willy) I infer runs(Bambi) I infer it is not the case that swims(Bambi) S. C. Shapiro

  43. Using Preclusionto Arbitrate Contradictions (1) Since wff13: Precludes(all(x)(whale(x) => swims(x)), all(x)(mammal(x) => runs(x))) and wff11: all(x)(whale(x) => swims(x)) {<hyp,{wff11}>} holds within the BS defined by context default-defaultct Therefore wff34: ~swims(Willy) containing in its support wff8: all(x)(mammal(x) => runs(x)) is precluded by wff24: swims(Willy) that contains in its support wff11:all(x)(whale(x) => swims(x)) S. C. Shapiro

  44. Using Preclusionto Arbitrate Contradictions (2) Since wff14: Precludes(all(x)(penguin(x) => swims(x)), all(x)(bird(x) => flies(x))) and wff12: all(x)(penguin(x) => swims(x)) holds within the BS defined by context default-defaultct Therefore wff31: ~swims(Opus) containing in its support wff10:all(x)(bird(x) => flies(x)) is precluded by wff20: swims(Opus) that contains in its support wff12: all(x)(penguin(x) => swims(x)) S. C. Shapiro

  45. The Swimmersand Non-Swimmers wff38: ~swims(Bambi) {<der,{wff3,wff7,wff8,wff17}>} wff28: ~swims(Tweety) {<der,{wff5,wff7,wff10,wff18}>} wff24: swims(Willy) {<der,{wff1,wff11,wff15}>} wff22: swims(Charlie) {<der,{wff4,wff9,wff16}>} wff20: swims(Opus) {<der,{wff12,wff19}>} S. C. Shapiro

  46. Two-Level Preclusion wff1: all(x)(robin(x) => bird(x)) wff2: all(x)(kiwi(x) => bird(x)) wff3: all(x)(bird(x) => flies(x)) wff4: all(x)(bird(x) => (~flies(x))) wff5: all(x)(robin(x) => flies(x)) wff6: all(x)(kiwi(x) => (~flies(x))) Example from Delgrande & Schaub ‘00 S. C. Shapiro

  47. Preferences wff7: Precludes(all(x)(robin(x) => flies(x)), all(x)(bird(x) => (~flies(x)))) wff8: Precludes(all(x)(kiwi(x) => (~flies(x))), all(x)(bird(x) => flies(x))) wff12: (~location(New Zealand)) => Precludes(all(x)(bird(x) => flies(x)), all(x)(bird(x) => (~flies(x)))) wff14: location(New Zealand) => Precludes(all(x)(bird(x) => (~flies(x))), all(x)(bird(x) => flies(x))) wff10: ~location(New Zealand) wff15: Precludes(location(New Zealand), ~location(New Zealand)) S. C. Shapiro

  48. Who flies? wff16: robin(Robin) wff17: kiwi(Kenneth) wff18: bird(Betty) : flies(?x)? S. C. Shapiro

  49. Outside New Zealand wff24: ~flies(Kenneth){<der,{wff6,wff17}>, <der,{wff2,wff4,wff17}>, <der,{wff2,wff4,wff6,wff17}>} wff21: flies(Robin) {<der,{wff5,wff16}>, <der,{wff1,wff3,wff16}>} wff19: flies(Betty) {<der,{wff3,wff18}>} S. C. Shapiro

  50. Inside New Zealand : location("New Zealand"). wff9: location(New Zealand) : flies(?x)? wff24: ~flies(Kenneth) {<der,{wff6,wff17}>, <der,{wff2,wff4,wff17}>, <der,{wff2,wff4,wff6,wff17}>} wff21: flies(Robin) {<der,{wff5,wff16}>, <der,{wff1,wff3,wff16}>} wff20: ~flies(Betty) {<der,{wff4,wff18}>} S. C. Shapiro

More Related