Une approche CSP pour l'aide à la localisation d'erreurs
Résumé
Nous proposons dans cet article une nouvelle approche basée sur la CP pour l'aide à la localisation des erreurs dans un programme. Nous supposons qu'un contre-exemple a été trouvé, c'est à dire que l'on dispose d'une instanciation des variables d'entrée qui viole la post-condition. Pour aider à localiser les erreurs, nous générons un système de contraintes pour les chemins du CFG (Graphe de Flot de Contrôle) où au plus k instructions conditionnelles sont susceptibles de contenir des erreurs. Puis, nous calculons pour chacun de ces chemins des ensembles minima de correction (ou MCS - Minimal Correction Set) de taille bornée. Le retrait d'un de ces ensembles de contraintes produit un MSS (Maximal Satisfiable Subset) qui ne viole plus la post condition. Nous adaptons pour cela un algorithme proposé par Liffiton et Sakallah \cite{LiS08} afin de pouvoir traiter plus efficacement des programmes avec des calculs numériques. Nous présentons les résultats des premières expérimentations qui sont encourageants.
Origine | Fichiers produits par l'(les) auteur(s) |
---|