Details

simplify8.3m (42.8%)

sample4.0m (20.7%)

Algorithm
100×intervals
Results
1.4m15785×body10240exit
54.6s456200×body80valid
30.7s30262×body1280valid
16.8s22978×body640valid
6.6s71216×body80nan
5.8s3120×body1280nan
5.2s12176×body320valid
4.7s2495×body640nan
3.1s9978×body160valid
1.7s1365×body320nan
1.6s49536×pre80true
993.0ms1512×body2560valid
400.0ms580×body5120valid
363.0ms681×body160nan

rewrite3.2m (16.7%)

Algorithm
151×rewrite-expression-head
Calls

464 calls:

1.5m
(* (/ (* (pow (+ (+ (- z 1.0) 7.0) 0.5) (+ (- z 1.0) 0.5)) (sqrt (* PI 2.0))) (exp (+ (+ (- z 1.0) 7.0) 0.5))) (+ (+ (+ (/ 9.984369578019572e-06 (+ (- z 1.0) 7.0)) (/ 1.5056327351493116e-07 (+ (- z 1.0) 8.0))) (/ 12.507343278686905 (+ (- z 1.0) 5.0))) (+ (/ -176.6150291621406 (+ (- z 1.0) 4.0)) (+ (+ (/ -0.13857109526572012 (+ (- z 1.0) 6.0)) (/ 771.3234287776531 (+ (- z 1.0) 3.0))) (+ (/ 676.5203681218851 z) (+ (/ -1259.1392167224028 (+ (- z 1.0) 2.0)) 0.9999999999998099))))))
25.1s
(* (/ (+ (+ (+ (+ (+ 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)
24.1s
(+ (/ -1259.1392167224028 (+ (- z) 2.0)) (+ (+ (+ (+ 0.9999999999998099 (/ 676.5203681218851 (- 1.0 z))) (/ -176.6150291621406 (+ 4.0 (- z)))) (/ 771.3234287776531 (+ 3.0 (- z)))) (+ (/ 12.507343278686905 (+ 5.0 (- z))) (+ (/ 1.5056327351493116e-07 (+ 8.0 (- z))) (+ (/ 9.984369578019572e-06 (+ (- z) 7.0)) (/ -0.13857109526572012 (+ 6.0 (- z))))))))
13.7s
(/ (+ (+ (+ (+ (+ 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)))))
5.5s
(* (- (+ (/ 9.984369578019572e-06 (+ (- z 1.0) 7.0)) (/ 1.5056327351493116e-07 (+ (- z 1.0) 8.0))) (/ 12.507343278686905 (+ (- z 1.0) 5.0))) (fma -176.6150291621406 (* (* (- (/ -0.13857109526572012 (+ (- z 1.0) 6.0)) (/ 771.3234287776531 (+ (- z 1.0) 3.0))) z) (fma (/ -1259.1392167224028 (+ (- z 1.0) 2.0)) (/ -1259.1392167224028 (+ (- z 1.0) 2.0)) (* 0.9999999999998099 (- 0.9999999999998099 (/ -1259.1392167224028 (+ (- z 1.0) 2.0)))))) (* (+ (- z 1.0) 4.0) (fma (- (* (/ -0.13857109526572012 (+ (- z 1.0) 6.0)) (/ -0.13857109526572012 (+ (- z 1.0) 6.0))) (* (/ 771.3234287776531 (+ (- z 1.0) 3.0)) (/ 771.3234287776531 (+ (- z 1.0) 3.0)))) (* (fma (/ -1259.1392167224028 (+ (- z 1.0) 2.0)) (/ -1259.1392167224028 (+ (- z 1.0) 2.0)) (* 0.9999999999998099 (- 0.9999999999998099 (/ -1259.1392167224028 (+ (- z 1.0) 2.0))))) z) (* (- (/ -0.13857109526572012 (+ (- z 1.0) 6.0)) (/ 771.3234287776531 (+ (- z 1.0) 3.0))) (fma 676.5203681218851 (fma (/ -1259.1392167224028 (+ (- z 1.0) 2.0)) (/ -1259.1392167224028 (+ (- z 1.0) 2.0)) (* 0.9999999999998099 (- 0.9999999999998099 (/ -1259.1392167224028 (+ (- z 1.0) 2.0))))) (* z (+ (pow (/ -1259.1392167224028 (+ (- z 1.0) 2.0)) 3) (pow 0.9999999999998099 3)))))))))
Rules
17361×*-un-lft-identity
14131×times-frac
10111×add-sqr-sqrt
7715×add-cube-cbrt
4100×distribute-lft-out
3316×prod-diff
2085×sqrt-prod
2011×add-exp-log
1807×associate-*r*
1639×add-cbrt-cube
1237×pow1
1229×distribute-lft-out--
1209×distribute-rgt-in distribute-lft-in
1024×associate-*l*
906×frac-add
735×difference-of-squares
700×add-log-exp
634×flip-+ flip3-+
594×div-inv
587×associate-/l* unpow-prod-down
583×prod-exp
566×associate-/r/
560×cbrt-prod
518×associate-/r*
467×log1p-expm1-u
466×expm1-log1p-u
449×div-exp
436×cbrt-unprod
339×cbrt-undiv
298×unswap-sqr
290×cube-prod
286×pow-prod-down
264×associate-*r/
236×swap-sqr
223×distribute-rgt-neg-in
219×frac-times
192×sqr-pow
183×fma-def
179×fma-neg
150×log-pow
135×exp-sum
133×*-commutative
126×associate-*l/
118×sum-log
96×frac-2neg clear-num
91×flip3-- flip--
86×distribute-lft-neg-in
84×pow-exp
83×pow1/3
82×pow-unpow
77×fma-udef
73×associate--r+
67×sub-neg
64×associate-/l/ sqrt-pow1
60×cbrt-div
58×unpow3 cube-mult
52×sqrt-div
49×pow-to-exp associate--l+
47×pow1/2
46×1-exp
44×rec-exp
41×log-prod diff-log
30×rem-cube-cbrt
29×pow-prod-up
28×pow-pow
25×rem-sqrt-square
23×pow-sqr
22×+-commutative neg-mul-1
18×pow-plus
17×hypot-udef
15×cube-div
14×pow2
13×exp-diff pow-flip div-sub
12×associate-+l-
10×neg-sub0
inv-pow exp-neg
un-div-inv frac-sub
associate-+l+ associate-+r+
cos-sum log1p-udef log1p-expm1 pow-sub expm1-log1p expm1-udef rem-log-exp associate--l-
sin-sum unpow-prod-up
exp-prod associate--r-
unpow1/3 distribute-neg-in unpow2
difference-cubes sqrt-pow2 sqrt-unprod pow3 rem-square-sqrt distribute-frac-neg distribute-rgt-out-- rem-cbrt-cube distribute-rgt-neg-out log-div

prune1.9m (9.7%)

series1.7m (8.8%)

Calls

464 calls:

4.7s
(* (+ (sqrt (* d1 (+ (- d2 d3) d4))) d1) (- (sqrt (* d1 (+ (- d2 d3) d4))) d1))
3.1s
(* (/ i (* (+ (sqrt 1.0) (fma 2.0 i (+ alpha beta))) (/ (fma 2.0 i (+ alpha beta)) (sqrt (fma beta alpha (* i (+ (+ alpha beta) i))))))) (/ (/ (+ (+ alpha beta) i) (/ (fma 2.0 i (+ alpha beta)) (sqrt (fma beta alpha (* i (+ (+ alpha beta) i)))))) (- (fma 2.0 i (+ alpha beta)) (sqrt 1.0))))
2.6s
(fma -1259.1392167224028 (* (* (- 4.0 z) (- 0.9999999999998099 (/ 676.5203681218851 (- 1.0 z)))) (* (- 3.0 z) (- (- (/ 12.507343278686905 (- 5.0 z)) (/ 1.5056327351493116e-07 (- 8.0 z))) (+ (/ -0.13857109526572012 (- 6.0 z)) (/ 9.984369578019572e-06 (+ (- z) 7.0)))))) (* (+ (- z) 2.0) (fma (fma (fma (- (* 0.9999999999998099 0.9999999999998099) (* (/ 676.5203681218851 (- 1.0 z)) (/ 676.5203681218851 (- 1.0 z)))) (- 4.0 z) (* (- 0.9999999999998099 (/ 676.5203681218851 (- 1.0 z))) -176.6150291621406)) (- 3.0 z) (* (+ (sqrt 0.9999999999998099) (sqrt (/ 676.5203681218851 (- 1.0 z)))) (* (- (sqrt 0.9999999999998099) (sqrt (/ 676.5203681218851 (- 1.0 z)))) (* (- 4.0 z) 771.3234287776531)))) (- (- (/ 12.507343278686905 (- 5.0 z)) (/ 1.5056327351493116e-07 (- 8.0 z))) (+ (/ -0.13857109526572012 (- 6.0 z)) (/ 9.984369578019572e-06 (+ (- z) 7.0)))) (* (* (- 4.0 z) (- 0.9999999999998099 (/ 676.5203681218851 (- 1.0 z)))) (* (- 3.0 z) (fma (/ 12.507343278686905 (- 5.0 z)) (/ 12.507343278686905 (- 5.0 z)) (- (* (+ (/ 1.5056327351493116e-07 (- 8.0 z)) (+ (/ -0.13857109526572012 (- 6.0 z)) (/ 9.984369578019572e-06 (+ (- z) 7.0)))) (+ (/ 1.5056327351493116e-07 (- 8.0 z)) (+ (/ -0.13857109526572012 (- 6.0 z)) (/ 9.984369578019572e-06 (+ (- z) 7.0))))))))))))
1.4s
(* (expm1 (log1p (/ (fma 0.0001789971 (* (pow x 6) (pow x 4)) (fma (pow x 8) 0.0005064034 (fma 0.0072644182 (pow x 6) (fma (pow x 4) 0.0424060604 (fma 0.1049934947 (* x x) 1.0))))) (fma 0.0001789971 (* 2.0 (pow (pow x 4) 3)) (fma (* (pow x 6) (pow x 4)) 0.0008327945 (fma 0.0140005442 (pow x 8) (fma 0.0694555761 (pow x 6) (fma 0.2909738639 (pow x 4) (fma (* 0.7715471019 x) x 1.0))))))))) x)
1.3s
(/ (/ (* i (+ (+ alpha beta) i)) (/ (* (fma 2.0 i (+ alpha beta)) (fma 2.0 i (+ alpha beta))) (fma beta alpha (* i (+ (+ alpha beta) i))))) (- (* (+ (+ alpha beta) (* 2.0 i)) (+ (+ alpha beta) (* 2.0 i))) 1.0))

regimes8.1s (0.7%)

Accuracy

Total 28.3b remaining (20.7%)

Threshold costs 7.2b (5.3%)

8.1b32.8%_divideComplex, imaginary part
6.7b37.4%_divideComplex, real part
2.9b77.1%Octave 3.8, jcobi/1
2.4b36%Octave 3.8, jcobi/4
1.0b59.1%Octave 3.8, jcobi/3

localize4.5s (0.4%)

bsearch1.3s (0.1%)

end1.0ms (0.0%)