English
Related papers

Related papers: Proving Termination of Probabilistic Programs Usin…

200 papers

Much algorithmic research in NLP aims to efficiently manipulate rich formal structures. An algorithm designer typically seeks to provide guarantees about their proposed algorithm -- for example, that its running time or space complexity is…

Programming Languages · Computer Science 2025-12-30 Tim Vieira , Ryan Cotterell , Jason Eisner

We deliver a call to arms for probabilistic numerical methods: algorithms for numerical tasks, including linear algebra, integration, optimization and solving differential equations, that return uncertainties in their calculations. Such…

Numerical Analysis · Mathematics 2016-02-17 Philipp Hennig , Michael A Osborne , Mark Girolami

Abstraction is a fundamental tool for reasoning about complex systems. Program abstraction has been utilized to great effect for analyzing deterministic programs. At the heart of program abstraction is the relationship between a concrete…

Artificial Intelligence · Computer Science 2017-07-17 Steven Holtzen , Todd Millstein , Guy Van den Broeck

Probabilistic pushdown automata (pPDA) are a natural operational model for a variety of recursive discrete stochastic processes. In this paper, we study certificates - succinct and easily verifiable proofs - for upper and lower bounds on…

Formal Languages and Automata Theory · Computer Science 2023-04-25 Tobias Winkler , Joost-Pieter Katoen

`What more than its truth do we know if we have a proof of a theorem in a given formal system?' We examine Kreisel's question in the particular context of program termination proofs, with an eye to deriving complexity bounds on program…

Logic in Computer Science · Computer Science 2014-09-26 Sylvain Schmitz

Termination is a central property in sequential programming models: a term is terminating if all its reduction sequences are finite. Termination is also important in concurrency in general, and for message-passing programs in particular. A…

Logic in Computer Science · Computer Science 2023-08-03 Joseph W. N. Paulus , Jorge A. Pérez , Daniele Nantes-Sobrinho

We tackle the problem of deciding whether two probabilistic programs are equivalent in Probabilistic NetKAT, a formal language for specifying and reasoning about the behavior of packet-switched networks. We show that the problem is…

Programming Languages · Computer Science 2018-03-28 Steffen Smolka , Praveen Kumar , Nate Foster , Justin Hsu , David Kahn , Dexter Kozen , Alexandra Silva

Nondeterministic choice is a useful program construct that provides a way to describe the behaviour of a program without specifying the details of possible implementations. It supports the stepwise refinement of programs, a method that has…

Logic in Computer Science · Computer Science 2023-02-17 Yuan Feng , Yingte Xu

Probabilistic programming is perfectly suited to reliable and transparent data science, as it allows the user to specify their models in a high-level language without worrying about the complexities of how to fit the models. Static analysis…

Artificial Intelligence · Computer Science 2020-08-31 Ryan Bernstein , Matthijs Vákár , Jeannette Wing

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

Through a straightforward Bayesian approach we show that under some general conditions a maximum running time, namely the number of discrete steps performed by a computer program during its execution, can be defined such that the…

History and Overview · Mathematics 2007-05-23 Germano D'Abramo

Algorithms typically come with tunable parameters that have a considerable impact on the computational resources they consume. Too often, practitioners must hand-tune the parameters, a tedious and error-prone task. A recent line of research…

Machine Learning · Computer Science 2020-11-24 Maria-Florina Balcan , Tuomas Sandholm , Ellen Vitercik

The aim of a probabilistic output analysis is to derive a probability distribution of possible output values for a program from a probability distribution of its input. We present a method for performing static output analysis, based on…

Programming Languages · Computer Science 2015-09-30 Mads Rosendahl , Maja H. Kirkeby

When proving the correctness of a method for slicing probabilistic programs, it was previously discovered by the authors that for a fixed point iteration to work one needs a non-standard starting point for the iteration. This paper presents…

Programming Languages · Computer Science 2024-12-11 Torben Amtoft , Anindya Banerjee

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

Termination of logic programs depends critically on the selection rule, i.e. the rule that determines which atom is selected in each resolution step. In this article, we classify programs (and queries) according to the selection rules for…

Logic in Computer Science · Computer Science 2007-05-23 Dino Pedreschi , Salvatore Ruggieri , Jan-Georg Smaus

Probabilistic programs encode stochastic models as ordinary-looking programs with primitives for sampling numbers from predefined distributions and conditioning. Their applications include, among many others, machine learning and modeling…

Formal Languages and Automata Theory · Computer Science 2025-12-16 Dominik Geißler , Tobias Winkler

Testing probabilistic programs is non-trivial due to their stochastic nature. Given an input, the program may produce different outcomes depending on the underlying stochastic choices in the program. This means testing the expected outcomes…

Software Engineering · Computer Science 2025-09-03 Katrine Christensen , Mahsa Varshosaz , Raúl Pardo

The number of steps until termination of a probabilistic program is a random variable. Probabilistic program termination therefore requires qualitative analysis via almost-sure termination (AST), while also providing quantitative answers…

Logic in Computer Science · Computer Science 2025-06-18 Lorenz Winkler , Laura Kovács

In combinatorics, the probabilistic method is a very powerful tool to prove the existence of combinatorial objects with interesting and useful properties. Explicit constructions of objects with such properties are often very difficult, or…

Computational Complexity · Computer Science 2007-05-23 Luca Trevisan