λS: Computable Semantics for Differentiable Programming with Higher-Order Functions and Datatypes
Not on the map. Why?
Abstract (arXiv)
Deep learning is moving towards increasingly sophisticated optimization objectives that employ higher-order functions, such as integration, continuous optimization, and root-finding. Since differentiable programming frameworks such as PyTorch and TensorFlow do not have first-class representations of these functions, developers must reason about the semantics of such objectives and manually translate them to differentiable code. We present a differentiable programming language, λS, that is the first to deliver a semantics for higher-order functions, higher-order derivatives, and Lipschitz but nondifferentiable functions. Together, these features enable λS to expose differentiable, higher-order functions for integration, optimization, and root-finding as first-class functions with automatically computed derivatives. λS's semantics is computable, meaning that values can be computed to arbitrary precision, and we implement λS as an embedded language in Haskell. We use λS to construct novel differentiable libraries for representing probability distributions, implicit surfaces, and generalized parametric surfaces -- all as instances of higher-order datatypes -- and present case studies that rely on computing the derivatives of these higher-order functions and datatypes. In addition to modeling existing differentiable algorithms, such as a differentiable ray tracer for implicit surfaces, without requiring any user-level differentiation code, we demonstrate new differentiable algorithms, such as the Hausdorff distance of generalized parametric surfaces.
Key facts. Cited by 8 papers in the map (data through 7 Oct 2026). First posted on arXiv 15 Jul 2020.
Builds on
No reference list yet.
Built on by
Citing papers per year: 2021: 3; 2022: 1; 2023: 2; 2024: 1; 2025: 0; 2026: 1.
8 papers.
- 2021Differentiable Physics: A Position Piececited by 12
- 2021Storchastic: A Framework for General Stochastic Automatic Differentiationcited by 11
- 2023Smoothing Methods for Automatic Differentiation Across Conditional Branchescited by 6
- 2024Probabilistic Programming with Programmable Variational Inferencecited by 4
- 2023Automatic Functional Differentiation in JAXcited by 2
- 2021Coarsening Optimization for Differentiable Programmingcited by 0
- 2022Differentiable Quantum Programming with Unbounded Loopscited by 0
- 2026Differentiate the Evaluator, Not the Program: An Efficient Runtime Representation for Neuro-Symbolic Learningcited by 0
- 2026Differentiate the Evaluator, Not the Program: An Efficient Runtime Representation for Neuro-Symbolic Learning3 Jul 2026
- 2024Probabilistic Programming with Programmable Variational Inference22 Jun 2024
- 2023Automatic Functional Differentiation in JAX30 Nov 2023
- 2023Smoothing Methods for Automatic Differentiation Across Conditional Branches5 Oct 2023
- 2022Differentiable Quantum Programming with Unbounded Loops8 Nov 2022
- 2021Coarsening Optimization for Differentiable Programming5 Oct 2021
- 2021Differentiable Physics: A Position Piece14 Sep 2021
- 2021Storchastic: A Framework for General Stochastic Automatic Differentiation1 Apr 2021