Details

Time bar (total: 8.8s)

sample88.0ms

Algorithm
intervals
Results
46.0ms136×body1280valid
14.0ms17×body2560valid
12.0ms64×body640valid
4.0ms31×body320valid
1.0msbody160valid

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

localize8.0ms

Local error

Found 2 expressions with local error:

0.8b
(- (cos (+ x eps)) (cos x))
2.7b
(cos (+ x eps))

rewrite23.0ms

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

series63.0ms

Counts
2 → 6
Calls
2 calls:
44.0ms
(- (cos (+ x eps)) (cos x))
19.0ms
(cos (+ x eps))

simplify109.0ms

Algorithm
egg-herbie
Counts
30 → 30
Iterations

Useful iterations: 2 (9.0ms)

IterNodesCost
0134176
1281167
2840164
32958164
45002164

prune95.0ms

Pruning

10 alts after pruning (10 fresh and 0 done)

Merged error: 14.6b

localize13.0ms

Local error

Found 4 expressions with local error:

0.1b
(- (* (cos x) (cos eps)) (* (sin x) (sin eps)))
0.1b
(* (cos x) (cos eps))
0.2b
(* (sin x) (sin eps))
3.2b
(- (- (* (cos x) (cos eps)) (* (sin x) (sin eps))) (cos x))

rewrite96.0ms

Algorithm
rewrite-expression-head
Rules
14×add-sqr-sqrt
11×add-log-exp
10×*-un-lft-identity
pow1 add-exp-log add-cube-cbrt add-cbrt-cube
associate-*r* associate-*l*
diff-log
sub-neg cos-mult sin-mult
flip3-- pow-prod-down prod-exp associate--l+ *-commutative flip-- cbrt-unprod unswap-sqr
associate--l- frac-sub distribute-lft-out-- sub-div difference-of-squares
Counts
4 → 70
Calls
4 calls:
16.0ms
(- (* (cos x) (cos eps)) (* (sin x) (sin eps)))
10.0ms
(* (cos x) (cos eps))
11.0ms
(* (sin x) (sin eps))
57.0ms
(- (- (* (cos x) (cos eps)) (* (sin x) (sin eps))) (cos x))

series270.0ms

Counts
4 → 12
Calls
4 calls:
70.0ms
(- (* (cos x) (cos eps)) (* (sin x) (sin eps)))
41.0ms
(* (cos x) (cos eps))
40.0ms
(* (sin x) (sin eps))
119.0ms
(- (- (* (cos x) (cos eps)) (* (sin x) (sin eps))) (cos x))

simplify115.0ms

Algorithm
egg-herbie
Counts
82 → 82
Iterations

Useful iterations: 2 (31.0ms)

IterNodesCost
0304632
11061601
24488583
35001583

prune255.0ms

Pruning

13 alts after pruning (13 fresh and 0 done)

Merged error: 14.4b

localize27.0ms

Local error

Found 4 expressions with local error:

0.3b
(pow (* (sin x) (sin eps)) 3)
0.4b
(* (* (cos x) (cos eps)) (* (cos x) (cos eps)))
0.5b
(pow (* (cos x) (cos eps)) 3)
5.6b
(- (/ (- (pow (* (cos x) (cos eps)) 3) (pow (* (sin x) (sin eps)) 3)) (+ (* (* (sin x) (sin eps)) (+ (* (sin x) (sin eps)) (* (cos x) (cos eps)))) (* (* (cos x) (cos eps)) (* (cos x) (cos eps))))) (cos x))

rewrite694.0ms

Algorithm
rewrite-expression-head
Rules
49×pow1
22×add-exp-log add-cbrt-cube
19×pow-prod-down
11×add-sqr-sqrt
10×prod-exp cbrt-unprod
*-un-lft-identity
add-cube-cbrt pow-unpow add-log-exp
cos-mult
pow-pow pow-exp pow-sqr pow-prod-up rem-cube-cbrt
cube-div cube-mult pow-to-exp unpow-prod-down pow-plus unpow3 cube-prod difference-of-squares sqr-pow
associate--l- pow2 frac-times sub-neg flip3-- times-frac diff-log div-sub associate-*r/ swap-sqr associate-*r* associate-*l* associate-*l/ *-commutative flip-- sin-mult distribute-lft-out--
Counts
4 → 99
Calls
4 calls:
8.0ms
(pow (* (sin x) (sin eps)) 3)
40.0ms
(* (* (cos x) (cos eps)) (* (cos x) (cos eps)))
8.0ms
(pow (* (cos x) (cos eps)) 3)
635.0ms
(- (/ (- (pow (* (cos x) (cos eps)) 3) (pow (* (sin x) (sin eps)) 3)) (+ (* (* (sin x) (sin eps)) (+ (* (sin x) (sin eps)) (* (cos x) (cos eps)))) (* (* (cos x) (cos eps)) (* (cos x) (cos eps))))) (cos x))

series784.0ms

Counts
4 → 12
Calls
4 calls:
61.0ms
(pow (* (sin x) (sin eps)) 3)
47.0ms
(* (* (cos x) (cos eps)) (* (cos x) (cos eps)))
57.0ms
(pow (* (cos x) (cos eps)) 3)
619.0ms
(- (/ (- (pow (* (cos x) (cos eps)) 3) (pow (* (sin x) (sin eps)) 3)) (+ (* (* (sin x) (sin eps)) (+ (* (sin x) (sin eps)) (* (cos x) (cos eps)))) (* (* (cos x) (cos eps)) (* (cos x) (cos eps))))) (cos x))

simplify70.0ms

Algorithm
egg-herbie
Counts
111 → 111
Iterations

Useful iterations: 1 (13.0ms)

IterNodesCost
04991277
122511141
250021141

prune387.0ms

Pruning

17 alts after pruning (17 fresh and 0 done)

Merged error: 14.3b

localize25.0ms

Local error

Found 4 expressions with local error:

0.4b
(* (* (cos x) (cos eps)) (* (cos x) (cos eps)))
0.4b
(* (* (cos x) (cos eps)) (* (cos x) (cos eps)))
0.5b
(pow (* (cos x) (cos eps)) 3)
5.6b
(- (/ (pow (* (cos x) (cos eps)) 3) (+ (* (* (sin x) (sin eps)) (+ (* (sin x) (sin eps)) (* (cos x) (cos eps)))) (* (* (cos x) (cos eps)) (* (cos x) (cos eps))))) (+ (/ (pow (* (sin x) (sin eps)) 3) (+ (* (* (sin x) (sin eps)) (+ (* (sin x) (sin eps)) (* (cos x) (cos eps)))) (* (* (cos x) (cos eps)) (* (cos x) (cos eps))))) (cos x)))

rewrite1.3s

Algorithm
rewrite-expression-head
Rules
85×pow1
35×pow-prod-down
31×add-exp-log add-cbrt-cube
17×prod-exp cbrt-unprod
12×add-sqr-sqrt
10×*-un-lft-identity
cos-mult add-log-exp
pow-sqr pow-prod-up
add-cube-cbrt
pow-plus
pow-unpow difference-of-squares
pow2 frac-times pow-pow times-frac diff-log associate-*r/ swap-sqr associate-*r* associate-*l* associate-*l/ pow-exp *-commutative frac-sub distribute-lft-out-- rem-cube-cbrt sqr-pow
cube-div cube-mult pow-to-exp sub-neg unpow-prod-down flip3-- flip3-+ unpow3 cube-prod sum-log flip-- flip-+ distribute-lft-out associate--r+
Counts
4 → 118
Calls
4 calls:
39.0ms
(* (* (cos x) (cos eps)) (* (cos x) (cos eps)))
39.0ms
(* (* (cos x) (cos eps)) (* (cos x) (cos eps)))
8.0ms
(pow (* (cos x) (cos eps)) 3)
1.2s
(- (/ (pow (* (cos x) (cos eps)) 3) (+ (* (* (sin x) (sin eps)) (+ (* (sin x) (sin eps)) (* (cos x) (cos eps)))) (* (* (cos x) (cos eps)) (* (cos x) (cos eps))))) (+ (/ (pow (* (sin x) (sin eps)) 3) (+ (* (* (sin x) (sin eps)) (+ (* (sin x) (sin eps)) (* (cos x) (cos eps)))) (* (* (cos x) (cos eps)) (* (cos x) (cos eps))))) (cos x)))

series789.0ms

Counts
4 → 12
Calls
4 calls:
53.0ms
(* (* (cos x) (cos eps)) (* (cos x) (cos eps)))
47.0ms
(* (* (cos x) (cos eps)) (* (cos x) (cos eps)))
56.0ms
(pow (* (cos x) (cos eps)) 3)
632.0ms
(- (/ (pow (* (cos x) (cos eps)) 3) (+ (* (* (sin x) (sin eps)) (+ (* (sin x) (sin eps)) (* (cos x) (cos eps)))) (* (* (cos x) (cos eps)) (* (cos x) (cos eps))))) (+ (/ (pow (* (sin x) (sin eps)) 3) (+ (* (* (sin x) (sin eps)) (+ (* (sin x) (sin eps)) (* (cos x) (cos eps)))) (* (* (cos x) (cos eps)) (* (cos x) (cos eps))))) (cos x)))

simplify81.0ms

Algorithm
egg-herbie
Counts
130 → 130
Iterations

Useful iterations: 2 (63.0ms)

IterNodesCost
05212421
124482264
250012254

prune381.0ms

Pruning

18 alts after pruning (18 fresh and 0 done)

Merged error: 14.3b

regimes266.0ms

Accuracy

80.9% (2.0b remaining)

Error of 16.4b against oracle of 14.4b and baseline of 24.8b

bsearch78.0ms

Steps
ItersRangePoint
6
5.214836503720958e-10
3.7141773282228235e-09
3.672352851463477e-09
6
-9.21137713360162e-27
-1.7122130709218466e-27
-9.091945712343376e-27

simplify1.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
04033
14033

end0.0ms

sample2.7s

Algorithm
intervals
Results
1.5s4399×body1280valid
546.0ms660×body2560valid
359.0ms1881×body640valid
102.0ms692×body320valid
25.0ms283×body160valid
4.0ms85×body80valid