A Simple Differentiable Programming Language

被引:26
|
作者
Abadi, Martin [1 ]
Plotkin, Gordon D. [1 ]
机构
[1] Google Res, Mountain View, CA 94043 USA
来源
PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL | 2020年 / 4卷 / POPL期
关键词
automatic differentiation; differentiable programming; CALCULUS;
D O I
10.1145/3371106
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Automatic differentiation plays a prominent role in scientific computing and in modern machine learning, often in the context of powerful programming systems. The relation of the various embodiments of automatic differentiation to the mathematical notion of derivative is not always entirely clear discrepancies can arise, sometimes inadvertently. In order to study automatic differentiation in such programming contexts, we define a small but expressive programming language that includes a construct for reverse-mode differentiation. We give operational and denotational semantics for this language. The operational semantics employs popular implementation techniques, while the denotational semantics employs notions of differentiation familiar from real analysis. We establish that these semantics coincide.
引用
收藏
页数:28
相关论文
共 50 条
  • [31] Neural-Integrated Meshfree (NIM) Method: A differentiable programming-based hybrid solver for computational mechanics
    Du, Honghui
    He, Qizhi
    COMPUTER METHODS IN APPLIED MECHANICS AND ENGINEERING, 2024, 427
  • [32] A safe-by-design programming language for wireless sensor networks
    Lopes, Luis
    Martins, Francisco
    JOURNAL OF SYSTEMS ARCHITECTURE, 2016, 63 : 16 - 32
  • [33] Programming language features, usage patterns, and the efficiency of generated adjoint code
    Hascoet, Laurent
    Utke, Jean
    OPTIMIZATION METHODS & SOFTWARE, 2016, 31 (05) : 885 - 903
  • [34] On Skorokhod Differentiable Measures
    Bogachev, V., I
    UKRAINIAN MATHEMATICAL JOURNAL, 2021, 72 (09) : 1335 - 1357
  • [35] Differentiable Owen Scrambling
    Doignies, Bastien
    Coeurjolly, David
    Bonneel, Nicolas
    Digne, Julie
    Iehl, Jean-claude
    Ostromoukhov, Victor
    ACM TRANSACTIONS ON GRAPHICS, 2024, 43 (06):
  • [36] Differentiable thermodynamic modeling
    Guan, Pin-Wen
    SCRIPTA MATERIALIA, 2022, 207
  • [37] Quantum Programming Language: A Systematic Review of Research Topic and Top Cited Languages
    Garhwal, Sunita
    Ghorani, Maryam
    Ahmad, Amir
    ARCHIVES OF COMPUTATIONAL METHODS IN ENGINEERING, 2021, 28 (02) : 289 - 310
  • [38] Teaching Type Systems Implementation with STELLA, an Extensible Statically Typed Programming Language
    Abounegm, Abdelrahman
    Kudasov, Nikolai
    Stepanov, Alexey
    ELECTRONIC PROCEEDINGS IN THEORETICAL COMPUTER SCIENCE, 2024, (405): : 1 - 19
  • [39] Differentiable Hybrid Traffic Simulation
    Son, Sanghyun
    Qiao, Yi-Ling
    Sewall, Jason
    Lin, Ming C.
    ACM TRANSACTIONS ON GRAPHICS, 2022, 41 (06):
  • [40] OpenDR: An Approximate Differentiable Renderer
    Loper, Matthew M.
    Black, Michael J.
    COMPUTER VISION - ECCV 2014, PT VII, 2014, 8695 : 154 - 169