previous up next top index
Précédent : Réécriture Générique Remonter : Le développement du système Coq Suivant : Utilisation du système Coq


Définition par filtrage

Participante : Cristina Cornes C. Cornes a implanté une stratégie pour compiler le filtrage de motifs avec types dépendants en Coq. Ceci permet d'avoir dans ce système une syntaxe pour les programmes plus proche de celle des langages de programmation fonctionnels à la ML.

Ainsi la fonction de soustraction sur les entiers pourra s'écrire directement comme :

 
Fixpoint minus [n:nat] : nat -> nat :=
  [m:nat]Cases n m of
            O     _    =>  O
         | (S k)  O    => (S k)
         | (S k) (S l) => (minus k l)
         end.
Cette définition est analysée pour vérifier sa complétude et est compilée vers une expression du formalisme de base qui ne comporte que du filtrage à un seul niveau.