A lot of our simplifications create expressions and then rely on the function evaluator to simplify them. This creates awkward loops and dependencies in our simplifier system, and in principle it would be nice if the individual simplifications could handle simple cases for us.
So I propose a very simple evaluation engine capable ONLY of doing arithmetic on real-numbered constants. Incredibly simple engine by design, that can be invoked during simplification phases to deal with easy cases.
A lot of our simplifications create expressions and then rely on the function evaluator to simplify them. This creates awkward loops and dependencies in our simplifier system, and in principle it would be nice if the individual simplifications could handle simple cases for us.
So I propose a very simple evaluation engine capable ONLY of doing arithmetic on real-numbered constants. Incredibly simple engine by design, that can be invoked during simplification phases to deal with easy cases.