Details

Time bar (total: 9.2s)

sample387.0ms

Algorithm
intervals
Results
50.0ms58×body1280valid
37.0ms252×body80valid
24.0ms40×body640valid
6.0ms13×body320valid
2.0msbody2560valid
2.0msbody160valid

simplify39.0ms

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 1 (3.0ms)

IterNodesCost
03121
15320
28420
320320
487920
5500120

prune14.0ms

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 37.1b

localize25.0ms

Local error

Found 4 expressions with local error:

2.2b
(* (atan2 x.im x.re) y.im)
32.9b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
32.9b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
33.2b
(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)))
9.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

series260.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)))
36.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
169.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
0196427
1506390
21139386
32509386
45001386

prune344.0ms

Pruning

10 alts after pruning (10 fresh and 0 done)

Merged error: 19.7b

localize26.0ms

Local error

Found 4 expressions with local error:

5.6b
(cbrt (atan2 x.im x.re))
32.9b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
32.9b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
33.2b
(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)))
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)))

series263.0ms

Counts
4 → 12
Calls
4 calls:
41.0ms
(cbrt (atan2 x.im x.re))
39.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
36.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
147.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

simplify68.0ms

Algorithm
egg-herbie
Counts
61 → 61
Iterations

Useful iterations: 4 (63.0ms)

IterNodesCost
0160405
1334373
2731371
31992371
45002369

prune361.0ms

Pruning

10 alts after pruning (10 fresh and 0 done)

Merged error: 19.7b

localize34.0ms

Local error

Found 4 expressions with local error:

32.9b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
33.2b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
33.2b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
33.2b
(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:
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)))
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)))

series476.0ms

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

simplify161.0ms

Algorithm
egg-herbie
Counts
51 → 51
Iterations

Useful iterations: 4 (53.0ms)

IterNodesCost
0142553
1288487
2611487
31523487
44766486
55002486

prune397.0ms

Pruning

10 alts after pruning (10 fresh and 0 done)

Merged error: 19.7b

localize41.0ms

Local error

Found 4 expressions with local error:

33.2b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
33.2b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
33.2b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
33.2b
(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
pow1 add-exp-log add-sqr-sqrt add-cube-cbrt *-un-lft-identity sin-sum add-cbrt-cube add-log-exp
Counts
4 → 32
Calls
4 calls:
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)))
6.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

series601.0ms

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

simplify44.0ms

Algorithm
egg-herbie
Counts
44 → 44
Iterations

Useful iterations: 1 (3.0ms)

IterNodesCost
065604
186520
2122520
3273520
4580520
55001520

prune342.0ms

Pruning

10 alts after pruning (10 fresh and 0 done)

Merged error: 19.7b

regimes389.0ms

Accuracy

77.7% (3.2b remaining)

Error of 22.4b against oracle of 19.2b and baseline of 33.5b

bsearch182.0ms

Steps
ItersRangePoint
9
-1.9128925615424503e-303
8.364107320502876e-307
1.09120035193117e-310

simplify2.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
04950
14950

end0.0ms

sample4.6s

Algorithm
intervals
Results
1.9s2225×body1280valid
1.1s7917×body80valid
812.0ms1371×body640valid
254.0ms603×body320valid
68.0ms243×body160valid
67.0ms37×body2560valid