English
Related papers

Related papers: Caesar: A Deductive Verifier for Probabilistic Pro…

200 papers

Causal-consistent reversible debugging allows one to explore concurrent computations back and forth in order to locate the source of an error. In this setting, backward steps can be chosen freely as long as they are "causal consistent",…

Programming Languages · Computer Science 2024-06-11 Juan José González-Abril , Germán Vidal

Whereas the semantics of probabilistic languages has been extensively studied, specification languages for their properties have received less attention -- with the notable exception of recent and on-going efforts by Joost-Pieter Katoen and…

Logic in Computer Science · Computer Science 2024-12-03 Einar Broch Johnsen , Eduard Kamburjan , Raúl Pardo , Erik Voogd , Andrzej Wąsowski

Several software systems are polyglot; that is, they comprise programs implemented in a combination of programming languages. Verifiers that directly run on mainstream programming languages are currently customized for single languages.…

Programming Languages · Computer Science 2025-10-14 Pei-Wei Chen , Shaokai Lin , Adwait Godbole , Ramneet Singh , Elizabeth Polgreen , Edward A. Lee , Sanjit A. Seshia

The Verified Software Toolchain (VST) is a system for proving correctness of C programs using separation logic. By connecting to the verified compiler CompCert, it produces the strongest possible guarantees of correctness for real C code…

Programming Languages · Computer Science 2022-07-18 William Mansky

Bedwyr is a generalization of logic programming that allows model checking directly on syntactic expressions possibly containing bindings. This system, written in OCaml, is a direct implementation of two recent advances in the theory of…

Logic in Computer Science · Computer Science 2008-04-25 David Baelde , Andrew Gacek , Dale Miller , Gopalan Nadathur , Alwen Tiu

We describe SeCaV, a sequent calculus verifier for first-order logic in Isabelle/HOL, and the SeCaV Unshortener, an online tool that expands succinct derivations into the full SeCaV syntax. We leverage the power of Isabelle/HOL as a proof…

Logic in Computer Science · Computer Science 2022-04-11 Asta Halkjær From , Frederik Krogsdal Jacobsen , Jørgen Villadsen

We present a one-fits-all programmatic approach to reason about a plethora of objectives on probabilistic programs. The first ingredient is to add a reward-statement to the language. We then define a program transformation applying a…

Programming Languages · Computer Science 2026-03-04 Philipp Schröer , Joost-Pieter Katoen

In this paper, we provide a comprehensive, hands-on tutorial on how to apply deductive verification to programs written in OCaml. In particular, we show how one can use the GOSPEL specification language and the Cameleer tool to conduct…

Logic in Computer Science · Computer Science 2024-07-23 Mário Pereira

Probabilistic programming languages rely fundamentally on some notion of sampling, and this is doubly true for probabilistic programming languages which perform Bayesian inference using Monte Carlo techniques. Verifying samplers - proving…

Programming Languages · Computer Science 2023-04-27 Fredrik Dahlqvist , Alexandra Silva , William Smith

Higher-order constructs extend the expressiveness of first-order (Constraint) Logic Programming ((C)LP) both syntactically and semantically. At the same time assertions have been in use for some time in (C)LP systems helping programmers…

Programming Languages · Computer Science 2014-04-17 Nataliia Stulova , José F. Morales , Manuel V. Hermenegildo

Many important classification problems, such as object classification, speech recognition, and machine translation, have been tackled by the supervised learning paradigm in the past, where training corpora of parallel input-output pairs are…

Machine Learning · Computer Science 2019-06-10 Yu Liu , Li Deng , Jianshu Chen , Chang Wen Chen

Developing test oracles can be inefficient: developer generative oracles are time-intensive and thus costly while automatic oracle generation in the form of regression or exception oracles assumes that the underlying code is correct. To…

Software Engineering · Computer Science 2023-12-06 Kasra Lekan , Nicki Choquette

Automatic software verification tools help to find hard-to-detect faults in programs checked against specified requirements non-interactively. Besides, they can prove program correctness formally under certain assumptions. These…

Software Engineering · Computer Science 2023-09-29 Ilja Zakharov , Evgeny Novikov , Ilya Shchepetkov

The C language is getting more and more popular as a design and verification language (DVL). SystemC, ParC [1] and Cx [2] are based on C. C-models of the design and verification environment can also be generated from new DVLs (e.g. Chisel…

Hardware Architecture · Computer Science 2018-07-17 Tobias Strauch

Higher-order constructs extend the expressiveness of first-order (Constraint) Logic Programming ((C)LP) both syntactically and semantically. At the same time assertions have been in use for some time in (C)LP systems helping programmers…

Programming Languages · Computer Science 2014-06-03 Nataliia Stulova , José F. Morales , Manuel V. Hermenegildo

The advent of large language models trained on code (code LLMs) has led to significant progress in language-to-code generation. State-of-the-art approaches in this area combine LLM decoding with sample pruning and reranking using test cases…

Machine Learning · Computer Science 2023-09-04 Ansong Ni , Srini Iyer , Dragomir Radev , Ves Stoyanov , Wen-tau Yih , Sida I. Wang , Xi Victoria Lin

Russell is a logical framework for the specification and implementation of deductive systems. It is a high-level language with respect to Metamath language, so inherently it uses a Metamath foundations, i.e. it doesn't rely on any…

Logic · Mathematics 2017-12-05 Dmitry Vlasov

In this report, we present the preliminary work developed for our research project for the APDC (\'Area Pr\'atica de Desenvolvimento Curricular) course. The main goal of this project is to develop a framework, on top of the Why3 tool, for…

Logic in Computer Science · Computer Science 2020-12-02 Tiago Lopes Soares

Software verification of evolving systems is challenging mainstream methodologies and tools. Formal verification techniques often conflict with the time constraints imposed by change management practices for evolving systems. Since changes…

Software Engineering · Computer Science 2013-05-02 Domenico Bianculli , Antonio Filieri , Carlo Ghezzi , Dino Mandrioli

When building artificial intelligence systems that can reason and answer questions about visual data, we need diagnostic tests to analyze our progress and discover shortcomings. Existing benchmarks for visual question answering can help,…

Computer Vision and Pattern Recognition · Computer Science 2016-12-22 Justin Johnson , Bharath Hariharan , Laurens van der Maaten , Li Fei-Fei , C. Lawrence Zitnick , Ross Girshick