Automated reasoning systems
This presentation is the property of its rightful owner.
Sponsored Links
1 / 41

Automated Reasoning Systems PowerPoint PPT Presentation


  • 34 Views
  • Uploaded on
  • Presentation posted in: General

Automated Reasoning Systems. For first order Predicate Logic. Is F a logical consequence of T ?. AR: general context. Given is a knowledge base in predicate logic: T. is a set of formulae in first order logic formally also called: a “Theory’’.

Download Presentation

Automated Reasoning Systems

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


Automated reasoning systems

Automated Reasoning Systems

For first order Predicate Logic


Ar general context

  • Is F a logical consequence of T ?

AR: general context.

  • Given is a knowledge base in predicate logic: T

  • is a set of formulae in first order logic

  • formally also called: a “Theory’’

  • Given is also an additional first order formula: F

  • Notation: T |=F (T implies F)

  • Find reasoning techniques that allow to decide on this for EACH F and T.

  • Requirements:

    • correctness -- completeness -- efficiency


  • Ar decidability

    • There CANNOT EXIST AN ALGORITHMthat decides whether T|=F, for any theory T and any formula F.

    • There exists a reasoning technique, such that for any theory T and formula F, such that T|=F, the reasoning technique provesT |= F.

    AR: decidability.

    • Theorem Church ‘36:

    • BUT: semi-decidable !

    • Completeness Theorem of Goedel ‘31:

    • SO: if F follows from T, then we find a proof, else it is possible that the procedure doesn’t terminate.


    Wait a second

    • The theorems of Church and Goedel are contradicting: We can try to prove F and ~F in parallel, and according to Goedel’s theorem one of these must succeed after a finite time.

    Wait a second ...

    • Wrong !

    • Let: T ={smart(Kelly)} en F =strong(Kelly)

    • Although strong(Kelly)  ~strong(Kelly) is always true, we have:

      • neither: {smart(Kelly)} |= strong(Kelly)

      • nor: {smart(Kelly)} |= ~strong(Kelly)


    Ar general outline 1

    • backward resolution

    AR: general outline (1).

    • First we sketch the most generally used approach for automated reasoning in first-order logic:

    • The different technical componentswill only be explained in full detail in a second pass (outline (2)).


    Ar general outline 2

    • ground Horn clause logic

    AR: general outline (2) .

    • We study different subsets of predicate logic:

    • Horn clause logic

    • Clausal logic

    • full predicate logic

    • In each case we study semi-deciding procedures.

    • Each extension requires the introduction of new techniques.


    Backward reasoning resolution

    Backward Reasoning Resolution

    … in a nutshell


    Backward resolution

    • 0) The task: an example.

    • 1) Proof by inconsistency.

    • 2) Conversion to clausal form.

    • 3) Unification.

    • 4) The resolution step.

    • 5) (Backward) resolution proofs.

    Backward resolution:


    0 the task example

    T

    p= parent

    f= father

    r= rich

    q= old

    z ~ q(z)

    y p(f(y))

    x p(x)  q(x)  r(x)

    F

    • In this world, is always true ?

    u r(f(u))

    0) The TASK (example):

    • Are axioms: describe knowledge about some world.

    • How to prove such theorems in general?


    1 proof by inconsistency

    F

    • Don’t prove F directly:

    u r(f(u))

    • NEW TASK:

    ~ u r(f(u))

    z ~ q(z)

    y p(f(y))

    x p(x)  q(x)  r(x)

    • is inconsistent.

    1) Proof by inconsistency

    • But add the negation of F to the axioms and prove that this extension is inconsistent.

    • the 4 axioms are never true in 1 same interpretation.


    2 clausal form

    • Each set of axioms can be transformed into a new set of formulae, that contains only formulae of the form:

    xy…zp(…)  q(…)  …r(…)  t(…)  s(…)  …  u(…)

    2) Clausal form:

    = Normalize the formulae to a (more simple) standard form.

    •  only left;  only right

    • no ~ ; no 

    which is inconsistentif and only ifthe original set was inconsistent.

    Notice: “x y … z“can be dropped.


    Example

    u false  r(f(u))

    z false  q(z)

    x q(x)  r(x)  p(x)

    Example:

    • ~ u r(f(u))

    • z ~ q(z)

    • y p(f(y))

    : is already in clausal form: ( P  P  true)

    • x p(x)  q(x)  r(x)

    Ps: usually requires much more work!


    3 unification

    • Ex.: p(f(A),y) p(x, g(x))

    • Ex.: x must become: f(A)

    • g(x) must become: g(f(A))

    • y must become: g(f(A))

    p(f(A), g(f(A)))

    3) Unification:

    • Given 2 atomic formulae:

    • find their most general common instance.

    • Most general unifier (mgu) : x -> f(A)

    • y -> g(f(A))


    4 the resolution step

    Modus tollens

    Modus ponens

    P  Q

    P

    Q

    P  Q

    ~Q

    ~P

    Q  P

    P  true

    Q true

    Q  P

    false  Q

    false  P

    Resolution

    P1 P2  …  PnQ1  ...  Qm

    R1  …  Rk P1 S1  …  Sl

    P2 …  Pn  R1  …  RkQ1  ...  Qm  S1  …  Sl

    4) The resolution step

    • Proposition logic:


    De resolutie step 2

    p(x,f(A)) q(g(x))

    r(z) p(B,z)

    r(f(A))  q(g(B))

    mgu(p(x,f(A)),p(B,z)) =

    x-> B

    z-> f(A)

    De resolutie step (2):

    • Predicate logic:

      • Example:

    = mgu applied tor(z) q(g(x))

    Clauses on which resolution is performed

    must not have any variables in common.


    5 resolution proofs

    • select 2 of them, for which resolution is possible

    AND inconsistency of the original set

    AND that F was implied by T

    5) Resolution proofs:

    • In order to prove a set of clauses inconsistent:

    • apply resolution and add the result to the set

    • if you obtain the clause false : STOP !

    This means inconsistency of the last set


    Example1

    q(x)  r(x)  p(x)

    false  r(f(u))

    x -> f(u)

    q(f(u))  p(f(u))

    false  q(z)

    z -> f(u)

    false  p(f(u))

    p(f(y))

    y -> u

    false 

    Example:

    So: inconsistent !


    A deeper study

    Ground Horn Logic

    Modus ponens

    Horn Logic

    Unification

    Clausal Logic

    Resolution

    Full Predicate Logic

    Normalization

    A deeper study:


    Horn clause logic

    • All formulae in T are of the form:

    • x1 … xk A B1 B2 … Bn

    Horn clause logic

    • where A, B1, B2,…,Bn are atoms.

    • An atom is a formula of the form p(t1,…,tm), with p a predicate symbol and t1,…,tm terms.

    • Horn clause formulae are universally quantified over all variables that occur in them.

    • B1,…,Bn are called body-atoms of the Horn clause; A is the head of the Horn clause.

    • n may be 0: in this case we say that the Horn clause is a fact.


    Wich kind of formulae can we prove

    • In Horn clause logic, we limit ourselves to prove formulae F of the form:

    • where B1, B2, …, Bn are again atoms.

    x1 … xk B1  B2  … Bn

    Wich kind of formulaecan we prove?

    • All variables are existentially quantified !


    A very simple example

    A very simple example:

    • Bosmans is a showmaster (1)

    • Showmasters are rich (2)

    • Rich people have big houses (3)

    • Big houses need a lot of maintenance (4)

    • Goal: automatically deduce that Bosmans’ house needs a lot of maintenance.


    Representation in horn logica

    Representation in Horn logica:

    • Bosmans is a showmaster (1)

    • Showmasters are rich (2)

    • Rich people have big houses (3)

    • Big houses need a lot of maintenance (4)

    • To prove:

    showmaster(Bosmans)

    p rich(p)  showmaster(p)

    p big(house(p))  rich(p)

    p lot_maint(house(p))  big(house(p))

    Lot_maint(house(Bosmans))


    Ar for ground horn clause logic

    AR for ground Horn clause logic

    Backward reasoning proof procedures based on generalized Modus Ponens


    Restricting to ground horn clauses

    • So, for now: Horn clauses without variables:

    • Example:

    showmaster(Bosmans)

    rich(Bosmans)  showmaster(Bosmans)

    big(house(Bosmans))  rich(Bosmans)

    lot_maint(house(Bosmans))  big(house(Bosmans))

    • Prove:

    lot_maint(house(Bosman))

    Restricting to groundHorn clauses:


    Easy with modus ponens

    • 3 applications of modus ponens:

    showm(Bos)

    rich(Bos)  showm(Bos)

    rich(Bos)

    big(house(Bos))  rich(Bos)

    big(house(Bos))

    lot_maint(house(Bos))  big(house(Bos))

    lot_maint(house(Bos))

    • gives the desired conclusion.

    Easy with modus ponens !


    Modus ponens in ar

    • Modus ponens is correct:

    B

    A  B

    For any interpretation making both B and A  B true(= any model of {B , A  B} )

    A

    Modus ponens in AR:

    A is also true in this interpretation (see truth tables)

    • Problem: how to organize this into a procedure which is also complete(for ground Horn clauses)?


    Inconsistency

    • Theorem:

    Let T be a theory and F a formula.

    T implies Fif and only if T  {~F} is inconsistent.

    Inconsistency:

    • A theory T is inconsistent if it has NO model.

    • Proof:

    T implies F iff Each model of T makes F true

    iff Each model of T makes ~F false

    iffT  {~F} has no model

    iffT  {~F} is inconsistent


    The extended example

    • Prove that the theory:

    The extended example:

    showm(Bos)

    belg(Bos)

    european(Bos)  belg(Bos)

    rich(Bos)  showm(Bos)  european(Bos)

    big(house(Bos))  rich(Bos)

    lot_maint(house(Bos))  big(house(Bos))

    ~ lot_maint(house(Bos))

    • is inconsistent.

    • Problem: this is NOT a Horn clause theory !?


    Refutation proofs the false predicate

    • We introduce a new predicate symbol:

    false

    Refutation proofs:the “false” predicate

    • We agree that false has the truth value ‘false’ under every interpretation.

    • Imagine that we defined false as : false p  ~p for some predicate p


    Definite goals

    • In the Horn logic setting F has the form:

    x1 … xm B1  B2  … Bn

    “definite” goals:

    • So what is the form of ~F?

    • ~(x1 … xm B1  B2  … Bn)

    •  x1 … xm ~(B1  B2  … Bn)

    •  x1 … xm false  ~(B1  B2  … Bn)

    •  x1 … xm false  B1  B2  … Bn

    A  ~B  A  B

    • Observe: ~F is again a Horn clause !!


    Back to the example

    • The extended theory (to be proven inconsistent) now is:

    showm(Bos)

    belg(Bos)

    european(Bos)  belg(Bos)

    rich(Bos)  showm(Bos)  european(Bos)

    big(house(Bos))  rich(Bos)

    lot_maint(house(Bos))  big(house(Bos))

    false  lot_maint(house(Bos))

    Back to the example

    • a ground Horn clause theory !


    Modus ponens generalized

    A  B1  B2  … Bi …  Bn

    Bi  C1  C2  …  Cm

    A  B1  B2  … C1  C2  …  Cm …  Bn

    Modus ponensgeneralized:

    • Ordinary Modus ponens is the special case with:

      • n = i = 1 and m =0

    • Correctness: via truth tables


    Some backward reasoning steps in the example

    false  lot_maint(house(Bos))

    lot_maint(house(Bos))  big(house(Bos))

    false  big(house(Bos))

    big(house(Bos))  rich(Bos)

    Some backward reasoning steps in the example:

    • and so on ...

    false  big(house(Bos))

    false  rich(Bos)


    The backward procedure the idea

    • Convert F into a definite goal:

    false  B1  B2  …  Bi  …  Bn

    • until: is deduced.

    false 

    we have proven inconsistency ofT  {~F}

    The backward procedure:the idea

    • Apply generalized modus ponens to the body-atoms Bi of the goal, using the Horn clauses of T

    • Then: a false formula ia a consequence of T  {~F}


    Backwards procedure

    Goal := false  B1  B2  …  Bn;

    Repeat

    Select someBiatom from the body of Goal

    Select some clauseBi  C1  C2  …  CmfromT

    ReplaceBiin the body of Goal byC1  C2  …  Cm

    UntilGoal = false  or no more Selections possible

    Backwards procedure

    • On top of this you need to apply backtracking over the selected clauses and the selected body atoms.

    • If the algorithm stops because it has tried all these alternatives: F was not implied!


    Back to the example1

    Back to the example

    Step 0: Goal :=false lot_maint(house(Bos))

    select: lot_maint(house(Bos))  big(house(Bos))

    Step 1: Goal :=false big(house(Bos))

    select: big(house(Bos))  rich(Bos)

    Step 2: Goal :=false rich(Bos)

    select: rich(Bos)  showm(Bos)  european(Bos)

    Step 3: Goal :=false showm(Bos)  european(Bos)

    select:showm(Bos)

    Step 4: Goal :=false european(Bos)

    select:european(Bos)  belg(Bos)

    Step 5: Goal :=false belg(Bos)

    select: belg(Bos)

    Step 6: Goal :=false 


    Another example propositional

    p  q  r

    q  t

    q  s

    r  n

    r  o

    s

    o

    n

    Another example (propositional)

    • Prove: p

    • Observe: non-determinism on both atom selection and on clause selection !

      • we only illustrate the clause selection here


    Search tree traversed by the backward procedure

    false q r

    false t r

    false  s r

    false r

    false n

    false o

    false 

    false 

    Search tree traversed bythe backward procedure

    false p

    p  q  r

    q  t

    q  s

    r  n

    r  o

    s

    o

    n


    The backward procedure is efficient

    The backwardprocedure is efficient

    • The proof is goal directed towards the theorem.

      • no exploration of irrelevant rules

    • Different search methodescan be used to traverse this search tree.

    • Atom-selection may influence efficiency too:

      • ex.: by detecting a failing branch sooner

    • but has no impact on whether or not we find a solution

      (in case there are only finitely many ground Horn clauses)


    Completeness

    (2)

    (1)

    false  p

    false 

    (1)

    false  p

    (1)

    ……

    Completeness:

    • Example:

    false  p

    p  p(1)

    p (2)

    • Possible derivations:

    false  p

    • Is only complete if the search tree is traversed using a complete search method.


    Representation power of ground horn clauses

    • Example:

    showm(Bos) showm_Bos

    big(house(Bos)) big_house_Bos

    Representation-power of ground Horn clauses

    • Is  a subset of propositional logic.

    • In general, more expressive logics are needed.

      • Essence: with variables, one formula may be equivalent to a very large number of propositional formulae.


  • Login