CatGloss

A category is abelian if

  1. it has a zero object $0$, that is both initial and terminal,
  2. it has all binary products and binary coproducts,
  3. it has all kernels and cokernels, defined respectively to be the equalizer and coequalizer of a map $f \colon A \to B$ with the zero map $A \to 0 \to B$, and
  4. all monomorphisms and epimorphisms arise as kernels or cokernels, respectively.