P5-math-symbolicx-nosimplification

Jul 20, 2023

Turn off Math::Symbolic simplification

This module offers facilities to turn off the builtin MathSymbolic simplification routines and replace them with routines that just clone the objects. You may want to do this in cases where the simplification routines fail to simplify the MathSymbolic trees and waste a lot of CPU time. For example, calculating the first order Taylor polynomial of a moderately complex test function was sped up by 100 on my machine.

A word of caution, however If you turn off the simplification routines, some procedures may produce very, very large trees. One such procedure would be the consecutive application of many derivatives to a product without intermediate simplification. This would yield exponential growth of nodes. And may, in fact, still do if you keep the simplification heuristics turned on because most expressions cannot be simplified significantly.



Checkout these related ports:
  • Zn_poly - C library for polynomial arithmetic
  • Zimpl - Language to translate the LP models into .lp or .mps
  • Zegrapher - Software for plotting mathematical objects
  • Zarray - Dynamically typed N-D expression system based on xtensor
  • Z3 - Z3 Theorem Prover
  • Yices - SMT solver
  • Yacas - Yet Another Computer Algebra System
  • Xtensor - Multi-dimensional arrays with broadcasting and lazy computing
  • Xtensor-python - Python bindings for xtensor
  • Xtensor-io - Xtensor plugin to read/write images, audio files, numpy npz and HDF5
  • Xtensor-blas - BLAS extension to xtensor
  • Xspread - Spreadsheet program for X and terminals
  • Xppaut - Graphical tool for solving differential equations, etc
  • Xplot - X11 plotting package
  • Xlife++ - XLiFE++ eXtended Library of Finite Elements in C++