English
Related papers

Related papers: Proving programs terminate using well orderings, R…

200 papers

Extending our own and others' earlier approaches to reasoning about termination of probabilistic programs, we propose and prove a new rule for termination with probability one, also known as "almost-certain termination". The rule uses both…

Logic in Computer Science · Computer Science 2017-01-09 Annabelle McIver , Carroll Morgan

The termination problem of a logic program can be addressed in either a static or a dynamic way. A static approach performs termination analysis at compile time, while a dynamic approach characterizes and tests termination of a logic…

Logic in Computer Science · Computer Science 2007-05-23 Yi-Dong Shen , Danny De Schreye

We present an automated reasoning framework for synthesizing recursion-free programs using saturation-based theorem proving. Given a functional specification encoded as a first-order logical formula, we use a first-order theorem prover to…

Logic in Computer Science · Computer Science 2024-03-01 Petra Hozzová , Laura Kovács , Chase Norman , Andrei Voronkov

Probabilistic programs extend classical imperative programs with real-valued random variables and random branching. The most basic liveness property for such programs is the termination property. The qualitative (aka almost-sure)…

Programming Languages · Computer Science 2017-09-14 Sheshansh Agrawal , Krishnendu Chatterjee , Petr Novotný

We empirically evaluate the finite-time performance of several simulation-optimization algorithms on a testbed of problems with the goal of motivating further development of algorithms with strong finite-time performance. We investigate if…

Optimization and Control · Mathematics 2017-05-23 Naijia Dong , David J. Eckman , Matthias Poloczek , Xueqi Zhao , Shane G. Henderson

The correctness of most randomized distributed algorithms is expressed by a statement of the form ``some predicate of the executions holds with high probability, regardless of the order in which actions are scheduled''. In this paper, we…

Combinatorics · Mathematics 2008-11-23 Isaac Saias

We investigate the termination problem of a family of multi-path polynomial programs (MPPs), in which all assignments to program variables are polynomials, and test conditions of loops and conditional statements are polynomial equalities.…

Programming Languages · Computer Science 2020-09-02 Yangjia Li , Naijun Zhan , Mingshuai Chen , Hui Lu , Guohua Wu , Joost-Pieter Katoen

We prove a Ramsey theorem for finite sets equipped with a partial order and a fixed number of linear orders extending the partial order. This is a common generalization of two recent Ramsey theorems due to Soki\'c. As a bonus, our proof…

Combinatorics · Mathematics 2015-02-17 Slawomir Solecki , Min Zhao

Termination is an important and well-studied property for logic programs. However, almost all approaches for automated termination analysis focus on definite logic programs, whereas real-world Prolog programs typically use the cut operator.…

Logic in Computer Science · Computer Science 2010-07-29 Peter Schneider-Kamp , Jürgen Giesl , Thomas Ströder , Alexander Serebrenik , René Thiemann

In this note, we show the class of finite, epistemic programs to be Turing complete. Epistemic programs is a widely used update mechanism used in epistemic logic, where it such are a special type of action models: One which does not contain…

Formal Languages and Automata Theory · Computer Science 2017-06-22 Dominik Klein , Rasmus K. Rendsvig

We study Graver test sets for families of linear multi-stage stochastic integer programs with varying number of scenarios. We show that these test sets can be decomposed into finitely many ``building blocks'', independent of the number of…

Optimization and Control · Mathematics 2007-05-23 Matthias Aschenbrenner , Raymond Hemmecke

In computability theory and computable analysis, finite programs can compute infinite objects. Presenting a computable object via any program for it, provides at least as much information as presenting the object itself, written on an…

Logic in Computer Science · Computer Science 2014-09-25 Mathieu Hoyrup , Cristobal Rojas

We consider the termination/non-termination property of a class of loops. Such loops are commonly used abstractions of real program pieces. Second-order logic is a convenient language to express non-termination. Of course, such property is…

Logic in Computer Science · Computer Science 2014-12-11 Fred Mesnard , Etienne Payet

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

This paper shows that it is possible to reason about the safety and termination of programs handling potentially cyclic, singly-linked lists using propositional reasoning even when the safety invariants and termination arguments depend on…

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

A program verifier is a tool that can be used to verify that a "contract" for a program holds - i.e. given a precondition the program guarantees that a given postcondition holds - by only working at the level of the annotated program. An…

Software Engineering · Computer Science 2014-06-12 Gudmund Grov

An infinite set is orbit-finite if, up to permutations of the underlying structure of atoms, it has only finitely many elements. We study a generalisation of linear programming where constraints are expressed by an orbit-finite system of…

Logic in Computer Science · Computer Science 2024-11-14 Arka Ghosh , Piotr Hofman , Sławomir Lasota

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

The trie data structure is a good choice for finite maps whose keys are data structures (trees) rather than atomic values. But what if we want the keys to be patterns, each of which matches many lookup keys? Efficient matching of this kind…

Programming Languages · Computer Science 2024-11-12 Simon Peyton Jones , Sebastian Graf

Given a program and a time deadline, does the program finish before the deadline when executed on a given platform? With the requirement to produce a test case when such a violation can occur, we refer to this problem as the worst-case…

Programming Languages · Computer Science 2015-06-22 Daniel Bundala , Sanjit A. Seshia