Title: FirstOrder Logic
1First-Order Logic
- Reading C. 8 and C. 9
- Pente specifications handed back at end
- of class
2First-Order Logic Outline
- Expressing Information in first-order logic
- An example
- Inference in FOL
- Resolution theorem proving
- Production systems (forward chaining)
- Logic-based programming (backward chaining)
3Characteristics of FOL
- Declarative
- Expressive
- Partial information
- Negation
- Compositionality
4Ontological Commitment
- Propositional logic
- There are facts that either hold or do not hold
in the world - Logic constrains facts
- First-order logic
- The world consists of objects and relations
between objects - Logic constrains allowable objects, properties of
objects, relations between objects
5Ontological commitments of higher order logics
- Temporal logic
- Facts hold at particular times and those times
are ordered - Epistemological
- Agents hold beliefs about facts
- Three possible states of knowledge
- The agent believes a fact
- The agent does not believe it
- The agent has no opinion
- Probabilistic
- Facts are true to different degrees (Truth value
from 0 to 1)
6Problems with propositional logic
7(No Transcript)
8Propositional Logic is lacking in expressiveness
- Cannot represent knowledge of complex
environments in a concise way - E.g., Squares adjacent to pits are breezy
- Need objects
- Squares, pits, Kathy
- Need relations
- Adjacent, breezy, smelly, know
- Need functions
- Father-of, mother-of
9Syntax of FOL basic elements
- Constants Vijay, Andrew, Sowmya
- Predicates knows, adjacent, gt
- Functions Sqrt, father-of
- Variables x,y,a,b
- Connectives ?,V,,?,?
- Equality
- Quantifiers ?,?
10Atomic Sentences
- Atomic sentence predicate (term1termm)
or term1term2 - Term function (term1, , termm) or
constant or variable - E.g. know(Kathy,Sowmya), Adjacent (x,y),
father-of(Kathy) Michael, Andrew, x
11Complex Sentences
- Complex sentences are made from atomic sentences
using connectivesS, S1?S2, S1VS2, S1?S2,
S1?S2 - E.g., adjacent(x,y) ? adjacent (y,x),
knows(Nunzio, Michael),
12Truth in First-order Logic
- Sentences are true with respect to a model and an
interpretation - Model contains ? 1 objects (domain elements) and
relations among them - Interpretation specifies referents for
- Constant symbols -gt objects
- Predicate symbols -gt relations
- Function symbols -gt functional relations
- An atomic sentence predicate (term1,,termn) is
true iff the objects referred to by term1,,
termn are in the relation referred to by
predicate.
13Universal quantification
- ?ltvariablesgt ltsentencegt
- Everyone at Columbia is smart?x At(x,Columbia)
? Smart(x) - ?x P is true in a model m iff P with x being each
possible object in the model - At (Leia, Columbia) ? Smart(Leia)
- At (Ryan, Columbia) ? Smart (Ryan)
- At (Archana, Columbia) ? Smart (Archana)
- At (Stanley, Columbia) ? Smart (Stanley)
- ..
14A common mistake
- Typically, ? is the main connective used with ?
- Common mistake using as the main connective ?
?x At(x,Columbia) ? Smart(x)
15Existential Quantification
- ?ltvariablesgt ltsentencegt
- Someone at Columbia is smart?x At(x,Columbia)
Smart(x) - ? x P is true in a model m iff P with x being
each possible object in the model - Equivalent to the disjunction of instantiations
of P - At (Leia, Columbia) ? Smart(Leia)
- V At (Ryan, Columbia) ? ? Smart (Ryan)
- V At (Archana, Columbia) ? ? Smart (Archana)
- V At (Stanley, Columbia) ? ? Smart (Stanley)
16Another Common Mistake
- Typically, ? is the main connective with ?
- Common mistake using ? as the main connective ?
x At(x,Columbia) ? Smart(x)
17Properties of Quantifiers
- ?x ?y is the same ?y ?x
- ?x ? y is the same as ? y ? x
- ? x ? y is not the same as ? y ? x
- ? x? y Loves(x,y)
- There is a person who loves everyone in the world
- ? y ? x Loves(x,y)
- Everyone is loved by someone.
- Quantifier duality each can be expressed using
the other ? x Likes (x,Icecream) ? x
Likes(x,IceCream) ? x Likes(x, Broccoli)
?x Likes(x,Broccoli)
18Translation from English to FOL
- A mother is a female parent
- Andrew likes the problem of one of the book
exercises - ?
19Example
- Family trees
- What does the model look like?
- Father-of
- Mother-of
- Sibling
- What can we infer?
- Cousin
- Ancestors
20To Make Inferences in FOL
- Method 1
- Unification of variables with literals (in the
KB) - Generalized Modus Ponens
- Forward-chaining or Backward-chaining
- Method 2
- Resolution
21Unification
- We want to find a substitution ? such that x and
y match literals - Unify (?,?) ? if ?? ??
- Some examples
22Standardizing apart eliminates overlap of
variables, e.g., Knows(z17,Michel)
23Unification for example
24-
- P1 father-of(Kathy)Michael
- P1 father-of(x)y
- ?x/Kathy,y/Michael
- qancestor(x,y)
- qancestor(Kathy,Michael)
25(No Transcript)
26Example inference using forward chaining
(production systems)
27Properties of forward-chaining
- Sound and complete for first-order definite
clauses - Datalog is first-order definite clauses and no
functions - May not terminate in general if is not entailed
- This is unavoidable entailment with definite
clauses is semi-decidable - Forward chaining is widely used in deductive
databases
28(No Transcript)
29Example inference using backward chaining
30Properties of backward-chaining
- Depth-first recursive proof search space is
linear in size of proof - Incomplete due to infinite loops
- Fix by checking current goal against every goal
on stack - Inefficient due to repeated subgoals (both
success and failure) - Fix using cache of previous results (extra
space!) - Widely used (without improvements!) for logic
programming (e.g., Prolog)
31Midterm results
- Exams will only be given back to person the owner
of the exam