Download presentation
Presentation is loading. Please wait.
Published byHomer O’Neal’ Modified over 8 years ago
1
cse@buffalo S. C. Shapiro SNePS: A Logic for Natural Language Understanding and Commonsense Reasoning Stuart C. Shapiro Department of Computer Science and Engineering and Center for Cognitive Science State University of New York at Buffalo shapiro@cse.buffalo.edu
2
cse@buffalo S. C. Shapiro Based on Stuart C. Shapiro, “SNePS: A Logic for Natural Language Understanding and Commonsense Reasoning,” in Lucja Iwanska and Stuart C. Shapiro, Eds., Natural Language Processing and Knowledge Representation: Language for Knowledge and Knowledge for Language, AAAI Press/The MIT Press, 2000.
3
cse@buffalo S. C. Shapiro Abstract Design a better logic Than FOPL For NLU and CSR SNePS
4
cse@buffalo S. C. Shapiro Presentation Approach Problem Difficulties of FOPL Solution in SNePS Use SNePSLOG.
5
cse@buffalo S. C. Shapiro Outline Set-Oriented Logical Connectives The Unique Variable Binding Rule Set Arguments “Higher-Order” Logic Intensional Representation The Numerical Quantifiers Contexts Relevance Logic Circular and Recursive Rules Practical Donkey Sentences
6
cse@buffalo S. C. Shapiro Twenty Questions Everything is an animal, a vegetable, or a mineral. –Squash is a vegetable Is squash an animal? a mineral? –Marble is neither an animal nor a vegetable. Is marble a mineral?
7
cse@buffalo S. C. Shapiro Twenty Questions in FOPL? x[Animal(x) Vegetable(x) Mineral(x)] but don’t want inclusive or x[Animal(x) Vegetable(x) Mineral(x)] ++ T T T F T So don’t want exclusive or either
8
cse@buffalo S. C. Shapiro andor andor(i, j){P i,..., P n } True iff at least i, and at most j of the P i are True
9
cse@buffalo S. C. Shapiro Twenty Questions in SNePSLOG : all(x)(andor(1,1){animal(x), vegetable(x), mineral(x)}). : vegetable(squash)! VEGETABLE(SQUASH) ~ANIMAL(SQUASH) ~MINERAL(SQUASH)
10
cse@buffalo S. C. Shapiro Twenty Questions in SNePSLOG II : andor(0,0){animal(marble), vegetable(marble)}! ~ANIMAL(MARBLE) ~VEGETABLE(MARBLE) MINERAL(MARBLE)
11
cse@buffalo S. C. Shapiro Equivalent Statements For every object, the following statements are equivalent: –It is human. It is a featherless biped. It is a rational animal. Socrates is human. –Is Socrates a featherless biped? A rational animal? Snoopy is not a featherless biped. –Is Snoopy a rational animal? A human?
12
cse@buffalo S. C. Shapiro Equivalent Statements in FOPL? x[Human(x) Featherless-Biped(x) Rational-Animal(x)] wrong: F F T T T
13
cse@buffalo S. C. Shapiro thresh thresh(i, j){P i,..., P n } True iff either fewer than i, or more than j of the P i are True Note: thresh(i, j) ~andor(i, j)
14
cse@buffalo S. C. Shapiro thresh Abbreviation thresh(i){P i,..., P n } for thresh(i, n-1){P i,..., P n }
15
cse@buffalo S. C. Shapiro Equivalent Statements in SNePSLOG 1 : all(x)(thresh(1){human(x), featherless-biped(x), rational-animal(x)}). : human(Socrates)! HUMAN(SOCRATES) FEATHERLESS-BIPED(SOCRATES) RATIONAL-ANIMAL(SOCRATES)
16
cse@buffalo S. C. Shapiro Equivalent Statements in SNePSLOG 2 : ~featherless-biped(Snoopy)! ~RATIONAL-ANIMAL(SNOOPY) ~FEATHERLESS-BIPED(SNOOPY) ~HUMAN(SNOOPY)
17
cse@buffalo S. C. Shapiro Putative Inclusive or If Hilda is in Boston or Kathy is in Las Vegas, then Eve is in Providence. What if Hilda is in Boston and Kathy is in Las Vegas? Rips 1983: ___ ___ ___
18
cse@buffalo S. C. Shapiro or-entailment {P i,..., P n } v=> {Q i,..., Q n } True iff for all i, jP i Q j
19
cse@buffalo S. C. Shapiro Hilda and Kathy in SNePSLOG : {in(Hilda, Boston), in(Kathy, Las_Vegas)} v=> {in(Eve, Providence)}. : in(Hilda, Boston)! Since {IN(HILDA,BOSTON),IN(KATHY,LAS_VE GAS)} v=> {IN(EVE,PROVIDENCE)} and IN(HILDA,BOSTON) I infer IN(EVE,PROVIDENCE)
20
cse@buffalo S. C. Shapiro Outline Set-Oriented Logical Connectives The Unique Variable Binding Rule Set Arguments “Higher-Order” Logic Intensional Representation The Numerical Quantifiers Contexts Relevance Logic Circular and Recursive Rules Practical Donkey Sentences
21
cse@buffalo S. C. Shapiro Disappointed Voter Problem “If someone votes for X and someone votes for Y, one of them will be disappointed” : all(u,v,x,y)( {votesfor(u,x), votesfor(v,y)} &=> {andor(1,1){disappointed(u), disappointed(v)}}). : all(u,x)({votesfor(u,x),wins(x)} &=> {~disappointed{u}}).
22
cse@buffalo S. C. Shapiro Hillary and Elizabeth Vote : votesfor(Hillary, Bill). : votesfor(Elizabeth, Bob). : wins(Bill). : disappointed(?x)? DISAPPOINTED(ELIZABETH) ~DISAPPOINTED(HILLARY)
23
cse@buffalo S. C. Shapiro FOPL Disappointment {votesfor(Hillary, Bill), votesfor(Hillary, Bill)} &=> {andor(1,1) {disappointed(Hillary), disappointed(Hillary)}} disappointed(Hillary)
24
cse@buffalo S. C. Shapiro Unique Variable Binding Rule (UVBR) Two variables in one wff cannot be replaced by the same term. or Two terms in an mgu cannot be equal.
25
cse@buffalo S. C. Shapiro Outline Set-Oriented Logical Connectives The Unique Variable Binding Rule Set Arguments “Higher-Order” Logic Intensional Representation The Numerical Quantifiers Contexts Relevance Logic Circular and Recursive Rules Practical Donkey Sentences
26
cse@buffalo S. C. Shapiro Sisters “Mary, Sue, and Sally are sisters.”
27
cse@buffalo S. C. Shapiro Sisters in FOPL Sisters(Mary, Sue) Sisters(Sue, Sally) (x,y)[Sisters(x,y) Sisters(y,x)] (x,z)[x z ( (y)[sisters(x,y) sisters(y,z)] Sisters(x,z))]
28
cse@buffalo S. C. Shapiro Reduction Inference P(s 1,...,s i,{t 1,…,t n },s i+1,...,s m ) P(s 1,...,s i,t i,s i+1,...,s m ) P(s 1,...,s i, ,s i+1,...,s m ), ’ P(s 1,...,s i, ’,s i+1,...,s m )
29
cse@buffalo S. C. Shapiro Sisters in SNePSLOG : sisters({Mary, Sue, Sally}). : all(x,y)(sisters({x,y}) => {likes(x,y), likes(y,x)}). : likes(?x,?y)? LIKES(SUE,MARY) LIKES(MARY,SUE) LIKES(SALLY,SUE) LIKES(SUE,SALLY) LIKES(MARY,SALLY) LIKES(SALLY,MARY)
30
cse@buffalo S. C. Shapiro Outline Set-Oriented Logical Connectives The Unique Variable Binding Rule Set Arguments “Higher-Order” Logic Intensional Representation The Numerical Quantifiers Contexts Relevance Logic Circular and Recursive Rules Practical Donkey Sentences
31
cse@buffalo S. C. Shapiro Inadequacy of FOPL 1 If R is a transitive relation and R(x, y) and R(y, z) then R(x, z).
32
cse@buffalo S. C. Shapiro Term Logic Every expression in SNePS is a term.
33
cse@buffalo S. C. Shapiro SNePSLOG Transitivity Rule : all(R)(Transitive(R) => all(x,y,z)({R(x,y), R(y,z)} &=> {R(x,z)})). : Transitive(bigger). : bigger(elephant,lion). : bigger(lion,mouse). : bigger(elephant,mouse)? BIGGER(ELEPHANT,MOUSE)
34
cse@buffalo S. C. Shapiro Inadequacy of FOPL 2 Everything Bob believes is true. Bob believes everything Bill believes. Bill believes Kevin’s favorite proposition. Kevin’s favorite proposition is that John is taller than Mary. Is John taller than Mary?
35
cse@buffalo S. C. Shapiro Quantifying Over Propositions : all(p)(Believes(Bob, p) => p). : all(p)(Believes(Bill, p) => Believes(Bob, p)). : all(p) (Favorite-proposition(Kevin, p) => Believes(Bill, p)). : Favorite-proposition(Kevin, Taller(John, Mary)). : Taller(John, Mary)? TALLER(JOHN,MARY)
36
cse@buffalo S. C. Shapiro Outline Set-Oriented Logical Connectives The Unique Variable Binding Rule Set Arguments “Higher-Order” Logic Intensional Representation The Numerical Quantifiers Contexts Relevance Logic Circular and Recursive Rules Practical Donkey Sentences
37
cse@buffalo S. C. Shapiro Opaque Contexts “George IV wished to know whether Scott was the author of Waverly” [Russell 1906]
38
cse@buffalo S. C. Shapiro Intensional Representation Every SNePS term represents (denotes) an intensional (mental) entity.
39
cse@buffalo S. C. Shapiro Uniqueness Principle No two SNePS terms denote the same entity.
40
cse@buffalo S. C. Shapiro McCarthy’s Telephone Number Problem : all(R)(Transparent(R) => all(a,x,y)({R(a,x), =({x,y})} &=> {R(a,y)})). : Transparent(Dial). : =({Telephone(Mike), Telephone(Mary)}). : Know(Pat, Telephone(Mike)). : Dial(Pat, Telephone(Mike)).
41
cse@buffalo S. C. Shapiro Correct Answer to Telephone Number Problem : ?what(Pat, ?which)? DIAL(PAT,TELEPHONE(MARY)) KNOW(PAT,TELEPHONE(MIKE)) DIAL(PAT,TELEPHONE(MIKE))
42
cse@buffalo S. C. Shapiro Outline Set-Oriented Logical Connectives The Unique Variable Binding Rule Set Arguments “Higher-Order” Logic Intensional Representation The Numerical Quantifiers Contexts Relevance Logic Circular and Recursive Rules Practical Donkey Sentences
43
cse@buffalo S. C. Shapiro Reasoning by Elimination No one has more than one mother. –Jane is John's mother. –Is Mary John's mother? The committee members are Chris, Leslie, Pat, and Stevie. At least two of them are women. –Leslie and Stevie are men. –Is Pat a man or a woman?
44
cse@buffalo S. C. Shapiro Numerical Quantifiers nexists(i,j,k)(x) ({P 1 (x),..., P n (x)}: {Q(x)})} There are k individuals that satisfy P 1 (x) ... P n (x) and, of them, at least i and at most j also satisfy Q(x)
45
cse@buffalo S. C. Shapiro Numerical Quantifier Rule of Inference 1 If j individuals are known that satisfy P 1 (x) … P n (x) Q(x) then every other individual that satisfies P 1 (x) ... P n (x) also satisfies ~Q(x)
46
cse@buffalo S. C. Shapiro Numerical Quantifier Rule of Inference 2 If k-i individuals are known that satisfy P 1 (x) … P n (x) ~ Q(x) then every other individual that satisfies P 1 (x) … P n (x) also satisfies Q(x)
47
cse@buffalo S. C. Shapiro Numerical Quantifier Forms nexists(i,j,k) nexists(_,j,_) nexists(i,_,k)
48
cse@buffalo S. C. Shapiro Reasoning by Elimination in SNePSLOG 1 : all(x)(Person(x) => nexists(_,1,_)(y)({Person(y)}: {Mother(y,x)})). : Person({John, Jane, Mary}). : Mother(Jane, John). : Mother(Mary, John)? ~MOTHER(MARY,JOHN)
49
cse@buffalo S. C. Shapiro Reasoning by Elimination in SNePSLOG 2 : Member({Chris, Leslie, Pat, Stevie}). : nexists(2,_,4)(x) ({Member(x)}: {Woman(x)}). : all(x)(Member(x) => andor(1,1){Man(x), Woman(x)}).
50
cse@buffalo S. C. Shapiro Committee Problem Answer : Man({Leslie, Stevie}). : ?What(Pat)? WOMAN(PAT) MEMBER(PAT) ~MAN(PAT)
51
cse@buffalo S. C. Shapiro Outline Set-Oriented Logical Connectives The Unique Variable Binding Rule Set Arguments “Higher-Order” Logic Intensional Representation The Numerical Quantifiers Contexts Relevance Logic Circular and Recursive Rules Practical Donkey Sentences
52
cse@buffalo S. C. Shapiro Contexts Pegasus is a winged horse in mythology But a normal horse in the real world. So Bellerophon travels by air in mythology but by ground in the real world.
53
cse@buffalo S. C. Shapiro Pegasus in the Real and Mythological Worlds : set-context real-world () : set-default-context real-world : all(x)({Bird(x), Beast(x)} v=> {Animal(x)}). : all(x)(Animal(x) => andor(1,1){Bird(x), Beast(x)}). : all(x)(Horse(x) => Beast(x)). : Horse(Pegasus).
54
cse@buffalo S. C. Shapiro Bellerophon in the Real and Mythological Worlds : all(x,y)(Rides(x,y) => andor(1,1){Travelsby(x, air), Travelsby(x, ground)}). : all(x,y)(Rides(x,y) => thresh(1,1){Winged(y), Travelsby(x, air)}). : Rides(Bellerophon, Pegasus).
55
cse@buffalo S. C. Shapiro Initialize Mythology : describe-context ((ASSERTIONS (WFF1 WFF2 WFF3 WFF4 WFF5 WFF6 WFF7)) (RESTRICTION NIL) (NAMED (REAL-WORLD))) : set-context mythology (WFF1 WFF2 WFF3 WFF4 WFF5 WFF6 WFF7)
56
cse@buffalo S. C. Shapiro Riding in the Real World : all(x)(Winged(x) Bird(x)). : Travelsby(Bellerophon,?what)? TRAVELSBY(BELLEROPHON,GROUND) ~TRAVELSBY(BELLEROPHON,AIR)
57
cse@buffalo S. C. Shapiro Riding in Mythology : set-default-context mythology : Winged(Pegasus). : Travelsby(Bellerophon,?what)? ~TRAVELSBY(BELLEROPHON,GROUND) TRAVELSBY(BELLEROPHON,AIR)
58
cse@buffalo S. C. Shapiro Outline Set-Oriented Logical Connectives The Unique Variable Binding Rule Set Arguments “Higher-Order” Logic Intensional Representation The Numerical Quantifiers Contexts Relevance Logic Circular and Recursive Rules Practical Donkey Sentences
59
cse@buffalo S. C. Shapiro Relevance Logic: A Paraconsistent Logic A contradiction should not imply anything whatsoever.
60
cse@buffalo S. C. Shapiro Opus Flies and Doesn’t : all(x)(Flies(x)=>Feathered(x)). : all(x)(~Flies(x) => Swims(x)). : Flies(Opus). : ~Flies(Opus). A contradiction was detected within context DEFAULT-DEFAULTCT.... ~FLIES(OPUS)
61
cse@buffalo S. C. Shapiro Opus is Feathered and Swims, but the Earth isn’t Flat : Feathered(Opus)? FEATHERED(OPUS) : Swims(Opus)? SWIMS(OPUS) : Flat(Earth)? :
62
cse@buffalo S. C. Shapiro The Inconsistent Belief Space : list-asserted-wffs all(X)(FLIES(X) => FEATHERED(X)) all(X)((~FLIES(X)) => SWIMS(X)) FLIES(OPUS) ~FLIES(OPUS) FEATHERED(OPUS) SWIMS(OPUS) but the earth isn’t flat.
63
cse@buffalo S. C. Shapiro Outline Set-Oriented Logical Connectives The Unique Variable Binding Rule Set Arguments “Higher-Order” Logic Intensional Representation The Numerical Quantifiers Contexts Relevance Logic Circular and Recursive Rules Practical Donkey Sentences
64
cse@buffalo S. C. Shapiro Information Provided by Real People is circular and left- and right-recursive
65
cse@buffalo S. C. Shapiro Circular Definitions : all(x,y)(thresh(1,1) {North-of(x,y), South- of(y,x)}). : North-of(Seattle, Portland). : South-of(San_Francisco, Portland). : North-of(San_Francisco, Los_Angeles). : South-of(San_Diego, Los_Angeles).
66
cse@buffalo S. C. Shapiro Using a Circular Definition : North-of(?x, ?y)? NORTH-OF(SEATTLE,PORTLAND) NORTH-OF (SAN_FRANCISCO,LOS_ANGELES) NORTH-OF(LOS_ANGELES,SAN_DIEGO) NORTH-OF(PORTLAND,SAN_FRANCISCO)
67
cse@buffalo S. C. Shapiro Recursive Rules : all(x,y)(parent(x,y) => ancestor(x,y)). : all(x,y,z)({ancestor(x,y), ancestor(y,z)} &=> {ancestor(x,z)}). : parent(John, Mary). : ancestor(Mary, George). : ancestor(George, Sally). : parent(Sally, Jimmy).
68
cse@buffalo S. C. Shapiro Using a Recursive Rule : ancestor(John, ?y)? ANCESTOR(JOHN,JIMMY) ANCESTOR(JOHN,MARY) ANCESTOR(JOHN,GEORGE) ANCESTOR(JOHN,SALLY)
69
cse@buffalo S. C. Shapiro In the Other Direction : ancestor(?x, Jimmy)? ANCESTOR(SALLY,JIMMY) ANCESTOR(JOHN,JIMMY) ANCESTOR(GEORGE,JIMMY) ANCESTOR(MARY,JIMMY)
70
cse@buffalo S. C. Shapiro Outline Set-Oriented Logical Connectives The Unique Variable Binding Rule Set Arguments “Higher-Order” Logic Intensional Representation The Numerical Quantifiers Contexts Relevance Logic Circular and Recursive Rules Practical Donkey Sentences
71
cse@buffalo S. C. Shapiro Practical Donkey Sentences Donkey Sentence: –Every farmer who owns a donkey beats it. Practical Donkey Sentence: –If you have a quarter in your pocket, put it in the meter. [Lenhart Schubert]
72
cse@buffalo S. C. Shapiro FOPL Practical Sentence (x)[Quarter(x) In(x, pocket) PutIn(x, meter)] –puts all quarters in pocket in the meter (x) )[Quarter(x) In(x, pocket)] PutIn(x, meter) –last x unbound (x) )[Quarter(x) In(x, pocket)] (x) )[Quarter(x) In(x, pocket) PutIn(x, meter)] –Finds one, may put in another
73
cse@buffalo S. C. Shapiro Withsome withsome(var, suchthat, do,[else]) Term denoting an act: if there is some a satisfying suchthat{a/x} perform do{a/x} else perform else.
74
cse@buffalo S. C. Shapiro Practical Sentence in SNePSLOG (define-primaction Putin (object place) (format t "~&I am putting ~{~A~}~ in the ~{~A~}.~%” object place))
75
cse@buffalo S. C. Shapiro Practical Sentence in SNePSLOG 2 : Nickel(N1). : Nickel(N2). : Quarter(Q1). : Quarter(Q2). : Quarter(Q3). : In(N1, pocket). : In(Q1, pocket). : In(Q2, pocket).
76
cse@buffalo S. C. Shapiro Practical Sentence in SNePSLOG 3 : perform withsome(?x, Quarter(?x) and In(?x, pocket), Putin(?x, meter)) I am putting Q1 in the METER.
77
cse@buffalo S. C. Shapiro Summary SNePS Logic has been designed specifically to support Natural Language Understanding and CommonSense Reasoning. The aspects of that design fall under several categories:
78
cse@buffalo S. C. Shapiro Basic SNePS Principles Term Logic: Every expression in SNePS is a term. Intensional Representation: Every SNePS term represents (denotes) an intensional (mental) entity. Uniqueness Principle: No two SNePS terms denote the same entity.
79
cse@buffalo S. C. Shapiro Specialized Syntax Term Logic Set Arguments Set-Oriented Logical Connectives Numerical Quantifiers “Higher-Order” Logic Acts
80
cse@buffalo S. C. Shapiro Specialized Inference Rules The Unique Variable Binding Rule Relevance Logic
81
cse@buffalo S. C. Shapiro Specialized Semantics Intensional Representation Uniqueness Principle
82
cse@buffalo S. C. Shapiro Specialized Inference Mechanism Contexts Belief Revision Use of circular and recursive rules Integrated reasoning and acting
83
cse@buffalo S. C. Shapiro For More Information Personnel Manual Tutorial Bibliography ftp’able SNePS source code etc. http://www.cse.buffalo.edu/sneps/
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.