Definite Programs - PowerPoint PPT Presentation

1 / 21
About This Presentation
Title:

Definite Programs

Description:

Emden & Kowalski. Theorem: Let P be a definite program. Then ... Van Emden & Kowalski: The Semantics of Predicate Logic as a Programming Language, ... – PowerPoint PPT presentation

Number of Views:62
Avg rating:3.0/5.0
Slides: 22
Provided by: Steffen56
Category:

less

Transcript and Presenter's Notes

Title: Definite Programs


1
Definite Programs
2
Definite Programs
  • Definition A definite program clause is a
    clause of the form
  • A ? B1 ? ? Bn
  • which contains precisely one atom A in its
    consequent. A is called the head, and B1 ? ?
    Bn the body of the clause.
  • Definition A definite program is a finite set
    of definite program clauses.
  • Definition A definite goal is a clause of the
    form ? B1 ? ? Bn

3
Model Intersection Property
  • Proposition Let P be a definite program and
    Mii?I a non-empty set of Herbrand models for P.
    Then ?i?IMi is an Herbrand model for P.If
    Mii?I contains all Herbrand models for p, then
  • MP ?i?IMi is the least Herbrand model for P.
  • Proof ?i?IMi is an Herbrand interpretation.
    Show, that it is a model.Each definite program
    has BP as model, hence I is not empty and one can
    show that MP is a model.
  • Idea MP is the most natural model for P.

4
Emden Kowalski
  • Theorem Let P be a definite program. ThenMP
    A?BP A is a logical consequence of P.
  • Proof A is a logical consequence of P
    iffP?A is unsatisfiable iffP?A has no
    Herbrand model iffA is true wrt all Herbrand
    models of P iffA ? MP.

5
Herbrand-Interpretations
Herbrand-Base
Q(a) P(f(b))
Q(a) P(f(b))
I1
The true atoms of the Herbrand base correlate
with the corresponding interpretation.
!
I2
P(f(b))?
Q(a)?
P(f(b))?
Q(a)?
I3
6
Idea
BP
  • (2BP, ?) is a lattice of all Herbrand
    interpretations of P with the bottom element ?
    and the top element BP
  • The least upper bound (lub) of a set of
    interpretations is the union, the greatest lower
    bound is the intersection.

MP
  • ?

7
Properties of Lattices
  • Definition Let L be a lattice and TL?L a
    mapping. T is called monotonic, if x?y
    implicates, that T(x)?T(y).
  • Definition Let L be a lattice and X?L, X is
    called directed,if each finite sub-set of X has
    an upper bound in X.
  • Definition Let L be a lattice and TL?L a
    mapping. T is called continuous,if for each
    directed subset X T(lub(X))lub(T(X)).

8
Van Emden Kowalski The Semantics of Predicate
Logic as a Programming Language, J. ACM 23, 4,
1976, pp. 733-742.
  • Definition Let P be a definite program. The
    mappingTP 2BP? 2BP is defined as follows Let I
    be an Herbrand interpretation. ThenTP(I)A?BP
    A ? A1 ? ? An is a ground instance of a clause
    in P and A1,,An ?I

9
Practice
Let P be a definite program. even(f(f(x)) ?
even(x). odd(f(x) ? even(x). even(0).
Let I0?. Then I1TP(I0)?
TP(I)A?BP A ? A1 ? ? An is a ground instance
of a clause in P and A1,,An ?I
10
TP links declarative and procedural semantics
  • Let I0?.
  • Then
  • I1TP(I0)even(0),
  • I2TP(I1)even(0), even(f(f(0)),
  • I3TP(I2)even(0), even(f(f(0)),
    even(f(f(f(f(0)))),
  • Example Let P be a definite program.
  • even(f(f(x)) ? even(x).even(0).

TP(I)A?BP A ? A1 ? ? An is a ground instance
of a clause in P and A1,,An ?I
TP is monotonic.
11
Practice
Let P be a definite program. plus(x,f(y),f(z))
lt- plus(x,y,z)? plus(f(x),y,f(z)) lt- plus
(x,y,z)? plus(0,0,0)?
  • Let I0?.
  • Then
  • I1TP(I0)?

TP(I)A?BP A ? A1 ? ? An is a ground instance
of a clause in P and A1,,An ?I
12
Practice
Let I0?. Then I1TP(I0)plus(0,0,0) I2TP(I1)
plus(0,0,0), plus(f(0),0,f(0),
plus(0,f(0),f(0)) I3TP(I2)plus(0,0,0),
plus(f(0),0,f(0), plus(0,f(0),f(0)),
plus(f(f(0)),0,f(f(0))), plus(0,f(f(0)),f(f(0))),
plus(f(0),f(0),f(f(0)), plus(f(0),f(0),f(f(0)))..
.
Let P be a definite program. plus(x,f(y),f(z))
lt- plus(x,y,z)? plus(f(x),y,f(z)) lt- plus
(x,y,z)? plus(0,0,0)?
TP(I)A?BP A ? A1 ? ? An is a ground instance
of a clause in P and A1,,An ?I
13
Continuity
  • Proposition The mapping TP is continuous for
    each definite program P.
  • Proof Let X be a directed subset of 2BP.Note
    first, that a I?X exists and that for all
    A1,,An A1,,An ?I iff A1,,An
    ?lub(X).We have to show, that
    TP(lub(X))lub(TP(X)) for each directed subset
    X.A?TP(lub(X)) iffA ? A1 ? ? An is a ground
    instance of a clause in P and A1,,An
    ?lub(X) iffA ? A1 ? ? An is a ground instance
    of a clause in P and A1,,An ?I, for some I?X
    iffA?TP(I) for some I?X iffA ? lub(TP(X))

14
Fixpoint-Model
  • Proposition Let P be a definite program and I be
    an Herbrand interpretation of P. Then I is a
    model for P iff TP(I) ?I.
  • ? ?
  • Let I be an Herbrand interpretation, which is not
    a model of P and TP(I) ?I. Then there exist
    ground instances A, A1,,An?I and a clause A ?
    A1 ? ? An in P. Then A?TP(I) ?I. Refutation.?

15
Ordinal Numbers
1st infinite ordinal ?? 1,2,3,...
  • finite ordinals
  • 0 Ø
  • 1 Ø
  • 2 Ø,Ø
  • 3 Ø, Ø,Ø,Ø
  • ...
  • if ??1 for some ?, ? is called a successor
    ordinal (e.g. finite ordinals gt 0), else ? is
    called a limit ordinal (e.g. 0, ?)?

16
Transfinite Induction
  • Let P(?) be a property of ordinals. Assume that
    for all ordinals ?, if P(?) holds for all ?lt?,
    then P(?) holds. Then P(?) holds for all
    ordinals ?.

17
Ordinal Powers of T
  • Definition
  • let L be a complete lattice and TL?L be
    monotonic. Then we define
  • T??????
  • T?????T?T???????? if?? is a successor ordinal
  • T?????lub?T?????????if?? is a limit ordinal
  • T??????
  • T?????T?T???????? if?? is a successor ordinal
  • T?????lub?T?????????if?? is a limit ordinal
  • Example

18
Fixpoint Characterisation of the Least Herbrand
Model
  • Theorem Let P be a definite program. Then
    MPlfp(TP)TP??, whereT??T(T?(?-1)), is ? is a
    successor ordinal T??lubT?? ?lt?, if ? is a
    limit ordinal
  • Proof MPglbI I is an Herbrand model for
    P glbI TP(I) ?I lfp(TP)
    (not shown here) TP??.

19
Answer
  • Definition Let P be a definite program and G a
    definite goal. An answer for P?G is a
    substitution for variables of G.
  • Definition Let P be a definite program, G a
    definite goal ? A1 ? ? An and ? an answer for
    P?G. We say that ? is a correct answer for
    P?G, if ?((A1 ? ? An)?) is a logical
    consequence of P.The answer no is correct if
    P?G is satisfiable.
  • Example

20
  • Theorem
  • Let P be a definite program and G a definite goal
  • ? A1 ? ? An. Suppose ? is an answer for P?G,
    such that (A1 ? ? An)? is ground. Then the
    following are equivalent
  • ???? is correct
  • 2. (A1 ? ? An)? is true wrt every Herbrand model
    of P
  • 3. (A1 ? ? An)? is true wrt the least Herbrand
    model of P.

21
  • Proofit suffices to show that 3 implies 1(A1 ?
    ? An)? is true wrt the least Herbrand model of P
    implies(A1 ? ? An)? is is true wrt all Herbrand
    models of P implies(A1 ? ? An)? is false wrt
    all Herbrand models of P implies
  • P?(A1 ? ? An)? has no Herbrand
    modelsimplies P?(A1 ? ? An)? has no models.
Write a Comment
User Comments (0)
About PowerShow.com