Details

rewrite10.5m (57.5%)

Algorithm
108×rewrite-expression-head
Calls

307 calls:

2.5m
(- (* (+ (* (/ 77617.0 (* 2.0 33096.0)) (- (/ 77617.0 (* 2.0 33096.0)) (* 5.5 (pow 33096.0 8.0)))) (* (pow 33096.0 (* 2 8.0)) (* 5.5 5.5))) (* (+ (pow (* (* 77617.0 77617.0) (+ (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)) (+ (* -121.0 (pow 33096.0 4.0)) -2.0))) 3) (pow (* 333.75 (pow 33096.0 6.0)) 3)) (+ (pow (* (* 77617.0 77617.0) (+ (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)) (+ (* -121.0 (pow 33096.0 4.0)) -2.0))) 3) (pow (* 333.75 (pow 33096.0 6.0)) 3)))) (* (+ (* (* (* 77617.0 77617.0) (+ (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)) (+ (* -121.0 (pow 33096.0 4.0)) -2.0))) (* (* 77617.0 77617.0) (+ (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)) (+ (* -121.0 (pow 33096.0 4.0)) -2.0)))) (* (* 333.75 (pow 33096.0 6.0)) (- (* 333.75 (pow 33096.0 6.0)) (* (* 77617.0 77617.0) (+ (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)) (+ (* -121.0 (pow 33096.0 4.0)) -2.0)))))) (* (* (+ (pow (* 5.5 (pow 33096.0 8.0)) 3) (pow (/ 77617.0 (* 2.0 33096.0)) 3)) (+ (* (* (* 77617.0 77617.0) (+ (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)) (+ (* -121.0 (pow 33096.0 4.0)) -2.0))) (* (* 77617.0 77617.0) (+ (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)) (+ (* -121.0 (pow 33096.0 4.0)) -2.0)))) (* (* 333.75 (pow 33096.0 6.0)) (- (* 333.75 (pow 33096.0 6.0)) (* (* 77617.0 77617.0) (+ (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)) (+ (* -121.0 (pow 33096.0 4.0)) -2.0))))))) (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))))))
16.1s
(* (+ (* (* (* 77617.0 77617.0) (+ (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)) (+ (* -121.0 (pow 33096.0 4.0)) -2.0))) (* (* 77617.0 77617.0) (+ (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)) (+ (* -121.0 (pow 33096.0 4.0)) -2.0)))) (* (* 333.75 (pow 33096.0 6.0)) (- (* 333.75 (pow 33096.0 6.0)) (* (* 77617.0 77617.0) (+ (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)) (+ (* -121.0 (pow 33096.0 4.0)) -2.0)))))) (* (+ (* (/ 77617.0 (* 2.0 33096.0)) (- (/ 77617.0 (* 2.0 33096.0)) (* 5.5 (pow 33096.0 8.0)))) (* (pow 33096.0 (* 2 8.0)) (* 5.5 5.5))) (+ (* (* (* 77617.0 77617.0) (+ (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)) (+ (* -121.0 (pow 33096.0 4.0)) -2.0))) (* (* 77617.0 77617.0) (+ (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)) (+ (* -121.0 (pow 33096.0 4.0)) -2.0)))) (* (* 333.75 (pow 33096.0 6.0)) (- (* 333.75 (pow 33096.0 6.0)) (* (* 77617.0 77617.0) (+ (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)) (+ (* -121.0 (pow 33096.0 4.0)) -2.0))))))))
5.8s
(/ (- (* (+ (* (* 77617.0 77617.0) (+ (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)) (+ (* -121.0 (pow 33096.0 4.0)) -2.0))) (* 333.75 (pow 33096.0 6.0))) (+ (* (* 77617.0 77617.0) (+ (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)) (+ (* -121.0 (pow 33096.0 4.0)) -2.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))))) (- (+ (* (* 77617.0 77617.0) (+ (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)) (+ (* -121.0 (pow 33096.0 4.0)) -2.0))) (* 333.75 (pow 33096.0 6.0))) (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0)))))
5.0s
(+ (+ (* (* (* 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)) (* (* 4.0 (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0))) (* x1 x1))) (* (* x1 x1) (- 6.0)))
3.9s
(+ (+ (* 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)))
Rules
6517×times-frac
5840×*-un-lft-identity
5125×add-sqr-sqrt
3297×add-cube-cbrt
1764×add-exp-log
1497×associate-*r/
1333×add-cbrt-cube
1123×frac-times
854×distribute-lft-out
851×cbrt-div
844×difference-of-squares
792×flip-+ flip3-+
740×add-log-exp
717×associate-*r*
701×associate-*l*
674×pow1
608×flip-- flip3--
550×prod-exp
520×div-exp
497×associate-*l/
480×frac-add
465×distribute-lft-out--
464×unpow-prod-down
449×sqrt-prod
448×associate-/r*
389×distribute-rgt-neg-in
386×cbrt-unprod
373×associate-/l*
369×distribute-lft-neg-in
332×associate-/r/
309×cbrt-undiv
292×div-inv
276×sqr-pow
256×cbrt-prod
232×cube-prod
165×associate-/l/
162×pow-prod-down frac-sub
151×sum-log
141×unswap-sqr
123×neg-mul-1
100×sub-neg
97×diff-log
88×sqrt-div
76×1-exp
68×clear-num frac-2neg
67×log-pow *-commutative
55×rec-exp
53×exp-prod
52×distribute-rgt-in distribute-lft-in swap-sqr
44×+-commutative
42×log-prod
37×unpow3
36×cube-mult
35×pow-to-exp pow-exp
31×unpow2
30×associate-+r+
29×rem-sqrt-square
26×associate-+l+ associate--l+ sqrt-pow1
24×pow1/2
23×pow1/3 div-sub
21×pow-unpow
18×distribute-rgt-out--
16×exp-to-pow
14×associate--l-
12×cube-div pow-prod-up pow-sqr
11×rem-exp-log
10×neg-sub0
difference-cubes un-div-inv pow-plus log-div
pow2 neg-log associate--r+ pow-pow
distribute-rgt-out exp-sum rem-cbrt-cube
distribute-lft1-in rem-log-exp
unsub-neg inv-pow associate-+r- pow-flip
exp-diff rem-cube-cbrt distribute-frac-neg
distribute-lft-neg-out associate--r- distribute-rgt-neg-out associate-+l-
sub-div

simplify5.0m (27.6%)

sample1.1m (6.2%)

Algorithm
72×intervals
Results
27.2s294792×body80valid
8.9s13889×body1280valid
5.0s9364×body640valid
4.3s3872×body2560valid
2.8s2182×body10240exit
2.7s100661×pre80true
2.1s6830×body320valid
2.0s19374×body80nan
1.6s8858×body160valid
234.0ms234×body5120valid
7.0ms100×pre80false

prune47.5s (4.4%)

series38.6s (3.5%)

Calls

303 calls:

823.0ms
(cbrt (/ (- (+ (* 1.0 i) (+ (* 0.5 (pow i 2)) (* (log 1.0) n))) (* 0.5 (* (pow i 2) (log 1.0)))) (/ 1 n)))
812.0ms
(cbrt (* (- (+ (* 1.0 i) (+ (* 0.5 (pow i 2)) (* (log 1.0) n))) (* 0.5 (* (pow i 2) (log 1.0)))) n))
808.0ms
(cbrt (* (- (+ (* 1.0 i) (+ (* 0.5 (pow i 2)) (* (log 1.0) n))) (* 0.5 (* (pow i 2) (log 1.0)))) n))
731.0ms
(+ (* (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0)) (+ (* (* 3.0 x1) x1) (* (* (- (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0)) 3.0) (* 2.0 x1)) (+ (* x1 x1) 1.0)))) (* (+ (* x1 x1) 1.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))))))
730.0ms
(cbrt (pow (- (* 9.0 (pow x 4.0)) (pow y 4)) 3))

regimes4.5s (0.4%)

Accuracy

Total 32.7b remaining (8.8%)

Threshold costs 4.2b (1.1%)

11.5b54.9%Compound Interest
5.2b73.7%Kahan p9 Example
3.7b86.5%The quadratic formula (r2)
3.0b0%Complex division, imag part
2.9b3.8%Complex division, real part

localize2.3s (0.2%)

bsearch1.4s (0.1%)

end1.0ms (0.0%)