thesis

Raisonnement sur les contraintes en programmation en logique

Defense date:

Jan. 1, 1989

Edit

Institution:

Nice

Disciplines:

Authors:

Abstract EN:

Pas de résumé disponible.

Abstract FR:

La programmation en logique avec contraintes est un développement récent qui vise à combiner l'aspect déclaratif de la programmation en logique et l'efficacité de la programmation impérative pour certaines classes de problèmes combinatoires. Elle se fonde sur l'introduction de nouveaux domaines de calcul et de résolveurs de contraintes pour ces domaines. Les contraintes sont ainsi utilisées activement pour élaguer l'espace de recherche. Cependant, une limitation fondamentale des langages de programmation en logique avec contraintes actuels réside dans leur incapacité à raisonner sur les contraintes au niveau du langage ; en effet, le traitement des contraintes s'effectue uniquement à des mécanismes de résolution de contraintes incorporés au système et auxquels l'utilisateur n'a pas accès. Afin de surmonter ces limitations nous proposons deux nouvelles extensions : un mécanisme local d'inférence conditionnelle permettant de diriger l'exécution par le contexte ; des règles de chainage avant agissant sur l'ensemble des contraintes afin de le simplifier ou d'en déduire de nouvelles contraintes. Ces mécanismes sont basés sur le filtrage et ses extensions à des domaines de calcul plus riches, disponibles dans la programmation en logique avec contraintes ; les traitements sont effectués de manière incrémentale et guidés par la création de nouvelles contraintes. Notre thèse contient un développement complet des propositions énoncées ci-dessus, depuis leurs fondements théoriques jusqu'à l'application du système résultant à des problèmes industriels complexes, en passant par leur réalisation pratique au sein du langage CHIP