DiffSharp 0.8.4-beta

Suggested Alternatives


This is a prerelease version of DiffSharp.
dotnet add package DiffSharp --version 0.8.4-beta
NuGet\Install-Package DiffSharp -Version 0.8.4-beta
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="DiffSharp" Version="0.8.4-beta" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add DiffSharp --version 0.8.4-beta
#r "nuget: DiffSharp, 0.8.4-beta"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install DiffSharp as a Cake Addin
#addin nuget:?package=DiffSharp&version=0.8.4-beta&prerelease

// Install DiffSharp as a Cake Tool
#tool nuget:?package=DiffSharp&version=0.8.4-beta&prerelease

DiffSharp is an automatic differentiation (AD) library.

AD allows exact and efficient calculation of derivatives, by systematically invoking the chain rule of calculus at the elementary operator level during program execution. AD is different from numerical differentiation, which is prone to truncation and round-off errors, and symbolic differentiation, which is affected by expression swell and cannot fully handle algorithmic control flow.

Using the DiffSharp library, derivative calculations (gradients, Hessians, Jacobians, directional derivatives, and matrix-free Hessian- and Jacobian-vector products) can be incorporated with minimal change into existing algorithms. Diffsharp supports nested forward and reverse AD up to any level, meaning that you can compute exact higher-order derivatives or differentiate functions that are internally making use of differentiation. Please see the API Overview page for a list of available operations.

The library is under active development by Atılım Güneş Baydin and Barak A. Pearlmutter mainly for research applications in machine learning, as part of their work at the Brain and Computation Lab, Hamilton Institute, National University of Ireland Maynooth.

DiffSharp is implemented in the F# language and can be used from C# and the other languages running on .NET Core, Mono, or the .NET Framework; targeting the 64 bit platform. It is tested on Linux and Windows. We are working on interfaces/ports to other languages.

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on DiffSharp:

Package Downloads

Hype is a proof-of-concept deep learning library, where you can perform optimization on compositional machine learning systems of many components, even when such components themselves internally perform optimization. This is enabled by nested automatic differentiation (AD) giving you access to the automatic exact derivative of any floating-point value in your code with respect to any other. Underlying computations are run by a BLAS/LAPACK backend (OpenBLAS by default).

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
0.8.4-beta 1,654 8/24/2019
0.8.3-beta 565 7/4/2019
0.8.2-beta 542 6/25/2019
0.8.1-beta 526 6/20/2019
0.8.0-beta 553 6/11/2019
0.7.7 4,859 12/25/2015
0.7.6 1,462 12/15/2015
0.7.5 1,547 12/6/2015
0.7.4 1,491 10/13/2015
0.7.3 1,567 10/6/2015
0.7.2 1,602 10/4/2015
0.7.1 1,421 10/4/2015
0.7.0 1,327 9/29/2015
0.6.3 1,812 7/18/2015
0.6.2 1,218 6/6/2015
0.6.1 1,243 6/2/2015
0.6.0 1,437 4/26/2015
0.5.10 1,256 3/27/2015
0.5.9 1,470 2/26/2015
0.5.8 1,628 2/23/2015
0.5.7 1,401 2/17/2015
0.5.6 1,417 2/13/2015
0.5.5 1,425 12/15/2014
0.5.4 1,477 11/23/2014
0.5.3 2,123 11/7/2014
0.5.2 1,949 11/4/2014
0.5.1 1,202 10/27/2014
0.5.0 1,249 10/2/2014

Please visit


for the latest release notes.