Is there a name for this structure?

Joe English
Tue, 26 Mar 2002 20:05:40 -0800

Not really a Haskell question, but someone here might know the answer...

Suppose you have two morphisms f : A -> B and g : B -> A
such that neither (f . g) nor (g . f) is the identity,
but satisfying (f . g . f) = f.   Is there a conventional name
for this?  Alternately, same question, but f and g are functors
and A and B categories.

In some cases (g . f . g) is also equal to g; is there a name
for this as well?

I find myself running into pairs of functions with this property
over and over again, and am looking for a short way to describe
the property...


--Joe English