Details

rewrite11.8m (77.5%)

Algorithm
155×rewrite-expression-head
Calls

468 calls:

15.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))))) x)
10.0s
(* (sqrt (+ (+ (+ (+ (+ 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))))) (* (sqrt (+ (+ (+ (+ (+ 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))))) (/ x (+ (+ (+ (* (* (pow x 2) (* x (pow x 3))) 0.0694555761) 1.0) (* (pow x 2) (+ 0.7715471019 (* 0.2909738639 (pow x 2))))) (+ (* (* (pow x 2) (* (pow x 2) (* x (pow x 3)))) 0.0140005442) (* (pow x 2) (+ (* 0.0008327945 (* (* (* (* x x) (* x x)) (* x x)) (* x x))) (* (* 2.0 0.0001789971) (* (* (* (* (* x x) (* x x)) (* x x)) (* x x)) (* x x))))))))))
9.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)))))
8.5s
(* (+ (+ (+ (+ (+ 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)))) (/ x (+ (+ (+ (* (* (pow x 2) (* x (pow x 3))) 0.0694555761) 1.0) (* (pow x 2) (+ 0.7715471019 (* 0.2909738639 (pow x 2))))) (+ (* (* (pow x 2) (* (pow x 2) (* x (pow x 3)))) 0.0140005442) (* (pow x 2) (+ (* 0.0008327945 (* (* (* (* x x) (* x x)) (* x x)) (* x x))) (* (* 2.0 0.0001789971) (* (* (* (* (* x x) (* x x)) (* x x)) (* x x)) (* x x)))))))))
7.7s
(* (sqrt (+ (+ (+ (+ (+ 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))))) (/ x (+ (+ (+ (* (* (pow x 2) (* x (pow x 3))) 0.0694555761) 1.0) (* (pow x 2) (+ 0.7715471019 (* 0.2909738639 (pow x 2))))) (+ (* (* (pow x 2) (* (pow x 2) (* x (pow x 3)))) 0.0140005442) (* (pow x 2) (+ (* 0.0008327945 (* (* (* (* x x) (* x x)) (* x x)) (* x x))) (* (* 2.0 0.0001789971) (* (* (* (* (* x x) (* x x)) (* x x)) (* x x)) (* x x)))))))))
Rules
7486×times-frac
6918×*-un-lft-identity
6170×add-sqr-sqrt
4526×add-cube-cbrt
3800×add-exp-log
3159×add-cbrt-cube
3104×pow1
2322×sqrt-prod
2117×prod-exp
1782×cbrt-unprod
1683×pow-prod-down
1478×associate-*r*
1056×associate-*l*
970×distribute-lft-out
707×flip-+ flip3-+
705×add-log-exp
681×associate-/l*
554×associate-/r/
480×div-exp
474×cbrt-prod
468×sqrt-div
422×associate-*r/
396×difference-of-squares
395×associate-/r*
384×frac-times
346×unswap-sqr
317×unpow-prod-down div-inv
295×cbrt-undiv
294×distribute-lft-out--
274×associate-*l/
227×log-pow
220×sqrt-pow1
204×cbrt-div
203×swap-sqr
180×cube-prod
172×frac-add
159×pow1/2 log-prod
146×*-commutative
126×pow1/3
125×sqr-pow
118×pow-exp
117×flip3-- flip--
107×associate-/l/
99×pow-unpow
97×distribute-rgt-in distribute-lft-in
96×pow-prod-up
86×pow-to-exp
76×rem-sqrt-square
75×frac-2neg clear-num
72×sum-log
68×pow-sqr
66×sub-neg exp-sum
63×exp-prod
60×diff-log
53×1-exp rec-exp
52×pow-pow
46×pow-plus
45×+-commutative
35×exp-diff
34×unpow3 cube-mult
32×pow2
29×exp-neg associate--l+
28×distribute-neg-frac
25×neg-sub0
24×cube-div
21×log-div
19×pow-flip
18×distribute-rgt-neg-in distribute-lft-neg-in
17×rem-cube-cbrt
15×div-sub
13×un-div-inv associate-+r+
11×inv-pow associate-+l+
rem-exp-log
associate--l- frac-sub
pow-div sqrt-unprod cos-sum associate--r+ unpow2
distribute-neg-in neg-mul-1
difference-cubes sin-sum rem-square-sqrt unpow-prod-up neg-log
pow3 pow-sub associate-+l- rem-log-exp
sqrt-undiv sqrt-pow2 distribute-rgt-neg-out
unpow1/3 distribute-rgt-out-- associate--r-

series1.3m (8.4%)

Calls

466 calls:

15.8s
(exp (log (/ (- (pow 1.0 3) (pow (* (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ 0.254829592 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -0.284496736 (* (sqrt (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x))))) (* (sqrt (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x))))) (+ 1.421413741 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -1.453152027 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) 1.061405429)))))))))) (exp (- (* (fabs x) (fabs x))))) 3)) (+ (* (* (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ 0.254829592 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -0.284496736 (* (sqrt (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x))))) (* (sqrt (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x))))) (+ 1.421413741 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -1.453152027 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) 1.061405429)))))))))) (exp (- (* (fabs x) (fabs x))))) (+ (* (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ 0.254829592 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -0.284496736 (* (sqrt (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x))))) (* (sqrt (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x))))) (+ 1.421413741 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -1.453152027 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) 1.061405429)))))))))) (exp (- (* (fabs x) (fabs x))))) 1.0)) (* 1.0 1.0)))))
7.5s
(- (pow 1.0 3) (pow (* (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ 0.254829592 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -0.284496736 (* (sqrt (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x))))) (* (sqrt (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x))))) (+ 1.421413741 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -1.453152027 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) 1.061405429)))))))))) (exp (- (* (fabs x) (fabs x))))) 3))
2.3s
(* (* (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ 0.254829592 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -0.284496736 (* (sqrt (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x))))) (* (sqrt (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x))))) (+ 1.421413741 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -1.453152027 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) 1.061405429)))))))))) (exp (- (* (fabs x) (fabs x))))) (+ (* (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ 0.254829592 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -0.284496736 (* (sqrt (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x))))) (* (sqrt (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x))))) (+ 1.421413741 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -1.453152027 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) 1.061405429)))))))))) (exp (- (* (fabs x) (fabs x))))) 1.0))
1.1s
(pow (* (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ 0.254829592 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -0.284496736 (* (sqrt (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x))))) (* (sqrt (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x))))) (+ 1.421413741 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -1.453152027 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) 1.061405429)))))))))) (exp (- (* (fabs x) (fabs x))))) 3)
1.1s
(exp (log (- 1.0 (* (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ 0.254829592 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -0.284496736 (* (sqrt (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x))))) (* (sqrt (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x))))) (+ 1.421413741 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -1.453152027 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) 1.061405429)))))))))) (exp (- (* (fabs x) (fabs x))))))))

prune52.3s (5.7%)

sample50.6s (5.5%)

Algorithm
99×intervals
Results
17.7s444527×body80valid
6.6s15994×body1280valid
2.9s12573×body640valid
2.8s41466×body80overflowed
2.4s68818×body80nan
920.0ms6603×body320valid
798.0ms7638×body160valid
605.0ms49536×pre80true
273.0ms1403×body2560valid
134.0ms586×body5120valid

simplify14.1s (1.5%)

Algorithm
253×egg-herbie

regimes7.1s (0.8%)

Accuracy

Total 95.9b remaining (37.4%)

Threshold costs 3.5b (1.4%)

11.1b54.7%math.log10 on complex, real part
10.9b55.4%math.log/1 on complex, real part
10.5b57.8%math.log/2 on complex, real part
10.4b56.1%math.abs on complex
9.6b55%math.sqrt on complex, real part

localize2.6s (0.3%)

bsearch1.9s (0.2%)

end1.0ms (0.0%)