Details

simplify1.0hr

Calls

18993 calls:

Slowest
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.1s
(* (/ (* (/ (* (* 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.0s
(* (* (* (/ (* (/ 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)) (exp (* (fabs x) (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)) (exp (* (fabs x) (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)) (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))))))
1.9s
(/ (* (* (* (/ (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))))

sample10.0m

Algorithm
87×intervals
Results
6.4m99976×body10240exit
1.7m474167×body80valid
37.2s25603×body1280valid
20.8s20631×body640valid
10.9s69973×body80nan
7.7s10759×body320valid
5.3s1581×body1280nan
3.4s1364×body640nan
2.9s5631×body160valid
1.5s33536×pre80true
1.5s640×body320nan
1.2s1458×body2560valid
599.0ms618×body5120valid
370.0ms327×body160nan

prune5.8m

series1.3m

Calls

450 calls:

Slowest
1.4s
(/ (* (pow (* -2 (log u1)) 0.5) 1) 6)
1.4s
(+ (/ (/ (- (* (* (fma (* 0.9999999999998099 0.9999999999998099) 0.9999999999998099 (* (* (/ -1259.1392167224028 (- 2 z)) (/ -1259.1392167224028 (- 2 z))) (/ -1259.1392167224028 (- 2 z)))) (* (- 1 z) (- 1 z))) (+ (/ -1259.1392167224028 (- 2 z)) 0.9999999999998099)) (* (* 676.5203681218851 676.5203681218851) (fma (- 0.9999999999998099 (/ -1259.1392167224028 (- 2 z))) 0.9999999999998099 (* (/ -1259.1392167224028 (- 2 z)) (/ -1259.1392167224028 (- 2 z)))))) (* (+ (* (/ -1259.1392167224028 (+ (- 1 z) 1)) (/ -1259.1392167224028 (+ (- 1 z) 1))) (- (* 0.9999999999998099 0.9999999999998099) (* (/ -1259.1392167224028 (+ (- 1 z) 1)) 0.9999999999998099))) (* (- 1 z) (- 1 z)))) (- (+ (/ -1259.1392167224028 (+ (- 1 z) 1)) 0.9999999999998099) (/ 676.5203681218851 (- 1 z)))) (/ -176.6150291621406 (- 5 (+ z 1))))
1.2s
(* (pow (* -2 (log u1)) (/ 0.5 2)) (/ 1 6))
1.1s
(+ (* (/ (* (/ 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)) (exp (* (fabs x) (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)) (exp (* (fabs x) (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)) (exp (* (fabs x) (fabs x))))))
1.1s
(* (/ (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))))

rewrite1.1m

Algorithm
146×rewrite-expression-head
Calls

454 calls:

Slowest
19.9s
(+ (/ (- (* (* (+ (/ -1259.1392167224028 (+ (- 1 z) 1)) 0.9999999999998099) (* (cbrt (+ (/ -1259.1392167224028 (+ (- 1 z) 1)) 0.9999999999998099)) (cbrt (+ (/ -1259.1392167224028 (+ (- 1 z) 1)) 0.9999999999998099)))) (cbrt (+ (/ -1259.1392167224028 (+ (- 1 z) 1)) 0.9999999999998099))) (* (/ 676.5203681218851 (- 1 z)) (/ 676.5203681218851 (- 1 z)))) (- (+ (/ -1259.1392167224028 (+ (- 1 z) 1)) 0.9999999999998099) (/ 676.5203681218851 (- 1 z)))) (/ -176.6150291621406 (- 5 (+ z 1))))
4.8s
(* (sqrt (/ 1 (sqrt PI))) (* (sqrt (/ 1 (sqrt PI))) (+ (+ (+ (* 2 (fabs x)) (* (/ 2 3) (* (* (fabs x) (fabs x)) (fabs x)))) (* (/ 1 5) (* (* (* (* (fabs x) (fabs x)) (fabs x)) (fabs x)) (fabs x)))) (* (/ 1 21) (* (* (* (* (* (* (fabs x) (fabs x)) (fabs x)) (fabs x)) (fabs x)) (fabs x)) (fabs x))))))
3.9s
(+ (/ (/ (- (* (* (fma (* 0.9999999999998099 0.9999999999998099) 0.9999999999998099 (* (* (/ -1259.1392167224028 (- 2 z)) (/ -1259.1392167224028 (- 2 z))) (/ -1259.1392167224028 (- 2 z)))) (* (- 1 z) (- 1 z))) (+ (/ -1259.1392167224028 (- 2 z)) 0.9999999999998099)) (* (* 676.5203681218851 676.5203681218851) (fma (- 0.9999999999998099 (/ -1259.1392167224028 (- 2 z))) 0.9999999999998099 (* (/ -1259.1392167224028 (- 2 z)) (/ -1259.1392167224028 (- 2 z)))))) (* (+ (* (/ -1259.1392167224028 (+ (- 1 z) 1)) (/ -1259.1392167224028 (+ (- 1 z) 1))) (- (* 0.9999999999998099 0.9999999999998099) (* (/ -1259.1392167224028 (+ (- 1 z) 1)) 0.9999999999998099))) (* (- 1 z) (- 1 z)))) (- (+ (/ -1259.1392167224028 (+ (- 1 z) 1)) 0.9999999999998099) (/ 676.5203681218851 (- 1 z)))) (/ -176.6150291621406 (- 5 (+ z 1))))
3.5s
(+ (/ (- (* (+ (/ -1259.1392167224028 (+ (- 1 z) 1)) 0.9999999999998099) (+ (/ -1259.1392167224028 (+ (- 1 z) 1)) 0.9999999999998099)) (* (/ 676.5203681218851 (- 1 z)) (/ 676.5203681218851 (- 1 z)))) (- (+ (/ -1259.1392167224028 (+ (- 1 z) 1)) 0.9999999999998099) (/ 676.5203681218851 (- 1 z)))) (/ -176.6150291621406 (- 5 (+ z 1))))
2.8s
(+ (+ (+ (/ -1259.1392167224028 (+ (- 1 z) 1)) 0.9999999999998099) (/ 676.5203681218851 (- 1 z))) (/ -176.6150291621406 (- 5 (+ z 1))))
Rules
20276×*-un-lft-identity
19590×times-frac
11196×add-sqr-sqrt
10263×frac-times
9508×add-cube-cbrt
9242×cbrt-div
6463×flip3-- flip--
5811×distribute-lft-out
3927×associate-*l/
3647×add-exp-log
2862×associate-*r/
2859×sqrt-prod
2319×pow1 prod-diff
2077×add-cbrt-cube
1365×prod-exp
1312×div-exp
1199×associate-/r/
1181×distribute-rgt-in distribute-lft-in
954×flip-+ flip3-+
934×associate-*l*
871×fma-def
824×associate-*r*
779×div-inv
776×frac-add
751×unpow-prod-down
737×associate-/l*
651×cube-prod
633×cbrt-unprod
625×add-log-exp
550×pow-prod-up
514×cbrt-undiv
468×associate-/r*
454×expm1-log1p-u log1p-expm1-u insert-posit16
445×difference-of-squares
440×distribute-lft-out--
428×frac-sub
417×pow-prod-down
360×swap-sqr
357×cbrt-prod
305×unswap-sqr
284×sqrt-div
267×pow-plus
223×1-exp
208×rec-exp
181×sqr-pow
177×associate--r+
167×fma-neg
158×pow-sqr
152×pow-exp
147×log-pow
143×exp-neg
139×exp-sum
137×*-commutative
126×exp-diff
123×neg-sub0
115×sqrt-pow1
109×pow2
108×pow-div
104×pow1/3
101×cube-mult
100×unpow3
93×sub-neg
92×pow1/2
91×associate-/l/
82×frac-2neg clear-num
75×log-prod
74×pow-to-exp
61×sum-log fma-udef
58×pow-flip
57×inv-pow
46×pow-unpow sum-cubes
33×+-commutative rem-sqrt-square
32×diff-log
31×associate--l+
29×pow-pow
28×associate-+l+
27×un-div-inv
26×unpow-prod-up rem-cube-cbrt
24×cube-unmult
23×exp-prod
15×div-sub distribute-rgt-out
13×distribute-rgt1-in
12×hypot-def
11×sin-sum
10×log-div
pow3 associate-+l- cube-div
rem-log-exp hypot-udef
pow-sub
sqrt-unprod rem-square-sqrt
expm1-log1p expm1-udef distribute-rgt-neg-in distribute-rgt-out-- distribute-lft-neg-in
associate-+r- sqrt-undiv neg-log sub0-neg difference-cubes exp-to-pow rem-exp-log unsub-neg associate--r-
associate-+r+ neg-mul-1 cos-sum rem-cbrt-cube

regimes7.9s

Accuracy

Total 18.9b remaining (22.3%)

6.7b36.5%_divideComplex, real part
3.2b75.2%Octave 3.8, jcobi/1
2.0b0%_divideComplex, imaginary part
1.7b74.8%Octave 3.8, jcobi/2
0.8b0%math.cos on complex, imaginary part

localize6.9s

bsearch1.5s

end1.0ms