Thèse soutenue

Preuves de théorèmes inductifs et synthèse de programmes récursifs

FR  |  
EN
Auteur / Autrice : Serge Muller
Direction : Jacques Chazarain
Type : Thèse de doctorat
Discipline(s) : Informatique
Date : Soutenance en 1996
Etablissement(s) : Nice
Partenaire(s) de recherche : Autre partenaire : Université de Nice-Sophia Antipolis. Faculté des sciences
Jury : Président / Présidente : Igor Litovsky
Examinateurs / Examinatrices : Emmanuel Kounalis, Michel Rueher
Rapporteurs / Rapporteuses : Françoise Bellegarde, Michaël Rusinowitch

Résumé

FR

Le sujet de cette thèse concerne l'automatisation des preuves inductives de spécifications et de la synthèse de programmes récursifs. Plus précisément, nous avons focalisé nos travaux sur les preuves de formules de la forme pour tout x, il existe y tel que phi(x,y) dans le modèle initial d'un système équationnel. Ces formules représentent des spécifications de problèmes. La difficulté d'une telle approche provient du fait que de telles preuves nécessitent en général plus qu'un simple raisonnement équationnel et ont recours à des raisonnements inductifs. Elles sont de plus rarement automatiques. Le processus automatique que nous décrivons utilise le concept d'ensemble test d'un système de réécriture qui capture la notion de preuve par récurrence. Il permet alors de décomposer les preuves suivant des schémas de récurrence en preuves de lemmes plus simples, et cela d'une manière automatique. Nous avons étendu le processus pour permettre de simplifier des égalités en utilisant l'injectivité des symboles de fonction, et pour traiter le cas des formules purement existentielles. En outre nous donnons un critère suffisant pour réfuter des formules non valides dans le modèle initial. Notre contribution à la synthèse de programmes se place dans le cadre de l'approche constructive. Notre processus de synthèse consiste à extraire le programme désiré de la preuve obtenue par notre processus de preuve. Nous avons prouvé la correction des programmes synthétisés vis à vis de la spécification et de la théorie considérées. Quant à la terminaison elle est garantie par la nature de l'ordre utilisé dans la preuve. Ces méthodes ont été implantées dans le système LEMMA qui synthétise des programmes logiques. Il a permis de construire automatiquement des programmes dans des domaines comme les entiers et les listes.