Details

simplify25.7m (45.6%)

prune16.4m (29.1%)

rewrite7.1m (12.7%)

Algorithm
163×rewrite-expression-head
Calls

509 calls:

1.2m
(* (/ 1 (* (sqrt (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 (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)))))))) (* (/ (+ (+ (+ (+ (+ 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)))))) x))
1.1m
(* (* (* (sqrt (* 2 PI)) (/ PI (sin (* PI z)))) (* (/ 1 (* (cbrt (exp (+ (- 7 z) 0.5))) (cbrt (exp (+ (- 7 z) 0.5))))) (/ (pow (+ (- 7 z) 0.5) (- (- 1 z) (- 1 0.5))) (cbrt (exp (+ (- 7 z) 0.5)))))) (+ (+ (/ 9.984369578019572e-06 (- 7 z)) (/ -0.13857109526572012 (- 6 z))) (+ (+ (/ 1.5056327351493116e-07 (- 8 z)) (+ (+ (/ -176.6150291621406 (- 4 z)) 0.9999999999998099) (+ (/ 771.3234287776531 (+ 2 (- 1 z))) (+ (/ 676.5203681218851 (- 1 z)) (/ -1259.1392167224028 (- 2 z)))))) (/ 12.507343278686905 (- 5 z)))))
26.3s
(* (/ 1 (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)))))) (* (/ (+ (+ (+ (+ (+ 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)))))) x))
17.6s
(* (/ (+ (+ (+ (+ (+ 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)
17.2s
(* (/ (* (pow (+ (- z -6) 0.5) (+ (- z 1) 0.5)) (sqrt (* PI 2))) (exp (+ (- z -6) 0.5))) (+ (+ (+ (/ 9.984369578019572e-06 (- z -6)) (/ 1.5056327351493116e-07 (+ 7 z))) (+ (/ -0.13857109526572012 (+ -1 (- z -6))) (/ 12.507343278686905 (+ z 4)))) (+ (+ (+ 0.9999999999998099 (+ (/ 676.5203681218851 z) (/ 771.3234287776531 (+ 2 z)))) (/ -1259.1392167224028 (- z -1))) (/ -176.6150291621406 (+ z 3)))))
Rules
444307×frac-times
364408×frac-add
358455×associate-*r/
248458×frac-sub
235583×*-un-lft-identity
217133×flip3-- flip--
212898×times-frac
116247×flip-+ flip3-+
103417×associate-*l/
102274×distribute-lft-out
68063×add-sqr-sqrt
66423×add-cube-cbrt
55108×sqrt-prod
7581×exp-neg
7160×associate-/l*
6510×exp-diff
6498×neg-sub0
4618×associate-/r/
4303×pow1
3991×add-exp-log
3194×prod-diff
2761×div-inv
2456×add-cbrt-cube
1874×prod-exp
1346×pow-prod-up
1103×un-div-inv
1072×associate-*r*
1067×associate-*l*
951×cbrt-unprod
913×distribute-rgt-in distribute-lft-in
906×pow-prod-down
897×div-exp
883×unpow-prod-down
815×cube-prod
745×pow-plus
687×associate-+l+
645×add-log-exp
629×distribute-lft-out--
510×log1p-expm1-u
509×expm1-log1p-u insert-posit16
464×cbrt-prod
451×sqr-pow
430×difference-of-squares
425×cbrt-undiv
418×pow-sqr
401×associate-/r*
381×cbrt-div
367×cube-mult
365×unpow3
345×unswap-sqr
284×swap-sqr
273×sqrt-div
260×pow2
259×log-pow
251×unpow-prod-up
245×exp-sum
236×1-exp
235×rec-exp
183×log-prod
167×*-commutative
164×fma-neg
149×pow1/3
131×sqrt-pow1
111×fma-def
106×pow-flip
98×inv-pow
92×pow1/2
85×pow-exp
83×frac-2neg clear-num
81×associate-/l/
77×associate--r+
72×sub-neg
64×pow3
60×pow-to-exp fma-udef
59×associate--l+
56×exp-prod
42×cube-div
38×diff-log
34×rem-sqrt-square
33×sum-log cube-unmult
24×cos-sum
22×+-commutative hypot-udef
15×pow-unpow
14×div-sub distribute-rgt-out
13×distribute-rgt1-in sin-sum
10×pow-pow log-div
hypot-def
associate-+r+ rem-exp-log associate-+l- associate--r-
rem-log-exp
sqrt-unprod
rem-cube-cbrt pow-div rem-cbrt-cube
pow-sub
rem-square-sqrt
expm1-log1p expm1-udef associate-+r- log1p-expm1 difference-cubes log1p-udef

sample3.9m (6.9%)

Algorithm
98×intervals
Results
1.1m426824×body80valid
49.0s30528×body1280valid
27.2s11981×body10240exit
26.1s23337×body640valid
11.1s70101×body80nan
9.1s11954×body320valid
4.8s9940×body160valid
4.6s1551×body1280nan
4.0s1293×body640nan
2.5s41536×pre80true
2.3s1519×body2560valid
1.3s684×body320nan
713.0ms593×body5120valid
416.0ms341×body160nan

series3.0m (5.3%)

Calls

509 calls:

23.0s
(fma (- (/ (pow (* (* (/ 1 (+ 1 (* 0.3275911 (fabs x)))) (- (* 0.254829592 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))))))) (* (/ 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))))) 3) (* (- 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)))))))) (- 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))))))))))) (/ 1 (- 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))))))))) (* (/ (pow (* (* (/ 1 (+ 1 (* 0.3275911 (fabs x)))) (- (* 0.254829592 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))))))) (* (/ 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))))) 3) (* (- 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)))))))) (- 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)))))))))) (/ 1 (- 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)))))))))))
20.6s
(fma (* 1 1) 1 (- (* (/ (pow (* (* (/ 1 (+ 1 (* 0.3275911 (fabs x)))) (- (* 0.254829592 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))))))) (* (/ 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))))) 3) (* (- 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)))))))) (- 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)))))))))) (/ 1 (- 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))))))))))))
19.4s
(- (pow 1 3) (/ (pow (* (* (/ 1 (+ 1 (* 0.3275911 (fabs x)))) (- (* 0.254829592 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))))))) (* (/ 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))))) 3) (pow (- 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)))))))) 3)))
4.3s
(- (pow 1 3) (pow (* (* (/ 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))))) 3))
3.8s
(+ (* (* (* (/ 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 (+ 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 (* (* (/ 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)))))))

regimes9.4s (0.3%)

Accuracy

Total 23.9b remaining (18.1%)

Threshold costs 5.8b (4.4%)

7.2b32.4%_divideComplex, imaginary part
7.2b32.9%_divideComplex, real part
2.5b0%Octave 3.8, jcobi/4
1.1b33.8%Jmat.Real.lambertw, newton loop step
0.7b0%math.log10 on complex, imaginary part

localize8.8s (0.3%)

bsearch924.0ms (0.0%)

end1.0ms (0.0%)