evaluate :: [(Char, Double)] -> Expr -> Double
  evaluate substitution (Mult  a b)  = (evaluate substitution a) * (evaluate substitution b)
evaluate :: [(Char, Double)] -> Expr -> Double
evaluate substitution (Mult  a b)  = (evaluate substitution a) * (evaluate substitution b)
evaluate substitution (Mult  a b)  = (evaluate substitution a) * (evaluate substitution b)