Thèse soutenue

Transformations de programmes logiques avec contraintes

FR  |  
EN
Auteur / Autrice : Nacera Bensaou
Direction : Irène Guessarian
Type : Thèse de doctorat
Discipline(s) : Informatique
Date : Soutenance en 1996
Etablissement(s) : Paris 6

Mots clés

FR

Mots clés contrôlés

Résumé

FR

Nous etudions les transformations par depliage/pliage des programmes clp. Notre contribution dans ce domaine est l'extension des resultats de correction des programmes obtenus dans le cadre de la programmation logique au cadre de la programmation clp. Nous definissons, pour nos programmes, une semantique operationnelle et une semantique de point fixe basees sur la notion de c-modeles a laquelle nous ajoutons la notion explicite d'implication entre contraintes. Nous etendons le systeme de transformation de tamaki-sato aux programmes clp. Les transformations que nous definissons sont: la regle de definition, le depliage, le pliage, la regle de remplacement et des regles de simplification de clauses et de contraintes. Nous en donnons ensuite des preuves de correction totale basees sur l'operateur tp. La premiere forme et la deuxieme forme du pliage sont respectivement les extensions des pliages de tamaki-sato et de celui de gardner-shepherdson aux programmes clp. Nous montrons egalement que le pliage modifie propose par seki s'etend aux programmes clp. Nous introduisons trois regles de remplacement d'une conjonction d'atomes contraints par une autre: la regle de substitution necessite l'equivalence des deux conjonctions dans toute interpretation et pour toute substitution. Pour les deux autres formes, il suffit de valider cette equivalence seulement une fois, si les programmes ne sont soumis qu'a des transformations totalement correctes. La premiere forme etend la regle de remplacement de gardner-shepherdson aux programmes clp. La seconde forme, plus generale, est parametree par la semantique. Enfin, nous appliquons a des programmes clp lineaires recursifs la strategie de fusion de boucles, proposee par debray pour les programmes logiques