Invalidator: Automated patch correctness assessment via semantic and syntactic reasoning

T Le-Cong, DM Luong, XBD Le, D Lo… - IEEE Transactions …, 2023 - ieeexplore.ieee.org
Automated program repair (APR) faces the challenge of test overfitting, where generated
patches pass validation tests but fail to generalize. Existing methods for patch assessment …

Non-termination proving at scale

A Raad, J Vanegue, P O'Hearn - Proceedings of the ACM on …, 2024 - dl.acm.org
Program termination is a classic non-safety property whose falsification cannot in general be
witnessed by a finite trace. This makes testing for non-termination challenging, and also a …

Learning probabilistic termination proofs

A Abate, M Giacobbe, D Roy - … Conference, CAV 2021, Virtual Event, July …, 2021 - Springer
We present the first machine learning approach to the termination analysis of probabilistic
programs. Ranking supermartingales (RSMs) prove that probabilistic programs halt, in …

Neural termination analysis

M Giacobbe, D Kroening, J Parsert - Proceedings of the 30th ACM Joint …, 2022 - dl.acm.org
We introduce a novel approach to the automated termination analysis of computer
programs: we use neural networks to represent ranking functions. Ranking functions map …

Large-scale analysis of non-termination bugs in real-world oss projects

X Shi, X **e, Y Li, Y Zhang, S Chen, X Li - Proceedings of the 30th ACM …, 2022 - dl.acm.org
Termination is a crucial program property. Non-termination bugs can be subtle to detect and
may remain hidden for long before they take effect. Many real-world programs still suffer …

Checking equivalence in a non-strict language

JC Kolesar, R Piskac, WT Hallahan - Proceedings of the ACM on …, 2022 - dl.acm.org
Program equivalence checking is the task of confirming that two programs have the same
behavior on corresponding inputs. We develop a calculus based on symbolic execution and …

TerGEC: A graph enhanced contrastive approach for program termination analysis

S Liu, JW Keung, Z Yang, Y Liao, Y Li - Science of Computer Programming, 2024 - Elsevier
Context Programs with non-termination behavior induce various bugs, such as denial-of-
service vulnerability and memory exhaustion. Hence the ability to detect non-termination …

Reactive Programming without Functions

B Oeyen, J De Koster, W De Meuter - arxiv preprint arxiv:2403.02296, 2024 - arxiv.org
Context: Reactive programming (RP) is a declarative programming paradigm suitable for
expressing the handling of events. It enables programmers to create applications that react …

Dynaplex: analyzing program complexity using dynamically inferred recurrence relations

D Ishimwe, KH Nguyen, TV Nguyen - Proceedings of the ACM on …, 2021 - dl.acm.org
Being able to detect program runtime complexity is useful in many tasks (eg, checking
expected performance and identifying potential security vulnerabilities). In this work, we …

Neural Solving Uninterpreted Predicates with Abstract Gradient Descent

S Yu, Z Liu, T Wang, J Wang - ACM Transactions on Software …, 2024 - dl.acm.org
Uninterpreted predicate solving is a fundamental problem in formal verification, including
loop invariant and constrained horn clauses predicate solving. Existing approaches have …