Math-Symbolic-Custom-Simplification version 1.01
================================================

This module is an extension to the Math::Symbolic module. A basic
familiarity with that module is required.

Math::Symbolic 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 C<simplify>
object method that implements a simplification of Math::Symbolic trees.

From the synopsis:

  package Math::Symbolic::Custom::MySimplification;
  
  use base 'Math::Symbolic::Custom::Simplification';
  
  sub simplify {
    my $tree = shift;
    # ... simplify tree ...
    return $simplified;
  }
  
  1;
  
  # Then, in another portion of your code.
  
  Math::Symbolic::Custom::MySimplification->register();
  
  # Code that uses MySimplification:
  # $tree->simplify() invokes
  # Math::Symbolic::Custom::MySimplification::simplify($tree).
  
  Math::Symbolic::Custom::MySimplification->unregister();
  
  # Code that uses the default simplification routines or whichever
  # simplification routines where registered before.

INSTALLATION

To install this module type the following:

   perl Makefile.PL
   make
   make test
   make install

DEPENDENCIES

This module requires these other modules and libraries:

  Math::Symbolic (version 0.150 and higher)
  Test::More

COPYRIGHT AND LICENCE

Copyright (C) 2005 by Steffen Müller

This library is free software; you can redistribute it and/or modify
it under the same terms as Perl itself, either Perl version 5.6.1,
at your option, any later version of Perl 5 you may have available.

