Empirical study on synthesis engines for semantics-based program repair

Automatic Program Repair (APR) is an emerging and rapidly growing research area, with many techniques proposed to repair defective software. One notable state-of-the-art line of APR approaches is known as semantics-based techniques, e.g., Angelix, which extract semantics constraints, i.e., specifica...

Full description

Saved in:
Bibliographic Details
Main Authors: BACH, Le Dinh Xuan, LO, David, GOUES, Claire Le
Format: text
Language:English
Published: Institutional Knowledge at Singapore Management University 2016
Subjects:
Online Access:https://ink.library.smu.edu.sg/sis_research/3749
https://ink.library.smu.edu.sg/context/sis_research/article/4751/viewcontent/3806a423.pdf
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Singapore Management University
Language: English
id sg-smu-ink.sis_research-4751
record_format dspace
spelling sg-smu-ink.sis_research-47512018-06-01T05:04:59Z Empirical study on synthesis engines for semantics-based program repair BACH, Le Dinh Xuan LO, David GOUES, Claire Le Automatic Program Repair (APR) is an emerging and rapidly growing research area, with many techniques proposed to repair defective software. One notable state-of-the-art line of APR approaches is known as semantics-based techniques, e.g., Angelix, which extract semantics constraints, i.e., specifications, via symbolic execution and test suites, and then generate repairs conforming to these constraints using program synthesis. The repair capability of such approaches-expressive power, output quality, and scalability-naturally depends on the underlying synthesis technique. However, despite recent advances in program synthesis, not much attention has been paid to assess, compare, or leverage the variety of available synthesis engine capabilities in an APR context. In this paper, we empirically compare the effectiveness of different synthesis engines for program repair. We do this by implementing a framework on top of the latest semantics-based APR technique, Angelix, that allows us to use different such engines. For this preliminary study, we use a subset of bugs in the IntroClass benchmark, a dataset of many small programs recently proposed for use in evaluating APR techniques, with a focus on assessing output quality. Our initial findings suggest that different synthesis engines have their own strengths and weaknesses, and future work on semantics-based APR should explore innovative ways to exploit and combine multiple synthesis engines. 2016-10-01T07:00:00Z text application/pdf https://ink.library.smu.edu.sg/sis_research/3749 info:doi/10.1109/ICSME.2016.68 https://ink.library.smu.edu.sg/context/sis_research/article/4751/viewcontent/3806a423.pdf http://creativecommons.org/licenses/by-nc-nd/4.0/ Research Collection School Of Computing and Information Systems eng Institutional Knowledge at Singapore Management University Empirical Study Automated Program Repair Program Synthesis Engines computer bugs benchmark testing Software Engineering
institution Singapore Management University
building SMU Libraries
continent Asia
country Singapore
Singapore
content_provider SMU Libraries
collection InK@SMU
language English
topic Empirical Study
Automated Program Repair
Program Synthesis Engines
computer bugs
benchmark testing
Software Engineering
spellingShingle Empirical Study
Automated Program Repair
Program Synthesis Engines
computer bugs
benchmark testing
Software Engineering
BACH, Le Dinh Xuan
LO, David
GOUES, Claire Le
Empirical study on synthesis engines for semantics-based program repair
description Automatic Program Repair (APR) is an emerging and rapidly growing research area, with many techniques proposed to repair defective software. One notable state-of-the-art line of APR approaches is known as semantics-based techniques, e.g., Angelix, which extract semantics constraints, i.e., specifications, via symbolic execution and test suites, and then generate repairs conforming to these constraints using program synthesis. The repair capability of such approaches-expressive power, output quality, and scalability-naturally depends on the underlying synthesis technique. However, despite recent advances in program synthesis, not much attention has been paid to assess, compare, or leverage the variety of available synthesis engine capabilities in an APR context. In this paper, we empirically compare the effectiveness of different synthesis engines for program repair. We do this by implementing a framework on top of the latest semantics-based APR technique, Angelix, that allows us to use different such engines. For this preliminary study, we use a subset of bugs in the IntroClass benchmark, a dataset of many small programs recently proposed for use in evaluating APR techniques, with a focus on assessing output quality. Our initial findings suggest that different synthesis engines have their own strengths and weaknesses, and future work on semantics-based APR should explore innovative ways to exploit and combine multiple synthesis engines.
format text
author BACH, Le Dinh Xuan
LO, David
GOUES, Claire Le
author_facet BACH, Le Dinh Xuan
LO, David
GOUES, Claire Le
author_sort BACH, Le Dinh Xuan
title Empirical study on synthesis engines for semantics-based program repair
title_short Empirical study on synthesis engines for semantics-based program repair
title_full Empirical study on synthesis engines for semantics-based program repair
title_fullStr Empirical study on synthesis engines for semantics-based program repair
title_full_unstemmed Empirical study on synthesis engines for semantics-based program repair
title_sort empirical study on synthesis engines for semantics-based program repair
publisher Institutional Knowledge at Singapore Management University
publishDate 2016
url https://ink.library.smu.edu.sg/sis_research/3749
https://ink.library.smu.edu.sg/context/sis_research/article/4751/viewcontent/3806a423.pdf
_version_ 1770573710636351488