Details

prune7.3m (57.1%)

simplify2.4m (18.8%)

Algorithm
180×egg-herbie

sample1.4m (11.0%)

Algorithm
72×intervals
Results
40.4s66434×body10240exit
11.0s292898×body80valid
10.5s14587×body1280valid
7.8s3913×body2560valid
2.8s9538×body640valid
1.4s100623×pre80true
966.0ms6897×body320valid
611.0ms8805×body160valid
543.0ms19311×body80nan
169.0ms224×body5120valid
3.0ms100×pre80false

rewrite1.2m (9.1%)

Algorithm
111×rewrite-expression-head
Calls

311 calls:

27.5s
(+ (* (* (* (+ (pow -2.0 3) (pow (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))) 3)) (* 77617.0 77617.0)) (* (- (* -2.0 -2.0) (* (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))) (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))))) (* 77617.0 77617.0))) (* 333.75 (pow 33096.0 6.0))) (- (* (* (* (+ (pow -2.0 3) (pow (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))) 3)) (* 77617.0 77617.0)) (* (- (* -2.0 -2.0) (* (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))) (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))))) (* 77617.0 77617.0))) (- (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))))) (* (* (+ (* -2.0 -2.0) (- (* (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))) (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)))) (* -2.0 (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)))))) (- -2.0 (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))))) (* (- (* (* 333.75 (pow 33096.0 6.0)) (* 333.75 (pow 33096.0 6.0))) (* (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))) (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))))) (+ (* 333.75 (pow 33096.0 6.0)) (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))))))))
7.2s
(- (* (* (* (+ (pow -2.0 3) (pow (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))) 3)) (* 77617.0 77617.0)) (* (- (* -2.0 -2.0) (* (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))) (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))))) (* 77617.0 77617.0))) (- (* 333.75 (pow 33096.0 6.0)) (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))))) (* (* (+ (* -2.0 -2.0) (- (* (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))) (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)))) (* -2.0 (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)))))) (- -2.0 (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))))) (* (- (* (* 333.75 (pow 33096.0 6.0)) (* 333.75 (pow 33096.0 6.0))) (* (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))) (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))))) (+ (* 333.75 (pow 33096.0 6.0)) (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0)))))))
6.8s
(- (* (* (* (+ (pow -2.0 3) (pow (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))) 3)) (* 77617.0 77617.0)) (* (- (* -2.0 -2.0) (* (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))) (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))))) (* 77617.0 77617.0))) (- (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))))) (* (* (+ (* -2.0 -2.0) (- (* (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))) (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)))) (* -2.0 (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)))))) (- -2.0 (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))))) (* (- (* (* 333.75 (pow 33096.0 6.0)) (* 333.75 (pow 33096.0 6.0))) (* (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))) (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))))) (+ (* 333.75 (pow 33096.0 6.0)) (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0)))))))
2.8s
(+ (* (* (* 2.0 x1) (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0))) (* (* (cbrt (- (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0)) 3.0)) (cbrt (- (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0)) 3.0))) (cbrt (- (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0)) 3.0)))) (* (* x1 x1) (- (* 4.0 (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0))) 6.0)))
2.7s
(* (* (+ (* -2.0 -2.0) (- (* (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))) (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)))) (* -2.0 (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)))))) (- -2.0 (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))))) (* (- (* (* 333.75 (pow 33096.0 6.0)) (* 333.75 (pow 33096.0 6.0))) (* (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))) (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))))) (+ (* 333.75 (pow 33096.0 6.0)) (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))))))
Rules
97771×associate-*l/
67034×frac-times
34450×flip-+ flip3-+
28925×flip3-- flip--
22936×associate-*r/
20970×frac-sub
16948×frac-add
12960×distribute-neg-frac
3390×times-frac
3319×add-sqr-sqrt
3252×*-un-lft-identity
2143×add-cube-cbrt
2103×add-exp-log
1504×add-cbrt-cube
1039×sqrt-prod
1002×associate-*r*
792×prod-exp
785×pow1
706×add-log-exp
643×cbrt-div
543×cbrt-unprod
524×div-exp
506×associate-*l*
374×difference-of-squares
346×unpow-prod-down
344×cbrt-undiv
335×associate-/l*
322×distribute-lft-out cbrt-prod
260×distribute-lft-out--
220×associate-/r*
212×associate-/r/
206×pow-prod-down
189×unswap-sqr
183×div-inv
174×sqrt-div
162×sum-log
151×sqr-pow
101×cube-prod
99×sub-neg
94×swap-sqr
87×*-commutative
85×distribute-rgt-in distribute-lft-in
80×exp-neg
79×associate-/l/
78×pow-exp
75×log-prod
74×distribute-rgt-neg-in diff-log
68×pow-to-exp
67×neg-sub0
60×exp-diff
56×unpow2
54×sqrt-pow1
50×rem-sqrt-square
48×pow1/2 clear-num frac-2neg
44×+-commutative
39×associate-+r+
36×pow1/3
33×distribute-lft-neg-in
28×associate-+l+ 1-exp rec-exp
25×pow-prod-up log-pow
24×un-div-inv
23×pow-plus
20×associate--r+
19×unpow3 cube-mult div-sub
18×pow-sqr
17×cube-div
16×pow2
15×pow-unpow
12×log-div
11×neg-mul-1
10×associate--l+
rem-cube-cbrt associate--l- pow-flip rem-cbrt-cube
distribute-lft-neg-out neg-log rem-log-exp pow-pow
associate-+r- distribute-frac-neg
inv-pow distribute-neg-in
distribute-rgt-out
distribute-lft1-in associate-+l-
sqrt-undiv unsub-neg pow3

series25.1s (3.3%)

Calls

311 calls:

416.0ms
(cbrt (pow (- (* 9.0 (pow x 4.0)) (pow y 4.0)) 3))
408.0ms
(cbrt (pow (- (* 9.0 (pow x 4.0)) (pow y 4)) 3))
407.0ms
(- (* 9.0 (pow x 4.0)) (pow y 4.0))
406.0ms
(- (* 9.0 (pow x 4.0)) (pow y 4.0))
396.0ms
(- (* 9.0 (pow x 4.0)) (pow y 4))

regimes3.9s (0.5%)

Accuracy

Total 32.4b remaining (8.6%)

Threshold costs 3.7b (1%)

10.2b51.9%Kahan p9 Example
4.4b83.1%The quadratic formula (r2)
4.4b72.5%Compound Interest
3.1b-5.8%Complex division, imag part
2.4b91.7%The quadratic formula (r1)

localize1.4s (0.2%)

bsearch895.0ms (0.1%)

end1.0ms (0.0%)