Write a Blog >>
Thu 13 Oct 2022 13:30 - 13:50 at Ballroom C East - Technical Session 25 - Software Repairs Chair(s): Yannic Noller

Automated program repair (APR) techniques have shown great success in automatically finding fixes for programs in programming languages such as C or Java. In this work, we focus on repairing formal specifications, in particular for the Alloy specification language. As opposed to most APR tools, our approach to repair Alloy specifications, named ICEBAR, does not use test-based oracles for patch assessment. Instead, ICEBAR relies on the use of property-based oracles, commonly found in Alloy specifications as predicates and assertions. These property-based oracles define stronger conditions for patch assessment, thus reducing the notorious overfitting issue caused by using test-based oracles, typically observed in APR contexts. Moreover, as assertions and predicates are inherent to Alloy, whereas test cases are not, our tool is potentially more appealing to Alloy users than test-based Alloy repair tools.

At a high level, ICEBAR is an iterative, counterexample-based process, that generates and validates repair candidates. ICEBAR receives a faulty Alloy specification with a failing property-based oracle, and uses Alloy’s counterexamples to build tests and feed ARepair, a test-based Alloy repair tool, in order to produce a repair candidate. The candidate is then checked against the property oracle for overfitting: if the candidate passes, a repair has been found; if not, further counterexamples are generated to construct tests and enhance the test suite, and the process is iterated. ICEBAR includes different mechanisms, with different degrees of reliability, to generate counterexamples from failing predicates and assertions.

Our evaluation shows that ICEBAR significantly improves over ARepair, in both reducing overfitting and improving the repair rate. Moreover, ICEBAR shows that iterative refinement allows us to significantly improve a state-of-the-art tool for automated repair of Alloy specifications without any modifications to the tool.

Thu 13 Oct

Displayed time zone: Eastern Time (US & Canada) change

13:30 - 15:30
Technical Session 25 - Software RepairsNIER Track / Research Papers / Tool Demonstrations at Ballroom C East
Chair(s): Yannic Noller National University of Singapore
13:30
20m
Research paper
ICEBAR: Feedback-Driven Iterative Repair of Alloy Specifications
Research Papers
Simón Gutiérrez Brida University of Rio Cuarto and CONICET, Argentina, Germán Regis Universidad Nacional de Río Cuarto, Guolong Zheng University of Nebraska Lincoln, Hamid Bagheri University of Nebraska-Lincoln, ThanhVu Nguyen George Mason University, Nazareno Aguirre University of Rio Cuarto and CONICET, Argentina, Marcelo F. Frias Dept. of Software Engineering Instituto Tecnológico de Buenos Aires
13:50
20m
Research paper
Repairing Failure-inducing Inputs with Input Reflection
Research Papers
Yan Xiao National University of Singapore, Yun Lin National University of Singapore, Ivan Beschastnikh University of British Columbia, Changsheng SUN , David Rosenblum George Mason University, Jin Song Dong National University of Singapore
14:10
10m
Demonstration
ElecDaug: Electromagnetic Data Augmentation for Model Repair based on Metamorphic Relation
Tool Demonstrations
Jiawei He , Zhida Bao Harbin Engineering University, Quanjun Zhang Nanjing University, Weisong Sun State Key Laboratory for Novel Software Technology, Nanjing University, Jiawei Liu Nanjing University, Chunrong Fang Nanjing University, Yun Lin National University of Singapore
14:20
20m
Research paper
TransplantFix: Graph Differencing-based Code Transplantation for Automated Program RepairVirtual
Research Papers
Deheng Yang National University of Defense Technology, Xiaoguang Mao National University of Defense Technology, Liqian Chen National University of Defense Technology, China, Xuezheng Xu Academy of Military Sciences, Beijing, China, Yan Lei Chongqing University, David Lo Singapore Management University, Jiayu He National University of Defense Technology, Changsha, China
14:40
10m
Vision and Emerging Results
Multi-objective Optimization-based Bug-fixing Template Mining for Automated Program RepairVirtual
NIER Track
Misoo Kim Sungkyunkwan University, Youngkyoung Kim Sungkyunkwan University, Kicheol Kim SungKyunKwan University, Eunseok Lee Sungkyunkwan University
14:50
20m
Research paper
StandUp4NPR: Standardizing Setup for Empirically Comparing Neural Program Repair SystemsVirtual
Research Papers
Wenkang Zhong State Key Laboratory for Novel Software and Technology, Nanjing University, 22 Hankou Road, Nanjing, China, Hongliang Ge State Key Laboratory for Novel Software and Technology, Nanjing University, 22 Hankou Road, Nanjing, China, Hongfei Ai State Key Laboratory for Novel Software and Technology, Nanjing University, 22 Hankou Road, Nanjing, China, Chuanyi Li State Key Laboratory for Novel Software Technology, Nanjing University, Kui Liu Huawei Software Engineering Application Technology Lab, Jidong Ge , Bin Luo Software Institute, Nanjing University