SQL à l'épreuve de Coq Une sémantique formelle pour SQL
Résumé
Nous proposons une sémantique formelle, exécutable, mécanisée en Coq pour un fragment réaliste du langage SQL, le standard en terme de bases de données relationnelles. Ce fragment prend en compte des requêtes de la forme select [distinct] from where group by having en présence de valeurs nulles, fonctions, agrégats, quantificateurs ainsi que de requêtes imbriquées potentiellement corrélées. Nous relions ce fragment à l'algèbre relationnelle, équivalent pour SQL du λ-calcul pour les langages fonctionnels. Nous obte-nons ainsi le premier résultat d'équivalence de ce fragment et de l'algèbre, formellement prouvé. Enfin, grâce au mécanisme d'extraction, nous fournissons un analyseur sémantique du langage SQL certifié en Coq, élément central pour l'obtention d'un compilateur SQL vérifié.
Origine : Fichiers produits par l'(les) auteur(s)
Loading...