Possible Duplicate:
Symbolic simplification in Haskell (using recursion?)
我心中所想的简化是:
0*e = e*0 = 0
1*e = e*1 = 0+e = e+0 = e-0 = e
并简化常量子表达式,例如 Plus(Const 1) (Const 2)
将变为 Const 3
。我不希望变量(或变量和常量)被合并: Var "st"
是不同于 Var "s"
的变量。
例如,simplify(Plus (Var "x") (Const 0))= Var "x"
的中文翻译为:简化(加(变量“x”)(常量0))= 变量“x”
。