Understand Zygote's differentiation mechanism
masterZygote performs Automatic Differentiation (AD) by transforming functions into pullbacks. A pullback (represented by the function J in conceptual examples) takes a function and its inputs, returning the result of the forward pass and a 'back' function. The 'back' function (the adjoint) takes the gradient of the output and returns the gradient of the inputs.
For composite functions, Zygote chains these pullbacks together: the backward pass of a composite function $f(g(x))$ is the composition of the pullbacks of $f$ and $g$, propagating gradients from the output back to the input.