English
Related papers

Related papers: Certifying Higher-Order Polynomial Interpretations

200 papers

Motivated by applications in automated verification of higher-order functional programs, we develop a notion of constrained Horn clauses in higher-order logic and a decision problem concerning their satisfiability. We show that, although…

Programming Languages · Computer Science 2017-08-02 Toby Cathcart Burn , C. -H. Luke Ong , Steven J. Ramsay

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

We present necessary and sufficient conditions for the termination of linear homogeneous programs. We also develop a complete method to check termination for this class of programs. Our complete characterization of termination for such…

Programming Languages · Computer Science 2014-09-11 Rachid Rebiha , Arnaldo Vieira Moura , Nadir Matringe

Term rewriting has a significant presence in various areas, not least in automated theorem proving where it is used as a proof technique. Many theorem provers employ specialised proof tactics for rewriting. This results in an interleaving…

Logic in Computer Science · Computer Science 2010-12-23 Issam Maamria , Michael Butler

Recently it was shown that it is undecidable whether a term rewrite system can be proved terminating by a polynomial interpretation in the natural numbers. In this paper we show that this is also the case when restricting the…

Logic in Computer Science · Computer Science 2023-07-28 Fabian Mitterwallner , Aart Middeldorp , René Thiemann

A proof tableau of Hoare logic is an annotated program with pre- and post-conditions, which corresponds to an inference tree of Hoare logic. In this paper, we show that a proof tableau for partial correctness can be transformed into an…

Logic in Computer Science · Computer Science 2018-02-20 Shinnosuke Mizutani , Naoki Nishida

There are many techniques and tools to prove termination of C programs, but up to now these tools were not very powerful for fully automated termination proofs of programs whose termination depends on recursive data structures like lists.…

Logic in Computer Science · Computer Science 2023-06-06 Jera Hensel , Jürgen Giesl

Verification of higher-order probabilistic programs is a challenging problem. We present a verification method that supports several quantitative properties of higher-order probabilistic programs. Usually, extending verification methods to…

Logic in Computer Science · Computer Science 2024-07-04 Satoshi Kura , Hiroshi Unno

The termination behavior of probabilistic programs depends on the outcomes of random assignments. Almost sure termination (AST) is concerned with the question whether a program terminates with probability one on all possible inputs.…

Programming Languages · Computer Science 2021-01-29 Marcel Moosbrugger , Ezio Bartocci , Joost-Pieter Katoen , Laura Kovács

There are termination proofs that are produced by termination tools for which certifiers are not powerful enough. However, a similar situation also occurs in the other direction. We have formalized termination techniques in a more general…

Logic in Computer Science · Computer Science 2012-08-09 Christian Sternagel , René Thiemann

Modern processors deploy a variety of weak memory models, which for efficiency reasons may (appear to) execute instructions in an order different to that specified by the program text. The consequences of instruction reordering can be…

Programming Languages · Computer Science 2018-12-04 Robert J. Colvin , Graeme Smith

There are many techniques and tools for termination of C programs, but up to now they were not very powerful for termination proofs of programs whose termination depends on recursive data structures like lists. We present the first approach…

Logic in Computer Science · Computer Science 2023-07-21 Jera Hensel , Jürgen Giesl

All current investigations to analyze the derivational complexity of term rewrite systems are based on a single termination method, possibly preceded by transformations. However, the exclusive use of direct criteria is problematic due to…

Logic in Computer Science · Computer Science 2015-07-01 Harald Zankl , Martin Korp

We describe a method for proving non-looping non-termination, that is, of term rewriting systems that do not admit looping reductions. As certificates of non-termination, we employ regular (tree) automata.

Logic in Computer Science · Computer Science 2014-05-23 Jörg Endrullis , Hans Zantema

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

Previous deforestation and supercompilation algorithms may introduce accidental termination when applied to call-by-value programs. This hides looping bugs from the programmer, and changes the behavior of a program depending on whether it…

Programming Languages · Computer Science 2015-07-01 Peter A. Jonsson , Johan Nordlander

In recent years, numerous techniques were developed to automatically prove termination of different kinds of probabilistic programs. However, there are only few automated methods to disprove their termination. In this paper, we present the…

Logic in Computer Science · Computer Science 2026-05-29 Jan-Christoph Kassing , Henri Nagel , Alexander Schlecht , Jürgen Giesl

This paper proposes an efficient algorithm for testing copositivity of homogeneous polynomials over the positive semidefinite cone. The algorithm is based on a novel matrix optimization reformulation and requires solving a hierarchy of…

Optimization and Control · Mathematics 2026-01-13 Lei Huang , Lingling Xie

Constructor rewriting systems are said to be cons-free if any constructor term occurring in the rhs of a rule must be a subterm of the lhs of the rule. Roughly, such systems cannot build new data structures during their evaluation. In…

Logic in Computer Science · Computer Science 2017-11-10 Cynthia Kop , Jakob Grue Simonsen

We report on the automation of a technique to prove the correctness of program transformations in higher-order program calculi which may permit recursive let-bindings as they occur in functional programming languages. A program…

Logic in Computer Science · Computer Science 2019-02-25 David Sabel