English
Related papers

Related papers: Using Rewrite Strategies for Efficient Functional …

200 papers

Automatic differentiation (AD) is a technique for computing the derivative of a function represented by a program. This technique is considered as the de-facto standard for computing the differentiation in many machine learning and…

Programming Languages · Computer Science 2022-12-21 Amir Shaikhha , Mathieu Huot , Shabnam Ghasemirad , Andrew Fitzgibbon , Simon Peyton Jones , Dimitrios Vytiniotis

We give a simple, direct and reusable logical relations technique for languages with term and type recursion and partially defined differentiable functions. We demonstrate it by working out the case of Automatic Differentiation (AD)…

Programming Languages · Computer Science 2025-02-12 Fernando Lucatelli Nunes , Matthijs Vákár

We show that Automatic Differentiation (AD) operators can be provided in a dynamic language without sacrificing numeric performance. To achieve this, general forward and reverse AD functions are added to a simple high-level dynamic…

Programming Languages · Computer Science 2016-11-11 Jeffrey Mark Siskind , Barak A. Pearlmutter

Where dual-numbers forward-mode automatic differentiation (AD) pairs each scalar value with its tangent derivative, dual-numbers /reverse-mode/ AD attempts to achieve reverse AD using a similarly simple idea: by pairing each scalar value…

Programming Languages · Computer Science 2022-05-24 Tom Smeding , Matthijs Vákár

The standard dual-numbers construction works well for forward-mode automatic differentiation (AD) and is attractive due to its simplicity; recently, it also has been adapted to reverse-mode AD, but practical performance, especially on array…

Programming Languages · Computer Science 2025-07-18 Tom Smeding , Mikołaj Konarski , Simon Peyton Jones , Andrew Fitzgibbon

Where dual-numbers forward-mode automatic differentiation (AD) pairs each scalar value with its tangent value, dual-numbers reverse-mode AD attempts to achieve reverse AD using a similarly simple idea: by pairing each scalar value with a…

Programming Languages · Computer Science 2025-03-04 Tom Smeding , Matthijs Vákár

Algorithmic Differentiation (AD) can be used to automate the generation of derivatives in arbitrary software projects. This will generate maintainable derivatives, that are always consistent with the computation of the software. If a domain…

Mathematical Software · Computer Science 2018-03-13 Max Sagebaum , Nicolas R. Gauger

Tools for algorithmic differentiation (AD) provide accurate derivatives of computer-implemented functions for use in, e. g., optimization and machine learning (ML). However, they often require the source code of the function to be available…

Mathematical Software · Computer Science 2022-12-29 Max Aehle , Johannes Blühdorn , Max Sagebaum , Nicolas R. Gauger

The application of operator overloading algorithmic differentiation (AD) to computer programs in order to compute the derivative is quite common. But, the replacement of the underlying computational floating point type with the specialized…

Mathematical Software · Computer Science 2026-02-18 Max Sagebaum , Nicolas R. Gauger

Algorithmic differentiation (AD) has become increasingly capable and straightforward to use. However, AD is inefficient when applied directly to solvers, a feature of most engineering analyses. We can leverage implicit differentiation to…

Optimization and Control · Mathematics 2023-06-28 Andrew Ning , Taylor McDonnell

This article provides an overview of some of the mathematical principles of Automatic Differentiation (AD). In particular, we summarise different descriptions of the Forward Mode of AD, like the matrix-vector product based approach, the…

Numerical Analysis · Mathematics 2016-07-07 Philipp H. W. Hoffmann

We present a technique for applying (forward and) reverse-mode automatic differentiation (AD) on a non-recursive second-order functional array language that supports nested parallelism and is primarily aimed at efficient GPU execution. The…

Programming Languages · Computer Science 2022-02-22 Robert Schenck , Ola Rønning , Troels Henriksen , Cosmin E. Oancea

Automatic differentiation (AD) in reverse mode (RAD) is a central component of deep learning and other uses of large-scale optimization. Commonly used RAD algorithms such as backpropagation, however, are complex and stateful, hindering deep…

Programming Languages · Computer Science 2018-10-03 Conal Elliott

We apply program verification technology to the problem of specifying and verifying automatic differentiation (AD) algorithms. We focus on define-by-run, a style of AD where the program that must be differentiated is executed and monitored…

Logic in Computer Science · Computer Science 2024-02-14 Paulo Emílio de Vilhena , François Pottier

We present semantic correctness proofs of automatic differentiation (AD). We consider a forward-mode AD method on a higher-order language with algebraic data types and we characterise it as the unique structure-preserving macro given a…

Programming Languages · Computer Science 2026-05-07 Mathieu Huot , Sam Staton , Matthijs Vákár

Automatic differentiation, also known as backpropagation, AD, autodiff, or algorithmic differentiation, is a popular technique for computing derivatives of computer programs accurately and efficiently. Sometimes, however, the derivatives…

Numerical Analysis · Mathematics 2023-05-15 Jan Hückelheim , Harshitha Menon , William Moses , Bruce Christianson , Paul Hovland , Laurent Hascoët

Derivatives, mostly in the form of gradients and Hessians, are ubiquitous in machine learning. Automatic differentiation (AD), also called algorithmic differentiation or simply "autodiff", is a family of techniques similar to but more…

Symbolic Computation · Computer Science 2018-07-18 Atilim Gunes Baydin , Barak A. Pearlmutter , Alexey Andreyevich Radul , Jeffrey Mark Siskind

Machine learning and neural network models in particular have been improving the state of the art performance on many artificial intelligence related tasks. Neural network models are typically implemented using frameworks that perform…

Machine Learning · Computer Science 2021-10-18 Davan Harrison

Alternating direction methods of multipliers (ADMMs) are popular approaches to handle large scale semidefinite programs that gained attention during the past decade. In this paper, we focus on solving doubly nonnegative programs (DNN),…

Optimization and Control · Mathematics 2020-09-15 Martina Cerulli , Marianna De Santis , Elisabeth Gaar , Angelika Wiegele

Term rewriting plays a crucial role in software verification and compiler optimization. With dozens of highly parameterizable techniques developed to prove various system properties, automatic term rewriting tools work in an extensive…

Logic in Computer Science · Computer Science 2025-08-01 Liao Zhang , Fabian Mitterwallner , Jan Jakubuv , Cezary Kaliszyk
‹ Prev 1 2 3 10 Next ›