Automated reasoning and theorem proving - PowerPoint PPT Presentation

About This Presentation
Title:

Automated reasoning and theorem proving

Description:

The formal model semantics of Logic. The meaning of 'Logical entailment' Propositional logic ... T. F. T. Model: 21. Logical entailment: ... – PowerPoint PPT presentation

Number of Views:447
Avg rating:3.0/5.0
Slides: 40
Provided by: DannyDe8
Category:

less

Transcript and Presenter's Notes

Title: Automated reasoning and theorem proving


1
Automated reasoning and theorem proving
  • Introduction logic in AI

Automated reasoning Resolution Unification
Normalization
2
Introduction
  • Motivating example

Automated reasoning
Logic Syntax Model semantics Logica
l entailment
3
The AI dream in the 60s
  • Logic allows to express almost everything
    formally.
  • Logic also allows to prove theorems based on
    the information given.
  • Can we exploit this to build automated reasoning
    systems ??

4
Underlying premises
5
Example
  • The following knowledge is given

2. Marcus was a Pompeian. 3. All Pompeians were
Romans. 4. Caesar was a ruler. 5. All Romans were
either loyal to Caesar or hated him. 6. Everyone
is loyal to someone. 7. People only try to
assassinate rulers to whom they are not loyal. 8.
Marcus tried to assassinate Caesar.
  • Can we automatically answer the following
    questions?

6
Conversion to the First Order Logic
  • Representation of facts

1. Marcus was a man. man(Marcus)
2. Marcus was a Pompeian. Pompeian(Marcus)
4. Caesar was a ruler. ruler(Caesar)
8. Marcus tried to assassinate Caesar. try_assa
ssinate(Marcus, Caesar)
7
Conversion tothe First Order Logic (2)
  • General representation (representation of rules)

3. All Pompeians were Romans.
?x Pompeian(x) ? Roman(x)
5. All Romans were either loyal to Caesar or
hated him.
?x Roman(x) ? loyal_to(x,Caesar) ?
hates(x,Caesar)
6. Everyone is loyal to someone.
?x ?y loyal_to(x,y)
7. People only try to assassinate rulers to whom
they are not loyal.
?x?y person(x) ? ruler(y) ? try_assassinate(x,y)
? loyal_to(x,y)
8
The theorem ?
Was Marcus loyal to Caesar?
loyal_to(Marcus,Caesar)
Did Marcus hate Caesar?
hates(Marcus,Caesar)
9
A proof using backward-reasoning
problem-reduction
loyal_to(Marcus,Caesar)
Modus ponens
10
Problems1) knowledge representation
  • Natural language is imprecise / ambiguous
  • see People only try
  • Obvious information is easily forgotten.
  • see man lt-gt person
  • Some information is more difficult to represent
    in logic.
  • Vb. perhaps , possibly, probably,
    the chance of is 45,
  • Logic is inconvenient from a software
    engineering perspective.
  • too fine-grained (like an assembly language)

11
Problems2) Problem solving
  • All trade-offs that we had with search methods
    based on states space representation
  • backward/forward, tree/graph, OR-tree/AND-OR, con
    trol aspects, ...
  • What deduction rules are needed in general?
  • Example prove hates(Marcus,Caesar)
  • How do we handle ?x and ?y ?

12
Problems2) Problem solving (2)
  • How to compute substitutions in the general case ?
  • Which theorem do we try to prove?
  • Ex. loyal_to(Marcus,Caesar) or
    loyal_to(Marcus,Caesar)
  • How to handle equality of objects?
  • Problem combinatorial explosion of the derived
    equalities (reflexivity, symmetry, transitivity,
    )
  • How to guarantee correctness/completeness?

13
The formal model semantics of Logic
  • The meaning of Logical entailment

14
Propositional logic
15
Basic concepts
  • In propositional logic

16
Semantics (meaning)
  • In general (for all knowledge representation
    formalisms)
  • 2 approaches to define semantics
  • Describe the meaning by means of a natural
    language
  • Exs. (propositional logic)
  • ? implies
  • not true that
  • ? or
  • p ? q p if and only if q
  • p ? r not p and r
  • every symbol and every well-formed formula gets
    meaning through the associated natural language

17
Semantics (2)
  • Describe the meaning by converting to an
    associated mathematical object
  • In propositional logic
  • the set of all propositional symbols that are
    logically entailed by the given formulas

Logically entailed
p
q
r
18
But how to define logical entailment ?
  • NOT as
  • Everything that we can derive from the formulas
  • SINCE
  • At this moment we do not know yet
  • what is a complete set of the derivation rules
  • This is exactly what Automated Reasoning aims
    to find out!
  • BUT by
  • Interpretations
  • Models

19
Interpretation
  • a function that assigns a truth value to each
    atomic formula

Truth table
20
Model
  • Given a set of formulas S a model is an
    interpretation that makes all formulas in S
    true

21
Logical entailment
  • Given a set of formulas S and a formula F F
    is logically entailed by S ( S F ), if all
    models of S also make F true.

F r ? p
22
Predicate logic
23
p(Yvonne) p(x) ? q(x) ?z p(z) ?x ?y p(x) ? q(y)
? p(f(Yvonne, Yvette)
24
Formally
  • An alphabet consists of variables, constants,
    function symbols, predicate symbols (all
    user-defined) and of connectors, punctuations en
    quantifiers.
  • Terms are either
  • variables,
  • constants,
  • function symbols provided with as many terms as
    arguments, as the function symbol expects.
  • Well-formed formulas are constructed from
    predicate symbols, provided with terms as
    arguments, and from connectors, quantifiers and
    punctuation according to the rules of the
    connectors.

25
Example
  • Alphabet

0, x,y, s, odd,even, Con, Pun, Quan
  • Terms

0, s(0), s(s(0)), s(s(s(0))), x, s(x),
s(s(x)), s(s(s(x))), y, s(y), s(s(y)),
s(s(s(y))),
  • Well-formed formulas

odd(0), even(s(0)), odd(x), odd(s(y)),
odd(x) ? even(s(s(x))), ?x ( odd(x) ?
even(s(x)) ), odd(y) ? ?x (even( s(x))), ...
26
Interpretation
  • a set D (the domain), and
  • a function that maps constants to D, and
  • a function that maps function symbols to
    functions D -gt D, and
  • a function that maps predicate symbols to
    predicates D -gt Booleans.

27
Assigning truth values
  • 1. To ground atomic formulas
  • form p(f(a), g(a,b))

I( odd( s ( s( 0 ) ) ) ) ) ? I (odd) (
I(s) ( I(s) ( I(0) ) ) ) even ( succ ( succ
( 0 ) ) ) even ( succ ( 1 ) )
even ( 2 ) true
Example
28
Assigning truth values (2)
  • 2. For closed well-formed formulas
  • ( no non-quantified variables)
  • ?x F(x) is true if
  • for all d ?D I( F(d) ) true
  • ? x F(x) is true if
  • there exists d ?D such that I( F(d) ) true
  • further use the truth tables.

I(?x odd( s ( x ) ) ? odd(x) ) ? true if
for all d in N I (odd( s (d) ) ? odd(d) )
true
Example
even ( succ(d) ) ? even (d) Assume d
0, then false ? true Truth tables false !
29
Semantics / Logical entailment
  • Exactly as in propositional logic !
  • Additional inconsistency
  • Given a set of formulas S S is inconsistent
    if S has no models.

Example S p(a), p(a)
30
Marcus example
A
F ?
ruler
person
P
man
try_assassinate
Pompeian
Roman
loyal_to
hates
Intended interpretation
Is a model IF ALL FORMULAS ARE CORRECT
31
Marcus example
I(man) I(person) I(Roman) natural number
I(try_assassinate) gt
I(Pompeian) even number
I(loyal_to) divides
I(ruler) prime number
I(hates) doesnt divide
32
Model ??
YES !
1. Marcus was a man. 4 is a natural number
2. Marcus was Pompeian. 4 is an even number
4. Caesar was a ruler. 3 is a prime number
8. Marcus tried to assassinate Caesar. 4 gt 3
3. All Pompeians were Romans.
Even numbers are naturals.
5. All Romans were either loyal to Caesar or
hated him.
A number either divides 3 or doesnt divide 3.
6. Everybody is loyal to somebody.
Each number is a divisor of some number.
7. People try to assassinate only those rulers to
whom they are not loyal.
A natural number that is greater than a prime
number doesnt divide the prime number.
33
Logic is all form, no content
Only the underlying structure of a set of logical
formulas is important for the conclusions! (up
to the names isomorphism)
But from the knowledge representation perspective
also the contents is important.
34
Relation with respect to other courses
35
Logic as a foundation for AI
A much deeper and more formal study of Logic for
Knowledge Representation and Reasoning !
36
Programming Languages and Programming
Methodologies
Logic-based programming languages
(Prolog/CLP)
37
Selected Topics in Logic Programming
Formal studies of semantics and formal methods
(analysis, termination) of logic-based
programming languages
(also beyond Prolog)
38
Fundamentals of Artificial Intelligence
Mostly in the exercises
39
Methodology for knowledge representation?
  • Very complicated. Not many simple guidelines.
  • Choose an alphabet that allows us to represent
    all objects and all relations from the problem
    domain
  • What are the basic objects, functions and
    relations in your problem domain ?
  • Ontology represent only the RELEVANT
    information
  • Choose constants, function and predicate symbols
    to represent them.
  • Translate every sentence in a natural language
    in one or more corresponding logical formulas.
Write a Comment
User Comments (0)
About PowerShow.com