TreeKs : un foncteur pour faire passer les
domaines numériques à l’échelle
Stage de master 2 réalisé sous la direction d’Antoine Miné
École normale supérieure, équipe Abstraction
Mehdi Bouaziz
Mardi 7 septembre 2010
Motivation
Analyse statique numérique :
Idécouverte automatique et statique de propriétés numériques
sur les variables d’un programme
Applications :
Ivérification statique de programmes (exemple : Astrée)
Idécouverte et preuve d’invariants
Ioptimisation de programmes
Mehdi Bouaziz, École normale supérieure
TreeKs : un foncteur pour faire passer les domaines numériques à l’échelle 2/20
Cadre : domaines numériques abstraits
L’interprétation abstraite [Cousot Cousot 77] définit un cadre formel
de l’approximation sûre de sémantiques.
Un domaine numérique abstrait est la donnée de :
Iun ensemble DVde valeurs abstraites représentables sur un
ordinateur,
Iune concrétisation 〚.〛:DV−→ P(V 7→ Q),
Iun algorithme de comparaison vDVdes éléments abstraits,
Ides algorithmes efficaces et sûrs pour les opérateurs abstraits :
intersection uDV, union tDV, projection ∃DV, . . .
Mehdi Bouaziz, École normale supérieure
TreeKs : un foncteur pour faire passer les domaines numériques à l’échelle 3/20
Domaines numériques abstraits : exemples
Intervalles [Cousot Cousot 76]
Viai≤Xi≤bi
Non relationnel
Coût linéaire
Polyèdres [Cousot Halbwachs 78]
VjPiaij Xi≤bj
Relationnel et très précis
Coût exponentiel en pire cas
Mehdi Bouaziz, École normale supérieure
TreeKs : un foncteur pour faire passer les domaines numériques à l’échelle 4/20
Domaines numériques abstraits faiblement relationnels
Zones [Miné 01]
Vij Xi−Xj≤cij
Faiblement relationnel
Coût cubique
Octogones [Miné 01]
Vij ±Xi±Xj≤cij
Coût cubique
Logaèdres [Howe King 09]
Vij ±2aiXi±2bjXj≤cij
Coût cubique
TVPI [Simon King Howe 02]
Vij aiXi+bjXj≤cij
Coût quasi-cubique
Octaèdres [Clarisó Cortadella 07]
VPi±Xi≤c
Coût exponentiel en pire cas
Mehdi Bouaziz, École normale supérieure
TreeKs : un foncteur pour faire passer les domaines numériques à l’échelle 5/20
1 / 60 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans l'interface ou les textes ? Ou savez-vous comment améliorer l'interface utilisateur de StudyLib ? N'hésitez pas à envoyer vos suggestions. C'est très important pour nous!