Details

simplify47.0m

Calls

18421 calls:

Slowest
2.2s
(/ (* (* (* (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.1s
(+ (* (+ (+ (/ 9.984369578019572e-06 (+ z 6)) (/ 1.5056327351493116e-07 (+ z 7))) (+ (+ (+ (/ 771.3234287776531 (+ z 2)) (/ 12.507343278686905 (+ z 4))) (/ -176.6150291621406 (+ 3 z))) (+ (/ 676.5203681218851 z) (+ 0.9999999999998099 (/ -1259.1392167224028 (- z -1)))))) (+ (+ (/ 9.984369578019572e-06 (+ z 6)) (/ 1.5056327351493116e-07 (+ z 7))) (+ (+ (+ (/ 771.3234287776531 (+ z 2)) (/ 12.507343278686905 (+ z 4))) (/ -176.6150291621406 (+ 3 z))) (+ (/ 676.5203681218851 z) (+ 0.9999999999998099 (/ -1259.1392167224028 (- z -1))))))) (- (* (/ -0.13857109526572012 (- z -5)) (/ -0.13857109526572012 (- z -5))) (* (+ (+ (/ 9.984369578019572e-06 (+ z 6)) (/ 1.5056327351493116e-07 (+ z 7))) (+ (+ (+ (/ 771.3234287776531 (+ z 2)) (/ 12.507343278686905 (+ z 4))) (/ -176.6150291621406 (+ 3 z))) (+ (/ 676.5203681218851 z) (+ 0.9999999999998099 (/ -1259.1392167224028 (- z -1)))))) (/ -0.13857109526572012 (- z -5)))))
2.0s
(* (* (* (* (/ (/ (fma (+ (+ alpha beta) i) i (* beta alpha)) (fma 2 i (+ alpha beta))) (+ (fma 2 i (+ alpha beta)) (sqrt 1.0))) (/ (/ (+ (+ alpha beta) i) 1) 1)) (* (/ (/ (fma (+ (+ alpha beta) i) i (* beta alpha)) (fma 2 i (+ alpha beta))) (+ (fma 2 i (+ alpha beta)) (sqrt 1.0))) (/ (/ (+ (+ alpha beta) i) 1) 1))) (* (/ (/ (fma (+ (+ alpha beta) i) i (* beta alpha)) (fma 2 i (+ alpha beta))) (+ (fma 2 i (+ alpha beta)) (sqrt 1.0))) (/ (/ (+ (+ alpha beta) i) 1) 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)))))
1.9s
(/ (* (* (* (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.8s
(* (* (* (* (/ (/ (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) 1) (/ (/ (+ (+ alpha beta) i) 1) 1)) (/ (/ (+ (+ alpha beta) i) 1) 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.8m

Algorithm
90×intervals
Results
6.7m102778×body10240exit
1.1m396351×body80valid
34.7s25696×body1280valid
20.6s20379×body640valid
11.4s69699×body80nan
10.1s2930×body1280nan
7.8s2546×body640nan
7.0s10901×body320valid
5.0s9747×body160valid
3.5s1267×body320nan
2.2s41536×pre80true
1.2s1420×body2560valid
959.0ms629×body5120valid
778.0ms615×body160nan

prune5.6m

rewrite4.5m

Algorithm
145×rewrite-expression-head
Calls

445 calls:

Slowest
1.2m
(* (* (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))))) (sqrt (/ 1 (+ (+ (+ (+ (+ (+ 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)
31.8s
(* (* (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)
31.1s
(* (* (pow (+ (+ z 0.5) 6) (+ 0.5 (+ z -1))) (/ (sqrt (* PI 2)) (exp (+ (+ z 0.5) 6)))) (+ (+ (+ (/ 9.984369578019572e-06 (+ z 6)) (/ 1.5056327351493116e-07 (+ z 7))) (+ (+ (+ (/ 771.3234287776531 (+ z 2)) (/ 12.507343278686905 (+ z 4))) (/ -176.6150291621406 (+ 3 z))) (+ (/ 676.5203681218851 z) (+ 0.9999999999998099 (/ -1259.1392167224028 (- z -1)))))) (/ -0.13857109526572012 (- z -5))))
17.0s
(* (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))))) (sqrt (/ 1 (+ (+ (+ (+ (+ (+ 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)))))))
16.9s
(* (/ (+ (+ (+ (+ (+ 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
31579×*-un-lft-identity
26855×times-frac
13278×add-sqr-sqrt
11145×distribute-lft-out
10083×add-cube-cbrt
3938×add-exp-log
2357×add-cbrt-cube
2222×pow1
2148×difference-of-squares
1888×sqrt-prod
1837×distribute-lft-out--
1470×div-exp
1350×prod-exp
1342×associate-*r*
1301×associate-*l*
1279×prod-diff
1150×associate-/r/
1095×frac-add
929×flip-+ flip3-+
832×div-inv
741×cbrt-unprod
717×associate-/l*
608×add-log-exp
589×cbrt-undiv
516×distribute-rgt-in distribute-lft-in
484×pow-prod-up
478×associate-/r*
475×associate-*r/
445×expm1-log1p-u insert-posit16 log1p-expm1-u
442×associate-*l/
427×pow-prod-down
420×fma-def
393×unswap-sqr
385×frac-times
311×swap-sqr
305×flip3-- flip--
254×1-exp
243×pow-plus
221×exp-sum
215×log-pow
177×sqrt-div
173×unpow-prod-down
156×*-commutative
154×cbrt-prod
149×rec-exp associate-/l/
144×frac-sub
143×sqrt-pow1
130×log-prod
116×fma-neg
106×pow-sqr
98×pow1/2
92×frac-2neg clear-num
90×pow-div
81×sub-neg
79×pow2
70×fma-udef
67×sqr-pow
66×pow-exp
63×sum-log
57×cube-prod
54×pow-flip
51×inv-pow
48×pow1/3
46×pow-to-exp
45×exp-prod
40×+-commutative
37×cbrt-div rem-sqrt-square
32×associate-+l+
30×distribute-rgt-out
29×distribute-rgt1-in
28×pow-unpow
27×unpow-prod-up
26×diff-log
24×cube-unmult
20×div-sub
17×pow-pow
16×sub-div
15×hypot-def
12×sin-sum un-div-inv
11×pow3 rem-log-exp
10×associate-+r+
sqrt-undiv cube-div
sqrt-unprod
associate-+l- rem-square-sqrt log-div
unpow3 cube-mult associate--r+ sum-cubes rem-exp-log pow-sub
rem-cube-cbrt exp-diff associate--l+
associate-+r- cos-sum
sub0-neg neg-sub0 neg-log hypot-udef distribute-rgt-out-- exp-neg unsub-neg associate--r-

series1.4m

Calls

445 calls:

Slowest
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.4s
(- 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 (* (expm1 (log1p (* (/ 1 (- (* 1 1) (* (* 0.3275911 (fabs x)) (* 0.3275911 (fabs x))))) (- 1 (* 0.3275911 (fabs x)))))) 1.061405429))))))))) (exp (- (* (fabs x) (fabs x))))))
1.2s
(fma (- (cbrt x.im)) (* (cbrt x.im) (cbrt x.im)) (* (cbrt x.im) (* (cbrt x.im) (cbrt x.im))))
1.2s
(- 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 (* 0.3275911 (fabs x)))) 1.061405429))))))))) (exp (- (* (fabs x) (fabs x))))))
1.1s
(log (/ (pow (* -2 (log u1)) 0.5) 6))

localize8.9s

regimes8.4s

Accuracy

Total 31.1b remaining (27%)

8.2b20.4%_divideComplex, imaginary part
6.6b-3.9%Octave 3.8, jcobi/2
5.6b40.3%Octave 3.8, jcobi/4
2.9b77.6%Octave 3.8, jcobi/1
2.5b0%_divideComplex, real part

bsearch1.4s

end1.0ms