Is this a terminologic issue?
karczma at info.unicaen.fr
Fri Sep 19 11:44:24 EDT 2003
[[Sent to Haskell-café, and to comp.lang.fun]]
If you look at some Web sites (Mathworld, the site of John Baez - a known
spec. in algebraic methods in physics), or into some books on differential
geometry, you might easily find something which is called pullback or
Actually, it is the construction of a dual, whose meaning can be distilled
and implemented in Haskell as follows. The stuff is very old, and very well
Suppose you have two domains X and Y. A function F : X -> Y. The form (F x)
gives some y.
You have also a functor which constructs the dual spaces, X* and Y* - spaces
of functionals over X or Y. A function g belongs to Y* if g : Y -> Z (some
Z, let's keep one space like this).
Now, I can easily construct a dual to F, the function F* : Y* -> X* by
(F* g) x = g (F x)
and this mapping is called pullback...
While there is nothing wrong with that, and in Haskell one may easily
write the 'star' generator
(star f) g x = g (f x)
star = flip (.)
... I have absolutely no clue why this is called a pullback. Moreover, in
the incriminated diff. geom. books, its inverse is *not* called pushout,
but push-forward. Anyway, I cannot draw any pullback diagram from that.
The closest thing I found is the construction in Asperti & Longo,
where a F in C[A,B] induces F* : C!B -> C!A where the exclam.
sign is \downarrow, the "category over ...".
The diagram is there, a 9-edge prism, but - in my eyes - is quite
different from what one can get from this "contravariant composition"
above. But my eyes are not much better than my ears, so...
I sent this question to a few gurus, and the answers are not conclusive,
although it seems that this *is* a terminologic confusion.
Vincent Danos <Vincent.Danos at pps.jussieu.fr> wrote:
> it really doesn't look like a categorical pullback
> and it might well be a "pull-back" only in the sense
> that if if F:A->B is a linear map say and f is a linear form on B, then F*(f)
> is a linear form on A
> defined as F*(f)(a)=f(b=F(a)) so one can "pull back" (linearly of course!)
> linear forms on B to linear forms on A
> "back" refers to the direction of F, i'd say.
Does anybody have a different (or any!) idea about that?
Thank you in advance for helping me to solve my homework.
More information about the Haskell-Cafe