Software Demo of the Program CRACK


Thomas Wolf
Department of Mathematics, Brock University
500 Glenridge Avenue, St.Catharines, Ontario, Canada L2S 3A1

Winfried Neun
Konrad Zuse Institute Berlin
Takustrasse 7
D-14195 Berlin-Dahlem, Germany

The program Crack is a computer algebra package written in REDUCE for the solution of over-determined systems of algebraic, ordinary or partial differential equations with at most polynomial non-linearity. Crack is available as part of the version 3.8 of the REDUCE system, dated April 2004. The development version can be downloaded from and an interactive demo can be done under

The program with all its modules and options is too large to demonstrate. Instead we will concentrate on features that are unique to this software.

The development of the program was driven by large applications, for example, linear systems of partial differential equations in 30 independent variables, or bi-linear algebraic systems with hundreds of unknowns and more than a thousand conditions. The key to solve such problems was to analyse how one would have made progress in hand computations, how to formalize the heuristics that one would have applied and how to program and fine tune them.

To give an example, a standard Gröbner basis computation is strongly guided by a total ordering of monomials. Any such algorithm would miss linear combinations of two equations (analogous to computing a S-polynomial) which do not aim at eliminating leading terms but at eliminating as many terms as possible, regardless whether the leading terms get worse with respect to the ordering or not. By being flexible with the ordering after one has achieved a sparse system one has a good chance to avoid expression swell when continuing with traditional Gröbner basis computations.

The demo intends to give a

If time permits, some details of the parallel implementation of REDUCE on cluster systems can be discussed, as:

If Internet access is available to a cluster system, some shorter demos can be presented.