Details

Time bar (total: 32.0s)

sample341.0ms

Algorithm
intervals
Results
151.0ms112×body1280valid
65.0ms26×body320valid
64.0ms25×body2560valid
35.0ms44×body640valid
7.0ms38×body80valid
4.0ms11×body160valid

simplify5.0ms

Counts
1 → 1
Iterations
IterNodes
done10
210
19
06

prune4.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 39.7b

localize14.0ms

Local error

Found 2 expressions with local error:

1.3b
(- (tan (+ x eps)) (tan x))
3.7b
(tan (+ x eps))

rewrite20.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 log1p-expm1-u
sub-neg flip3-- diff-log flip-- distribute-lft-out-- difference-of-squares
Counts
2 → 41
Calls
2 calls:
14.0ms
(- (tan (+ x eps)) (tan x))
5.0ms
(tan (+ x eps))

series192.0ms

Counts
2 → 6
Calls
2 calls:
118.0ms
(- (tan (+ x eps)) (tan x))
73.0ms
(tan (+ x eps))

simplify2.9s

Counts
47 → 47
Iterations
IterNodes
done5000
44117
31335
2453
1203
094

prune284.0ms

Pruning

8 alts after pruning (8 fresh and 0 done)

Merged error: 14.9b

localize23.0ms

Local error

Found 4 expressions with local error:

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

rewrite146.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 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 → 169
Calls
4 calls:
6.0ms
(+ (tan x) (tan eps))
31.0ms
(/ (+ (tan x) (tan eps)) (- 1 (* (tan x) (tan eps))))
11.0ms
(* (tan x) (tan eps))
91.0ms
(- (/ (+ (tan x) (tan eps)) (- 1 (* (tan x) (tan eps)))) (tan x))

series1.1s

Counts
4 → 12
Calls
4 calls:
113.0ms
(+ (tan x) (tan eps))
317.0ms
(/ (+ (tan x) (tan eps)) (- 1 (* (tan x) (tan eps))))
148.0ms
(* (tan x) (tan eps))
510.0ms
(- (/ (+ (tan x) (tan eps)) (- 1 (* (tan x) (tan eps)))) (tan x))

simplify1.9s

Counts
181 → 181
Iterations
IterNodes
done5001
21626
1576
0238

prune871.0ms

Pruning

17 alts after pruning (17 fresh and 0 done)

Merged error: 14.7b

localize54.0ms

Local error

Found 4 expressions with local error:

0.1b
(/ (+ (tan x) (tan eps)) (- 1 (/ (* (tan x) (sin eps)) (cos eps))))
0.2b
(/ (* (tan x) (sin eps)) (cos eps))
0.2b
(* (tan x) (sin eps))
2.5b
(- (/ (+ (tan x) (tan eps)) (- 1 (/ (* (tan x) (sin eps)) (cos eps)))) (tan x))

rewrite341.0ms

Algorithm
rewrite-expression-head
Rules
221×*-un-lft-identity
164×add-sqr-sqrt
124×times-frac
94×add-cube-cbrt
90×prod-diff
44×difference-of-squares
31×distribute-lft-out
30×fma-neg
22×distribute-lft-out--
13×add-cbrt-cube add-exp-log
10×associate-/r/
associate-/r*
pow1 flip3-- div-inv flip-- add-log-exp
tan-quot associate-/l*
expm1-log1p-u log1p-expm1-u associate-/l/
cbrt-undiv div-exp associate-*r* associate-*l*
clear-num frac-2neg associate-*l/ prod-exp cbrt-unprod
sub-neg flip3-+ diff-log pow-prod-down frac-add *-commutative frac-sub flip-+ unswap-sqr
Counts
4 → 236
Calls
4 calls:
62.0ms
(/ (+ (tan x) (tan eps)) (- 1 (/ (* (tan x) (sin eps)) (cos eps))))
23.0ms
(/ (* (tan x) (sin eps)) (cos eps))
19.0ms
(* (tan x) (sin eps))
221.0ms
(- (/ (+ (tan x) (tan eps)) (- 1 (/ (* (tan x) (sin eps)) (cos eps)))) (tan x))

series1.1s

Counts
4 → 12
Calls
4 calls:
316.0ms
(/ (+ (tan x) (tan eps)) (- 1 (/ (* (tan x) (sin eps)) (cos eps))))
135.0ms
(/ (* (tan x) (sin eps)) (cos eps))
101.0ms
(* (tan x) (sin eps))
560.0ms
(- (/ (+ (tan x) (tan eps)) (- 1 (/ (* (tan x) (sin eps)) (cos eps)))) (tan x))

simplify1.8s

Counts
248 → 248
Iterations
IterNodes
done5003
22002
1719
0303

prune1.3s

Pruning

13 alts after pruning (13 fresh and 0 done)

Merged error: 14.7b

localize157.0ms

Local error

Found 4 expressions with local error:

0.3b
(/ (tan x) (/ (cos eps) (sin eps)))
0.3b
(/ (tan x) (/ (cos eps) (sin eps)))
0.3b
(/ (tan x) (/ (cos eps) (sin eps)))
2.5b
(- (fma (fma (/ (tan x) (/ (cos eps) (sin eps))) (/ (tan x) (/ (cos eps) (sin eps))) (/ (tan x) (/ (cos eps) (sin eps)))) (/ (+ (tan x) (tan eps)) (- 1 (* (/ (tan x) (/ (cos eps) (sin eps))) (* (/ (* (sin eps) (tan x)) (cos eps)) (/ (* (sin eps) (tan x)) (cos eps)))))) (/ (+ (tan x) (tan eps)) (- 1 (* (/ (tan x) (/ (cos eps) (sin eps))) (* (/ (* (sin eps) (tan x)) (cos eps)) (/ (* (sin eps) (tan x)) (cos eps))))))) (tan x))

rewrite58.0ms

Algorithm
rewrite-expression-head
Rules
225×times-frac
139×add-sqr-sqrt *-un-lft-identity
137×add-cube-cbrt
39×associate-/r*
19×add-cbrt-cube add-exp-log
15×div-inv
cbrt-undiv div-exp prod-diff associate-/l*
add-log-exp
expm1-log1p-u pow1 log1p-expm1-u
clear-num frac-2neg fma-neg tan-quot associate-/r/ associate-/l/
sub-neg flip3-- diff-log associate--l+ fma-udef flip-- distribute-lft-out-- difference-of-squares
Counts
4 → 248
Calls
4 calls:
9.0ms
(/ (tan x) (/ (cos eps) (sin eps)))
10.0ms
(/ (tan x) (/ (cos eps) (sin eps)))
17.0ms
(/ (tan x) (/ (cos eps) (sin eps)))
9.0ms
(- (fma (fma (/ (tan x) (/ (cos eps) (sin eps))) (/ (tan x) (/ (cos eps) (sin eps))) (/ (tan x) (/ (cos eps) (sin eps)))) (/ (+ (tan x) (tan eps)) (- 1 (* (/ (tan x) (/ (cos eps) (sin eps))) (* (/ (* (sin eps) (tan x)) (cos eps)) (/ (* (sin eps) (tan x)) (cos eps)))))) (/ (+ (tan x) (tan eps)) (- 1 (* (/ (tan x) (/ (cos eps) (sin eps))) (* (/ (* (sin eps) (tan x)) (cos eps)) (/ (* (sin eps) (tan x)) (cos eps))))))) (tan x))

series2.0s

Counts
4 → 12
Calls
4 calls:
115.0ms
(/ (tan x) (/ (cos eps) (sin eps)))
158.0ms
(/ (tan x) (/ (cos eps) (sin eps)))
156.0ms
(/ (tan x) (/ (cos eps) (sin eps)))
1.6s
(- (fma (fma (/ (tan x) (/ (cos eps) (sin eps))) (/ (tan x) (/ (cos eps) (sin eps))) (/ (tan x) (/ (cos eps) (sin eps)))) (/ (+ (tan x) (tan eps)) (- 1 (* (/ (tan x) (/ (cos eps) (sin eps))) (* (/ (* (sin eps) (tan x)) (cos eps)) (/ (* (sin eps) (tan x)) (cos eps)))))) (/ (+ (tan x) (tan eps)) (- 1 (* (/ (tan x) (/ (cos eps) (sin eps))) (* (/ (* (sin eps) (tan x)) (cos eps)) (/ (* (sin eps) (tan x)) (cos eps))))))) (tan x))

simplify2.8s

Counts
260 → 260
Iterations
IterNodes
done5011
22714
1723
0272

prune2.8s

Pruning

13 alts after pruning (13 fresh and 0 done)

Merged error: 12.7b

regimes441.0ms

Accuracy

59.6% (2.7b remaining)

Error of 15.5b against oracle of 12.8b and baseline of 19.5b

bsearch449.0ms

Steps
ItersRangePoint
8
2.633605139318188e-143
7.741688554356976e-141
1.4321650636986966e-141
10
-1.427556205083161e-53
-2.3741323209942624e-63
-1.1510645515532712e-59

simplify14.0ms

Iterations
IterNodes
done61
161
046

end0.0ms

sample10.8s

Algorithm
intervals
Results
5.3s3312×body1280valid
2.1s1809×body640valid
1.8s671×body2560valid
645.0ms798×body320valid
533.0ms1074×body80valid
107.0ms336×body160valid