§5.1 Introduction
La programmation logique est bas´ee sur une approche logique de la repr´esentation des connaissances. L’id´ee en est de doter les syst`emes intelligents d’une sp´ecification logique des connaissances qu’ils poss`edent pour que le contrˆole puissent se faire syst´ematiquement . Mal- heureusement, cet id´eal n’est pas encore atteint dans les syst`emes de programmation logique actuelle `a cause de leur diversit´e et parce que le contˆole n’est pas assur´e au niveau du syst`eme mais plutˆot par le programmeur qui fait aussi intervenir des moyens de contrˆole extra-logiques. Il n’en demeurre pas moins que la performance d’un m´ecanisme de computation est ´evalu´ee par la comparaison entre son comportement et sa sp´ecification logique fournie par les s´emantiques d´eclaratives.
Le probl`eme principal en programmation logique est de trouver les s´emantiques d´eclaratives ad´equates pour d´ecrire les syst`emes logiques. Ces s´emantiques sont souvent d´efinies en uti- lisant des op´erateurs naturels agissant sur les ensembles ordonn´es d’interpr´etations, ce qui donne une d´efinition math´ematique des mod`eles de programmes. Nous consid´erons tout au long de ce paragraphe les interpr´etations de Herbrand. L’ensemble de ces interpr´etations est toujours identifi´e au power set de la base de Herbrand.
§5.2 S´emantique du plus petit mod`ele
Nous commen¸cons par rappeler le th´eor`eme de Tarski sur les structures discr`etes.
Th´eor`eme 11 Apt, Kowalski et Van emden [22] Soit X un treillis complet et T : X −→ X une application monotone, alors T a un point fixe minimal lfp(T ) et maximal gf p(T ). En outre,
lf p(T ) = sup{x/T (x) ≤ x} et gfp(T ) = inf{x/x ≤ T (x)} Le mod`ele de Herbrand minimal
Ce mod`ele fera l’objet de ce paragraphe. On verra qu’il correspond pr´ecis´ement `a l’en- semble des ground atomes qui sont cons´equences logiques du programme. On obtient une caract´erisation du mod`ele de Herbrand minimal par la th´eorie du point fixe
Proposition 5.2.1 Soit P un programme et {Mi}i∈I un sous ensemble non vide de mod`eles
de Herbrand de P , alors T
i∈I
Mi est un ensemble de Herbrand pour P .
Preuve. Puisque chaque programme P a Bp comme mod`ele de Herbrand, l’ensemble des
mod`eles de Herbrand est non vide, donc l’intersection de ces mod`eles est un mod`ele qui est appel´e le mod`ele de Herbrand minimal pour P , on le note Mp.
Th´eor`eme 5.2.1 Soit P un programme positif, i.e. que ces clauses ne contiennent que des litt´eraux positifs, alors Mp ={A ∈ Bp; A est cons´equence logique de P}.
Preuve. A est cons´equence logique de P ←→ P ∪ {¬A} est insatisfaite.
←→ P ∪ {¬A} n’a pas de mod`ele de Herbrand. ←→ ¬A est faux suivant tout mod`ele de Herbrand de P .
←→ A est vrai dans tout mod`ele de Herbrand de P . ←→ A ∈ Mp.
Maintenant, on veut trouver une caract´erisation de Mp en utilisant le concept de point
fixe. Pour cela, on associe la structure de treillis complet `a l’ensemble des interpr´etations de Herbrand de ce programme. L’op´erateur de Van endem Kowalski [22] est L’application Tp : 2Bp −→ 2Bp d´efinie comme suit: Soit I une interpr´etation de Herbrand alors
Tp(I) ={A ∈ Bp; A←− A1,...An est une ”ground” instance d’une clause dans Pet {A1,...An} ⊆
I}. On v´erifie facilement que Tp est montone et donc en appliquant le th´eor`eme de Tarski,
on obtient un point fixe de Tp. L’intersection de ces points fixes coincide avec le mod`ele de
Herbrand minimal.
Th´eor`eme 12 (S´emantique du plus petit mod`ele) [Van Emden et Kowalski,1976] Par la s´emantique du plus petit mod`ele d’un programme positif, nous d´esignons la s´emantique d´etermin´ee par le plus petit mod`ele de Herbrand MP de P .
Nous obtenons le mod`ele Mpen it´erant ω fois l’op´erateur TP. Effectivement, la suite (TPn(∅)),n =
0,1,2,...ω des it´erations de Tp est croissante et elle a un point fixe
TωP(∅) = MP.
La s´emantique du plus petit mod`ele semble refl´eter le sens expect´e par les programmes lo- giques positifs d’autant plus que la minimisation de l’information positive limite aux faits explicitement impliqu´es par P . En d’autres termes, la s´emantique du mod`ele parfait est bas´ee sur une forme naturelle de l’hypoth`ese du monde clos (Closed World Assumption) Reiter,1977 [17] et [18]: Tout ce qui n’est pas cons´equence logique est faux (ni´e par ´echec).
N´eanmoins, la s´emantique du plus petit mod`ele mˆeme si elle est ad´equate `a la structure des programmes positifs, ne reste plus valable pour une classe plus g´en´erale de programmes com- prenant des pr´emisses n´egatives. Si l’inclusion de la n´egation dans les clauses de programmes fait croˆıtre le pouvoir expressif des programmes logiques, il n’en demeure pas moins que cela rend le probl`eme encore plus complexe puisque le raisonnement ne devient plus monotone. En effet, si on rajoute de nouvelles connaissances, on peut des fois r´etracter des conclusions auquelles on a d´ej`a abouties. En d’autres termes, en pr´esence de pr´emisses n´egatives, le sens commun au raisonnement est nonmonotone.
La raison principale de cette nonmonotonicit´e est que nos connaissances sont souvent in- compl`etes. Evidemment, les conclusions qu’on tire `a partir d’une base d’informations in- compl`etes peuvent ˆetre invalid´ees `a la lumi`ere d’informations plus exactes.
C’est dans cet esprit que les mod`eles parfaits ont ´et´e con¸cus.
§5.3 S´emantique du mod`ele parfait
Dans ce paragraphe, on va ´etudier une classe plus large de programmes appel´es pro- grammes logiques normaux.
Un programme logique normal est un ensemble fini de clauses de la forme A←− A1,...Ak1,¬B1,...¬Bl1 o`u A,(Ak) et (Bl) sont des atomes.
La syntaxe des clauses de programmes d´etermine des priorit´es relatives pour la minimisa- tion parmi les ground atomes en respectant les r`egles suivantes:
I. Les pr´emisses n´egatives ont une priorit´e aussi ´elev´ee que celles des tˆetes.
II. Les pr´emisses positives ont une priorit´e non moins ´elev´ee que celles des tˆetes, bien sur on assume que le programme est d´ej`a instantationn´e.
C’est notre but de d´efinir des mod`eles minimaux dans lesquelles les atomes d’une priorit´e plus ´
elev´ee sont minimis´es les premiers, mˆeme au prix d’inclure dans le mod`ele (i.e. le mettant true `
a travers le mod`ele) d’autres atomes de priorit´e moindre. Il s’ensuit, que si M est un mod`ele de P et si un nouveau mod`ele est obtenu `a partir de M en ajoutant et en soustrayant `a M des atomes, alors on consid´erera que le nouveau atome N est pr´ef´erable `a M si et seulement si l’addition de n’importe quel atome A est toujours justifi´ee par le d´eplacemant d’un atome B de priorit´e moindre. Un mod`ele M de P est dit parfait s’il n’existe aucun mod`ele de P pr´ef´erable `a lui. La d´efinition formelle est la suivante.
Definition 5.3.1 (Mod`ele parfait) [ [16] Przymisinski, 1990] Supposons que M et N sont deux mod`eles distincts du programe logique P . Nous disons que N est pr´ef´erable `a M , si pour tout atome A ∈ N\M, il existe un atome de priorit´e sup´erieure B, tel que B ∈ M\N Nous disons que le mod`ele M de P est parfait s’il n’existe aucun mod`ele pr´ef´erable `a lui. Th´eor`eme 5.3.1 (Przymusinski) Chaque mod`ele parfait est minimal. Pour un programme positif, les s´emantiques du plus petit mod`ele et du mod`ele parfait coincident
Malheureusement, les programmes logiques n’admettent pas toujours de mod`ele parfait. Exemple 2 Soit le programme
p←− ¬q , q ←− ¬p 63
Ce programme admet deux mod`eles de Herbrand minimaux M1 ={p} et M2 ={q} mais M1
est pr´ef´erable `a M2 et M2 est pr´ef´erable `a M1. Donc aucun n’est parfait.
Le probl`eme dans ce programme est qu’il ne soit pas consistant et que normalement l’assi- gnation des priorit´es entre les ”ground” atomes doit ´eviter les conflits de priorit´e (cycles). C’est pour cela que les approches de Apt, Blair et Walker Apt et al,1988 et Van Gelder [Van Gelder, 1989] [23] qui se ref`erent `a une relation d´efinie pr´ealablement quand ils utilisent la n´egation telle que cette d´efinition ne soit pas circulaire et ´evite la n´egation r´ecursive. C’est l’id´ee derri`ere l’introduction de la classe ds programmes logiques stratifi´es et qui a ´et´e ´etendue `
a la classe des programmes localement stratifi´es.
Definition 5.3.2 [Apt et al, 1988; Van Gelder, 1989] Un programme loqique est dit stratifi´e (respectivement localement stratifi´e) si on peut partitionner le programme P (repecti- vement ground(P)) en sous programmes P1,...,Pn(rep. P1,...Pλ,(λ < ω)) tels que:
i) si un symbole de pr´edicat (resp ground atome ) apparait positivement dans Pi, alors
sa d´efinition est contenue dand S
j≤i
Pj;
ii) si un symbole de pr´edicat (resp ground atome) apparait n´egativement dans Pi, alors sa
d´efinition est contenue dans S
j<i
Pj.
La diff´erence entre les d´efinitions de la stratification et de la stratification locale est que dans le premier cas, nous d´ecomposons l’ensemble des symboles de pr´edicats, tandis que dans le second, nous d´ecomposons la base de Herbrand Bp. Puisque chaque programme peut se
r´ef´erer seulement `a un ensemble fini de symboles de pr´edicats, les stratifications peuvent ˆetre consid´er´ees comme finies. D’autre part, si le programme utilise des symboles de fonctions, alors la base de Herbrand est infinie et les stratifications locales sont en g´en´eral infinies. Le th´eor`eme suivant montre qu’un programme localement stratifi´e a un plus petit mod`ele MP
par rapport `a la relation de pr´ef´erence <<.
Th´eor`eme 5.3.2 [Przymusinski 1988] [19] Chaque programme localement stratifi´e P a un mod`ele parfait unique MP.
Definition 5.3.3 (S´emantique du mod`ele parfait) [Apt et al, 1988; Van Gelder, 1989, Przy- musinski, 1988] Soit P un programme logique stratifi´e. Par la s´emantique du mod`ele parfait de P , nous d´esignons la s´emantique d´etermin´ee par l’unique mod`ele parfait MP de P .
Il est ´evident que dans le cas des programmes logiques positifs, la s´emantique du mod`ele parfait est ´equivalente `a la s´emantique du plus petit mod`ele.
Les plus petits mod`eles ont ´et´e caract´eris´es comme points fixes de l’op´erataur de Van Emden- Kowalski. Il s’av`ere que les mod`eles parfaits des programmes localement stratifi´es peuvent ˆ
etre aussi caract´eris´es comme des points fixes it´er´es et comme des it´erations de plus petits mod`eles.
Nous avons besoin d’une g´en´eralisation de l’op´erateur de Van-endem Kowalski Tp d´efini dans le
paragraphe pr´ec´edent de la fa¸con suivante: Tp(I) ={A ∈ Bp; il existe une ground instanced’une clause dans P ,A←−
A1,...,Ak1,¬B1,...¬Bl1 telle que (Ak)∈ I et (Bl) /∈ I}.
Probl`eme : L’op´erateur Tp n’est plus monotone et donc le th´eor`eme de Tarski n’est plus
appliquable dans ce cas.
Pour traiter ces op´erateurs, nous introduisons les puissances d’un op´erateur T comme suit: T ↑ 0(I) = I;
T ↑ (n + 1)(I) = T (T ↑ n(I)) ∪ T ↑ n(I); T ↑ ω(I) =S∞
n=0T n(I).
Bien sur, les T ↑ ω(I) ne sont pas ´egaux `a Tn(I) sauf si T est monotone. En effet, la suite
(T ↑ n(I)) est toujours croissante. N´eanmoins, ce concept est utilis´e pour construire le mod`ele support´e minimal MP pour un programme stratifi´e comme suit:
M0 =∅;
M1 = TP1 ↑ ω(M0); Mm = TPm ↑ ω(Mm−1); Mp = Mm.
Construction du mod`ele parfait (Seda et Hitzler 1997 [20]):
Soit P un programme localement stratifi´e. On construit la suite transfinie d’it´erations induc- tivement de la fa¸con suivante::
Pour chaque m∈ IN, on pose:
I[1,m] = T[1]m(∅);
I1 =S∞m=0I[1,m] si n∈ IN avec n ≥ 1;
I[n,m] = T[n]m(In−1) pour chaque m∈ IN;
In = S∞ m=0I[n,m]; I[P ] = S n<ω In.
Nous pouvons voir que la suite {Iα} est croissante et que la derni`ere interpr´etation est Iλ.
Nous observons aussi que les it´erations Iα ne traitent pas les atomes positifs et n´egatifs
sym´etriquement. Dans le paragraphe 5.5 consacr´e aux s´emantiques ”well- founded”, nous allons donner une d´efinition analogue mais sym´etrique.
Th´eor`eme 13 (Apt et al, 1988; Van gelder, 1989) L’unique mod`ele parfait Mp d’un
programme localement stratifi´e coincide avec Iλ.
La classe des mod`eles parfaits pr´esente l’inconv´enient d’ˆetre restreinte aux programmes locale- ment stratifi´es. Il existe d’autres programmes logiques avec une s´emantique expect´ee naturelle qui ne sont pas localement stratifi´es.
Exemple 3
p(1,2) ←−
q(X) ←− p(X,Y ),¬q(Y ) Apr`es instantiation, P prend la forme
p(1,2) ←−
q(1) ←− p(1,2),¬q(2) q(1) ←− p(1,1),¬q(1) q(2) ←− p(2,2),¬q(2) q(2) ←− p(2,1),¬q(1)
Ce programme n’est pas localement stratifi´e. En effet q(1) < q(2) et q(2) < q(1). D’autre part, il semblerait que la s´emantique expect´ee de P est bien d´efinie et elle est caract´eris´ee par le mod`ele M ={p(1,2),q(1)} de P . Le programme P semble ˆetre s´emantiquement ´equivalent au programme localement stratifi´e P∗ consistant en les clauses (1) et (2). Les clauses qui
restent sont inopportunes parce que les atomes p(1,1),p(2,1) et p(2,2) peuvent ˆetre assum´es faux dans P. En mˆeme temps, ce sont eux qui d´etruisent la stratification locale de P.
Diverses extensions de la s´emantique du mod`ele parfait ont ´et´e propos´ees parmi lesquelles, la s´emantique du mod`ele stable [ Gelfond et Lifschitz, 1988 [10]], et les s´emantiques ”well foun- ded”. Cette derni`ere semble ˆetre l’extension appropri´ee aux s´emantiques du mod`ele parfait.
§5.4 S´emantique du mod`ele stable
Les mod`eles stables ont ´et´e introduits par (Gelfond et Lifschitz, 1988 [10]) par le biais d’un point fixe qui utilise une transformation naturelle des programmes logiques. Nous com- men¸cons par introduire l’op´erateur de Gelfond Lifschitz Γ d’un programme logique normal P .
Definition 5.4.1 (Gelfond et Lifschitz, 1988 [10]) Soit P un programme logique et soit I une interpr´etation de P . Par une GL-transformation de P suivant I nous d´esignons le nouveau programme PI obtenue `a partir de P en effectuant les transformations suivantes.
Si r est une clause dans P qui contient un litt´eral n´egatif L =¬A o`u A ∈ I, alors r /∈ PI.
Pour les clauses qui restent, on ´elimine les litt´eraux n´egatifs qui satisfont I.
Puisque le programme r´esultant ne contient aucune pr´emisse n´egative, il est donc positif et ainsi, par le th´eor`eme 5.2.1, il a un plus petit mod`ele unique J . Nous d´efinissons Γ(I) = J . Proposition 5.4.1 Les points fixes de l’op´erateur Γ de Gelfond-Lifschitz pour un programme P sont des mod`eles minimaux pour P .
Ce r´esultat m`ene `a la d´efinition de la s´emantique du mod`ele stable.
Definition 5.4.2 (Gelfond et Lifschitz, 1988 [10]) Une interpr´etation I d’un programme logique P est dite mod`ele stable de P si Γ(I) = I. Si le programme P a un mod`ele stable unique Mp, alors sa s´emantique du mod`ele stable est d´etermin´ee par l’unique mod`ele expect´e
”intended” Mp.
En g´en´eral, un programme logique peut avoir un ou plusieurs mod`eles stables ou n’en avoir aucun. Par exemple, le programme p←− ¬p n’a aucun mod`ele stable, alors que le programme
p←− ¬q , q ←− ¬p a deux mod`eles stables. N´eanmoins, dans le cas des programmes locale- ment stratifi´es, les mod`eles stables sont toujours uniques.
Th´eor`eme 14 [Gelfond et Lifschitz, 1988] Chaque programme localement stratifi´e a un mod`ele stable unique qui coincide avec l’unique mod`ele parfait de P .
l’avantage des s´emantiques des mod`eles stables est qu’elles permettent d’´etendre la syntaxe des programmes et qu’elles aient une d´efinition simple et ´el´egante. N´eanmoins, elles sont d´efinies pour une classe restrictive de programmes et elles ne semblent pas mener aux s´emantiques expect´ees (intended).
§5.5 S´emantiques du mod`ele ”well founded”
Les s´emantiques ”well founded” ont ´et´e introduits par (Van Gelder et al, 1990 [23]) et semble ˆetre l’extension la plus ad´equate des s´emantiques du mod`ele parfait pour la classe de tous les programmes logiques. Dans ce paragraphe, nous utiliserons l’approche du plus petit point fixe it´er´e propos´e par Przymusinski 1990 [16] qui semble ˆetre une extension naturelle des plus petits mod`eles et des mod`eles parfaits.
Definition 5.5.1 (Przymusinski, 1990 [16]) Supposons que P est un programme lo- gique et J une interpr´etation. L’op´erateur θj : Ip −→ Ip sur l’ensemble des interpr´etations
de P est d´efini comme suit:
θj(I) ={A ∈ Bp; il existe une clause A−→ A1,...An,¬B1,...¬Bm telle que Ai ∈ I pour tout
i≤ n et Bj ∈ J pour tout j ≤ m}./
Intuitivement, l’interpr´etation J repr´esente les faits connus en cours pour ˆetre vrais ou faux, les faits vrais dans θj(I) consistent en les atomes qui peuvent ˆetre d´eriv´es en une seule ´etape
du programme en assumant que tous les faits dans J sont maintenus et que tous les faits positifs dans I sont vrais. Les faits faux dans θj(I) consistent en les atomes dont la fausset´e
peut ˆetre d´eduite en une seule ´etape (en utilisant l’hypoth`ese du monde clos) `a partir du programme P et en assumant que tous les faits dans J sont maintenus et que tous les faits n´egatifs sont vrais.
Th´eor`eme 15 (Przymusinski, 1990 [16]) Pour chaque interpr´etation J , l’op´erateur θJ
est monotone et il a un plus petit point fixe unique donn´e par θ↑ωJ . On va d´esigner le plus petit point fixe de θj par Ω(J ), i.e.
Ω(J) = θJ↑ω.
Intuitivement, le plus petit point fixe Ω(J ) = θJ↑ω de θJ contient tous les faits dont la v´erit´e ou
la fausset´e peut ˆetre d´eduite (en utilisant l’hypoth`ese du monde clos) `a partir de P connaissant J . L’op´erateur Ω a un F-plus petit point fixe unique.
Th´eor`eme 5.5.1 [Przymusinski, 1989] L’op´erateur Ω a toujours un F-plus petit point fixe MP, i.e. une F-plus petite interpr´etation Mp telle que
Ω(MP) = MP
De plus, tous les points fixes de Ω sont des mod`eles minimaux pour P . Nous donnons alors la d´efinition du mod`ele ”well-founded”.
Definition 5.5.2 [Przymusinski, 1990 [16] Nous appelons l’unique F-plus petit point fixe MP de Ω le mod`ele well founded de P .
Maintenant, nous introduisons les s´emantiques well-founded pour les programmes logiques. Definition 5.5.3 [Van Gelder et Al, 1990] Les s´emantiques ”well founded” d’un pro- gramme logique sont d´etermin´ees par l’unique ”well founded” mod`ele MP.
Pour obtenir une construction du mod`ele MP ”well founded” d’un programme P , nous
d´efinissons la suite {In} d’interp´etations de P .
I0 =∅;
In+1 = Ω(In) = θI↑ωα; Iα =S{Iα; α < δ}.