35 research outputs found

    Une Dialectica matérialiste

    Get PDF
    In this thesis, we give a computational interpretation to Gödel's Dialectica translation, in a fashion inspired by classical realizability. In particular, it can be shown that the Dialectica translation manipulates stacks of the Krivine machine as first-class objects and that the main effect at work lies in the accumulation of those stacks at each variable use. The original translation suffers from a handful of defects due to hacks used by Gödel to work around historical limitations. Once these defects are solved, the translation naturally extends to much more expressive settings such as dependent type theory. A few variants are studied thanks to the linear decomposition, and relationships with other translations such as forcing and CPS are scrutinized.Cette thÚse fournit une interprétation calculatoire de la traduction dite Dialectica de Gödel, dans une démarche inspirée par la réalisabilité classique. On peut en particulier montrer que Dialectica manipule des piles de la machine de Krivine comme objets de premiÚre classe et que le principal effet de cette traduction consiste à accumuler ces piles à chaque utilisation de variables. La traduction d'origine souffre d'une certaine quantité de défauts dus aux hacks utilisés par Gödel pour contourner des limitations historiques. Une fois ces problÚmes résolus, la traduction s'étend naturellement à des paradigmes beaucoup plus expressifs tels que la théorie des types dépendants. On étudie d'autres variantes par la suite grùce à la décomposition linéaire, ainsi que lien de parenté avec d'autres traductions tels que le forcing et les CPS

    Relational parametricity for higher kinds

    Get PDF
    Reynolds’ notion of relational parametricity has been extremely influential and well studied for polymorphic programming languages and type theories based on System F. The extension of relational parametricity to higher kinded polymorphism, which allows quantification over type operators as well as types, has not received as much attention. We present a model of relational parametricity for System Fω, within the impredicative Calculus of Inductive Constructions, and show how it forms an instance of a general class of models defined by Hasegawa. We investigate some of the consequences of our model and show that it supports the definition of inductive types, indexed by an arbitrary kind, and with reasoning principles provided by initiality

    λρ-calculus II

    Get PDF

    Formalizing Operational Semantic Specifications in Logic

    Get PDF
    AbstractWe review links between three logic formalisms and three approaches to specifying operational semantics. In particular, we show that specifications written with (small-step and big-step) SOS, abstract machines, and multiset rewriting, are closely related to Horn clauses, binary clauses, and (a subset of) linear logic, respectively. We shall illustrate how binary clauses form a bridge between the other two logical formalisms. For example, using a continuation-passing style transformation, Horn clauses can be transformed into binary clauses. Furthermore, binary clauses can be seen as a degenerative form of multiset rewriting: placing binary clauses within linear logic allows for rich forms of multiset rewriting which, in turn, provides a modular, big-step SOS specifications of imperative and concurrency primitives. Establishing these links between logic and operational semantics has many advantages for operational semantics: tools from automated deduction can be used to animate semantic specifications; solutions to the treatment of binding structures in logic can be used to provide solutions to binding in the syntax of programs; and the declarative nature of logical specifications provides broad avenues for reasoning about semantic specifications

    CANONICITY AND HOMOTOPY CANONICITY FOR CUBICAL TYPE THEORY

    Get PDF
    Cubical type theory provides a constructive justification of homotopy type theory. A crucial ingredient of cubical type theory is a path lifting operation which is explained computationally by induction on the type involving several non-canonical choices. We present in this article two canonicity results, both proved by a sconing argument: a homotopy canonicity result, every natural number is path equal to a numeral, even if we take away the equations defining the lifting operation on the type structure, and a canonicity result, which uses these equations in a crucial way. Both proofs are done internally in a presheaf model

    Probabilistic call by push value

    Full text link
    We introduce a probabilistic extension of Levy's Call-By-Push-Value. This extension consists simply in adding a " flipping coin " boolean closed atomic expression. This language can be understood as a major generalization of Scott's PCF encompassing both call-by-name and call-by-value and featuring recursive (possibly lazy) data types. We interpret the language in the previously introduced denotational model of probabilistic coherence spaces, a categorical model of full classical Linear Logic, interpreting data types as coalgebras for the resource comonad. We prove adequacy and full abstraction, generalizing earlier results to a much more realistic and powerful programming language

    Homotopy Canonicity for Cubical Type Theory

    Get PDF
    Cubical type theory provides a constructive justification of homotopy type theory and satisfies canonicity: every natural number is convertible to a numeral. A crucial ingredient of cubical type theory is a path lifting operation which is explained computationally by induction on the type involving several non-canonical choices. In this paper we show by a sconing argument that if we remove these equations for the path lifting operation from the system, we still retain homotopy canonicity: every natural number is path equal to a numeral

    Programming Languages and Systems

    Get PDF
    This open access book constitutes the proceedings of the 31st European Symposium on Programming, ESOP 2022, which was held during April 5-7, 2022, in Munich, Germany, as part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2022. The 21 regular papers presented in this volume were carefully reviewed and selected from 64 submissions. They deal with fundamental issues in the specification, design, analysis, and implementation of programming languages and systems
    corecore