first order logic
Download
Skip this Video
Download Presentation
First-Order Logic

Loading in 2 Seconds...

play fullscreen
1 / 12

First-Order Logic - PowerPoint PPT Presentation


  • 92 Views
  • Uploaded on

First-Order Logic. Limitations of propositional logic. Suppose you want to say “All humans are mortal” In propositional logic, you would need ~6.7 billion statements Suppose you want to say “Some people can run a marathon” You would need a disjunction of ~6.7 billion statements.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' First-Order Logic' - maite-phelps


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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
limitations of propositional logic
Limitations of propositional logic
  • Suppose you want to say “All humans are mortal”
    • In propositional logic, you would need ~6.7 billion statements
  • Suppose you want to say “Some people can run a marathon”
    • You would need a disjunction of ~6.7 billion statements
first order logic1
First-order logic
  • Propositional logic assumes the world consists of atomic facts
  • First-order logic assumes the world contains objects, relations, and functions
syntax of fol
Syntax of FOL
  • Constants:John, Sally, 2, ...
  • Variables:x, y, a, b,...
  • Predicates:Person(John), Siblings(John, Sally), IsOdd(2), ...
  • Functions:MotherOf(John), Sqrt(x), ...
  • Connectives:, , , , 
  • Equality:=
  • Quantifiers:, 
  • Term: Constant or Variableor Function(Term1, ... , Termn)
  • Atomic sentence:Predicate(Term1, ... , Termn)or Term1 = Term2
  • Complex sentence: made from atomic sentences using connectives and quantifiers
semantics of fol
Semantics of FOL
  • Sentences are true with respect to a model and an interpretation
  • Model contains objects (domainelements) and relations among them
  • Interpretation specifies referents for

constantsymbols→objects

predicatesymbols→relations

functionsymbols→ functional relations

  • An atomic sentence Predicate(Term1, ... , Termn) is true iffthe objects referred to by Term1, ... , Termnare in the relation referred to by predicate
universal quantification
Universal quantification
  • x P(x)
  • Example: “Everyone at UNC is smart”

x At(x,UNC)  Smart(x)

Why not x At(x,UNC)  Smart(x)?

  • Roughly speaking, equivalent to the conjunction of all possible instantiations of the variable:

[At(John, UNC)  Smart(John)]  ...

[At(Richard, UNC)  Smart(Richard)]  ...

  • x P(x)is true in a model m iffP(x)is true with x being each possible object in the model
existential quantification
Existential quantification
  • x P(x)
  • Example: “Someone at UNC is smart”

x At(x,UNC)  Smart(x)

Why not x At(x,UNC)  Smart(x)?

  • Roughly speaking, equivalent to the disjunction of all possible instantiations:

[At(John,UNC)  Smart(John)] 

[At(Richard,UNC)  Smart(Richard)]  …

  • x P(x) is true in a model m iffP(x)is true with x being some possible object in the model
properties of quantifiers
Properties of quantifiers
  • x y is the same as yx
  • x yis the same as yx
  • x yis not the same as yx

x y Loves(x,y)

“There is a person who loves everyone”

yx Loves(x,y)

“Everyone is loved by at least one person”

  • Quantifier duality: each quantifier can be expressed using the other with the help of negation

x Likes(x,IceCream) x Likes(x,IceCream)

x Likes(x,Broccoli) xLikes(x,Broccoli)

equality
Equality
  • Term1= Term2is true under a given model if and only if Term1and Term2refer to the same object
  • E.g., definition of Sibling in terms of Parent:

x,ySibling(x,y)  [(x = y)  m,f(m = f)  Parent(m,x)  Parent(f,x)  Parent(m,y)  Parent(f,y)]

using fol the kinship domain
Using FOL: The Kinship Domain
  • Brothers are siblings

x,y Brother(x,y) Sibling(x,y)

  • “Sibling” is symmetric

x,y Sibling(x,y)  Sibling(y,x)

  • One\'s mother is one\'s female parent

m,c(Mother(c) = m)  (Female(m)  Parent(m,c))

using fol the set domain
Using FOL: The Set Domain
  • s Set(s)  (s = {})  (x,s2 Set(s2)  s = {x|s2})
  • x,s {x|s} = {}
  • x,s x  s  s = {x|s}
  • x,s x  s  [ y,s2(s = {y|s2}  (x = y  x  s2))]
  • s1,s2 s1 s2 (x x s1 x  s2)
  • s1,s2 (s1 = s2)  (s1 s2 s2 s1)
  • x,s1,s2 x  (s1 s2)  (x  s1 x  s2)
  • x,s1,s2 x  (s1 s2)  (x  s1 x  s2)
why first order
Why “First order”?
  • FOL permits quantification over variables
  • Higher order logics permit quantification over functions and predicates:

P,x [P(x)  P(x)]

x,y (x=y)  [P (P(x)P(y))]

ad