Logique Formelle

Objectifs de l’enseignement

Ce cours permet d'acquérir une bonne connaissance des significations pouvant être attribuées aux constructions syntaxiques de programmes, des méthodes de raisonnement et de validation des programmes. Il forme à la conception et au développement raisonné d'applications et facilite la compréhension des choix et modes de fonctionnement des outils et ateliers de développement.

Contenu de la matière

  • Théorie du Lambda Calcul
  • Théorie des Combinateurs
  • Théorie des types
  • Exemples de types : Le langage Caml
  • Théorème de Curry-Howard
  • De Caml vers Ocaml
  • Preuves de propriétés avec Coq
  • Les systèmes de certification : FocaL, B, ..