nLab distributive category


For the non-cartesian case see at distributive monoidal category.


Monoidal categories

monoidal categories

With braiding

With duals for objects

With duals for morphisms

With traces

Closed structure

Special sorts of products



Internal monoids



In higher category theory

Category theory




A category CC with finite products ()×()(-)\times(-) and finite coproducts ()+()(-) + (-) is called (finitary) distributive if for any X,Y,ZCX,Y,Z\in C the canonical distributivity morphism

X×Y+X×ZX×(Y+Z) X\times Y + X\times Z \longrightarrow X\times (Y+Z)

is an isomorphism. The canonical morphism is the unique morphism such that X×YX×(Y+Z)X\times Y \to X\times (Y+Z) is X×iX\times i, where i:YY+Zi\colon Y\to Y +Z is the coproduct injection, and dually for X×ZX×(Y+Z)X\times Z \to X\times (Y+Z).

Equivalently, a category CC with finite products and coproducts is distributive if for any XCX \in C, the functor X×X \times - preserves finite coproducts.


This notion is part of a hierarchy of distributivity for monoidal structures, and generalizes to distributive monoidal categories and rig categories. A linearly distributive category is not distributive in this sense.

This axiom on binary coproducts easily implies the analogous nn-ary result for n>2n\gt 2. In fact it also implies the analogous 0-ary statement that the projection

X×00 X\times 0 \to 0

is an isomorphism for any XX (see Proposition below). Moreover, for a category with finite products and coproducts to be distributive, it actually suffices for there to be any natural family of isomorphisms X×Y+X×ZX×(Y+Z)X\times Y + X\times Z \cong X\times (Y+Z), not necessarily the canonical ones (Lack).

A category CC with finite products and all small coproducts is infinitary distributive if the statement applies to all small coproducts. One can also consider κ\kappa-distributivity for a cardinal number κ\kappa, meaning the statement applies to coproducts of cardinality <κ\lt\kappa.

Any extensive category with finite products is distributive, but the converse is not true.



In a category with products and coproducts, if products distribute over binary coproducts, then coproduct coprojections are monic.


Let i B:BB+Ci_B: B \to B + C be a coproduct coprojection, and suppose given maps f,g:ABf, g: A \to B such that i Bf=i Bgi_B f = i_B g. We observe that the coprojection

i:A×BA×B+A×Ci: A \times B \to A \times B + A \times C

is monic because it has a retraction (1 A×B,ϕ):A×B+A×CA×B(1_{A \times B}, \phi): A \times B + A \times C \to A \times B. (All we need here is the existence of a map ϕ:A×CA×B\phi: A \times C \to A \times B, for example the composite A×Cπ AA1 A,fA×BA \times C \stackrel{\pi_A}{\to} A \stackrel{\langle 1_A, f \rangle}{\to} A \times B.)

The composite of the coprojection ii with the canonical isomorphism A×B+A×CA×(B+C)A \times B + A \times C \cong A \times (B + C), namely 1 A×i B:A×BA×(B+C)1_A \times i_B: A \times B \to A \times (B + C), is therefore also monic. Given that 1 A,i Bf=1 A,i Bg:AA×(B+C)\langle 1_A, i_B f \rangle = \langle 1_A, i_B g \rangle: A \to A \times (B + C), we conclude

(1 A×i B)1 A,f=1 A,i Bf=1 A,i Bg=(1 A×i B)1,g,(1_A \times i_B)\langle 1_A, f \rangle = \langle 1_A, i_B f \rangle = \langle 1_A, i_B g \rangle = (1_A \times i_B)\langle 1, g \rangle,

whence 1 A,f=1 A,g:AA×B\langle 1_A, f\rangle = \langle 1_A, g\rangle: A \to A \times B since 1 A×i B1_A \times i_B is monic. It follows that f=gf = g, as was to be shown.


If products distribute over binary coproducts, then products distribute over nullary coproducts (i.e., the projection X×00X \times 0 \to 0 is an isomorphism for all objects XX).


We show that X×0X \times 0 is initial. Clearly hom(X×0,Y)\hom(X \times 0, Y) is inhabited by X×00YX \times 0 \to 0 \to Y for any object YY. On the other hand, since the two coprojections 00+00 \to 0 + 0 coincide, the same holds for the two coprojections X×0(X×0)+(X×0)X \times 0 \to (X \times 0) + (X \times 0), by applying the distributivity isomorphism X×(0+0)(X×0)+(X×0)X \times (0 + 0) \cong (X \times 0) + (X \times 0). This is enough to show that any two maps X×0YX \times 0 \to Y coincide, since given maps f,g:X×0Yf, g : X \times 0 \to Y, we have f=[f,g]i 1=[f,g]i 2=gf = [f, g] \circ i_1 = [f, g] \circ i_2 = g.


In a distributive category, the initial object is strict.


Given an arrow f:A0f: A \to 0, we have that π A:A×0A\pi_A: A \times 0 \to A is a retraction of 1,f:AA×0\langle 1, f \rangle: A \to A \times 0, so that AA is a retract of A×00A \times 0 \cong 0. But retracts of initial objects are initial.


Every bicartesian closed category is distributive since in that case the cartesian product X×X \times - is a left adjoint and then the distributivity requirement is an instance of the preservation of colimits by left adjoints. For example,

But closedness is far from necessary, for example

is a distributive category.

These categories have in common that they are extensive. An example1 of a distributive category that is not extensive is given by

  • the category of rectangular bands which has objects semigroups XX satisfying xx=xx x = x for all xXx\in X and xyx=xx y x=x for all x,yXx,y\in X.

Since for posets viewed as categories, finite products and coproducts are given by meets and joins we find:

  • A poset viewed as a category is distributive iff it is a distributive lattice. Accordingly, non distributive lattices provide instances of categories with finite products and coproducts that do not distribute over each other.

A further non-example:

  • The category PfnPfn of sets and partial functions has finite coproducts and products. The former given by disjoint unions as in Set and the latter by (X×Y)+X+Y(X\times Y)+X+Y (where ×,+\times,+ indicate the usual product and coproduct in SetSet) with projections π 1,π 2\pi_1,\pi_2 given on the domains of definition (X×Y)+X(X\times Y)+X (resp. (X×Y)+Y(X\times Y)+Y) by π 1((x,y))=x\pi_1((x,y))=x and π 1(x)=x\pi_1(x)=x (resp. π 2((x,y))=y\pi_2((x,y))=y and π 2(y)=y\pi_2(y)=y). Since the initial object \empty is not strict, PfnPfn is not distributive.

Free distributive categories


  • The free distributive category on a category 𝒞\mathcal{C} with finite products is given by the finite free coproduct completion: FinCoprod(𝒞)FinCoprod(\mathcal{C}). That is, FinCoprod(𝒞)FinCoprod(\mathcal{C}) is distributive, and induces a bijection between distributive functors FinCoprod(𝒞)𝒟FinCoprod(\mathcal{C})\to \mathcal{D} and product preserving functors 𝒞𝒟\mathcal{C}\to \mathcal{D}, natural in distributive categories 𝒟\mathcal{D}.

  • The free distributive category on a category 𝒞\mathcal{C} is the finite free coproduct completion of the finite free product completion: FinCoprod(FinProd(𝒞))FinCoprod(FinProd(\mathcal{C})). That is, FinCoprod(FinProd(𝒞))FinCoprod(FinProd(\mathcal{C})) is distributive, and induces a bijection between distributive functors FinCoprod(FinProd(𝒞))𝒟FinCoprod(FinProd(\mathcal{C}))\to \mathcal{D} and functors 𝒞𝒟\mathcal{C}\to \mathcal{D}, natural in distributive categories 𝒟\mathcal{D}.

This is noted in Cockett 1993, p. 280, also Corollary 5.9, where Bob Walters and Shu-Hao Sun? are named as advocates of this method. (However, note that Cockett does not insist on an initial object.)

In particular, then, the free distributive category, which is the free distributive category on the empty category, is the category of finite sets, up to equivalence.


Distributivity, in the sense of this page, is “incompatible” with certain other “linear” structures, at least in the sense that when combined they force the category to become thin.


If a category is distributive, and also linearly distributive with the same cartesian product and coproduct, then it is thin.


This can be found in Cockett-Seely 92


If a category has binary products that distribute over binary coproducts, and also has a monoidal structure that is compact closed, then it is thin.


See at compact closed category.


About distributive categories in general:

See also

For more see at distributive monoidal category.

Also cited above:

  • Robin Cockett, Robert Seely, Weakly Distributive Categories, in M.P. Fourman, P.T. Johnstone, A.M. Pitts, eds., Applications of Categories in Computer Science, London Mathematical Society Lecture Note Series 177 (1992), pp. 45–65. (book website)

  • Robin Houston, Finite Products are Biproducts in a Compact Closed Category, Journal of Pure and Applied Algebra, Volume 212, Issue 2, February 2008, Pages 394-400 (arXiv:math/0604542)

  1. Pointed out by Peter Freyd in this discussion.

Last revised on February 23, 2024 at 01:43:28. See the history of this page for a list of all contributions to it.