Three Ways to Take a Gradient: Tape, Trace, and Source Transform
PyTorch, JAX, and compiler-level tools like Enzyme use three different representations for automatic differentiation—runtime tape, functional trace-and-transform, and source (IR) transformation—each w…