Details

rewrite10.6m (53.7%)

Algorithm
112×rewrite-expression-head
Calls

320 calls:

2.4m
(- (* (+ (* (/ 77617.0 (* 2.0 33096.0)) (- (/ 77617.0 (* 2.0 33096.0)) (* 5.5 (pow 33096.0 8.0)))) (* (pow 33096.0 (* 2 8.0)) (* 5.5 5.5))) (* (+ (pow (* (* 77617.0 77617.0) (+ (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)) (+ (* -121.0 (pow 33096.0 4.0)) -2.0))) 3) (pow (* 333.75 (pow 33096.0 6.0)) 3)) (+ (pow (* (* 77617.0 77617.0) (+ (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)) (+ (* -121.0 (pow 33096.0 4.0)) -2.0))) 3) (pow (* 333.75 (pow 33096.0 6.0)) 3)))) (* (+ (* (* (* 77617.0 77617.0) (+ (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)) (+ (* -121.0 (pow 33096.0 4.0)) -2.0))) (* (* 77617.0 77617.0) (+ (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)) (+ (* -121.0 (pow 33096.0 4.0)) -2.0)))) (* (* 333.75 (pow 33096.0 6.0)) (- (* 333.75 (pow 33096.0 6.0)) (* (* 77617.0 77617.0) (+ (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)) (+ (* -121.0 (pow 33096.0 4.0)) -2.0)))))) (* (* (+ (pow (* 5.5 (pow 33096.0 8.0)) 3) (pow (/ 77617.0 (* 2.0 33096.0)) 3)) (+ (* (* (* 77617.0 77617.0) (+ (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)) (+ (* -121.0 (pow 33096.0 4.0)) -2.0))) (* (* 77617.0 77617.0) (+ (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)) (+ (* -121.0 (pow 33096.0 4.0)) -2.0)))) (* (* 333.75 (pow 33096.0 6.0)) (- (* 333.75 (pow 33096.0 6.0)) (* (* 77617.0 77617.0) (+ (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)) (+ (* -121.0 (pow 33096.0 4.0)) -2.0))))))) (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))))))
15.1s
(* (+ (* (* (* 77617.0 77617.0) (+ (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)) (+ (* -121.0 (pow 33096.0 4.0)) -2.0))) (* (* 77617.0 77617.0) (+ (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)) (+ (* -121.0 (pow 33096.0 4.0)) -2.0)))) (* (* 333.75 (pow 33096.0 6.0)) (- (* 333.75 (pow 33096.0 6.0)) (* (* 77617.0 77617.0) (+ (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)) (+ (* -121.0 (pow 33096.0 4.0)) -2.0)))))) (* (+ (* (/ 77617.0 (* 2.0 33096.0)) (- (/ 77617.0 (* 2.0 33096.0)) (* 5.5 (pow 33096.0 8.0)))) (* (pow 33096.0 (* 2 8.0)) (* 5.5 5.5))) (+ (* (* (* 77617.0 77617.0) (+ (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)) (+ (* -121.0 (pow 33096.0 4.0)) -2.0))) (* (* 77617.0 77617.0) (+ (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)) (+ (* -121.0 (pow 33096.0 4.0)) -2.0)))) (* (* 333.75 (pow 33096.0 6.0)) (- (* 333.75 (pow 33096.0 6.0)) (* (* 77617.0 77617.0) (+ (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)) (+ (* -121.0 (pow 33096.0 4.0)) -2.0))))))))
6.7s
(+ (+ (* (* (cbrt (* (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0)) (+ (* (* 3.0 x1) x1) (* (* (- (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0)) 3.0) (* 2.0 x1)) (+ (* x1 x1) 1.0))))) (cbrt (* (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0)) (+ (* (* 3.0 x1) x1) (* (* (- (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0)) 3.0) (* 2.0 x1)) (+ (* x1 x1) 1.0)))))) (cbrt (* (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0)) (+ (* (* 3.0 x1) x1) (* (* (- (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0)) 3.0) (* 2.0 x1)) (+ (* x1 x1) 1.0)))))) (* (+ (* x1 x1) 1.0) (* (* x1 x1) (* 4.0 (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0)))))) (* (+ (* x1 x1) 1.0) (* (* x1 x1) (- 6.0))))
5.9s
(/ (- (* (+ (* (* 77617.0 77617.0) (+ (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)) (+ (* -121.0 (pow 33096.0 4.0)) -2.0))) (* 333.75 (pow 33096.0 6.0))) (+ (* (* 77617.0 77617.0) (+ (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)) (+ (* -121.0 (pow 33096.0 4.0)) -2.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))))) (- (+ (* (* 77617.0 77617.0) (+ (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)) (+ (* -121.0 (pow 33096.0 4.0)) -2.0))) (* 333.75 (pow 33096.0 6.0))) (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0)))))
4.2s
(+ (+ (* 333.75 (pow y 6.0)) (* (* x x) (- (- (- (* (* (* (* 11.0 x) x) y) y) (pow y 6.0)) (* 121.0 (pow y 4.0))) 2.0))) (* 5.5 (pow y 8.0)))
Rules
6615×frac-times
5890×associate-*r/
5459×cbrt-div
5061×associate-*l/
4673×flip-+ flip3-+
4497×frac-add
4220×add-sqr-sqrt
3900×times-frac
3761×*-un-lft-identity
2259×add-cube-cbrt
1671×add-exp-log
1517×sqrt-prod
1418×add-cbrt-cube
900×associate-*l*
818×associate-*r*
761×pow1
685×add-log-exp
606×difference-of-squares
546×unpow-prod-down
540×prod-exp
434×cbrt-unprod
409×distribute-lft-out--
408×div-exp
383×associate-/r*
375×cbrt-prod
364×distribute-lft-out
317×cbrt-undiv
267×unswap-sqr
252×associate-/l*
250×associate-/r/
224×sqr-pow
213×div-inv
200×flip-- flip3--
194×cube-prod
183×pow-prod-down
175×log-pow
163×sqrt-div
161×associate-/l/
159×exp-prod
149×sum-log
140×frac-sub
111×swap-sqr
108×distribute-rgt-neg-in
87×sqrt-pow1
84×sub-neg
81×distribute-lft-neg-in
79×*-commutative
68×unpow2
67×diff-log
65×pow1/2
60×clear-num frac-2neg
55×distribute-rgt-in distribute-lft-in
48×log-prod
46×rem-sqrt-square
44×+-commutative
38×pow1/3
34×pow-prod-up
29×rec-exp 1-exp
28×associate-+r+
27×neg-mul-1
25×pow-to-exp pow-exp
24×associate-+l+ pow-sqr
23×cube-mult
22×unpow3
21×div-sub
17×pow-plus
14×cube-div
13×pow2
12×pow-unpow
10×distribute-frac-neg associate--r+
neg-sub0 exp-sum distribute-rgt-neg-out
distribute-lft-neg-out rem-log-exp pow-pow
associate--l- rem-cbrt-cube
un-div-inv log-div
neg-log
exp-diff sqrt-unprod inv-pow pow-flip rem-square-sqrt distribute-rgt-out associate--l+ exp-to-pow
unsub-neg distribute-lft1-in associate-+r- associate-+l-
rem-cube-cbrt sqrt-pow2 rem-exp-log pow3 associate--r-

simplify6.0m (30.3%)

prune2.0m (10.0%)

series44.1s (3.7%)

Calls

316 calls:

867.0ms
(+ (* (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0)) (+ (* (* 3.0 x1) x1) (* (* (- (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0)) 3.0) (* 2.0 x1)) (+ (* x1 x1) 1.0)))) (* (+ (* x1 x1) 1.0) (* (* x1 x1) (- (* 4.0 (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0))) 6.0))))
812.0ms
(cbrt (* (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0)) (+ (* (* 3.0 x1) x1) (* (* (- (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0)) 3.0) (* 2.0 x1)) (+ (* x1 x1) 1.0)))))
757.0ms
(cbrt (* (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0)) (+ (* (* 3.0 x1) x1) (* (* (- (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0)) 3.0) (* 2.0 x1)) (+ (* x1 x1) 1.0)))))
722.0ms
(+ (+ (* (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0)) (+ (* (* 3.0 x1) x1) (* (* (- (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0)) 3.0) (* 2.0 x1)) (+ (* x1 x1) 1.0)))) (* (+ (* x1 x1) 1.0) (* (* x1 x1) (* 4.0 (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0)))))) (* (+ (* x1 x1) 1.0) (* (* x1 x1) (- 6.0))))
696.0ms
(+ (+ (* (* (cbrt (* (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0)) (+ (* (* 3.0 x1) x1) (* (* (- (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0)) 3.0) (* 2.0 x1)) (+ (* x1 x1) 1.0))))) (cbrt (* (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0)) (+ (* (* 3.0 x1) x1) (* (* (- (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0)) 3.0) (* 2.0 x1)) (+ (* x1 x1) 1.0)))))) (cbrt (* (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0)) (+ (* (* 3.0 x1) x1) (* (* (- (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0)) 3.0) (* 2.0 x1)) (+ (* x1 x1) 1.0)))))) (* (+ (* x1 x1) 1.0) (* (* x1 x1) (* 4.0 (/ (- (+ (* (* 3.0 x1) x1) (* 2.0 x2)) x1) (+ (* x1 x1) 1.0)))))) (* (+ (* x1 x1) 1.0) (* (* x1 x1) (- 6.0))))

sample21.4s (1.8%)

Algorithm
53×intervals
Results
11.8s139970×body80valid
1.9s68636×pre80true
1.3s6521×body160valid
482.0ms252×body10240exit
418.0ms2215×body320valid
260.0ms422×body1280valid
154.0ms289×body640valid
150.0ms142×body2560valid
38.0ms661×body80nan
7.0ms100×pre80false
7.0msbody5120valid

localize2.9s (0.2%)

regimes2.1s (0.2%)

Accuracy

Total 5.3b remaining (2.1%)

Threshold costs 0.8b (0.3%)

3.1b0%Complex division, imag part
1.4b0%Rosa's DopplerBench
0.3b0%fma_test1
0.3b0%NMSE Section 6.1 mentioned, B
0.2b0%Rosa's TurbineBenchmark

bsearch12.0ms (0.0%)

end0.0ms (0.0%)