Lune

POPL2021Top-tier venue

๐œ†โ‚›: computable semantics for differentiable programming with higher-order functions and datatypes

Benjamin Sherman, Jesse Michel, Michael Carbin

2021Year
11Citations
9Top-tier citations

Abstract

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, ๐œ† ๐‘† , that is the first to deliver a semantics for higher-order functions, higher-order derivatives, and Lipschitz but nondifferentiable functions. Together, these features enable ๐œ† ๐‘† to expose differentiable, higher-order functions for integration, optimization, and root-finding as first-class functions with automatically computed derivatives. ๐œ† ๐‘† 's semantics is computable, meaning that values can be computed to arbitrary precision, and we implement ๐œ† ๐‘† as an embedded language in Haskell.

We use ๐œ† ๐‘† 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.

Ask about this paper

Your agent reads all of it.

Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.

Questions to start from

Your agent calls

Luneget_paper_fulltext

Ask in Lune

Free to start. No credit card required.

lune papers fulltext 5f042250-49e8-4f8f-b249-cc9b624d5125

Cited by top-tier papers9

Ask how each one uses it

Builds on2

Related papers

Dusk over the sea between two cliffs drawn in fine vertical lines