Skip to content

Conversation

oxinabox
Copy link
Member

@oxinabox oxinabox commented Apr 10, 2020

This takes @aisopous's PR from December that I never got round to merging,
and shifts it over here to where the docs are.
JuliaDiff/ChainRules.jl#135
I think @aisopous addressed all comments there, explaining why the points were correct.

It also deletes the heavier math section which has issues.
Since this section covers our need for rigerous math better than that section ever could.
This thus closes #139

A follow up PR to breakup this page in the docs is needed.


Preview of Docs:
http://www.juliadiff.org/ChainRulesCore.jl/preview-PR147/#Geometric-interpretation-of-reverse-and-forwards-mode-AD-1

an ``n``-dimensional vector ``(g_1, ..., g_m)`` of functions on ``M``.

We define the _push-forward_ ``g_*:TM -> TN`` between tangent bundles by ``g_*(X)(h) = X(g\circ h)`` for any tangent vector ``X`` and function ``f``.
We have ``g_*(d/dx_i)(y_j) = dg_j/dx_i, so the push-forward corresponds to the Jacobian, given a chosen basis.
Copy link

@jonalm jonalm Apr 12, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

missing backticks after math expression, g_*(d/dx_i)(y_j) = dg_j/dx_i

We have ``g_*(d/dx_i)(y_j) = dg_j/dx_i, so the push-forward corresponds to the Jacobian, given a chosen basis.

Similarly, the pullback of the differential ``df`` is defined by
``g^*(df) = d(g\circ f)``. So for a coordinate differential ``dy_j``, we have
Copy link

@jonalm jonalm Apr 12, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Shouldn't the order of function application be opposite here. I.e g first maps M->N then, and f:N->R , g^*(df) = d(f\circ g)


Let ``df`` denote the first order information of ``f`` at each point. This is called the differential of ``f``.
If the derivatives of ``f`` and ``g`` agree at ``p``, we say that ``df`` and ``dg`` represent the same cotangent at ``p``.
The covectors ``dx_1, ..., dx_m`` form the basis of the cotangent space T^*_pM at ``p``. Notice that this vector space is
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Need to wrap T^*_pM in ticks and curly brackets

We have ``g_*(d/dx_i)(y_j) = dg_j/dx_i, so the push-forward corresponds to the Jacobian, given a chosen basis.

Similarly, the pullback of the differential ``df`` is defined by
``g^*(df) = d(g\circ f)``. So for a coordinate differential ``dy_j``, we have
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ah, the good old confusion about the order of function composition

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, its really bad.
a lot of my maths units at uni were taught by group theorists,
from a subsubfield that lits to write all functions in postfix application (x f g meaning g(f(x))),
which makes for extra fun of confusion.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm pretty into it! You can actually read it all left to right! f \circ g (x) reads "take x, apply g then apply f"! 😭

@jonalm
Copy link

jonalm commented Apr 17, 2020

Is there a suggested change button I'm missing out on that I could use and edit in Github?

@aisopous
Copy link
Contributor

aisopous commented Apr 17, 2020

Is there a suggested change button I'm missing out on that I could use and edit in Github?

Yup, leftmost button at the top when commenting on commit changes :). Thanks for the corrections!

@jonalm
Copy link

jonalm commented Apr 17, 2020

Is there a suggested change button I'm missing out on that I could use and edit in Github?

Yup, leftmost button at the top when commenting on commit changes :). Thanks for the corrections!

Thanks. Happy to help with obvious typos.

I'm a bit confused by the content, but my diff geometry knowledge is limited and I know this is difficult to explain succinctly.

@oxinabox
Copy link
Member Author

@aisopous can I merge this?

@oxinabox oxinabox merged commit 200bd8f into master Apr 20, 2020
@aisopous
Copy link
Contributor

Oh, yeah! It'll benefit from some better writing in the future, though!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

typos in "heavier math" section of docs?
5 participants