Details

simplify58.7m

Calls

19234 calls:

Slowest
2.4s
(* (/ (* (/ (* (* 1 1) 1) (* (* (fma 0.3275911 (fabs x) 1) (fma 0.3275911 (fabs x) 1)) (fma 0.3275911 (fabs x) 1))) (* (* (fma (fma (/ 1 (fma 0.3275911 (fabs x) 1)) (+ (/ (+ (/ 1.061405429 (fma 0.3275911 (fabs x) 1)) -1.453152027) (fma 0.3275911 (fabs x) 1)) 1.421413741) -0.284496736) (/ 1 (fma 0.3275911 (fabs x) 1)) 0.254829592) (fma (fma (/ 1 (fma 0.3275911 (fabs x) 1)) (+ (/ (+ (/ 1.061405429 (fma 0.3275911 (fabs x) 1)) -1.453152027) (fma 0.3275911 (fabs x) 1)) 1.421413741) -0.284496736) (/ 1 (fma 0.3275911 (fabs x) 1)) 0.254829592)) (fma (fma (/ 1 (fma 0.3275911 (fabs x) 1)) (+ (/ (+ (/ 1.061405429 (fma 0.3275911 (fabs x) 1)) -1.453152027) (fma 0.3275911 (fabs x) 1)) 1.421413741) -0.284496736) (/ 1 (fma 0.3275911 (fabs x) 1)) 0.254829592))) (* (* (exp (* (fabs x) (fabs x))) (exp (* (fabs x) (fabs x)))) (exp (* (fabs x) (fabs x))))) (/ (* (* (* (/ 1 (fma 0.3275911 (fabs x) 1)) (/ 1 (fma 0.3275911 (fabs x) 1))) (/ 1 (fma 0.3275911 (fabs x) 1))) (* (* (fma (fma (/ 1 (fma 0.3275911 (fabs x) 1)) (+ (/ (+ (/ 1.061405429 (fma 0.3275911 (fabs x) 1)) -1.453152027) (fma 0.3275911 (fabs x) 1)) 1.421413741) -0.284496736) (/ 1 (fma 0.3275911 (fabs x) 1)) 0.254829592) (fma (fma (/ 1 (fma 0.3275911 (fabs x) 1)) (+ (/ (+ (/ 1.061405429 (fma 0.3275911 (fabs x) 1)) -1.453152027) (fma 0.3275911 (fabs x) 1)) 1.421413741) -0.284496736) (/ 1 (fma 0.3275911 (fabs x) 1)) 0.254829592)) (fma (fma (/ 1 (fma 0.3275911 (fabs x) 1)) (+ (/ (+ (/ 1.061405429 (fma 0.3275911 (fabs x) 1)) -1.453152027) (fma 0.3275911 (fabs x) 1)) 1.421413741) -0.284496736) (/ 1 (fma 0.3275911 (fabs x) 1)) 0.254829592))) (* (* (exp (* (fabs x) (fabs x))) (exp (* (fabs x) (fabs x)))) (exp (* (fabs x) (fabs x))))))
2.3s
(/ (* (* (* (/ (fma (+ (+ alpha beta) i) i (* beta alpha)) (fma 2 i (+ alpha beta))) (/ (/ (* (+ (+ alpha beta) i) i) (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))) (/ (/ (* (+ (+ alpha beta) i) i) (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))) (/ (/ (* (+ (+ alpha beta) i) 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))) (+ (fma 2 i (+ alpha beta)) (sqrt 1.0))))
2.2s
(* (/ (* (/ (* (* 1 1) 1) (* (* (fma 0.3275911 (fabs x) 1) (fma 0.3275911 (fabs x) 1)) (fma 0.3275911 (fabs x) 1))) (* (* (fma (fma (/ 1 (fma 0.3275911 (fabs x) 1)) (+ (/ (+ (/ 1.061405429 (fma 0.3275911 (fabs x) 1)) -1.453152027) (fma 0.3275911 (fabs x) 1)) 1.421413741) -0.284496736) (/ 1 (fma 0.3275911 (fabs x) 1)) 0.254829592) (fma (fma (/ 1 (fma 0.3275911 (fabs x) 1)) (+ (/ (+ (/ 1.061405429 (fma 0.3275911 (fabs x) 1)) -1.453152027) (fma 0.3275911 (fabs x) 1)) 1.421413741) -0.284496736) (/ 1 (fma 0.3275911 (fabs x) 1)) 0.254829592)) (fma (fma (/ 1 (fma 0.3275911 (fabs x) 1)) (+ (/ (+ (/ 1.061405429 (fma 0.3275911 (fabs x) 1)) -1.453152027) (fma 0.3275911 (fabs x) 1)) 1.421413741) -0.284496736) (/ 1 (fma 0.3275911 (fabs x) 1)) 0.254829592))) (* (* (exp (* (fabs x) (fabs x))) (exp (* (fabs x) (fabs x)))) (exp (* (fabs x) (fabs x))))) (/ (* (* (* (/ 1 (fma 0.3275911 (fabs x) 1)) (/ 1 (fma 0.3275911 (fabs x) 1))) (/ 1 (fma 0.3275911 (fabs x) 1))) (* (* (fma (fma (/ 1 (fma 0.3275911 (fabs x) 1)) (+ (/ (+ (/ 1.061405429 (fma 0.3275911 (fabs x) 1)) -1.453152027) (fma 0.3275911 (fabs x) 1)) 1.421413741) -0.284496736) (/ 1 (fma 0.3275911 (fabs x) 1)) 0.254829592) (fma (fma (/ 1 (fma 0.3275911 (fabs x) 1)) (+ (/ (+ (/ 1.061405429 (fma 0.3275911 (fabs x) 1)) -1.453152027) (fma 0.3275911 (fabs x) 1)) 1.421413741) -0.284496736) (/ 1 (fma 0.3275911 (fabs x) 1)) 0.254829592)) (fma (fma (/ 1 (fma 0.3275911 (fabs x) 1)) (+ (/ (+ (/ 1.061405429 (fma 0.3275911 (fabs x) 1)) -1.453152027) (fma 0.3275911 (fabs x) 1)) 1.421413741) -0.284496736) (/ 1 (fma 0.3275911 (fabs x) 1)) 0.254829592))) (* (* (exp (* (fabs x) (fabs x))) (exp (* (fabs x) (fabs x)))) (exp (* (fabs x) (fabs x))))))
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)))))
2.0s
(/ (* (* (* (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)))))

sample9.6m

Algorithm
88×intervals
Results
6.7m101887×body10240exit
1.1m385934×body80valid
36.5s26219×body1280valid
21.4s20843×body640valid
11.0s70054×body80nan
6.9s10485×body320valid
6.4s1597×body1280nan
3.1s1339×body640nan
2.1s5498×body160valid
1.9s41536×pre80true
1.5s619×body320nan
1.2s1384×body2560valid
765.0ms613×body5120valid
377.0ms320×body160nan

prune5.4m

rewrite4.5m

Algorithm
142×rewrite-expression-head
Calls

435 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))))))
17.6s
(+ (- (+ (- (- 1 z) -6) 0.5)) (log (+ (+ (/ 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)))))))
16.6s
(* (/ (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))))))) x)
16.3s
(* (/ (+ (+ (+ (+ (+ 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)
Rules
19815×*-un-lft-identity
15350×times-frac
9072×add-sqr-sqrt
7362×distribute-lft-out
7265×add-cube-cbrt
4344×add-exp-log
3855×sqrt-prod
3206×pow1
2275×prod-exp
2249×frac-add
2184×add-cbrt-cube
1841×flip-+ flip3-+
1741×associate-*r*
1609×associate-*l*
1580×prod-diff
1465×frac-times
1338×div-exp
1154×pow-prod-up
994×associate-/r/
926×pow-exp
821×associate-*r/
725×associate-/l*
692×cbrt-unprod
637×add-log-exp
607×unpow-prod-down
591×pow-plus
588×div-inv
526×associate-*l/
508×cbrt-undiv
491×cube-prod
483×pow-to-exp
477×pow-prod-down
461×associate-/r*
459×difference-of-squares
438×log1p-expm1-u
436×expm1-log1p-u
435×insert-posit16
374×distribute-rgt-in distribute-lft-in
362×1-exp
358×rec-exp
335×unswap-sqr
299×flip3-- flip--
276×swap-sqr
274×log-pow
260×pow-sqr
238×distribute-lft-out--
216×sqr-pow
202×pow2
200×cbrt-prod
187×fma-def
144×*-commutative
140×exp-sum
138×fma-neg
127×sqrt-pow1
119×associate-+l+
118×cube-mult
117×unpow3
107×log-prod
101×cbrt-div
100×associate-/l/
92×sqrt-div frac-2neg clear-num
91×associate-+r- log-div
79×sum-log
78×pow1/2
69×associate-+r+ sub-neg
68×fma-udef
66×pow1/3
54×frac-sub cube-unmult
38×diff-log
34×+-commutative
33×associate--l+
32×pow-div
31×rem-sqrt-square
30×pow-unpow
29×rem-cube-cbrt
28×exp-prod
27×pow-flip
25×inv-pow
23×div-sub
18×pow-pow
17×distribute-rgt-out
14×distribute-rgt1-in distribute-rgt-neg-in
11×sin-sum pow3
10×associate--r+
un-div-inv associate-+l- cube-div
hypot-def rem-log-exp
pow-sub
distribute-lft-neg-in
difference-cubes hypot-udef
neg-log sqrt-unprod rem-exp-log
unpow-prod-up expm1-log1p expm1-udef log1p-expm1 exp-to-pow rem-square-sqrt log1p-udef
exp-diff cos-sum associate--r-
associate--l- distribute-lft1-in distribute-rgt-out-- neg-sub0 neg-mul-1 distribute-neg-in rem-cbrt-cube sin-mult

series1.3m

Calls

431 calls:

Slowest
1.7s
(pow (* (* (pow -2 1.0) (pow (- (log u1)) 1.0)) (pow -1 1.0)) 0.5)
1.5s
(* 6 (pow (/ 1 (* (pow -1 1.0) (* (pow -2 1.0) (pow (log (/ 1 u1)) 1.0)))) 0.5))
1.5s
(/ 1 (* (pow -1 1.0) (* (pow -2 1.0) (pow (log (/ 1 u1)) 1.0))))
1.4s
(/ 1 (* 6 (pow (/ 1 (* (pow -1 1.0) (* (pow -2 1.0) (pow (log (/ 1 u1)) 1.0)))) 0.5)))
1.2s
(/ (* (/ (fma (+ (+ alpha beta) i) i (* beta alpha)) (fma 2 i (+ alpha beta))) (/ (* (+ (+ alpha beta) i) i) (fma 2 i (+ alpha beta)))) (- (fma 2 i (+ alpha beta)) (sqrt 1.0)))

regimes8.4s

Accuracy

Total 25.5b remaining (22%)

7.2b32%_divideComplex, imaginary part
5.4b15.3%Octave 3.8, jcobi/2
4.5b64.1%Octave 3.8, jcobi/1
2.4b0%_divideComplex, real part
1.8b32%Octave 3.8, jcobi/4

localize7.7s

bsearch1.6s

end1.0ms