English
Related papers

Related papers: Formalising Inductive and Coinductive Containers

200 papers

We present guarded dependent type theory, gDTT, an extensional dependent type theory with a `later' modality and clock quantifiers for programming and proving with guarded recursive and coinductive types. The later modality is used to…

Logic in Computer Science · Computer Science 2016-01-08 Aleš Bizjak , Hans Bugge Grathwohl , Ranald Clouston , Rasmus E. Møgelberg , Lars Birkedal

As the groupoid model of Hofmann and Streicher proves, identity proofs in intensional Martin-L\"of type theory cannot generally be shown to be unique. Inspired by a theorem by Hedberg, we give some simple characterizations of types that do…

Logic in Computer Science · Computer Science 2019-03-14 Nicolai Kraus , Martín Escardó , Thierry Coquand , Thorsten Altenkirch

Higher inductive-inductive types (HIITs) generalize inductive types of dependent type theories in two ways. On the one hand they allow the simultaneous definition of multiple sorts that can be indexed over each other. On the other hand they…

Logic in Computer Science · Computer Science 2023-06-22 Ambrus Kaposi , András Kovács

In the pure Calculus of Constructions (CC) one can define data types and function over these, and there is a powerful higher order logic to reason over these functions and data types. This is due to the combination of impredicativity and…

Logic in Computer Science · Computer Science 2026-03-05 Herman Geuvers

Gradualizing the Calculus of Inductive Constructions (CIC) involves dealing with subtle tensions between normalization, graduality, and conservativity with respect to CIC. Recently, GCIC has been proposed as a parametrized gradual type…

Programming Languages · Computer Science 2022-09-05 Kenji Maillard , Meven Lennon-Bertrand , Nicolas Tabareau , Éric Tanter

We study the observation congruences induced by rational polyhedral cones on vector-valued quantitative languages. The extreme rays of the dual cone define intrinsic covectors, and these covectors classify every incremental residual future…

Formal Languages and Automata Theory · Computer Science 2026-05-29 Faruk Alpay , Baris Basaran

In order to avoid well-know paradoxes associated with self-referential definitions, higher-order dependent type theories stratify the theory using a countably infinite hierarchy of universes (also known as sorts), Type$_0$ : Type$_1$ :…

Programming Languages · Computer Science 2020-03-12 Amin Timany , Matthieu Sozeau

Substructural type systems, such as affine (and linear) type systems, are type systems which impose restrictions on copying (and discarding) of variables, and they have found many applications in computer science, including quantum…

Logic in Computer Science · Computer Science 2021-01-27 Vladimir Zamdzhiev

Clocked Cubical Type Theory is a new type theory combining the power of guarded recursion with univalence and higher inductive types (HITs). This type theory can be used as a metalanguage for synthetic guarded domain theory in which one can…

Logic in Computer Science · Computer Science 2021-12-30 Rasmus Ejlers Møgelberg , Andrea Vezzosi

Dependently typed proof assistant rely crucially on definitional equality, which relates types and terms that are automatically identified in the underlying type theory. This paper extends type theory with definitional functor laws,…

Programming Languages · Computer Science 2024-04-10 Théo Laurent , Meven Lennon-Bertrand , Kenji Maillard

We provide various ways to characterise $\Sigma$-pure-injective objects in a compactly generated triangulated category. These characterisations mimic analogous well-known results from the model theory of modules. The proof involves two…

Category Theory · Mathematics 2021-03-09 Raphael Bennett-Tennenhaus

We present a domain-specific type theory for constructions and proofs in category theory. The type theory axiomatizes notions of category, functor, profunctor and a generalized form of natural transformations. The type theory imposes an…

Category Theory · Mathematics 2023-02-21 Max S. New , Daniel R. Licata

Recursive coalgebras provide an elegant categorical tool for modelling recursive algorithms and analysing their termination and correctness. By considering coalgebras over categories of suitably indexed families, the correctness of the…

Programming Languages · Computer Science 2026-04-20 Cass Alexandru , Henning Urbat , Thorsten Wißmann

Iterators are a fundamental programming abstraction for traversing and modifying elements in containers in mainstream imperative languages such as C++. Iterators provide a uniform access mechanism that hides low-level implementation details…

Programming Languages · Computer Science 2026-04-16 Yihe Li , Gregory J. Duck

We propose abstract compilation for precise static type analysis of object-oriented languages based on coinductive logic programming. Source code is translated to a logic program, then type-checking and inference problems amount to queries…

Programming Languages · Computer Science 2017-09-15 Luca Franceschini , Davide Ancona , Ekaterina Komendantskaya

Datatype-generic programming increases program abstraction and reuse by making functions operate uniformly across different types. Many approaches to generic programming have been proposed over the years, most of them for Haskell, but…

Programming Languages · Computer Science 2012-02-15 José Pedro Magalhães , Andres Löh

We propose a novel mechanism of defining data structures using intrinsic definitions that avoids recursion and instead utilizes monadic maps satisfying local conditions. We show that intrinsic definitions are a powerful mechanism that can…

Programming Languages · Computer Science 2024-05-01 Adithya Murali , Cody Rivera , P. Madhusudan

Agda is a dependently-typed functional programming language, based on an extension of intuitionistic Martin-L\"of type theory. We implement first order natural deduction in Agda. We use Agda's type checker to verify the correctness of…

Logic · Mathematics 2021-04-12 Louis Warren

Up-to techniques' represent enhancements of the coinduction proof method and are widely used on coinductive behavioural relations such as bisimilarity. Abstract formulations of these coinductive techniques exist, using fixed-points or…

Logic in Computer Science · Computer Science 2024-12-11 Davide Sangiorgi

In reversible computing, the management of space is subject to two broad classes of constraints. First, as with general-purpose computation, every allocation must be paired with a matching de-allocation. Second, space can only be safely…

Programming Languages · Computer Science 2020-07-17 Chao-Hong Chen , Vikraman Choudhury , Jacques Carette , Amr Sabry