FOL is very expressive but consider how to translate these most students graduate in 4 years x studentx durationundergradyears4 only a few students switch majors sm1m2t1t2 studentsmajorsm1t1majorsm2t2 m1m2 ID: 528340
Download Presentation The PPT/PDF document "Limitations of First-Order Logic" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.
Slide1
Limitations of First-Order Logic
FOL is very expressive, but...
consider how to translate these:
"most students graduate in 4 years"
x student(x) → duration(undergrad)years(4) ???
"only a few students switch majors"
s,m1,m2,t1,t2 student(s)^major(s,m1,t1)major(s,m2,t2) m1m2
t1t2 ???
"all students must take Communications, except Joe"
The problems involve:
default rules & exceptions
degrees of truth
strength of rulesSlide2
Solutions
Closed-World Assumption in PROLOG
Non-monotonic logics
Semantic Networks
Fuzzy Logic
Bayesian ProbabilitySlide3
Closed-World Assumption (CWA) in PROLOG
every fact that is not asserted is assumed to be false - very handy
example facts:
query with negation:
how is this implemented? how does this affect reasoning/inference?
modify back-chaining to handle negative antecedents: "Negation-as-failure"
when trying to prove ¬P(X) on goal stack, try proving P(X) and if fail then ¬P(X) succeedsSlide4
Non-monotonic Logics
allow retractions later (popular for truth-maintenance systems)
"birds fly",
"penguins are birds that don't fly"
x bird(x)→fly(x)
x penguin(x)→
bird(x
),
x penguin(x)→
¬
fly(x)
bird(tweety), bird(opus)
|=
fly(opus)
later, add that opus is a penguin, change inference
penguin(opus
)
|=
¬
fly(opus
)
Definition: A logic is
monotonic
if everything that is entailed by a set of sentences
a
is entailed by any superset of sentences
a
b
opus example is
non-monotonicSlide5
example syntax of
default
rule
bird(x): fly(x) / fly(x) or bird(x)
≻
fly(x)
semantics: "if PRECOND is satisfied and it is
not inconsistent
to
believe CONSEQ, then
CONSEQ"
Circumscription
add
abnormal
predicates
to
rules
x
bird(x
)¬abnormal
1
(x)→
fly(x)
x
penguin(x
)
¬
abnormal
2
(x
)
→
bird(x
)
x
penguin(x
)
¬
abnormal
3
(x
)
→
¬
fly(x
)
algorithm: minimize number of
abnormals
needed to make
KB
consistent
{bird(tweety),fly(tweety),bird(opus),penguin(opus),
¬
fly(opus)} is INCONSISTENT
{bird(tweety),fly(tweety),bird(opus),penguin(opus),
¬
fly(opus
), abnormal
1
(opus)}
is
CONSISTENTSlide6
Semantic Networks
graphical representation of knowledge
nodes, slots, edges, "isa" links
procedural mechanism for answering queries
follow links
different than formal definition of "entailment"
inheritance
can override defaults
related to Description Logics
popular for large medical
knowledge bases of anatomy,diseases, injuries, procedures...Slide7
Fuzzy Logic
some expressions involve "degrees" of truth, like "John is tall"
membership function
"most students with high SATs have high GPAs"
inference by computing with membership funcs.
"only days that are warm and not windy are good for playing frisbee"
suppose today is 85 and the wind is 15
kts
NE
T(A^B) = min(T(A),T(B))
T(AvB) = max(T(A),T(B))popular for control applications (like thermostats...)Slide8
temp: 30 100
0kts 50 kts
wind: speed
temp
wind speed
warm
not windy
windy
1.0
0.4
85
15Slide9
Probability
conditional probabilities play role of rules
people with a toothache are likely to have a cavity
p(cavity|toothache) = 0.6
joint probabilities
,
priors
Bayes RuleSlide10
Bayesian Networks
graphical models where edges represent conditional probabilities
popular for modern
AI
systems (expert systems)
important for handling uncertainty
=