Details

simplify53.8m

Calls

19178 calls:

Slowest
2.1s
(/ (* (* (* (fma (+ (+ alpha beta) i) i (* beta alpha)) (* (+ (+ alpha beta) i) i)) (* (fma (+ (+ alpha beta) i) i (* beta alpha)) (* (+ (+ alpha beta) i) i))) (* (fma (+ (+ alpha beta) i) i (* beta alpha)) (* (+ (+ alpha beta) i) i))) (* (* (* (fma 2 i (+ alpha beta)) (fma 2 i (+ alpha beta))) (* (fma 2 i (+ alpha beta)) (fma 2 i (+ alpha beta)))) (* (fma 2 i (+ alpha beta)) (fma 2 i (+ alpha beta)))))
1.7s
(/ (* (* (* (fma (+ (+ alpha beta) i) i (* beta alpha)) (fma (+ (+ alpha beta) i) i (* beta alpha))) (fma (+ (+ alpha beta) i) i (* beta alpha))) (* (* (* (+ (+ alpha beta) i) i) (* (+ (+ alpha beta) i) i)) (* (+ (+ alpha beta) i) i))) (* (* (* (fma 2 i (+ alpha beta)) (fma 2 i (+ alpha beta))) (fma 2 i (+ alpha beta))) (* (* (fma 2 i (+ alpha beta)) (fma 2 i (+ alpha beta))) (fma 2 i (+ alpha beta)))))
1.7s
(* (exp (+ (- (- 1 z) -6) 0.5)) (* (* (+ (- 1 z) 2) (* (- (+ (/ -1259.1392167224028 (+ (- 1 z) 1)) 0.9999999999998099) (/ 676.5203681218851 (- 1 z))) (- 5 (+ z 1)))) (* (* (- 7 (+ z 1)) (- 6 (+ z 1))) (- (/ 1.5056327351493116e-07 (- 9 (+ z 1))) (/ 9.984369578019572e-06 (- (- 1 z) -6))))))
1.7s
(/ (* (* (* (fma (+ (+ alpha beta) i) i (* beta alpha)) (* (+ (+ alpha beta) i) i)) (* (fma (+ (+ alpha beta) i) i (* beta alpha)) (* (+ (+ alpha beta) i) i))) (* (fma (+ (+ alpha beta) i) i (* beta alpha)) (* (+ (+ alpha beta) i) i))) (* (* (* (fma 2 i (+ alpha beta)) (fma 2 i (+ alpha beta))) (fma 2 i (+ alpha beta))) (* (* (fma 2 i (+ alpha beta)) (fma 2 i (+ alpha beta))) (fma 2 i (+ alpha beta)))))
1.6s
(* (* (* (/ (/ (fma (+ (+ alpha beta) i) i (* beta alpha)) (fma 2 i (+ alpha beta))) (+ (fma 2 i (+ alpha beta)) (sqrt 1.0))) (/ (/ (fma (+ (+ alpha beta) i) i (* beta alpha)) (fma 2 i (+ alpha beta))) (+ (fma 2 i (+ alpha beta)) (sqrt 1.0)))) (/ (/ (fma (+ (+ alpha beta) i) i (* beta alpha)) (fma 2 i (+ alpha beta))) (+ (fma 2 i (+ alpha beta)) (sqrt 1.0)))) (/ (* (* (* (/ (+ (+ alpha beta) i) 1) (/ (+ (+ alpha beta) i) 1)) (/ (+ (+ alpha beta) i) 1)) (* (* (/ i (fma 2 i (+ alpha beta))) (/ i (fma 2 i (+ alpha beta)))) (/ i (fma 2 i (+ alpha beta))))) (* (* (- (fma 2 i (+ alpha beta)) (sqrt 1.0)) (- (fma 2 i (+ alpha beta)) (sqrt 1.0))) (- (fma 2 i (+ alpha beta)) (sqrt 1.0)))))

sample9.5m

Algorithm
89×intervals
Results
6.5m99513×body10240exit
1.1m390290×body80valid
36.7s25940×body1280valid
20.1s20774×body640valid
12.1s70405×body80nan
8.4s10513×body320valid
7.2s1662×body1280nan
4.6s9444×body160valid
3.7s1314×body640nan
2.0s694×body320nan
1.8s41536×pre80true
1.5s1438×body2560valid
638.0ms615×body5120valid
367.0ms307×body160nan

rewrite6.5m

Algorithm
144×rewrite-expression-head
Calls

424 calls:

Slowest
1.3m
(* (/ 1 (exp (+ (- (- 1 z) -6) 0.5))) (+ (+ (/ 771.3234287776531 (+ (- 1 z) 2)) (+ (+ (+ (/ -1259.1392167224028 (+ (- 1 z) 1)) 0.9999999999998099) (/ 676.5203681218851 (- 1 z))) (/ -176.6150291621406 (- 5 (+ z 1))))) (+ (+ (/ -0.13857109526572012 (- 7 (+ z 1))) (/ 12.507343278686905 (- 6 (+ z 1)))) (+ (/ 1.5056327351493116e-07 (- 9 (+ z 1))) (/ 9.984369578019572e-06 (- (- 1 z) -6))))))
1.3m
(* (/ 1 (exp (+ (- (- 1 z) -6) 0.5))) (+ (+ (/ 771.3234287776531 (+ (- 1 z) 2)) (+ (+ (+ (/ -1259.1392167224028 (+ (- 1 z) 1)) 0.9999999999998099) (/ 676.5203681218851 (- 1 z))) (/ -176.6150291621406 (- 5 (+ z 1))))) (+ (+ (/ -0.13857109526572012 (- 7 (+ z 1))) (/ 12.507343278686905 (- 6 (+ z 1)))) (+ (/ 1.5056327351493116e-07 (- 9 (+ z 1))) (/ 9.984369578019572e-06 (- (- 1 z) -6))))))
48.2s
(* (exp (- -6 0.5)) (+ (+ (/ 771.3234287776531 (+ (- 1 z) 2)) (+ (+ (+ (/ -1259.1392167224028 (+ (- 1 z) 1)) 0.9999999999998099) (/ 676.5203681218851 (- 1 z))) (/ -176.6150291621406 (- 5 (+ z 1))))) (+ (+ (/ -0.13857109526572012 (- 7 (+ z 1))) (/ 12.507343278686905 (- 6 (+ z 1)))) (+ (/ 1.5056327351493116e-07 (- 9 (+ z 1))) (/ 9.984369578019572e-06 (- (- 1 z) -6))))))
31.2s
(* (* (sqrt (/ (+ (+ (+ (+ (+ 1 (* 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.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.0001789971) (* (* (* (* (* (* x x) (* x x)) (* x x)) (* x x)) (* x x)) (* x x)))))) (sqrt (/ (+ (+ (+ (+ (+ 1 (* 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.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.0001789971) (* (* (* (* (* (* x x) (* x x)) (* x x)) (* x x)) (* x x)) (* x x))))))) x)
29.7s
(* (/ (/ (+ (+ (+ (+ (+ 1 (* 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 (+ (+ (+ (+ (+ (+ 1 (* 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.0001789971) (* (* (* (* (* (* x x) (* x x)) (* x x)) (* x x)) (* x x)) (* x x)))))) (sqrt (+ (+ (+ (+ (+ (+ 1 (* 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.0001789971) (* (* (* (* (* (* x x) (* x x)) (* x x)) (* x x)) (* x x)) (* x x)))))) x)
Rules
15500×*-un-lft-identity
14346×times-frac
8278×add-sqr-sqrt
6976×add-cube-cbrt
5090×distribute-lft-out
4275×add-exp-log
4021×sqrt-prod
2875×pow1
2246×add-cbrt-cube
2141×frac-add
1652×div-exp
1557×prod-exp
1533×associate-*l*
1249×prod-diff
1237×flip-+ flip3-+
1207×associate-*r*
1063×pow-prod-up
761×associate-/r/
753×div-inv
719×cbrt-unprod
675×associate-/l*
641×distribute-rgt-in distribute-lft-in
621×add-log-exp
607×associate-*r/
590×associate-/r*
540×frac-times
534×cbrt-undiv
516×pow-plus
512×pow-exp
445×pow-prod-down
424×expm1-log1p-u insert-posit16 log1p-expm1-u
350×unswap-sqr
349×1-exp
337×rec-exp
316×associate-*l/
288×unpow-prod-down
286×exp-sum
275×swap-sqr
239×log-pow
235×pow-to-exp
218×difference-of-squares
202×fma-def
166×distribute-lft-out--
158×pow-sqr
154×*-commutative
140×pow2
138×cbrt-div
137×sqrt-pow1
125×flip3-- flip--
104×sqr-pow
101×sqrt-div
100×frac-2neg clear-num
95×exp-diff
94×pow1/2
92×sub-neg
90×pow-div
88×log-prod fma-neg associate-/l/
80×sum-log
71×fma-udef
63×cube-unmult
62×pow-flip cbrt-prod
58×inv-pow
46×associate-+l+
39×+-commutative
33×diff-log
29×rem-sqrt-square
28×unpow-prod-up
26×distribute-rgt1-in pow1/3 div-sub distribute-rgt-out
22×frac-sub
17×cube-prod unpow3 cube-mult
16×exp-prod
15×associate-+r+
12×associate-+l-
11×sin-sum
10×associate--l+
pow-unpow
pow3 pow-pow hypot-def
pow-sub
sqrt-unprod un-div-inv rem-log-exp
associate--r+
hypot-udef rem-square-sqrt cos-sum rem-cbrt-cube log-div
difference-cubes
associate--l- associate-+r- exp-to-pow associate--r- sin-mult

prune5.4m

series1.3m

Calls

424 calls:

Slowest
2.0s
(- 1 (* (* (/ 1 (+ 1 (* 0.3275911 (fabs x)))) (+ 0.254829592 (* (/ 1 (+ 1 (* 0.3275911 (fabs x)))) (+ -0.284496736 (* (/ 1 (+ 1 (* 0.3275911 (fabs x)))) (+ 1.421413741 (* (/ 1 (+ 1 (* 0.3275911 (fabs x)))) (+ -1.453152027 (* (* (/ 1 (- (* 1 1) (* (* 0.3275911 (fabs x)) (* 0.3275911 (fabs x))))) (- 1 (* 0.3275911 (fabs x)))) 1.061405429))))))))) (exp (- (* (fabs x) (fabs x))))))
1.6s
(log (exp (- 1 (* (* (/ 1 (+ 1 (* 0.3275911 (fabs x)))) (+ 0.254829592 (* (/ 1 (+ 1 (* 0.3275911 (fabs x)))) (+ -0.284496736 (* (/ 1 (+ 1 (* 0.3275911 (fabs x)))) (+ 1.421413741 (* (/ 1 (+ 1 (* 0.3275911 (fabs x)))) (+ -1.453152027 (* (* (/ 1 (- (* 1 1) (* (* 0.3275911 (fabs x)) (* 0.3275911 (fabs x))))) (- 1 (* 0.3275911 (fabs x)))) 1.061405429))))))))) (exp (- (* (fabs x) (fabs x))))))))
1.6s
(- 1 (* (* (/ 1 (+ 1 (* 0.3275911 (fabs x)))) (+ 0.254829592 (* (/ 1 (+ 1 (* 0.3275911 (fabs x)))) (+ -0.284496736 (* (/ 1 (+ 1 (* 0.3275911 (fabs x)))) (+ 1.421413741 (* (/ 1 (+ 1 (* 0.3275911 (fabs x)))) (+ -1.453152027 (* (* (/ 1 (- (* 1 1) (* (* 0.3275911 (fabs x)) (* 0.3275911 (fabs x))))) (- 1 (* 0.3275911 (fabs x)))) 1.061405429))))))))) (exp (- (* (fabs x) (fabs x))))))
1.6s
(log (exp (- 1 (* (* (/ 1 (+ 1 (* 0.3275911 (fabs x)))) (+ 0.254829592 (* (/ 1 (+ 1 (* 0.3275911 (fabs x)))) (+ -0.284496736 (* (/ 1 (+ 1 (* 0.3275911 (fabs x)))) (+ 1.421413741 (* (/ 1 (+ 1 (* 0.3275911 (fabs x)))) (+ -1.453152027 (* (* (/ 1 (- (* 1 1) (* (* 0.3275911 (fabs x)) (* 0.3275911 (fabs x))))) (- 1 (* 0.3275911 (fabs x)))) 1.061405429))))))))) (exp (- (* (fabs x) (fabs x))))))))
1.6s
(/ (- (* (fma 1.0 (+ (/ alpha (+ 2.0 (+ alpha beta))) 1.0) (* (/ alpha (+ 2.0 (+ alpha beta))) (/ alpha (+ 2.0 (+ alpha beta))))) beta) (* (/ (- (pow (* (/ alpha (+ 2.0 (+ alpha beta))) (* (/ alpha (+ 2.0 (+ alpha beta))) (/ alpha (+ 2.0 (+ alpha beta))))) 3) (pow (* 1.0 (* 1.0 1.0)) 3)) (+ (* (* (/ alpha (+ 2.0 (+ alpha beta))) (* (/ alpha (+ 2.0 (+ alpha beta))) (/ alpha (+ 2.0 (+ alpha beta))))) (* (/ alpha (+ 2.0 (+ alpha beta))) (* (/ alpha (+ 2.0 (+ alpha beta))) (/ alpha (+ 2.0 (+ alpha beta)))))) (+ (* (* 1.0 (* 1.0 1.0)) (* 1.0 (* 1.0 1.0))) (* (* (/ alpha (+ 2.0 (+ alpha beta))) (* (/ alpha (+ 2.0 (+ alpha beta))) (/ alpha (+ 2.0 (+ alpha beta))))) (* 1.0 (* 1.0 1.0)))))) (+ 2.0 (+ alpha beta)))) (* 2.0 (* (+ (+ alpha beta) 2.0) (+ (* (/ alpha (+ (+ alpha beta) 2.0)) (/ alpha (+ (+ alpha beta) 2.0))) (+ (* 1.0 1.0) (* (/ alpha (+ (+ alpha beta) 2.0)) 1.0))))))

regimes9.7s

Accuracy

Total 37.0b remaining (31.8%)

12.6b6.7%Octave 3.8, jcobi/4
7.2b33.5%_divideComplex, imaginary part
6.6b-7.8%Octave 3.8, jcobi/2
3.0b77.2%Octave 3.8, jcobi/1
2.7b4%_divideComplex, real part

localize7.0s

bsearch1.5s

end1.0ms