a field-theory motivated approach to computer algebra



All questions about using Cadabra can be posted on the Cadabra Q&A forum. The forum accepts LaTeX formulas and is fully searchable. If you feel your question is not ready for public consumption, please email me at

Reference guide

This reference guide is the place to go for a detailed specification of how Cadabra works. If you prefer to learn by example, you are better off with the tutorials. This guide is a translation of the one for 1.x, and still work-in-progress.

  1. The input format
    1. Basics about the input format
    2. Printing expressions
    3. Object properties and declaration
    4. Indices, dummy indices and automatic index renaming
    5. Exponents, indices and labels
    6. Spacing and brackets
    7. Implicit versus explicit indices
    8. Index brackets
  2. Mathematical properties
    1. Derivatives and implicit dependence on coordinates
    2. Accents
    3. Symbol ordering and commutation properties
    4. Anti-commuting objects and derivatives
  3. Manipulating expressions
    1. Selecting parts of expressions
    2. Elementary operations on expressions
    3. Using multiple files and notebooks
    4. Default simplification
    5. Patterns, conditionals and regular expressions
  4. Writing your own packages
    1. Programming in Cadabra
    2. Startup and program options, environment variables

Old reference guide

An extensive reference guide of version 1.x of the program, with a description of the input language, the algorithms and technical details on how to extend it by adding new C++ modules, is available as

Kasper Peeters
preprint AEI-2006-038
last version: November 2nd, 2012

Go here if the new 2.x reference manual above does not yet have the information you need.

Copyright © 2001-2019 Kasper Peeters