split epimorphism inverse left inverse right inverse monomorphism mono cosection diagonal morphism comonad contravariance