Suppose that $(M, \circ)$ is a set $M$ over which there is defined a binary operation $\circ$ so that we have:

1) For every $(a,b) \in M \times M$ we have $a \circ b \in M$

2) For every $a \in M$ there exist exactly $k$ different elements $a_1^{-1},...,a_k^{-1} \in M$ so that we have $a \circ a_i^{-1}=a_i^{-1} \circ a = 1$, for every $i=1,...,k$


3) We have $1 \circ a = a \circ 1 =a$ for every $a \in M$


This would be a generalization of a *loop* concept because, as is easily seen, *loops* are obtained when $k=1$



> Do these generalisations exist for every $k \in \mathbb N$? How to construct them if they do?