English
Related papers

Related papers: Efficient Ranking Function-Based Termination Analy…

200 papers

The classical technique for proving termination of a generic sequential computer program involves the synthesis of a ranking function for each loop of the program. Linear ranking functions are particularly interesting because many…

Programming Languages · Computer Science 2012-04-03 Roberto Bagnara , Fred Mesnard , Andrea Pescetti , Enea Zaffanella

The scope of this work is the constraint-based synthesis of termination arguments for the restricted class of programs called linear lasso programs. A termination argument consists of a ranking function as well as a set of supporting…

Logic in Computer Science · Computer Science 2014-01-22 Jan Leike

We introduce a novel approach to the automated termination analysis of computer programs: we use neural networks to represent ranking functions. Ranking functions map program states to values that are bounded from below and decrease as a…

Machine Learning · Computer Science 2022-09-07 Mirco Giacobbe , Daniel Kroening , Julian Parsert

Proving program termination is typically done by finding a well-founded ranking function for the program states. Existing termination provers typically find ranking functions using either linear algebra or templates. As such they are often…

Logic in Computer Science · Computer Science 2014-10-21 Cristina David , Daniel Kroening , Matt Lewis

We present a new method for the constraint-based synthesis of termination arguments for linear loop programs based on linear ranking templates. Linear ranking templates are parameterized, well-founded relations such that an assignment to…

Logic in Computer Science · Computer Science 2019-03-14 Jan Leike , Matthias Heizmann

We present a new method for the constraint-based synthesis of termination arguments for linear loop programs based on linear ranking templates. Linear ranking templates are parametrized, well-founded relations such that an assignment to the…

Logic in Computer Science · Computer Science 2014-01-22 Jan Leike , Matthias Heizmann

Proving program termination is key to guaranteeing absence of undesirable behaviour, such as hanging programs and even security vulnerabilities such as denial-of-service attacks. To make termination checks scale to large systems,…

Software Engineering · Computer Science 2015-05-19 Hong-Yi Chen , Cristina David , Daniel Kroening , Peter Schrammel , Björn Wachter

Size-Change Termination is an increasingly-popular technique for verifying program termination. These termination proofs are deduced from an abstract representation of the program in the form of "size-change graphs". We present algorithms…

Logic in Computer Science · Computer Science 2015-07-01 Amir M. Ben-Amram , Chin Soon Lee

We introduce a method for proving almost sure termination in the context of lambda calculus with continuous random sampling and explicit recursion, based on ranking supermartingales. This result is extended in three ways. Antitone ranking…

Programming Languages · Computer Science 2021-05-04 Andrew Kenyon-Roberts , Luke Ong

The general setting of this work is the constraint-based synthesis of termination arguments. We consider a restricted class of programs called lasso programs. The termination argument for a lasso program is a pair of a ranking function and…

Logic in Computer Science · Computer Science 2014-01-22 Matthias Heizmann , Jochen Hoenicke , Jan Leike , Andreas Podelski

Determining whether a given program terminates is the quintessential undecidable problem. Algorithms for termination analysis are divided into two groups: (1) algorithms with strong behavioral guarantees that work in limited circumstances…

Programming Languages · Computer Science 2021-09-16 Shaowei Zhu , Zachary Kincaid

We present a novel decision tree-based synthesis algorithm of ranking functions for verifying program termination. Our algorithm is integrated into the workflow of CounterExample Guided Inductive Synthesis (CEGIS). CEGIS is an iterative…

Logic in Computer Science · Computer Science 2021-07-06 Satoshi Kura , Hiroshi Unno , Ichiro Hasuo

In this paper we study the complexity of the problems: given a loop, described by linear constraints over a finite set of variables, is there a linear or lexicographical-linear ranking function for this loop? While existence of such…

Programming Languages · Computer Science 2025-09-30 Amir M. Ben-Amram , Samir Genaim

Program termination is a hot research topic in program analysis. The last few years have witnessed the development of termination analyzers for programming languages such as C and Java with remarkable precision and performance. These…

Programming Languages · Computer Science 2013-07-26 Roberto Bagnara , Fred Mesnard

There is growing interest in termination reasoning for non-linear programs and, meanwhile, recent dynamic strategies have shown they are able to infer invariants for such challenging programs. These advances led us to hypothesize that…

Programming Languages · Computer Science 2020-10-13 Ton Chanh Le , Timos Antonopoulos , Parisa Fathololumi , Eric Koskinen , ThanhVu Nguyen

Multiphase ranking functions ($\mathit{M{\Phi}RFs}$) were proposed as a means to prove the termination of a loop in which the computation progresses through a number of "phases", and the progress of each phase is described by a different…

Programming Languages · Computer Science 2017-03-24 Amir M. Ben-Amram , Samir Genaim

The problem of determining whether or not any program terminates was shown to be undecidable by Turing, but recent advances in the area have allowed this information to be determined for a large class of programs. The classic method for…

Logic in Computer Science · Computer Science 2020-08-10 G. W. Hamilton

Vector addition systems are an important model in theoretical computer science and have been used for the analysis of systems in a variety of areas. Termination is a crucial property of vector addition systems and has received considerable…

Logic in Computer Science · Computer Science 2017-10-31 Florian Zuleger

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

This Survey provides an overview of techniques in termination analysis for programs with numerical variables and transitions defined by linear constraints. This subarea of program analysis is challenging due to the existence of undecidable…

Programming Languages · Computer Science 2026-01-27 Amir M. Ben-Amram , Samir Genaim , Joël Ouaknine , James Worrell
‹ Prev 1 2 3 10 Next ›