Dependent Multiplicities in Dependent Linear Type Theory
- Dependent multiplicities are resource annotations in dependent linear type theory that assign usage counts to variables based on term values.
- The system employs a supply algebra with monoidal structures and linear maps to model, transform, and verify resource demands.
- It enables precise typing of higher-order functions by integrating graded usage, arithmetic properties, and dependent products to track consumption.
In dependent linear type theory, dependent multiplicities are resource annotations in which the multiplicity of some variable—namely, the number of times the variable can be used in a program—can depend on other variables, more specifically on earlier variables in a dependent type. The formulation developed in "Dependent Multiplicities in Dependent Linear Type Theory" gives precise resource annotations to many higher-order functions that cannot be adequately typed in any other system, does so by embedding linear logic into dependent type theory in a resource-sensitive way, uses a standard natural numbers type to obtain a quantitative typing system with dependent multiplicities, characterises the semantics as a combination of standard models of dependent type theory and linear logic, and is implemented in Agda (Doré, 11 Jul 2025).
1. Resource objects and dependent linear types
The core quantitative structure is the datatype Supply, which serves as the resource object of the theory. Its constructors are:
0
Here ⋆ is the monoidal unit, _⊗_ is tensor, ! is the exponential of linear logic, ι a is a singleton supply focused at a value a, and Λ A Δ is a supply that depends on an index A and a family Δ : A → Supply. At the categorical level, Supply is described as a strictly symmetric monoidal category with additional structure for !. The type of linear maps between supplies is written Δ₀ ▷ Δ₁, and its constructors encode the laws of a symmetric monoidal closed category with a comonad ! (Doré, 11 Jul 2025).
The resource discipline is attached to types through LType:
1
Thus an element of LType is a pair (A , Θ) where A is an underlying type and Θ : A → Supply assigns to each term a : A the supply associated with that term. This is the decisive step: the quantity or shape of resources associated with a term depends on the actual term value. The paper therefore treats an LType as a dependent linear type, and the function Θ as the dependent multiplicity assignment (Doré, 11 Jul 2025).
A plain type embeds into this setting through the shorthand
2
so an ordinary type is interpreted as a linear type whose supply at a : A is just the singleton supply ι a. This provides the trivial case from which more informative dependent multiplicities are built.
2. Judgments as terms equipped with resource proofs
Typing judgments are represented by pairing a term with a proof that the ambient supply can be transformed into the supply demanded by that term’s dependent linear type. The judgment form is
3
An inhabitant of Δ ⊙ (A , Θ) is therefore a pair consisting of an element a : A and a morphism Δ ▷ Θ a. The intended reading is that the context supply Δ can be linearly transformed into the supply required by the value a, namely Θ a. The typing judgment is consequently not only a statement about term formation but also a witness of resource usage (Doré, 11 Jul 2025).
This formulation is the mechanism by which quantitative information is tracked. Multiplicities are not external annotations attached to variables in a context; rather, they are encoded inside supply terms and justified by morphisms in the Supply category. The paper explicitly notes that multiplicities are "not represented as explicit m : ℕ annotations on variables in a context, but as part of the supply term assigned to the whole context, composed with dependent functions Θ : A → Supply" (Doré, 11 Jul 2025).
There is also an auxiliary record of A and a coercion _^Θ packaging a term together with its focused resource supply. This isolates the canonical supply corresponding to a concrete term and provides the local resource object from which more complex quantitative derivations are assembled.
3. Dependent products and explicit multiplicity indices
Dependent multiplicities become operationally explicit in the definition of dependent products. For a linear type (A , Θ₀) and a dependent family (B , Θ₁), the dependent product is
4
The supply of a function f is therefore indexed by x : A, with payload [Θ₀ x , Θ₁ (f x)]. In the paper’s reading, the supply required by the function at argument x is Θ₀ x ⊗ Θ₁ (f x). Both the argument usage and the result usage may depend on the actual argument x and the value f x (Doré, 11 Jul 2025).
Quantitative dependent products are then introduced by an explicit natural-number multiplicity parameter. Supply powers are defined by repeated tensor:
5
and used in the multiplicity-indexed product
6
The notation
7
makes the intended interpretation explicit: the function uses its argument m times. Standard Π is recovered as the case m = 1 (Doré, 11 Jul 2025).
Application realizes a quantitative substitution principle:
8
with notation f ≻ m ⇓ a. If f has multiplicity m in its argument and a is supplied by Δ₁, then applying f to a consumes Δ₀ ⊗ Δ₁^m. The paper summarizes this as: if f : \Pi_x^m B(x) and a : A, then the resource consumption is Δ_f ⊗ Δ_a^m, so a is used exactly m times (Doré, 11 Jul 2025).
4. Arithmetic of multiplicities and higher-order computation
The system’s dependent multiplicities are not limited to literal constants. Arithmetic on multiplicities is internalised through proofs in the Supply category. The module NatMul establishes, among others, the morphisms
9
and the distributivity law
0
These are the resource-algebraic counterparts of addition, multiplication, and distributivity of natural numbers. The paper states that this is what makes the multiplicities genuinely dependent: the required supply for a function or term can be an arbitrary polynomial, or a more complex function, in natural indices (Doré, 11 Jul 2025).
The canonical higher-order example is copy and its iteration:
1
copy uses its argument twice, while copytwice uses the original argument four times. Typing copytwice requires ⊗^‑distr to establish that two uses of a function of multiplicity 2 yield multiplicity 4. The paper explicitly states that this is something not available in standard linear logic, nor in non-dependent quantitative systems that only have fixed grades; here the multiplicity is computed by a higher-order program in ℕ and verified in the supply algebra (Doré, 11 Jul 2025).
This is the point at which the phrase dependent multiplicities acquires its strongest meaning. The multiplicity annotation is not merely attached to a binder; it can be computed, transported through higher-order composition, and justified by internal proofs of resource equalities.
5. Interaction with other type formers, semantics, and mechanisation
The same Supply/LType architecture extends to other dependent type formers. The paper defines linear versions of dependent sums, coproducts, identity, and fixed points. For dependent sums, pairing is linearised using morphisms such as
2
and analogous constructions are given for tt, inl, inr, and inductive types μ F. Because LType is Σ A. A → Supply, every dependent type in the sense of MLTT is extended with a resource component (Doré, 11 Jul 2025).
The exponential ! is integrated through a dependent function space
3
with notation !⟨ x : A ⟩ ⊸ B. Here the argument supply is ! (Θ₀ x) rather than Θ₀ x ^ m. The paper describes this as the linear-logic rule under which one can duplicate or erase arbitrarily; the relevant equations are mediated by the comonad maps use, mult, dupl, and erase (Doré, 11 Jul 2025).
Semantically, the intended interpretation is standard. Supply with _⊗_, ⋆, and _▷_ is a symmetric monoidal closed category; ! is a monoidal comonad; and
is the category of families of supplies over sets, described in the paper as basically a fibration over Type with fibres A → Supply. Judgments are interpreted as
The system is implemented in Agda. The paper also notes a practical consequence of the internalised resource algebra: type checking can require solving large equalities in Supply, often by explicit proofs such as lemma1, lemma2, and related constructions, and in practice Agda automation or custom tactics in modules such as ProductionSolver are used to build these morphisms (Doré, 11 Jul 2025).
6. Distinctive features and broader usage of the term
The paper isolates four aspects as novel. First, multiplicities are fully dependent: the supply function Θ : A → Supply can depend on any term a : A, not only on numeric indices. Second, the resource algebra is internalised: instead of annotations like x : A [m], the discipline is expressed inside the linear category Supply and its morphisms. Third, the system gives precise quantitative typing of higher-order functions, including examples such as copy : ⟨ A. ⟩^2 ⊸ (A × A). and copytwice : ⟨ A. ⟩^4 ⊸ ((A × A) × (A × A))., where exact usage rather than upper bounds is tracked. Fourth, bounded graded usage via ^ m and unbounded usage via ! are combined in one framework (Doré, 11 Jul 2025).
The expression dependent multiplicities is not uniform across the literature. In semi-inclusive deep inelastic scattering, the central observable is the transverse-momentum-dependent hadron multiplicity, differential in , , , and (Aghasyan et al., 2017). In symbolic dynamics, multiplicity of an ergodic measure under a factor code depends on the factor code and the base measure , and degree or class degree decomposes as a sum of such multiplicities (Yoo, 2015). In multiplicity estimates for algebraically dependent analytic functions, the dependent case replaces the exponent by the transcendence degree in the optimal order-of-vanishing bound (Zorin, 2012). These uses concern different mathematical objects and different notions of dependence.
Within dependent linear type theory, however, the term has a precise technical meaning. A dependent multiplicity is the resource demand encoded by Θ : A → Supply, and the paper’s central claim is that such demands can be manipulated compositionally, expressed through natural-number-indexed supply powers, and verified by proofs in the supply algebra. In that sense, dependent multiplicities are a quantitative refinement of dependent typing itself: resource use is indexed by values, transported through higher-order structure, and made part of the semantics of the type theory (Doré, 11 Jul 2025).