Automatic Differentiation via Effects and Handlers: An Implementation in Frank
Jesse Sigal

TL;DR
This paper demonstrates how automatic differentiation can be implemented using effects and handlers in the Frank programming language, highlighting the dynamic program creation during evaluation.
Contribution
It introduces a novel implementation of AD in Frank leveraging effects and handlers, emphasizing the dynamic aspects of program evaluation.
Findings
AD can be effectively implemented with effects and handlers in Frank.
The implementation supports dynamic creation of programs during evaluation.
The approach provides insights into the operational semantics of AD in Frank.
Abstract
Automatic differentiation (AD) is an important family of algorithms which enables derivative based optimization. We show that AD can be simply implemented with effects and handlers by doing so in the Frank language. By considering how our implementation behaves in Frank's operational semantics, we show how our code performs the dynamic creation of programs during evaluation.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsLogic, programming, and type systems · Formal Methods in Verification · Logic, Reasoning, and Knowledge
