Details

rewrite10.5m (45.3%)

Algorithm
156×rewrite-expression-head
Calls

465 calls:

4.7s
(* (+ (* (+ (* (* (pow (* x x) 4) (+ (pow 0.0005064034 3) (pow (* (* x x) 0.0001789971) 3))) (- 1.0 (* 0.1049934947 (* x x)))) (* (+ (* 0.0005064034 0.0005064034) (- (* (* (* x x) 0.0001789971) (* (* x x) 0.0001789971)) (* 0.0005064034 (* (* x x) 0.0001789971)))) (- (* 1.0 1.0) (* (* 0.1049934947 (* x x)) (* 0.1049934947 (* x x)))))) (+ (* 0.0424060604 0.0424060604) (- (* (* (* x x) 0.0072644182) (* (* x x) 0.0072644182)) (* 0.0424060604 (* (* x x) 0.0072644182))))) (* (* (+ (* 0.0005064034 0.0005064034) (- (* (* (* x x) 0.0001789971) (* (* x x) 0.0001789971)) (* 0.0005064034 (* (* x x) 0.0001789971)))) (- 1.0 (* 0.1049934947 (* x x)))) (* (pow x 4) (+ (pow 0.0424060604 3) (pow (* (* x x) 0.0072644182) 3))))) (/ (/ x (+ (+ (* (* x (* (pow (* x x) 3) (pow x 3))) (+ 0.0008327945 (* (* x x) (* 2.0 0.0001789971)))) (+ (* (* x x) (+ 0.7715471019 (* 0.2909738639 (* x x)))) 1.0)) (* (pow x 6) (+ 0.0694555761 (* (* x x) 0.0140005442))))) (* (* (+ (* 0.0005064034 0.0005064034) (- (* (* (* x x) 0.0001789971) (* (* x x) 0.0001789971)) (* 0.0005064034 (* (* x x) 0.0001789971)))) (- 1.0 (* 0.1049934947 (* x x)))) (+ (* 0.0424060604 0.0424060604) (- (* (* (* x x) 0.0072644182) (* (* x x) 0.0072644182)) (* 0.0424060604 (* (* x x) 0.0072644182)))))))
859.0ms
(/ (+ (+ (* (* x (* (pow (* x x) 3) (pow x 3))) (+ 0.0008327945 (* (* x x) (* 2.0 0.0001789971)))) (+ (* (* x x) (+ 0.7715471019 (* 0.2909738639 (* x x)))) 1.0)) (* (pow x 6) (+ 0.0694555761 (* (* x x) 0.0140005442)))) (+ (+ (* (pow (* x x) 4) (+ 0.0005064034 (* (* x x) 0.0001789971))) (+ 1.0 (* 0.1049934947 (* x x)))) (* (pow x 4) (+ 0.0424060604 (* (* x x) 0.0072644182)))))
693.0ms
(/ (/ x (+ (+ (* (* x (* (pow (* x x) 3) (pow x 3))) (+ 0.0008327945 (* (* x x) (* 2.0 0.0001789971)))) (+ (* (* x x) (+ 0.7715471019 (* 0.2909738639 (* x x)))) 1.0)) (* (pow x 6) (+ 0.0694555761 (* (* x x) 0.0140005442))))) (/ 1 (+ (+ (* (pow (* x x) 4) (+ 0.0005064034 (* (* x x) 0.0001789971))) (+ 1.0 (* 0.1049934947 (* x x)))) (* (pow x 4) (+ 0.0424060604 (* (* x x) 0.0072644182))))))
476.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))))
452.0ms
(/ x (/ (+ (+ (* (* x (* (pow (* x x) 3) (pow x 3))) (+ 0.0008327945 (* (* x x) (* 2.0 0.0001789971)))) (+ (* (* x x) (+ 0.7715471019 (* 0.2909738639 (* x x)))) 1.0)) (* (pow x 6) (+ 0.0694555761 (* (* x x) 0.0140005442)))) (+ (+ (* (pow (* x x) 4) (+ 0.0005064034 (* (* x x) 0.0001789971))) (+ 1.0 (* 0.1049934947 (* x x)))) (* (pow x 4) (+ 0.0424060604 (* (* x x) 0.0072644182))))))
Rules
48746×times-frac
34923×frac-times
27261×add-sqr-sqrt
25683×associate-*r/
25582×*-un-lft-identity
22278×frac-add
20602×flip-+ flip3-+
20248×associate-*l/
19776×add-cube-cbrt
11938×sqrt-prod
11360×flip3-- flip--
3520×add-exp-log
3393×difference-of-squares
3287×cbrt-prod
2510×associate-/r/
2110×add-cbrt-cube
1782×distribute-lft-out--
1645×pow1
1529×associate-*r*
1409×prod-exp
1295×div-inv
1173×distribute-lft-out
945×div-exp
827×associate-*l*
744×associate-/r*
715×cbrt-unprod
706×add-log-exp
703×associate-/l*
666×sqrt-div
446×cbrt-undiv
386×pow-prod-down
303×log-pow
291×unswap-sqr
255×cbrt-div
251×swap-sqr
242×unpow-prod-down
219×log-prod
207×pow-exp
157×*-commutative
153×associate-/l/
126×sqrt-pow1
115×sqr-pow
111×pow1/3
104×pow1/2
96×pow-unpow pow-to-exp
87×distribute-rgt-in pow-prod-up distribute-lft-in
83×cube-prod
82×frac-2neg clear-num diff-log
72×exp-sum
71×sub-neg
69×pow-plus
68×1-exp
59×rec-exp
54×rem-sqrt-square pow-sqr sum-log
41×exp-prod
40×pow2
39×exp-diff
36×associate--l+
34×+-commutative
30×pow-flip
29×distribute-rgt-neg-in
28×inv-pow exp-neg
27×distribute-lft-neg-in
26×log-div
25×pow-pow
24×neg-sub0
22×distribute-neg-frac
21×div-sub
19×unpow2
18×cube-div unpow3 cube-mult
13×associate--l-
11×un-div-inv rem-log-exp
10×frac-sub
associate-+l+ neg-mul-1
rem-exp-log
sin-sum associate--r+
rem-cube-cbrt pow3
difference-cubes distribute-neg-in
sqrt-pow2 distribute-rgt-out-- associate-+r+ distribute-rgt-neg-out associate-+l-
rem-cbrt-cube
cos-sum distribute-lft-neg-out sqrt-unprod rem-square-sqrt distribute-frac-neg log-rec associate--r-

prune7.9m (34.2%)

sample2.6m (11.2%)

Algorithm
99×intervals
Results
54.6s500333×body80valid
47.3s7909×body10240exit
15.1s27438×body1280valid
7.3s20626×body640valid
5.6s69552×body80nan
2.7s1512×body1280nan
2.6s10745×body320valid
2.0s9367×body160valid
1.7s1272×body640nan
1.1s49536×pre80true
687.0ms1516×body2560valid
635.0ms643×body320nan
380.0ms4307×body80overflowed
289.0ms582×body5120valid
216.0ms316×body160nan

series1.1m (4.7%)

Calls

462 calls:

7.3s
(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 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ 1.421413741 (* (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (* (cbrt (+ -1.453152027 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) 1.061405429))) (cbrt (+ -1.453152027 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) 1.061405429))))) (cbrt (+ -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 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ 1.421413741 (* (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (* (cbrt (+ -1.453152027 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) 1.061405429))) (cbrt (+ -1.453152027 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) 1.061405429))))) (cbrt (+ -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)))) (* (cbrt (+ -1.453152027 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) 1.061405429))) (cbrt (+ -1.453152027 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) 1.061405429))))) (cbrt (+ -1.453152027 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) 1.061405429)))))))))) (exp (- (* (fabs x) (fabs x))))) 1.0)) (* 1.0 1.0)))))
3.3s
(- (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)))) (* (cbrt (+ -1.453152027 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) 1.061405429))) (cbrt (+ -1.453152027 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) 1.061405429))))) (cbrt (+ -1.453152027 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) 1.061405429)))))))))) (exp (- (* (fabs x) (fabs x))))) 3))
2.3s
(* (/ (/ (* 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))))
1.6s
(* (* (* (/ 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)))) (* (cbrt (+ -1.453152027 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) 1.061405429))) (cbrt (+ -1.453152027 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) 1.061405429))))) (cbrt (+ -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)))) (* (cbrt (+ -1.453152027 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) 1.061405429))) (cbrt (+ -1.453152027 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) 1.061405429))))) (cbrt (+ -1.453152027 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) 1.061405429)))))))))) (exp (- (* (fabs x) (fabs x))))) 1.0))
864.0ms
(- 1.0 (* (* (/ 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))))))

simplify51.1s (3.7%)

Algorithm
254×egg-herbie

regimes6.8s (0.5%)

Accuracy

Total 99.7b remaining (34.9%)

Threshold costs 3.5b (1.2%)

10.9b54.4%math.abs on complex
10.9b56%math.log10 on complex, real part
10.8b56.4%math.log/1 on complex, real part
10.7b64.1%math.sqrt on complex, real part
10.6b56%math.log/2 on complex, real part

bsearch3.1s (0.2%)

localize2.6s (0.2%)

end1.0ms (0.0%)