Skip to main content
Go to the home page of the European Commission (opens in new window)
English English
CORDIS - EU research results
CORDIS

Semantically correct automatic differentiation

Project description

Proving that automatic differentiation techniques faithfully represent 'standard' differentiation

Finding derivatives, or rates of change of one variable with respect to another, is relevant to myriad physical processes and scenarios. Taking advantage of these mathematical descriptions and implementing them in computer algorithms forms the foundations of many recent advances in machine learning and the use of computers to perform complex statistical analyses. Automatic differentiation techniques have been developed to accomplish this, but proving their correctness is not possible with traditional calculus and differential geometry. The EU-funded SemanDiff project will develop mathematical transformations that will lead to precise correctness proofs for automatic differentiation algorithms so we can all sleep easy at night using them.

Objective

Many recent advances in machine learning and computational statistics rely on algorithms that calculate derivatives. This use of derivatives has motivated the creation of domain specific modelling languages in which each program can be differentiated automatically, by the compiler. This technique is known as automatic differentiation (AD). AD is typically implemented through source-code-transformations, either directly or indirectly via operator overloading. These transformations become intricate in languages with expressive language features like algebraic data types and higher-order functions. Meanwhile, traditional calculus and differential geometry do not suffice to prove their correctness or even give them meaning, as ordinary differential geometry cannot support higher-order functions. Indeed, such formal correctness proofs have never been published.

This project will use the mathematical foundations of diffeological spaces, a conservative extension of traditional differential geometry to higher-order types, to give precisely such correctness proofs. In particular, it will give appropriate source-code transformations for both the forward mode and reverse mode techniques of AD on a language with specified semantics in diffeological spaces. Next, it will prove that these source-code transformations correctly implement the canonical semantic notion of differentiation, as given by the diffeological spaces semantics. It will perform this analysis for a higher-order language with tuples and variant types. These formal descriptions and correctness proofs of AD for expressive languages will be accompanied by closely matching implementations, built on top of the Accelerate framework for purely functional GPU programming.

Fields of science (EuroSciVoc)

CORDIS classifies projects with EuroSciVoc, a multilingual taxonomy of fields of science, through a semi-automatic process based on NLP techniques. See: The European Science Vocabulary.

You need to log in or register to use this function

Keywords

Project’s keywords as indicated by the project coordinator. Not to be confused with the EuroSciVoc taxonomy (Fields of science)

Programme(s)

Multi-annual funding programmes that define the EU’s priorities for research and innovation.

Topic(s)

Calls for proposals are divided into topics. A topic defines a specific subject or area for which applicants can submit proposals. The description of a topic comprises its specific scope and the expected impact of the funded project.

Funding Scheme

Funding scheme (or “Type of Action”) inside a programme with common features. It specifies: the scope of what is funded; the reimbursement rate; specific evaluation criteria to qualify for funding; and the use of simplified forms of costs like lump sums.

MSCA-IF - Marie Skłodowska-Curie Individual Fellowships (IF)

See all projects funded under this funding scheme

Call for proposal

Procedure for inviting applicants to submit project proposals, with the aim of receiving EU funding.

(opens in new window) H2020-MSCA-IF-2019

See all projects funded under this call

Coordinator

UNIVERSITEIT UTRECHT
Net EU contribution

Net EU financial contribution. The sum of money that the participant receives, deducted by the EU contribution to its linked third party. It considers the distribution of the EU financial contribution between direct beneficiaries of the project and other types of participants, like third-party participants.

€ 187 572,48
Address
HEIDELBERGLAAN 8
3584 CS Utrecht
Netherlands

See on map

Activity type
Higher or Secondary Education Establishments
Links
Total cost

The total costs incurred by this organisation to participate in the project, including direct and indirect costs. This amount is a subset of the overall project budget.

€ 187 572,48
My booklet 0 0