Details

Time bar (total: 7.9s)

sample374.0ms

Algorithm
intervals
Results
48.0ms73×body1280valid
23.0ms257×body80valid
19.0ms44×body640valid
7.0ms23×body320valid
4.0msbody2560valid
2.0ms13×body160valid

simplify38.0ms

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 1 (3.0ms)

IterNodesCost
03121
15320
28420
320320
487920
5500120

prune24.0ms

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 34.5b

localize25.0ms

Local error

Found 4 expressions with local error:

1.2b
(* (atan2 x.im x.re) y.im)
30.4b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
30.4b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
32.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×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)))

series252.0ms

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

simplify75.0ms

Algorithm
egg-herbie
Counts
68 → 68
Iterations

Useful iterations: 2 (13.0ms)

IterNodesCost
0196425
1506388
21139386
32509386
45001386

prune342.0ms

Pruning

8 alts after pruning (8 fresh and 0 done)

Merged error: 19.1b

localize28.0ms

Local error

Found 4 expressions with local error:

30.4b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
32.5b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
32.5b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
32.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
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)))

series468.0ms

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

simplify162.0ms

Algorithm
egg-herbie
Counts
51 → 51
Iterations

Useful iterations: 4 (52.0ms)

IterNodesCost
0142553
1288487
2611487
31523487
44766486
55002486

prune360.0ms

Pruning

7 alts after pruning (7 fresh and 0 done)

Merged error: 19.1b

localize43.0ms

Local error

Found 4 expressions with local error:

30.4b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
32.5b
(sin (+ (* (log (* (* (cbrt (sqrt (+ (* x.re x.re) (* x.im x.im)))) (cbrt (sqrt (+ (* x.re x.re) (* x.im x.im))))) (cbrt (sqrt (+ (* x.re x.re) (* x.im x.im)))))) y.im) (* (atan2 x.im x.re) y.re)))
32.5b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
32.5b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

rewrite80.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:
5.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
62.0ms
(sin (+ (* (log (* (* (cbrt (sqrt (+ (* x.re x.re) (* x.im x.im)))) (cbrt (sqrt (+ (* x.re x.re) (* x.im x.im))))) (cbrt (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)))

series485.0ms

Counts
4 → 12
Calls
4 calls:
40.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
145.0ms
(sin (+ (* (log (* (* (cbrt (sqrt (+ (* x.re x.re) (* x.im x.im)))) (cbrt (sqrt (+ (* x.re x.re) (* x.im x.im))))) (cbrt (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)))
154.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

simplify66.0ms

Algorithm
egg-herbie
Counts
51 → 51
Iterations

Useful iterations: 4 (60.0ms)

IterNodesCost
0167709
1323617
2666487
31844487
45001486

prune413.0ms

Pruning

7 alts after pruning (6 fresh and 1 done)

Merged error: 19.0b

localize23.0ms

Local error

Found 4 expressions with local error:

1.2b
(* (atan2 x.im x.re) y.im)
30.4b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
30.4b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
32.5b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

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

series235.0ms

Counts
4 → 12
Calls
4 calls:
16.0ms
(* (atan2 x.im x.re) y.im)
36.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
40.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
143.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

simplify75.0ms

Algorithm
egg-herbie
Counts
68 → 68
Iterations

Useful iterations: 2 (14.0ms)

IterNodesCost
0196427
1506390
21139386
32509386
45001386

prune299.0ms

Pruning

7 alts after pruning (5 fresh and 2 done)

Merged error: 19.0b

regimes296.0ms

Accuracy

77.1% (3.3b remaining)

Error of 22.6b against oracle of 19.3b and baseline of 33.8b

bsearch179.0ms

Steps
ItersRangePoint
11
-4.0941303216342756e-300
9.591751876127112e-292
-5.116623652600005e-309

simplify2.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
04236
14236

end0.0ms

sample3.5s

Algorithm
intervals
Results
1.4s2206×body1280valid
730.0ms7970×body80valid
632.0ms1451×body640valid
170.0ms573×body320valid
58.0ms38×body2560valid
40.0ms207×body160valid