English
Related papers

Related papers: Loops under Strategies ... Continued

200 papers

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

In this paper, we define two particular forms of non-termination, namely loops and binary chains, in an abstract framework that encompasses term rewriting and logic programming. The definition of loops relies on the notion of compatibility…

Logic in Computer Science · Computer Science 2023-12-22 Etienne Payet

Proving programs terminating is a fundamental computer science challenge. Recent research has produced powerful tools that can check a wide range of programs for termination. The analog for probabilistic programs, namely termination with…

Logic in Computer Science · Computer Science 2012-04-16 Javier Esparza , Andreas Gaiser , Stefan Kiefer

Rewriting is a framework for reasoning about functional programming. The dependency pair criterion is a well-known mechanism to analyze termination of term rewriting systems. Functional specifications with an operational semantics based on…

Logic in Computer Science · Computer Science 2019-11-04 Ariane Alves Almeida , Mauricio Ayala-Rincon

We propose a generic termination proof method for rewriting under strategies, based on an explicit induction on the termination property. Rewriting trees on ground terms are modeled by proof trees, generated by alternatively applying…

Logic in Computer Science · Computer Science 2007-05-23 Isabelle Gnaedig , Helene Kirchner

We consider imperative programs that involve both randomization and pure nondeterminism. The central question is how to find a strategy resolving the pure nondeterminism such that the so-obtained determinized program satisfies a given…

Logic in Computer Science · Computer Science 2023-11-15 Kevin Batz , Tom Jannik Biskup , Joost-Pieter Katoen , Tobias Winkler

The task of inferring logical formulas from examples has garnered significant attention as a means to assist engineers in creating formal specifications used in the design, synthesis, and verification of computing systems. Among various…

Logic in Computer Science · Computer Science 2025-06-04 Benjamin Bordais , Daniel Neider

The term {\em meta-programming} refers to the ability of writing programs that have other programs as data and exploit their semantics. The aim of this paper is presenting a methodology allowing us to perform a correct termination analysis…

Programming Languages · Computer Science 2007-05-23 Alexander Serebrenik , Danny De Schreye

We study the termination problem for probabilistic term rewrite systems. We prove that the interpretation method is sound and complete for a strengthening of positive almost sure termination, when abstract reduction systems and term rewrite…

Symbolic Computation · Computer Science 2018-02-28 Martin Avanzini , Ugo Dal Lago , Akihisa Yamada

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 techniques to prove termination of cycle rewriting, that is, string rewriting on cycles, which are strings in which the start and end are connected. Our main technique is to transform cycle rewriting into string rewriting and…

Logic in Computer Science · Computer Science 2019-03-14 David Sabel , Hans Zantema

We consider the problem of inferring a grammar describing the output of a functional program given a grammar describing its input. Solutions to this problem are helpful for detecting bugs or proving safety properties of functional programs,…

Logic in Computer Science · Computer Science 2019-03-14 Thomas Genet , Yann Salmon

We study termination of higher-order probabilistic functional programs with recursion, stochastic conditioning and sampling from continuous distributions. Reasoning about the termination probability of programs with continuous distributions…

Programming Languages · Computer Science 2021-04-13 Raven Beutner , Luke Ong

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

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

Term rewriting plays a crucial role in software verification and compiler optimization. With dozens of highly parameterizable techniques developed to prove various system properties, automatic term rewriting tools work in an extensive…

Logic in Computer Science · Computer Science 2025-08-01 Liao Zhang , Fabian Mitterwallner , Jan Jakubuv , Cezary Kaliszyk

Logically constrained term rewriting systems (LCTRSs) are a program analyzing formalism with native support for data types which are not (co)inductively defined. As a first-order formalism, LCTRSs have accommodated only analysis of…

Logic in Computer Science · Computer Science 2023-07-26 Liye Guo , Cynthia Kop

Refactoring is the process of changing a software system in such a way that it does not alter the external behavior of the code yet improves its internal structure. Not only researchers, but also practitioners, need to know about past…

Software Engineering · Computer Science 2018-08-08 Eunjong Choi , Kenji Fujiwara , Norihiro Yoshida , Shinpei Hayashi

Rewriting is a formalism widely used in computer science and mathematical logic. When using rewriting as a programming or modeling paradigm, the rewrite rules describe the transformations one wants to operate and rewriting strategies are…

Programming Languages · Computer Science 2019-03-14 Horatiu Cirstea , Serguei Lenglet , Pierre-Etienne Moreau

Combining a standard proof search method, such as resolution or tableaux, and rewriting is a powerful way to cut off search space in automated theorem proving, but proving the completeness of such combined methods may be challenging. It may…

Logic in Computer Science · Computer Science 2023-06-02 Gilles Dowek