English
Related papers

Related papers: Implementing Dependent Type Theory Inhabitation an…

200 papers

Canonical is a solver for type inhabitation in dependent type theory, that is, the problem of producing a term of a given type. We present a Lean tactic which invokes Canonical to generate proof terms and synthesize programs. The tactic…

Logic in Computer Science · Computer Science 2025-09-30 Chase Norman , Jeremy Avigad

The term UniMath refers both to a formal system for mathematics, as well as a computer-checked library of mathematics formalized in that system. The UniMath system is a core dependent type theory, augmented by the univalence axiom. The…

Logic in Computer Science · Computer Science 2019-07-16 Benedikt Ahrens , Ralph Matthes , Anders Mörtberg

In this paper we describe how to leverage higher-order unification to type check a dependently typed language with meta-variables. The literature usually presents the unification algorithm as a standalone component, however the need to…

Programming Languages · Computer Science 2016-10-03 Francesco Mazzoli , Andreas Abel

This paper presents preliminary work on a general system for integrating dependent types into substructural type systems such as linear logic and linear type theory. Prior work on this front has generally managed to deliver type systems…

Logic in Computer Science · Computer Science 2024-01-30 C. B. Aberlé

Sized types are a modular and theoretically well-understood tool for checking termination of recursive and productivity of corecursive definitions. The essential idea is to track structural descent and guardedness in the type system to make…

Programming Languages · Computer Science 2010-12-23 Andreas Abel

We present a novel dependent linear type theory in which the multiplicity of some variable-i.e., the number of times the variable can be used in a program-can depend on other variables. This allows us to give precise resource annotations to…

Programming Languages · Computer Science 2026-05-20 Maximilian Doré

We extend the classical notion of solvability to a lambda-calculus equipped with pattern matching. We prove that solvability can be characterized by means of typability and inhabitation in an intersection type system P based on…

Logic in Computer Science · Computer Science 2023-06-22 Antonio Bucciarelli , Delia Kesner , Simona Ronchi Della Rocca

This work proposes a dependent type theory that combines functions and session-typed processes (with value dependencies) through a contextual monad, internalising typed processes in a dependently-typed lambda-calculus. The proposed…

Programming Languages · Computer Science 2018-01-25 Bernardo Toninho , Nobuko Yoshida

The univalence axiom expresses the principle of extensionality for dependent type theory. However, if we simply add the univalence axiom to type theory, then we lose the property of canonicity - that every closed term computes to a…

Logic in Computer Science · Computer Science 2017-03-14 Robin Adams , Marc Bezem , Thierry Coquand

We show canonicity and normalization for dependent type theory with a cumulative sequence of universes and a type of Boolean. The argument follows the usual notion of reducibility, going back to Godel's Dialectica interpretation and the…

Programming Languages · Computer Science 2018-10-23 Thierry Coquand

A type theory is presented that combines (intuitionistic) linear types with type dependency, thus properly generalising both intuitionistic dependent type theory and full linear logic. A syntax and complete categorical semantics are…

Logic in Computer Science · Computer Science 2026-05-07 Matthijs Vákár

We give an account of the basic combinatorial structure underlying the notion of type dependency. We do so by considering the category of all dependent sequent calculi, and exhibiting it as the category of algebras for a monad on a presheaf…

Logic · Mathematics 2014-02-28 Richard Garner

Dependency analysis is vital to several applications in computer science. It lies at the essence of secure information flow analysis, binding-time analysis, etc. Various calculi have been proposed in the literature for analysing individual…

Programming Languages · Computer Science 2022-09-15 Pritam Choudhury

Many important security properties can be formulated in terms of flows of tainted data, and improved taint analysis tools to prevent such flows are of critical need. Most existing taint analyses use whole-program static analysis, leading to…

Programming Languages · Computer Science 2025-05-02 Nima Karimipour , Kanak Das , Manu Sridharan , Behnaz Hassanshahi

Languages may encode similar meanings using different sentence structures. This makes it a challenge to provide a single set of formal rules that can derive meanings from sentences in many languages at once. To overcome the challenge, we…

Computation and Language · Computer Science 2024-03-05 Laurestine Bradford , Timothy John O'Donnell , Siva Reddy

This is the second in a series of papers extending Martin-L\"{o}f's meaning explanation of dependent type theory to account for higher-dimensional types. We build on the cubical realizability framework for simple types developed in Part I,…

Logic in Computer Science · Computer Science 2017-04-28 Carlo Angiuli , Robert Harper

In their usual form, representation independence metatheorems provide an external guarantee that two implementations of an abstract interface are interchangeable when they are related by an operation-preserving correspondence. If our…

Programming Languages · Computer Science 2025-06-11 Carlo Angiuli , Evan Cavallo , Anders Mörtberg , Max Zeuner

We demonstrate a method to infer polymorphically principal and subtyping-minimal types for an ML-like core language by assigning ranges within a lattice to type variables. We demonstrate the termination and completeness of this algorithm,…

Programming Languages · Computer Science 2013-08-14 Eli Gottlieb

We present two extensions of the LF Constructive Type Theory featuring monadic locks. A lock is a monadic type construct that captures the effect of an external call to an oracle. Such calls are the basic tool for gluing together diverse…

Logic in Computer Science · Computer Science 2015-07-30 Furio Honsell , Luigi Liquori , Petar Maksimović , Ivan Scagnetto

This tutorial explains (one way) how to implement De Morgan cubical type theory to people who know how to implement a dependent type theory. It contains an introduction to basic concepts of cubes, type checking algorithms under a…

Programming Languages · Computer Science 2023-06-07 Tesla Zhang
‹ Prev 1 2 3 10 Next ›