Assistant de preuve

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher

En informatique (ou en mathématiques assistées par informatique), un assistant de preuve est un logiciel permettant l'écriture et la vérification de preuves mathématiques, soit sur des théorèmes au sens usuel des mathématiques, soit sur des assertions relatives à l'exécution de programmes informatiques.

Conception[modifier | modifier le code]

Beaucoup de projets ont été lancés pour formaliser les mathématiques, en 1966, Nicolaas de Bruijn lance le projet Automath, suivi par d'autres projets. Les projets les plus avancés sont le projet Mizar en Pologne, le projet HOL-Isabelle en Grande-Bretagne et aux États-Unis et le projet Coq en France[1].

Le but de ces projets est de mettre à la disposition du mathématicien des outils informatiques pour l’aider à élaborer une version formelle du résultat auquel il s’intéresse. Le logiciel stocke aussi les résultats démontrés auparavant.

L'écriture de preuves entièrement formelles est une activité extrêmement fastidieuse ; de nombreuses étapes qui seraient sautées, car considérées comme évidentes pour le lecteur familier des mathématiques, doivent être décortiquées dans les plus grands détails. Cependant, l'assistant de preuve peut fournir plus ou moins d'automatisation pour limiter le travail de l'utilisateur humain.

Certains assistants de preuve, tels que PVS, possèdent des procédures de décision dans des domaines souvent utilisés et décidables (tels que l'arithmétique de Presburger) ; souvent, on leur ajoute des procédures de semi-décision (qui ne se terminent pas forcément avec succès).

Succès[modifier | modifier le code]

Selon une étude publiée dans le magazine Pour la Science[1], sur la liste des « 100 théorèmes mathématiques les plus importants[2] », une liste composée par Nathan Kahn, mathématicien du Steven Institute of Technology, dans le New Jersey, 85 des 100 théorèmes ont été formalisés.

Avec les assistants de preuve actuels, le travail de formalisation est rendu fastidieux par un langage complexe[1].

Utilisation[modifier | modifier le code]

Les assistants de preuve sont utiles pour la démonstration des problèmes très complexes, et aident à produire une démonstration formelle. Le célèbre problème des quatre couleurs est l'un des problèmes résolus avec cet outil.

Une objection à l'usage d'assistants de preuve est que, de toute façon, la sécurité des preuves obtenues repose sur le bon fonctionnement de l'assistant. En effet, les assistants de preuves sont de gros logiciels complexes, dont on peut soupçonner qu'ils soient eux-mêmes bugués. Un assistant de preuve bugué peut permettre de démontrer l'absurde. Certains assistants de preuve, comme Coq, produisent un terme de preuve dont la vérification peut être déléguée à un logiciel beaucoup plus simple qu'un assistant complet ; ainsi, Coq produit des termes du calcul des constructions (inductives, à présent), un lambda-calcul typé d'ordre supérieur, dont on peut relativement facilement vérifier s'ils sont correctement typés. Coq, de plus, a lui-même été prouvé dans Coq par son vérificateur de démonstrations, ce qui rend la confiance que l'on peut avoir dans ce logiciel un peu plus légitime.

Théorèmes prouvés avec des assistants de preuve[modifier | modifier le code]

Note sur la terminologie : L'utilisation de preuve à la place de démonstration est, en toute rigueur, un anglicisme, en tant que traduction directe du mot proof, mais l'utilisation du mot « preuve » fait maintenant partie du langage des spécialistes et cet article se plie à cet usage. La difficulté est d'autant plus grande que le mot « démonstration » a un usage courant différent en anglais.

Assistants de preuve[modifier | modifier le code]

Voir aussi[modifier | modifier le code]

Références[modifier | modifier le code]

  1. a, b et c Jean-Paul Delahaye, « Du rêve à la réalité des preuves », Pour la Science,‎ avril 2011, p. 90-95
  2. (en) the «top 100» of mathematical theorems, 2011
  3. « La conjecture de Kepler démontrée à 99 % » (consulté le 17 octobre 2012)
  4. (en) « Feit-Thompson theorem has been totally checked in Coq » (consulté le 20 novembre 2012)