# PlanetPhysics/Double Category
### Background

Charles Ehresmann defined in 1963 a double category ${\mathcal {D}}$ as an internal category in the category of small categories $\mathbf {Cat}$.

### Double category definition

A double category ${\mathcal {D}}$ consists of:
* a set of objects,
* a set of horizontal morphisms $f:A\to B,$
* a set of vertical morphisms $j:A\to C,$ and
* a class of squares with source and target as shown in the following diagrams: Failed to parse (unknown function "\begin{xy}"): {\displaystyle \begin{xy} *!C\xybox{ \xymatrix{ {A}\ar[r]^{f}\ar[d]_{k}&{B}\ar[d]^{g}\\ {C}\ar[r]_{h}&{D} } }\end{xy}}
with compositions and units of the double category that satisfy the following axioms:
* i. Horizontal: Failed to parse (unknown function "\buildrel"): {\displaystyle A\buildrel f_1 \over \longrightarrow B \buildrel f_2 \over \longrightarrow C = [f_1, f_2]= f_2 \circ f_1 } Failed to parse (unknown function "\buildrel"): {\displaystyle A\buildrel 1^h_A \over \longrightarrow A \buildrel f_1 \over \longrightarrow B = A\buildrel f_1 \over \longrightarrow B = A \buildrel f_1 \over \longrightarrow B \buildrel 1^h_B \over \longrightarrow B }
* ii. Vertical: Failed to parse (unknown function "\buildrel"): {\displaystyle [A\buildrel j_1 \over \longrightarrow B \buildrel j_2 \over \longrightarrow C]_{vert} = [j_1, j_2]_{vert.}= j_2 \circ j_1 } Failed to parse (unknown function "\buildrel"): {\displaystyle [A\buildrel 1^v_A \over \longrightarrow A \buildrel j_1 \over \longrightarrow B = A\buildrel j_1 \over \longrightarrow B = A \buildrel j_1 \over \longrightarrow B \buildrel 1^v_B \over \longrightarrow B]_{vert.} } Compositions for \htmladdnormallink{square diagrams {http://planetphysics.us/encyclopedia/Commutativity.html} in a double category ${\mathcal {D}}$:}
* iii. Horizontal composition: Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "http://localhost:6011/en.wikiversity.org/v1/":): {\displaystyle \xymatrix{ {A}\ar[r]^{f_1}\ar[d]_{j}&{B}\ar[d]^{k}\\ {D}\ar[r]_{g_1}&{E}}[[User:MaintenanceBot|MaintenanceBot]] ([[User talk:MaintenanceBot|discuss]] • [[Special:Contributions/MaintenanceBot|contribs]]) 20:49, 25 June 2015 (UTC)[\alpha]"\circ" \xymatrix{ {B}\ar[r]^{f_2}\ar[d]_{k}&{C}\ar[d]^{l}\\ {E}\ar[r]_{g_2}&{F}}[[User:MaintenanceBot|MaintenanceBot]] ([[User talk:MaintenanceBot|discuss]] • [[Special:Contributions/MaintenanceBot|contribs]]) 20:49, 25 June 2015 (UTC)[\beta] = \xymatrix{ {A}\ar[r]^{[f_1f_2]}\ar[d]_{j}&{C}\ar[d]^{l}\\ {D}\ar[r]_{g_1g_2}&{F}} [[User:MaintenanceBot|MaintenanceBot]] ([[User talk:MaintenanceBot|discuss]] • [[Special:Contributions/MaintenanceBot|contribs]]) 20:49, 25 June 2015 (UTC)[\alpha \beta].}
* iv. Vertical composition of squares in ${\mathcal {D}}$: ${[\alpha \beta ]}_{vert.}$ is expressed as Failed to parse (unknown function "\xymatrix"): {\displaystyle \xymatrix{ {A}\ar[r]^{f}\ar[d]_{[j_1 j_2]_v}&{B}\ar[d]^{[k_1 k_2]_v}\\ {E}\ar[r]_{h}&{F}}[[User:MaintenanceBot|MaintenanceBot]] ([[User talk:MaintenanceBot|discuss]] • [[Special:Contributions/MaintenanceBot|contribs]]) 20:49, 25 June 2015 (UTC)[\alpha \beta]_v.}
Moreover, all compositions are associative and unital, and also subject to the Interchange Law:
Failed to parse (unknown function "\xymatrix"): {\displaystyle \xymatrix{ {[\alpha]}\ar[r]^{--}\ar[d]_{|}&{[\beta]}\ar[d]^{|}\\ {[\gamma]}\ar[r]_{--}&{[\delta]} } = {[ [\alpha \beta] ~~over~~ [\gamma \delta]]}_{vert.} = [\alpha \gamma]_v \circ [\beta \delta]_v.}
Unit morphisms are also subject to the axioms of the double category. For further details on double categories and examples please see the related free download PDF file.