Spécification logique et validation des programmes séquentiels

Réf. : NFP120

Sessions de formation

(Fuseau horaire : Europe/Paris)

Aucune session n'est visible pour le moment

Présentation

Public, conditions d'accès et prérequis

Le cours présente progressivement toutes les connaissances requises, néanmoins il est souhaitable d'avoir des notions de logique (propositionnelle, des prédicats). L'UE NFP108 est par exemple une très bonne introduction.

Objectifs

Donner les principes fondamentaux d'une programmation et d'une documentation rigoureuse.
Montrer comment la documentation formelle permet la validation des logiciels.
Remarque: Ce cours comportait précédemment une longue introduction à Prolog, cet aspect du cours a été retiré.

Contenu

Programmation et logique
 

  • sémantique des formules logique
  • méthode de déduction logique: tableaux sémantiques
  • sémantique des programmes
  • méthode de déduction sur les programme: preuves de Hoare, invariants de boucles
  • Application aux programmes Java ou C (assertions, outils de validation)

Modalités d'évaluation

  • Examen final

Une évaluation en contrôle continu est conseillée (TP, QCMs...). Un examen final sur table est obligatoire, avec un coefficient minimal de 50% de la note finale.