Details

Time bar (total: 14.9s)

sample165.0ms

Algorithm
intervals
Results
88.0ms106×body1280valid
30.0ms65×body640valid
25.0ms14×body2560valid
6.0ms21×body320valid
4.0ms40×body80valid
2.0ms10×body160valid

simplify5.0ms

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (1.0ms)

IterNodesCost
094
1104
2104

prune2.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 37.6b

localize8.0ms

Local error

Found 2 expressions with local error:

2.0b
(- (tan (+ x eps)) (tan x))
3.1b
(tan (+ x eps))

rewrite12.0ms

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

series137.0ms

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

simplify79.0ms

Algorithm
egg-herbie
Counts
47 → 47
Iterations

Useful iterations: 3 (69.0ms)

IterNodesCost
0192420
1538319
22593310
35001255

prune116.0ms

Pruning

8 alts after pruning (8 fresh and 0 done)

Merged error: 14.8b

localize11.0ms

Local error

Found 4 expressions with local error:

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

rewrite76.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-exp-log add-cbrt-cube add-log-exp
pow1 flip3-- flip--
div-inv
expm1-log1p-u log1p-expm1-u associate-/l*
fma-def associate-*r* associate-*l* associate-/r* associate-/l/
flip3-+ frac-add 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 distribute-lft-out-- unswap-sqr
Counts
4 → 169
Calls
4 calls:
13.0ms
(/ (+ (tan x) (tan eps)) (- 1 (* (tan x) (tan eps))))
3.0ms
(+ (tan x) (tan eps))
5.0ms
(* (tan x) (tan eps))
48.0ms
(- (/ (+ (tan x) (tan eps)) (- 1 (* (tan x) (tan eps)))) (tan x))

series740.0ms

Counts
4 → 12
Calls
4 calls:
207.0ms
(/ (+ (tan x) (tan eps)) (- 1 (* (tan x) (tan eps))))
91.0ms
(+ (tan x) (tan eps))
89.0ms
(* (tan x) (tan eps))
353.0ms
(- (/ (+ (tan x) (tan eps)) (- 1 (* (tan x) (tan eps)))) (tan x))

simplify71.0ms

Algorithm
egg-herbie
Counts
181 → 181
Iterations

Useful iterations: 2 (51.0ms)

IterNodesCost
05592915
120542366
250012345

prune401.0ms

Pruning

13 alts after pruning (13 fresh and 0 done)

Merged error: 14.7b

localize20.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.3b
(- (* (/ (+ (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))

rewrite75.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×add-sqr-sqrt prod-exp cbrt-unprod
add-cube-cbrt *-un-lft-identity
add-log-exp
frac-sub
expm1-log1p-u associate-*r* associate-*l* pow-sqr pow-prod-up log1p-expm1-u
cube-div pow-unpow prod-diff
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 fma-neg diff-log unpow3 cube-prod swap-sqr flip-- unswap-sqr sqr-pow
Counts
4 → 126
Calls
4 calls:
5.0ms
(* (tan x) (tan eps))
21.0ms
(* (* (tan x) (tan eps)) (* (tan x) (tan eps)))
4.0ms
(pow (* (tan x) (tan eps)) 3)
42.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.9s

Counts
4 → 12
Calls
4 calls:
92.0ms
(* (tan x) (tan eps))
120.0ms
(* (* (tan x) (tan eps)) (* (tan x) (tan eps)))
126.0ms
(pow (* (tan x) (tan eps)) 3)
1.5s
(- (* (/ (+ (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))

simplify42.0ms

Algorithm
egg-herbie
Counts
138 → 138
Iterations

Useful iterations: 1 (26.0ms)

IterNodesCost
09111887
150011686

prune468.0ms

Pruning

8 alts after pruning (8 fresh and 0 done)

Merged error: 0.2b

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)
1.3b
(- (+ (+ (/ (* (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)))

rewrite2.4s

Algorithm
rewrite-expression-head
Rules
88×*-un-lft-identity
60×add-sqr-sqrt
55×add-cube-cbrt
52×prod-diff
37×times-frac
18×frac-add
15×distribute-lft-out
13×add-log-exp
11×frac-sub
unpow-prod-down pow-unpow cube-prod
pow1 add-exp-log add-cbrt-cube
expm1-log1p-u flip3-+ fma-neg flip-+ log1p-expm1-u div-inv
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-- associate-*l/ associate--l+ flip--
Counts
4 → 163
Calls
4 calls:
1.0ms
(pow (cos x) 3)
2.0ms
(pow (cos x) 3)
1.0ms
(pow (cos x) 3)
2.4s
(- (+ (+ (/ (* (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:
34.0ms
(pow (cos x) 3)
28.0ms
(pow (cos x) 3)
28.0ms
(pow (cos x) 3)
1.3s
(- (+ (+ (/ (* (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)))

simplify133.0ms

Algorithm
egg-herbie
Counts
175 → 175
Iterations

Useful iterations: 1 (35.0ms)

IterNodesCost
0133014007
1500211848

prune1.0s

Pruning

9 alts after pruning (9 fresh and 0 done)

Merged error: 0.2b

regimes161.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
059113
159113

end0.0ms

sample5.5s

Algorithm
intervals
Results
2.7s3329×body1280valid
1.1s631×body2560valid
1.1s1823×body640valid
245.0ms747×body320valid
115.0ms1095×body80valid
79.0ms375×body160valid