Analyse et preuve d'intégrité d'exécution
Objectifs
- Preuve de l'absence d'erreur d'exécution
- Débordement arithmétique
- Division par zéro
- Accès hors tableau
- Autres RTE génériques
- Preuve de robustesse
- Démonstration sur un modèle dont l'environnement n'est pas contraint (résistance à des entrées quelconques)
- Preuve dans un environnement réaliste
- Lorsque la démonstration de robustesse n'est pas possible, ajout de contraintes sur l'environnement pour prouver l'absence de RTE
Entrées
- Modèle (conception détaillée) de la fonction ou du système
- E.g. modèle utilisé pour la génération de code
Résultats
- Preuve d'absence d'erreurs d'exécution
- Recommandations de corrections
- Scénarios de tests
Démarche
- Instrumentation du modèle avec des assertions de contrôle de RTE
- Co-simulation modèle et modèle instrumenté
- Détection de contre-exemple sur modèle instrumenté (recherche de RTE)
- Modélisation de l'environnement (ajout de contraintes en fonction des contre-exemples détectés)
- Preuve du modèle instrumenté dans l'environnement (ce dernier peut être vide en cas de robustesse)
- Génération de tests