What do you call Applicative Functor Morphism?

An applicative functor morphism is a polymorphic function, eta : forall a. A1 a -> A2 a between two applicative functors A1 and A2 that preserve pure and <*>: eta (pure c) = pure c eta (f <*> x) = eta f <*> eta x What do you guys call such a thing? My leading candidate is "idomatic transformation". -- Russell O'Connor http://r6.ca/ ``All talk about `theft,''' the general counsel of the American Graphophone Company wrote, ``is the merest claptrap, for there exists no property in ideas musical, literary or artistic, except as defined by statute.''

I like "C morphism" in general, where "C" is the class name, so I use
"Applicative morphism" or "applicative functor morphism" (as in
http://conal.net/papers/type-class-morphisms/).
- Conal
On Fri, Nov 5, 2010 at 8:49 PM,
An applicative functor morphism is a polymorphic function, eta : forall a. A1 a -> A2 a between two applicative functors A1 and A2 that preserve pure and <*>:
eta (pure c) = pure c eta (f <*> x) = eta f <*> eta x
What do you guys call such a thing? My leading candidate is "idomatic transformation".
-- Russell O'Connor http://r6.ca/ ``All talk about `theft,''' the general counsel of the American Graphophone Company wrote, ``is the merest claptrap, for there exists no property in ideas musical, literary or artistic, except as defined by statute.'' _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe

Hello, I'm curious and go a bit off topic triggered by your statement: On Nov 6, 2010, at 12:49 PM, roconnor@theorem.ca wrote:
An applicative functor morphism is a polymorphic function, eta : forall a. A1 a -> A2 a between two applicative functors A1 and A2 that preserve pure and <*>
I recently wondered: why "morphism" and not "homomorphism"? Wikipedia says: "In abstract algebra, a homomorphism is a structure-preserving map between two algebraic structures" and "In mathematics, a morphism is an abstraction derived from structure- preserving mappings between two mathematical structures." One difference is "absract algebra ... algebraic structures" vs "mathematics ... mathematic structures" another difference is the "abstraction derived from" part in the second phrase. So for the `Monoid` class, I'd say "monoid homomorphism" but I'm unsure whether `Applicative` counts as an algebraic structure or calls for using "morphism" instead. Is there a deeper reason why people use "morphism" and not "homomorphism" or is it just because it's shorter? Sebastian

On Saturday 06 November 2010 2:09:13 am Sebastian Fischer wrote:
Is there a deeper reason why people use "morphism" and not "homomorphism" or is it just because it's shorter?
I don't really know. But that's (one) standard terminology in category theory. Objects and morphisms. It may be due to there being multiple prefixes in category theory that you can add to that: isomorphism epimorphism monomorphism ... In that light, it makes some sense to have the default be just "morphism," rather than the additional homo- prefix. -- Dan

On 11/6/10 2:09 AM, Sebastian Fischer wrote:
Hello,
I'm curious and go a bit off topic triggered by your statement:
On Nov 6, 2010, at 12:49 PM, roconnor@theorem.ca wrote:
An applicative functor morphism is a polymorphic function, eta : forall a. A1 a -> A2 a between two applicative functors A1 and A2 that preserve pure and <*>
I recently wondered: why "morphism" and not "homomorphism"?
Indeed, for the present example I'd call eta an applicative-functor homomorphism[1]. The use of "morphism" in category theory originated as a shortening of "homomorphism"[2], though there is a semantic difference between them as the two terms are used today. A morphism is an arrow in any particular category. What it takes to be morphism in category, C, depends on which category C happens to be. It turns out that many of the algebraic constructs studied outside of category theory form categories where the objects are particular constructs (e.g., specific rings, groups,...) and the morphisms are the appropriate homomorphisms (e.g., ring homomorphisms, group homomorphisms,...). Thus, the term "homomorphism" has to do with particular kinds of structure preserving transformations that are discussed in the underlying theories, whereas "morphism" is a general term in category theory used as a metatheory. [1] Assuming the context presented in the original email. In other contexts I may refer to eta as an Applicative morphism (i.e., a morphism in the category whose objects are Applicative instances) or as an Applicative transformation (i.e., a natural transformation between Applicative instances viewed as functors). [2] Whence the use of "Hom(A,B)" to refer to the collection of morphisms from A to B, and related terms like "hom-set" and "hom-functor". -- Live well, ~wren

On Sat, 6 Nov 2010, Sebastian Fischer wrote:
Hello,
I'm curious and go a bit off topic triggered by your statement:
On Nov 6, 2010, at 12:49 PM, roconnor@theorem.ca wrote:
An applicative functor morphism is a polymorphic function, eta : forall a. A1 a -> A2 a between two applicative functors A1 and A2 that preserve pure and <*>
I recently wondered: why "morphism" and not "homomorphism"?
Morphisms can be more general than homomorphisms. But in this case I mean the morphisms which are homomorphisms. I was too lazy to write out the whole word. -- Russell O'Connor http://r6.ca/ ``All talk about `theft,''' the general counsel of the American Graphophone Company wrote, ``is the merest claptrap, for there exists no property in ideas musical, literary or artistic, except as defined by statute.''

category theory encompasses more than just algebra. so there are homomorphisms, but also diffeomorphisms, symplectomorphisms, et cetera (in addition to things which don't have the -morphism suffix in normal usage, like continuous maps, natural transformations.....) b On Nov 6, 2010, at 7:19 AM, roconnor@theorem.ca wrote:
On Sat, 6 Nov 2010, Sebastian Fischer wrote:
Hello,
I'm curious and go a bit off topic triggered by your statement:
On Nov 6, 2010, at 12:49 PM, roconnor@theorem.ca wrote:
An applicative functor morphism is a polymorphic function, eta : forall a. A1 a -> A2 a between two applicative functors A1 and A2 that preserve pure and <*>
I recently wondered: why "morphism" and not "homomorphism"?
Morphisms can be more general than homomorphisms. But in this case I mean the morphisms which are homomorphisms. I was too lazy to write out the whole word.
-- Russell O'Connor http://r6.ca/ ``All talk about `theft,''' the general counsel of the American Graphophone Company wrote, ``is the merest claptrap, for there exists no property in ideas musical, literary or artistic, except as defined by statute.'' _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe

On Fri, Nov 05, 2010 at 11:49:27PM -0400, roconnor@theorem.ca wrote:
An applicative functor morphism is a polymorphic function, eta : forall a. A1 a -> A2 a between two applicative functors A1 and A2 that preserve pure and <*>:
eta (pure c) = pure c eta (f <*> x) = eta f <*> eta x
What do you guys call such a thing? My leading candidate is "idomatic transformation".
An applicative functor is a functor with some extra structure. Such a function is a natural transformation between the underlying functors that preserves the extra structure. So "applicative transformation" seems a logical name.
participants (7)
-
Ben
-
Conal Elliott
-
Dan Doel
-
roconnor@theorem.ca
-
Ross Paterson
-
Sebastian Fischer
-
wren ng thornton