By Paul Graham, EPCC and Software Sustainability Institute.
We have a new project working with Dr Kasper Peeters of Durham University and his software, Cadabra: a computer algebra system which can perform symbolic algebraic computations in classical and quantum field theory. In contrast to other software packages, Cadabra is written with this specific application area in mind, and addresses points where the more general purpose systems are unsuitable or require excessive amounts of additional programming to solve the problems at hand.
Cadabra has extensive functionality for tensor computer algebra, tensor polynomial simplification including multi-term symmetries, fermions and anti-commuting variables, Clifford algebras and Fierz transformations, implicit coordinate dependence, multiple index types and many more. The input format is a subset of TeX, and it supports both a command-line and a graphical interface.
The Cadabra software is already successful with a strong, contributory user base, and the work with the Software Sustainability Institute is geared to enable Cadabra to continue this success into the future. To help its long-term growth, Cadabra is looking to improve its maintainability and the ease by which developers can contribute to the functionality. It currently lacks the appropriate support infrastructure (such as suitable mailing lists, a forum, etc.) for the Cadabra community. The concern is that without some additional support the software will slowly decay, becoming harder to install on new systems and more difficult to interface with other tools.
The Institute have started work on assessing the install, build and development process for Cadabra. This will ensure that it is straightforward to contribute to Cadabra and get the development version working on different platforms. The Institute will provide advice and support towards the development of the OS X UI version.
Cadabra's open-source infrastructure will be reviewed to ensure that it has the appropriate community tools to support user activities. These will include a framework for supporting usage examples, tutorials, bug reporting and feature requests.
Dr Peeters has already engaged in garnering feedback from the user-base, and the proposed work will help tackle the concerns and requests raised by the community. In addition, the promotion of Cadabra by the Institute will raise awareness and help garner new users.
For more information about Cadabra, visit the website.