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

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

12 Jul 2024arXiv:2407.09337archive 2025-07-28

Pedro Orvalho, Mikoláš Janota, Vasco Manquinho

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.

PaperPDFCode

Code

pmorvalho/cfaults officialmentioned in paper report

Repository list and official/mentioned flags are the archive's, frozen 2025-07-28. Reachability, where shown, is from one Syntology probe window (2026-09-16 to 2026-09-18); repositories not probed show nothing. GitHub stars are not tracked.

Code Syntology ran Syntology

Not run by Syntology. Nothing on this page verifies that the listed code works.

Tasks

Fault localization

Results from the paper archive 2025-07-28

No leaderboard rows for this paper in the archive.

Methods

SETSNIPER

Report a problem or propose a change · a person checks every report against the paper or source before anything changes; decisions are listed on /corrections