FORM (symbolic manipulation system)

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.[1]

FORM
Developer(s)Jos Vermaseren, et al.
Initial release1989
Stable release
4.2
Written inC
Operating systemLinux, Mac OS X, Windows
TypeMathematical software
LicenseGPLv3
Websitewww.nikhef.nl/~form/

Features

edit
  • 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

Example usage

edit

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;

History

edit

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

edit
  • 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.[2]
  • The software package FormCalc which is widely used in the physics community to calculate Feynman diagrams is built on top of FORM.

References

edit
  1. ^ [1] Some citations of FORM in the INSPIRE-HEP Literature Database
  2. ^ Blümlein, J.; Broadhurst, D.J.; Vermaseren, J.A.M. (2010). "The Multiple Zeta Value data mine". Computer Physics Communications. 181 (3): 582–625. arXiv:0907.2557. Bibcode:2010CoPhC.181..582B. doi:10.1016/j.cpc.2009.11.007.
edit