Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Emanuele D'Osualdo

dblp:127/6548 · DBLP profile ↗
← Back
13ranked-venue papers
8as first author
8since 2021 · last 2026
0000-0002-9179-5827ORCID · verified

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 10 · 5 first-author · 8 since 2021Theory of computation · 2 · 2 first-authorSecurity and privacy · 1 · 1 first-author

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
8 papers
Program verification · 60% Programming languages and type systems · 26% Concurrent programming · 11%
Computer architecture, parallel and distributed computing, and storage systems
1 paper
Distributed systems · 40% Parallel and multicore computing · 20% Memory systems · 20%
Theoretical computer science
2 papers
Quantum computing and quantum information · 57% Logic in computer science · 14% Automata and formal languages · 14%

Topics — the 26 heaviest of 27, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Program verification › program logic
relational program logic
1.422025
Bluebell: An Alliance of Relational Lifting and Independence for Probabilistic Reasoning · Proc. ACM Program. Lang. 2025
Proving hypersafety compositionally · Proc. ACM Program. Lang. 2022
Program verification › program logic
separation logic
1.012026
RapunSL: Untangling Quantum Computing with Separation, Linear Combination and Mixing · Proc. ACM Program. Lang. 2026
Quantum computing and quantum information › quantum programming languages
quantum program verification
1.012026
RapunSL: Untangling Quantum Computing with Separation, Linear Combination and Mixing · Proc. ACM Program. Lang. 2026
Program verification › modular verification
compositional compiler verification
0.712023
DimSum: A Decentralized Approach to Multi-language Semantics and Verification · Proc. ACM Program. Lang. 2023
Programming languages and type systems
language semantics
0.712023
DimSum: A Decentralized Approach to Multi-language Semantics and Verification · Proc. ACM Program. Lang. 2023
Programming languages and type systems › language semantics › formal semantics
multi-language semantics
0.712023
DimSum: A Decentralized Approach to Multi-language Semantics and Verification · Proc. ACM Program. Lang. 2023
Parallel and multicore computing
concurrent data structures
0.712023
The Path to Durable Linearizability · Proc. ACM Program. Lang. 2023
Storage systems
crash recovery
0.712023
The Path to Durable Linearizability · Proc. ACM Program. Lang. 2023
Distributed systems › consistency models
durable linearizability
0.712023
The Path to Durable Linearizability · Proc. ACM Program. Lang. 2023
Distributed systems
fault tolerance
0.712023
The Path to Durable Linearizability · Proc. ACM Program. Lang. 2023
Memory systems › non-volatile memory
persistent data structures
0.712023
The Path to Durable Linearizability · Proc. ACM Program. Lang. 2023
Programming languages and type systems › type theory
linear logic
0.612022
A bunch of sessions: a propositions-as-sessions interpretation of bunched implications in channel-based concurrency · Proc. ACM Program. Lang. 2022
Program verification
modular verification
0.612022
Proving hypersafety compositionally · Proc. ACM Program. Lang. 2022
Program verification
program logic
0.612022
Proving hypersafety compositionally · Proc. ACM Program. Lang. 2022
Programming languages and type systems › type systems › behavioral type systems
session types
0.612022
A bunch of sessions: a propositions-as-sessions interpretation of bunched implications in channel-based concurrency · Proc. ACM Program. Lang. 2022
Program verification › program logic › separation logic
concurrent separation logic
0.512021
TaDA Live: Compositional Reasoning for Termination of Fine-grained Concurrent Programs · ACM Trans. Program. Lang. Syst. 2021
Concurrent programming › concurrency control
fine-grained concurrency
0.512021
TaDA Live: Compositional Reasoning for Termination of Fine-grained Concurrent Programs · ACM Trans. Program. Lang. Syst. 2021
Privacy and data protection
differential privacy
0.312025
Bluebell: An Alliance of Relational Lifting and Independence for Probabilistic Reasoning · Proc. ACM Program. Lang. 2025
Computational complexity
decidability
0.212016
First-order logic with reachability for infinite-state systems · LICS 2016
Logic in computer science
first-order logic
0.212016
First-order logic with reachability for infinite-state systems · LICS 2016
Automata and formal languages
infinite-state systems
0.212016
First-order logic with reachability for infinite-state systems · LICS 2016
Compilers and program optimization
compiler correctness
0.212023
DimSum: A Decentralized Approach to Multi-language Semantics and Verification · Proc. ACM Program. Lang. 2023
Concurrent programming
memory models
0.212023
The Path to Durable Linearizability · Proc. ACM Program. Lang. 2023
Concurrent programming › memory models
persistency models
0.212023
The Path to Durable Linearizability · Proc. ACM Program. Lang. 2023
Concurrent programming
message passing
0.212022
A bunch of sessions: a propositions-as-sessions interpretation of bunched implications in channel-based concurrency · Proc. ACM Program. Lang. 2022
Program verification › model checking
pushdown systems
0.112016
First-order logic with reachability for infinite-state systems · LICS 2016

Methods — techniques the papers use, named apart from their topics

separation logic · 3.7mixing · 2.0linear combination · 2.0relational lifting · 1.7joint conditioning · 1.7modular proof techniques · 1.3linearizability argument · 1.3modular semantics · 0.7mechanized proof · 0.7combinators · 0.7model checking · 0.2
YearPublicationVenuePosition
2026 RapunSL: Untangling Quantum Computing with Separation, Linear Combination and Mixing
abstract
Quantum Separation Logic (QSL) has been proposed as an effective tool to improve the scalability of deductive reasoning for quantum programs. In QSL, separation is interpreted as disentanglement , and the frame rule brings a notion of entanglement-local specification (one that only talks about the qubits entangled with those acted upon by the program). In this paper, we identify two notions of locality unique to the quantum domain, and we construct a novel quantum separation logic, RapunSL , which is able to soundly reduce reasoning about superposition states to reasoning about pure states ( basis-locality ), and reasoning about mixed states arising from measurement to reasoning about pure states ( outcome-locality ). To do so, we introduce two connectives, linear combination and mixing, which together with separation provide a dramatic improvement in the scalability of reasoning, as we demonstrate on a series of challenging case studies.
Yusuke Matsushita 0002, Kengo Hirata, Ryo Wakizaka, Emanuele D'Osualdo
Proc. ACM Program. Lang.4
2025 An Automata-theoretic Basis for Specification and Type Checking of Multiparty Protocols
abstract
Abstract We propose the Automata-based Multiparty Protocols framework (AMP) for top-down protocol development. The framework features a new very general formalism for global protocol specifications called Protocol State Machines (PSMs), Communicating State Machines (CSMs) as specifications for local participants, and a type system to check a $$\pi $$ π -calculus with session interleaving and delegation against the CSM specification. Moreover, we define a large class of PSMs, called “tame”, for which we provide a sound and complete PSPACE projection operation that computes a CSM describing the same protocol as a given PSM if one exists. We propose these components as a backwards-compatible new backend for frameworks in the style of Multiparty Session Types. In comparison to the latter, AMP offers a considerable improvement in expressivity, decoupling of the various components (e.g. projection and typing), and robustness (thanks to the complete projection).
Felix Stutz, Emanuele D'Osualdo
ESOP (2)2
2025 Bluebell: An Alliance of Relational Lifting and Independence for Probabilistic Reasoning
abstract
We present BlueBell , a program logic for reasoning about probabilistic programs where unary and relational styles of reasoning come together to create new reasoning tools. Unary-style reasoning is very expressive and is powered by foundational mechanisms to reason about probabilistic behavior like independence and conditioning . The relational style of reasoning, on the other hand, naturally shines when the properties of interest compare the behavior of similar programs (e.g. when proving differential privacy) managing to avoid having to characterize the output distributions of the individual programs. So far, the two styles of reasoning have largely remained separate in the many program logics designed for the deductive verification of probabilistic programs. In BlueBell , we unify these styles of reasoning through the introduction of a new modality called “joint conditioning” that can encode and illuminate the rich interaction between conditional independence and relational liftings ; the two powerhouses from the two styles of reasoning.
Jialu Bao, Emanuele D'Osualdo, Azadeh Farzan
Proc. ACM Program. Lang.2
2023 The Path to Durable Linearizability
abstract
There is an increasing body of literature proposing new and efficient persistent versions of concurrent data structures ensuring that a consistent state can be recovered after a power failure or a crash. Their correctness is typically stated in terms of durable linearizability (DL), which requires that individual library operations appear to be executed atomically in a sequence consistent with the real-time order and, moreover, that recovering from a crash return a state corresponding to a prefix of that sequence. Sadly, however, there are hardly any formal DL proofs, and those that do exist cover the correctness of rather simple persistent algorithms on specific (simplified) persistency models. In response, we propose a general, powerful, modular, and incremental proof technique that can be used to guide the development and establish DL. Our technique is (1) general , in that it is not tied to a specific persistency and/or consistency model, (2) powerful , in that it can handle the most advanced persistent algorithms in the literature, (3) modular , in that it allows the reuse of an existing linearizability argument, and (4) incremental , in that the additional requirements for establishing DL depend on the complexity of the algorithm to be verified. We illustrate this technique on various versions of a persistent set, leading to the link-free set of Zuriel et al.
Emanuele D'Osualdo, Azalea Raad, Viktor Vafeiadis
Proc. ACM Program. Lang.1
2023 DimSum: A Decentralized Approach to Multi-language Semantics and Verification
abstract
Prior work on multi-language program verification has achieved impressive results, including the compositional verification of complex compilers. But the existing approaches to this problem impose a variety of restrictions on the overall structure of multi-language programs (e.g. fixing the source language, fixing the set of involved languages, fixing the memory model, or fixing the semantics of interoperation). In this paper, we explore the problem of how to avoid such global restrictions. Concretely, we present DimSum : a new, decentralized approach to multi-language semantics and verification, which we have implemented in the Coq proof assistant. Decentralization means that we can define and reason about languages independently from each other (as independent modules communicating via events), but also combine and translate between them when necessary (via a library of combinators). We apply DimSum to a high-level imperative language Rec (with an abstract memory model and function calls), a low-level assembly language Asm (with a concrete memory model, arbitrary jumps, and syscalls), and a mathematical specification language Spec. We evaluate DimSum on two case studies: an Asm library extending Rec with support for pointer comparison, and a coroutine library for Rec written in Asm. In both cases, we show how DimSum allows the Asm libraries to be abstracted to Rec-level specifications, despite the behavior of the Asm libraries not being syntactically expressible in Rec itself. We also verify an optimizing multi-pass compiler from Rec to Asm, showing that it is compatible with these Asm libraries.
Michael Sammler, Simon Spies, Youngju Song, Emanuele D'Osualdo, Robbert Krebbers, Deepak Garg 0001, Derek Dreyer
Proc. ACM Program. Lang.4
2022 Proving hypersafety compositionally
abstract
Hypersafety properties of arity n are program properties that relate n traces of a program (or, more generally, traces of n programs). Classic examples include determinism, idempotence, and associativity. A number of relational program logics have been introduced to target this class of properties. Their aim is to construct simpler proofs by capitalizing on structural similarities between the n related programs. We propose an unexplored, complementary proof principle that establishes hyper-triples (i.e. hypersafety judgments) as a unifying compositional building block for proofs, and we use it to develop a Logic for Hyper-triple Composition (LHC), which supports forms of proof compositionality that were not achievable in previous logics. We prove LHC sound and apply it to a number of challenging examples.
Emanuele D'Osualdo, Azadeh Farzan, Derek Dreyer
Proc. ACM Program. Lang.1
2022 A bunch of sessions: a propositions-as-sessions interpretation of bunched implications in channel-based concurrency
abstract
The emergence of propositions-as-sessions, a Curry-Howard correspondence between propositions of Linear Logic and session types for concurrent processes, has settled the logical foundations of message-passing concurrency. Central to this approach is the resource consumption paradigm heralded by Linear Logic. In this paper, we investigate a new point in the design space of session type systems for message-passing concurrent programs. We identify O’Hearn and Pym’s Logic of Bunched Implications (BI) as a fruitful basis for an interpretation of the logic as a concurrent programming language. This leads to a treatment of non-linear resources that is radically different from existing approaches based on Linear Logic. We introduce a new π-calculus with sessions, called πBI; its most salient feature is a construct called spawn, which expresses new forms of sharing that are induced by structural principles in BI. We illustrate the expressiveness of πBI and lay out its fundamental theory: type preservation, deadlock-freedom, and weak normalization results for well-typed processes; an operationally sound and complete typed encoding of an affine λ-calculus; and a non-interference result for access of resources.
Daniil Frumin, Emanuele D'Osualdo, Bas van den Heuvel 0001, Jorge A. Pérez 0001
Proc. ACM Program. Lang.2
2021 TaDA Live: Compositional Reasoning for Termination of Fine-grained Concurrent Programs
abstract
We present TaDA Live, a concurrent separation logic for reasoning compositionally about the termination of blocking fine-grained concurrent programs. The crucial challenge is how to deal with abstract atomic blocking : that is, abstract atomic operations that have blocking behaviour arising from busy-waiting patterns as found in, for example, fine-grained spin locks. Our fundamental innovation is with the design of abstract specifications that capture this blocking behaviour as liveness assumptions on the environment. We design a logic that can reason about the termination of clients that use such operations without breaking their abstraction boundaries, and the correctness of the implementations of the operations with respect to their abstract specifications. We introduce a novel semantic model using layered subjective obligations to express liveness invariants and a proof system that is sound with respect to the model. The subtlety of our specifications and reasoning is illustrated using several case studies.
Emanuele D'Osualdo, Julian Sutherland, Azadeh Farzan, Philippa Gardner
ACM Trans. Program. Lang. Syst.1
2020 Decidable Inductive Invariants for Verification of Cryptographic Protocols with Unbounded Sessions
abstract
We develop a theory of decidable inductive invariants for an infinite-state variant of the Applied pi-calculus, with applications to automatic verification of stateful cryptographic protocols with unbounded sessions/nonces. Since the problem is undecidable in general, we introduce depth-bounded protocols, a strict generalisation of a class from the literature, for which our decidable analysis is sound and complete. Our core contribution is a procedure to check that an invariant is inductive, which implies that every reachable configuration satisfies it. Our invariants can capture security properties like secrecy, can be inferred automatically, and represent an independently checkable certificate of correctness. We provide a prototype implementation and we report on its performance on some textbook examples.
Emanuele D'Osualdo, Felix Stutz
CONCUR1
2017 Deciding Secrecy of Security Protocols for an Unbounded Number of Sessions: The Case of Depth-Bounded Processes
abstract
We introduce a new class of security protocols with an unbounded number of sessions and unlimited fresh data for which the problem of secrecy is decidable. The only constraint we place on the class is a notion of depthboundedness. Precisely we prove that, restricted to messages of up to a given size, secrecy is decidable for all depthbounded processes. This decidable fragment of security protocols captures many real-world symmetric key protocols, including Needham-Schroeder Symmetric Key, Otway-Rees, and Yahalom.
Emanuele D'Osualdo, C.-H. Luke Ong, Alwen Tiu
CSF1
2016 On Hierarchical Communication Topologies in the \pi -calculus
Emanuele D'Osualdo, C.-H. Luke Ong
ESOP1
2016 First-order logic with reachability for infinite-state systems
abstract
First-order logic with the reachability predicate (FO[R]) is an important means of specification in system analysis. Its decidability status is known for some individual types of infinite-state systems such as pushdown (decidable) and vector addition systems (undecidable).
Emanuele D'Osualdo, Roland Meyer 0001, Georg Zetzsche
LICS1
2013 Automatic Verification of Erlang-Style Concurrency
Emanuele D'Osualdo, Jonathan Kochems, C.-H. Luke Ong
SAS1