Details

simplify46.2m

Calls

22072 calls:

Slowest
2.8s
(- (+ (* 4/9 (* (/ (pow (log -1) 3) (pow x 2)) (pow (/ 1 (* (log (/ -1 x)) (pow (- (log -1) (log (/ -1 x))) 14))) 1/3))) (+ (* 8/3 (* (/ (pow (log -1) 5) (pow x 2)) (pow (/ (pow (log (/ -1 x)) 5) (pow (- (log -1) (log (/ -1 x))) 26)) 1/3))) (+ (* 2/3 (* (/ 1 x) (pow (/ (pow (log (/ -1 x)) 5) (pow (- (log -1) (log (/ -1 x))) 8)) 1/3))) (+ (* 5/9 (* (/ 1 (pow x 2)) (pow (/ (pow (log (/ -1 x)) 8) (pow (- (log -1) (log (/ -1 x))) 14)) 1/3))) (+ (pow (/ (pow (log (/ -1 x)) 2) (pow (- (log -1) (log (/ -1 x))) 2)) 1/3) (+ (* 1/3 (* (/ 1 (pow x 2)) (pow (/ (pow (log (/ -1 x)) 5) (pow (- (log -1) (log (/ -1 x))) 8)) 1/3))) (+ (* 2/3 (* (/ 1 x) (pow (/ (pow (log (/ -1 x)) 11) (pow (- (log -1) (log (/ -1 x))) 14)) 1/3))) (+ (* 2 (* (/ (pow (log -1) 2) x) (pow (/ (pow (log (/ -1 x)) 5) (pow (- (log -1) (log (/ -1 x))) 14)) 1/3))) (+ (* 80/9 (* (/ (pow (log -1) 3) (pow x 2)) (pow (/ (pow (log (/ -1 x)) 11) (pow (- (log -1) (log (/ -1 x))) 26)) 1/3))) (+ (* (/ (log -1) (pow x 2)) (pow (/ (pow (log (/ -1 x)) 8) (pow (- (log -1) (log (/ -1 x))) 14)) 1/3)) (+ (* 1/3 (* (/ (pow (log -1) 2) (pow x 2)) (pow (/ 1 (* (log (/ -1 x)) (pow (- (log -1) (log (/ -1 x))) 8))) 1/3))) (+ (* 8/3 (* (/ (log -1) (pow x 2)) (pow (/ (pow (log (/ -1 x)) 17) (pow (- (log -1) (log (/ -1 x))) 26)) 1/3))) (+ (* 2/3 (* (/ (pow (log -1) 2) x) (pow (/ 1 (* (log (/ -1 x)) (pow (- (log -1) (log (/ -1 x))) 8))) 1/3))) (+ (* 1/3 (* (/ (pow (log -1) 3) (pow x 2)) (pow (/ (pow (log (/ -1 x)) 2) (pow (- (log -1) (log (/ -1 x))) 14)) 1/3))) (+ (* 4/9 (* (/ 1 (pow x 2)) (pow (/ (pow (log (/ -1 x)) 14) (pow (- (log -1) (log (/ -1 x))) 20)) 1/3))) (+ (* (/ (pow (log -1) 2) (pow x 2)) (pow (/ (pow (log (/ -1 x)) 2) (pow (- (log -1) (log (/ -1 x))) 14)) 1/3)) (+ (* 1/3 (* (/ (pow (log -1) 2) (pow x 2)) (pow (/ 1 (* (pow (log (/ -1 x)) 4) (pow (- (log -1) (log (/ -1 x))) 8))) 1/3))) (+ (* 1/3 (* (/ 1 (pow x 2)) (pow (/ (pow (log (/ -1 x)) 2) (pow (- (log -1) (log (/ -1 x))) 8)) 1/3))) (+ (* 8/9 (* (/ (pow (log -1) 5) (pow x 2)) (pow (/ 1 (* (log (/ -1 x)) (pow (- (log -1) (log (/ -1 x))) 20))) 1/3))) (* 32/9 (* (/ (pow (log -1) 3) (pow x 2)) (pow (/ (pow (log (/ -1 x)) 5) (pow (- (log -1) (log (/ -1 x))) 20)) 1/3)))))))))))))))))))))) (+ (* 4/9 (* (/ (pow (log -1) 6) (pow x 2)) (pow (/ (pow (log (/ -1 x)) 2) (pow (- (log -1) (log (/ -1 x))) 26)) 1/3))) (+ (* (/ (pow (log -1) 2) (pow x 2)) (pow (/ (pow (log (/ -1 x)) 5) (pow (- (log -1) (log (/ -1 x))) 14)) 1/3)) (+ (* 20/3 (* (/ (pow (log -1) 4) (pow x 2)) (pow (/ (pow (log (/ -1 x)) 8) (pow (- (log -1) (log (/ -1 x))) 26)) 1/3))) (+ (* 28/9 (* (/ (pow (log -1) 4) (pow x 2)) (pow (/ (pow (log (/ -1 x)) 2) (pow (- (log -1) (log (/ -1 x))) 20)) 1/3))) (+ (* 4/9 (* (/ (pow (log -1) 4) (pow x 2)) (pow (/ 1 (* (pow (log (/ -1 x)) 4) (pow (- (log -1) (log (/ -1 x))) 14))) 1/3))) (+ (* 20/3 (* (/ (pow (log -1) 2) (pow x 2)) (pow (/ (pow (log (/ -1 x)) 14) (pow (- (log -1) (log (/ -1 x))) 26)) 1/3))) (+ (* 4/9 (* (/ 1 (pow x 2)) (pow (/ (pow (log (/ -1 x)) 20) (pow (- (log -1) (log (/ -1 x))) 26)) 1/3))) (+ (* 1/3 (* (/ 1 (pow x 2)) (pow (/ (pow (log (/ -1 x)) 11) (pow (- (log -1) (log (/ -1 x))) 14)) 1/3))) (+ (* 2/3 (* (/ (pow (log -1) 3) x) (pow (/ (pow (log (/ -1 x)) 2) (pow (- (log -1) (log (/ -1 x))) 14)) 1/3))) (+ (* 4/3 (* (/ (log -1) x) (pow (/ (pow (log (/ -1 x)) 2) (pow (- (log -1) (log (/ -1 x))) 8)) 1/3))) (+ (* 8/9 (* (/ (log -1) (pow x 2)) (pow (/ (pow (log (/ -1 x)) 11) (pow (- (log -1) (log (/ -1 x))) 20)) 1/3))) (+ (* 14/9 (* (/ (log -1) (pow x 2)) (pow (/ (pow (log (/ -1 x)) 5) (pow (- (log -1) (log (/ -1 x))) 14)) 1/3))) (+ (* 2/3 (* (/ (log -1) (pow x 2)) (pow (/ 1 (* (log (/ -1 x)) (pow (- (log -1) (log (/ -1 x))) 8))) 1/3))) (+ (* 8/9 (* (/ (pow (log -1) 2) (pow x 2)) (pow (/ (pow (log (/ -1 x)) 8) (pow (- (log -1) (log (/ -1 x))) 20)) 1/3))) (+ (* 2/3 (* (/ (log -1) (pow x 2)) (pow (/ (pow (log (/ -1 x)) 2) (pow (- (log -1) (log (/ -1 x))) 8)) 1/3))) (* 2 (* (/ (log -1) x) (pow (/ (pow (log (/ -1 x)) 8) (pow (- (log -1) (log (/ -1 x))) 14)) 1/3)))))))))))))))))))
1.7s
(re (+.c (+.c (+.c (+.c (+.c (+.c (*.c (*.c (*.c (*.c (*.c (complex -1 1) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1)) (*.c (*.c (*.c (*.c (*.c (complex 6 0) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1))) (*.c (*.c (*.c (*.c (complex 15 0) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1))) (*.c (*.c (*.c (complex 20 0) (complex -1 1)) (complex -1 1)) (complex -1 1))) (*.c (*.c (complex 15 0) (complex -1 1)) (complex -1 1))) (*.c (complex 6 0) (complex -1 1))) (complex 1 0)))
1.6s
(im (+.c (+.c (+.c (+.c (+.c (+.c (*.c (*.c (*.c (*.c (*.c (complex -1 1) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1)) (*.c (*.c (*.c (*.c (*.c (complex 6 0) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1))) (*.c (*.c (*.c (*.c (complex 15 0) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1))) (*.c (*.c (*.c (complex 20 0) (complex -1 1)) (complex -1 1)) (complex -1 1))) (*.c (*.c (complex 15 0) (complex -1 1)) (complex -1 1))) (*.c (complex 6 0) (complex -1 1))) (complex 1 0)))
1.4s
(/ (* (* (* c c) c) (* (* a a) a)) (* (* a a) a))
1.3s
(/ (/ (* (* (+ (+ (sqrt (fma (* -4 c) a (* b b))) (- b)) (+ (- b) b)) (+ (+ (sqrt (fma (* -4 c) a (* b b))) (- b)) (+ (- b) b))) (+ (+ (sqrt (fma (* -4 c) a (* b b))) (- b)) (+ (- b) b))) (* (* 2 2) 2)) (* (* a a) a))

sample5.0m

Algorithm
55×intervals
16×halfpoints
Results
1.1m66101×body1280valid
41.1s17659×body2560valid
26.5s40117×body640valid
14.0s13066×body10240exit
9.8s89659×body80valid
8.6s19780×body320valid
6.7s55292×body80nan
3.3s10451×body160valid
2.7s47486×pre80true
781.0ms635×body1280nan
603.0ms502×body5120valid
472.0ms639×body640nan
223.0ms332×body320nan
107.0ms212×body160nan

prune3.4m

series38.0s

Calls

356 calls:

Slowest
1.2s
(fma (/ (+ (tan x) (tan eps)) (- (* 1 1) (* (* (tan x) (tan x)) (* (tan eps) (tan eps))))) (+ 1 (* (tan x) (tan eps))) (- (tan x)))
871.0ms
(fma (- (/ (cbrt 2) (cbrt x))) (/ (* (cbrt 2) (cbrt 2)) (* (cbrt x) (cbrt x))) (* (/ (cbrt 2) (cbrt x)) (/ (* (cbrt 2) (cbrt 2)) (* (cbrt x) (cbrt x)))))
790.0ms
(fma (/ (+ (tan x) (tan eps)) (- (* 1 1) (* (* (tan x) (tan eps)) (* (tan x) (tan eps))))) (+ 1 (* (tan x) (tan eps))) (- (tan x)))
599.0ms
(/ (/ (* (expm1 (* (+ a b) eps)) eps) (expm1 (* eps a))) (expm1 (* eps b)))
544.0ms
(* (cbrt (/ (log1p (- x)) (log1p x))) (cbrt (/ (log1p (- x)) (log1p x))))

rewrite9.7s

Algorithm
114×rewrite-expression-head
Calls

356 calls:

Slowest
402.0ms
(- (cos (+ x eps)) (cos x))
232.0ms
(/ (+ (+ (sqrt (fma (* -4 c) a (* b b))) (- b)) (+ (- b) b)) 2)
228.0ms
(+ (- (/ 1 (+ x 1)) (/ 2 x)) (/ 1 (- x 1)))
187.0ms
(/ (+ (+ (sqrt (fma (* -4 c) a (* b b))) (- b)) (+ (- b) b)) 2)
184.0ms
(/ (/ (+ (+ (sqrt (fma (* -4 c) a (* b b))) (- b)) (+ (- b) b)) 2) a)
Rules
14150×*-un-lft-identity
12999×times-frac
11476×add-sqr-sqrt
9578×add-cube-cbrt
8069×sqrt-prod
6574×prod-diff
2073×distribute-lft-out
1544×pow1
1102×add-exp-log
976×add-cbrt-cube
971×unpow-prod-down
923×cbrt-prod
762×distribute-rgt-in distribute-lft-in
744×div-inv
719×difference-of-squares
558×add-log-exp
548×distribute-rgt-neg-in
545×distribute-lft-out--
492×associate-/r/
491×associate-/r*
483×associate-+l+
433×associate-*l*
418×associate-/l*
409×fma-neg
392×associate-*r*
352×expm1-log1p-u
351×log1p-expm1-u
349×insert-posit16
295×cube-prod
293×pow-prod-down
292×sqrt-div
290×pow-prod-up
280×sqr-pow
277×log-prod
244×prod-exp
234×swap-sqr flip-+ flip3-+
230×cbrt-unprod
223×div-exp
188×pow-sqr
164×cbrt-undiv
160×exp-sum
154×unswap-sqr
149×flip3-- flip--
147×pow-plus
128×pow-unpow
127×fma-def
126×distribute-lft-neg-in
111×pow2
104×log-pow
93×exp-prod
84×pow1/3
79×tan-quot
70×*-commutative diff-log
68×frac-2neg clear-num sub-neg
60×sqrt-pow1
51×pow1/2
50×associate-/l/
48×frac-times
42×neg-mul-1
41×associate-*r/
40×unpow3 cube-mult associate-*l/
39×sum-log cbrt-div
34×div-sub
33×frac-add
30×pow-flip
29×fma-udef
27×rem-sqrt-square
26×1-exp rec-exp
21×+-commutative
20×frac-sub
19×rem-log-exp
18×neg-sub0
16×associate-+l-
15×inv-pow
12×log-div
10×pow-exp associate-+r- neg-log pow-to-exp
difference-of-sqr-1
associate--l- pow-pow unsub-neg sin-mult
expm1-udef exp-diff sqr-sin
expm1-log1p
associate-+r+ associate--r+ distribute-rgt-out-- log1p-udef
associate--l+ log1p-expm1 sub-div rem-exp-log
sin-sum sqrt-unprod +.c-commutative exp-to-pow exp-neg log1p-def hypot-def rem-square-sqrt cos-sum tan-sum
diff-atan rem-cube-cbrt hypot-udef frac-2neg-c diff-sin difference-cubes diff-cos associate--r- expm1-def

regimes5.0s

Accuracy

Total 23.9b remaining (15.4%)

4.7b83.4%quad2p (problem 3.2.1, positive)
4.3b84.5%quadm (p42, negative)
3.6b-8%expq3 (problem 3.4.2)
2.7b89%quadp (p42, positive)
1.4b94.4%quad2m (problem 3.2.1, negative)

localize4.5s

bsearch2.9s

end1.0ms