Details

Time bar (total: 10.0m)

sample97.0ms

Algorithm
intervals
Results
48.0ms107×body1280valid
19.0ms18×body2560valid
12.0ms51×body640valid
5.0ms29×body320valid
2.0ms40×body80valid
1.0ms11×body160valid

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

Counts
2 → 1

localize8.0ms

Local error

Found 2 expressions with local error:

1.6b
(- (tan (+ x eps)) (tan x))
3.6b
(tan (+ x eps))

rewrite8.0ms

Algorithm
rewrite-expression-head
Rules
tan-quot
tan-sum
frac-sub
+-commutative
sub-neg flip3-- flip--
Counts
2 → 10
Calls
2 calls:
4.0ms
(- (tan (+ x eps)) (tan x))
3.0ms
(tan (+ x eps))

series135.0ms

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

simplify72.0ms

Algorithm
egg-herbie
Counts
16 → 16
Iterations

Useful iterations: 3 (20.0ms)

IterNodesCost
0121140
1255140
2645138
32116137
45001137

prune40.0ms

Filtered
16 candidates to 10 candidates (62.5%)
Pruning

4 alts after pruning (4 fresh and 0 done)

PrunedKeptTotal
New12416
Fresh000
Picked101
Done000
Total13417

Merged error: 14.6b

Counts
17 → 4

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

rewrite22.0ms

Algorithm
rewrite-expression-head
Rules
16×tan-quot
frac-sub associate-/l/
flip3-+ frac-add flip-+
flip3-- frac-2neg clear-num associate-/r/ flip--
+-commutative frac-times sub-neg associate-*r/ associate-*l/ *-commutative div-inv
Counts
4 → 26
Calls
4 calls:
6.0ms
(/ (+ (tan x) (tan eps)) (- 1 (* (tan eps) (tan x))))
3.0ms
(+ (tan x) (tan eps))
4.0ms
(* (tan eps) (tan x))
8.0ms
(- (/ (+ (tan x) (tan eps)) (- 1 (* (tan eps) (tan x)))) (tan x))

series767.0ms

Counts
4 → 12
Calls
4 calls:
213.0ms
(/ (+ (tan x) (tan eps)) (- 1 (* (tan eps) (tan x))))
93.0ms
(+ (tan x) (tan eps))
92.0ms
(* (tan eps) (tan x))
370.0ms
(- (/ (+ (tan x) (tan eps)) (- 1 (* (tan eps) (tan x)))) (tan x))

simplify36.0ms

Algorithm
egg-herbie
Counts
38 → 38
Iterations

Useful iterations: 2 (30.0ms)

IterNodesCost
0307501
11074498
25001484

prune151.0ms

Filtered
38 candidates to 33 candidates (86.8%)
Pruning

13 alts after pruning (13 fresh and 0 done)

PrunedKeptTotal
New251338
Fresh303
Picked101
Done000
Total291342

Merged error: 14.4b

Counts
42 → 13

localize24.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)
3.6b
(- (* (/ (+ (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))

rewrite41.0ms

Algorithm
rewrite-expression-head
Rules
62×tan-quot
30×frac-times
20×frac-sub
18×associate-*l/
14×associate-*r/
10×flip3-+ flip-+
associate-/l/
associate--l+
*-commutative
+-commutative distribute-rgt-in associate-+r+ distribute-lft-in
frac-2neg frac-add clear-num
unpow-prod-down swap-sqr associate-*r* associate-*l*
pow2 pow-to-exp sub-neg flip3-- unpow3 flip-- sqr-pow
Counts
4 → 64
Calls
4 calls:
4.0ms
(* (tan eps) (tan x))
8.0ms
(* (* (tan eps) (tan x)) (* (tan eps) (tan x)))
3.0ms
(pow (* (tan eps) (tan x)) 3)
23.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:
91.0ms
(* (tan eps) (tan x))
112.0ms
(* (* (tan eps) (tan x)) (* (tan eps) (tan x)))
126.0ms
(pow (* (tan eps) (tan x)) 3)
1.5s
(- (* (/ (+ (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))

simplify52.0ms

Algorithm
egg-herbie
Counts
76 → 76
Iterations

Useful iterations: 1 (27.0ms)

IterNodesCost
010922425
150022367

prune395.0ms

Filtered
76 candidates to 64 candidates (84.2%)
Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New69776
Fresh11112
Picked101
Done000
Total81889

Merged error: 0.2b

Counts
89 → 8

localize64.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.2b
(- (+ (+ (/ (* (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)))

rewrite20.8s

Algorithm
rewrite-expression-head
Rules
196110×frac-add
100398×associate-/r*
75271×frac-2neg clear-num
68151×frac-sub
59460×associate-/l*
58995×frac-times
55878×sqr-pow
42360×associate-*r*
31224×*-commutative
24435×unpow2
24273×unpow3
14340×associate-*l*
7170×unswap-sqr
6555×associate-*r/
2868×flip3-+ flip-+
2565×associate-*l/
associate--l+
associate-+l+
+-commutative associate-+r+
pow-to-exp
distribute-rgt-in distribute-lft-in
sub-neg flip3-- flip--
Counts
4 → 68172
Calls
4 calls:
2.0ms
(pow (cos x) 3)
2.0ms
(pow (cos x) 3)
2.0ms
(pow (cos x) 3)
5.9s
(- (+ (+ (/ (* (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.2s

Counts
4 → 12
Calls
4 calls:
30.0ms
(pow (cos x) 3)
26.0ms
(pow (cos x) 3)
26.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)))

simplify2.3m

Algorithm
egg-herbie
Counts
68184 → 68184
Iterations

Useful iterations: 0 (7.4s)

IterNodesCost
038231415661042

prune7.3m

Filtered
68184 candidates to 68177 candidates (100.0%)