Details

Time bar (total: 7.8s)

sample389.0ms

Algorithm
intervals
Results
50.0ms56×body1280valid
30.0ms262×body80valid
28.0ms60×body640valid
6.0ms17×body320valid
2.0msbody160valid

simplify38.0ms

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 1 (3.0ms)

IterNodesCost
03121
15320
28420
320320
487920
5500120

prune16.0ms

Filtered
1 candidates to 1 candidates (100.0%)
Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022

Merged error: 33.2b

Counts
2 → 2

localize25.0ms

Local error

Found 4 expressions with local error:

2.2b
(* (atan2 x.im x.re) y.im)
28.8b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
28.8b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
31.7b
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

rewrite23.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-+
cos-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)
4.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
4.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
8.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

series252.0ms

Counts
4 → 12
Calls
4 calls:
17.0ms
(* (atan2 x.im x.re) y.im)
39.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
37.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
159.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

simplify78.0ms

Algorithm
egg-herbie
Counts
68 → 68
Iterations

Useful iterations: 2 (14.0ms)

IterNodesCost
0191422
1501385
21134381
32494381
45002381

prune312.0ms

Filtered
68 candidates to 54 candidates (79.4%)
Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New61768
Fresh011
Picked101
Done000
Total62870

Merged error: 18.1b

Counts
70 → 8

localize16.0ms

Local error

Found 4 expressions with local error:

0.1b
(exp (- (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re) (* (atan2 x.im x.re) y.im)))
0.3b
(* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re)
2.2b
(* (atan2 x.im x.re) y.im)
28.8b
(sqrt (+ (* x.re x.re) (* x.im x.im)))

rewrite19.0ms

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

series247.0ms

Counts
4 → 12
Calls
4 calls:
97.0ms
(exp (- (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re) (* (atan2 x.im x.re) y.im)))
93.0ms
(* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re)
16.0ms
(* (atan2 x.im x.re) y.im)
40.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

simplify61.0ms

Algorithm
egg-herbie
Counts
81 → 81
Iterations

Useful iterations: 2 (22.0ms)

IterNodesCost
0280545
1825486
22165481
35001481

prune262.0ms

Filtered
81 candidates to 60 candidates (74.1%)
Pruning

10 alts after pruning (10 fresh and 0 done)

PrunedKeptTotal
New77481
Fresh167
Picked101
Done000
Total791089

Merged error: 3.5b

Counts
89 → 10

localize27.0ms

Local error

Found 4 expressions with local error:

28.8b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
31.7b
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
31.7b
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
31.7b
(cos (+ (* (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
cos-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
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
6.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
6.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

series448.0ms

Counts
4 → 12
Calls
4 calls:
36.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
140.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
135.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
137.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

simplify163.0ms

Algorithm
egg-herbie
Counts
51 → 51
Iterations

Useful iterations: 4 (52.0ms)

IterNodesCost
0137538
1283472
2606472
31507472
44743471
55002471

prune333.0ms

Filtered
51 candidates to 48 candidates (94.1%)
Pruning

11 alts after pruning (11 fresh and 0 done)

PrunedKeptTotal
New48351
Fresh189
Picked101
Done000
Total501161

Merged error: 3.5b

Counts
61 → 11

localize36.0ms

Local error

Found 4 expressions with local error:

28.8b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
31.7b
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
31.7b
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
31.7b
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

rewrite25.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
cos-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
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
6.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
7.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

series455.0ms

Counts
4 → 12
Calls
4 calls:
41.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
137.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
140.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
137.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

simplify164.0ms

Algorithm
egg-herbie
Counts
51 → 51
Iterations

Useful iterations: 4 (52.0ms)

IterNodesCost
0137538
1283472
2606472
31507472
44743471
55002471

prune341.0ms

Filtered
51 candidates to 48 candidates (94.1%)
Pruning

11 alts after pruning (11 fresh and 0 done)

PrunedKeptTotal
New50151
Fresh01010
Picked101
Done000
Total511162

Merged error: 3.5b

Counts
62 → 11

regimes477.0ms

Accuracy

82% (5.4b remaining)

Error of 9.0b against oracle of 3.5b and baseline of 33.8b

bsearch81.0ms

Steps
ItersRangePoint
6
-1.278936478791097e-308
8.023207831786666e-308
-4.59060153768456e-310

simplify2.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03115
13515
23515

end0.0ms

sample3.5s

Algorithm
intervals
Results
1.3s1975×body1280valid
808.0ms7958×body80valid
667.0ms1444×body640valid
217.0ms653×body320valid
73.0ms333×body160valid

Profiling

Loading profile data...