original Scratch symbolic computation (CAS), based on pattern matching. may have crazy bug! !!! implicit multiplication is invalid! use 2*a instead of 2a !!! Now, polynomial GCD is available! so fraction reduce will return simplified result! I use Kronecker GCD for more than one vars, Euclid division for single var, but it still have some bugs, such as simplify(a*x/a*y). Currently supports the simplify and normalize operation. No high precision. Currently supported functions: abs, ln, sqrt. Uses parallel lists to build expression trees. Warning! Do not attempt to simplify overly long expressions; this may cause crashes! [o] simplify [o] TeX output [o] lineIO [o] gcd [o] trig funcs [x] high precision calculation Usage examples: simplify(expression) normalize(expression) ``` 1+1 simplify(sqrt(2-sqrt(3))) normalize((x^3+y^3+z^3-3*x*y*z)/(x+y+z)) simplify((x+y)*(x-y)) simplify((1+x)^5+(1-x)^5) normalize(sqrt(sqrt(abs(x)))) simplify(x+y+(x+y)+(x-y)+x/y) simplify(1/x+1-1/x) texpand(sin(x+y)) seq(f(x),x,range(2,7)) ``` Formula rendering is based on STeX. You can drag the resulting expression around after the computation is complete. -------- 纯原版Scratch符号计算,基于模式匹配。 目前支持simplify操作。无高精度。支持gcd。目前支持的函数:abs,ln,sqrt。 利用平行列表创建表达式树。 警告!不要尝试化简过于长的表达式,可能导致崩溃! 公式渲染基于STeX。您可以在计算完成后四处拖动结果表达式。
use Rex's sfe injector(it creates 'null' in list and crushed Scratch editor!) you can use all parts of this project. 标记作者就可以