Details

simplify15.9m (55.4%)

rewrite4.6m (16.1%)

Algorithm
134×rewrite-expression-head
Calls

388 calls:

46.7s
(* (/ (sqrt (+ (+ (+ (+ (+ 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) (* (/ (* (sqrt (sqrt (+ (+ (+ (+ (+ 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)))))) (sqrt (sqrt (+ (+ (+ (+ (+ 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))
42.3s
(* (/ (+ (+ (+ (+ (+ 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)
36.8s
(* (/ (sqrt (+ (+ (+ (+ (+ 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) (* (/ (sqrt (+ (+ (+ (+ (+ 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))
23.5s
(/ (+ (+ (+ (+ (+ 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)))))
23.1s
(* d1 (* (* (* (* (* d1 (* d1 d1)) d1) d1) (* d1 d1)) d1))
Rules
6079×times-frac
5891×*-un-lft-identity
5431×add-sqr-sqrt
3992×add-cube-cbrt
3187×pow1
2683×add-exp-log
2404×add-cbrt-cube
1839×sqrt-prod
1305×pow-prod-up
1127×associate-*r*
1105×prod-exp
942×associate-*l*
932×cbrt-unprod
732×div-exp
645×distribute-lft-out
627×prod-diff
587×pow-plus
562×cbrt-undiv
535×add-log-exp
509×associate-/l* pow-prod-down
389×expm1-log1p-u
388×insert-posit16 log1p-expm1-u
379×difference-of-squares
346×distribute-lft-out--
339×associate-/r*
291×flip-+ flip3-+
287×associate-*l/
273×cbrt-prod
268×div-inv
263×associate-/r/
238×flip3-- flip--
236×pow-sqr
228×unswap-sqr
190×pow2 log-pow
179×associate-*r/
170×frac-times
155×cbrt-div
149×sqrt-div
140×swap-sqr frac-add
139×distribute-rgt-in distribute-lft-in
138×log-prod
136×exp-sum
122×*-commutative
118×sqrt-pow1
111×fma-neg
97×pow1/3
90×associate-/l/ unpow-prod-down
87×fma-def
83×frac-2neg clear-num
78×fma-udef
76×1-exp
67×rec-exp
54×cube-unmult pow1/2
51×sub-neg
43×sum-log
41×pow-flip
39×diff-log
31×associate-+r+
29×associate-+l+
26×+-commutative
22×frac-sub pow-div
18×sqr-pow
17×div-sub
16×exp-prod
15×rem-sqrt-square
14×distribute-rgt1-in distribute-rgt-out
13×hypot-udef
12×pow3 associate--r+
10×inv-pow
distribute-lft-neg-in distribute-rgt-neg-in un-div-inv
hypot-def
associate--l+ rem-log-exp
pow-exp sin-sum associate-+r- pow-to-exp cos-sum distribute-neg-in
sqrt-unprod pow-unpow neg-mul-1 associate-+l- rem-square-sqrt log-div
distribute-rgt-neg-out rem-exp-log
distribute-lft-neg-out exp-diff log1p-expm1 difference-cubes pow-pow log1p-udef associate--r-

prune3.0m (10.4%)

sample2.4m (8.3%)

Algorithm
94×intervals
Results
46.9s405126×body80valid
28.7s26645×body1280valid
15.1s20666×body640valid
8.8s69354×body80nan
7.6s8079×body10240exit
5.5s10303×body320valid
3.2s9300×body160valid
1.6s33536×pre80true
961.0ms1359×body2560valid
924.0ms596×body5120valid
527.0ms101×body1280nan
75.0ms63×body640nan
32.0ms40×body320nan
12.0ms20×body160nan

series2.0m (7.1%)

Calls

388 calls:

5.1s
(* (* (/ (/ (* i (+ (+ alpha beta) i)) (+ (+ alpha beta) (* 2.0 i))) (+ (+ (+ alpha beta) (* 2.0 i)) (sqrt 1.0))) (/ (+ (* beta alpha) (* i (+ (+ alpha beta) i))) (+ (+ alpha beta) (* 2.0 i)))) (/ 1 (- (+ (+ alpha beta) (* 2.0 i)) (sqrt 1.0))))
5.0s
(* (/ (/ (* i (+ (+ alpha beta) i)) (+ (+ alpha beta) (* 2.0 i))) (+ (+ (+ alpha beta) (* 2.0 i)) (sqrt 1.0))) (/ (/ (+ (* beta alpha) (* i (+ (+ alpha beta) i))) (+ (+ alpha beta) (* 2.0 i))) (- (+ (+ alpha beta) (* 2.0 i)) (sqrt 1.0))))
3.7s
(* (* (/ (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) (exp (* (fabs x) (fabs x)))) (fma (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) (fma (fma (fma (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) 1.061405429 -1.453152027) (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) 1.421413741) (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) -0.284496736) 0.254829592)) (+ 1.0 (* (/ (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) (exp (* (fabs x) (fabs x)))) (fma (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) (fma (fma (fma (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) 1.061405429 -1.453152027) (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) 1.421413741) (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) -0.284496736) 0.254829592))))
3.5s
(* (* (/ (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) (exp (* (fabs x) (fabs x)))) (fma (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) (fma (fma (fma (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) 1.061405429 -1.453152027) (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) 1.421413741) (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) -0.284496736) 0.254829592)) (+ 1.0 (* (/ (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) (exp (* (fabs x) (fabs x)))) (fma (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) (fma (fma (fma (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) 1.061405429 -1.453152027) (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) 1.421413741) (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) -0.284496736) 0.254829592))))
3.0s
(- (* 1.0 (* 1.0 1.0)) (* (sqrt (* (* (* (/ (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) (exp (* (fabs x) (fabs x)))) (fma (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) (fma (fma (fma (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) 1.061405429 -1.453152027) (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) 1.421413741) (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) -0.284496736) 0.254829592)) (* (/ (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) (exp (* (fabs x) (fabs x)))) (fma (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) (fma (fma (fma (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) 1.061405429 -1.453152027) (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) 1.421413741) (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) -0.284496736) 0.254829592))) (* (/ (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) (exp (* (fabs x) (fabs x)))) (fma (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) (fma (fma (fma (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) 1.061405429 -1.453152027) (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) 1.421413741) (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) -0.284496736) 0.254829592)))) (sqrt (* (* (* (/ (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) (exp (* (fabs x) (fabs x)))) (fma (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) (fma (fma (fma (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) 1.061405429 -1.453152027) (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) 1.421413741) (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) -0.284496736) 0.254829592)) (* (/ (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) (exp (* (fabs x) (fabs x)))) (fma (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) (fma (fma (fma (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) 1.061405429 -1.453152027) (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) 1.421413741) (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) -0.284496736) 0.254829592))) (* (/ (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) (exp (* (fabs x) (fabs x)))) (fma (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) (fma (fma (fma (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) 1.061405429 -1.453152027) (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) 1.421413741) (/ 1.0 (fma 0.3275911 (fabs x) 1.0)) -0.284496736) 0.254829592))))))

localize23.3s (1.4%)

regimes22.4s (1.3%)

Accuracy

Total 28.0b remaining (20.6%)

Threshold costs 4.3b (3.1%)

7.8b31.8%_divideComplex, real part
5.9b5.1%Octave 3.8, jcobi/2
3.5b-10.9%_divideComplex, imaginary part
2.5b36.2%Octave 3.8, jcobi/4
2.5b0%Octave 3.8, jcobi/3

bsearch984.0ms (0.1%)

end1.0ms (0.0%)