May 26, 2018
User defined simplification routines
This module is an extension to the MathSymbolic module. A basic familiarity with that module is required.
MathSymbolic offers some builtin simplification routines. These, however, are not capable of complex simplifications. This extension offers facilities to override the default simplification routines through means of subclassing this module. A subclass of this module is required to define a simplify object method that implements a simplification of MathSymbolic trees.
There are two class methods to inherit register and unregister. Calling the register method on your subclass registers your class as providing the simplify method that is invoked whenever simplify is called on a MathSymbolicOperator object.
Calling unregister on your subclass restores whichever simplification routines where in place before.