English
Related papers

Related papers: ProbTest: Unit Testing for Probabilistic Programs …

200 papers

Among the biggest challenges in property-based testing (PBT) is the constrained random generation problem: given a predicate on program values, randomly sample from the set of all values satisfying that predicate, and only those values.…

Programming Languages · Computer Science 2026-04-15 Harrison Goldstein , Hila Peleg , Cassia Torczon , Daniel Sainati , Leonidas Lampropoulos , Benjamin C. Pierce

Proof by coupling is a classical proof technique for establishing probabilistic properties of two probabilistic processes, like stochastic dominance and rapid mixing of Markov chains. More recently, couplings have been investigated as a…

Programming Languages · Computer Science 2017-04-04 Gilles Barthe , Thomas Espitau , Benjamin Grégoire , Justin Hsu , Pierre-Yves Strub

Program synthesis--the automated generation of executable code from high-level specifications--has been a central goal of computer science for over fifty years. This thesis provides a comparative literature review of the main paradigms that…

Programming Languages · Computer Science 2025-08-04 Zurabi Kobaladze , Anna Arnania , Tamar Sanikidze

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

Language models are increasingly used in settings where outputs must satisfy user-specified randomness constraints, yet their generation probabilities are often poorly calibrated to those targets. We study whether this capability can be…

Computation and Language · Computer Science 2026-05-13 Davide Baldelli , Sruthi Kuriakose , Maryam Hashemzadeh , Amal Zouaq , Sarath Chandar

This paper describes implementation and computational results of a polynomial test of total unimodularity. The test is a simplified version of a prior method. The program also decides two related unimodularity properties. The software is…

Combinatorics · Mathematics 2012-04-25 Matthias Walter , Klaus Truemper

Debugging is difficult. Recent studies show that automatic bug localization techniques have limited usefulness. One of the reasons is that programmers typically have to understand why the program fails before fixing it. In this work, we aim…

Software Engineering · Computer Science 2019-11-22 Jun Sun , Long H. Pham , Lyly Tran Thi , Jingyi Wang , Xin Peng

Semantic understanding of programs has attracted great attention in the community. Inspired by recent successes of large language models (LLMs) in natural language understanding, tremendous progress has been made by treating programming…

Machine Learning · Computer Science 2023-06-13 Jianyu Zhao , Yuyang Rong , Yiwen Guo , Yifeng He , Hao Chen

The notion of program sensitivity (aka Lipschitz continuity) specifies that changes in the program input result in proportional changes to the program output. For probabilistic programs the notion is naturally extended to expected…

Programming Languages · Computer Science 2019-10-29 Peixin Wang , Hongfei Fu , Krishnendu Chatterjee , Yuxin Deng , Ming Xu

Complex cyber-physical systems interact in real-time and must consider both timing and uncertainty. Developing software for such systems is expensive and difficult, especially when modeling, inference, and real-time behavior must be…

Programming Languages · Computer Science 2024-07-09 Lars Hummelgren , Matthias Becker , David Broman

Verifying whether a procedure is observationally pure is useful in many software engineering scenarios. An observationally pure procedure always returns the same value for the same argument, and thus mimics a mathematical function. The…

Software Engineering · Computer Science 2019-02-15 Himanshu Arora , Raghavan Komondoor , G. Ramalingam

We investigate the probabilistic feasibility of randomized solutions to two distinct classes of uncertain multi-agent optimization programs. We first assume that only the constraints of the program are affected by uncertainty, while the…

Optimization and Control · Mathematics 2020-09-29 George Pantazis , Filiberto Fele , Kostas Margellos

Many security and software testing applications require checking whether certain properties of a program hold for any possible usage scenario. For instance, a tool for identifying software vulnerabilities may need to rule out the existence…

Software Engineering · Computer Science 2018-05-03 Roberto Baldoni , Emilio Coppa , Daniele Cono D'Elia , Camil Demetrescu , Irene Finocchi

Their highly adaptive nature and the combinatorial explosion of possible configurations makes testing context-oriented programs hard. We propose a methodology to automate the generation of test scenarios for developers of feature-based…

Software Engineering · Computer Science 2021-09-27 Pierre Martou , Kim Mens , Benoît Duhoux , Axel Legay

Hybrid Probabilistic Programs (HPPs) are logic programs that allow the programmer to explicitly encode his knowledge of the dependencies between events being described in the program. In this paper, we classify HPPs into three classes…

Artificial Intelligence · Computer Science 2013-01-30 Michael I. Dekhtyar , Alex Dekhtyar , V. S. Subrahmanian

We study randomized generation of sequences of test-inputs to a system using Prolog. Prolog is a natural fit to generate test-sequences that have complex logical inter-dependent structure. To counter the problems posed by a large (or…

Logic in Computer Science · Computer Science 2025-07-18 Marcus Gelderie , Maximilian Luff , Maximilian Peltzer

Large language models (LLMs) are being used in many applications and prompts for these models are integrated into software applications as code-like artifacts. These prompts behave much like traditional software in that they take inputs,…

Software Engineering · Computer Science 2026-02-09 Reshabh K Sharma , Jonathan De Halleux , Shraddha Barke , Dan Grossman , Benjamin Zorn

Testing is an important aspect in professional software development, both to avoid and identify bugs as well as to increase maintainability. However, increasing the number of tests beyond a reasonable amount hinders development progress. To…

Programming Languages · Computer Science 2022-05-23 Alexandros Efremidis , Joshua Schmidt , Sebastian Krings , Philipp Körner

We consider the task of performing probabilistic inference with probabilistic logical models. Many algorithms for approximate inference with such models are based on sampling. From a logic programming perspective, sampling boils down to…

Artificial Intelligence · Computer Science 2015-03-19 Daan Fierens

Testing has become an indispensable activity of software development, yet writing good and relevant tests remains a quite challenging task. One well-known problem is that it often is impossible or unrealistic to test for every outcome, as…

Programming Languages · Computer Science 2017-08-18 Dimitri Racordon , Didier Buchs