Details

simplify27.2m

Calls

16242 calls:

Slowest
2.7s
(- (+ (* 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.9s
(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.7s
(/ (* (* (* (sin x) (sin x)) (sin x)) (* (* (sin x) (sin x)) (sin x))) (* (* (* (* x x) (+ 1 (cos x))) (* (* x x) (+ 1 (cos x)))) (* (* x x) (+ 1 (cos x)))))
1.7s
(/ (* (* (- 0 (* a c)) (- 0 (* a c))) (- 0 (* a c))) (* (* a a) a))
1.7s
(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)))

sample5.1m

Algorithm
56×intervals
16×halfpoints
Results
1.1m67565×body1280valid
39.8s17315×body2560valid
27.2s41847×body640valid
14.4s12696×body10240exit
12.0s93651×body80valid
8.1s20628×body320valid
7.4s62797×body80nan
2.8s10586×body160valid
1.9s47454×pre80true
760.0ms675×body1280nan
608.0ms657×body640nan
565.0ms469×body5120valid
406.0ms179×body160nan
250.0ms381×body320nan

prune2.8m

series37.7s

Calls

365 calls:

Slowest
1.6s
(- (fma (* (* (/ (sin x) (cos x)) (/ (sin x) (cos x))) (/ (sin x) (cos x))) (/ (/ (* (sin eps) (sin eps)) (* (cos eps) (cos eps))) (- 1 (/ (* (* (* (/ (sin x) (cos x)) (/ (sin x) (cos x))) (/ (sin x) (cos x))) (* (* (sin eps) (sin eps)) (sin eps))) (* (* (cos eps) (cos eps)) (cos eps))))) (fma (/ (sin x) (cos x)) (/ (/ (* (sin eps) (sin eps)) (* (cos eps) (cos eps))) (- 1 (/ (* (* (* (/ (sin x) (cos x)) (/ (sin x) (cos x))) (/ (sin x) (cos x))) (* (* (sin eps) (sin eps)) (sin eps))) (* (* (cos eps) (cos eps)) (cos eps))))) (+ (fma (* (/ (sin x) (cos x)) (/ (sin x) (cos x))) (/ (* (* (sin eps) (sin eps)) (sin eps)) (* (* (* (cos eps) (cos eps)) (cos eps)) (- 1 (/ (* (* (* (/ (sin x) (cos x)) (/ (sin x) (cos x))) (/ (sin x) (cos x))) (* (* (sin eps) (sin eps)) (sin eps))) (* (* (cos eps) (cos eps)) (cos eps)))))) (/ (/ (sin eps) (cos eps)) (- 1 (/ (* (* (* (/ (sin x) (cos x)) (/ (sin x) (cos x))) (/ (sin x) (cos x))) (* (* (sin eps) (sin eps)) (sin eps))) (* (* (cos eps) (cos eps)) (cos eps)))))) (/ (/ (sin x) (cos x)) (- 1 (/ (* (* (* (/ (sin x) (cos x)) (/ (sin x) (cos x))) (/ (sin x) (cos x))) (* (* (sin eps) (sin eps)) (sin eps))) (* (* (cos eps) (cos eps)) (cos eps)))))))) (/ (sin x) (cos x)))
1.2s
(fma (/ (+ (tan x) (tan eps)) (- 1 (* (* (* (tan eps) (tan x)) (* (tan eps) (tan x))) (* (tan eps) (tan x))))) (+ (* 1 1) (+ (* (* (tan x) (tan eps)) (* (tan x) (tan eps))) (* 1 (* (tan x) (tan eps))))) (- (tan x)))
752.0ms
(fma (- (cbrt (/ 2 x))) (* (cbrt (/ 2 x)) (cbrt (/ 2 x))) (* (cbrt (/ 2 x)) (* (cbrt (/ 2 x)) (cbrt (/ 2 x)))))
596.0ms
(/ (/ (* (expm1 (* (+ a b) eps)) eps) (expm1 (* eps a))) (expm1 (* eps b)))
510.0ms
(* (cbrt (/ (log1p (- x)) (log1p x))) (cbrt (/ (log1p (- x)) (log1p x))))

rewrite9.5s

Algorithm
115×rewrite-expression-head
Calls

365 calls:

Slowest
448.0ms
(cbrt (* (* (* (* (cbrt (expm1 (* a x))) (cbrt (expm1 (* a x)))) (* (cbrt (expm1 (* a x))) (cbrt (expm1 (* a x))))) (* (cbrt (expm1 (* a x))) (cbrt (expm1 (* a x))))) (expm1 (* a x))))
439.0ms
(/ (- (* (sqrt (+ x 1)) (sqrt (+ x 1))) (* (sqrt x) (sqrt x))) (+ (sqrt (+ x 1)) (sqrt x)))
319.0ms
(- (* (cbrt (+ x 1)) (cbrt (+ x 1))) (* (cbrt (* (* (cbrt x) (cbrt x)) (* (* (cbrt (cbrt x)) (cbrt (cbrt x))) (cbrt (cbrt x))))) (cbrt (* (* (cbrt x) (cbrt x)) (* (* (cbrt (cbrt x)) (cbrt (cbrt x))) (cbrt (cbrt x)))))))
213.0ms
(+ (- (/ 1 (+ x 1)) (/ 2 x)) (/ 1 (- x 1)))
167.0ms
(/ (+ (pow (exp x) 3) (pow 1 3)) (+ (* (exp x) (exp x)) (- (* 1 1) (* (exp x) 1))))
Rules
8179×*-un-lft-identity
7503×add-sqr-sqrt
7460×times-frac
5871×add-cube-cbrt
3403×prod-diff
2948×sqrt-prod
1469×pow1
1148×add-exp-log
984×add-cbrt-cube
770×associate-*l*
716×distribute-lft-out
567×difference-of-squares
557×add-log-exp
532×div-inv
472×associate-+l+
467×distribute-lft-out--
460×cbrt-prod
426×associate-*r*
360×log1p-expm1-u
358×expm1-log1p-u
357×insert-posit16
340×fma-neg
337×log-prod associate-/r/
307×associate-/l*
294×associate-/r*
292×pow-prod-down
279×prod-exp
274×unpow-prod-down
263×swap-sqr
243×pow-prod-up
241×cbrt-unprod
234×distribute-rgt-neg-in
208×div-exp
184×flip-+ flip3-+
166×distribute-lft-neg-in
159×pow-sqr
156×sqrt-div unswap-sqr
149×cbrt-undiv
146×flip3-- flip--
130×exp-sum
122×pow-plus
111×sqrt-pow1
107×fma-def
101×pow1/2
99×tan-quot
98×pow-unpow
95×associate-*r/
91×pow2
87×sqr-pow
85×frac-times
78×*-commutative
71×diff-log
69×associate-*l/
64×sub-neg
62×pow-flip
61×pow1/3
60×frac-2neg clear-num
55×neg-mul-1
47×cbrt-div
41×associate-/l/
39×rem-sqrt-square
36×sum-log
35×rem-log-exp
33×1-exp rec-exp
32×fma-udef
31×log-pow
23×frac-add
21×+-commutative exp-prod
20×div-sub hypot-def
19×cube-prod
16×inv-pow
15×log-div
14×associate--l+
13×frac-sub pow-exp pow-to-exp
10×pow-div
associate--l- distribute-rgt-in difference-of-sqr-1 pow-pow distribute-lft-in
neg-sub0 associate-+r+
neg-log sqrt-unprod
cos-mult associate--r+ cube-mult
expm1-log1p expm1-udef pow3 sum-cubes distribute-neg-frac distribute-rgt-out-- rem-square-sqrt sin-mult
sin-sum sqr-cos rem-cbrt-cube
log1p-def distribute-frac-neg +.c-commutative sqr-sin un-div-inv frac-2neg-c associate-+l- cos-sum tan-sum log1p-udef
distribute-lft-neg-out diff-atan associate-+r- rem-cube-cbrt log1p-expm1 unpow3 sub0-neg sub-div diff-sin diff-cos expm1-def

localize4.8s

regimes4.4s

Accuracy

Total 21.5b remaining (19.9%)

4.6b83.6%quadm (p42, negative)
4.1b85.5%quadp (p42, positive)
3.3b0%expq3 (problem 3.4.2)
3.2b87.5%quad2m (problem 3.2.1, negative)
1.3b89.2%2nthrt (problem 3.4.6)

bsearch2.9s

end1.0ms