Details

simplify8.3m (61.6%)

rewrite2.4m (18.0%)

Algorithm
108×rewrite-expression-head
Calls

315 calls:

28.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))) (- (* (/ 1335.0 4.0) (pow 33096.0 6.0)) (+ (* (/ 11.0 2.0) (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))))) (* (- (* (* (/ 1335.0 4.0) (pow 33096.0 6.0)) (* (/ 1335.0 4.0) (pow 33096.0 6.0))) (* (+ (* (/ 11.0 2.0) (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))) (+ (* (/ 11.0 2.0) (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))))) (+ (* (/ 1335.0 4.0) (pow 33096.0 6.0)) (+ (* (/ 11.0 2.0) (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0)))))))
4.6s
(- (* (* (+ -2.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 (+ (* -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))) (* (+ (* (/ 1335.0 4.0) (pow 33096.0 6.0)) (+ (* (/ 11.0 2.0) (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0)))) (+ (* (/ 1335.0 4.0) (pow 33096.0 6.0)) (+ (* (/ 11.0 2.0) (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))))))
3.8s
(+ (+ (* 333.75 (pow y 6.0)) (* (* x x) (- (- (- (* (* (* (* 11.0 x) x) y) y) (pow y 6.0)) (* 121.0 (pow y 4.0))) 2.0))) (* 5.5 (pow y 8.0)))
2.2s
(* (* x1 x1) (- (* (* 4.0 (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0))) (* 4.0 (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0)))) (* 6.0 6.0)))
1.1s
(+ (* (* (* 2.0 x1) (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0))) (- (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0)) 3.0)) (* (* (cbrt (* (* x1 x1) (- (* 4.0 (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0))) 6.0))) (cbrt (* (* x1 x1) (- (* 4.0 (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0))) 6.0)))) (cbrt (* (* x1 x1) (- (* 4.0 (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0))) 6.0)))))
Rules
786989×associate-*l/
581590×frac-times
336416×frac-sub
230871×flip-+ flip3-+
184207×frac-add
161680×associate-*r/
119050×flip3-- flip--
3204×add-sqr-sqrt
2831×*-un-lft-identity
2575×times-frac
2418×add-exp-log
1798×add-cube-cbrt
1634×add-cbrt-cube
969×prod-exp
854×associate-*r*
766×pow1
715×add-log-exp
660×div-exp
603×associate-*l*
600×cbrt-unprod
509×unpow-prod-down
430×cbrt-prod
423×difference-of-squares
364×cbrt-undiv
363×cbrt-div
322×distribute-lft-out
283×associate-/r*
267×sqr-pow
247×unswap-sqr
236×sqrt-prod
234×associate-/l*
223×distribute-lft-out--
210×pow-prod-down
203×associate-/r/
187×cube-prod
167×sum-log
166×div-inv
120×associate-/l/
96×pow-to-exp pow-exp
94×sub-neg
84×1-exp
79×*-commutative
74×distribute-rgt-in distribute-lft-in
70×diff-log
69×sqrt-div
68×distribute-rgt-neg-in
63×clear-num frac-2neg
62×unpow2
61×swap-sqr log-prod
56×sqrt-pow1
55×pow1/3
54×rec-exp
47×+-commutative
43×distribute-lft-neg-in
38×unpow3 cube-mult
37×exp-prod
36×pow1/2
34×pow-prod-up
32×rem-sqrt-square
31×log-pow associate-+r+
26×pow-sqr
24×distribute-lft-neg-out
21×div-sub
20×associate-+l+
17×sub-div pow-plus associate--r+
16×associate--l+
13×distribute-rgt-out--
12×cube-div pow2
11×associate--l- neg-mul-1
10×neg-sub0 log-div
pow-flip
inv-pow neg-log
pow-unpow rem-cbrt-cube
unsub-neg distribute-frac-neg distribute-neg-frac rem-log-exp
un-div-inv associate--r- sum-cubes associate-+l- pow-pow
exp-to-pow
rem-exp-log distribute-lft1-in sqrt-unprod pow3 rem-square-sqrt distribute-rgt-out +-inverses associate-+r-

sample1.1m (8.4%)

Algorithm
72×intervals
Results
26.1s294370×body80valid
9.1s13911×body1280valid
3.8s3785×body2560valid
3.7s9351×body640valid
2.6s2209×body10240exit
2.5s100585×pre80true
2.3s19228×body80nan
1.9s6694×body320valid
1.2s8922×body160valid
438.0ms225×body5120valid
3.0ms100×pre80false

prune44.1s (5.4%)

series42.9s (5.3%)

Calls

315 calls:

1.3s
(- (pow (pow (exp (cbrt x)) (* 2 (cbrt x))) (cbrt x)) (* 1.0 1.0))
660.0ms
(* 5.5 (pow y 8.0))
654.0ms
(* 333.75 (pow y 6.0))
639.0ms
(cbrt (pow (- (* 9.0 (pow x 4.0)) (pow y 4)) 3))
609.0ms
(sqrt (pow y 4.0))

regimes5.4s (0.7%)

Accuracy

Total 28.2b remaining (7.5%)

Threshold costs 3.3b (0.9%)

10.9b57%Compound Interest
4.5b77.4%Kahan p9 Example
2.5b24.6%Complex division, imag part
2.2b25%Complex division, real part
1.3b0%Rosa's DopplerBench

localize3.1s (0.4%)

bsearch1.4s (0.2%)

end1.0ms (0.0%)