Details

Time bar (total: 2.0m)

sample353.0ms

Algorithm
intervals
Results
160.0ms97×body1280valid
61.0ms21×body2560valid
58.0ms59×body640valid
45.0ms24×body320valid
9.0ms42×body80valid
6.0ms13×body160valid

simplify17.0ms

Counts
1 → 1
Calls
1 calls:
Slowest
17.0ms
(- (tan (+ x eps)) (tan x))

prune54.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 36.2b

localize32.0ms

Local error

Found 2 expressions with local error:

2.7b
(tan (+ x eps))
1.5b
(- (tan (+ x eps)) (tan x))

rewrite37.0ms

Algorithm
rewrite-expression-head
Rules
11×add-sqr-sqrt *-un-lft-identity
prod-diff add-cube-cbrt
tan-quot add-log-exp
fma-neg
expm1-log1p-u pow1 tan-sum add-cbrt-cube add-exp-log frac-sub insert-posit16 log1p-expm1-u
sub-neg flip3-- diff-log flip-- distribute-lft-out-- difference-of-squares
Counts
2 → 43
Calls
2 calls:
Slowest
26.0ms
(- (tan (+ x eps)) (tan x))
10.0ms
(tan (+ x eps))

series216.0ms

Counts
2 → 6
Calls
2 calls:
Slowest
125.0ms
(- (tan (+ x eps)) (tan x))
91.0ms
(tan (+ x eps))

simplify4.2s

Counts
65 → 49
Calls
65 calls:
Slowest
546.0ms
(+ x (+ (* 1/3 (pow x 3)) eps))
425.0ms
(* (* (- (tan (+ x eps)) (tan x)) (- (tan (+ x eps)) (tan x))) (- (tan (+ x eps)) (tan x)))
338.0ms
(- (* (+ (tan x) (tan eps)) (cos x)) (* (- 1 (* (tan x) (tan eps))) (sin x)))
215.0ms
(- (pow (tan (+ x eps)) 3) (pow (tan x) 3))
209.0ms
(+ (* x (pow eps 2)) (+ eps (* (pow x 2) eps)))

prune501.0ms

Pruning

10 alts after pruning (10 fresh and 0 done)

Merged error: 13.7b

localize28.0ms

Local error

Found 4 expressions with local error:

2.6b
(- (/ (+ (tan x) (tan eps)) (- 1 (* (tan x) (tan eps)))) (tan x))
0.2b
(* (tan x) (tan eps))
0.1b
(/ (+ (tan x) (tan eps)) (- 1 (* (tan x) (tan eps))))
0.1b
(+ (tan x) (tan eps))

rewrite150.0ms

Algorithm
rewrite-expression-head
Rules
102×*-un-lft-identity
73×add-sqr-sqrt
66×add-cube-cbrt
61×times-frac
54×prod-diff
18×fma-neg
17×distribute-lft-out
10×associate-/r/
tan-quot
add-cbrt-cube add-exp-log add-log-exp
pow1 flip3-- flip--
div-inv
expm1-log1p-u insert-posit16 log1p-expm1-u associate-/l*
associate-/r* fma-def associate-*r* associate-*l* associate-/l/
flip3-+ frac-add flip-+ difference-of-squares
frac-times cbrt-undiv +-commutative clear-num sum-log sub-neg frac-2neg diff-log div-exp pow-prod-down associate-*l/ prod-exp associate-*r/ *-commutative frac-sub cbrt-unprod distribute-lft-out-- unswap-sqr
Counts
4 → 173
Calls
4 calls:
Slowest
89.0ms
(- (/ (+ (tan x) (tan eps)) (- 1 (* (tan x) (tan eps)))) (tan x))
29.0ms
(/ (+ (tan x) (tan eps)) (- 1 (* (tan x) (tan eps))))
15.0ms
(+ (tan x) (tan eps))
13.0ms
(* (tan x) (tan eps))

series1.0s

Counts
4 → 12
Calls
4 calls:
Slowest
473.0ms
(- (/ (+ (tan x) (tan eps)) (- 1 (* (tan x) (tan eps)))) (tan x))
300.0ms
(/ (+ (tan x) (tan eps)) (- 1 (* (tan x) (tan eps))))
140.0ms
(+ (tan x) (tan eps))
133.0ms
(* (tan x) (tan eps))

simplify28.1s

Counts
257 → 185
Calls
257 calls:
Slowest
592.0ms
(+ x (+ (* 1/3 (pow x 3)) eps))
551.0ms
(+ x (+ (* 1/3 (pow x 3)) eps))
498.0ms
(fma (* (cbrt (/ (+ (tan x) (tan eps)) (- 1 (* (tan x) (tan eps))))) (cbrt (/ (+ (tan x) (tan eps)) (- 1 (* (tan x) (tan eps)))))) (cbrt (/ (+ (tan x) (tan eps)) (- 1 (* (tan x) (tan eps))))) (- (* (cbrt (tan x)) (* (cbrt (tan x)) (cbrt (tan x))))))
483.0ms
(fma (/ (sqrt (+ (tan x) (tan eps))) (sqrt (- 1 (* (tan x) (tan eps))))) (/ (sqrt (+ (tan x) (tan eps))) (sqrt (- 1 (* (tan x) (tan eps))))) (- (* (cbrt (tan x)) (* (cbrt (tan x)) (cbrt (tan x))))))
479.0ms
(fma (- (cbrt (tan x))) (* (cbrt (tan x)) (cbrt (tan x))) (* (cbrt (tan x)) (* (cbrt (tan x)) (cbrt (tan x)))))

prune1.9s

Pruning

12 alts after pruning (12 fresh and 0 done)

Merged error: 11.9b

localize73.0ms

Local error

Found 4 expressions with local error:

2.6b
(- (/ (+ (tan eps) (tan x)) (- 1 (* (* (tan x) (tan eps)) (* (tan x) (tan eps))))) (tan x))
0.2b
(fma (* (tan x) (tan eps)) (/ (+ (tan eps) (tan x)) (- 1 (* (* (tan x) (tan eps)) (* (tan x) (tan eps))))) (- (/ (+ (tan eps) (tan x)) (- 1 (* (* (tan x) (tan eps)) (* (tan x) (tan eps))))) (tan x)))
0.2b
(* (* (tan x) (tan eps)) (* (tan x) (tan eps)))
0.2b
(* (* (tan x) (tan eps)) (* (tan x) (tan eps)))

rewrite254.0ms

Algorithm
rewrite-expression-head
Rules
128×*-un-lft-identity
91×add-sqr-sqrt
82×pow1
81×times-frac
78×prod-diff
70×add-cube-cbrt
65×tan-quot
34×frac-times pow-prod-down difference-of-squares
28×add-cbrt-cube add-exp-log
26×fma-neg
22×associate-*l/ associate-*r/
20×distribute-lft-out
16×prod-exp cbrt-unprod
associate-/r/ pow-sqr pow-prod-up
add-log-exp
flip3-- flip--
expm1-log1p-u pow-plus insert-posit16 log1p-expm1-u div-inv
pow2 swap-sqr associate-*r* associate-*l* *-commutative
sub-neg diff-log frac-sub fma-udef distribute-lft-out--
Counts
4 → 238
Calls
4 calls:
Slowest
97.0ms
(- (/ (+ (tan eps) (tan x)) (- 1 (* (* (tan x) (tan eps)) (* (tan x) (tan eps))))) (tan x))
90.0ms
(* (* (tan x) (tan eps)) (* (tan x) (tan eps)))
62.0ms
(* (* (tan x) (tan eps)) (* (tan x) (tan eps)))
0.0ms
(fma (* (tan x) (tan eps)) (/ (+ (tan eps) (tan x)) (- 1 (* (* (tan x) (tan eps)) (* (tan x) (tan eps))))) (- (/ (+ (tan eps) (tan x)) (- 1 (* (* (tan x) (tan eps)) (* (tan x) (tan eps))))) (tan x)))

series2.0s

Counts
4 → 12
Calls
4 calls:
Slowest
1.1s
(fma (* (tan x) (tan eps)) (/ (+ (tan eps) (tan x)) (- 1 (* (* (tan x) (tan eps)) (* (tan x) (tan eps))))) (- (/ (+ (tan eps) (tan x)) (- 1 (* (* (tan x) (tan eps)) (* (tan x) (tan eps))))) (tan x)))
630.0ms
(- (/ (+ (tan eps) (tan x)) (- 1 (* (* (tan x) (tan eps)) (* (tan x) (tan eps))))) (tan x))
161.0ms
(* (* (tan x) (tan eps)) (* (tan x) (tan eps)))
146.0ms
(* (* (tan x) (tan eps)) (* (tan x) (tan eps)))

simplify43.4s

Counts
349 → 250
Calls
349 calls:
Slowest
823.0ms
(fma (/ (sqrt (+ (tan eps) (tan x))) (* (cbrt (- 1 (* (* (tan x) (tan eps)) (* (tan x) (tan eps))))) (cbrt (- 1 (* (* (tan x) (tan eps)) (* (tan x) (tan eps))))))) (/ (sqrt (+ (tan eps) (tan x))) (cbrt (- 1 (* (* (tan x) (tan eps)) (* (tan x) (tan eps)))))) (- (* (sqrt (tan x)) (sqrt (tan x)))))
814.0ms
(* (* (* (* (tan x) (tan x)) (tan x)) (* (* (tan eps) (tan eps)) (tan eps))) (* (* (* (tan x) (tan x)) (tan x)) (* (* (tan eps) (tan eps)) (tan eps))))
554.0ms
(fma (/ (* (cbrt (+ (tan eps) (tan x))) (cbrt (+ (tan eps) (tan x)))) (* (cbrt (- 1 (* (* (tan x) (tan eps)) (* (tan x) (tan eps))))) (cbrt (- 1 (* (* (tan x) (tan eps)) (* (tan x) (tan eps))))))) (/ (cbrt (+ (tan eps) (tan x))) (cbrt (- 1 (* (* (tan x) (tan eps)) (* (tan x) (tan eps)))))) (- (* (tan x) 1)))
547.0ms
(fma (/ (* (cbrt (+ (tan eps) (tan x))) (cbrt (+ (tan eps) (tan x)))) 1) (/ (cbrt (+ (tan eps) (tan x))) (- 1 (* (* (tan x) (tan eps)) (* (tan x) (tan eps))))) (- (* (tan x) 1)))
539.0ms
(* (* (* (* (tan x) (tan x)) (tan x)) (* (* (tan eps) (tan eps)) (tan eps))) (* (* (* (tan x) (tan x)) (tan x)) (* (* (tan eps) (tan eps)) (tan eps))))

prune2.4s

Pruning

12 alts after pruning (12 fresh and 0 done)

Merged error: 0.3b

localize79.0ms

Local error

Found 4 expressions with local error:

2.6b
(fma (/ (+ (tan eps) (tan x)) (- (pow 1 3) (pow (* (* (tan x) (tan eps)) (* (tan x) (tan eps))) 3))) (+ (* 1 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)))
0.2b
(pow (* (* (tan x) (tan eps)) (* (tan x) (tan eps))) 3)
0.2b
(fma (* (tan x) (tan eps)) (/ (+ (tan eps) (tan x)) (- 1 (* (* (tan x) (tan eps)) (* (tan x) (tan eps))))) (fma (/ (+ (tan eps) (tan x)) (- (pow 1 3) (pow (* (* (tan x) (tan eps)) (* (tan x) (tan eps))) 3))) (+ (* 1 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))))
0.2b
(* (* (tan x) (tan eps)) (* (tan x) (tan eps)))

rewrite113.0ms

Algorithm
rewrite-expression-head
Rules
83×pow1
64×tan-quot
34×frac-times pow-prod-down
29×add-cbrt-cube add-exp-log
22×associate-*l/ associate-*r/
16×pow-pow prod-exp cbrt-unprod
15×cube-div
pow-sqr pow-prod-up
add-sqr-sqrt *-un-lft-identity pow-exp add-cube-cbrt rem-cube-cbrt
expm1-log1p-u pow-plus insert-posit16 log1p-expm1-u add-log-exp
pow-unpow
pow2 fma-udef
cube-mult pow-to-exp unpow-prod-down unpow3 cube-prod swap-sqr associate-*r* associate-*l* *-commutative sqr-pow
Counts
4 → 134
Calls
4 calls:
Slowest
61.0ms
(* (* (tan x) (tan eps)) (* (tan x) (tan eps)))
49.0ms
(pow (* (* (tan x) (tan eps)) (* (tan x) (tan eps))) 3)
0.0ms
(fma (/ (+ (tan eps) (tan x)) (- (pow 1 3) (pow (* (* (tan x) (tan eps)) (* (tan x) (tan eps))) 3))) (+ (* 1 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)))
0.0ms
(fma (* (tan x) (tan eps)) (/ (+ (tan eps) (tan x)) (- 1 (* (* (tan x) (tan eps)) (* (tan x) (tan eps))))) (fma (/ (+ (tan eps) (tan x)) (- (pow 1 3) (pow (* (* (tan x) (tan eps)) (* (tan x) (tan eps))) 3))) (+ (* 1 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))))

series2.5s

Counts
4 → 12
Calls
4 calls:
Slowest
1.3s
(fma (* (tan x) (tan eps)) (/ (+ (tan eps) (tan x)) (- 1 (* (* (tan x) (tan eps)) (* (tan x) (tan eps))))) (fma (/ (+ (tan eps) (tan x)) (- (pow 1 3) (pow (* (* (tan x) (tan eps)) (* (tan x) (tan eps))) 3))) (+ (* 1 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))))
984.0ms
(fma (/ (+ (tan eps) (tan x)) (- (pow 1 3) (pow (* (* (tan x) (tan eps)) (* (tan x) (tan eps))) 3))) (+ (* 1 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)))
144.0ms
(pow (* (* (tan x) (tan eps)) (* (tan x) (tan eps))) 3)
112.0ms
(* (* (tan x) (tan eps)) (* (tan x) (tan eps)))

simplify22.0s

Counts
167 → 146
Calls
167 calls:
Slowest
1.3s
(- (+ (/ (* (pow (sin x) 2) (pow (sin eps) 3)) (* (pow (cos x) 2) (* (- 1 (/ (* (pow (sin x) 6) (pow (sin eps) 6)) (* (pow (cos x) 6) (pow (cos eps) 6)))) (pow (cos eps) 3)))) (+ (/ (* (pow (sin x) 3) (pow (sin eps) 2)) (* (pow (cos x) 3) (* (- 1 (/ (* (pow (sin x) 6) (pow (sin eps) 6)) (* (pow (cos x) 6) (pow (cos eps) 6)))) (pow (cos eps) 2)))) (+ (/ (sin eps) (* (- 1 (/ (* (pow (sin x) 6) (pow (sin eps) 6)) (* (pow (cos x) 6) (pow (cos eps) 6)))) (cos eps))) (+ (/ (* (pow (sin x) 4) (pow (sin eps) 5)) (* (pow (cos x) 4) (* (- 1 (/ (* (pow (sin x) 6) (pow (sin eps) 6)) (* (pow (cos x) 6) (pow (cos eps) 6)))) (pow (cos eps) 5)))) (+ (/ (* (sin x) (pow (sin eps) 2)) (* (cos x) (* (pow (cos eps) 2) (- 1 (/ (* (pow (sin x) 2) (pow (sin eps) 2)) (* (pow (cos x) 2) (pow (cos eps) 2))))))) (+ (/ (* (pow (sin x) 5) (pow (sin eps) 4)) (* (pow (cos x) 5) (* (- 1 (/ (* (pow (sin x) 6) (pow (sin eps) 6)) (* (pow (cos x) 6) (pow (cos eps) 6)))) (pow (cos eps) 4)))) (+ (/ (* (pow (sin x) 2) (sin eps)) (* (pow (cos x) 2) (* (cos eps) (- 1 (/ (* (pow (sin x) 2) (pow (sin eps) 2)) (* (pow (cos x) 2) (pow (cos eps) 2))))))) (/ (sin x) (* (cos x) (- 1 (/ (* (pow (sin x) 6) (pow (sin eps) 6)) (* (pow (cos x) 6) (pow (cos eps) 6))))))))))))) (/ (sin x) (cos x)))
1.3s
(- (+ (/ (* (pow (sin x) 2) (pow (sin eps) 3)) (* (pow (cos x) 2) (* (- 1 (/ (* (pow (sin x) 6) (pow (sin eps) 6)) (* (pow (cos x) 6) (pow (cos eps) 6)))) (pow (cos eps) 3)))) (+ (/ (* (pow (sin x) 3) (pow (sin eps) 2)) (* (pow (cos x) 3) (* (- 1 (/ (* (pow (sin x) 6) (pow (sin eps) 6)) (* (pow (cos x) 6) (pow (cos eps) 6)))) (pow (cos eps) 2)))) (+ (/ (sin eps) (* (- 1 (/ (* (pow (sin x) 6) (pow (sin eps) 6)) (* (pow (cos x) 6) (pow (cos eps) 6)))) (cos eps))) (+ (/ (* (pow (sin x) 4) (pow (sin eps) 5)) (* (pow (cos x) 4) (* (- 1 (/ (* (pow (sin x) 6) (pow (sin eps) 6)) (* (pow (cos x) 6) (pow (cos eps) 6)))) (pow (cos eps) 5)))) (+ (/ (* (sin x) (pow (sin eps) 2)) (* (cos x) (* (pow (cos eps) 2) (- 1 (/ (* (pow (sin x) 2) (pow (sin eps) 2)) (* (pow (cos x) 2) (pow (cos eps) 2))))))) (+ (/ (* (pow (sin x) 5) (pow (sin eps) 4)) (* (pow (cos x) 5) (* (- 1 (/ (* (pow (sin x) 6) (pow (sin eps) 6)) (* (pow (cos x) 6) (pow (cos eps) 6)))) (pow (cos eps) 4)))) (+ (/ (* (pow (sin x) 2) (sin eps)) (* (pow (cos x) 2) (* (cos eps) (- 1 (/ (* (pow (sin x) 2) (pow (sin eps) 2)) (* (pow (cos x) 2) (pow (cos eps) 2))))))) (/ (sin x) (* (cos x) (- 1 (/ (* (pow (sin x) 6) (pow (sin eps) 6)) (* (pow (cos x) 6) (pow (cos eps) 6))))))))))))) (/ (sin x) (cos x)))
792.0ms
(- (+ (/ (* (pow (sin x) 2) (pow (sin eps) 3)) (* (pow (cos x) 2) (* (- 1 (/ (* (pow (sin x) 6) (pow (sin eps) 6)) (* (pow (cos x) 6) (pow (cos eps) 6)))) (pow (cos eps) 3)))) (+ (/ (* (pow (sin x) 3) (pow (sin eps) 2)) (* (pow (cos x) 3) (* (- 1 (/ (* (pow (sin x) 6) (pow (sin eps) 6)) (* (pow (cos x) 6) (pow (cos eps) 6)))) (pow (cos eps) 2)))) (+ (/ (sin eps) (* (- 1 (/ (* (pow (sin x) 6) (pow (sin eps) 6)) (* (pow (cos x) 6) (pow (cos eps) 6)))) (cos eps))) (+ (/ (* (pow (sin x) 4) (pow (sin eps) 5)) (* (pow (cos x) 4) (* (- 1 (/ (* (pow (sin x) 6) (pow (sin eps) 6)) (* (pow (cos x) 6) (pow (cos eps) 6)))) (pow (cos eps) 5)))) (+ (/ (* (pow (sin x) 5) (pow (sin eps) 4)) (* (pow (cos x) 5) (* (- 1 (/ (* (pow (sin x) 6) (pow (sin eps) 6)) (* (pow (cos x) 6) (pow (cos eps) 6)))) (pow (cos eps) 4)))) (/ (sin x) (* (cos x) (- 1 (/ (* (pow (sin x) 6) (pow (sin eps) 6)) (* (pow (cos x) 6) (pow (cos eps) 6))))))))))) (/ (sin x) (cos x)))
788.0ms
(- (+ (/ (sin x) (* (cos x) (- 1 (/ (* (pow (sin x) 6) (pow (sin eps) 6)) (* (pow (cos x) 6) (pow (cos eps) 6)))))) (+ (/ (* (pow (sin x) 2) (pow (sin eps) 3)) (* (pow (cos x) 2) (* (- 1 (/ (* (pow (sin x) 6) (pow (sin eps) 6)) (* (pow (cos x) 6) (pow (cos eps) 6)))) (pow (cos eps) 3)))) (+ (/ (sin eps) (* (- 1 (/ (* (pow (sin x) 6) (pow (sin eps) 6)) (* (pow (cos x) 6) (pow (cos eps) 6)))) (cos eps))) (+ (/ (* (pow (sin x) 4) (pow (sin eps) 5)) (* (pow (cos x) 4) (* (- 1 (/ (* (pow (sin x) 6) (pow (sin eps) 6)) (* (pow (cos x) 6) (pow (cos eps) 6)))) (pow (cos eps) 5)))) (+ (/ (* (pow (sin x) 5) (pow (sin eps) 4)) (* (pow (cos x) 5) (* (- 1 (/ (* (pow (sin x) 6) (pow (sin eps) 6)) (* (pow (cos x) 6) (pow (cos eps) 6)))) (pow (cos eps) 4)))) (/ (* (pow (sin x) 3) (pow (sin eps) 2)) (* (pow (cos x) 3) (* (- 1 (/ (* (pow (sin x) 6) (pow (sin eps) 6)) (* (pow (cos x) 6) (pow (cos eps) 6)))) (pow (cos eps) 2))))))))) (/ (sin x) (cos x)))
582.0ms
(log (fma (* (tan x) (tan eps)) (/ (+ (tan eps) (tan x)) (- 1 (* (* (tan x) (tan eps)) (* (tan x) (tan eps))))) (fma (/ (+ (tan eps) (tan x)) (- (pow 1 3) (pow (* (* (tan x) (tan eps)) (* (tan x) (tan eps))) 3))) (+ (* 1 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)))))

prune2.1s

Pruning

10 alts after pruning (10 fresh and 0 done)

Merged error: 0.1b

regimes229.0ms

Accuracy

0% (0.3b remaining)

Error of 0.4b against oracle of 0.1b and baseline of 0.4b

bsearch46.0ms

end0.0ms

sample10.9s

Algorithm
intervals
Results
5.9s3336×body1280valid
2.1s1860×body640valid
1.7s622×body2560valid
607.0ms782×body320valid
233.0ms1070×body80valid
183.0ms330×body160valid