Details

Time bar (total: 16.3s)

sample5.1s

Algorithm
intervals
sampling

Space saved by range analysis: 0%

Space saved by search: 0.048828%

Guaranteed chance to sample good point: 49.816805%

Results
55.0ms67×body1280invalid
28.0ms239×body80valid
19.0ms38×body640invalid
8.0ms22×body320invalid
4.0msbody640valid
4.0msbody1280valid
2.0ms16×body80invalid
1.0msbody160invalid
1.0msbody320valid
0.0msbody160valid

simplify407.0ms

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 1 (3.0ms)

IterNodesCost
03121
15320
28420
320320
487920
5500120

prune15.0ms

Filtered
1 candidates to 1 candidates (0.0%)
Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New101
Fresh011
Picked000
Done000
Total112

Merged error: 32.8b

Counts
2 → 1

localize23.0ms

Local error

Found 4 expressions with local error:

2.0b
(* (atan2 x.im x.re) y.im)
29.3b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
29.3b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
34.6b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

rewrite32.0ms

Algorithm
rewrite-expression-head
Rules
12×add-sqr-sqrt
pow1 add-cube-cbrt *-un-lft-identity
add-exp-log sqrt-prod add-cbrt-cube
sqrt-div add-log-exp
associate-*r* associate-*l*
rem-sqrt-square sqrt-pow1 flip3-+ pow1/2 flip-+
sin-sum pow-prod-down prod-exp *-commutative cbrt-unprod unswap-sqr
Counts
4 → 56
Calls
4 calls:
3.0ms
(* (atan2 x.im x.re) y.im)
3.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
3.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
8.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

series81.0ms

Counts
4 → 12
Calls
4 calls:
6.0ms
(* (atan2 x.im x.re) y.im)
6.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
6.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
64.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

simplify81.0ms

Algorithm
egg-herbie
Counts
68 → 68
Iterations

Useful iterations: 2 (14.0ms)

IterNodesCost
0206434
1539395
21201392
32732392
45002392

prune141.0ms

Filtered
54 candidates to 68 candidates (-25.9%)
Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New60868
Fresh000
Picked101
Done000
Total61869

Merged error: 18.4b

Counts
69 → 8

localize26.0ms

Local error

Found 4 expressions with local error:

4.6b
(cbrt (atan2 x.im x.re))
29.3b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
29.3b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
34.6b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

rewrite15.0ms

Algorithm
rewrite-expression-head
Rules
add-sqr-sqrt
add-cube-cbrt *-un-lft-identity
pow1 sqrt-prod
add-exp-log sqrt-div add-cbrt-cube add-log-exp
cbrt-prod
rem-sqrt-square sqrt-pow1 flip3-+ pow1/2 flip-+
sin-sum pow1/3
Counts
4 → 49
Calls
4 calls:
1.0ms
(cbrt (atan2 x.im x.re))
4.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
4.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
6.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

series76.0ms

Counts
4 → 12
Calls
4 calls:
11.0ms
(cbrt (atan2 x.im x.re))
5.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
6.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
54.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

simplify70.0ms

Algorithm
egg-herbie
Counts
61 → 61
Iterations

Useful iterations: 4 (65.0ms)

IterNodesCost
0170414
1367380
2792377
32193377
45002375

prune119.0ms

Filtered
51 candidates to 61 candidates (-19.6%)
Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New60161
Fresh077
Picked101
Done000
Total61869

Merged error: 18.4b

Counts
69 → 8

localize35.0ms

Local error

Found 4 expressions with local error:

4.6b
(cbrt (atan2 x.im x.re))
29.3b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
29.3b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
34.6b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

rewrite15.0ms

Algorithm
rewrite-expression-head
Rules
add-sqr-sqrt
add-cube-cbrt *-un-lft-identity
pow1 sqrt-prod
add-exp-log sqrt-div add-cbrt-cube add-log-exp
cbrt-prod
rem-sqrt-square sqrt-pow1 flip3-+ pow1/2 flip-+
sin-sum pow1/3
Counts
4 → 49
Calls
4 calls:
1.0ms
(cbrt (atan2 x.im x.re))
3.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
3.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
6.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

series76.0ms

Counts
4 → 12
Calls
4 calls:
10.0ms
(cbrt (atan2 x.im x.re))
5.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
6.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
55.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

simplify69.0ms

Algorithm
egg-herbie
Counts
61 → 61
Iterations

Useful iterations: 4 (63.0ms)

IterNodesCost
0170414
1367380
2792377
32193377
45002375

prune118.0ms

Filtered
51 candidates to 61 candidates (-19.6%)
Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New61061
Fresh077
Picked011
Done000
Total61869

Merged error: 18.4b

Counts
69 → 8

localize26.0ms

Local error

Found 4 expressions with local error:

29.3b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
34.6b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
34.6b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
34.6b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

rewrite24.0ms

Algorithm
rewrite-expression-head
Rules
add-sqr-sqrt
pow1 add-cube-cbrt *-un-lft-identity
add-exp-log add-cbrt-cube add-log-exp
sin-sum sqrt-prod
sqrt-div
rem-sqrt-square sqrt-pow1 flip3-+ pow1/2 flip-+
Counts
4 → 39
Calls
4 calls:
4.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
7.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
6.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
6.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

series167.0ms

Counts
4 → 12
Calls
4 calls:
6.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
53.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
54.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
54.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

simplify60.0ms

Algorithm
egg-herbie
Counts
51 → 51
Iterations

Useful iterations: 4 (54.0ms)

IterNodesCost
0152580
1321508
2672505
31724505
45001504

prune85.0ms

Filtered
48 candidates to 51 candidates (-6.3%)
Pruning

11 alts after pruning (9 fresh and 2 done)

PrunedKeptTotal
New47451
Fresh156
Picked011
Done011
Total481159

Merged error: 18.4b

Counts
59 → 11

regimes504.0ms

Accuracy

76.4% (3.3b remaining)

Error of 22.4b against oracle of 19.1b and baseline of 33.1b

bsearch113.0ms

Steps
ItersRangePoint
10
-2.39638253738344e-305
4.459492553828564e-299
-1.7419962621888e-310

simplify2.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
04235
14235

end0.0ms

sample8.8s

Algorithm
intervals
sampling

Space saved by range analysis: 0%

Space saved by search: 0.048828%

Guaranteed chance to sample good point: 49.816805%

Results
1.5s2016×body1280invalid
878.0ms7560×body80valid
642.0ms1260×body640invalid
159.0ms454×body320invalid
98.0ms136×body1280valid
83.0ms171×body640valid
66.0ms36×body2560invalid
47.0ms407×body80invalid
41.0ms178×body160invalid
33.0ms85×body320valid
11.0ms48×body160valid

Profiling

Loading profile data...