35 research outputs found

    Cubical Syntax for Reflection-Free Extensional Equality

    Get PDF
    We contribute XTT, a cubical reconstruction of Observational Type Theory which extends Martin-L\"of's intensional type theory with a dependent equality type that enjoys function extensionality and a judgmental version of the unicity of identity types principle (UIP): any two elements of the same equality type are judgmentally equal. Moreover, we conjecture that the typing relation can be decided in a practical way. In this paper, we establish an algebraic canonicity theorem using a novel cubical extension (independently proposed by Awodey) of the logical families or categorical gluing argument inspired by Coquand and Shulman: every closed element of boolean type is derivably equal to either 'true' or 'false'.Comment: Extended version; International Conference on Formal Structures for Computation and Deduction (FSCD), 201

    A Cubical Language for Bishop Sets

    Get PDF
    We present XTT, a version of Cartesian cubical type theory specialized for Bishop sets \`a la Coquand, in which every type enjoys a definitional version of the uniqueness of identity proofs. Using cubical notions, XTT reconstructs many of the ideas underlying Observational Type Theory, a version of intensional type theory that supports function extensionality. We prove the canonicity property of XTT (that every closed boolean is definitionally equal to a constant) using Artin gluing

    Multimodal Dependent Type Theory

    Get PDF
    We introduce MTT, a dependent type theory which supports multiple modalities. MTT is parametrized by a mode theory which specifies a collection of modes, modalities, and transformations between them. We show that different choices of mode theory allow us to use the same type theory to compute and reason in many modal situations, including guarded recursion, axiomatic cohesion, and parametric quantification. We reproduce examples from prior work in guarded recursion and axiomatic cohesion, thereby demonstrating that MTT constitutes a simple and usable syntax whose instantiations intuitively correspond to previous handcrafted modal type theories. In some cases, instantiating MTT to a particular situation unearths a previously unknown type theory that improves upon prior systems. Finally, we investigate the metatheory of MTT. We prove the consistency of MTT and establish canonicity through an extension of recent type-theoretic gluing techniques. These results hold irrespective of the choice of mode theory, and thus apply to a wide variety of modal situations

    Computational Semantics of Cartesian Cubical Type Theory

    No full text
    Dependent type theories are a family of logical systems that serve as expressive functional programming languages and as the basis of many proof assistants. In the past decade, type theories have also attracted the attention of mathematicians due to surprising connections with homotopy theory; the study of these connections,known as homotopy type theory, has in turn suggested novel extensions to type theory, including higher inductive types and Voevodsky’s univalence axiom. However, in theiroriginal axiomatic presentation, these extensions lack computational content, making them unusable as programming constructs and unergonomic in proof assistants. In this dissertation, we present Cartesian cubical type theory, a univalent type theory that extends ordinary type theory with interval variables representing abstracthypercubes. We justify Cartesian cubical type theory by means of a computational semantics that generalizes Allen’s semantics of Nuprl [All87] to Cartesian cubicalsets. Proofs in our type theory have computational content, as evidenced by the canonicity property that all closed terms of Boolean type evaluate to true or false. It is the second univalent type theory with canonicity, after the De Morgan cubical type theory of Cohen et al. [CCH M18], and affirmatively resolves an open question of whether Cartesian interval structure constructively models univalent universes.</div
    corecore