Overfitting in semantics-based automated program repair

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 symbo...

Full description

Saved in:
Bibliographic Details
Published in:Empirical software engineering : an international journal Vol. 23; no. 5; pp. 3007 - 3033
Main Authors: Le, Xuan Bach D., Thung, Ferdian, Lo, David, Goues, Claire Le
Format: Journal Article
Language:English
Published: New York Springer US 01.10.2018
Springer Nature B.V
Subjects:
ISSN:1382-3256, 1573-7616
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Abstract 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.
AbstractList 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.
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.
Author Goues, Claire Le
Lo, David
Thung, Ferdian
Le, Xuan Bach D.
Author_xml – sequence: 1
  givenname: Xuan Bach D.
  orcidid: 0000-0001-5044-1582
  surname: Le
  fullname: Le, Xuan Bach D.
  email: dxb.le.2013@phdis.smu.edu.sg
  organization: School of Information Systems, Singapore Management University
– sequence: 2
  givenname: Ferdian
  surname: Thung
  fullname: Thung, Ferdian
  organization: School of Information Systems, Singapore Management University
– sequence: 3
  givenname: David
  surname: Lo
  fullname: Lo, David
  organization: School of Information Systems, Singapore Management University
– sequence: 4
  givenname: Claire Le
  surname: Goues
  fullname: Goues, Claire Le
  organization: School of Computer Science, Carnegie Mellon University
BookMark eNp9kE9LAzEUxINUsK1-AG8LnqN5ySbpHqX4Dwq96Dlks0lJ6WZrkhX89qasIAh6enOY35thFmgWhmARugZyC4TIuwREiBoTkLjhUmJ6hubAJcNSgJgVzVYUM8rFBVqktCeENLLmcyS3HzY6n7MPu8qHKtleh-xNwq1Otqv0mIde56KOcdhF3VfRHrWPl-jc6UOyV993id4eH17Xz3izfXpZ32-wYSAyloZCVxvrukavGuJca7XgFhhrgLVy1UFjSm9KrCaGdM4yBk0roaaudkIztkQ3098S_z7alNV-GGMokYoSyQUA46K45OQycUgpWqeMzzr7IeSo_UEBUaeV1LSSKiup00qKFhJ-kcfoex0__2XoxKTiDTsbfzr9DX0BB617eg
CitedBy_id crossref_primary_10_1109_TSE_2023_3255177
crossref_primary_10_1145_3505247
crossref_primary_10_1145_3418461
crossref_primary_10_1145_3576039
crossref_primary_10_1145_3744900
crossref_primary_10_1109_ACCESS_2022_3145983
crossref_primary_10_1109_TSE_2021_3124323
crossref_primary_10_1145_3702971
crossref_primary_10_1007_s10664_019_09770_1
crossref_primary_10_1007_s11432_022_3803_9
crossref_primary_10_35784_jcsi_7389
crossref_primary_10_1145_3696450
crossref_primary_10_1109_TSE_2023_3269899
crossref_primary_10_1145_3364452_3364455
crossref_primary_10_1007_s10664_021_10010_8
crossref_primary_10_1007_s10664_019_09742_5
crossref_primary_10_1145_3360004
crossref_primary_10_1109_TSE_2024_3452252
crossref_primary_10_1016_j_jss_2020_110825
crossref_primary_10_1007_s10664_024_10503_2
Cites_doi 10.1109/ICSE.2013.6606626
10.1109/ASE.2015.83
10.1145/2837614.2837617
10.1145/2568225.2568254
10.1109/ICSME.2016.68
10.1145/2786805.2786811
10.1145/3106237.3106309
10.1109/TSE.2016.2560811
10.1109/TSE.2011.104
10.1145/2884781.2884872
10.1109/ICPC.2015.15
10.1145/1735223.1735249
10.1145/2970276.2975934
10.1109/TSE.2015.2454513
10.1145/2884781.2884807
10.1109/SANER.2016.76
10.1109/TAIC.PART.2007.13
10.1007/s10664-013-9282-8
10.1145/2398857.2384626
10.1145/2593735.2593740
10.1109/ISSRE.2015.7381836
10.1007/978-3-319-21668-3_12
10.1145/2771783.2771791
10.1109/ASE.2013.6693094
10.1109/ASE.2015.60
10.1109/ICSE.2015.63
10.1145/1806799.1806833
10.1145/2610384.2628055
10.1145/2786805.2786825
10.1109/ICSE.2013.6606623
10.1109/ICSE.2012.6227211
10.1109/ICSME.2016.66
10.1145/2338965.2336775
10.1145/3092703.3098225
ContentType Journal Article
Copyright Springer Science+Business Media, LLC, part of Springer Nature 2018
Copyright Springer Science & Business Media 2018
Copyright_xml – notice: Springer Science+Business Media, LLC, part of Springer Nature 2018
– notice: Copyright Springer Science & Business Media 2018
DBID AAYXX
CITATION
7SC
8FD
JQ2
L7M
L~C
L~D
DOI 10.1007/s10664-017-9577-2
DatabaseName CrossRef
Computer and Information Systems Abstracts
Technology Research Database
ProQuest Computer Science Collection
Advanced Technologies Database with Aerospace
Computer and Information Systems Abstracts – Academic
Computer and Information Systems Abstracts Professional
DatabaseTitle CrossRef
Computer and Information Systems Abstracts
Technology Research Database
Computer and Information Systems Abstracts – Academic
Advanced Technologies Database with Aerospace
ProQuest Computer Science Collection
Computer and Information Systems Abstracts Professional
DatabaseTitleList Computer and Information Systems Abstracts

DeliveryMethod fulltext_linktorsrc
Discipline Computer Science
EISSN 1573-7616
EndPage 3033
ExternalDocumentID 10_1007_s10664_017_9577_2
GroupedDBID -4Z
-59
-5G
-BR
-EM
-Y2
-~C
.86
.DC
.VR
06D
0R~
0VY
199
1N0
1SB
2.D
203
28-
29G
2J2
2JN
2JY
2KG
2LR
2P1
2VQ
2~H
30V
4.4
406
408
409
40D
40E
5GY
5QI
5VS
67Z
6NX
78A
8FE
8FG
8TC
8UJ
95-
95.
95~
96X
AABHQ
AACDK
AAHNG
AAIAL
AAJBT
AAJKR
AANZL
AAOBN
AARHV
AARTL
AASML
AATNV
AATVU
AAUYE
AAWCG
AAYIU
AAYOK
AAYQN
AAYTO
AAYZH
ABAKF
ABBBX
ABBXA
ABDZT
ABECU
ABFTD
ABFTV
ABHLI
ABHQN
ABJCF
ABJNI
ABJOX
ABKCH
ABKTR
ABMNI
ABMQK
ABNWP
ABQBU
ABQSL
ABSXP
ABTEG
ABTHY
ABTKH
ABTMW
ABULA
ABWNU
ABXPI
ACAOD
ACBXY
ACDTI
ACGFS
ACHSB
ACHXU
ACIWK
ACKNC
ACMDZ
ACMLO
ACOKC
ACOMO
ACPIV
ACSNA
ACZOJ
ADHHG
ADHIR
ADIMF
ADINQ
ADKNI
ADKPE
ADRFC
ADTPH
ADURQ
ADYFF
ADZKW
AEBTG
AEFIE
AEFQL
AEGAL
AEGNC
AEJHL
AEJRE
AEKMD
AEMSY
AENEX
AEOHA
AEPYU
AESKC
AETLH
AEVLU
AEXYK
AFBBN
AFEXP
AFGCZ
AFKRA
AFLOW
AFQWF
AFWTZ
AFZKB
AGAYW
AGDGC
AGGDS
AGJBK
AGMZJ
AGQEE
AGQMX
AGRTI
AGWIL
AGWZB
AGYKE
AHAVH
AHBYD
AHKAY
AHSBF
AHYZX
AIAKS
AIGIU
AIIXL
AILAN
AITGF
AJBLW
AJRNO
AJZVZ
ALMA_UNASSIGNED_HOLDINGS
ALWAN
AMKLP
AMXSW
AMYLF
AMYQR
AOCGG
ARAPS
ARMRJ
ASPBG
AVWKF
AXYYD
AYJHY
AZFZN
B-.
BA0
BBWZM
BDATZ
BENPR
BGLVJ
BGNMA
BSONS
CAG
CCPQU
COF
CS3
CSCUP
DDRTE
DL5
DNIVK
DPUIP
DU5
EBLON
EBS
EIOEI
EJD
ESBYG
FEDTE
FERAY
FFXSO
FIGPU
FINBP
FNLPD
FRRFC
FSGXE
FWDCC
GGCAI
GGRSB
GJIRD
GNWQR
GQ6
GQ7
GQ8
GXS
H13
HCIFZ
HF~
HG5
HG6
HMJXF
HQYDN
HRMNR
HVGLF
HZ~
I09
IHE
IJ-
IKXTQ
ITM
IWAJR
IXC
IZIGR
IZQ
I~X
I~Z
J-C
J0Z
JBSCW
JCJTX
JZLTJ
KDC
KOV
KOW
L6V
LAK
LLZTM
M4Y
M7S
MA-
N2Q
NB0
NDZJH
NPVJJ
NQJWS
NU0
O9-
O93
O9G
O9I
O9J
OAM
P19
P62
P9O
PF0
PT4
PT5
PTHSS
Q2X
QOK
QOS
R4E
R89
R9I
RHV
RNI
RNS
ROL
RPX
RSV
RZC
RZE
RZK
S0W
S16
S1Z
S26
S27
S28
S3B
SAP
SCJ
SCLPG
SCO
SDH
SDM
SHX
SISQX
SJYHP
SNE
SNPRN
SNX
SOHCF
SOJ
SPISZ
SRMVM
SSLCW
STPWE
SZN
T13
T16
TSG
TSK
TSV
TUC
U2A
UG4
UOJIU
UTJUX
UZXMN
VC2
VFIZW
W23
W48
WK8
YLTOR
Z45
Z7R
Z7S
Z7V
Z7X
Z7Z
Z81
Z83
Z86
Z88
Z8M
Z8N
Z8P
Z8R
Z8T
Z8U
Z8W
Z92
ZMTXR
~EX
AAPKM
AAYXX
ABBRH
ABDBE
ABFSG
ABRTQ
ACSTC
ADHKG
AEZWR
AFDZB
AFFHD
AFHIU
AFOHR
AGQPQ
AHPBZ
AHWEU
AIXLP
ATHPR
AYFIA
CITATION
PHGZM
PHGZT
PQGLB
7SC
8FD
JQ2
L7M
L~C
L~D
ID FETCH-LOGICAL-c316t-7c21d4cefd9a890ffbea65e133913b78d19c66420ea0c0dfe3319b7142f4f6a33
IEDL.DBID RSV
ISICitedReferencesCount 44
ISICitedReferencesURI http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=000440031100016&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D
ISSN 1382-3256
IngestDate Tue Dec 02 16:01:16 EST 2025
Sat Nov 29 05:37:43 EST 2025
Tue Nov 18 22:23:17 EST 2025
Fri Feb 21 02:35:46 EST 2025
IsPeerReviewed true
IsScholarly true
Issue 5
Keywords Automated program repair
Symbolic execution
Program synthesis
Patch overfitting
Language English
LinkModel DirectLink
MergedId FETCHMERGED-LOGICAL-c316t-7c21d4cefd9a890ffbea65e133913b78d19c66420ea0c0dfe3319b7142f4f6a33
Notes ObjectType-Article-1
SourceType-Scholarly Journals-1
ObjectType-Feature-2
content type line 14
ORCID 0000-0001-5044-1582
PQID 2075611356
PQPubID 326341
PageCount 27
ParticipantIDs proquest_journals_2075611356
crossref_citationtrail_10_1007_s10664_017_9577_2
crossref_primary_10_1007_s10664_017_9577_2
springer_journals_10_1007_s10664_017_9577_2
PublicationCentury 2000
PublicationDate 20181000
2018-10-00
20181001
PublicationDateYYYYMMDD 2018-10-01
PublicationDate_xml – month: 10
  year: 2018
  text: 20181000
PublicationDecade 2010
PublicationPlace New York
PublicationPlace_xml – name: New York
– name: Dordrecht
PublicationSubtitle An International Journal
PublicationTitle Empirical software engineering : an international journal
PublicationTitleAbbrev Empir Software Eng
PublicationYear 2018
Publisher Springer US
Springer Nature B.V
Publisher_xml – name: Springer US
– name: Springer Nature B.V
References Just R, Jalali D, Ernst MD (2014) Defects4j: a database of existing faults to enable controlled testing studies for java programs. In: Proceedings of the 2014 international symposium on software testing and analysis, ISSTA, pp 437–440
LogozzoFBallTModular and verified automatic program repairSIGPLAN Not2012471013314610.1145/2398857.2384626
Ke Y, Stolee KT, Le Goues C, Brun Y (2015) Repairing programs with semantic code search. In: Proceedings of the 30th IEEE/ACM international conference on automated software engineering, pp 295–306
AlurRBodikRJuniwalGMartinMMRaghothamanMSeshiaSASinghRSolar-LezamaATorlakEUdupaASyntax-guided synthesisDependable Software Systems Engineering201540125
Le X BD, Le TDB, Lo D (2015b) Should fixing these failures be delegated to automated program repair?. In: International symposium on software reliability engineering (ISSRE). IEEE, pp 427–437
Le X BD, Lo D, Le Goues C (2016c) History driven program repair. In: Proceedings of the 23rd IEEE international conference on software analysis, evolution, and reengineering, SANER, pp 213–224
Le X BD, Chu D H, David L, Le Goues C (2017a) Jfix: sematics-based repair of java programs via symbolic pathfinder. In: Proceedings of the 2017 ACM international symposium on software testing and analysis, ISSTA
WeimerWForrestSLe GouesCNguyenTAutomatic program repair with evolutionary computationCommun ACM201053510911610.1145/1735223.1735249
Long F, Rinard M (2016b) Automatic patch generation by learning correct code. In: ACM SIGPLAN notices, vol 51. ACM, pp 298–312
Le X BD, Le Q L, Lo D, Le Goues C (2016a) Enhancing automated program repair with deductive verification. In: International conference on software maintenance and evolution (ICSME). IEEE, pp 428–432
Könighofer R, Bloem R (2011) Automated error localization and correction for imperative programs. In: Formal methods in computer-aided design, IEEE, FMCAD, pp 91–100
DeMarco F, Xuan J, Le Berre D, Monperrus M (2014) Automatic repair of buggy if conditions and missing preconditions with SMT. In: Proceedings of the 6th international workshop on constraints in software testing, verification, and analysis, pp 30–39
Le X BD, Lo D, Le Goues C (2016b) Empirical study on synthesis engines for semantics-based program repair. In: International conference on software maintenance and evolution (ICSME). IEEE, pp 423–427
Cadar C, Dunbar D, Engler DR et al. (2008) Klee: unassisted and automatic generation of high-coverage tests for complex systems programs. In: Operating systems design and implementation, OSDI, pp 209–224
Smith EK, Barr ET, Le Goues C, Brun Y (2015) Is the cure worse than the disease? Overfitting in automated program repair. In: Joint meeting of the european software engineering conference and the ACM SIGSOFT symposium on the foundations of software engineering, ACM, ESEC/FSE, pp 532–543
Thung F, Le X BD, Lo D (2015) Active semi-supervised defect categorization. In: International conference on program comprehension (ICPC). IEEE Press, pp 60–70
Le XBD (2016) Towards efficient and effective automatic program repair. In: International conference on automated software engineering (ASE). IEEE, pp 876–879
Le X BD, Chu DH, Lo D, Le Goues C, Visser W (2017b) S3: syntax-and semantic-guided repair synthesis via programming by examples. In: Joint meeting of the european software engineering conference and the ACM SIGSOFT symposium on the foundations of software engineering. ACM, pp 593–604
Mechtaev S, Yi J, Roychoudhury A (2015) Directfix: Looking for simple program repairs. In: Proceedings of the 37th ACM/IEEE international conference on software engineering, ICSE, pp 448–458
Le GouesCHoltschulteNSmithEKBrunYDevanbuPForrestSWeimerWThe ManyBugs and IntroClass benchmarks for automated repair of C programsIEEE Trans Softw Eng201541121236125610.1109/TSE.2015.2454513
Könighofer R, Bloem R (2012) Repair with on-the-fly program analysis. In: Haifa verification conference. Springer, pp 56–71
Kim D, Nam J, Song J, Kim S (2013) Automatic patch generation learned from human-written patches. In: ACM/IEEE international conference on software engineering, ICSE, pp 802–811
Long F, Rinard M (2016a) An analysis of the search spaces for generate and validate patch generation systems. In: Proceedings of the 38th international conference on software engineering. ACM, pp 702–713
Tan SH, Yi J, Yulis, Mechtaev S, Roychoudhury A (2017) Codeflaws: a programming competition benchmark for evaluating automated program repair tools. In: ICSE Poster, to appear
Xuan J, Martinez M, DeMarco F, Clément M, Lamelas S, Durieux T, Le Berre D, Monperrus M (2016) Nopol: Automatic repair of conditional statement bugs in java programs. IEEE Trans Softw Eng https://doi.org/10.1109/TSE.2016.2560811. https://hal.archives-ouvertes.fr/hal-01285008/document
Long F, Rinard M (2015) Staged program repair with condition synthesis. In: Joint meeting of the european software engineering conference and the ACM SIGSOFT symposium on the foundations of software engineering. ACM, pp 166–178
Qi Z, Long F, Achour S, Rinard M (2015) An analysis of patch plausibility and correctness for generate-and-validate patch generation systems. In: Proceedings of the 2015 international symposium on software testing and analysis, ISSTA, pp 24–36
Le TDB, Le XBD, Lo D, Beschastnikh I (2015a) Synergizing specification miners through model fissions and fusions. In: International conference on automated software engineering (ASE). IEEE, pp 115–125
Tassey G (2002) The economic impacts of inadequate infrastructure for software testing. National Institute of Standards and Technology, RTI project 7007(011)
Fry ZP, Landau B, Weimer W (2012) A human study of patch maintainability. In: International symposium on software testing and analysis (ISSTA), pp 177–187
Qi Y, Mao X, Lei Y, Dai Z, Wang C (2014) The strength of random search on automated program repair. In: Proceedings of the 36th international conference on software engineering, ACM, ICSE, pp 254–265
Weimer W, Fry ZP, Forrest S (2013) Leveraging program equivalence for adaptive program repair: models and first results. In: Proceedings of the 28th international conference on automated software engineering, IEEE, ASE, pp 356–366
Gulwani S, Esparza J, Grumberg O, Sickert S (2016) Programming by examples (and its applications in data wrangling). Verification and synthesis of correct and secure systems
MartinezMMonperrusMMining software repair models for reasoning on the search space of automated program fixingEmpir Softw Eng201520117620510.1007/s10664-013-9282-8
Reynolds A, Deters M, Kuncak V, Tinelli C, Barrett C (2015) Counterexample-guided quantifier instantiation for synthesis in SMT. In: International conference on computer aided verification. Springer, pp 198–216
Le Goues C, Dewey-Vogt M, Forrest S, Weimer W (2012) A systematic study of automated program repair: fixing 55 out of 105 bugs for $8 each. In: 2012 34th international conference on software engineering (ICSE). IEEE, pp 3–13
Mechtaev S, Yi J, Roychoudhury A (2016) Angelix: scalable multiline program patch synthesis via symbolic analysis. In: Proceedings of the 38th ACM/IEEE international conference on software engineering, ICSE, pp 691–701
Abreu R, Zoeteweij P, Van Gemund AJ (2007) On the accuracy of spectrum-based fault localization. In: Testing: academic and industrial conference practice and research techniques-MUTATION, 2007. TAICPART-MUTATION 2007. IEEE, pp 89–98
Le GouesCNguyenTForrestSWeimerWGenprog: a generic method for automatic software repairIEEE Trans Softw Eng2012381547210.1109/TSE.2011.104
Nguyen HD T, Qi D, Roychoudhury A, Chandra S (2013) Semfix: Program repair via semantic analysis. In: Proceedings of the 2013 international conference on software engineering, ICSE, pp 772–781
Jha S, Gulwani S, Seshia SA, Tiwari A (2010) Oracle-guided component-based program synthesis. In: Proceedings of the 32nd ACM/IEEE international conference on software engineering, ICSE, pp 215–224
W Weimer (9577_CR39) 2010; 53
9577_CR1
C Le Goues (9577_CR23) 2015; 41
9577_CR40
9577_CR41
9577_CR26
9577_CR27
9577_CR25
9577_CR20
9577_CR21
9577_CR29
9577_CR30
R Alur (9577_CR2) 2015; 40
F Logozzo (9577_CR24) 2012; 47
9577_CR15
9577_CR37
9577_CR16
9577_CR38
9577_CR13
9577_CR35
9577_CR14
9577_CR36
9577_CR11
9577_CR33
9577_CR12
9577_CR34
9577_CR31
9577_CR10
9577_CR32
9577_CR5
9577_CR4
9577_CR3
9577_CR9
9577_CR19
M Martinez (9577_CR28) 2015; 20
9577_CR8
C Le Goues (9577_CR22) 2012; 38
9577_CR7
9577_CR17
9577_CR6
9577_CR18
References_xml – reference: Könighofer R, Bloem R (2011) Automated error localization and correction for imperative programs. In: Formal methods in computer-aided design, IEEE, FMCAD, pp 91–100
– reference: Nguyen HD T, Qi D, Roychoudhury A, Chandra S (2013) Semfix: Program repair via semantic analysis. In: Proceedings of the 2013 international conference on software engineering, ICSE, pp 772–781
– reference: Le Goues C, Dewey-Vogt M, Forrest S, Weimer W (2012) A systematic study of automated program repair: fixing 55 out of 105 bugs for $8 each. In: 2012 34th international conference on software engineering (ICSE). IEEE, pp 3–13
– reference: Tan SH, Yi J, Yulis, Mechtaev S, Roychoudhury A (2017) Codeflaws: a programming competition benchmark for evaluating automated program repair tools. In: ICSE Poster, to appear
– reference: Le GouesCHoltschulteNSmithEKBrunYDevanbuPForrestSWeimerWThe ManyBugs and IntroClass benchmarks for automated repair of C programsIEEE Trans Softw Eng201541121236125610.1109/TSE.2015.2454513
– reference: Kim D, Nam J, Song J, Kim S (2013) Automatic patch generation learned from human-written patches. In: ACM/IEEE international conference on software engineering, ICSE, pp 802–811
– reference: Fry ZP, Landau B, Weimer W (2012) A human study of patch maintainability. In: International symposium on software testing and analysis (ISSTA), pp 177–187
– reference: Le X BD, Chu DH, Lo D, Le Goues C, Visser W (2017b) S3: syntax-and semantic-guided repair synthesis via programming by examples. In: Joint meeting of the european software engineering conference and the ACM SIGSOFT symposium on the foundations of software engineering. ACM, pp 593–604
– reference: Reynolds A, Deters M, Kuncak V, Tinelli C, Barrett C (2015) Counterexample-guided quantifier instantiation for synthesis in SMT. In: International conference on computer aided verification. Springer, pp 198–216
– reference: Le X BD, Lo D, Le Goues C (2016b) Empirical study on synthesis engines for semantics-based program repair. In: International conference on software maintenance and evolution (ICSME). IEEE, pp 423–427
– reference: Jha S, Gulwani S, Seshia SA, Tiwari A (2010) Oracle-guided component-based program synthesis. In: Proceedings of the 32nd ACM/IEEE international conference on software engineering, ICSE, pp 215–224
– reference: Just R, Jalali D, Ernst MD (2014) Defects4j: a database of existing faults to enable controlled testing studies for java programs. In: Proceedings of the 2014 international symposium on software testing and analysis, ISSTA, pp 437–440
– reference: Qi Y, Mao X, Lei Y, Dai Z, Wang C (2014) The strength of random search on automated program repair. In: Proceedings of the 36th international conference on software engineering, ACM, ICSE, pp 254–265
– reference: DeMarco F, Xuan J, Le Berre D, Monperrus M (2014) Automatic repair of buggy if conditions and missing preconditions with SMT. In: Proceedings of the 6th international workshop on constraints in software testing, verification, and analysis, pp 30–39
– reference: Le X BD, Le Q L, Lo D, Le Goues C (2016a) Enhancing automated program repair with deductive verification. In: International conference on software maintenance and evolution (ICSME). IEEE, pp 428–432
– reference: Qi Z, Long F, Achour S, Rinard M (2015) An analysis of patch plausibility and correctness for generate-and-validate patch generation systems. In: Proceedings of the 2015 international symposium on software testing and analysis, ISSTA, pp 24–36
– reference: Mechtaev S, Yi J, Roychoudhury A (2015) Directfix: Looking for simple program repairs. In: Proceedings of the 37th ACM/IEEE international conference on software engineering, ICSE, pp 448–458
– reference: Könighofer R, Bloem R (2012) Repair with on-the-fly program analysis. In: Haifa verification conference. Springer, pp 56–71
– reference: Le GouesCNguyenTForrestSWeimerWGenprog: a generic method for automatic software repairIEEE Trans Softw Eng2012381547210.1109/TSE.2011.104
– reference: Le XBD (2016) Towards efficient and effective automatic program repair. In: International conference on automated software engineering (ASE). IEEE, pp 876–879
– reference: Le X BD, Le TDB, Lo D (2015b) Should fixing these failures be delegated to automated program repair?. In: International symposium on software reliability engineering (ISSRE). IEEE, pp 427–437
– reference: AlurRBodikRJuniwalGMartinMMRaghothamanMSeshiaSASinghRSolar-LezamaATorlakEUdupaASyntax-guided synthesisDependable Software Systems Engineering201540125
– reference: Le X BD, Lo D, Le Goues C (2016c) History driven program repair. In: Proceedings of the 23rd IEEE international conference on software analysis, evolution, and reengineering, SANER, pp 213–224
– reference: Weimer W, Fry ZP, Forrest S (2013) Leveraging program equivalence for adaptive program repair: models and first results. In: Proceedings of the 28th international conference on automated software engineering, IEEE, ASE, pp 356–366
– reference: Tassey G (2002) The economic impacts of inadequate infrastructure for software testing. National Institute of Standards and Technology, RTI project 7007(011)
– reference: Long F, Rinard M (2016a) An analysis of the search spaces for generate and validate patch generation systems. In: Proceedings of the 38th international conference on software engineering. ACM, pp 702–713
– reference: MartinezMMonperrusMMining software repair models for reasoning on the search space of automated program fixingEmpir Softw Eng201520117620510.1007/s10664-013-9282-8
– reference: Abreu R, Zoeteweij P, Van Gemund AJ (2007) On the accuracy of spectrum-based fault localization. In: Testing: academic and industrial conference practice and research techniques-MUTATION, 2007. TAICPART-MUTATION 2007. IEEE, pp 89–98
– reference: Thung F, Le X BD, Lo D (2015) Active semi-supervised defect categorization. In: International conference on program comprehension (ICPC). IEEE Press, pp 60–70
– reference: Gulwani S, Esparza J, Grumberg O, Sickert S (2016) Programming by examples (and its applications in data wrangling). Verification and synthesis of correct and secure systems
– reference: Long F, Rinard M (2016b) Automatic patch generation by learning correct code. In: ACM SIGPLAN notices, vol 51. ACM, pp 298–312
– reference: Le X BD, Chu D H, David L, Le Goues C (2017a) Jfix: sematics-based repair of java programs via symbolic pathfinder. In: Proceedings of the 2017 ACM international symposium on software testing and analysis, ISSTA
– reference: LogozzoFBallTModular and verified automatic program repairSIGPLAN Not2012471013314610.1145/2398857.2384626
– reference: Mechtaev S, Yi J, Roychoudhury A (2016) Angelix: scalable multiline program patch synthesis via symbolic analysis. In: Proceedings of the 38th ACM/IEEE international conference on software engineering, ICSE, pp 691–701
– reference: Ke Y, Stolee KT, Le Goues C, Brun Y (2015) Repairing programs with semantic code search. In: Proceedings of the 30th IEEE/ACM international conference on automated software engineering, pp 295–306
– reference: Smith EK, Barr ET, Le Goues C, Brun Y (2015) Is the cure worse than the disease? Overfitting in automated program repair. In: Joint meeting of the european software engineering conference and the ACM SIGSOFT symposium on the foundations of software engineering, ACM, ESEC/FSE, pp 532–543
– reference: Long F, Rinard M (2015) Staged program repair with condition synthesis. In: Joint meeting of the european software engineering conference and the ACM SIGSOFT symposium on the foundations of software engineering. ACM, pp 166–178
– reference: Xuan J, Martinez M, DeMarco F, Clément M, Lamelas S, Durieux T, Le Berre D, Monperrus M (2016) Nopol: Automatic repair of conditional statement bugs in java programs. IEEE Trans Softw Eng https://doi.org/10.1109/TSE.2016.2560811. https://hal.archives-ouvertes.fr/hal-01285008/document
– reference: WeimerWForrestSLe GouesCNguyenTAutomatic program repair with evolutionary computationCommun ACM201053510911610.1145/1735223.1735249
– reference: Le TDB, Le XBD, Lo D, Beschastnikh I (2015a) Synergizing specification miners through model fissions and fusions. In: International conference on automated software engineering (ASE). IEEE, pp 115–125
– reference: Cadar C, Dunbar D, Engler DR et al. (2008) Klee: unassisted and automatic generation of high-coverage tests for complex systems programs. In: Operating systems design and implementation, OSDI, pp 209–224
– ident: 9577_CR10
  doi: 10.1109/ICSE.2013.6606626
– ident: 9577_CR14
  doi: 10.1109/ASE.2015.83
– ident: 9577_CR27
  doi: 10.1145/2837614.2837617
– ident: 9577_CR32
  doi: 10.1145/2568225.2568254
– ident: 9577_CR17
  doi: 10.1109/ICSME.2016.68
– ident: 9577_CR12
– ident: 9577_CR25
  doi: 10.1145/2786805.2786811
– ident: 9577_CR20
  doi: 10.1145/3106237.3106309
– ident: 9577_CR41
  doi: 10.1109/TSE.2016.2560811
– volume: 38
  start-page: 54
  issue: 1
  year: 2012
  ident: 9577_CR22
  publication-title: IEEE Trans Softw Eng
  doi: 10.1109/TSE.2011.104
– ident: 9577_CR26
  doi: 10.1145/2884781.2884872
– ident: 9577_CR38
  doi: 10.1109/ICPC.2015.15
– volume: 53
  start-page: 109
  issue: 5
  year: 2010
  ident: 9577_CR39
  publication-title: Commun ACM
  doi: 10.1145/1735223.1735249
– ident: 9577_CR13
  doi: 10.1145/2970276.2975934
– volume: 41
  start-page: 1236
  issue: 12
  year: 2015
  ident: 9577_CR23
  publication-title: IEEE Trans Softw Eng
  doi: 10.1109/TSE.2015.2454513
– ident: 9577_CR30
  doi: 10.1145/2884781.2884807
– ident: 9577_CR18
  doi: 10.1109/SANER.2016.76
– ident: 9577_CR1
  doi: 10.1109/TAIC.PART.2007.13
– volume: 20
  start-page: 176
  issue: 1
  year: 2015
  ident: 9577_CR28
  publication-title: Empir Softw Eng
  doi: 10.1007/s10664-013-9282-8
– volume: 47
  start-page: 133
  issue: 10
  year: 2012
  ident: 9577_CR24
  publication-title: SIGPLAN Not
  doi: 10.1145/2398857.2384626
– volume: 40
  start-page: 1
  year: 2015
  ident: 9577_CR2
  publication-title: Dependable Software Systems Engineering
– ident: 9577_CR4
  doi: 10.1145/2593735.2593740
– ident: 9577_CR15
  doi: 10.1109/ISSRE.2015.7381836
– ident: 9577_CR6
– ident: 9577_CR34
  doi: 10.1007/978-3-319-21668-3_12
– ident: 9577_CR11
– ident: 9577_CR33
  doi: 10.1145/2771783.2771791
– ident: 9577_CR36
– ident: 9577_CR40
  doi: 10.1109/ASE.2013.6693094
– ident: 9577_CR9
  doi: 10.1109/ASE.2015.60
– ident: 9577_CR37
– ident: 9577_CR3
– ident: 9577_CR29
  doi: 10.1109/ICSE.2015.63
– ident: 9577_CR7
  doi: 10.1145/1806799.1806833
– ident: 9577_CR8
  doi: 10.1145/2610384.2628055
– ident: 9577_CR35
  doi: 10.1145/2786805.2786825
– ident: 9577_CR31
  doi: 10.1109/ICSE.2013.6606623
– ident: 9577_CR21
  doi: 10.1109/ICSE.2012.6227211
– ident: 9577_CR16
  doi: 10.1109/ICSME.2016.66
– ident: 9577_CR5
  doi: 10.1145/2338965.2336775
– ident: 9577_CR19
  doi: 10.1145/3092703.3098225
SSID ssj0009745
Score 2.462601
Snippet 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...
SourceID proquest
crossref
springer
SourceType Aggregation Database
Enrichment Source
Index Database
Publisher
StartPage 3007
SubjectTerms Automation
Compilers
Computer Science
Heuristic
Heuristic methods
Interpreters
Maintenance
Programming Languages
Quality assessment
Repair
Semantics
Software Engineering/Programming and Operating Systems
Title Overfitting in semantics-based automated program repair
URI https://link.springer.com/article/10.1007/s10664-017-9577-2
https://www.proquest.com/docview/2075611356
Volume 23
WOSCitedRecordID wos000440031100016&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D
hasFullText 1
inHoldings 1
isFullTextHit
isPrint
journalDatabaseRights – providerCode: PRVAVX
  databaseName: SpringerLINK Contemporary 1997-Present
  customDbUrl:
  eissn: 1573-7616
  dateEnd: 99991231
  omitProxy: false
  ssIdentifier: ssj0009745
  issn: 1382-3256
  databaseCode: RSV
  dateStart: 19970101
  isFulltext: true
  titleUrlDefault: https://link.springer.com/search?facet-content-type=%22Journal%22
  providerName: Springer Nature
link http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwnV1LS8QwEA6yevDi-sTVVXrwpASSNk2ao4iLB1nFF3sraR5Q0F1pu_v7nXRbq6KC3kqbhjB5fJPM5PsQOoGdDqUm5JglyvmjG4Yl0QxrFXMllDYuqynzr8V4nEwm8ra5x1222e5tSLJeqT9cduPcZ0z4kKMQGNbdVUC7xOs13N0_dUy7olYm9tx6OAJAb0OZ31XxGYw6D_NLULTGmlH_X63cRBuNaxmcL8fCFlqx023Ub2UbgmYW7yBxs_DS1HXCc5BPg9K-gHlzXWIPaSZQ82oGfiw8NclbQQGYlRe76HF0-XBxhRv9BKwjyissdEgN09YZqRJJnMus4rGFXamkUSYSQ6WGxobEKqKJcTaC-ZgJykLHHFdRtId609nU7qOAJZkxsSCxIYypWCUA7LHUIYeXksXZAJHWkKluyMW9xsVz2tEie8OkYJjUGyYNB-j0_ZfXJbPGb4WHbe-kzSQr0xDcHU5pFPMBOmt7o_v8Y2UHfyp9iNbBSVpy4NIh6lXF3B6hNb2o8rI4rsfeG_ii0do
linkProvider Springer Nature
linkToHtml http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwnV1bS8MwFA4yBX1xXnE6tQ8-KYGkzaV9FHFMnFN0yt5KmgsUdJO22-836VqrooK-hSYN4SQn30nOyXcAOLEnHYyVzyAJhXFXNwRGSBIoBWWCC6lMUlLmD_hwGI7H0V31jjuvo91rl2S5U3947MaYi5hwLkfOod13l4kFLEeYf__w1DDt8jIzsePWg4EF9NqV-V0Xn8GosTC_OEVLrOm1_zXKDbBemZbe-WItbIIlPdkC7Tptg1dp8Tbgt3OXmroMePbSiZfrFyveVObQQZryxKyYWjvWlqrgLS-zmJVmO-Cxdzm66MMqfwKUAWYF5NLHikhtVCTCCBmTaMGotqfSCAcJDxWOpB2sj7RAEimjA6uPCcfEN8QwEQS7oDWZTvQe8EiYKEU5ogoRIqgILbDTSPrMfowITToA1YKMZUUu7nJcPMcNLbITTGwFEzvBxH4HnL7_8rpg1vitcbeenbhSsjz2rbnDMA4o64Czejaa6h872_9T62Ow2h_dDOLB1fD6AKxZg2nBh4u7oFVkM30IVuS8SPPsqFyHb9hh1L4
linkToPdf http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwpV1bS8MwFA6iIr44rzid2geflLCmzaV9FHUojjnwwt5KmgsUtBttt99v0otVUUF8K20awklOv5Oek-8D4NTsdBCSHoU44Nr-usEwdAWGghPKGRdSxyVl_pCNRsFkEo5rndO8qXZvUpLVmQbL0pQW_ZnU_Q8H3yi11RM2_cgYNN_gFWzr6O12_eG5Zd1lpUqx5dmDvgH3Jq35XRefgamNNr8kSEvcGXT-PeJNsFGHnM5FtUa2wJJKt0GnkXNwau_eAex-YSWry0JoJ0mdXL0asycihxbqpMPnxdTEt-aqLupyMoNlSbYLngbXj5c3sNZVgMJHtIBMeEhiobQMeRC6WseKU6LMbjVEfswCiUJhBuu5irvClVr5xk9jhrCnsabc9_fAcjpN1T5wcBBLSZhLpIsxJzwwgE9C4VFzM8Qk7gK3MWokatJxq33xErV0ydYwkTFMZA0TeV1w9v7KrGLc-K1xr5mpqHa-PPJMGEQR8gntgvNmZtrHP3Z28KfWJ2BtfDWIhreju0OwbuKoiiYX9cBykc3VEVgViyLJs-NySb4BKx_dog
openUrl ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=Overfitting+in+semantics-based+automated+program+repair&rft.jtitle=Empirical+software+engineering+%3A+an+international+journal&rft.au=Le%2C+Xuan+Bach+D.&rft.au=Thung%2C+Ferdian&rft.au=Lo%2C+David&rft.au=Goues%2C+Claire+Le&rft.date=2018-10-01&rft.issn=1382-3256&rft.eissn=1573-7616&rft.volume=23&rft.issue=5&rft.spage=3007&rft.epage=3033&rft_id=info:doi/10.1007%2Fs10664-017-9577-2&rft.externalDBID=n%2Fa&rft.externalDocID=10_1007_s10664_017_9577_2
thumbnail_l http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=1382-3256&client=summon
thumbnail_m http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=1382-3256&client=summon
thumbnail_s http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=1382-3256&client=summon