substitute :: [(Algebraic, Rational)] -> ExprTree Algebraic -> ExprTree Rational
-- ^ substitutes a whole ExprTree according to a list of substitution rules
substitute sRule = fmap ( _substitute sRule)
substitute :: [(Algebraic, Rational)] -> ExprTree Algebraic -> ExprTree Rational
substitute sRule = fmap ( _substitute sRule)
substitute sRule = fmap ( _substitute sRule)