Distributions for Compositionally Differentiating Parametric Discontinuities
Computations in physical simulation, computer graphics, and probabilistic inference often require the differentiation of discontinuous processes due to contact, occlusion, and the switching of a controller on/off. Popular differentiable programming languages, such as PyTorch and JAX, do not support the differentiation of these processes. We introduce a differentiable programming language, Potto, that is the first, first-order language to support differentiation of parametric discontinuities (conditionals containing one or more real-valued variables of integration and parameters in the condition). We present a denotational semantics for programs and for program derivatives and show the two accord. From this, we describe the implementation of Potto, which enables separate compilation of programs. Our implementation of Potto overcomes previous compile-time bottlenecks. We showcase the features of Potto by implementing a prototype differentiable renderer with separately compiled shaders.
Thu 24 OctDisplayed time zone: Pacific Time (US & Canada) change
16:00 - 17:40 | Probabilistic Programming and Analysis 1OOPSLA 2024 at San Gabriel Chair(s): Di Wang Peking University | ||
16:00 20mTalk | A modal type-theory of expected cost in higher-order probabilistic programsRemote OOPSLA 2024 Vineet Rajani University of Kent, Gilles Barthe MPI-SP; IMDEA Software Institute, Deepak Garg MPI-SWS DOI | ||
16:20 20mTalk | Distributions for Compositionally Differentiating Parametric Discontinuities OOPSLA 2024 Jesse Michel Massachusetts Institute of Technology, Kevin Mu University of Washington, Xuanda Yang University of California San Diego, Sai Praveen Bangaru MIT, Elias Rojas Collins MIT, Gilbert Bernstein University of Washington, Seattle, Jonathan Ragan-Kelley Massachusetts Institute of Technology, Michael Carbin Massachusetts Institute of Technology, Tzu-Mao Li Massachusetts Institute of Technology; University of California at San Diego DOI | ||
16:40 20mTalk | Exact Bayesian Inference for Loopy Probabilistic Programs Using Generating Functions OOPSLA 2024 Lutz Klinkenberg RWTH Aachen University, Christian Blumenthal RWTH Aachen University, Mingshuai Chen Zhejiang University, Darion Haase RWTH Aachen University, Joost-Pieter Katoen RWTH Aachen University DOI | ||
17:00 20mTalk | Hopping Proofs of Expectation-Based Properties: Applications to Skiplists and Security Proofs OOPSLA 2024 Martin Avanzini Inria, Gilles Barthe MPI-SP; IMDEA Software Institute, Benjamin Gregoire INRIA, Georg Moser University of Innsbruck, Gabriele Vanoni IRIF, Université Paris Cité DOI | ||
17:20 20mTalk | Learning Abstraction Selection for Bayesian Program Analysis OOPSLA 2024 DOI Pre-print |