Une approche combinant les techniques BMC et un problème CSP pour l'aide à la localisation d'erreurs
Résumé
Un véricateur de modèle peut produire une trace de contre-exemple, pour un programme erroné, qui est souvent inutile (longue et dicile) pour localiser les erreurs dans le code source. Dans ma thèse, nous avons proposé un algorithme de localisation d'erreurs à partir de contre-exemples, nommé LocFaults, combinant les approches de Bounded Model-Checking (BMC) avec un problème de satisfaction de contraintes (CSP). Cet algorithme analyse les chemins du CFG (Control Flow Graph) du programme erroné pour calculer les sous-ensembles d'instructions sus-pectes permettant de corriger le programme. En eet, nous générons un système de contraintes pour les chemins du graphe de ot de contrôle pour lesquels au plus k instructions conditionnelles peuvent être erronées. Ensuite, nous calculons les MCSs (Minimal Correction Sets) de taille lim-itée sur chacun de ces chemins. La suppression de l'un de ces ensembles de contraintes donne un sous-ensemble satisable maximal, en d'autres termes, un sous-ensemble maximal de contraintes satisfaisant la post-condition. Pour calculer les MCSs, nous étendons l'algorithme générique proposé par Liton et Sakallah dans le but de traiter des programmes avec des instructions numériques plus ecacement.
Origine : Fichiers produits par l'(les) auteur(s)
Loading...