Details

simplify42.0m

Calls

17678 calls:

Slowest
2.1s
(* (* (* (* (/ (+ y x) (hypot y x)) (/ (+ y x) (hypot y x))) (/ (+ y x) (hypot y x))) (* (* (/ (+ y x) (hypot y x)) (/ (+ y x) (hypot y x))) (/ (+ y x) (hypot y x)))) (* (* (* (* (/ (+ y x) (hypot y x)) (/ (+ y x) (hypot y x))) (/ (+ y x) (hypot y x))) (/ (* (* (- x y) (- x y)) (- x y)) (* (* (hypot x y) (hypot x y)) (hypot x y)))) (* (/ (* (* (- x y) (- x y)) (- x y)) (* (* (hypot x y) (hypot x y)) (hypot x y))) (/ (* (* (- x y) (- x y)) (- x y)) (* (* (hypot x y) (hypot x y)) (hypot x y))))))
1.9s
(* (* (* (* (/ (+ y x) (hypot y x)) (/ (+ y x) (hypot y x))) (* (/ (+ y x) (hypot y x)) (/ (+ y x) (hypot y x)))) (* (/ (+ y x) (hypot y x)) (/ (+ y x) (hypot y x)))) (* (* (* (* (/ (+ y x) (hypot y x)) (/ (+ y x) (hypot y x))) (/ (+ y x) (hypot y x))) (/ (* (* (- x y) (- x y)) (- x y)) (* (* (hypot x y) (hypot x y)) (hypot x y)))) (* (/ (* (* (- x y) (- x y)) (- x y)) (* (* (hypot x y) (hypot x y)) (hypot x y))) (/ (* (* (- x y) (- x y)) (- x y)) (* (* (hypot x y) (hypot x y)) (hypot x y))))))
1.9s
(* (* (* (* (/ (+ y x) (hypot y x)) (/ (+ y x) (hypot y x))) (* (/ (+ y x) (hypot y x)) (/ (+ y x) (hypot y x)))) (* (/ (+ y x) (hypot y x)) (/ (+ y x) (hypot y x)))) (* (* (* (* (/ (+ y x) (hypot y x)) (/ (- x y) (hypot x y))) (* (/ (+ y x) (hypot y x)) (/ (- x y) (hypot x y)))) (* (/ (+ y x) (hypot y x)) (/ (- x y) (hypot x y)))) (* (/ (* (* (- x y) (- x y)) (- x y)) (* (* (hypot x y) (hypot x y)) (hypot x y))) (/ (* (* (- x y) (- x y)) (- x y)) (* (* (hypot x y) (hypot x y)) (hypot x y))))))
1.8s
(* (* (* (* (/ (+ y x) (hypot y x)) (/ (+ y x) (hypot y x))) (* (/ (+ y x) (hypot y x)) (/ (+ y x) (hypot y x)))) (* (/ (+ y x) (hypot y x)) (/ (+ y x) (hypot y x)))) (* (* (* (* (/ (+ y x) (hypot y x)) (/ (+ y x) (hypot y x))) (/ (+ y x) (hypot y x))) (/ (* (* (- x y) (- x y)) (- x y)) (* (* (hypot x y) (hypot x y)) (hypot x y)))) (* (* (* (/ (- x y) (hypot x y)) (/ (- x y) (hypot x y))) (* (/ (- x y) (hypot x y)) (/ (- x y) (hypot x y)))) (* (/ (- x y) (hypot x y)) (/ (- x y) (hypot x y))))))
1.8s
(* (* (* (* (/ (+ y x) (hypot y x)) (/ (+ y x) (hypot y x))) (/ (+ y x) (hypot y x))) (* (* (/ (+ y x) (hypot y x)) (/ (+ y x) (hypot y x))) (/ (+ y x) (hypot y x)))) (* (* (* (* (/ (+ y x) (hypot y x)) (/ (+ y x) (hypot y x))) (/ (+ y x) (hypot y x))) (* (* (/ (- x y) (hypot x y)) (/ (- x y) (hypot x y))) (/ (- x y) (hypot x y)))) (* (/ (* (* (- x y) (- x y)) (- x y)) (* (* (hypot x y) (hypot x y)) (hypot x y))) (/ (* (* (- x y) (- x y)) (- x y)) (* (* (hypot x y) (hypot x y)) (hypot x y))))))

prune2.6m

sample1.4m

Algorithm
62×intervals
Results
34.8s245523×body80valid
11.6s13105×body1280valid
8.2s16840×body160valid
5.6s8786×body640valid
4.7s2001×body10240exit
4.1s2671×body2560valid
4.1s75728×pre80true
2.6s6663×body320valid
1.6s16158×body80nan
202.0ms125×body5120valid

series29.8s

Calls

269 calls:

Slowest
1.3s
(cbrt (cbrt (- (fma x2 2 (* (* 3 x1) x1)) x1)))
931.0ms
(fma (fma (/ (- (fma x2 2 (* (* 3 x1) x1)) x1) (fma x1 x1 1)) 4 -6) (* x1 x1) (* (- (/ (- (fma x2 2 (* (* 3 x1) x1)) x1) (fma x1 x1 1)) 3) (* (* x1 2) (/ (- (fma x2 2 (* (* 3 x1) x1)) x1) (fma x1 x1 1)))))
898.0ms
(fma (fma (/ (- (fma x2 2 (* (* 3 x1) x1)) x1) (fma x1 x1 1)) 4 -6) (* x1 x1) (* (fma (/ (* (cbrt (- (fma x2 2 (* (* 3 x1) x1)) x1)) (cbrt (- (fma x2 2 (* (* 3 x1) x1)) x1))) (sqrt (fma x1 x1 1))) (/ (* (* (cbrt (cbrt (- (fma x2 2 (* (* 3 x1) x1)) x1))) (cbrt (cbrt (- (fma x2 2 (* (* 3 x1) x1)) x1)))) (cbrt (cbrt (- (fma x2 2 (* (* 3 x1) x1)) x1)))) (sqrt (fma x1 x1 1))) -3) (* (* x1 2) (/ (- (fma x2 2 (* (* 3 x1) x1)) x1) (fma x1 x1 1)))))
838.0ms
(cbrt (- (fma x2 2 (* (* 3 x1) x1)) x1))
802.0ms
(fma (fma (/ (- (fma x2 2 (* (* 3 x1) x1)) x1) (fma x1 x1 1)) 4 -6) (* x1 x1) (* (fma (/ (* (cbrt (- (fma x2 2 (* (* 3 x1) x1)) x1)) (cbrt (- (fma x2 2 (* (* 3 x1) x1)) x1))) (sqrt (fma x1 x1 1))) (/ (cbrt (- (fma x2 2 (* (* 3 x1) x1)) x1)) (sqrt (fma x1 x1 1))) -3) (* (* x1 2) (/ (- (fma x2 2 (* (* 3 x1) x1)) x1) (fma x1 x1 1)))))

rewrite12.7s

Algorithm
93×rewrite-expression-head
Calls

269 calls:

Slowest
1.1s
(+ (+ (+ (* 333.75 (pow 33096 6)) (* (* 77617 77617) (+ (+ (+ (* (* 11 (* 77617 77617)) (* 33096 33096)) (- (pow 33096 6))) (* -121 (pow 33096 4))) -2))) (* 5.5 (pow 33096 8))) (/ 77617 (* 2 33096)))
934.0ms
(- (* (* (fma (* (/ 1 eps) (/ 1 eps)) (/ 1 eps) 1) (exp (+ (- (* eps x) x) (fma x eps x)))) (+ 1 (fma (/ 1 eps) (/ 1 eps) (/ 1 eps)))) (* (fma (* (/ 1 eps) (/ 1 eps)) (/ 1 eps) -1) (fma (/ 1 eps) (- (/ 1 eps) 1) 1)))
897.0ms
(+ (+ (* 333.75 (pow 33096 6)) (* (* 77617 77617) (+ (+ (+ (* (* 11 (* 77617 77617)) (* 33096 33096)) (- (pow 33096 6))) (* -121 (pow 33096 4))) -2))) (* 5.5 (pow 33096 8)))
567.0ms
(+ (+ (+ (+ e d) c) b) a)
388.0ms
(cbrt (* (* (+ a (+ (+ b c) d)) (+ a (+ (+ b c) d))) (+ a (+ (+ b c) d))))
Rules
20735×times-frac
12692×*-un-lft-identity
12493×add-sqr-sqrt
10890×add-cube-cbrt
3914×prod-diff
3023×sqrt-prod
2113×add-exp-log
1945×add-cbrt-cube
934×div-inv
875×prod-exp
862×pow1
807×cbrt-unprod
704×difference-of-squares
594×associate-*r*
564×div-exp
535×add-log-exp
505×associate-*l*
490×cbrt-undiv
440×distribute-lft-out
436×associate-/r*
422×associate-/l*
418×distribute-lft-out--
351×cbrt-prod
342×frac-times
269×expm1-log1p-u log1p-expm1-u insert-posit16
256×fma-neg
244×pow-prod-down
241×associate-/r/
212×flip-+ flip3-+
205×associate-*r/ associate-*l/
159×swap-sqr flip-- flip3--
155×distribute-rgt-neg-in
148×unpow-prod-down
134×unswap-sqr
130×frac-sub
129×distribute-lft-neg-in
114×sum-log
109×sqr-pow
105×exp-diff
100×fma-def
99×exp-neg
87×difference-of-sqr-1
80×neg-sub0
76×pow-prod-up
73×cbrt-div
72×*-commutative
56×frac-2neg clear-num
55×exp-prod
53×fma-udef
45×neg-mul-1
44×1-exp
43×diff-log
42×pow-plus
41×rec-exp
40×pow-sqr
38×pow-flip sub-neg
35×associate-/l/
33×un-div-inv
26×pow1/3
25×inv-pow
23×exp-sum +-commutative
22×sqrt-pow1 pow2 pow1/2
21×div-sub rem-sqrt-square
20×log-prod
16×associate-+l+ sqrt-div rem-exp-log
13×pow-exp pow-to-exp frac-add
12×distribute-rgt-in distribute-lft-in
11×log-pow
associate--l+ distribute-frac-neg hypot-def
associate-+r+
neg-log associate--l-
distribute-lft-neg-out pow3 distribute-rgt-out--
cube-prod associate--r+
pow-unpow expm1-def
cube-unmult log-div
expm1-udef distribute-lft1-in associate-+r- unpow3 sub-div pow-pow rem-log-exp hypot-udef associate-+l- rem-cbrt-cube cube-mult unsub-neg

regimes3.7s

Accuracy

Total 25.0b remaining (18.6%)

Threshold costs 1.6b (1.2%)

15.4b54.5%Compound Interest
2.9b0%Complex division, real part
2.8b0%Complex division, imag part
1.3b0%Rosa's DopplerBench
1.1b95.5%The quadratic formula (r2)

localize3.6s

bsearch1.8s

end1.0ms