Working group Pole Proofs, programs and systems Thematic team Proofs and programs Manage talks Syntax Meets Semantics Day, hour and place Thursday at 2pm, room 1007 The calendar of events (iCal format). In order to add the event calendar to your favorite agenda, subscribe to the calendar by using this link. Contact(s) Delia Kesner Subscribe to the list gdt-sms@listes.irif.fr to receive announcements concerning this working work. Next talk Syntax Meets Semantics Thursday January 16, 2025, 1:30PM, Salle 3052 Gaëtan Lopez (IRIF, UPC) A Rewriting Theory for Quantum λ-Calculus Quantum lambda calculus has been studied mainly as an idealized programming language—the evaluation essentially corresponds to a deterministic abstract machine. Very little work has been done to develop a rewriting theory for quantum lambda calculus. Recent advances in the theory of probabilistic rewriting give us a way to tackle this task with tools unavailable a decade ago. Our primary focus is standardization and normalization results. Previous talks Year 2024 Syntax Meets Semantics Thursday December 12, 2024, 1:30PM, Salle 3052 Pablo Barenbaum (UNQ, Argentine) A MELL calculus based on contraposition Contraposition is the classical reasoning principle stating that A → B is equivalent to ¬B → ¬A. In typical presentations of classical Linear Logic, e.g. those based on sequent calculus or proof nets, contraposition has no significant computational content, as it corresponds basically to a change of notation. However, for systems in natural deduction style, contraposition exchanges the role of an assumption and a conclusion, which requires to perform a global transformation on the proof. We propose a term calculus for MELL in which contraposition is realized by an operator we dub contrasubstitution, which turns a proof “inside out” to exchange the roles of the conclusion and a specific assumption. We study the properties of this calculus, starting by confluence and strong-normalization. We identify an intuitionistic fragment and show that it simulates various existing classical calculi (such as Parigot's lambda-mu) via Danos et al.'s Q and T translations. Syntax Meets Semantics Thursday November 14, 2024, 2:30PM, Salle 3052 Adrienne Lancelot (LIX et IRIF) Interaction Equivalence Contextual equivalence is the de facto standard notion of program equivalence. A key theorem is that contextual equivalence is an equational theory. Making contextual equivalence more intensional, for example taking into account the time cost of the computation, seems a natural refinement. Such a change, however, does not induce an equational theory, for an apparently essential reason: cost is not invariant under reduction. In the paradigmatic case of the untyped λ-calculus, we introduce interaction equivalence. Inspired by game semantics, we observe the number of interaction steps between terms and contexts but—crucially—ignore their own internal steps. We prove that interaction equivalence is an equational theory and we characterize it as B, the well-known theory induced by Böhm tree equality. Ours is the first observational characterization of B obtained without enriching the discriminating power of contexts with extra features such as non-determinism. To prove our results, we develop interaction-based refinements of the Böhm-out technique and of intersection types. Syntax Meets Semantics Thursday October 10, 2024, 2PM, Salle 3052 Jorge A. Pérez (University of Groningen) The Expressiveness of Session Types Session types are a typed approach to ensure the communication correctness of message-passing programs. They have been extensively studied from a theoretical standpoint, and have been also incorporated into diverse programming languages and models. Perhaps surprisingly, there is no single, canonical session type system, but many. It is fair to say that expressiveness has been key to the success and impact of session types: enhancing the expressivity of typed processes and/or the properties enforced by typing is often a strong motivation for developing new typed frameworks. In this rich and diverse context, rigorously contrasting different variants of session types from an expressiveness perspective is a fascinating and non-trivial challenge. In this talk I introduce session types briefly and overview some recent works related to their expressiveness; they cover various angles, including “propositions-as-sessions”, i.e., the Curry-Howard correspondence between session types and linear logic. Syntax Meets Semantics Thursday June 20, 2024, 2PM, Salle 3052 Victor Arrial (IRIF, Universite Paris Cite) The Benefits of Diligence In this talk, we will discuss the strength of embedding Call-by-Name (dCBN) and Call-by-Value (dCBV) into a unifying framework called the Bang Calculus (dBANG). These embeddings enable establishing (static and dynamic) properties of dCBN and dCBV through their respective counterparts in dBANG. While some specific static properties have been already successfully studied in the literature, the dynamic ones are more challenging and have been left unexplored. We accomplish that by using a standard embedding for the (easy) dCBN case, while a novel one must be introduced for the (difficult) dCBV case. Moreover, a key point of our approach is the identification of dBANG diligent reduction sequences, which eases the preservation of dynamic properties from dBANG to dCBN/dCBV. We illustrate our methodology through two concrete applications: confluence/factorization for both dCBN and dCBV are respectively derived from confluence/factorization for dBANG. Syntax Meets Semantics Thursday June 6, 2024, 2PM, Salle 3052 Adrienne Lancelot (LIX Polytechnique and IRIF UPC) Mirroring Call-by-Need, or Values Acting Silly Call-by-need evaluation for the lambda-calculus can be seen as merging the best of call-by-name and call-by-value, namely the wise erasing behaviour of the former and the wise duplicating behaviour of the latter. To better understand how duplication and erasure can be combined, we design a degenerated calculus, dubbed call-by-silly, that is symmetric to call-by-need in that it merges the worst of call-by-name and call-by-value, namely silly duplications by-name and silly erasures by-value. We validate the design of the call-by-silly calculus via rewriting properties and multi types. In particular, we mirror the main theorem about call-by-need – that is, its operational equivalence with call-by-name – showing that call-by-silly and call-by-value induce the same contextual equivalence. This fact shows the blindness with respect to efficiency of call-by-value contextual equivalence. We also define a call-by-silly strategy and measure its length via tight multi types. Lastly, we prove that the call-by-silly strategy computes evaluation sequences of maximal length in the calculus. Syntax Meets Semantics Thursday May 2, 2024, 2PM, Salle 3071 Mariana Milicich (IRIF, Universite Paris Cite) Hybrid Intersection Types for PCF I will present a type system based on non-idempotent intersection types for PCFh, a variant of PCF. Evaluation in PCFh is hybrid: call-by-name (CBN) and call-by-value (CBV) behaviours cohabit together. Specifically, function application follows CBV semantics, while recursion has a CBN flavour. This hybrid nature is reflected in the type system, which turns out to be sound and complete with respect to PCFh evaluation. This means not only that typability implies normalisation, but also that the converse holds. Moreover, the type system is quantitative, since the size of typing derivations provides upper bounds for the length of normalisation sequences. By refining this type system, we obtain a tight type system, which offers exact information regarding the length of normalisation sequences. Syntax Meets Semantics Thursday March 28, 2024, 2PM, Salle 3052 Noam Zeilberger (LIX, Polytechnique) An introduction to type refinement systems I will give an introduction to type refinement systems in the style of Frank Pfenning et al., discuss the phenomenon of how refinement typing makes some aspects of evaluation order visible in the type system, and give some general indications of how type refinement may be understood from a categorical perspective. For background reading, you can see my notes from OPLSS 2016 on “Principles of type refinement” (https://noamz.org/oplss16/refinements-notes.pdf). Syntax Meets Semantics Thursday February 15, 2024, 2PM, Salle 3052 Hector Suzanne (LIP6) Une machine abstraite Call-By-Push-Value pour l'analyse de ressource Dans le but de factoriser et étendre les techniques d'Analyses Amorties de Ressource Automatisées, nous introduisons une machine abstraite comme représentation intermédiaire pour étendre les possibilités d'analyses aux langages linéaires et à sémantiques Call-By-Push-Value (CBPV), qui intègre à la fois l'appel par valeur et l'appel par nom. La machine est une extension de la machine ILL_rho^eta de Curien et al.[1] avec des points fixes et une dépendance des types sur des paramètres de structures (taille, longueur, coût) qui sont contraints par une formule du premier ordre. Une phase de réécriture systématique, de et vers la machine, enrichit les programmes et définitions d'ADT avec des annotations de paramètres, de passage d'état et des primitives de coût. Elle implémente AARA comme un effet qui produit à la compilation une approximation sûre des manipulations de ressources à l'exécution. Nous présentons l'exemple d'un miniML en appel par valeur des avec blocs monadiques et transformeurs de monades pour l'état mutable et les exceptions locales. L'analyse AARA demeure inchangée grâce aux implémentations canoniques des primitives monadiques dans CBPV. Une procédure de typage basée sur HM(X) a été implémentée et génère une contrainte globale sur les paramètres du programme entiers. Dans le cas classique où les coûts sont représentés par les polynômes en plusieurs variables, une procédure d'élimination des quantificateurs permet de se ramener à la programmation entière pour instancier des bornes explicites via un solveur externe. Cet exposé reprend en grande partie le travail qui a été présenté à la conférence LOPSTR 2023 [2] [1] doi.org/10.1145/2837614.2837652 [2] doi.org/10.1007/978-3-031-45784-5_5 Syntax Meets Semantics Thursday January 25, 2024, 2PM, Visio Davide Catta (Università degli Studi di Napoli Federico II) Game semantics and a new lambda calculus for the constructive modal logic CK Constructive modal logics are extensions of intuitionistic logic obtained by adding unary operators, called modalities, to the language of intuitionistic logic. These logics have generated increasing interest over the past decades, being investigated from both proof theory and type theory perspectives. In this talk, we investigate the Curry-Howard correspondence for constructive modal logic CK in light of the gap between the proof equivalences enforced by the lambda calculi from the literature and by the recently defined winning strategies for this logic. We present a game semantics for CK and a new lambda-calculus system for this logic, obtained by enriching the calculus from the literature with additional reduction rules. We then provide a typing system in the style of focused proof systems, allowing us to provide a unique proof for each term in normal form. Finally, we use this result to show a one-to-one correspondence between terms in normal form and winning innocent strategies for CK. (Joint work with Matteo Acclavio and Federico Olimpieri). Syntax Meets Semantics Thursday January 18, 2024, 3PM, Salle 1007 Jui-Hsuan Wu (LIX, Polytechnique) Proofs as terms, positively Structural proof theory has been widely used in the study of term structures. In this talk, I will illustrate this tight connection between proofs and terms by presenting the focused proof system LJF as a framework for designing term structures. Since the proof theory of LJF does not pick a canonical polarization for atomic formulas, two different approaches to term representation arise. We will illustrate these two approaches by applying them to the encoding of untyped lambda terms. When atomic formulas are given the negative polarity, LJF proofs yield the usual tree-like representation of untyped lambda terms. When atomic formulas are given the positive polarity, LJF proofs yield a term structure in which sharing is possible via explicit substitution. In the second part of the talk, I will present the positive lambda calculus, a calculus with explicit substitution based on the positive polarization, and show its close relationship with Accattoli and Paolini's value substitution calculus. Year 2023 Syntax Meets Semantics Thursday December 21, 2023, 2PM, Salle 3052 Gabriel Scherer (INRIA) Constructor unboxing In this work I will present a new feature proposed for the OCaml programming language, “constructor unboxing”, first suggested by Jeremy Yallop in March 2020. It enables a more efficient representation of certain sum types, but requires a static analysis to forbid certain unboxing requests that would be unsound. To define this static analysis, one has to solve a problem of normalization of first-order definitions in presence of recursion. In the talk I hope to explain my current understanding of this halting problem, and present an algorithm to compute normal forms and reject (in finite time) non-normalizable definitions. Syntax Meets Semantics Thursday December 7, 2023, 2PM, Salle 3052 Pablo Barenbaum (Universidad Buenos Aires) Sharing in linear logic and call-by-need Syntax Meets Semantics Thursday October 26, 2023, 2PM, salle 1007 Giuseppe Castagna (IRIF, CNRS and Univ. Paris Cite) A type system for Elixir Syntax Meets Semantics Thursday October 12, 2023, 2PM, salle 3052 Mariana Milicich (Université Paris Cité, CNRS, IRIF) Useful Evaluation, Inductively and Quantitatively Is λ-calculus a reasonable machine according to Van Emde Boas' Invariance Thesis? By defining the useful evaluation strategy, B. Accattoli and U. Dal Lago were able to answer positively to this question. However, their characterization doesn't facilitate the use of inductive arguments to reason about it. And, up to this date, there are no quantitative models to capture its time complexity. In this talk I'll discuss the first inductive characterization of the useful evaluation for open call-by-value. We achieve this by parameterizing the evaluation relation with respect to the information provided by the context in which the computation takes place. First we prove some properties of our notion of useful calculus. Then, we give a quantitative model for the useful strategy, using a non-idempotent intersection type system with tight rules. Therefore, typing a term t gives exact information about how many steps does the computation requires to compute the normal form of t. Syntax Meets Semantics Thursday September 28, 2023, 2PM, Salle 3052 Beniamino Accattoli (INRIA Saclay) Closure Conversion and Abstract Machines Closure conversion is a program transformation at work in compilers for functional languages to turn inner functions into global ones, by building 'closures' pairing the transformed functions with the 'environment' of their free variables. Abstract machines rely on similar and yet different concepts of 'closures' and 'environments'. In this talk, we analyze the relationship between the two approaches. We adopt a very simple lambda-calculus with tuples as source language and study abstract machines for both the source language and the target of closure conversion. We overview three contributions. Firstly, a new simple proof technique for the correctness of closure conversion, inspired by abstract machines. Secondly, we show how the closure invariants of the target language allow us to design a new way of handling environments in abstract machines, not suffering the shortcomings of other styles. Thirdly, we analyze the machines from the point of view of sharing and time complexity, dissecting how different aspects of closure conversion impact on the cost of the execution. Syntax Meets Semantics Thursday June 22, 2023, 2PM, salle 146 (Olympe de Gouges) Miguel Ramos (Univ. Porto) Quantitative CBV Global Memory Syntax Meets Semantics Thursday June 1, 2023, 2PM, salle 146 (Olympe de Gouges) Gabriele Vanoni (Univ. Bologna) Higher-Order and Non-Linear Bayesian Networks Syntax Meets Semantics Wednesday May 24, 2023, 2PM, salle 147 (Olympe de Gouges) Jose Espirito Santo (Univ. Minho (Portugal)) The logical essence of compiling with continuations Syntax Meets Semantics Thursday April 20, 2023, 1:30PM, salle 147 (Olympe de Gouges) Hugo Herbelin (IRIF, INRIA, Univ. Paris Cite) Under syntax and semantics, the logic Syntax Meets Semantics Thursday March 30, 2023, 1:30PM, salle 4052 Nino Salibra (Universita' Ca'Foscari Venezia) A completeness theorem for the infinitary lambda calculus Syntax Meets Semantics Tuesday March 28, 2023, 1:30PM, salle 3052 Fabio Massaioli (Scuola Normale Di Pisa) (Scuola Normale di Pisa) A non-trivial proof-semantics for classical sequent calculus (LK) Cut-reduction procedures for classical sequent calculus are notoriously non-deterministic and non-confluent, both in the original formulation by Gentzen and in later reformulations. It is natural to ask whether those instances of non-confluence are superficial in nature, i.e. whether syntactically distinct normal forms of the same derivation are in fact correlated in a non-trivial way, as is the case in the intuitionistic and linear versions of sequent calculus. A famous counter-example by Lafont purports to show that the answer is negative, that is, every interpretation of derivations in LK that is invariant under classical cut-elimination must be a trivial one that identifies at least all proofs of the same sequent. A long-standing open question has then been whether it could be possible to work around Lafont's example by natural and non-trivial adjustments of the calculus and/or of cut-reduction steps, without resorting to symmetry-breaking techniques like polarization or embeddings into intuitionistic or linear logic. Working within the propositional fragment of the context-sharing formulation of LK — where parallel logical rules permute freely — we show that the graph constructed by tracing the history of atomic formula occurrences through axiom and cut rules is invariant under arbitrary rule permutations in cut-free proofs, thus providing a canonical representation of normal-form proofs. We then introduce a refinement of the notion of axiom-induced graph that allows extending the invariance result to proofs with cuts, although at the cost of a strong assumption on the shape of derivations. Because cut-reduction in this formulation of LK can be implemented entirely by logical rule permutations plus a pair of local rewriting steps that preserve the refined axiom graphs, the result yields a non-trivial invariant of cut-reduction. Syntax Meets Semantics Thursday March 9, 2023, 2PM, salle 1007 Daniele Pautasso (Univ. Torino) A quantitative version of simple types Our work introduces a quantitative version of the simple type assignment system, starting from a suitable restriction of non-idempotent intersection types. The key idea is to restrict multiset formation to uniform types, two types being uniform if they differ only in the cardinality of the multisets occurring in it. The resulting system has the same typability power as the simple type assignment system; thus, assigning types to terms supplies the very same qualitative information given by simple types, but at the same time provides some interesting quantitative information. It is well known that typability for simple types is equivalent to unification; we prove a similar result for the newly introduced system. More precisely, we show that typability is equivalent to a unification problem which is a non-trivial extension of the classical one: in addition to unification rules, our typing algorithm makes use of an operation that increases the cardinality of multisets whenever needed. Syntax Meets Semantics Thursday March 2, 2023, 2PM, salle 1007 Riccardo Treglia Intersecting effects: two orthogonal approaches Syntax Meets Semantics Thursday February 9, 2023, 2PM, salle 1007 Giovanni Bernardi Breaking circles Syntax Meets Semantics Thursday January 26, 2023, 2PM, salle 1007 Sandra Alves Quantitative Weak Linearisation Syntax Meets Semantics Thursday January 12, 2023, 2PM, salle 1007 Les Doctorants Du Groupe De Travail (Universite Paris Cite) Présentation des doctorants du groupe et de leur thématique de recherche Year 2022 Syntax Meets Semantics Thursday December 15, 2022, 2PM, salle 1007 Victor Arrial Quantitative Inhabitation for Different Lambda Calculi in a Unifying Framework Syntax Meets Semantics Thursday November 3, 2022, 2PM, salle 1007 Loic Peyrot Repetition soutenance de these Syntax Meets Semantics Friday October 28, 2022, 2PM, salle 1007 Pablo Barenbaum Proof Terms for Higher-Order Rewriting and Their Equivalence Syntax Meets Semantics Wednesday October 19, 2022, 2PM, salle 1007 Adrienne Lancelot Open Call-by-Value and Open Similarity