Details

Time bar (total: 9.1s)

sample90.0ms

Algorithm
intervals
Results
44.0ms109×body1280valid
17.0ms20×body2560valid
15.0ms68×body640valid
4.0ms27×body320valid
1.0ms11×body160valid
1.0ms21×body80valid

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: 39.1b

Counts
2 → 1

localize9.0ms

Local error

Found 2 expressions with local error:

1.4b
(- (tan (+ x eps)) (tan x))
3.8b
(tan (+ x eps))

rewrite14.0ms

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

series136.0ms

Counts
2 → 6
Calls
2 calls:
88.0ms
(- (tan (+ x eps)) (tan x))
48.0ms
(tan (+ x eps))

simplify79.0ms

Algorithm
egg-herbie
Counts
31 → 31
Iterations

Useful iterations: 3 (23.0ms)

IterNodesCost
0134211
1295202
2757200
32482199
45001199

prune80.0ms

Filtered
31 candidates to 25 candidates (80.6%)
Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New23831
Fresh000
Picked101
Done000
Total24832

Merged error: 15.1b

Counts
32 → 8

localize15.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))
3.2b
(- (/ (+ (tan x) (tan eps)) (- 1 (* (tan x) (tan eps)))) (tan x))

rewrite32.0ms

Algorithm
rewrite-expression-head
Rules
27×*-un-lft-identity
22×add-sqr-sqrt
15×add-cube-cbrt
13×times-frac
tan-quot
add-exp-log add-cbrt-cube add-log-exp
pow1
distribute-lft-out
associate-/l*
associate-*r* associate-*l* associate-/r* associate-/l/
flip3-- flip3-+ frac-add associate-/r/ flip-- flip-+ difference-of-squares
cbrt-undiv +-commutative frac-times sub-neg frac-2neg diff-log associate-*r/ div-exp pow-prod-down associate-*l/ prod-exp clear-num sum-log *-commutative frac-sub cbrt-unprod div-inv distribute-lft-out-- unswap-sqr
Counts
4 → 86
Calls
4 calls:
4.0ms
(+ (tan x) (tan eps))
8.0ms
(/ (+ (tan x) (tan eps)) (- 1 (* (tan x) (tan eps))))
5.0ms
(* (tan x) (tan eps))
12.0ms
(- (/ (+ (tan x) (tan eps)) (- 1 (* (tan x) (tan eps)))) (tan x))

series699.0ms

Counts
4 → 12
Calls
4 calls:
85.0ms
(+ (tan x) (tan eps))
196.0ms
(/ (+ (tan x) (tan eps)) (- 1 (* (tan x) (tan eps))))
84.0ms
(* (tan x) (tan eps))
333.0ms
(- (/ (+ (tan x) (tan eps)) (- 1 (* (tan x) (tan eps)))) (tan x))

simplify45.0ms

Algorithm
egg-herbie
Counts
98 → 98
Iterations

Useful iterations: 2 (35.0ms)

IterNodesCost
03971050
114321005
25001995

prune269.0ms

Filtered
98 candidates to 74 candidates (75.5%)
Pruning

20 alts after pruning (20 fresh and 0 done)

PrunedKeptTotal
New801898
Fresh527
Picked101
Done000
Total8620106

Merged error: 14.9b

Counts
106 → 20

localize21.0ms

Local error

Found 4 expressions with local error:

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

rewrite47.0ms

Algorithm
rewrite-expression-head
Rules
48×pow1
45×tan-quot
21×add-exp-log frac-times add-cbrt-cube
19×pow-prod-down
15×associate-*r/
14×associate-*l/
10×prod-exp cbrt-unprod
add-sqr-sqrt
add-cube-cbrt *-un-lft-identity
add-log-exp
frac-sub
associate-*r* associate-*l* pow-sqr pow-prod-up
cube-div pow-unpow
pow-pow flip3-+ pow-plus pow-exp associate--l+ *-commutative flip-+ rem-cube-cbrt
pow2 distribute-rgt-in cube-mult pow-to-exp sub-neg unpow-prod-down flip3-- distribute-lft-in diff-log unpow3 cube-prod swap-sqr flip-- unswap-sqr sqr-pow
Counts
4 → 114
Calls
4 calls:
5.0ms
(* (tan x) (tan eps))
11.0ms
(* (* (tan x) (tan eps)) (* (tan x) (tan eps)))
6.0ms
(pow (* (tan x) (tan eps)) 3)
20.0ms
(- (* (/ (+ (tan x) (tan eps)) (- 1 (pow (* (tan x) (tan eps)) 3))) (+ (* 1 1) (+ (* (* (tan x) (tan eps)) (* (tan x) (tan eps))) (* 1 (* (tan x) (tan eps)))))) (tan x))

series1.8s

Counts
4 → 12
Calls
4 calls:
84.0ms
(* (tan x) (tan eps))
105.0ms
(* (* (tan x) (tan eps)) (* (tan x) (tan eps)))
117.0ms
(pow (* (tan x) (tan eps)) 3)
1.4s
(- (* (/ (+ (tan x) (tan eps)) (- 1 (pow (* (tan x) (tan eps)) 3))) (+ (* 1 1) (+ (* (* (tan x) (tan eps)) (* (tan x) (tan eps))) (* 1 (* (tan x) (tan eps)))))) (tan x))

simplify130.0ms

Algorithm
egg-herbie
Counts
126 → 126
Iterations

Useful iterations: 1 (23.0ms)

IterNodesCost
08481703
147861486
250011486

prune384.0ms

Filtered
126 candidates to 77 candidates (61.1%)
Pruning

13 alts after pruning (13 fresh and 0 done)

PrunedKeptTotal
New1197126
Fresh13619
Picked101
Done000
Total13313146

Merged error: 0.5b

Counts
146 → 13

localize66.0ms

Local error

Found 4 expressions with local error:

0.4b
(pow (cos x) 3)
0.4b
(pow (cos x) 3)
0.4b
(pow (cos x) 3)
2.0b
(- (+ (+ (/ (* (pow (sin x) 2) (pow (sin eps) 3)) (* (pow (cos x) 2) (* (- 1 (/ (* (pow (sin x) 3) (pow (sin eps) 3)) (* (pow (cos x) 3) (pow (cos eps) 3)))) (pow (cos eps) 3)))) (* (/ (pow (sin eps) 2) (* (- 1 (/ (* (pow (sin x) 3) (pow (sin eps) 3)) (* (pow (cos x) 3) (pow (cos eps) 3)))) (pow (cos eps) 2))) (+ (/ (sin x) (cos x)) (/ (pow (sin x) 3) (pow (cos x) 3))))) (/ (sin x) (* (- 1 (/ (* (pow (sin x) 3) (pow (sin eps) 3)) (* (pow (cos x) 3) (pow (cos eps) 3)))) (cos x)))) (/ (sin x) (cos x)))

rewrite45.0ms

Algorithm
rewrite-expression-head
Rules
18×add-sqr-sqrt *-un-lft-identity frac-add
13×add-cube-cbrt add-log-exp
11×frac-sub
unpow-prod-down pow-unpow cube-prod
pow1 add-exp-log add-cbrt-cube
flip3-+ flip-+
cube-mult frac-times pow-to-exp pow-pow diff-log unpow3 associate-*r/ pow-exp sum-log rem-cube-cbrt sqr-pow
distribute-lft-out-- difference-of-squares
sub-neg flip3-- times-frac associate-*l/ associate--l+ flip-- distribute-lft-out
Counts
4 → 99
Calls
4 calls:
3.0ms
(pow (cos x) 3)
3.0ms
(pow (cos x) 3)
3.0ms
(pow (cos x) 3)
34.0ms
(- (+ (+ (/ (* (pow (sin x) 2) (pow (sin eps) 3)) (* (pow (cos x) 2) (* (- 1 (/ (* (pow (sin x) 3) (pow (sin eps) 3)) (* (pow (cos x) 3) (pow (cos eps) 3)))) (pow (cos eps) 3)))) (* (/ (pow (sin eps) 2) (* (- 1 (/ (* (pow (sin x) 3) (pow (sin eps) 3)) (* (pow (cos x) 3) (pow (cos eps) 3)))) (pow (cos eps) 2))) (+ (/ (sin x) (cos x)) (/ (pow (sin x) 3) (pow (cos x) 3))))) (/ (sin x) (* (- 1 (/ (* (pow (sin x) 3) (pow (sin eps) 3)) (* (pow (cos x) 3) (pow (cos eps) 3)))) (cos x)))) (/ (sin x) (cos x)))

series1.3s

Counts
4 → 12
Calls
4 calls:
26.0ms
(pow (cos x) 3)
27.0ms
(pow (cos x) 3)
32.0ms
(pow (cos x) 3)
1.2s
(- (+ (+ (/ (* (pow (sin x) 2) (pow (sin eps) 3)) (* (pow (cos x) 2) (* (- 1 (/ (* (pow (sin x) 3) (pow (sin eps) 3)) (* (pow (cos x) 3) (pow (cos eps) 3)))) (pow (cos eps) 3)))) (* (/ (pow (sin eps) 2) (* (- 1 (/ (* (pow (sin x) 3) (pow (sin eps) 3)) (* (pow (cos x) 3) (pow (cos eps) 3)))) (pow (cos eps) 2))) (+ (/ (sin x) (cos x)) (/ (pow (sin x) 3) (pow (cos x) 3))))) (/ (sin x) (* (- 1 (/ (* (pow (sin x) 3) (pow (sin eps) 3)) (* (pow (cos x) 3) (pow (cos eps) 3)))) (cos x)))) (/ (sin x) (cos x)))

simplify77.0ms

Algorithm
egg-herbie
Counts
111 → 111
Iterations

Useful iterations: 1 (28.0ms)

IterNodesCost
010095750
150015541

prune794.0ms

Filtered
111 candidates to 69 candidates (62.2%)
Pruning

15 alts after pruning (15 fresh and 0 done)

PrunedKeptTotal
New1065111
Fresh21012
Picked101
Done000
Total10915124

Merged error: 0.2b

Counts
124 → 15

regimes310.0ms

Accuracy

0% (0.3b remaining)

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

bsearch0.0ms

simplify2.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
061113
163113
263113

end0.0ms

sample2.7s

Algorithm
intervals
Results
1.3s3368×body1280valid
555.0ms637×body2560valid
408.0ms1816×body640valid
112.0ms769×body320valid
48.0ms1076×body80valid
35.0ms334×body160valid