Everything About ___
Live briefing

Everything about Automatic differentiation

Numerical calculations carrying along derivatives

In mathematics and computer algebra, automatic differentiation, also called algorithmic differentiation, computational differentiation, and differentiation arithmetic is a set of techniques to evaluate the partial derivative of a function specified by a computer program. Automatic differentiation enables the simultaneous computation of the numerical values of arbitrarily complex functions and their derivatives using only the function itself; no symbolic derivative is required. Auto-differentiation is thus neither numeric nor symbolic, nor is it a combination of both. In contrast to the more traditional numerical methods based on finite differences, auto-differentiation is 'in theory' exact, and in comparison to symbolic algorithms, it is computationally inexpensive. Wikipedia →

🧭 Start here: a 6-step reading path

  1. Read the overview: Automatic differentiationA 5-minute orientation
  2. Skim a recent paper: Modules for Experiments in Stellar Astrophysics (MESA): Time-dependent Convection, Energy Conservation, Automatic Differentiation, and InfrastructureInfluential work since 2022
  3. Pick up a classic book: Continuous time dynamical systemsThe most-reprinted book on the subject
  4. Read the landmark paper: The Tapenade automatic differentiation toolCited 439 times
  5. Go sideways: Function of several real variablesA closely related topic
  6. Go sideways: Differential of a functionA closely related topic

📖 Definitions

Noun Exact differentiation of functions represented in program code by inspecting the code (as opposed to mere evaluation) and repeated application of the chain rule.

🏆 Landmark papers (most cited)

🆕 Influential since 2022

📚 Books worth reading

Ranked by number of editions on Open Library, a rough measure of how lasting a book is.

🔗 Related topics