Skip to main content.

Invar: Computer algebra for the Riemann tensor

Authors: José M. Martín-García, David Yllanes, Renato Portugal and Leon Manssur, © 2006-2020 under GPL.

Articles: José M. Martín-García, Renato Portugal and Leon Manssur, Comp. Phys. Commun. 177 (2007) 640-648, arXiv:0704.1756 [cs.SC]
                José M. Martín-García, David Yllanes and Renato Portugal, Comp. Phys. Commun. 179 (2008) 586-590, arXiv:0802.1274 [cs.SC]


Invar is a package for generic manipulation of polynomials of the Riemann tensor and its derivatives. There is no known efficient algorithm to handle the cyclic and Bianchi symmetries of Riemann, or those equations coming from commutations of derivatives and dimensionally dependent identites. Therefore Invar reads a database of solutions previously constructed using some (necessarily hard and slow) procedure. Currently the database contains algebraic invariants (scalars) up to Riemann^7 and differential invariants up to 12 metric derivatives. It also contains dual invariants up to Riemann^5 * epsilon in the algebraic case and up to 8 metric derivatives in the differential case.

The package and its algorithms are documented in the articles above, respectively entitled "The Invar tensor package" (version 1, algebraic invariants only) and "The Invar tensor package: differential invariants of Riemann" (version 2, algebraic and differential invariants).

Invar runs on top of the package xTensor for tensor computations in Mathematica. There is a twin version Invar for Maple, developed by Renato Portugal, running on his tensor system Canon.

Download and installation

Current version: 2.0.5 (as of 15 February 2014). It is recommended to download the main xAct bundle, but you can also download the different files separately:

For installation hints see the Readme file.

Previous versions: