Details

simplify32.0m

Calls

18046 calls:

Slowest
2.0s
(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.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
(* (/ (* (* (* (expm1 (* (+ a b) eps)) eps) (* (expm1 (* (+ a b) eps)) eps)) (* (expm1 (* (+ a b) eps)) eps)) (* (* (* (cbrt (expm1 (* eps b))) (cbrt (expm1 (* eps b)))) (* (cbrt (expm1 (* eps b))) (cbrt (expm1 (* eps b))))) (* (cbrt (expm1 (* eps b))) (cbrt (expm1 (* eps b)))))) (/ (/ (* (* 1 1) 1) (* (* (expm1 (* eps a)) (expm1 (* eps a))) (expm1 (* eps a)))) (expm1 (* eps b))))
1.5s
(* (/ (* (* (* (expm1 (* (+ a b) eps)) eps) (* (expm1 (* (+ a b) eps)) eps)) (* (expm1 (* (+ a b) eps)) eps)) (* (* (* (cbrt (expm1 (* eps b))) (cbrt (expm1 (* eps b)))) (* (cbrt (expm1 (* eps b))) (cbrt (expm1 (* eps b))))) (* (cbrt (expm1 (* eps b))) (cbrt (expm1 (* eps b)))))) (* (* (/ (/ 1 (expm1 (* eps a))) (cbrt (expm1 (* eps b)))) (/ (/ 1 (expm1 (* eps a))) (cbrt (expm1 (* eps b))))) (/ (/ 1 (expm1 (* eps a))) (cbrt (expm1 (* eps b))))))
1.4s
(* (/ (* (* (* (expm1 (* (+ a b) eps)) (expm1 (* (+ a b) eps))) (expm1 (* (+ a b) eps))) (* (* eps eps) eps)) (* (* (* (cbrt (expm1 (* eps b))) (cbrt (expm1 (* eps b)))) (* (cbrt (expm1 (* eps b))) (cbrt (expm1 (* eps b))))) (* (cbrt (expm1 (* eps b))) (cbrt (expm1 (* eps b)))))) (* (* (/ (/ 1 (expm1 (* eps a))) (cbrt (expm1 (* eps b)))) (/ (/ 1 (expm1 (* eps a))) (cbrt (expm1 (* eps b))))) (/ (/ 1 (expm1 (* eps a))) (cbrt (expm1 (* eps b))))))

sample5.0m

Algorithm
54×intervals
16×halfpoints
Results
1.1m65390×body1280valid
38.4s14928×body2560valid
26.1s41315×body640valid
14.5s12655×body10240exit
9.9s82193×body80valid
9.3s20007×body320valid
7.3s58001×body80nan
3.8s10655×body160valid
2.5s47284×pre80true
811.0ms668×body1280nan
535.0ms691×body640nan
264.0ms238×body5120valid
220.0ms410×body320nan
51.0ms164×body160nan

prune2.8m

series38.9s

Calls

339 calls:

Slowest
1.1s
(- (fma (/ (+ (tan x) (tan eps)) (- 1 (* (* (tan x) (tan eps)) (* (tan x) (tan eps))))) (* (tan x) (tan eps)) (/ (+ (tan x) (tan eps)) (- 1 (* (* (tan x) (tan eps)) (* (tan x) (tan eps)))))) (tan x))
876.0ms
(fma (* (cbrt (pow (+ x 1) (/ 1 n))) (cbrt (pow (+ x 1) (/ 1 n)))) (cbrt (pow (+ x 1) (/ 1 n))) (- (* (pow x (/ (/ 1 n) 2)) (pow x (/ (/ 1 n) 2)))))
751.0ms
(* (cbrt (/ 1/2 (sqrt 2))) (* (/ (fma 1/60 (pow x 5) (* x (fma 1/3 (* x x) 2))) (sqrt 2)) (sin y)))
690.0ms
(- (/ (+ (tan x) (tan eps)) (- 1 (* (* (tan x) (tan eps)) (* (tan x) (tan eps))))) (tan x))
681.0ms
(* (/ (* (expm1 (* (+ a b) eps)) eps) (* (cbrt (expm1 (* eps b))) (cbrt (expm1 (* eps b))))) (/ (/ 1 (expm1 (* eps a))) (cbrt (expm1 (* eps b)))))

rewrite10.3s

Algorithm
109×rewrite-expression-head
Calls

339 calls:

Slowest
331.0ms
(/ (- (* (- (/ 1 (+ x 1)) (/ 2 x)) (- (/ 1 (+ x 1)) (/ 2 x))) (* (/ 1 (- x 1)) (/ 1 (- x 1)))) (- (- (/ 1 (+ x 1)) (/ 2 x)) (/ 1 (- x 1))))
197.0ms
(+ (- (/ 1 (+ x 1)) (/ 2 x)) (/ 1 (- x 1)))
156.0ms
(+ (- (/ 1 (+ 1 x)) (/ 2 x)) (+ (fma (- (/ (cbrt 2) x)) (/ (* (cbrt 2) (cbrt 2)) 1) (* (/ (cbrt 2) x) (/ (* (cbrt 2) (cbrt 2)) 1))) (/ 1 (- x 1))))
155.0ms
(* (- (/ 1 (+ x 1)) (/ 2 x)) (- (/ 1 (+ x 1)) (/ 2 x)))
153.0ms
(/ (+ (pow (exp x) 3) (pow 1 3)) (+ (* (exp x) (exp x)) (- (* 1 1) (* (exp x) 1))))
Rules
45769×times-frac
28829×*-un-lft-identity
27461×add-sqr-sqrt
25487×add-cube-cbrt
14815×prod-diff
7053×sqrt-prod
2017×distribute-rgt-neg-in
1987×distribute-lft-neg-in
1816×div-inv
1338×pow1
1233×add-exp-log
1120×distribute-lft-out
1033×add-cbrt-cube
830×cbrt-prod
683×associate-*l*
662×neg-mul-1
622×difference-of-squares
557×distribute-lft-out--
537×associate-*r*
522×fma-neg
518×unpow-prod-down
516×add-log-exp
493×associate-/r/
489×associate-+l+
481×distribute-rgt-in distribute-lft-in
476×associate--l+
382×associate-/l*
336×log1p-expm1-u
335×prod-exp
331×expm1-log1p-u insert-posit16
314×cube-prod
312×swap-sqr
283×pow-prod-down cbrt-unprod
274×div-exp
270×associate-/r*
257×flip3-- flip--
248×frac-times
230×flip-+ flip3-+
221×pow-prod-up
216×unswap-sqr
210×frac-sub
198×cbrt-undiv
190×sqrt-div
173×log-prod
166×associate-*l/
163×tan-quot associate-*r/
143×sqrt-pow1
133×pow-sqr
124×sqr-pow
120×fma-def
101×pow-plus
99×pow1/2
97×pow-unpow associate-/l/
71×cbrt-div *-commutative
70×pow2
69×sub-neg
68×diff-log
63×pow1/3
60×frac-2neg clear-num
53×exp-prod
45×cube-mult
41×unpow3
37×pow-flip
35×1-exp rec-exp
34×rem-sqrt-square
33×sum-log log-pow
32×un-div-inv
24×fma-udef
23×difference-of-sqr-1
22×exp-sum
21×associate-+r+ inv-pow
20×+-commutative log-div
18×div-sub hypot-def
17×frac-add
13×pow-pow rem-log-exp
12×distribute-rgt-out--
11×pow-exp pow-to-exp
neg-sub0 sqrt-unprod associate--r+
expm1-log1p pow-div expm1-udef exp-diff pow3 associate-+l-
associate--l-
log1p-udef neg-log sum-cubes distribute-neg-frac log1p-def sin-mult
log-rec sub-div rem-square-sqrt rem-cbrt-cube
sin-sum rem-cube-cbrt sin-cos-mult exp-neg log1p-expm1 +.c-commutative sqr-sin tan-sum frac-2neg-c rem-exp-log cos-sum
distribute-lft-neg-out diff-atan associate-+r- diff-sin difference-cubes diff-cos unsub-neg expm1-def

localize4.2s

regimes3.4s

Accuracy

Total 18.2b remaining (17.8%)

4.5b83.9%quad2p (problem 3.2.1, positive)
3.1b0%expq3 (problem 3.4.2)
2.6b90%quad2m (problem 3.2.1, negative)
2.3b76.2%2tan (problem 3.3.2)
1.7b86.2%2nthrt (problem 3.4.6)

bsearch3.0s

end1.0ms