Wed 6 Dec 2023 16:15 - 16:30 at Golden Gate C3 - Automated Repair II Chair(s): Luciano Baresi

Automated program repair relying on static analysis complements test-driven repair, since it does not require failing tests to repair a bug, and it avoids test-overfitting by considering program properties. Due to the rich variety and complexity of program analyses, existing static program repair techniques are tied to specific analysers, and thus repair only narrow classes of defects. To develop a general-purpose static program repair framework that targets a wide range of properties and programming languages, we propose to integrate program repair with Datalog-based analysis. Datalog solvers are programmable fixed point engines which can be used to encode many program analysis problems in a modular fashion. The program under analysis is encoded as Datalog facts, while the fixed point equations of the program analysis are expressed as recursive Datalog rules. In this context, we view repairing the program as modifying the corresponding Datalog facts. This is accomplished by a novel technique, symbolic execution of Datalog, that evaluates Datalog queries over a symbolic database of facts, instead of a concrete set of facts. The result of symbolic query evaluation allows us to infer what changes to a given set of Datalog facts repair the program so that it meets the desired analysis goals. We developed a symbolic executor for Datalog called Symlog, on top of which we built a repair tool SymlogRepair. We show the versatility of our approach on several analysis problems — repairing null pointer exceptions in Java programs, repairing data leaks in Python notebooks, and repairing four types of security vulnerabilities in Solidity smart contracts.

Wed 6 Dec

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

16:00 - 18:00
Automated Repair IIJournal First / Research Papers at Golden Gate C3
Chair(s): Luciano Baresi Politecnico di Milano
16:00
15m
Talk
A Large-scale Empirical Review of Patch Correctness Checking Approaches
Research Papers
Jun Yang UIUC, Yuehan Wang University of Illinois at Urbana-Champaign, Yiling Lou Fudan University, Ming Wen Huazhong University of Science and Technology, Lingming Zhang University of Illinois at Urbana-Champaign
Media Attached
16:15
15m
Talk
Program Repair Guided by Datalog-Defined Static Analysis
Research Papers
Yu Liu Beijing University of Technology, Sergey Mechtaev University College London, Pavle Subotic Microsoft, Abhik Roychoudhury National University of Singapore
Media Attached
16:30
15m
Talk
SynShine: Improved Fixing of Syntax Errors
Journal First
Toufique Ahmed University of California at Davis, Noah Rose Ledesma UC Davis, Prem Devanbu University of California at Davis
Media Attached
16:45
15m
Talk
Baldur: Whole-Proof Generation and Repair with Large Language Models
Research Papers
Emily First University of California, San Diego, Markus Rabe Google, Talia Ringer University of Illinois at Urbana-Champaign, Yuriy Brun University of Massachusetts
Media Attached
17:00
15m
Talk
KG4CraSolver: Recommending Crash Solutions via Knowledge Graph
Research Papers
Xueying Du Fudan University, Yiling Lou Fudan University, Mingwei Liu Fudan University, Xin Peng Fudan University, Tianyong Yang Fudan University
Pre-print Media Attached
17:15
15m
Talk
[Remote] Automated and Context-Aware Repair of Color-Related Accessibility Issues for Android Apps
Research Papers
Yuxin Zhang Tianjin University, Sen Chen College of Intelligence and Computing, Tianjin University, Lingling Fan College of Cyber Science, Nankai University, Chunyang Chen Monash University, Xiaohong Li Tianjin University
Media Attached
17:30
15m
Talk
[Remote] Semantic Test Repair for Web applications
Research Papers
Xiaofang Qi School of Computer Science and Engineering, Southeast University, Xiang Qian School of Computer Science and Engineering, Southeast University, Yanhui Li Nanjing University
Media Attached