Details

prune7.1m (55.9%)

simplify2.1m (16.7%)

rewrite2.0m (15.8%)

Algorithm
110×rewrite-expression-head
Calls

328 calls:

40.1s
(+ (* (* 333.75 (pow 33096.0 6.0)) (* (* (+ (pow -2.0 3) (pow (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))) 3)) (* 77617.0 77617.0)) (* (- (* -2.0 -2.0) (* (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))) (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))))) (* 77617.0 77617.0)))) (- (* (- (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0)))) (* (* (+ (pow -2.0 3) (pow (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))) 3)) (* 77617.0 77617.0)) (* (- (* -2.0 -2.0) (* (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))) (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))))) (* 77617.0 77617.0)))) (* (* (+ (* -2.0 -2.0) (- (* (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))) (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)))) (* -2.0 (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)))))) (- -2.0 (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))))) (* (- (* (* 333.75 (pow 33096.0 6.0)) (* 333.75 (pow 33096.0 6.0))) (* (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))) (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))))) (+ (* 333.75 (pow 33096.0 6.0)) (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))))))))
14.6s
(- (* (* (* (+ (pow -2.0 3) (pow (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))) 3)) (* 77617.0 77617.0)) (* (- (* -2.0 -2.0) (* (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))) (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))))) (* 77617.0 77617.0))) (- (* 333.75 (pow 33096.0 6.0)) (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))))) (* (* (+ (* -2.0 -2.0) (- (* (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))) (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)))) (* -2.0 (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)))))) (- -2.0 (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))))) (* (- (* (* 333.75 (pow 33096.0 6.0)) (* 333.75 (pow 33096.0 6.0))) (* (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))) (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))))) (+ (* 333.75 (pow 33096.0 6.0)) (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0)))))))
10.3s
(- (* (- (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0)))) (* (* (+ (pow -2.0 3) (pow (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))) 3)) (* 77617.0 77617.0)) (* (- (* -2.0 -2.0) (* (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))) (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))))) (* 77617.0 77617.0)))) (* (* (+ (* -2.0 -2.0) (- (* (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))) (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)))) (* -2.0 (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)))))) (- -2.0 (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))))) (* (- (* (* 333.75 (pow 33096.0 6.0)) (* 333.75 (pow 33096.0 6.0))) (* (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))) (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))))) (+ (* 333.75 (pow 33096.0 6.0)) (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0)))))))
6.3s
(+ (* (* (* 2.0 x1) (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0))) (* (* (cbrt (- (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0)) 3.0)) (cbrt (- (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0)) 3.0))) (cbrt (- (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0)) 3.0)))) (* (* x1 x1) (- (* 4.0 (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0))) 6.0)))
5.5s
(* (* (+ (* -2.0 -2.0) (- (* (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))) (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)))) (* -2.0 (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)))))) (- -2.0 (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))))) (* (- (* (* 333.75 (pow 33096.0 6.0)) (* 333.75 (pow 33096.0 6.0))) (* (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))) (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))))) (+ (* 333.75 (pow 33096.0 6.0)) (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))))))
Rules
76644×associate-*l/
66744×frac-times
43597×associate-*r/
34483×flip-+ flip3-+
28680×flip3-- flip--
20898×frac-sub
16832×frac-add
12960×distribute-neg-frac
5338×times-frac
5140×*-un-lft-identity
4467×add-sqr-sqrt
2960×add-cube-cbrt
1834×add-exp-log
1605×add-cbrt-cube
1506×sqrt-prod
1151×associate-*r*
1048×pow1
770×add-log-exp
713×distribute-lft-out
676×prod-exp
586×associate-*l*
556×cbrt-unprod
502×difference-of-squares
403×distribute-lft-out--
374×div-exp
333×cbrt-undiv
312×associate-/l*
292×associate-/r/
290×pow-prod-down
280×div-inv
279×associate-/r*
264×cbrt-div
221×sqrt-div
205×unpow-prod-down
199×swap-sqr
183×unswap-sqr
170×sum-log
129×cbrt-prod
111×sub-neg
92×*-commutative diff-log
91×associate-/l/
88×sqr-pow
87×cube-prod
85×distribute-rgt-in distribute-lft-in
82×sqrt-pow1
79×pow-prod-up
77×pow1/2
72×log-prod
66×distribute-rgt-neg-in
55×clear-num frac-2neg
53×pow-sqr
51×pow-exp
48×rem-sqrt-square
44×pow-plus
43×+-commutative
42×pow-to-exp
40×associate-+r+
34×pow2
33×distribute-lft-neg-in
30×associate-+l+
27×unpow2
25×log-pow div-sub
20×sum-cubes
18×pow1/3 associate--r+
17×rec-exp 1-exp
16×log-div
14×unpow3
12×cube-mult
11×cube-div neg-sub0 neg-mul-1
10×rem-cube-cbrt associate--l-
distribute-lft1-in neg-log
sqrt-unprod exp-sum associate--l+
un-div-inv exp-prod rem-log-exp pow-pow
pow-unpow associate-+r-
distribute-lft-neg-out
distribute-frac-neg rem-cbrt-cube
inv-pow distribute-rgt-out-- pow-flip
exp-diff rem-exp-log rem-square-sqrt distribute-rgt-out associate-+l- exp-to-pow
pow3 cube-unmult sub-div unsub-neg associate--r-

sample53.4s (7.0%)

Algorithm
72×intervals
Results
19.6s294360×body80valid
7.8s13812×body1280valid
3.6s3920×body2560valid
3.5s9475×body640valid
2.1s2168×body10240exit
2.0s100633×pre80true
1.3s6685×body320valid
1.2s19328×body80nan
1.1s9000×body160valid
157.0ms197×body5120valid
4.0ms100×pre80false

series28.1s (3.7%)

Calls

328 calls:

453.0ms
(- (* 9.0 (pow x 4.0)) (pow y 4.0))
449.0ms
(- (* 9.0 (pow x 4.0)) (* (* y y) (- (* y y) 2.0)))
448.0ms
(- (* 9.0 (pow x 4.0)) (pow y 4))
447.0ms
(- (* 9.0 (pow x 4.0)) (pow y 4.0))
446.0ms
(cbrt (pow (- (* 9.0 (pow x 4.0)) (pow y 4.0)) 3))

regimes3.8s (0.5%)

Accuracy

Total 29.1b remaining (7.8%)

Threshold costs 3.3b (0.9%)

11.1b51.1%Compound Interest
5.3b73.3%Kahan p9 Example
3.1b89.4%The quadratic formula (r2)
2.7b0%Complex division, real part
1.4b0%Rosa's DopplerBench

localize2.1s (0.3%)

bsearch1.2s (0.2%)

end0.0ms (0.0%)