VLDB 2026 Research / reviewers in the wild / expert
Alexis Ghyselen
dblp:225/5709
· DBLP profile ↗
8ranked-venue papers
0as first author
5since 2021 · last 2024
0000-0001-9767-2011ORCID · verified
Domains — the database's venue-derived domains; a paper can count in several
Theory of computation · 5 · 2 since 2021Software engineering, systems software and programming languages · 3 · 3 since 2021
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2024 | On Model-Checking Higher-Order Effectful ProgramsabstractModel-checking is one of the most powerful techniques for verifying systems and programs, which since the pioneering results by Knapik et al., Ong, and Kobayashi, is known to be applicable to functional programs with higher-order types against properties expressed by formulas of monadic second-order logic. What happens when the program in question, in addition to higher-order functions, also exhibits algebraic effects such as probabilistic choice or global store? The results in the literature range from those, mostly positive, about nondeterministic effects, to those about probabilistic effects, in the presence of which even mere reachability becomes undecidable. This work takes a fresh and general look at the problem, first of all showing that there is an elegant and natural way of viewing higher-order programs producing algebraic effects as ordinary higher-order recursion schemes. We then move on to consider effect handlers, showing that in their presence the model checking problem is bound to be undecidable in the general case, while it stays decidable when handlers have a simple syntactic form, still sufficient to capture so-called generic effects . Along the way, we hint at how a general specification language could look like, this way justifying some of the results in the literature, and deriving new ones. Ugo Dal Lago, Alexis Ghyselen |
Proc. ACM Program. Lang. | 2 |
| 2023 | Open Higher-Order LogicabstractInternational audience Ugo Dal Lago, Francesco Gavazzo, Alexis Ghyselen |
CSL | 3 |
| 2022 | Types for Complexity of Parallel Computation in Pi-calculusabstractType systems as a technique to analyse or control programs have been extensively studied for functional programming languages. In particular, some systems allow one to extract from a typing derivation a complexity bound on the program. We explore how to extend such results to parallel complexity in the setting of pi-calculus, considered as a communication-based model for parallel computation. Two notions of time complexity are given: the total computation time without parallelism (the work) and the computation time under maximal parallelism (the span). We define operational semantics to capture those two notions and present two type systems from which one can extract a complexity bound on a process. The type systems are inspired both by sized types and by input/output types, with additional temporal information about communications. Patrick Baillot, Alexis Ghyselen |
ACM Trans. Program. Lang. Syst. | 2 |
| 2021 | Sized Types with Usages for Parallel Complexity of Pi-Calculus ProcessesabstractWe address the problem of analysing the complexity of concurrent programs written in Pi-calculus. We are interested in parallel complexity, or span, understood as the execution time in a model with maximal parallelism. A type system for parallel complexity has been recently proposed by Baillot and Ghyselen but it is too imprecise for non-linear channels and cannot analyse some concurrent processes. Aiming for a more precise analysis, we design a type system which builds on the concepts of sized types and usages. The new variant of usages we define accounts for the various ways a channel is employed and relies on time annotations to track under which conditions processes can synchronize. We prove that a type derivation for a process provides an upper bound on its parallel complexity. Patrick Baillot, Alexis Ghyselen, Naoki Kobayashi 0001 |
CONCUR | 2 |
| 2021 | Types for Complexity of Parallel Computation in Pi-CalculusabstractAbstract Type systems as a technique to analyse or control programs have been extensively studied for functional programming languages. In particular some systems allow to extract from a typing derivation a complexity bound on the program. We explore how to extend such results to parallel complexity in the setting of the pi-calculus, considered as a communication-based model for parallel computation. Two notions of time complexity are given: the total computation time without parallelism (the work) and the computation time under maximal parallelism (the span). We define operational semantics to capture those two notions, and present two type systems from which one can extract a complexity bound on a process. The type systems are inspired both by size types and by input/output types, with additional temporal information about communications. Patrick Baillot, Alexis Ghyselen |
ESOP | 2 |
| 2020 | Combining linear logic and size types for implicit complexityabstractSeveral type systems have been proposed to statically control the time complexity of lambda-calculus programs and characterize complexity classes such as FPTIME or FEXPTIME. A first line of research stems from linear logic and restricted versions of its !-modality controlling duplication. An instance of this is light linear logic for polynomial time computation [5]. A second approach relies on the idea of tracking the size increase between input and output, and together with a restricted recursion scheme, to deduce time complexity bounds. This second approach is illustrated for instance by non-size-increasing types [8]. However, both approaches suffer from limitations. The first one, that of linear logic, has a limited intensional expressivity, that is to say some natural polynomial time programs are not typable. As to the second approach it is essentially linear, more precisely it does not allow for a non-linear use of functional arguments. In the present work we incorporate both approaches into a common type system, in order to overcome their respective constraints. The source language we consider is a lambda-calculus with data-types and iteration, that is to say a variant of Gödel's system T. Our goal is to design a system for this language allowing both to handle non-linear functional arguments and to keep a good intensional expressivity. We illustrate our methodology by choosing the system of elementary linear logic (ELL) and combining it with a system of linear size types. We discuss the expressivity of this new type system, called sEAL, and prove that it gives a characterization of the complexity classes FPTIME and 2k-FEXPTIME, for k≥0. Patrick Baillot, Alexis Ghyselen |
Theor. Comput. Sci. | 2 |
| 2019 | Type-Based Complexity Analysis of Probabilistic Functional ProgramsabstractWe show that complexity analysis of probabilistic higher-order functional programs can be carried out compositionally by way of a type system. The introduced type system is a significant extension of refinement types. On the one hand, the presence of probabilistic effects requires adopting a form of dynamic distribution type, subject to a coupling-based subtyping discipline. On the other hand, recursive definitions are proved terminating by way of Lyapunov ranking functions. We prove not only that the obtained type system, called l\pmbRPCF, provides a sound methodology for average case complexity analysis, but also that it is extensionally complete, in the sense that any average case nolytime Turing machines can be encoded as a term typable in l\pmbRPCF. Martin Avanzini, Ugo Dal Lago, Alexis Ghyselen |
LICS | 3 |
| 2018 | Combining Linear Logic and Size Types for Implicit Complexity
Patrick Baillot, Alexis Ghyselen |
CSL | 2 |