English
Related papers

Related papers: ProbTest: Unit Testing for Probabilistic Programs …

200 papers

Selecting the best code solution from multiple generated ones is an essential task in code generation, which can be achieved by using some reliable validators (e.g., developer-written test cases) for assistance. Since reliable test cases…

Software Engineering · Computer Science 2024-10-22 Mouxiang Chen , Zhongxin Liu , He Tao , Yusu Hong , David Lo , Xin Xia , Jianling Sun

Probabilistic programming languages aim to describe and automate Bayesian modeling and inference. Modern languages support programmable inference, which allows users to customize inference algorithms by incorporating guide programs to…

Programming Languages · Computer Science 2021-04-09 Di Wang , Jan Hoffmann , Thomas Reps

We propose a novel method for automatic program synthesis. P-Tree Programming represents the program search space through a single probabilistic prototype tree. From this prototype tree we form program instances which we evaluate on a given…

Artificial Intelligence · Computer Science 2017-07-13 Christian Oesch

The evaluation of the probability of union of a large number of independent events requires several combinations involving the factorial and the use of high performance computers with several hours of processing. Bounds and simplifications…

Numerical Analysis · Mathematics 2025-03-07 Edson Luiz Ursini , Paulo S. Martins

Checklists have been widely recognized as effective tools for completing complex tasks in a systematic manner. Although originally intended for use in procedural tasks, their interpretability and ease of use have led to their adoption for…

Machine Learning · Computer Science 2024-11-27 Yukti Makhija , Edward De Brouwer , Rahul G. Krishnan

We introduce a sequential learning algorithm to address a robust controller tuning problem, which in effect, finds (with high probability) a candidate solution satisfying the internal performance constraint to a chance-constrained program…

Optimization and Control · Mathematics 2021-10-19 Robert Chin , Chris Manzie , Iman Shames , Dragan Nešić , Jonathan E. Rowe

Automated random testing has shown to be an effective approach to finding faults but still faces a major unsolved issue: how to generate test inputs diverse enough to find many faults and find them quickly. Stateful testing, the automated…

Software Engineering · Computer Science 2013-08-14 Yi Wei , Hannes Roth , Carlo A. Furia , Yu Pei , Alexander Horton , Michael Steindorfer , Martin Nordio , Bertrand Meyer

Many probabilistic programming languages allow programs to be run under constraints in order to carry out Bayesian inference. Running programs under constraints could enable other uses such as rare event simulation and probabilistic…

Programming Languages · Computer Science 2015-01-19 Neil Toronto , Jay McCarthy , David Van Horn

Unit testing is an important practice that helps ensure the quality of a software system by validating its behavior through a series of test cases. Core to these test cases are assertion statements, which enable software practitioners to…

The steadily increasing size of scientific Monte Carlo simulations and the desire for robust, correct, and reproducible results necessitates rigorous testing procedures for scientific simulations in order to detect numerical problems and…

Computational Physics · Physics 2018-01-08 Markus Wallerberger , Emanuel Gull

Formal methods apply algorithms based on mathematical principles to enhance the reliability of systems. It would only be natural to try to progress from verification, model checking or testing a system against its formal specification into…

Software Engineering · Computer Science 2014-02-28 Gal Katz , Doron Peled

We tackle the problem of conditioning probabilistic programs on distributions of observable variables. Probabilistic programs are usually conditioned on samples from the joint data distribution, which we refer to as deterministic…

Machine Learning · Computer Science 2021-03-09 David Tolpin , Yuan Zhou , Tom Rainforth , Hongseok Yang

Probabilistic programming languages (PPLs) are expressive means for creating and reasoning about probabilistic models. Unfortunately hybrid probabilistic programs, involving both continuous and discrete structures, are not well supported by…

Programming Languages · Computer Science 2024-06-25 Poorva Garg , Steven Holtzen , Guy Van den Broeck , Todd Millstein

An important question for a probabilistic program is whether the probability mass of all its diverging runs is zero, that is that it terminates "almost surely". Proving that can be hard, and this paper presents a new method for doing so; it…

Programming Languages · Computer Science 2017-12-27 Annabelle McIver , Carroll Morgan , Benjamin Lucien Kaminski , Joost-Pieter Katoen

Context: Software development projects increasingly adopt unit testing as a way to identify and correct program faults early in the construction process. Code that is unit tested should therefore have fewer failures associated with it.…

Software Engineering · Computer Science 2023-12-05 Efstathia Chioteli , Ioannis Batas , Diomidis Spinellis

A natural approach to software quality assurance consists in writing unit tests securing programmer-declared code invariants. Throughout the literature a great body of work has been devoted to tools and techniques automating this…

Logic in Computer Science · Computer Science 2017-09-14 Maciej Bendkowski , Katarzyna Grygiel , Paul Tarau

What factors impact the comprehensibility of code? Previous research suggests that expectation-congruent programs should take less time to understand and be less prone to errors. We present an experiment in which participants with…

Software Engineering · Computer Science 2013-04-29 Michael Hansen , Robert L. Goldstone , Andrew Lumsdaine

Test cases are essential for validating the reliability and quality of software applications. Recent studies have demonstrated the capability of Large Language Models (LLMs) to generate useful test cases for given source code. However, the…

Software Engineering · Computer Science 2025-01-03 Shuzheng Gao , Chaozheng Wang , Cuiyun Gao , Xiaoqian Jiao , Chun Yong Chong , Shan Gao , Michael Lyu

Automated unit test generation is a well-known methodology aiming to reduce the developers' effort of writing tests manually. Prior research focused mainly on statically typed programming languages like Java. In practice, however,…

Software Engineering · Computer Science 2022-02-11 Stephan Lukasczyk , Gordon Fraser

A successful automated program proof is, in software verification, the ultimate triumph. In practice, however, the road to such success is paved with many failed proof attempts. Unlike a failed test, which provides concrete evidence of an…

Software Engineering · Computer Science 2023-04-25 Li Huang , Bertrand Meyer