Details

Time bar (total: 8.9s)

sample415.0ms

Algorithm
intervals
Results
70.0ms88×body1280valid
41.0ms251×body80valid
25.0ms48×body640valid
6.0msbody2560valid
6.0ms15×body320valid
1.0msbody160valid

simplify40.0ms

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 1 (3.0ms)

IterNodesCost
03121
15320
28420
320320
487920
5500120

prune15.0ms

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 35.6b

localize25.0ms

Local error

Found 4 expressions with local error:

2.3b
(* (atan2 x.im x.re) y.im)
31.6b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
31.6b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
34.1b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

rewrite27.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)
9.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)))

series262.0ms

Counts
4 → 12
Calls
4 calls:
17.0ms
(* (atan2 x.im x.re) y.im)
38.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
41.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
166.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
0196427
1506390
21139386
32509386
45001386

prune355.0ms

Pruning

10 alts after pruning (10 fresh and 0 done)

Merged error: 18.7b

localize30.0ms

Local error

Found 4 expressions with local error:

31.6b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
34.1b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
34.1b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
34.1b
(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
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)))
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)))
6.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

series496.0ms

Counts
4 → 12
Calls
4 calls:
42.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
152.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
156.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
146.0ms
(sin (+ (* (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 (53.0ms)

IterNodesCost
0142553
1288487
2611487
31523487
44766486
55002486

prune384.0ms

Pruning

11 alts after pruning (10 fresh and 1 done)

Merged error: 18.7b

localize23.0ms

Local error

Found 4 expressions with local error:

2.3b
(* (atan2 x.im x.re) y.im)
31.6b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
31.6b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
34.1b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

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

series250.0ms

Counts
4 → 12
Calls
4 calls:
17.0ms
(* (atan2 x.im x.re) y.im)
43.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
37.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
153.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

prune358.0ms

Pruning

12 alts after pruning (10 fresh and 2 done)

Merged error: 18.6b

localize30.0ms

Local error

Found 4 expressions with local error:

12.6b
(cbrt (pow (sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re))) 3))
31.6b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
31.6b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
34.1b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

rewrite19.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)))
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)))

series383.0ms

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

simplify145.0ms

Algorithm
egg-herbie
Counts
71 → 71
Iterations

Useful iterations: 4 (137.0ms)

IterNodesCost
0191729
1493719
21274719
34723719
45001649

prune338.0ms

Pruning

12 alts after pruning (9 fresh and 3 done)

Merged error: 18.6b

regimes448.0ms

Accuracy

78.2% (3.1b remaining)

Error of 22.4b against oracle of 19.3b and baseline of 33.6b

bsearch190.0ms

Steps
ItersRangePoint
10
-9.53539283584192e-295
2.2826757702542398e-303
-6.2360011819834e-309

simplify2.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
04236
14236

end0.0ms

sample4.3s

Algorithm
intervals
Results
1.6s2171×body1280valid
1.2s7955×body80valid
725.0ms1427×body640valid
205.0ms552×body320valid
69.0ms42×body2560valid
60.0ms224×body160valid