Details

simplify30.4m

Calls

13799 calls:

Slowest
2.9s
(* (* (* (* (* (* (* 3 x1) x1) (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (* (cbrt (sqrt (+ 1 (* x1 x1)))) (cbrt (sqrt (+ 1 (* x1 x1))))))) (* (* (* 3 x1) x1) (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (* (cbrt (sqrt (+ 1 (* x1 x1)))) (cbrt (sqrt (+ 1 (* x1 x1)))))))) (* (* (* 3 x1) x1) (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (* (cbrt (sqrt (+ 1 (* x1 x1)))) (cbrt (sqrt (+ 1 (* x1 x1)))))))) (* (* (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (cbrt (sqrt (+ 1 (* x1 x1))))) (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (cbrt (sqrt (+ 1 (* x1 x1)))))) (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (cbrt (sqrt (+ 1 (* x1 x1))))))) (* (* (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (sqrt (+ 1 (* x1 x1)))) (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (sqrt (+ 1 (* x1 x1))))) (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (sqrt (+ 1 (* x1 x1))))))
2.8s
(* (* (* (* (* (* (* 3 x1) x1) (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (* (cbrt (sqrt (+ 1 (* x1 x1)))) (cbrt (sqrt (+ 1 (* x1 x1))))))) (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (cbrt (sqrt (+ 1 (* x1 x1)))))) (* (* (* (* 3 x1) x1) (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (* (cbrt (sqrt (+ 1 (* x1 x1)))) (cbrt (sqrt (+ 1 (* x1 x1))))))) (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (cbrt (sqrt (+ 1 (* x1 x1))))))) (* (* (* (* 3 x1) x1) (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (* (cbrt (sqrt (+ 1 (* x1 x1)))) (cbrt (sqrt (+ 1 (* x1 x1))))))) (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (cbrt (sqrt (+ 1 (* x1 x1))))))) (/ (- (* x2 2) (- x1 (* (* 3 x1) x1))) (* (* (sqrt (+ 1 (* x1 x1))) (sqrt (+ 1 (* x1 x1)))) (sqrt (+ 1 (* x1 x1))))))
2.6s
(* (* (* (* (* (* (* 3 x1) x1) (* (* 3 x1) x1)) (* (* 3 x1) x1)) (* (* (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (* (cbrt (sqrt (+ 1 (* x1 x1)))) (cbrt (sqrt (+ 1 (* x1 x1)))))) (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (* (cbrt (sqrt (+ 1 (* x1 x1)))) (cbrt (sqrt (+ 1 (* x1 x1))))))) (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (* (cbrt (sqrt (+ 1 (* x1 x1)))) (cbrt (sqrt (+ 1 (* x1 x1)))))))) (* (* (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (cbrt (sqrt (+ 1 (* x1 x1))))) (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (cbrt (sqrt (+ 1 (* x1 x1)))))) (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (cbrt (sqrt (+ 1 (* x1 x1))))))) (* (* (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (sqrt (+ 1 (* x1 x1)))) (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (sqrt (+ 1 (* x1 x1))))) (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (sqrt (+ 1 (* x1 x1))))))
2.0s
(* (* (* (* (* (* (* 3 x1) x1) (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (* (cbrt (sqrt (+ 1 (* x1 x1)))) (cbrt (sqrt (+ 1 (* x1 x1))))))) (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (cbrt (sqrt (+ 1 (* x1 x1)))))) (* (* (* (* 3 x1) x1) (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (* (cbrt (sqrt (+ 1 (* x1 x1)))) (cbrt (sqrt (+ 1 (* x1 x1))))))) (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (cbrt (sqrt (+ 1 (* x1 x1))))))) (* (* (* (* 3 x1) x1) (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (* (cbrt (sqrt (+ 1 (* x1 x1)))) (cbrt (sqrt (+ 1 (* x1 x1))))))) (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (cbrt (sqrt (+ 1 (* x1 x1))))))) (* (* (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (sqrt (+ 1 (* x1 x1)))) (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (sqrt (+ 1 (* x1 x1))))) (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (sqrt (+ 1 (* x1 x1))))))
2.0s
(* (* (* (* (* (* (* 3 x1) (* 3 x1)) (* 3 x1)) (* (* x1 x1) x1)) (* (* (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (* (cbrt (sqrt (+ 1 (* x1 x1)))) (cbrt (sqrt (+ 1 (* x1 x1)))))) (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (* (cbrt (sqrt (+ 1 (* x1 x1)))) (cbrt (sqrt (+ 1 (* x1 x1))))))) (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (* (cbrt (sqrt (+ 1 (* x1 x1)))) (cbrt (sqrt (+ 1 (* x1 x1)))))))) (/ (- (* x2 2) (- x1 (* (* 3 x1) x1))) (sqrt (+ 1 (* x1 x1))))) (* (* (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (sqrt (+ 1 (* x1 x1)))) (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (sqrt (+ 1 (* x1 x1))))) (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (sqrt (+ 1 (* x1 x1))))))

prune2.4m

sample1.5m

Algorithm
64×intervals
Results
38.7s269435×body80valid
11.8s13756×body1280valid
8.0s16838×body160valid
6.0s9424×body640valid
5.5s3842×body2560valid
4.7s2059×body10240exit
3.6s75614×pre80true
2.8s6748×body320valid
2.2s19761×body80nan
324.0ms235×body5120valid

rewrite27.9s

Algorithm
100×rewrite-expression-head
Calls

296 calls:

Slowest
1.4s
(* (* (* (* (* 3 x1) x1) (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (* (cbrt (sqrt (+ 1 (* x1 x1)))) (cbrt (sqrt (+ 1 (* x1 x1))))))) (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (cbrt (sqrt (+ 1 (* x1 x1)))))) (/ (cbrt (- (* x2 2) (- x1 (* (* 3 x1) x1)))) (sqrt (+ 1 (* x1 x1)))))
1.3s
(exp (log (exp (+ e (+ d (+ b (+ a c)))))))
1.3s
(exp (log (* (exp e) (* (exp d) (* (exp b) (exp (+ a c)))))))
948.0ms
(+ (+ (+ (* 333.75 (pow 33096 6)) (* (* 77617 77617) (+ (+ (+ (* (* 11 (* 77617 77617)) (* 33096 33096)) (- (pow 33096 6))) (* -121 (pow 33096 4))) -2))) (* 5.5 (pow 33096 8))) (/ 77617 (* 2 33096)))
901.0ms
(+ (+ (* 333.75 (pow 33096 6)) (* (* 77617 77617) (+ (+ (+ (* (* 11 (* 77617 77617)) (* 33096 33096)) (- (pow 33096 6))) (* -121 (pow 33096 4))) -2))) (* 5.5 (pow 33096 8)))
Rules
10046×times-frac
7382×add-sqr-sqrt
7108×*-un-lft-identity
4207×add-cube-cbrt
1830×add-exp-log
1634×add-cbrt-cube
1527×difference-of-squares
1324×pow1
1019×sqrt-prod
919×associate-*r*
909×distribute-lft-out--
788×frac-times
755×sqrt-div
746×prod-exp
718×cbrt-unprod
696×add-log-exp
662×associate-*l*
639×div-inv
573×associate-*r/
517×flip3-- flip--
515×pow-prod-down
473×associate-/r/
468×associate-/l*
454×distribute-lft-out
443×associate-/r*
400×associate-*l/
355×div-exp
351×cbrt-div
326×flip-+ flip3-+
319×cbrt-undiv
315×cbrt-prod
296×insert-posit16
180×sum-log
132×distribute-rgt-neg-in
125×distribute-lft-neg-in
124×unpow-prod-down
123×pow-prod-up
120×unswap-sqr
114×exp-prod
103×swap-sqr
96×sqr-pow
94×difference-of-sqr-1
88×sub-neg
86×*-commutative associate-/l/
76×sqrt-pow1
71×frac-2neg clear-num
64×exp-sum
63×frac-add diff-log
62×distribute-rgt-in distribute-lft-in
59×pow-sqr
58×log-prod
57×pow1/2
55×log-pow
51×pow-plus
40×+-commutative
35×div-sub
31×frac-sub
30×pow1/3
26×rem-sqrt-square
25×pow2
24×associate--l+ neg-mul-1
23×log-div
19×rem-exp-log
18×pow-flip 1-exp
17×associate-+r+
16×associate-+l+ rec-exp
12×cube-prod rem-log-exp
10×associate--l-
pow-exp neg-sub0 sqrt-unprod pow-to-exp
distribute-frac-neg
pow-unpow distribute-rgt-neg-out pow3
distribute-lft1-in neg-log associate--r+ inv-pow distribute-rgt-out
difference-of-sqr--1 distribute-rgt1-in
cube-unmult distribute-lft-neg-out rem-cbrt-cube
remove-posit16 pow-pow distribute-neg-frac associate-+l- rem-square-sqrt cube-div unsub-neg e-exp-1
rem-cube-cbrt exp-diff associate-+r- sub0-neg unpow3 sub-div un-div-inv distribute-rgt-out-- sum-cubes cube-mult associate--r-

series25.0s

Calls

296 calls:

Slowest
625.0ms
(+ (* (- (* 4 (/ (- (* x2 2) (- x1 (* (* 3 x1) x1))) (+ 1 (* x1 x1)))) 6) (* x1 x1)) (* (* (* (- (/ (- (* x2 2) (- x1 (* (* 3 x1) x1))) (+ 1 (* x1 x1))) 3) x1) 2) (/ (- (* x2 2) (- x1 (* (* 3 x1) x1))) (+ 1 (* x1 x1)))))
608.0ms
(+ (* (- (* 4 (/ (- (* x2 2) (- x1 (* (* 3 x1) x1))) (+ 1 (* x1 x1)))) 6) (* x1 x1)) (* (* (* (- (/ (- (* x2 2) (- x1 (* (* 3 x1) x1))) (+ 1 (* x1 x1))) 3) x1) 2) (/ (- (* x2 2) (- x1 (* (* 3 x1) x1))) (+ 1 (* x1 x1)))))
585.0ms
(+ (* (- (* 4 (/ (- (* x2 2) (- x1 (* (* 3 x1) x1))) (+ 1 (* x1 x1)))) 6) (* x1 x1)) (* (* (* (- (/ (- (* x2 2) (- x1 (* (* 3 x1) x1))) (+ 1 (* x1 x1))) 3) x1) 2) (/ (- (* x2 2) (- x1 (* (* 3 x1) x1))) (+ 1 (* x1 x1)))))
445.0ms
(* a (+ (pow (+ b c) 3) (pow d 3)))
429.0ms
(/ (- (pow (+ 1 (/ i n)) n) 1) (/ i n))

regimes5.6s

Accuracy

Total 30.2b remaining (13.9%)

11.3b54.7%Compound Interest
4.7b76.2%Kahan p9 Example
3.1b87.9%The quadratic formula (r2)
2.6b0%Complex division, imag part
2.2b23.5%Complex division, real part

localize3.8s

bsearch1.7s

end1.0ms