English
Related papers

Related papers: LoopInvGen: A Loop Invariant Generator based on Pr…

200 papers

Loop invariants play a central role in the verification of imperative programs. However, finding these invariants is often a difficult and time-consuming task for the programmer. We have previously shown how program transformation can be…

Logic in Computer Science · Computer Science 2017-08-25 G. W. Hamilton

One of the obstacles in automatic program proving is to obtain suitable loop invariants. The invariant of a loop is a weakened form of its postcondition (the loop's goal, also known as its contract); the present work takes advantage of this…

Software Engineering · Computer Science 2013-08-14 Carlo A. Furia , Bertrand Meyer

Software verification has emerged as a key concern for ensuring the continued progress of information technology. Full verification generally requires, as a crucial step, equipping each loop with a "loop invariant". Beyond their role in…

Software Engineering · Computer Science 2014-01-14 Carlo A. Furia , Bertrand Meyer , Sergey Velder

Loop invariants are software properties that hold before and after every iteration of a loop. As such, invariants provide inductive arguments that are key in automating the verification of program loops. The problem of generating loop…

Logic in Computer Science · Computer Science 2023-05-25 George Kenison , Laura Kovács , Anton Varonka

We address the predicate generation problem in the context of loop invariant inference. Motivated by the interpolation-based abstraction refinement technique, we apply the interpolation theorem to synthesize predicates implicitly implied by…

Logic in Computer Science · Computer Science 2015-07-01 Wonchan Lee , Yungbum Jung , Bow-yaw Wang , Kwangkuen Yi

We describe a system to prove properties of programs. The key feature of this approach is a method to automatically synthesize inductive invariants of the loops contained in the program. The method is generic, i.e., it applies to a large…

Logic in Computer Science · Computer Science 2019-06-27 Mnacho Echenim , Nicolas Peltier , Yanis Sellami

When proving invariance properties of a program, we face two problems. The first problem is related to the necessity of proving tautologies of considered assertion language, whereas the second manifests in the need of finding sufficiently…

Logic in Computer Science · Computer Science 2016-11-24 Steven de Oliveira , Saddek Bensalem , Virgile Prevosto

We present an algorithm for synthesizing program loops satisfying a given polynomial loop invariant. The class of loops we consider can be modeled by a system of algebraic recurrence equations with constant coefficients. We turn the task of…

Programming Languages · Computer Science 2020-04-29 Andreas Humenberger , Laura Kovács

We present the first approach to prove non-termination of integer programs that is based on loop acceleration. If our technique cannot show non-termination of a loop, it tries to accelerate it instead in order to find paths to other…

Logic in Computer Science · Computer Science 2019-08-09 Florian Frohn , Jürgen Giesl

Automated program verification has always been an important component of building trustworthy software. While the analysis of real-world programs remains a theoretical challenge, the automation of loop invariant analysis has effectively…

Software Engineering · Computer Science 2025-09-17 Ruibang Liu , Minyu Chen , Ling-I Wu , Jingyu Ke , Guoqiang Li

Provably correct software is one of the key challenges of our software-driven society. Program synthesis -- the task of constructing a program satisfying a given specification -- is one strategy for achieving this. The result of this task…

Logic in Computer Science · Computer Science 2022-06-24 Andreas Humenberger , Daneshvar Amrollahi , Nikolaj Bjørner , Laura Kovács

We propose a framework for synthesizing inductive invariants for incomplete verification engines, which soundly reduce logical problems in undecidable theories to decidable theories. Our framework is based on the counter-example guided…

Programming Languages · Computer Science 2018-01-15 Daniel Neider , Pranav Garg , P. Madhusudan , Shambwaditya Saha , Daejun Park

Provably correct software is one of the key challenges in our softwaredriven society. While formal verification establishes the correctness of a given program, the result of program synthesis is a program which is correct by construction.…

Logic in Computer Science · Computer Science 2021-03-08 Andreas Humenberger , Laura Kovacs

This article focuses on automatically generating polynomial equations that are inductive loop invariants of computer programs. We propose a new algorithm for this task, which is based on polynomial interpolation. Though the proposed…

Software Engineering · Computer Science 2012-04-25 Marc Moreno Maza , Rong Xiao

Loop invariants are properties of a program loop that hold both before and after each iteration of the loop. They are often used to verify programs and ensure that algorithms consistently produce correct results during execution.…

Symbolic Computation · Computer Science 2026-01-08 Erdenebayar Bayarmagnai , Fatemeh Mohammadi , Rémi Prébet

Loop invariant generation remains a critical bottleneck in automated program verification. Recent work has begun to explore the use of Large Language Models (LLMs) in this area, yet these approaches tend to lack a reliable and structured…

Programming Languages · Computer Science 2025-12-19 Daragh King , Vasileios Koutavas , Laura Kovacs

The automatic generation of loop invariants is a fundamental challenge in software verification. While this task is undecidable in general, it is decidable for certain restricted classes of programs. This work focuses on invariant…

Computational Complexity · Computer Science 2024-11-14 Rida Ait El Manssour , George Kenison , Mahsa Shirmohammadi , Anton Varonka

A loop invariant is a property of a loop that remains true before and after each execution of the loop. The identification of loop invariants is a critical step to support automated program safety assessment. Recent advancements in Large…

Software Engineering · Computer Science 2025-11-11 Mostafijur Rahman Akhond , Saikat Chakraborty , Gias Uddin

Loop invariants are fundamental to reasoning about programs with loops. They establish properties about a given loop's behavior. When they additionally are inductive, they become useful for the task of formal verification that seeks to…

We apply multivariate Lagrange interpolation to synthesize polynomial quantitative loop invariants for probabilistic programs. We reduce the computation of an quantitative loop invariant to solving constraints over program variables and…

Software Engineering · Computer Science 2015-07-29 Yu-Fang Chen , Chih-Duo Hong , Bow-Yaw Wang , Lijun Zhang
‹ Prev 1 2 3 10 Next ›