#physics #algebra #manipulation #symbolic

bin+lib reform

A symbolic manipulation toolkit which aims to handle expressions with billions of terms, taking up terabytes of diskspace

1 unstable release

Uses old Rust 2015

0.1.0 Oct 1, 2018

#1531 in Math

MIT and LGPL-3.0+

615KB
15K SLoC

reFORM

reFORM is a symbolic manipulation toolkit which aims to handle expressions with billions of terms, taking up terabytes of diskspace. In the future, it may be an alternative to FORM.

At the moment reFORM is in early development and cannot handle extreme workloads yet. However, there are many components that work. Specifically, the C and Python API is fully functional.

For an overview of all the reFORM features, see the manual.

Quick example

expr F = f(x,2,3,y);
apply {
    id f(?a,x?{>2},?b) = f(?b,?a);
    print;
}

This program creates an expression F and applies an id statement to its term. This statement matches a pattern on the left hand side and modifies it. ?a and ?b matches any number of arguments, and x?{>2} will match a number larger than two.

The ouput is:

f(y,x,2)

Dependencies

~33MB
~699K SLoC