Skip to content

Jets & Higher-Order AD

Status: stub

Full Jets documentation is planned for Phase 2. Spec source: 17_JETS.csl.

A jet is a truncated Taylor series — a value together with its derivatives up to some order. Jets are used when you need higher-order derivatives (second derivative, Hessian, etc.) without the complexity of composing multiple applications.

// A Jet<f32, 2> carries: value, first derivative, second derivative
let x_jet = Jet::seed::<2>(3.0);
let y_jet = x_jet * x_jet; // propagates through arithmetic automatically
// y_jet.value = 9.0, .d1 = 6.0, .d2 = 2.0

Jets are used in:

  • Physics simulation (Hessians for implicit integration)
  • Differentiable rendering (higher-order light transport)
  • Optimization algorithms that need curvature information

Full documentation in Phase 2.