FORM (symbolic manipulation system)
|Developer(s)||Jos Vermaseren, et al.|
|Operating system||Linux, Mac OS X, Windows|
FORM is a symbolic manipulation system. It reads text files containing definitions of mathematical expressions as well as statements that tell it how to manipulate these expressions. Its original author is Jos Vermaseren of Nikhef, the Dutch institute for subatomic physics. It is widely used in the theoretical particle physics community, but it is not restricted to applications in this specific field.
- Definition of mathematical expressions containing various objects (symbols, functions, indices, ...) with elementary arithmetic operations
- Arbitrary long mathematical expressions (limited only by disk space)
- Multi-threaded execution, parallelized version for computer clusters
- Powerful pattern matching and replacing
- Fast trace calculation especially of gamma matrices
- Built-in mathematical functions
- Output into various formats (plain text, Fortran code, Mathematica code)
- External communication with other software programs
A text file containing
Symbol x,y; Local myexpr = (x+y)^3; Id y = x; Print; .end
would tell FORM to create an expression named myexpr, replace therein the symbol y by x, and print the result on the screen. The result would be given like
myexpr = 8*x^3;
FORM was started in 1984 as a successor to Schoonschip, an algebra engine developed by M. Veltman. It was initially coded in FORTRAN 77, but rewritten in C before the release of version 1.0 in 1989. Version 2.0 was released in 1991. The version 3.0 of FORM has been publicized in 2000. It has been made open-source on August 27, 2010 under the GPL license.
Applications in high-energy physics and other fields
- Mincer: A software package using FORM to compute massless propagator diagrams with up to three loops.
- FORM has been the essential tool to calculate the higher-order QCD beta function.
- The mathematical structure of multiple zeta values has been researched with dedicated FORM programs.
- The software package FormCalc which is widely used in the physics community to calculate Feynman diagrams is built on top of FORM.