@inproceedings{c82592d690ec43b991a1da687715e479,
title = "Flow-sensitive fault localization",
abstract = "Identifying the cause of an error is often the most time-consuming part in program debugging. Fault localization techniques can help to automate this task. Particularly promising are static proof-based techniques that rely on an encoding of error traces into trace formulas. By identifying irrelevant portions of the trace formula, the possible causes of the error can be isolated. One limitation of these approaches is that they do not take into account the control flow of the program and therefore miss common causes of errors, such as faulty branching conditions. This limitation is inherent to the way the error traces are encoded. In this paper, we present a new flow-sensitive encoding of error traces into trace formulas. The new encoding enables proof-based techniques to identify irrelevant conditional choices in an error trace and to include a justification for the truth value of branching conditions that are relevant for the localized cause of an error. We apply our new encoding to the fault localization technique based on error invariants and show that it produces more meaningful error explanations than previous approaches.",
author = "J{\"u}rgen Christ and Evren Ermis and Martin Sch{\"a}f and Thomas Wies",
year = "2013",
doi = "10.1007/978-3-642-35873-9_13",
language = "English (US)",
isbn = "9783642358722",
series = "Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)",
publisher = "Springer Verlag",
pages = "189--208",
booktitle = "Verification, Model Checking, and Abstract Interpretation - 14th International Conference, VMCAI 2013, Proceedings",
note = "14th International Conference on Verification, Model Checking, and Abstract Interpretation, VMCAI 2013 ; Conference date: 20-01-2013 Through 22-01-2013",
}