English
Related papers

Related papers: Linear Loop Synthesis for Quadratic Invariants

200 papers

Many constraints restricting the result of some computations over an integer sequence can be compactly represented by register automata. We improve the propagation of the conjunction of such constraints on the same sequence by synthesising…

Artificial Intelligence · Computer Science 2019-01-29 Ekaterina Arafailova , Nicolas Beldiceanu , Helmut Simonis

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

Essential tasks for the verification of probabilistic programs include bounding expected outcomes and proving termination in finite expected runtime. We contribute a simple yet effective inductive synthesis approach for proving such…

Logic in Computer Science · Computer Science 2023-02-09 Kevin Batz , Mingshuai Chen , Sebastian Junges , Benjamin Lucien Kaminski , Joost-Pieter Katoen , Christoph Matheja

We describe the LoopInvGen tool for generating loop invariants that can provably guarantee correctness of a program with respect to a given specification. LoopInvGen is an efficient implementation of the inference technique originally…

Programming Languages · Computer Science 2019-11-01 Saswat Padhi , Rahul Sharma , Todd Millstein

A fundamental computational task in probabilistic programming is to infer a program's output (posterior) distribution from a given initial (prior) distribution. This problem is challenging, especially for expressive languages that feature…

Programming Languages · Computer Science 2026-01-21 Darion Haase , Kevin Batz , Adrian Gallus , Benjamin Lucien Kaminski , Joost-Pieter Katoen , Lutz Klinkenberg , Tobias Winkler

In this paper, we present a novel approach to synthesize invariant clusters for polynomial programs. An invariant cluster is a set of program invariants that share a common structure, which could, for example, be used to save the needs for…

Systems and Control · Computer Science 2022-03-16 Qiuye Wang , Lihong Zhi , Naijun Zhan , Bai Xue , Zhi-hong Yang

We present a method for synthesizing recursive functions that provably satisfy a given specification in the form of a polymorphic refinement type. We observe that such specifications are particularly suitable for program synthesis for two…

Programming Languages · Computer Science 2016-04-22 Nadia Polikarpova , Ivan Kuraj , Armando Solar-Lezama

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

In the verification of loop programs, disjunctive invariants are essential to capture complex loop dynamics such as phase and mode changes. In this work, we develop a novel approach for the automated generation of affine disjunctive…

Logic in Computer Science · Computer Science 2024-11-20 Jingyu Ke , Hongfei Fu , Hongming Liu , Zhouyue Sun , Liqian Chen , Guoqiang Li

The automatic verification of programs that maintain unbounded low-level data structures is a critical and open problem. Analyzers and verifiers developed in previous work can synthesize invariants that only describe data structures of…

Programming Languages · Computer Science 2017-10-11 Caleb Voss , David Heath , William Harris

Program analysis requires the generation of program properties expressing conditions to hold at intermediate program locations. When it comes to programs with loops, these properties are typically expressed as loop invariants. In this paper…

Programming Languages · Computer Science 2018-01-15 Andreas Humenberger , Maximilian Jaroschek , Laura Kovács

Formal methods apply algorithms based on mathematical principles to enhance the reliability of systems. It would only be natural to try to progress from verification, model checking or testing a system against its formal specification into…

Software Engineering · Computer Science 2014-02-28 Gal Katz , Doron Peled

Funnel synthesis refers to a procedure for synthesizing a time-varying controlled invariant set and an associated control law around a nominal trajectory. The computation of the funnel involves solving a continuous-time differential…

Optimization and Control · Mathematics 2025-10-28 Taewan Kim , Behçet Açıkmeşe

Continuous linear dynamical systems are used extensively in mathematics, computer science, physics, and engineering to model the evolution of a system over time. A central technique for certifying safety properties of such systems is by…

Logic in Computer Science · Computer Science 2020-04-29 Shaull Almagor , Edon Kelmendi , Joël Ouaknine , James Worrell

The paper presents a novel approach to synthesize robust controllers for nonlinear systems along perturbed trajectories. The approach linearizes the system with respect to a reference trajectory. In contrast to existing methods rooted in…

Systems and Control · Electrical Eng. & Systems 2025-07-08 Felix Biertümpfel , Peter Seiler , Harald Pfifer

This paper presents incremental verification-validation, a novel approach for checking rich data structure invariants expressed as separation logic assertions. Incremental verification-validation combines static verification of separation…

Programming Languages · Computer Science 2015-11-17 Yi-Fan Tsai , Devin Coughlin , Bor-Yuh Evan Chang , Xavier Rival

Nonlinear interpolants have been shown useful for the verification of programs and hybrid systems in contexts of theorem proving, model checking, abstract interpretation, etc. The underlying synthesis problem, however, is challenging and…

Logic in Computer Science · Computer Science 2019-08-29 Mingshuai Chen , Jian Wang , Jie An , Bohua Zhan , Deepak Kapur , Naijun Zhan

We study possibilities for automated invariant generation in parametric systems. We use (a refinement of) an algorithm for symbol elimination in theory extensions to devise a method for iteratively strengthening certain classes of safety…

Logic in Computer Science · Computer Science 2019-05-30 Dennis Peuter , Viorica Sofronie-Stokkermans

Programs that respond to asynchronous events are challenging to write; they are difficult to reason about and tricky to test and debug. Because these programs can have a huge space of possible input timings and interleaving, the programmer…

Programming Languages · Computer Science 2019-09-26 Julie L Newcomb , Rastislav Bodik

Automated program verification often proceeds by exhibiting inductive invariants entailing the desired properties.For numerical properties, a classical class of invariants is convex polyhedra: solution sets of system of linear…

Programming Languages · Computer Science 2018-05-16 David Monniaux