상세 보기
RepCoder: An Automated Program Repair Framework for Probability-Based Program Synthesis
- Ji, Suhwan;
- Choi, Sang-Min;
- Ko, Sang-Ki;
- Kim, Dohyung;
- Im, Hyeonseung
WEB OF SCIENCE
3SCOPUS
4초록
Recently, machine learning-based automated program synthesis and repair have extensively been investigated for various domain specific and general-purpose programming languages. In this paper, we revisit the problem of synthesizing programs from input-output examples, and reformulate it as a problem of program repair. More specifically, we propose an automated program repair framework, called RepCoder, that can be used with a neural program synthesis method such as DeepCoder and PCCoder. Given a set of inputoutput examples and a user program with some errors, RepCoder effectively reduces the search space by considering user-written statements to be correct with high likelihood if they are included in the top-.. candidate statements predicted by the employed neural synthesis method. Otherwise, they are considered to be incorrect and replaced with the candidate statements with the highest probabilities that are consistent with the given input-output examples. Our experimental studies confirm that RepCoder using PCCoder as the main predictor effectively and efficiently repairs erroneous programs, showing that it achieves up to 3x the error correction rate compared to when using only PCCoder for repair, i.e., synthesizing a program from scratch without considering the given user program.
키워드
- 제목
- RepCoder: An Automated Program Repair Framework for Probability-Based Program Synthesis
- 저자
- Ji, Suhwan; Choi, Sang-Min; Ko, Sang-Ki; Kim, Dohyung; Im, Hyeonseung
- 발행일
- 2022
- 유형
- Proceedings Paper
- 저널명
- 37TH ANNUAL ACM SYMPOSIUM ON APPLIED COMPUTING
- 페이지
- 1554 ~ 1561