Details

rewrite10.9m (52.0%)

Algorithm
160×rewrite-expression-head
Calls

482 calls:

7.2s
(* (/ (+ (+ (+ (+ (+ 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)
4.2s
(/ (+ (+ (+ (+ (+ 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)))))
4.2s
(/ (+ (+ (+ (+ (+ 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)))))
4.2s
(/ (+ (+ (+ (+ (+ 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)))))
3.4s
(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)))) (+ (+ (+ (+ (+ (+ 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))))))
Rules
83801×times-frac
49386×*-un-lft-identity
32090×sqrt-prod
31854×add-sqr-sqrt
30345×add-cube-cbrt
9325×distribute-lft-out
4605×associate-/r/
3225×add-exp-log
3056×flip-+ flip3-+
2723×add-cbrt-cube
2393×div-inv
2037×pow1
1489×cbrt-div
1424×associate-*r*
1258×prod-exp
1059×cbrt-unprod
1025×associate-*l*
1017×frac-times
767×add-log-exp
765×div-exp
749×associate-*r/
673×cbrt-prod
668×associate-/r*
627×cbrt-undiv
561×associate-*l/
457×pow-prod-down
450×difference-of-squares
440×associate-/l*
438×unpow-prod-down
285×unswap-sqr
273×pow-prod-up
267×sqrt-div
264×log-pow
222×distribute-lft-out--
220×swap-sqr
202×pow-plus
189×cube-prod
180×sqr-pow log-prod
152×*-commutative
148×flip-- flip3--
144×sqrt-pow1
139×pow-unpow
125×pow1/2
123×pow-sqr
104×distribute-rgt-in distribute-lft-in
102×pow1/3 sum-log
93×associate-/l/
92×pow-exp
82×pow2
80×exp-prod
77×clear-num pow-to-exp frac-2neg
71×diff-log
70×rem-sqrt-square
65×sub-neg
60×distribute-neg-frac
43×pow-pow
41×+-commutative
40×1-exp rec-exp
38×distribute-rgt-neg-in frac-add
37×cube-div
36×distribute-lft-neg-in
33×associate--l+
31×exp-diff
30×unpow3 cube-mult
29×unpow2
28×exp-neg neg-sub0
27×associate-+l+
22×frac-sub
21×div-sub
17×rem-cube-cbrt log-div
15×pow-flip associate-+r+ exp-sum
14×inv-pow rem-log-exp
12×neg-mul-1
11×associate--l-
un-div-inv pow3
rem-exp-log distribute-rgt-out
difference-cubes
sqrt-unprod sin-sum distribute-neg-in associate--r+
sqrt-pow2 pow-neg rem-cbrt-cube
associate-+r- log-rec
cos-sum unsub-neg distribute-rgt-neg-out
pow-sub rem-square-sqrt sum-cubes
distribute-neg-out distribute-lft-neg-out distribute-rgt-out-- associate-+l-

prune6.6m (31.7%)

sample2.4m (11.5%)

Algorithm
99×intervals
Results
52.4s12539×body10240exit
36.9s460551×body80valid
16.1s27794×body1280valid
7.7s21037×body640valid
4.8s70025×body80nan
3.5s1673×body1280nan
2.6s10822×body320valid
2.2s1408×body640nan
2.0s9354×body160valid
1.6s49536×pre80true
789.0ms706×body320nan
666.0ms1515×body2560valid
280.0ms623×body5120valid
249.0ms325×body160nan

simplify22.7s (1.8%)

Algorithm
258×egg-herbie

regimes19.4s (1.5%)

Accuracy

Total 111.9b remaining (43.4%)

Threshold costs 3.3b (1.3%)

16.8b52%math.sqrt on complex, imaginary part, im greater than 0 branch
13.1b16.6%Octave 3.8, jcobi/4
11.1b56.2%math.log/2 on complex, real part
10.5b57.7%math.log10 on complex, real part
10.5b57.8%math.log/1 on complex, real part

series14.3s (1.1%)

Calls

479 calls:

931.0ms
(- (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 (* (/ 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))
533.0ms
(* (* (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ 0.254829592 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -0.284496736 (* (/ 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 (* (/ 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))
481.0ms
(* (/ (* i (/ (+ (+ alpha beta) i) (+ (+ alpha beta) (* 2.0 i)))) (+ (+ (+ alpha beta) (* 2.0 i)) (sqrt 1.0))) (/ (* (sqrt (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) (/ (sqrt (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) (+ (+ alpha beta) (* 2.0 i)))) (- (+ (+ alpha beta) (* 2.0 i)) (sqrt 1.0))))
468.0ms
(* (/ (/ (* i (+ (+ alpha beta) i)) (+ (+ alpha beta) (* 2.0 i))) (+ (+ (+ alpha beta) (* 2.0 i)) (sqrt 1.0))) (/ (* (sqrt (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) (/ (sqrt (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) (+ (+ alpha beta) (* 2.0 i)))) (- (+ (+ alpha beta) (* 2.0 i)) (sqrt 1.0))))
462.0ms
(* (/ (/ (* i (+ (+ alpha beta) i)) (+ (+ alpha beta) (* 2.0 i))) (+ (+ (+ alpha beta) (* 2.0 i)) (sqrt 1.0))) (/ (/ (+ (* beta alpha) (* i (+ (+ alpha beta) i))) (+ (+ alpha beta) (* 2.0 i))) (- (+ (+ alpha beta) (* 2.0 i)) (sqrt 1.0))))

localize2.4s (0.2%)

bsearch1.2s (0.1%)

end1.0ms (0.0%)