English
Related papers

Related papers: Constraint-Based Synthesis of Coupling Proofs

200 papers

This paper proposes a technique to specify and verify whether a loop can be parallelised. Our approach can be used as an additional step in a parallelising compiler to verify user annotations about loop dependences. Essentially, our…

Software Engineering · Computer Science 2014-06-16 Stefan Blom , Saeed Darabi , Marieke Huisman

We present a domain-theoretic framework for probabilistic programming that provides a constructive definition of conditional probability and addresses computability challenges previously identified in the literature. We introduce a novel…

Logic in Computer Science · Computer Science 2025-02-04 Pietro Di Gianantonio , Abbas Edalat

Verifying fine-grained optimistic concurrent programs remains an open problem. Modern program logics provide abstraction mechanisms and compositional reasoning principles to deal with the inherent complexity. However, their use is mostly…

Programming Languages · Computer Science 2022-11-14 Roland Meyer , Thomas Wies , Sebastian Wolff

Property-based testing (PBT) is a technique for validating code against an executable specification by automatically generating test-data. We present a proof-theoretical reconstruction of this style of testing for relational specifications…

Logic in Computer Science · Computer Science 2025-01-22 Dale Miller , Alberto Momigliano

We present a novel algorithm that synthesizes imperative programs for introductory programming courses. Given a set of input-output examples and a partial program, our algorithm generates a complete program that is consistent with every…

Programming Languages · Computer Science 2017-06-14 Sunbeom So , Hakjoo Oh

Providing examples is one of the most common way for end-users to interact with program synthesizers. However, program synthesis systems assume that examples consistent with the program are chosen at random, and do not exploit the fact that…

Artificial Intelligence · Computer Science 2022-04-07 Saujas Vaduguru , Kevin Ellis , Yewen Pu

This paper presents a novel method for the automated synthesis of probabilistic programs. The starting point is a program sketch representing a finite family of finite-state Markov chains with related but distinct topologies, and a PCTL…

Logic in Computer Science · Computer Science 2021-02-01 Roman Andriushchenko , Milan Ceska , Sebastian Junges , Joost-Pieter Katoen

Large language models can perform various reasoning tasks by using chain-of-thought prompting, which guides them to find answers through step-by-step demonstrations. However, the quality of the prompts depends on the demonstrations given to…

Computation and Language · Computer Science 2023-02-02 Zhihong Shao , Yeyun Gong , Yelong Shen , Minlie Huang , Nan Duan , Weizhu Chen

We propose an algorithm that test membership for regular expressions and show that the algorithm is correct. This algorithm is written in the style of a sequent proof system. The advantage of this algorithm over traditional ones is that the…

Formal Languages and Automata Theory · Computer Science 2010-02-11 Keehang Kwon , Hong Pyo Ha , Jiseung Kim

We study induction on the program structure as a proof method for bisimulation-based compiler correctness. We consider a first-order language with mutually recursive function definitions, system calls, and an environment semantics. The…

Programming Languages · Computer Science 2016-11-30 Sigurd Schneider , Gert Smolka , Sebastian Hack

Conjecturing and theorem proving are activities at the center of mathematical practice and are difficult to separate. In this paper, we propose a framework for completing incomplete conjectures and incomplete proofs. The framework can turn…

Artificial Intelligence · Computer Science 2024-01-25 Salwa Tabet Gonzalez , Predrag Janičić , Julien Narboux

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

Probabilistic inference procedures are usually coded painstakingly from scratch, for each target model and each inference algorithm. We reduce this effort by generating inference procedures from models automatically. We make this code…

Machine Learning · Statistics 2017-07-13 Robert Zinkov , Chung-chieh Shan

Function contracts are a well-established way of formally specifying the intended behavior of a function. However, they usually only describe what should happen during a single call. Relational properties, on the other hand, link several…

Software Engineering · Computer Science 2018-05-09 Lionel Blatter , Nikolai Kosmatov , Pascale Le Gall , Virgile Prevosto , Guillaume Petiot

Most algorithms for the synthesis of reactive systems focus on the construction of finite-state machines rather than actual programs. This often leads to badly structured, unreadable code. In this paper, we present a bounded synthesis…

Formal Languages and Automata Theory · Computer Science 2018-07-25 Carsten Gerstacker , Felix Klein , Bernd Finkbeiner

We present Polaris, a concurrent separation logic with support for probabilistic reasoning. As part of our logic, we extend the idea of coupling, which underlies recent work on probabilistic relational logics, to the setting of programs…

Programming Languages · Computer Science 2018-11-22 Joseph Tassarotti , Robert Harper

The PCP Theorem is one of the most stunning results in computational complexity theory, a culmination of a series of results regarding proof checking it exposes some deep structure of computational problems. As a surprising side-effect, it…

Computational Complexity · Computer Science 2012-07-30 Luke Mathieson

We address the problem of verifying k-safety properties: properties that refer to k-interacting executions of a program. A prominent way to verify k-safety properties is by self composition. In this approach, the problem of checking…

Programming Languages · Computer Science 2019-05-28 Ron Shemer , Arie Gurfinkel , Sharon Shoham , Yakir Vizel

A hypothesis testing algorithm is replicable if, when run on two different samples from the same distribution, it produces the same output with high probability. This notion, defined by by Impagliazzo, Lei, Pitassi, and Sorell [STOC'22],…

Data Structures and Algorithms · Computer Science 2025-09-05 Anders Aamand , Maryam Aliakbarpour , Justin Y. Chen , Shyam Narayanan , Sandeep Silwal

Property-based testing is a powerful method to validate program correctness. It is, however, not widely use in industry as the barrier of entry can be very high. One of the hindrances is to write the generators that are needed to generate…

Programming Languages · Computer Science 2023-09-13 Triera Gashi , Sophie Adeline Solheim Bosio , Joachim Tilsted Kristensen , Michael Kirkedal Thomsen