Related papers: A formalization of System I with type Top in Agda
Given a full column rank matrix $A \in \mathbb{R}^{m\times n}$ ($m\geq n$), we consider a special class of linear systems of the form $A^\top Ax=A^\top b+c$ with $x, c \in \mathbb{R}^{n}$ and $b \in \mathbb{R}^{m}$. The occurrence of $c$ in…
Gradual typing is an approach to integrating static and dynamic typing within the same language, and puts the programmer in control of which regions of code are type checked at compile-time and which are type checked at run-time. In this…
We study the properties, in particular termination, of dependent types systems for lambda calculus and rewriting.
Shape types are a general concept of process types which work for many process calculi. We extend the previously published Poly* system of shape types to support name restriction. We evaluate the expressiveness of the extended system by…
We describe a new arithmetic system for the Magma computer algebra system for working with $p$-adic numbers exactly, in the sense that numbers are represented lazily to infinite $p$-adic precision. This is the first highly featured such…
Type systems certify program properties in a compositional way. From a bigger program one can abstract out a part and certify the properties of the resulting abstract program by just using the type of the part that was abstracted away.…
Working in a variant of the intersection type assignment system of Coppo, Dezani-Ciancaglini and Veneri [1981], we prove several facts about sets of terms having a given intersection type. Our main result is that every strongly normalizing…
Given an associative, not necessarily commutative, ring R with identity, a formal matrix calculus is introduced and developed for pairs of matrices over R. This calculus subsumes the theory of homogeneous systems of linear equations with…
Initial Semantics aims at characterizing the syntax associated to a signature as the initial object of some category. We present an initial semantics result for typed higher-order syntax together with its formalization in the Coq proof…
We present three ordinal notation systems representing ordinals below $\varepsilon_0$ in type theory, using recent type-theoretical innovations such as mutual inductive-inductive definitions and higher inductive types. We show how ordinal…
In this paper we introduce a typed, concurrent $\lambda$-calculus with references featuring explicit substitutions for variables and references. Alongside usual safety properties, we recover strong normalization. The proof is based on a…
Intuitionistic modal logics (IMLs) extend intuitionistic propositional logic with modalities such as the box and diamond connectives. Advances in the study of IMLs have inspired several applications in programming languages via the…
A model of Martin-L\"of extensional type theory with universes is formalized in Agda, an interactive proof system based on Martin-L\"of intensional type theory. This may be understood, we claim, as a solution to the old problem of modelling…
In previous work we introduced the notion of binomial cup-one algebras, which are differential graded algebras endowed with Steenrod $\cup_1$-products and compatible binomial operations. In this paper we show that binomial cup-one algebras…
The lambda-calculus with de Bruijn indices assembles each alpha-class of lambda-terms in a unique term, using indices instead of variable names. Intersection types provide finitary type polymorphism and can characterise normalisable…
We introduce a topology on the space of all isomorphism types represented in a given class of countable models, and use this topology as an aid in classifying the isomorphism types. This mixes ideas from effective descriptive set theory and…
We show that any multiple-valued function can be represented by a linear lambda term typed in a second-order polymorphic type system, using two distinct styles. The first is a circuit style, which mimics combinational circuits in switching…
A fragment of second-order lambda calculus (System F) is defined that characterizes the elementary recursive functions. Type quantification is restricted to be non-interleaved and stratified, i.e., the types are assigned levels, and a…
We introduce a new two-sided type system for verifying the correctness and incorrectness of functional programs with atoms and pattern matching. A key idea in the work is that types should range over sets of normal forms, rather than sets…
We introduce an axiomatisation of when a model of the form $L(V_{\kappa+1})^M$ can be considered a ``$\kappa$-Solovay model''; we show a characterisation of $\kappa$-Solovay models; and we prove elementary equivalences between…