Introduction

The concept behind Symbolic Tools is to augment the numeric and graphical capabilities of the GAUSS Mathematical & Statistical System (TM) and GAUSS Engine (TM) with additional types of mathematical functionality based on symbolic computations. These  include:

 

Symbolic Algebra. This includes analytic differentiation and integration, automatic differentiation, as well as simplification.

Linear Algebra. This capability allows for the exact (as opposed to the numeric) evaluation of matrix forms, including inverses, determinants and eigenvalues.

Language Extension. This permits access to the full functionality of Maple, including all the mathematical functions and matrix forms,  from within GAUSS, thus effectively extending the GAUSS language.

Precision. Numerical evaluation of functions can occur at any specified level of accuracy.

 

The computational work is carried out by the Maple kernel using the Open Maple API. Maple is a symbolic mathematics package developed at the University of Waterloo.  Symbolic Tools provides for an interface between GAUSS and the Maple Kernel.  This interface permits code to be evaluated symbolically in Maple, and the results returned to GAUSS, or to create aGAUSS proc based on Maple’s symbolic results.

 

One of the main uses of Symbolic Tools is to enable GAUSS to undertake Automatic Differentiation. Optimization packages, such as Aptech’s Maximum Likelihood, Constrained Maximum Likelihood, Optimization,

 

 

 

and Nonlinear Equations GAUSS Applications, can use procedures that return the gradient and/or Hessian, instead of doing forward differencing. Thus, as a trivial example, if the function being optimized were Ln(b), then the analytic gradient would be 1/b, and the analytic Hessian -1/b.  Symbolic Tools can create compiled  procs for the analytic gradient or Hessian of a likelihood, on the fly. The time savings are impressive. Using Monte Carlo simulation of a Tobit model with 2000 observations and 11 parameters, the AD gradient took 10% of the time required for forward differences using  gradp – ie. approximately a 10 fold speed improvement. Similar results were also obtained for the Hessian, with the additional advantage that the AD methodology generated much more precise estimates of the gradients and Hessian.

 

Examples:

Language extension

Analytical differentiation

Analytical integration

Automatic differentiation

Symbolic arithmetic

Variable precision

 

Requirements

Operating System:  Windows

 

GAUSS: GAUSS Mathematical & Statistical System v4.0+ for Windows or GAUSS Engine v4.0+ for Windows

 

Maple: Maple 9 or higher