Extending Superposition with Integer Arithmetic, Structural Induction, and Beyond

Résumé : Le concept central de théorème désigne une assertion justifiée par un argument irréfutable agencé selon des règles formelles, qu'on appelle une preuve. Prouver des théorèmes est utile à la fois en Informatique et en Mathématiques. Cependant, beaucoup de théorèmes utiles, tels que ceux engendrés par la vérification formelle qu'un programme respecte une spécification, sont trop pénibles et inintéressants pour mériter l'attention d'experts humains; plusieurs décennies de recherches ont donc été consacrées au domaine de la démonstration automatique. La Superposition est une technique efficace permettant de prouver les théorèmes exprimés en logique du premier ordre avec égalité (en bref, la capacité de remplacer mutuellement deux objets égaux dans n'importe quelle expression). Pourtant, la Superposition montre ses limites dans beaucoup de cas où des théories spécifiques ou du raisonnement par récurrence sont nécessaires. Dans cette thèse, nous développons de nouvelles extensions à la Superposition; nous soutenons que cette dernière se prête bien à l'ajout de règles d'inférence et de mécanismes de raisonnement supplémentaires. Tout d'abord, nous développons un système d'inférence qui donne à la Superposition les moyens de raisonner dans l'arithmétique linéaire entière, une théorie activement utilisée et étudiée dans d'autres domaines de la preuve automatique tels que SMT (Satisfiabilité Modulo Théories). L'arithmétique peut également permettre des encodages vers la logique du premier ordre plus efficaces pour les structures discrètes totalement ordonnées — par exemple, la logique temporelle. Nous définissons ensuite un mécanisme permettant aux prouveurs fondés sur la Superposition de raisonner par récurrence sur des types algébriques (naturels, listes, arbres binaires, etc.) Le raisonnement par récurrence est très courant en Mathématiques et en Informatique, mais son intégration dans les systèmes de preuve dédiés à la logique du premier ordre a été peu étudiée. Enfin, nous présentons un système de détections de théories axiomatiques capable de déceler la présence de structures algébriques connues dans un ensemble de formules. Ce système rappelle la manière dont un mathématicien qui étudie un nouvel objet peut découvrir que ce dernier relève d'une structure connue — comme les groupes — ce qui lui permet de mobiliser ses connaissances sur cette théorie. Cette thèse comprend également une part importante de travail d'implémentation : toutes les contributions listées ci-dessus ont été incorporées dans une bibliothèque et un prouveur automatique, Zipperposition; tous deux sont écrits en OCaml et publiés sous licence libre.
Type de document :
Thèse
Logic in Computer Science [cs.LO]. École polytechnique, 2015. English
Liste complète des métadonnées

Littérature citée [78 références]  Voir  Masquer  Télécharger

https://hal.archives-ouvertes.fr/tel-01223502
Contributeur : Simon Cruanes <>
Soumis le : mardi 3 novembre 2015 - 15:23:37
Dernière modification le : vendredi 25 mai 2018 - 12:02:06
Document(s) archivé(s) le : jeudi 4 février 2016 - 10:44:58

Licence


Distributed under a Creative Commons Paternité - Pas de modifications 4.0 International License

Identifiants

  • HAL Id : tel-01223502, version 1

Collections

Citation

Simon Cruanes. Extending Superposition with Integer Arithmetic, Structural Induction, and Beyond. Logic in Computer Science [cs.LO]. École polytechnique, 2015. English. 〈tel-01223502〉

Partager

Métriques

Consultations de la notice

396

Téléchargements de fichiers

339