  It is widely recognized that program repair tools need to have a high
precision to be useful, i.e., the generated patches need to have a high
probability to be correct. However, it is fundamentally difficult to ensure the
correctness of the patches, and many tools compromise other aspects of repair
performance such as recall for an acceptable precision.
  In this paper we ask a question: can a repair tool with a low precision be
still useful? To explore this question, we propose an interactive filtering
approach to patch review, which filters out incorrect patches by asking
questions to the developers. Our intuition is that incorrect patches can still
help understand the bug. With proper tool support, the benefit outweighs the
cost even if there are many incorrect patches.
  We implemented the approach as an Eclipse plugin tool, InPaFer, and evaluated
it with a simulated experiment and a user study with 30 developers. The results
show that our approach improve the repair performance of developers, with 62.5%
more successfully repaired bugs and 25.3% less debugging time in average. In
particular, even if the generated patches are all incorrect, the performance of
the developers would not be significantly reduced, and could be improved when
some patches provide useful information for repairing, such as the faulty
location and a partial fix.
