[Haskell-cafe] Not an isomorphism, but what to call it?

Dan Doel dan.doel at gmail.com
Thu Jan 19 23:21:28 CET 2012

A is a retract of B.


g is the section, f is the rectraction. You seem to have it already.
The definition needn't be biased toward one of the functions.

On Thu, Jan 19, 2012 at 4:24 PM, Sean Leather <leather at cs.uu.nl> wrote:
> I have two types A and B, and I want to express that the composition of two
> functions f :: B -> A and g :: A -> B gives me the identity idA = f . g :: A
> -> A. I don't need g . f :: B -> B to be the identity on B, so I want a
> weaker statement than isomorphism.
> I understand that:
> (1) If I look at it from the perspective of f, then g is the right inverse
> or section (or split monomorphism).
> (2) If I look at from g, then f is the left inverse or retraction (or split
> epimorphism).
> But I just want two functions that give me an identity on one of the two
> types and I don't care which function's perspective I'm looking at it from.
> Is there a word for that?
> Regards,
> Sean
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe

More information about the Haskell-Cafe mailing list