Details

rewrite10.4m (72.8%)

Algorithm
147×rewrite-expression-head
Calls

435 calls:

7.2s
(* (/ (+ (+ (+ (+ (+ 1.0 (* 0.1049934947 (* x x))) (* 0.0424060604 (* (* x x) (* x x)))) (* 0.0072644182 (* (* (* x x) (* x x)) (* x x)))) (* 0.0005064034 (* (* (* (* x x) (* x x)) (* x x)) (* x x)))) (* 0.0001789971 (* (* (* (* (* x x) (* x x)) (* x x)) (* x x)) (* x x)))) (+ (+ (+ (+ (+ (+ 1.0 (* 0.7715471019 (* x x))) (* 0.2909738639 (* (* x x) (* x x)))) (* 0.0694555761 (* (* (* x x) (* x x)) (* x x)))) (* 0.0140005442 (* (* (* (* x x) (* x x)) (* x x)) (* x x)))) (* 0.0008327945 (* (* (* (* (* x x) (* x x)) (* x x)) (* x x)) (* x x)))) (* (* 2.0 0.0001789971) (* (* (* (* (* (* x x) (* x x)) (* x x)) (* x x)) (* x x)) (* x x))))) x)
4.2s
(/ (+ (+ (+ (+ (+ 1.0 (* 0.1049934947 (* x x))) (* 0.0424060604 (* (* x x) (* x x)))) (* 0.0072644182 (* (* (* x x) (* x x)) (* x x)))) (* 0.0005064034 (* (* (* (* x x) (* x x)) (* x x)) (* x x)))) (* 0.0001789971 (* (* (* (* (* x x) (* x x)) (* x x)) (* x x)) (* x x)))) (+ (+ (+ (+ (+ (+ 1.0 (* 0.7715471019 (* x x))) (* 0.2909738639 (* (* x x) (* x x)))) (* 0.0694555761 (* (* (* x x) (* x x)) (* x x)))) (* 0.0140005442 (* (* (* (* x x) (* x x)) (* x x)) (* x x)))) (* 0.0008327945 (* (* (* (* (* x x) (* x x)) (* x x)) (* x x)) (* x x)))) (* (* 2.0 0.0001789971) (* (* (* (* (* (* x x) (* x x)) (* x x)) (* x x)) (* x x)) (* x x)))))
629.0ms
(* (* (sqrt (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2.0 1.0))) (+ (+ alpha beta) (* 2.0 1.0)))) (sqrt (/ (/ (sqrt (+ (+ (+ alpha beta) (* beta alpha)) 1.0)) 1) (sqrt (+ (+ alpha beta) (* 2.0 1.0)))))) (sqrt (/ (/ (sqrt (+ (+ (+ alpha beta) (* beta alpha)) 1.0)) (+ (+ alpha beta) (* 2.0 1.0))) (sqrt (+ (+ alpha beta) (* 2.0 1.0))))))
503.0ms
(* (sqrt (* PI 2.0)) (pow (+ (+ (- z 1.0) 7.0) 0.5) (+ (- z 1.0) 0.5)))
456.0ms
(+ (/ (* (* (/ 1 (* (fabs (cbrt (+ (+ (+ alpha beta) (* 2.0 i)) 2.0))) 1)) (/ (- beta alpha) (sqrt (cbrt (+ (+ (+ alpha beta) (* 2.0 i)) 2.0))))) (/ (+ alpha beta) (fma i 2.0 (+ alpha beta)))) (sqrt (+ (+ (+ alpha beta) (* 2.0 i)) 2.0))) 1.0)
Rules
6676×*-un-lft-identity
5786×times-frac
5703×add-sqr-sqrt
4566×add-cube-cbrt
2418×add-exp-log
1712×prod-diff
1600×add-cbrt-cube
1316×pow1
1295×sqrt-prod
899×distribute-lft-out
876×associate-*r*
853×prod-exp
751×associate-*l*
657×div-exp
639×add-log-exp
563×cbrt-prod
478×associate-/r*
444×cbrt-unprod
438×associate-/l*
433×log1p-expm1-u expm1-log1p-u
337×log-pow
336×div-inv
322×associate-/r/
321×cbrt-undiv
305×log-prod
298×pow-prod-down
265×exp-sum
264×difference-of-squares
249×fma-neg
246×distribute-rgt-in distribute-lft-in
215×1-exp
211×flip-+ distribute-lft-out-- flip3-+ unswap-sqr
198×swap-sqr
194×unpow-prod-down
157×sqrt-pow1
148×fma-def
140×exp-prod associate--l+
123×rec-exp
119×flip3-- flip--
112×pow1/2 *-commutative
111×pow-exp
98×sqrt-div
93×frac-2neg clear-num
90×associate-*l/
89×pow1/3 sub-neg
88×cube-prod
83×pow-prod-up
79×associate-/l/ diff-log
78×associate-+l+
76×associate-*r/
72×distribute-rgt-neg-in distribute-lft-neg-in
71×associate--r+
66×pow-to-exp
65×fma-udef
64×cbrt-div
59×sqr-pow
55×pow-unpow
54×frac-times
43×pow-sqr
37×neg-mul-1
34×associate-+r+ sum-log
28×pow-plus pow-flip
24×rem-sqrt-square
23×unpow3 cube-mult
22×inv-pow
21×+-commutative
18×pow2 rem-log-exp pow-pow
16×div-sub hypot-def
15×associate--l-
12×hypot-udef
10×distribute-neg-in distribute-rgt-out
rem-exp-log rem-cube-cbrt sqrt-unprod log-div
neg-log frac-sub
cube-div neg-sub0 distribute-rgt-neg-out
un-div-inv distribute-lft1-in
exp-diff sin-sum rem-square-sqrt rem-cbrt-cube unpow2
associate-+l-
expm1-log1p distribute-frac-neg log-rec cos-sum expm1-udef exp-to-pow associate-+r-
sqrt-pow2 unpow1/3 pow3 exp-neg unpow-prod-up pow-sub unsub-neg associate--r-

sample1.7m (11.9%)

Algorithm
98×intervals
Results
45.4s12116×body10240exit
18.3s437944×body80valid
11.1s27265×body1280valid
5.2s21350×body640valid
2.5s70364×body80nan
2.0s1569×body1280nan
1.6s10851×body320valid
1.2s1320×body640nan
955.0ms9361×body160valid
661.0ms49536×pre80true
410.0ms668×body320nan
361.0ms1469×body2560valid
154.0ms628×body5120valid
115.0ms298×body160nan

series59.8s (7.0%)

Calls

433 calls:

1.9s
(/ (* (* (- (* (+ (+ alpha beta) (* 2.0 i)) (+ (+ alpha beta) (* 2.0 i))) 1.0) (fma i 2.0 (+ alpha beta))) (fma i 2.0 (+ alpha beta))) (fma beta alpha (* i (+ (+ alpha beta) i))))
1.9s
(/ (* (- (* (+ (+ alpha beta) (* 2.0 i)) (+ (+ alpha beta) (* 2.0 i))) 1.0) (fma i 2.0 (+ alpha beta))) (/ (fma beta alpha (* i (+ (+ alpha beta) i))) (fma i 2.0 (+ alpha beta))))
1.2s
(cbrt (fma (- d2 d3) d1 (+ (* (* (+ (* 1 (pow (cbrt d4) 3)) (- d1)) 1) d1) (* d1 (fma (- d1) 1 d1)))))
1.1s
(pow (* (pow -1 1.0) (* (pow -2.0 1.0) (pow (log (/ 1 u1)) 1.0))) 0.5)
1.1s
(+ (/ (* (* (/ 1 (* (fabs (cbrt (+ (+ (+ alpha beta) (* 2.0 i)) 2.0))) 1)) (/ (- beta alpha) (sqrt (cbrt (+ (+ (+ alpha beta) (* 2.0 i)) 2.0))))) (/ (+ alpha beta) (fma i 2.0 (+ alpha beta)))) (sqrt (+ (+ (+ alpha beta) (* 2.0 i)) 2.0))) 1.0)

prune50.1s (5.9%)

simplify13.3s (1.6%)

Algorithm
243×egg-herbie

regimes4.5s (0.5%)

Accuracy

Total 49.8b remaining (45.2%)

Threshold costs 4.7b (4.3%)

9.4b43.4%Octave 3.8, jcobi/4
8.4b32.1%_divideComplex, imaginary part
6.9b37.4%_divideComplex, real part
5.5b17.6%Octave 3.8, jcobi/2
4.3b27.4%math.sqrt on complex, real part

localize2.1s (0.2%)

bsearch918.0ms (0.1%)

end1.0ms (0.0%)