SEMar 25, 2014

Do the Fix Ingredients Already Exist? An Empirical Inquiry into the Redundancy Assumptions of Program Repair Approaches

arXiv:1403.6322v1128 citations
Originality Synthesis-oriented
AI Analysis

This addresses the foundational assumptions of program repair methods for software developers, but it is incremental as it validates an existing hypothesis rather than introducing new repair techniques.

The paper investigates the redundancy assumption in automatic program repair, specifically whether fix ingredients already exist in code, and finds that a large proportion of commits are temporally redundant, validating this assumption for techniques like GenProg.

Much initial research on automatic program repair has focused on experimental results to probe their potential to find patches and reduce development effort. Relatively less effort has been put into understanding the hows and whys of such approaches. For example, a critical assumption of the GenProg technique is that certain bugs can be fixed by copying and re-arranging existing code. In other words, GenProg assumes that the fix ingredients already exist elsewhere in the code. In this paper, we formalize these assumptions around the concept of ''temporal redundancy''. A temporally redundant commit is only composed of what has already existed in previous commits. Our experiments show that a large proportion of commits that add existing code are temporally redundant. This validates the fundamental redundancy assumption of GenProg.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes