The oidification of an H-space
An H-spaceoid $A$ consists of the following.
A type $A_0$, whose elements are called objects. Typically $A$ is coerced to $A_0$ in order to write $x:A$ for $x:A_0$.
For each $a,b:A$, a type $hom_A(a,b)$, whose elements are called arrows or morphisms.
For each $a:A$, a morphism $1_a:hom_A(a,a)$, called the identity morphism.
For each $a,b,c:A$, a function
called composition, and denoted infix by $g \mapsto f \mapsto g \circ f$, or sometimes $gf$.
For each $a,b:A$ and $f:hom_A(a,b)$, we have $f=1_b \circ f$ and $f=f\circ 1_a$.