English
Related papers

Related papers: Outcome Separation Logic: Local Reasoning for Corr…

200 papers

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

Sound over-approximation methods have been proved effective for guaranteeing the absence of errors, but inevitably they produce false alarms that can hamper the programmers. Conversely, under-approximation methods are aimed at bug finding…

Logic in Computer Science · Computer Science 2026-01-23 Flavio Ascari , Roberto Bruni , Roberta Gori , Francesco Logozzo

Bayesian probabilistic programming languages (BPPLs) let users denote statistical models as code while the interpreter infers the posterior distribution. The semantics of BPPLs are usually mathematically complex and unable to reason about…

Programming Languages · Computer Science 2025-12-03 Shing Hin Ho , Nicolas Wu , Azalea Raad

Separation logic is often praised for its ability to closely mimic the locality of state updates when reasoning about them at the level of assertions. The prover only needs to concern themselves with the footprint of the computation at…

Programming Languages · Computer Science 2024-08-06 Roland Meyer , Thomas Wies , Sebastian Wolff

We present Lilac, a separation logic for reasoning about probabilistic programs where separating conjunction captures probabilistic independence. Inspired by an analogy with mutable state where sampling corresponds to dynamic allocation, we…

Programming Languages · Computer Science 2023-05-29 John M. Li , Amal Ahmed , Steven Holtzen

The semantic foundations for logic programming are usually separated into two different approaches. The operational semantics, which uses SLD-resolution, the proof method that computes answers in logic programming, and the declarative…

Programming Languages · Computer Science 2022-08-02 João Barbosa , Mário Florido , Vítor Santos Costa

We present quantitative separation logic ($\mathsf{QSL}$). In contrast to classical separation logic, $\mathsf{QSL}$ employs quantities which evaluate to real numbers instead of predicates which evaluate to Boolean values. The connectives…

Logic in Computer Science · Computer Science 2022-02-17 Kevin Batz , Benjamin Lucien Kaminski , Joost-Pieter Katoen , Christoph Matheja , Thomas Noll

O'Hearn's Incorrectness Logic (IL) has sparked renewed interest in static analyses that aim to detect program errors rather than prove their absence, thereby avoiding false alarms -- a critical factor for practical adoption in industrial…

Logic in Computer Science · Computer Science 2026-01-23 Flavio Ascari , Roberto Bruni , Roberta Gori , Azalea Raad

Many machine learning applications require the ability to learn from and reason about noisy multi-relational data. To address this, several effective representations have been developed that provide both a language for expressing the…

Artificial Intelligence · Computer Science 2012-03-19 Matthias Brocheler , Lilyana Mihalkova , Lise Getoor

Memory-safety issues and information leakage are known to be depressingly common. We consider the compositional static detection of these kinds of vulnerabilities in first-order C-like programs. Indeed the latter are relational hyper-safety…

Programming Languages · Computer Science 2023-08-22 Toby Murray , Pengbo Yan , Gidon Ernst

Many important functional and security properties--including non-interference, determinism, and generalized non-interference (GNI)--are hyperproperties, i.e., properties relating multiple executions of a program. Existing separation logics…

Programming Languages · Computer Science 2026-04-21 Trayan Gospodinov , Peter Müller , Thibault Dardinier

Today, many different probabilistic programming languages exist and even more inference mechanisms for these languages. Still, most logic programming based languages use backward reasoning based on SLD resolution for inference. While these…

Logic in Computer Science · Computer Science 2011-07-27 Bernd Gutmann , Ingo Thon , Angelika Kimmig , Maurice Bruynooghe , Luc De Raedt

Training large language models (LLMs) with synthetic reasoning data has become a popular approach to enhancing their reasoning capabilities, while a key factor influencing the effectiveness of this paradigm is the quality of the generated…

Artificial Intelligence · Computer Science 2026-03-24 Zhuojie Yang , Wentao Wan , Keze Wang

Large Language Models (LLMs) can solve previously intractable tasks given only natural-language instructions and a few examples, but they remain difficult to steer precisely and lack a key capability for building reliable software at scale:…

Programming Languages · Computer Science 2026-03-19 Jonathan Laurent , André Platzer

Splitting a logic program allows us to reduce the task of computing its stable models to similar tasks for its subprograms. This can be used to increase solving performance and prove program correctness. We generalize the conditions under…

Artificial Intelligence · Computer Science 2025-03-30 Jorge Fandinno , Yuliya Lierler

Separation logic is a recent extension of Hoare logic for reasoning about programs with references to shared mutable data structures. In this paper, we provide a new interpretation of the logic for a programming language with higher types.…

Logic in Computer Science · Computer Science 2015-07-01 Lars Birkedal , Hongseok Yang

Logic programs with ordered disjunction (LPODs) combine ideas underlying Qualitative Choice Logic (Brewka et al. KR 2002) and answer set programming. Logic programming under answer set semantics is extended with a new connective called…

Artificial Intelligence · Computer Science 2007-05-23 Gerhard Brewka

It is well known that, under certain conditions, it is possible to split logic programs under stable model semantics, i.e. to divide such a program into a number of different "levels", such that the models of the entire program can be…

Artificial Intelligence · Computer Science 2007-05-23 Joost Vennekens , David Gilis , Marc Denecker

A logic program is an executable specification. For example, merge sort in pure Prolog is a logical formula, yet shows creditable performance on long linked lists. But such executable specifications are a compromise: the logic is distorted…

Programming Languages · Computer Science 2015-09-29 M. H. van Emden

The \it{Ambient Logic} (AL) has been proposed for expressing properties of process mobility in the calculus of Mobile Ambients (MA), and as a basis for query languages on semistructured data. We study some basic questions concerning the…

Logic in Computer Science · Computer Science 2015-07-01 Daniel Hirschkoff , Etienne Lozes , Davide Sangiorgi