arrow
Return

Overfitting in semantics-based automated program repair

delete2018-03-02
delete50
PRE
AI
L
Le, Xuan Bach D. *
F
Ferdian Thung
D
David Lo
C
Claire Le Goues
DOI:10.1007/s10664-017-9577-2delete
deleteOriginal
deleteOriginal request for help
deleteShare
deleteSave
Abstract

Abstract

En 中文
The primary goal of Automated Program Repair (APR) is to automatically fix buggy software, to reduce the manual bug-fix burden that presently rests on human developers. Existing APR techniques can be generally divided into two families: semantics- vs. heuristics-based. Semantics-based APR uses symbolic execution and test suites to extract semantic constraints, and uses program synthesis to synthesize repairs that satisfy the extracted constraints. Heuristic-based APR generates large populations of repair candidates via source manipulation, and searches for the best among them. Both families largely rely on a primary assumption that a program is correctly patched if the generated patch leads the program to pass all provided test cases. Patch correctness is thus an especially pressing concern. A repair technique may generate overfitting patches, which lead a program to pass all existing test cases, but fails to generalize beyond them. In this work, we revisit the overfitting problem with a focus on semantics-based APR techniques, complementing previous studies of the overfitting problem in heuristics-based APR. We perform our study using IntroClass and Codeflaws benchmarks, two datasets well-suited for assessing repair quality, to systematically characterize and understand the nature of overfitting in semantics-based APR. We find that similar to heuristics-based APR, overfitting also occurs in semantics-based APR in various different ways.
Keywords:
Automated program repair
Program synthesis
Symbolic execution
Patch overfitting
AI Summary

AI Summary

Key information extracted from the uploaded paper, including a brief overview, abstract, background, key highlights, visual analysis, and future outlook.

Journal

Empirical Software Engineering cover
Empirical Software Engineering
IF:
3.6
Papers:
2.0K
Citations:
5.3K

Organization

C
Carnegie Mellon University
Scholars:
1.4W
Papers: 1.4W
Citations: 2.7W
S
Singapore Management University
Scholars:
1.5K
Papers: 2.5K
Citations: 3.5K
Cited Papers

Cited Papers

A molecular concept of the properdin pathway.
err1976-02-01
err0
errOAAI
errR G Medicus; R D Schreiber; O Götze; H J Müller-Eberhard
errShare
errSave
Structure and function of negative-strand RNA virus polymerase complexes
err2021-01-01
err0
PREAI
errJesse D. Pyle; Sean P.J. Whelan; Louis-Marie Bloyet
errShare
errSave
Ebola virus sequencing protocol v1
err
IF0
err2019-09-25
err0
errOAAI
errJosh Quick
errShare
errSave
Relaxation of persistent photoconductivity inAl0.3Ga0.7As
err1990-09-15
err0
PREAI
errJ. Y. Lin; A. Dissanayake; G. Brown; H. X. Jiang
errShare
errSave
Poststructuralism
err2007-11-30
err0
PREAI
errDeborah P. Dixon; John Paul Jones
errShare
errSave
GenProg: A Generic Method for Automatic Software Repair
err2012-01-01
err594
PREAI
errLe Goues, Claire; ThanhVu Nguyen; Forrest, Stephanie; Weimer, Westley
errShare
errSave
researcher View more