A diagram model of linear dependent type theory
Martin Lundfall
DOI: https://doi.org/10.48550/arXiv.1806.09593
2018-06-28
Abstract:We present a type theory dealing with non-linear, "ordinary" dependent types (which we will call cartesian) and linear types, where both constructs may depend on terms of the former. In the interplay between these, we find new type formers $\sqcap_{x:A}B$ and $\sqsubset_{x:A}B$, akin to $\Pi$ and $\Sigma$, but where the dependent type $B$, (and therefore the resulting construct) is a linear type. These can be seen as internalizing universal and existential quantification of linear predicates. We also consider two modalities, $M$ and $L$, transforming linear types into cartesian types and vice versa. The theory is interpreted in a split comprehension category $\pi:\mathcal{T}\to\mathcal{C}^\to$ accompanied by a split symmetric monoidal fibration, $\pi: \mathcal{L}\to\mathcal{C}$. This structure determines, for any context $\Gamma$, fibers $\mathcal{T}_\Gamma$ and $\mathcal{L}_\Gamma$; the category of cartesian types and the monoidal category of linear types over $\Gamma$, respectively. Here, the type formers $\sqcap_{x:A}$ and $\sqsubset_{x:A}$ are understood as right and left adjoints of the monoidal reindexing functor $\pi_A^*:\mathcal{L}_\Gamma\to\mathcal{L}_{\Gamma.A}$. The operators $M$ and $L$ induce a fiberwise adjunction $L \dashv M$ between $\mathcal{L}$ and $\mathcal{T}$, where the traditional exponential modality is understood as the comonad $! = LM$. We provide a model of this theory called the Diagram model, which extends the groupoid model of dependent type theory to accommodate linear types. Here, cartesian types are interpreted as a family of groupoids, while linear types are interpreted as diagrams $A:\Gamma\to\mathcal{V}$ in any symmetric monoidal category $\mathcal{V}$. We show that the diagrams model can under certain conditions support a linear analogue of the univalence axiom, and provide some discussion on the higher-dimensional nature of linear dependent types.
Logic