Algorithmique/Preuve d'arrêt

Leçons de niveau 14
Une page de Wikiversité, la communauté pédagogique libre.
Début de la boite de navigation du chapitre
Preuve d'arrêt
Icône de la faculté
Chapitre no 3
Leçon : Algorithmique
Chap. préc. :Variables
Chap. suiv. :Forme d'écriture d'un algorithme
fin de la boite de navigation du chapitre
En raison de limitations techniques, la typographie souhaitable du titre, « Algorithmique : Preuve d'arrêt
Algorithmique/Preuve d'arrêt
 », n'a pu être restituée correctement ci-dessus.

Comme nous le savons, un algorithme est une séquence d'instructions créée dans l'optique de résoudre un problème. Il est alors important de vérifier que notre séquence réalise bien ce qu'on lui demande.

Avant cela, il est primordial d'étudier ce qu'on nomme la preuve d'arrêt d'un algorithme. C'est ce que nous ferons dans cette présente leçon.

Quelques exemples[modifier | modifier le wikicode]

Imaginons un algorithme tel que :

Début de l'exemple
Fin de l'exemple


Ici, le problème est simple : on réalise une condition qui sera toujours vérifiée car la variable reste identique. L'algorithme tournera alors à l'infini.

Voyons un autre exemple :

Début de l'exemple
Fin de l'exemple


Là, l'algorithme s'arrête. Voyons comment noter la preuve de cet arrêt.

Écriture formelle de la preuve d'arrêt[modifier | modifier le wikicode]

Reprenons l'algorithme précédent. Nous avons une boucle qui réalise une comparaison itérative. À l'intérieur de cette boucle est opéré un certain nombre d'instructions mais l'élément primordial est la réaffectation de i. Sans celle-ci, nous aurions le même problème que pour le premier algorithme.

Formellement, notre algorithme s'arrête car i est positif ET qu’il décroit strictement. L'arrêt est donc réalisé car la comparaison i > 0 sera fausse à un certain moment.