Skip to Main Content
Software testing and debugging play a vital role in developing reliable software. A crucial part of debugging is fault localization - the process of identifying the locations of bugs, i.e., lines of code that are faulty due to a human error. For real systems, fault localization can be costly, requiring much human time and effort. To address this code, researchers have proposed a number of useful techniques for fault localization. However, effective and accurate fault localization remains an elusive goal at present. This paper presents a novel approach, which is based on Bernoulli divergences - a family of divergences that use Bernoulli random variables - to automate fault localization. Thus, our approach takes concepts from information theory and machine learning and applies them to software engineering. Initial experimental results a suite of programs show this approach for fault localization holds promise.