927 -- Exemples de preuve d’algorithme : correction, terminaison. : Différence entre versions

De AgregmathKL
Aller à : navigation, rechercher
m (numérotation)
m (en-têtes)
Ligne 8 : Ligne 8 :
 
=== Preuves informelles [Cormen] ===
 
=== Preuves informelles [Cormen] ===
  
# Étude de la correction
+
==== Étude de la correction ====
  
 
Invariant de boucle, exemple du tri insertion. Remarque que certains
 
Invariant de boucle, exemple du tri insertion. Remarque que certains

Version du 1 décembre 2013 à 11:20

Plan Olivier et Yon (2013)

Plan

Petite intro (mentionner le problème de preuve de correction et terminaison des boucles)

Preuves informelles [Cormen]

Étude de la correction

Invariant de boucle, exemple du tri insertion. Remarque que certains algorithmes incorrects sont intéressants (ex : Soloway-Strassen).

    • Étude de la terminaison

Problème indécidable. Ensembles bien fondés. Variant de boucle.

    • Exemple complet : Algorithme de Hopcroft [Carton + preuve modifiée] (DEV)

Écrire l'algo sur le plan. Ne prouver que la correction si trop long.

Preuves formelles [Winskel]

  1. Langage IMP

Syntaxe, définitions

    • Sémantique dénotationnelle

Sémantique des commandes surtout, en particulier du while.

Remarque : a priori on pourrait faire la sémantique opérationnelle aussi.

    • Règles de Hoare

Langage d'assertions, triplet de Hoare. Exemple pour le calcul de la factorielle (autre DEV possible a priori).

Correction des règles (DEV).

    • Plus faibles préconditions

Développements

  1. Proposés
  1. Autres possibles
  • Correction du calcul de la factorielle avec les règles de Hoare

Références

  • Cormen et al.
  • Carton