CFaults: Model-Based Diagnosis for Fault Localization in C Programs with Multiple Test Cases

Fuente: arXiv
Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: Orvalho, Pedro, Janota, Mikoláš, Manquinho, Vasco
Format: Preprint
Veröffentlicht: 2024
Schlagworte:
Online-Zugang:
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
_version_ 1866916935002750976
author Orvalho, Pedro
Janota, Mikoláš
Manquinho, Vasco
author_facet Orvalho, Pedro
Janota, Mikoláš
Manquinho, Vasco
contents Debugging is one of the most time-consuming and expensive tasks in software development. Several formula-based fault localization (FBFL) methods have been proposed, but they fail to guarantee a set of diagnoses across all failing tests or may produce redundant diagnoses that are not subset-minimal, particularly for programs with multiple faults. This paper introduces a novel fault localization approach for C programs with multiple faults. CFaults leverages Model-Based Diagnosis (MBD) with multiple observations and aggregates all failing test cases into a unified MaxSAT formula. Consequently, our method guarantees consistency across observations and simplifies the fault localization procedure. Experimental results on two benchmark sets of C programs, TCAS and C-Pack-IPAs, show that CFaults is faster than other FBFL approaches like BugAssist and SNIPER. Moreover, CFaults only generates subset-minimal diagnoses of faulty statements, whereas the other approaches tend to enumerate redundant diagnoses.
format Preprint
id arxiv_https___arxiv_org_abs_2407_09337
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle CFaults: Model-Based Diagnosis for Fault Localization in C Programs with Multiple Test Cases
Orvalho, Pedro
Janota, Mikoláš
Manquinho, Vasco
Software Engineering
Artificial Intelligence
Logic in Computer Science
Debugging is one of the most time-consuming and expensive tasks in software development. Several formula-based fault localization (FBFL) methods have been proposed, but they fail to guarantee a set of diagnoses across all failing tests or may produce redundant diagnoses that are not subset-minimal, particularly for programs with multiple faults. This paper introduces a novel fault localization approach for C programs with multiple faults. CFaults leverages Model-Based Diagnosis (MBD) with multiple observations and aggregates all failing test cases into a unified MaxSAT formula. Consequently, our method guarantees consistency across observations and simplifies the fault localization procedure. Experimental results on two benchmark sets of C programs, TCAS and C-Pack-IPAs, show that CFaults is faster than other FBFL approaches like BugAssist and SNIPER. Moreover, CFaults only generates subset-minimal diagnoses of faulty statements, whereas the other approaches tend to enumerate redundant diagnoses.
title CFaults: Model-Based Diagnosis for Fault Localization in C Programs with Multiple Test Cases
topic Software Engineering
Artificial Intelligence
Logic in Computer Science
url https://arxiv.org/abs/2407.09337