next up previous contents
suivant: MDV: Méthodes Déductives pour monter: Présentation des modules précédent: COT : Composants et test   Table des matières

Sous-sections

PLOG : $\lambda$Prolog

Présentation

L'objectif de ce cours est de présenter de nouveaux outils de conception de logiciel, basés sur un langage déclaratif $\lambda$Prolog. Un mélange uniforme et homogène de deux théories, le $\lambda$-calcul et la logique des prédicats permet de spécifier des solutions à des problèmes complexes dans les quels la notion de portée est fondamentale. On rencontre ainsi les problèmes de typages, de compilation ou de réécriture de programme ou encore les problèmes de représentation de connaissance en intelligence artificielle. Nous concentrerons notre étude sur deux aspects qui se complètent mutuellement : les nouvelles possibilités offertes par les $\lambda$-termes en tant méthode de représentation de structures de données et les nouveaux outils de controles qui permettent de spécifier des parcours inductifs sur la structure de ces nouveaux objets. Nous insisterons particulièrement sur les questions difficiles posées par la nature de ce mélange de deux théories. Le cours sera illustré par de nombreux exemples dans les quels on pourra constater que, grâce à cette méthode, une spécification peut devenir exécutoire.

Les deux dernières séances sont consacrées à la pratique

Plan du module

Cours 1 :
Introduction aux concepts : le mariage de la logique et du $\lambda$-calcul
Cours 2 :
Les $\lambda$-termes simplement typés, bien représenter les portées
Cours 3 :
Deux notions de substitutions complémentaires, l'unification, la $\beta$-réduction
Cours 4 :
L'ordre supérieur
Cours 5 :
Gérer les attributs sémantiques en analyse sytaxique, les DCG d'ordre supérieures
Cours 6 :
Pratique sur un exemple concrêt
Cours 7 :
Pratique sur un second exemple concrêt


next up previous contents
suivant: MDV: Méthodes Déductives pour monter: Présentation des modules précédent: COT : Composants et test   Table des matières