arrow
Return

Computation Tree Logic Guided Program Repair

delete2025-10-27
delete0
delete
OA
AI
Y
Yu Liu
Y
Yahui Song
М
Мартин Мирчев
A
Abhik Roychoudhury
DOI:10.1109/TSE.2025.3625772delete
deleteOriginal
deleteOriginal request for help
deleteShare
deleteSave
Abstract

Abstract

En 中文
Temporal logics like Computation Tree Logic (CTL) have been widely used as expressive formalisms to capture rich behavioural specifications. CTL can express properties such as reachability, termination, invariants and responsiveness, which are difficult to test. This paper suggests a mechanism for the automated repair of infinite-state programs guided by CTL properties. Our produced patches avoid the overfitting issue that occurs in test-suite-guided repair, where the repaired code may not pass tests outside the given test suite. To realise this vision, we propose a novel find-and-fix framework based on Datalog, a widely used domain-specific language for program analysis, which readily supports nested fixed-point semantics of CTL via stratified negation. Specifically, our framework encodes the program and CTL properties into Datalog facts and rules and performs the repair by modifying the facts to pass the analysis rules. In the framework, to achieve both analysis and repair results, we adapt existing techniques – including loop summarisation and Symbolic Execution of Datalog (SEDL) – with key modifications. Our approach achieves analysis accuracy of 56.6%  on a CTL verification benchmark and 88.5%  on a termination/responsiveness benchmark, surpassing the best baseline performances of 27.7%  and 76.9%, respectively. Our approach repairs all detected bugs, which is not achieved by existing tools.
Keywords:
Program analysis and automated repair
datalog
loop summarisation

Journal

IEEE Transactions on Software Engineering cover
IEEE Transactions on Software Engineering
IF:
5.6
Papers:
2.9K
Citations:
1.1W

Organization

N
national university of singapore
Scholars:
4.6K
Papers: 2.4K
Citations: 1
Cited Papers

Cited Papers

Program Repair for Hyperproperties
err2019-01-01
err0
PREAI
errBonakdarpour,Borzoo; Finkbeiner,Bernd
errShare
errSave
Proving Conditional Termination
err2024-09-05
err0
errOAAI
errByron Cook; Sumit Gulwani; Tal Lev-Ami; Andrey Rybalchenko; Mooly Sagiv
errShare
errSave
ASP for Construction and Validation of Regulatory Biological Networks
err2014-07-10
err0
PREAI
errRocca,Alexandre; Mobilia,Nicolas; Fanchon,Éric; Ribeiro,Tony; Trilling,Laurent; Inoue,Katsumi
errShare
errSave
Fairness Modulo Theory: A New Approach to LTL Software Model Checking
err2015-07-16
err0
errOAAI
errDaniel Dietsch; Matthias Heizmann; Vincent Langenfeld; Andreas Podelski
errShare
errSave
errShare
errSave
errShare
errSave
Proving Termination Through Conditional Termination
err2017-01-01
err0
PREAI
errBorralleras,Cristina; Brockschmidt,Marc; Larraz,Daniel; Oliveras,Albert; Rodríguez-Carbonell,Enric; Rubio,Albert
errShare
errSave
Multiphase-Linear Ranking Functions and Their Relation to Recurrent Sets
err2019-01-01
err0
PREAI
errBen-Amram,Amir M.; Doménech,Jesús J.; Genaim,Samir
errShare
errSave
Angelix
err2016-05-14
err0
PREAI
errSergey Mechtaev; Jooyong Yi; Abhik Roychoudhury
errShare
errSave
researcher View more