FORM (symbolic manipulation system)

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
FORM
DevelopersJos Vermaseren, et al.
Initial release1989
Stable release
4.3.1
Repositorygithub.com/vermaseren/form
Written inC
Engine
    Lua error in Module:EditAtWikidata at line 29: attempt to index field 'wikibase' (a nil value).
    Operating systemLinux, Mac OS X, Windows
    TypeMathematical software
    LicenseGPLv3
    Websitewww.nikhef.nl/~form/

    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]

    Features

    [edit | edit source]
    • 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 | edit source]

    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 | edit source]

    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 | edit source]
    • 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 | edit source]
    1. ^ [1] Some citations of FORM in the INSPIRE-HEP Literature Database
    2. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    [edit | edit source]

    Lua error in Module:Authority_control at line 153: attempt to index field 'wikibase' (a nil value).