Web Science & Technologies University of Koblenz ▪ Landau, Germany Models of Definite Programs.

19
Web Science & Technologies University of Koblenz ▪ Landau, Germany Models of Definite Programs

description

Steffen Staab Advanced Data Modeling 3 of 19 WeST Model Intersection Property Proposition: Let P be a definite program and {M i } i  I a non-empty set of Herbrand models for P. Then  i  I M i is an Herbrand model for P. If {M i } i  I contains all Herbrand models for p, then M P :=  i  I M i is the least Herbrand model for P.

Transcript of Web Science & Technologies University of Koblenz ▪ Landau, Germany Models of Definite Programs.

Page 1: Web Science & Technologies University of Koblenz ▪ Landau, Germany Models of Definite Programs.

Web Science & TechnologiesUniversity of Koblenz ▪ Landau, Germany

Models of Definite Programs

Page 2: Web Science & Technologies University of Koblenz ▪ Landau, Germany Models of Definite Programs.

Steffen [email protected]

Advanced Data Modeling2 of 19

WeST

Herbrand-Interpretations

I1

Herbrand-Base

I2

I3

P(f(b))

~Q(a) ~P(f(b))…

Q(a) ~P(f(b)) ~Q(a)

The true atoms of the Herbrand base correlate with the corresponding interpretation.

Q(a) P(f(b))…

Page 3: Web Science & Technologies University of Koblenz ▪ Landau, Germany Models of Definite Programs.

Steffen [email protected]

Advanced Data Modeling3 of 19

WeST

Model Intersection Property

Proposition: Let P be a definite program and {Mi}iI a non-empty set of Herbrand models for P. Then iIMi is an Herbrand model for P.If {Mi}iI contains all Herbrand models for p, then

MP :=iIMi is the least Herbrand model for P.

Page 4: Web Science & Technologies University of Koblenz ▪ Landau, Germany Models of Definite Programs.

Steffen [email protected]

Advanced Data Modeling4 of 19

WeST

Idea

• (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.

BP

MP

Page 5: Web Science & Technologies University of Koblenz ▪ Landau, Germany Models of Definite Programs.

Steffen [email protected]

Advanced Data Modeling5 of 19

WeST

Model Intersection Property

Proposition: Let P be a definite program and {Mi}iI a non-empty set of Herbrand models for P. Then iIMi is an Herbrand model for P.If {Mi}iI contains all Herbrand models for p, then

MP :=iIMi is the least Herbrand model for P.

Proof: iIMi 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.

Page 6: Web Science & Technologies University of Koblenz ▪ Landau, Germany Models of Definite Programs.

Steffen [email protected]

Advanced Data Modeling6 of 19

WeST

Emden & Kowalski

Theorem: Let P be a definite program. ThenMP = {ABP : 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.

Page 7: Web Science & Technologies University of Koblenz ▪ Landau, Germany Models of Definite Programs.

Steffen [email protected]

Advanced Data Modeling7 of 19

WeST

Properties of Lattices

Definition Let L be a lattice and T:LL a mapping. T is called monotonic, if xy implicates, that T(x)T(y).

Page 8: Web Science & Technologies University of Koblenz ▪ Landau, Germany Models of Definite Programs.

Steffen [email protected]

Advanced Data Modeling9 of 19

WeST

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. Then

TP(I)={ ABP: A ← A1 … An is a ground instance of a clause in P and {A1,…,An }I }

Page 9: Web Science & Technologies University of Koblenz ▪ Landau, Germany Models of Definite Programs.

Steffen [email protected]

Advanced Data Modeling10 of 19

WeST

Practice

Let P be a definite program.

even(f(f(x)) ← even(x).odd(f(x) ← even(x).even(0).

Let I0=.

ThenI1=TP(I0)=?

TP(I)={ABP: A ← A1 … An is a ground instance of a clause in P and {A1,…,An }I}

Page 10: Web Science & Technologies University of Koblenz ▪ Landau, Germany Models of Definite Programs.

Steffen [email protected]

Advanced Data Modeling11 of 19

WeST

TP links declarative and procedural semantics

Example Let P be a definite program.

even(f(f(x)) ← even(x).even(0).

Let I0=.

ThenI1=TP(I0)={even(0)},

I2=TP(I1)={even(0), even(f(f(0))},

I3=TP(I2)={even(0), even(f(f(0)), even(f(f(f(f(0))))},…

TP is monotonic.

TP(I)={ABP: A ← A1 … An is a ground instance of a clause in P and {A1,…,An }I}

Page 11: Web Science & Technologies University of Koblenz ▪ Landau, Germany Models of Definite Programs.

Steffen [email protected]

Advanced Data Modeling12 of 19

WeST

Practice

Let P be a definite program.

plus(x,f(y),f(z)) <- plus(x,y,z)plus(f(x),y,f(z)) <- plus (x,y,z)plus(0,0,0)

Let I0=.

ThenI1=TP(I0)=?

TP(I)={ABP: A ← A1 … An is a ground instance of a clause in P and {A1,…,An }I}

Page 12: Web Science & Technologies University of Koblenz ▪ Landau, Germany Models of Definite Programs.

Steffen [email protected]

Advanced Data Modeling13 of 19

WeST

Practice

TP(I)={ABP: A ← A1 … An is a ground instance of a clause in P and {A1,…,An }I}

Let P be a definite program.

plus(x,f(y),f(z)) <- plus(x,y,z)plus(f(x),y,f(z)) <- plus (x,y,z)plus(0,0,0)

Let I0=.

ThenI1=TP(I0)={plus(0,0,0)}

I2=TP(I1)={plus(0,0,0), plus(f(0),0,f(0)), plus(0,f(0),f(0))}

I3=TP(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)))}...

Page 13: Web Science & Technologies University of Koblenz ▪ Landau, Germany Models of Definite Programs.

Steffen [email protected]

Advanced Data Modeling14 of 19

WeST

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 ATP(I) I. Refutation.

Page 14: Web Science & Technologies University of Koblenz ▪ Landau, Germany Models of Definite Programs.

Steffen [email protected]

Advanced Data Modeling15 of 19

WeST

Ordinal Powers of T

Definitionlet L be a complete lattice and T:L→L be monotonic. Then we

defineT

TTT if is a successor ordinalTlubTif is a limit ordinalT↓⊤T↓TT↓ if is a successor ordinalT↓lubT↓if is a limit ordinal

Example

Page 15: Web Science & Technologies University of Koblenz ▪ Landau, Germany Models of Definite Programs.

Steffen [email protected]

Advanced Data Modeling16 of 19

WeST

Fixpoint Characterisation of the Least Herbrand Model

Theorem Let P be a definite program. Then MP=lfp(TP)=TP, whereT=T(T(-1)), if is a successor ordinal T=lub{T: <}, if is a limit ordinal

Proof MP=glb{I: I is an Herbrand model for P}

=glb{I: TP(I) I}=lfp(TP) (not shown here)

=TP.

Page 16: Web Science & Technologies University of Koblenz ▪ Landau, Germany Models of Definite Programs.

Steffen [email protected]

Advanced Data Modeling17 of 19

WeST

Greatest Fixpoint

Greatest Fixpoint not as easy to have:Example program

p(f(x)) ← p(x) q(a) ← p(x)

TP↓{q(a)}TP↓({}=gfp(TP)

Page 17: Web Science & Technologies University of Koblenz ▪ Landau, Germany Models of Definite Programs.

Steffen [email protected]

Advanced Data Modeling18 of 19

WeST

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

Page 18: Web Science & Technologies University of Koblenz ▪ Landau, Germany Models of Definite Programs.

Steffen [email protected]

Advanced Data Modeling19 of 19

WeST

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 correct2. (A1 … An) is true wrt every Herbrand model of P3. (A1 … An) is true wrt the least Herbrand model of P.

Page 19: Web Science & Technologies University of Koblenz ▪ Landau, Germany Models of Definite Programs.

Steffen [email protected]

Advanced Data Modeling20 of 19

WeST

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 models

implies P{~(A1 … An)} has no models.