Details

Time bar (total: 9.4s)

sample82.0ms

Algorithm
intervals
Results
42.0ms108×body1280valid
15.0ms18×body2560valid
9.0ms50×body640valid
4.0ms29×body320valid
2.0ms43×body80valid
1.0msbody160valid

simplify5.0ms

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (1.0ms)

IterNodesCost
094
1104
2104

prune2.0ms

Filtered
1 candidates to 0 candidates (0.0%)
Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022

Merged error: 35.7b

Counts
2 → 1

localize8.0ms

Local error

Found 2 expressions with local error:

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

rewrite11.0ms

Algorithm
rewrite-expression-head
Rules
tan-quot
add-sqr-sqrt tan-sum *-un-lft-identity add-log-exp
frac-sub
pow1 add-exp-log +-commutative add-cube-cbrt add-cbrt-cube
sub-neg flip3-- diff-log flip-- distribute-lft-out-- difference-of-squares
Counts
2 → 27
Calls
2 calls:
7.0ms
(- (tan (+ x eps)) (tan x))
4.0ms
(tan (+ x eps))

series362.0ms

Counts
2 → 6
Calls
2 calls:
309.0ms
(- (tan (+ x eps)) (tan x))
53.0ms
(tan (+ x eps))

simplify84.0ms

Algorithm
egg-herbie
Counts
33 → 33
Iterations

Useful iterations: 3 (25.0ms)

IterNodesCost
0144236
1299227
2753225
32459224
45001224

prune70.0ms

Filtered
33 candidates to 25 candidates (75.8%)
Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New25833
Fresh000
Picked101
Done000
Total26834

Merged error: 12.9b

Counts
34 → 8

localize11.0ms

Local error

Found 4 expressions with local error:

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

rewrite59.0ms

Algorithm
rewrite-expression-head
Rules
85×*-un-lft-identity
78×add-sqr-sqrt
37×times-frac
29×tan-quot
26×difference-of-squares
23×add-cube-cbrt
19×frac-sub
18×associate-/r*
13×distribute-lft-out-- unswap-sqr
12×distribute-lft-out
associate-*l*
add-exp-log add-cbrt-cube associate-/l* add-log-exp
pow1 associate-/l/
flip3-+ associate-*r* frac-add flip-+
flip3-- frac-2neg clear-num associate-/r/ flip--
cbrt-undiv +-commutative frac-times sub-neg diff-log associate-*r/ div-exp pow-prod-down associate-*l/ prod-exp sum-log *-commutative cbrt-unprod div-inv
Counts
4 → 134
Calls
4 calls:
13.0ms
(/ (+ (tan x) (tan eps)) (- 1 (* (tan eps) (tan x))))
7.0ms
(+ (tan x) (tan eps))
5.0ms
(* (tan eps) (tan x))
27.0ms
(- (/ (+ (tan x) (tan eps)) (- 1 (* (tan eps) (tan x)))) (tan x))

series767.0ms

Counts
4 → 12
Calls
4 calls:
216.0ms
(/ (+ (tan x) (tan eps)) (- 1 (* (tan eps) (tan x))))
91.0ms
(+ (tan x) (tan eps))
92.0ms
(* (tan eps) (tan x))
367.0ms
(- (/ (+ (tan x) (tan eps)) (- 1 (* (tan eps) (tan x)))) (tan x))

simplify80.0ms

Algorithm
egg-herbie
Counts
146 → 146
Iterations

Useful iterations: 1 (15.0ms)

IterNodesCost
05962006
123001933
250011933

prune312.0ms

Filtered
146 candidates to 96 candidates (65.8%)
Pruning

16 alts after pruning (16 fresh and 0 done)

PrunedKeptTotal
New13115146
Fresh617
Picked101
Done000
Total13816154

Merged error: 12.8b

Counts
154 → 16

localize21.0ms

Local error

Found 4 expressions with local error:

0.2b
(* (tan eps) (tan x))
0.3b
(* (* (tan eps) (tan x)) (* (tan eps) (tan x)))
0.3b
(pow (* (tan eps) (tan x)) 3)
2.8b
(- (* (/ (+ (tan x) (tan eps)) (- 1 (pow (* (tan eps) (tan x)) 3))) (+ (* 1 1) (+ (* (* (tan eps) (tan x)) (* (tan eps) (tan x))) (* 1 (* (tan eps) (tan x)))))) (tan x))

rewrite254.0ms

Algorithm
rewrite-expression-head
Rules
110×tan-quot
97×add-sqr-sqrt
68×frac-sub
62×frac-times
60×*-un-lft-identity
48×pow1
36×associate-/r*
34×associate-*l/
33×associate-*l*
30×associate-*r*
28×add-cube-cbrt
27×difference-of-squares
26×flip3-+ flip-+
24×unpow-prod-down
22×unswap-sqr
21×add-exp-log add-cbrt-cube
19×pow-prod-down
14×associate-*r/ swap-sqr
12×associate-/l*
10×prod-exp cbrt-unprod
associate-/l/
associate--l+
*-commutative sqr-pow
add-log-exp
distribute-lft-out--
+-commutative distribute-rgt-in associate-+r+ distribute-lft-in pow-sqr pow-prod-up
pow-unpow frac-2neg frac-add clear-num distribute-lft-out
pow-pow pow-plus pow-exp rem-cube-cbrt
pow2 pow-to-exp sub-neg flip3-- times-frac diff-log unpow3 flip--
Counts
4 → 233
Calls
4 calls:
5.0ms
(* (tan eps) (tan x))
21.0ms
(* (* (tan eps) (tan x)) (* (tan eps) (tan x)))
5.0ms
(pow (* (tan eps) (tan x)) 3)
209.0ms
(- (* (/ (+ (tan x) (tan eps)) (- 1 (pow (* (tan eps) (tan x)) 3))) (+ (* 1 1) (+ (* (* (tan eps) (tan x)) (* (tan eps) (tan x))) (* 1 (* (tan eps) (tan x)))))) (tan x))

series1.9s

Counts
4 → 12
Calls
4 calls:
95.0ms
(* (tan eps) (tan x))
122.0ms
(* (* (tan eps) (tan x)) (* (tan eps) (tan x)))
129.0ms
(pow (* (tan eps) (tan x)) 3)
1.6s
(- (* (/ (+ (tan x) (tan eps)) (- 1 (pow (* (tan eps) (tan x)) 3))) (+ (* 1 1) (+ (* (* (tan eps) (tan x)) (* (tan eps) (tan x))) (* 1 (* (tan eps) (tan x)))))) (tan x))

simplify117.0ms

Algorithm
egg-herbie
Counts
245 → 245
Iterations

Useful iterations: 1 (53.0ms)

IterNodesCost
023167259
150017092

prune743.0ms

Filtered
245 candidates to 158 candidates (64.5%)
Pruning

10 alts after pruning (10 fresh and 0 done)

PrunedKeptTotal
New2396245
Fresh11415
Picked101
Done000
Total25110261

Merged error: 11.2b

Counts
261 → 10

localize26.0ms

Local error

Found 4 expressions with local error:

0.3b
(* (* (tan eps) (tan x)) (* (tan eps) (tan x)))
0.3b
(pow (* (tan eps) (tan x)) 3)
0.3b
(pow (* (tan eps) (tan x)) 3)
2.8b
(- (* 1 (/ (+ (tan x) (tan eps)) (- 1 (pow (* (tan eps) (tan x)) 3)))) (tan x))

rewrite87.0ms

Algorithm
rewrite-expression-head
Rules
76×add-sqr-sqrt
59×tan-quot
49×pow1
48×*-un-lft-identity
33×associate-*r/ associate-*l*
30×associate-*r*
28×unpow-prod-down
26×add-cube-cbrt
25×frac-sub
22×add-exp-log add-cbrt-cube
20×unswap-sqr
19×pow-prod-down
17×frac-times
14×swap-sqr
13×difference-of-squares
12×associate-/r*
11×associate-*l/
10×prod-exp cbrt-unprod
*-commutative
pow-unpow associate-/l* add-log-exp
pow-pow pow-exp pow-sqr pow-prod-up distribute-lft-out-- rem-cube-cbrt sqr-pow
un-div-inv associate-/l/
pow-to-exp times-frac pow-plus unpow3 clear-num distribute-lft-out
pow2 sub-neg flip3-- frac-2neg flip3-+ diff-log frac-add flip-- flip-+
Counts
4 → 195
Calls
4 calls:
20.0ms
(* (* (tan eps) (tan x)) (* (tan eps) (tan x)))
5.0ms
(pow (* (tan eps) (tan x)) 3)
5.0ms
(pow (* (tan eps) (tan x)) 3)
48.0ms
(- (* 1 (/ (+ (tan x) (tan eps)) (- 1 (pow (* (tan eps) (tan x)) 3)))) (tan x))

series922.0ms

Counts
4 → 12
Calls
4 calls:
119.0ms
(* (* (tan eps) (tan x)) (* (tan eps) (tan x)))
131.0ms
(pow (* (tan eps) (tan x)) 3)
132.0ms
(pow (* (tan eps) (tan x)) 3)
540.0ms
(- (* 1 (/ (+ (tan x) (tan eps)) (- 1 (pow (* (tan eps) (tan x)) 3)))) (tan x))

simplify56.0ms

Algorithm
egg-herbie
Counts
207 → 207
Iterations

Useful iterations: 1 (33.0ms)

IterNodesCost
010902274
150012139

prune531.0ms

Filtered
207 candidates to 121 candidates (58.5%)
Pruning

9 alts after pruning (9 fresh and 0 done)

PrunedKeptTotal
New2034207
Fresh459
Picked101
Done000
Total2089217

Merged error: 0.1b

Counts
217 → 9

regimes142.0ms

Accuracy

98.2% (0.3b remaining)

Error of 0.5b against oracle of 0.2b and baseline of 19.8b

bsearch149.0ms

Steps
ItersRangePoint
6
4.0748725301514305e-20
4.3910302777324535e-19
4.3044723393479454e-19
9
-0.0037838497803388085
-1.4472841302707432e-09
-3.6106432805517226e-06

simplify3.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06172
16672
26672

end0.0ms

sample2.6s

Algorithm
intervals
Results
1.3s3300×body1280valid
525.0ms603×body2560valid
396.0ms1864×body640valid
110.0ms773×body320valid
46.0ms1113×body80valid
32.0ms347×body160valid