Jean-Marie Madiot

dblp:117/9986 · DBLP profile ↗
← Back
7ranked-venue papers
3as first author
3since 2021 · last 2025
0009-0009-2723-8418ORCID · corroborated

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

Theory of computation · 5 · 2 first-author · 1 since 2021Software engineering, systems software and programming languages · 2 · 1 first-author · 2 since 2021
YearPublicationVenuePosition
2025 Formal Semantics and Program Logics for a Fragment of OCaml
abstract
This paper makes a first step towards a formal definition of OCaml and a foundational program verification environment for OCaml. We present a formal definition of OLang, a nontrivial sequential fragment of OCaml, which includes first-class functions, ordinary and extensible algebraic data types, pattern matching, references, exceptions, and effect handlers. We define the dynamic semantics of OLang as a monadic interpreter. This interpreter runs atop a custom monad where computations are internally represented as trees of operations and equipped with a small-step semantics. We define two program logics for OLang. A stateless Hoare Logic allows reasoning about so-called “pure” programs; an Iris-based Separation Logic allows reasoning about arbitrary programs. We present the construction of the two logics as well as some examples of their use.
Remy Seassau, Irene Yoon 0001, Jean-Marie Madiot, François Pottier
Proc. ACM Program. Lang.3
2022 A separation logic for heap space under garbage collection
abstract
We present SL♢, a Separation Logic that allows controlling the heap space consumption of a program in the presence of dynamic memory allocation and garbage collection. A user of the logic works with space credits, a resource that is consumed when an object is allocated and produced when a group of objects is logically deallocated, that is, when the user is able to prove that it has become unreachable and therefore can be collected. To prove such a fact, the user maintains pointed-by assertions that record the immediate predecessors of every object. Our calculus, SpaceLang, has mutable state, shared-memory concurrency, and code pointers. We prove that SL♢ is sound and present several simple examples of its use.
Jean-Marie Madiot, François Pottier
Proc. ACM Program. Lang.1
2021 Modular coinduction up-to for higher-order languages via first-order transition systems
abstract
The bisimulation proof method can be enhanced by employing `bisimulations up-to' techniques. A comprehensive theory of such enhancements has been developed for first-order (i.e., CCS-like) labelled transition systems (LTSs) and bisimilarity, based on abstract fixed-point theory and compatible functions. We transport this theory onto languages whose bisimilarity and LTS go beyond those of first-order models. The approach consists in exhibiting fully abstract translations of the more sophisticated LTSs and bisimilarities onto the first-order ones. This allows us to reuse directly the large corpus of up-to techniques that are available on first-order LTSs. The only ingredient that has to be manually supplied is the compatibility of basic up-to techniques that are specific to the new languages. We investigate the method on the pi-calculus, the lambda-calculus, and a (call-by-value) lambda-calculus with references.
Jean-Marie Madiot, Damien Pous, Davide Sangiorgi
Log. Methods Comput. Sci.1
2016 Name-passing calculi: From fusions to preorders and types
Daniel Hirschkoff, Jean-Marie Madiot, Davide Sangiorgi
Inf. Comput.2
2014 Bisimulations Up-to: Beyond First-Order Transition Systems
Jean-Marie Madiot, Damien Pous, Davide Sangiorgi
CONCUR1
2013 Name-Passing Calculi: From Fusions to Preorders and Types
abstract
The fusion calculi are a simplification of the pi-calculus in which input and output are symmetric and restriction is the only binder. We highlight a major difference between these calculi and the pi-calculus from the point of view of types, proving some impossibility results for subtyping in fusion calculi. We propose a modification of fusion calculi in which the name equivalences produced by fusions are replaced by name preorders, and with a distinction between positive and negative occurrences of names. The resulting calculus allows us to import subtype systems, and related results, from the pi-calculus. We examine the consequences of the modification on behavioural equivalence (e.g., context-free characterisations of barbed congruence) and expressiveness (e.g., full abstraction of the embedding of the asynchronous pi-calculus).
Daniel Hirschkoff, Jean-Marie Madiot, Davide Sangiorgi
LICS2
2012 Duality and i/o-Types in the π-Calculus
Daniel Hirschkoff, Jean-Marie Madiot, Davide Sangiorgi
CONCUR2