Details

rewrite10.3m (48.2%)

Algorithm
152×rewrite-expression-head
Calls

443 calls:

826.0ms
(* (+ (/ 1.0 (/ 2.0 (pow (/ 1.0 (fabs x)) 3))) (/ (* (+ (fma 1.875 (/ 1 (pow (fabs x) 6)) (* 0.75 (/ 1 (pow (fabs x) 4)))) 1) 1.0) (fabs x))) (* (/ 1.0 (sqrt PI)) (pow (exp (fabs x)) (/ (fabs x) 2))))
787.0ms
(/ (sqrt (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2.0 1.0))) (+ (+ alpha beta) (* 2.0 1.0)))) (/ (+ (+ alpha beta) (fma 2.0 1.0 1.0)) (sqrt (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2.0 1.0))) (+ (+ alpha beta) (* 2.0 1.0))))))
576.0ms
(/ (sqrt (+ (+ (* (* x (* (pow (* x x) 3) (pow x 3))) (+ 0.0008327945 (* (* x x) (* 2.0 0.0001789971)))) (fma (* 0.2909738639 x) (pow x 3) (fma (* 0.7715471019 x) x 1.0))) (* (pow x 6) (+ 0.0694555761 (* (* x x) 0.0140005442))))) (/ (+ (+ (* (pow (* x x) 4) (+ 0.0005064034 (* (* x x) 0.0001789971))) (fma (* 0.1049934947 x) x 1.0)) (* (pow x 4) (+ 0.0424060604 (* (* x x) 0.0072644182)))) (sqrt (+ (+ (* (* x (* (pow (* x x) 3) (pow x 3))) (+ 0.0008327945 (* (* x x) (* 2.0 0.0001789971)))) (fma (* 0.2909738639 x) (pow x 3) (fma (* 0.7715471019 x) x 1.0))) (* (pow x 6) (+ 0.0694555761 (* (* x x) 0.0140005442)))))))
491.0ms
(/ x (/ (sqrt (+ (+ (* (* x (* (pow (* x x) 3) (pow x 3))) (+ 0.0008327945 (* (* x x) (* 2.0 0.0001789971)))) (fma (* 0.2909738639 x) (pow x 3) (fma (* 0.7715471019 x) x 1.0))) (* (pow x 6) (+ 0.0694555761 (* (* x x) 0.0140005442))))) (/ (+ (+ (* (pow (* x x) 4) (+ 0.0005064034 (* (* x x) 0.0001789971))) (fma (* 0.1049934947 x) x 1.0)) (* (pow x 4) (+ 0.0424060604 (* (* x x) 0.0072644182)))) (sqrt (+ (+ (* (* x (* (pow (* x x) 3) (pow x 3))) (+ 0.0008327945 (* (* x x) (* 2.0 0.0001789971)))) (fma (* 0.2909738639 x) (pow x 3) (fma (* 0.7715471019 x) x 1.0))) (* (pow x 6) (+ 0.0694555761 (* (* x x) 0.0140005442))))))))
464.0ms
(/ (+ (+ (* (* x (* (pow (* x x) 3) (pow x 3))) (+ 0.0008327945 (* (* x x) (* 2.0 0.0001789971)))) (fma (* 0.2909738639 x) (pow x 3) (fma (* 0.7715471019 x) x 1.0))) (* (pow x 6) (+ 0.0694555761 (* (* x x) 0.0140005442)))) (+ (+ (* (pow (* x x) 4) (+ 0.0005064034 (* (* x x) 0.0001789971))) (fma (* 0.1049934947 x) x 1.0)) (* (pow x 4) (+ 0.0424060604 (* (* x x) 0.0072644182)))))
Rules
108778×times-frac
74900×*-un-lft-identity
40844×add-sqr-sqrt
40603×sqrt-prod
39440×add-cube-cbrt
19656×distribute-lft-out
5934×associate-/r/
3132×prod-diff
3102×div-inv
3090×flip-+ flip3-+
2492×add-exp-log
2385×unpow-prod-down
2250×cube-prod
1770×add-cbrt-cube
1275×pow1
1227×associate-/r*
895×associate-*r*
788×prod-exp
732×associate-*l* div-exp
652×cbrt-prod
609×add-log-exp
517×associate-/l*
487×cbrt-unprod
441×log1p-expm1-u expm1-log1p-u
400×cbrt-undiv
384×difference-of-squares
383×sqr-pow
358×sqrt-div
309×associate-*r/
308×fma-neg
305×pow-prod-down
292×unpow3 cube-mult
285×distribute-lft-out--
231×unswap-sqr
189×log-pow
185×distribute-rgt-in distribute-lft-in
184×frac-add
168×1-exp
146×swap-sqr
128×flip3-- flip--
125×fma-def associate-*l/
124×exp-sum
121×*-commutative
117×associate--l+
115×log-prod
104×sqrt-pow1
96×pow1/3
94×cbrt-div
93×associate-/l/ rec-exp pow-exp
87×frac-2neg clear-num
86×pow1/2
76×pow-unpow
74×frac-times
73×sub-neg
72×pow-to-exp
59×diff-log
54×associate-+l+ fma-udef
45×pow-prod-up
41×rem-sqrt-square
38×sum-log
35×pow-sqr
24×pow-pow
21×+-commutative
19×pow-plus
18×pow2
16×hypot-udef
15×rem-cube-cbrt div-sub
13×distribute-lft-neg-in hypot-def neg-mul-1 distribute-rgt-neg-in
12×cube-div exp-prod pow-flip
11×inv-pow
10×unpow2
rem-log-exp
associate--l-
sqrt-unprod
un-div-inv
difference-cubes sin-sum associate-+l- associate--r+
expm1-log1p rem-square-sqrt expm1-udef log-div
rem-exp-log exp-diff log1p-udef log1p-expm1 frac-sub distribute-rgt-neg-out
sqrt-pow2 distribute-lft-neg-out cos-sum rem-cbrt-cube

prune7.6m (35.7%)

sample2.4m (11.2%)

Algorithm
99×intervals
Results
52.2s12539×body10240exit
36.7s460551×body80valid
15.9s27794×body1280valid
7.6s21037×body640valid
4.8s70025×body80nan
3.4s1673×body1280nan
2.6s10822×body320valid
2.3s1408×body640nan
2.0s9354×body160valid
1.6s49536×pre80true
805.0ms706×body320nan
640.0ms1515×body2560valid
272.0ms623×body5120valid
248.0ms325×body160nan

simplify27.5s (2.1%)

Algorithm
250×egg-herbie

regimes16.5s (1.3%)

Accuracy

Total 45.5b remaining (33.5%)

Threshold costs 5.1b (3.8%)

8.7b31.6%_divideComplex, imaginary part
6.8b-17.7%math.sqrt on complex, imaginary part, im greater than 0 branch
6.6b40.1%_divideComplex, real part
5.5b14.5%Octave 3.8, jcobi/2
4.5b24.6%math.sqrt on complex, real part

series15.2s (1.2%)

Calls

440 calls:

1.0s
(fma (cbrt (+ (/ (/ x (+ wj 1)) (exp wj)) wj)) (* (cbrt (+ (/ (/ x (+ wj 1)) (exp wj)) wj)) (cbrt (+ (/ (/ x (+ wj 1)) (exp wj)) wj))) (/ (- (pow (cbrt wj) 3)) (+ wj 1)))
845.0ms
(/ (* (- (* (+ (+ alpha beta) (* 2.0 i)) (+ (+ alpha beta) (* 2.0 i))) 1.0) (fma i 2.0 (+ alpha beta))) (/ (fma beta alpha (* i (+ (+ alpha beta) i))) (fma i 2.0 (+ alpha beta))))
844.0ms
(/ (* (* (- (* (+ (+ alpha beta) (* 2.0 i)) (+ (+ alpha beta) (* 2.0 i))) 1.0) (fma i 2.0 (+ alpha beta))) (fma i 2.0 (+ alpha beta))) (fma beta alpha (* i (+ (+ alpha beta) i))))
475.0ms
(/ (* (* (/ i (+ (+ (+ alpha beta) (* 2.0 i)) (sqrt 1.0))) (/ (+ (+ alpha beta) i) (- (+ (+ alpha beta) (* 2.0 i)) (sqrt 1.0)))) (sqrt (fma beta alpha (* i (+ (+ alpha beta) i))))) (/ (fma i 2.0 (+ alpha beta)) (/ (sqrt (fma beta alpha (* i (+ (+ alpha beta) i)))) (fma i 2.0 (+ alpha beta)))))
416.0ms
(* (* (/ i (+ (+ (+ alpha beta) (* 2.0 i)) (sqrt 1.0))) (/ (+ (+ alpha beta) i) (- (+ (+ alpha beta) (* 2.0 i)) (sqrt 1.0)))) (sqrt (fma beta alpha (* i (+ (+ alpha beta) i)))))

localize2.2s (0.2%)

bsearch676.0ms (0.1%)

end1.0ms (0.0%)