## What is Ricci Calculus?

**Ricci calculus**, sometimes called *the calculus of congruences of curves* [1], is the study of tensors and tensor fields. The modern name for Ricci calculus is tensor calculus, although the notation used within tensor calculus is often referred to as **Ricci notation**.

## Ricci Notation

Ricci calculus uses complex language compared to the “usual” matrix expressions, but it has several advantages including: better precision, and the ability to distinguish between linear maps and bilinear maps through the use of two types of indices. These indices determine behavior of encoded objects under basis changes:

- Upper (contravariant),
- Lower (covariant).

Under Ricci notation:

**Scalars**have no index,**Vectors**have one upper index,**Covectors**have one lower index,**Linear maps**have one upper and one lower index,**Bilinear forms**on a vector space have two lower indices,**Bilinear maps**on the dual space have two upper indices.

For example, the bilinear map A evaluated at vectors **x** and **y** is written as

*x*^{ i} *A*_{ ij }*y *^{ j}.

Indices may be *free*, appearing as lower or upper indices, or *bound*, appearing as lower and also as upper indices in the expression. For example:

- δ
^{ ij}*x*_{ i}has one free upper index(encoding a vector),*j* - δ
_{ ij }*x*^{ i }has one free lower index*j*(encoding a covector).

Where δ is Ricci notation for a transposition.

## Use of Ricci Notation in Machine Learning

Higher order derivatives are typically evaluated with Einstein notation.

However, machine learning approaches based on Ricci notation can find higher order derivatives much faster (a few orders of magnitude faster) than automatic differentiation frameworks based on Einstein notation [5, 6]. That said, there have been some developments to improve the speed of Einstein-notation based algorithms [7].

## History of Ricci Calculus

Ricci calculus was named after the Italian mathematician Gregorio Ricci-Curbastro whose 1901 paper on Absolute differential calculus (written with the assistance of his pupil, Tullio Levi-Civita), became the foundation of tensor analysis [2]. Absolute differential calculus allowed Albert Einstein to incorporate gravity into his general theory of relativity [3] and was later named the “Ricci” calculus in Ricci-Curbastro’s honor. However, it was Einstein and his long time friend Marcel Grossman would give the calculus the moniker that would eventually stick: tensor calculus [4].

## References

[1] Zund J. (1994) The Ricci Calculus. In: Foundations of Differential Geodesy. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-79187-1_2

[2] G. Ricci, T. Levi-Civita, “Méthodes de calcul différentiel absolu et leurs applications” Math. Ann. , 54 (1901) pp. 125–201

[3] Toscano, F. (2017). An Italian calculus for general relativity. Lettera Matematica, 5, 25-31.

[4] Goodstein, J. (2018). Einstein’s Italian Mathematicians: Ricci, Levi-Civita, and the Birth of General Relativity. American Mathematical Society.

[5] Laue, S.; Mitterreiter, M.; and Giesen, J. 2018. Computing higher order derivatives of matrix and tensor expressions. In Advances in Neural Information Processing Systems (NeurIPS).

[6] Soeren, J. et al. (2018). “Computing Higher Order Derivatives of Matrix and Tensor Expressions.” In Advances in Neural Information Processing Systems 31, edited by Bengio, S. et al. 2750–59. Curran Associates, Inc.

[7]. Lane, S. et al. A Simple and Efficient Tensor Calculus. The Thirty-Fourth AAAI Conference on Artificial Intelligence (AAAI-20)