Details

Time bar (total: 8.1s)

sample393.0ms

Algorithm
intervals
Results
71.0ms82×body1280valid
27.0ms249×body80valid
19.0ms40×body640valid
5.0ms16×body320valid
2.0msbody2560valid
2.0msbody160valid

simplify40.0ms

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 1 (3.0ms)

IterNodesCost
03121
15320
28420
320320
487920
5500120

prune17.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: 35.1b

Counts
2 → 2

localize24.0ms

Local error

Found 4 expressions with local error:

2.0b
(* (atan2 x.im x.re) y.im)
31.4b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
31.4b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
35.5b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

rewrite22.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)
4.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
4.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)))

series251.0ms

Counts
4 → 12
Calls
4 calls:
16.0ms
(* (atan2 x.im x.re) y.im)
37.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
35.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
163.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

simplify76.0ms

Algorithm
egg-herbie
Counts
68 → 68
Iterations

Useful iterations: 2 (14.0ms)

IterNodesCost
0196425
1506388
21139386
32509386
45001386

prune298.0ms

Filtered
68 candidates to 54 candidates (79.4%)
Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New62668
Fresh101
Picked101
Done000
Total64670

Merged error: 18.3b

Counts
70 → 6

localize26.0ms

Local error

Found 4 expressions with local error:

31.4b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
35.5b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
35.5b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
35.5b
(sin (+ (* (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
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)))
7.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

series459.0ms

Counts
4 → 12
Calls
4 calls:
35.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
141.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
139.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
144.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

simplify162.0ms

Algorithm
egg-herbie
Counts
51 → 51
Iterations

Useful iterations: 4 (52.0ms)

IterNodesCost
0142553
1288487
2611487
31523487
44766486
55002486

prune306.0ms

Filtered
51 candidates to 48 candidates (94.1%)
Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New51051
Fresh055
Picked011
Done000
Total51657

Merged error: 18.3b

Counts
57 → 6

localize24.0ms

Local error

Found 4 expressions with local error:

10.1b
(cbrt (pow (sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re))) 3))
31.4b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
31.4b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
35.5b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

rewrite20.0ms

Algorithm
rewrite-expression-head
Rules
12×cbrt-prod
11×add-sqr-sqrt
add-cube-cbrt *-un-lft-identity
pow1 sqrt-prod
add-exp-log sqrt-div add-cbrt-cube add-log-exp
unpow-prod-down cube-prod
rem-sqrt-square sqrt-pow1 flip3-+ pow1/2 flip-+
cube-mult sin-sum pow1/3 unpow3 rem-cbrt-cube sqr-pow
Counts
4 → 59
Calls
4 calls:
5.0ms
(cbrt (pow (sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re))) 3))
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)))

series351.0ms

Counts
4 → 12
Calls
4 calls:
139.0ms
(cbrt (pow (sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re))) 3))
38.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
34.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
140.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

simplify152.0ms

Algorithm
egg-herbie
Counts
71 → 71
Iterations

Useful iterations: 4 (142.0ms)

IterNodesCost
0191725
1493717
21262717
34742717
45001647

prune319.0ms

Filtered
71 candidates to 54 candidates (76.1%)
Pruning

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New69271
Fresh044
Picked011
Done011
Total69877

Merged error: 18.3b

Counts
77 → 8

localize33.0ms

Local error

Found 4 expressions with local error:

31.4b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
31.4b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
35.5b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
35.5b
(sin (+ (* (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
add-sqr-sqrt
pow1 add-cube-cbrt *-un-lft-identity sqrt-prod
add-exp-log sqrt-div add-cbrt-cube add-log-exp
rem-sqrt-square sqrt-pow1 flip3-+ pow1/2 sin-sum flip-+
Counts
4 → 46
Calls
4 calls:
4.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
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)))
7.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

series353.0ms

Counts
4 → 12
Calls
4 calls:
37.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
34.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
138.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
143.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

simplify157.0ms

Algorithm
egg-herbie
Counts
58 → 58
Iterations

Useful iterations: 4 (51.0ms)

IterNodesCost
0142504
1288456
2611456
31523456
44766452
55002452

prune378.0ms

Filtered
58 candidates to 52 candidates (89.7%)
Pruning

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New57158
Fresh055
Picked101
Done022
Total58866

Merged error: 18.3b

Counts
66 → 8

regimes308.0ms

Accuracy

78.8% (3.0b remaining)

Error of 22.3b against oracle of 19.3b and baseline of 33.5b

bsearch120.0ms

Steps
ItersRangePoint
8
-3.99908892473576e-307
4.5509090925312356e-306
-6.06667465573977e-309

simplify2.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03935
13935

end0.0ms

sample3.8s

Algorithm
intervals
Results
1.5s2151×body1280valid
837.0ms7954×body80valid
672.0ms1403×body640valid
184.0ms550×body320valid
84.0ms51×body2560valid
47.0ms215×body160valid