일차술어논리
DESCRIPTION
일차술어논리. First-order Logic. Limitation of propositional logic. A very limited ontology to need to the representation power first-order logic. First-order logic. A stronger set of ontological commitments A world in FOL consists of objects, properties, relations, functions - PowerPoint PPT PresentationTRANSCRIPT
일차술어논리
First-order Logic
Limitation of propositional logic
• A very limited ontology
to need to the representation power
first-order logic
First-order logic
• A stronger set of ontological commitments
• A world in FOL consists of objects, properties,
relations, functions • Objects people, houses, number, colors, Bill
Clinton• Relations brother of, bigger than, owns, love• Properties red, round, bogus, prime• Functions father of, best friend, third inning
of
Examples
• “One plus two equals three”– objects :: one, two, three, one plus two– Relation :: equal– Function :: plus
• “Squares neighboring the wumpus are smelly– Objects :: wumpus, square– Property :: smelly– Relation :: neighboring
First order logics
• Objects 와 relations• 시간 , 사건 , 카테고리 등은 고려하지 않음• 영역에 따라 자유로운 표현이 가능함
‘ king’ 은 사람의 property 도 될 수 있고 , 사람과 국가를 연결하는 relation 이 될 수도 있다
• 일차술어논리는 잘 알려져 있고 , 잘 연구된 수학적 모형임
Syntax and Semantics
Sentence AtomicSentence| Sentence Connective Sentence| Auantifier Variable,…Sentence| Sentence| (Sentence)
AtomicSentence Predicate(Term,…) | Term=Term
Term Function (Term,…)| Constant| Variable
Connective | | | Quantifier | Constant A | X1 | John | … Variable a | x | s | … Predicate Before | HanColor | Raining | … Function Mother | LeftLegOf | …
Figure 7.1 The syntax of first-order logic (with equality) in BNF (Backus-Naur Form).
예
• Constant symbols :: A, B, John, • Predicate symbols :: Round, Brother• Function symbols :: Cosine, FatherOf• Terms :: King John, Richard’s left leg• Atomic sentences :: Brother(Richard,John), Marrie
d(FatherOf(Richard), MotherOf(John))
• Complex sentences :: Older(John,30)=>~younger(John,30)
Quantifiers
• World = {a, b, c}• Universal quantifier (∀) ∀x Cat(x) => Mammal(x) Cat(a) => Mammal(a) & Cat(a) => Mammal(a) &
Cat(a) => Mammal(a) • Existential quantifier (∃) ∃x Sister(x, Sopt) & Cat(x)
Nested quantifiers
• ∀x,y Parent(x,y) => Child(y,x)
• ∀x,y Brother(x,y) => Sibling(y,x)
• ∀x∃y Loves(x,y)
• ∃y∀x Loves(x,y)
De Morgan’s Rule
∀x ~P ~∃x P ~P&~Q ~(P v Q)~∀x P ∃x ~P ~(P&Q) ~P v ~Q ∀x P ~∃x ~P P&Q ~(~P v ~ Q) ∃x P ~∀x ~P P v Q ~(~P&~Q)
Equality
• Identity relation
• Father(John) = Henry• ∃x,y Sister(Spot,x) & Sister(Spot,y) & ~(x=y)≠ ∃x,y Sister(Spot,x) & Sister(Spot,y)
Higher-order logic
• ∀x,y (x=y) (∀p p(x) p(y))
• ∀f,g (f=g) (∀x f(x) g(x))∀
-expression
• x,y x2 – y2
-expression can be applied to arguments to yield a logical term in the same way that a function can be
• (x,y x2 – y2) (25,24) = 252-242 = 49x,y Gender(x) ≠Gender(y) & Address(x) = Address(y)
∃! (The uniqueness quantifier)
• ∃!x King(x)• ∃x King(x) & ∀y King(y) => x=y
world 를 고려하여 보여주면 => object 가 1, 2, 3 개일 때
{a} w0 king={}, w1 king={a} w1 만 model
{a,b} w0 king={}, w1 king={a}, w2 {b}, w3 {a,b} w1, w2 만 model
Representation of sentences by FOPL
• One’s mother is one’s female parent ∀m,c Mother(c)=m Female(m) & Parent(m)
• One’s husband is one’s male spouse ∀w,h Husband(h,w) Male(h) & Spouse(h,w)
• Male and female are disjoint categories ∀x Male(x) ~Female(x)• A grandparent is a parent of one’s parent ∀g,c Grandparent(g,c) ∃p parent(g,p) &
parent(p,g)
Representation of sentences by FOPL
• A sibling is another child of one’s parents ∀x,y Sibling(x,y) x≠y & ∃p Parent(p,x) & Parent(p,y)
• Symmetric relations ∀x,y Sibling(x,y) Sibling(y,x)
The domain of sets (I)
• The only sets are the empty set and those made by adjoining something to a set :
∀s Set(s) (s=EmptySet) v (∃x,s2 Set(s2) & s=Adjoin(x,s2))• The empty set has no elements adjoined into it. ~∃x,s Adjoin(x,s)=EmptySet• Adjoining an element already in the set has no effect ∀x,s Member(x,s) s=Adjoin(x,s)• The only members of a set are the elements that were adjoined i
nto it ∀x,s Member(x,s) ∃y,s2 (s=Adjoin(y,s2) & (x=y v Member(x,s)))
The domain of sets (II)
• A set is a subset of another if and only if all of the first set’s are members of the second set :
∀s1,s2 Subset(s1,s2)
(∀x Member(x,s1) => member(x,s2))• Two sets are equal if and only if each is a
subset of the other: ∀s1,s2 (s1=s2) (Subset(s1,s2) &
Subset(s2,s1))
The domain of sets (III)
• An object is a member of the intersection of two sets if and only if it is a member of each of sets :
∀x,s1,s2 Member(x,Intersection(s1,s2)) Member(x,s1) & Member(x,s2)
• An object is a member of the union of two sets if and only if it is a member of either set :
∀x,s1,s2 Member(x,Union(s1,s2)) Member(x,s1) v Member(x,s2)
Asking questions and getting answers
• Tell(KB, (∀m,c Mother(c)=m Female(m) &
Parent(m,c)))• ……• Tell(KB, (Female(Maxi) & Parent(Maxi,Spot) &
Parent(Spot,Boots)))
• Ask(KB,Grandparent(Maxi,Boots)• Ask(KB, ∃x Child(x, Spot))• Ask(KB, ∃x Mother(x)=Maxi)• Substitution, unification, {x/Boots}