Details

simplify14.8m (47.8%)

rewrite6.8m (22.0%)

Algorithm
164×rewrite-expression-head
Calls

523 calls:

30.2s
(* (* (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)
25.2s
(* (* (/ 1 (sqrt PI)) (exp (* (fabs x) (fabs x)))) (+ (+ (+ (/ 1 (fabs x)) (* (/ 1 2) (* (* (/ 1 (fabs x)) (/ 1 (fabs x))) (/ 1 (fabs x))))) (* (/ 3 4) (* (* (* (* (/ 1 (fabs x)) (/ 1 (fabs x))) (/ 1 (fabs x))) (/ 1 (fabs x))) (/ 1 (fabs x))))) (* (/ 15 8) (* (* (* (* (* (/ 1 (* (fabs x) (fabs x))) (/ 1 (fabs x))) (/ 1 (fabs x))) (/ 1 (fabs x))) (/ 1 (fabs x))) (/ 1 (fabs x))))))
16.1s
(* (/ (+ (+ (+ (+ (+ 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)
15.5s
(* (* (/ (* (pow (+ 0.5 (- z -6)) (- z (- 1 0.5))) (sqrt (* PI 2))) (exp (+ 0.5 z))) (exp -6)) (+ (+ (+ (/ 9.984369578019572e-06 (+ z 6)) (/ 1.5056327351493116e-07 (+ z 7))) (/ -0.13857109526572012 (+ z 5))) (+ (+ (+ (/ 12.507343278686905 (+ z 4)) 0.9999999999998099) (+ (+ (/ -1259.1392167224028 (+ 1 z)) (/ 676.5203681218851 z)) (/ 771.3234287776531 (+ z 2)))) (/ -176.6150291621406 (+ 3 z)))))
9.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)))))
Rules
4653022×frac-times
3547238×associate-*l/
2357600×frac-add
2296286×associate-*r/
737240×un-div-inv
36721×flip-+ flip3-+
9317×times-frac
8832×*-un-lft-identity
6728×add-sqr-sqrt
5232×add-cube-cbrt
3461×sqrt-prod
2848×add-exp-log
2713×pow1
1889×add-cbrt-cube
1682×distribute-lft-out
1301×associate-*r*
1206×add-log-exp
1189×prod-exp
1027×associate-*l*
679×pow-prod-up
635×associate-/r*
622×associate-/l* cbrt-prod
590×cbrt-unprod
523×insert-posit16
515×cbrt-div
502×div-exp
480×associate-/r/
467×pow-prod-down
444×sum-log
427×sqrt-pow1
405×log-pow
372×sqrt-div
363×div-inv
355×cbrt-undiv
350×unswap-sqr
344×swap-sqr
315×pow-plus
295×difference-of-squares
251×pow1/2
229×distribute-lft-out--
227×flip3-- flip--
212×pow-sqr
194×pow-exp
165×*-commutative
163×associate-/l/
135×pow2
128×unpow-prod-down
125×pow1/3
104×pow-to-exp
100×frac-2neg clear-num
92×1-exp
91×rec-exp
85×log-prod
76×rem-sqrt-square
65×sub-neg
58×+-commutative
54×sqr-pow
53×distribute-rgt-in distribute-lft-in
51×pow-flip
49×diff-log
47×inv-pow
42×exp-sum
36×log-div
33×exp-prod
28×cube-unmult
27×div-sub
20×associate-+l+ unpow-prod-up frac-sub
17×pow3
14×rem-log-exp
13×associate--l+
12×associate-+r+
11×rem-exp-log
exp-diff pow-unpow associate-+l-
distribute-rgt-out
pow-sub
pow-pow
associate--r- distribute-rgt1-in
sqrt-unprod associate--r+ rem-square-sqrt
associate-+r- sum-cubes cos-sum
remove-posit16 sin-sum sqrt-undiv rem-cbrt-cube
associate--l- distribute-rgt-out-- count-2

sample5.0m (16.2%)

Algorithm
99×intervals
Results
1.6m15179×body10240exit
1.2m436230×body80valid
43.8s30002×body1280valid
24.3s22692×body640valid
10.2s70927×body80nan
9.7s2903×body1280nan
7.8s11733×body320valid
7.7s2420×body640nan
7.0s10381×body160valid
2.5s49536×pre80true
2.2s1225×body320nan
1.3s1470×body2560valid
753.0ms640×body160nan
550.0ms586×body5120valid

prune2.2m (7.2%)

series1.7m (5.5%)

Calls

523 calls:

7.6s
(+ (* (* (/ (* (+ beta alpha) (/ (- beta alpha) (+ (+ beta alpha) (* 2 i)))) (+ (+ 2.0 alpha) (+ beta (* 2 i)))) (/ (* (+ beta alpha) (/ (- beta alpha) (+ (+ beta alpha) (* 2 i)))) (+ (+ 2.0 alpha) (+ beta (* 2 i))))) (/ (* (+ beta alpha) (/ (- beta alpha) (+ (+ beta alpha) (* 2 i)))) (+ (+ 2.0 alpha) (+ beta (* 2 i))))) (* (* 1.0 1.0) 1.0))
3.5s
(* (/ (* i (/ (+ (+ alpha beta) i) (+ (+ alpha beta) (* 2 i)))) (+ (+ (+ alpha beta) (* 2 i)) (sqrt 1.0))) (/ (/ (+ (* beta alpha) (* i (+ (+ alpha beta) i))) (+ (+ alpha beta) (* 2 i))) (- (+ (+ alpha beta) (* 2 i)) (sqrt 1.0))))
3.1s
(* (/ (/ (* i (+ (+ alpha beta) i)) (+ (+ alpha beta) (* 2 i))) (+ (+ (+ alpha beta) (* 2 i)) (sqrt 1.0))) (/ (/ (+ (* beta alpha) (* i (+ (+ alpha beta) i))) (+ (+ alpha beta) (* 2 i))) (- (+ (+ alpha beta) (* 2 i)) (sqrt 1.0))))
2.8s
(* (+ (sqrt (+ (- (* d1 d2) (* d1 d3)) (* d4 d1))) d1) (- (sqrt (+ (- (* d1 d2) (* d1 d3)) (* d4 d1))) d1))
2.4s
(- (* 1 1) (* (/ (+ (/ (* (cbrt (+ (/ (+ (/ (+ (/ 1.061405429 (+ 1 (* (fabs x) 0.3275911))) -1.453152027) (+ 1 (* (fabs x) 0.3275911))) 1.421413741) (+ 1 (* (fabs x) 0.3275911))) -0.284496736)) (cbrt (+ (/ (+ (/ (+ (/ 1.061405429 (+ 1 (* (fabs x) 0.3275911))) -1.453152027) (+ 1 (* (fabs x) 0.3275911))) 1.421413741) (+ 1 (* (fabs x) 0.3275911))) -0.284496736))) (/ (+ 1 (* (fabs x) 0.3275911)) (cbrt (+ (/ (+ (/ (+ (/ 1.061405429 (+ 1 (* (fabs x) 0.3275911))) -1.453152027) (+ 1 (* (fabs x) 0.3275911))) 1.421413741) (+ 1 (* (fabs x) 0.3275911))) -0.284496736)))) 0.254829592) (* (+ 1 (* (fabs x) 0.3275911)) (exp (* (fabs x) (fabs x))))) (/ (+ (/ (+ (/ 1.421413741 (+ 1 (* (fabs x) 0.3275911))) (- (/ (/ 1.061405429 (+ 1 (* (fabs x) 0.3275911))) (* (+ 1 (* (fabs x) 0.3275911)) (+ 1 (* (fabs x) 0.3275911)))) (+ 0.284496736 (/ 1.453152027 (* (+ 1 (* (fabs x) 0.3275911)) (+ 1 (* (fabs x) 0.3275911))))))) (+ 1 (* (fabs x) 0.3275911))) 0.254829592) (* (+ 1 (* (fabs x) 0.3275911)) (exp (* (fabs x) (fabs x)))))))

regimes12.3s (0.7%)

Accuracy

Total 105.6b remaining (43.3%)

Threshold costs 4.5b (1.8%)

17.5b41.3%math.log10 on complex, real part
12.5b37.2%math.sqrt on complex, imaginary part, im greater than 0 branch
10.6b63%math.sqrt on complex, real part
10.4b54.5%math.log/1 on complex, real part
9.6b58.5%math.log/2 on complex, real part

localize9.1s (0.5%)

bsearch3.1s (0.2%)

end1.0ms (0.0%)