Last updated 8 months ago
Magmaā āAā āā\textbf{Magma} \; A \; \otimesMagmaAā
ā(x,y,zāX:(xāy)āz=xā(yāz))\forall(x,y,z \in X : (x \otimes y) \otimes z = x \otimes (y \otimes z))ā(x,y,zāX:(xāy)āz=xā(yāz))
pred Semigroup(A: set univ, op: univ->univ->univ) { Magma[A,op] all x,y,z: A | op[op[x,y],z] = op[x,op[y,z]] }