Automated program repair (APR) aims to reduce the effort for software development. With the development of deep learning, lots of DL-based APR approaches have been proposed using an encoder-decoder architecture. Despite the promising performance, these models share one same limitation: generating lots of untypable patches. The main reason for this phenomenon is that the existing models do not consider the constraints of code captured by a set of typing rules.
In this paper, we propose, Tare, a type-aware model for neural program repair to learn the typing rules. To encode an individual typing rule, we introduces three novel components: (1) a novel type of grammars, T-Grammar that integrates the type information into a standard grammar, (2) a novel representation of code, T-Graph that integrates the key information needed for type checking in an AST, and (3) a novel type-aware neural program repair approach, Tare that encodes the T-Graph and generates the patches guided by T-Grammar.
The experiment was conducted on three benchmarks, 393 bugs from Defects4J v1.2, 444 additional bugs from Defects4J v2.0, and 40 bugs from QuixBugs. Our results show that Tare repairs 62, 32, and 27 bugs on these benchmarks respectively and outperforms the existing APR approaches on all benchmarks. The further analysis also shows that Tare tends to generate more compilable patches than the existing DL-based APR approaches with the typing rule information.
Thu 18 MayDisplayed time zone: Hobart change
13:45 - 15:15 | Program repair with and for AITechnical Track / Journal-First Papers / DEMO - Demonstrations at Meeting Room 102 Chair(s): Julia Rubin University of British Columbia, Canada | ||
13:45 15mTalk | Impact of Code Language Models on Automated Program Repair Technical Track Nan Jiang Purdue University, Kevin Liu Lynbrook High School, Thibaud Lutellier University of Alberta, Lin Tan Purdue University Pre-print | ||
14:00 15mTalk | Tare: Type-Aware Neural Program Repair Technical Track Qihao Zhu Peking University, Zeyu Sun Zhongguancun Laboratory, Wenjie Zhang Peking University, Yingfei Xiong Peking University, Lu Zhang Peking University | ||
14:15 15mTalk | Template-based Neural Program Repair Technical Track Xiangxin Meng Beihang University, Beijing, China, Xu Wang Beihang University, Hongyu Zhang The University of Newcastle, Hailong Sun School of Computer Science and Engineering, Beihang University, Beijing,China, Xudong Liu Beihang University, Chunming Hu Beihang University Pre-print | ||
14:30 15mTalk | Automated Repair of Programs from Large Language Models Technical Track Zhiyu Fan National University of Singapore, Singapore, Xiang Gao Beihang University, China, Martin Mirchev National University of Singapore, Abhik Roychoudhury National University of Singapore, Shin Hwei Tan Southern University of Science and Technology | ||
14:45 15mTalk | Automated Program Repair in the Era of Large Pre-trained Language Models Technical Track Chunqiu Steven Xia University of Illinois at Urbana-Champaign, Yuxiang Wei University of Illinois at Urbana-Champaign, Lingming Zhang University of Illinois at Urbana-Champaign | ||
15:00 7mTalk | AIREPAIR: A Repair Platform for Neural Networks DEMO - Demonstrations Xidan Song Department of Computer Science, University of Manchester, UK, Youcheng Sun The University of Manchester, Mustafa A. Mustafa Department of Computer Science, University of Manchester, UK, imec-COSIC, KU Leuven, Belgium, Lucas C. Cordeiro University of Manchester | ||
15:07 7mTalk | Arachne: Search Based Repair of Deep Neural Networks Journal-First Papers Link to publication DOI Pre-print |