Details

Time bar (total: 7.4s)

sample438.0ms

Algorithm
intervals
Results
46.0ms75×body1280valid
40.0ms45×body640valid
23.0ms255×body80valid
6.0ms21×body320valid
2.0msbody2560valid
1.0msbody160valid

simplify39.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: 33.1b

localize26.0ms

Local error

Found 4 expressions with local error:

1.1b
(* (atan2 x.im x.re) y.re)
25.7b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
29.7b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
29.7b
(sqrt (+ (* x.re x.re) (* x.im x.im)))

rewrite51.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:
6.0ms
(* (atan2 x.im x.re) y.re)
16.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
7.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
18.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

series264.0ms

Counts
4 → 12
Calls
4 calls:
17.0ms
(* (atan2 x.im x.re) y.re)
160.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
36.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
51.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

simplify71.0ms

Algorithm
egg-herbie
Counts
68 → 68
Iterations

Useful iterations: 2 (13.0ms)

IterNodesCost
0194425
1496388
21117386
32398386
45002386

prune342.0ms

Pruning

12 alts after pruning (12 fresh and 0 done)

Merged error: 22.0b

localize26.0ms

Local error

Found 4 expressions with local error:

3.7b
(cbrt (atan2 x.im x.re))
25.8b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (* (cbrt (atan2 x.im x.re)) (cbrt (atan2 x.im x.re))) (* (cbrt (atan2 x.im x.re)) y.re))))
29.7b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
29.7b
(sqrt (+ (* x.re x.re) (* x.im x.im)))

rewrite42.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))
25.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (* (cbrt (atan2 x.im x.re)) (cbrt (atan2 x.im x.re))) (* (cbrt (atan2 x.im x.re)) y.re))))
8.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
8.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

series268.0ms

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

simplify80.0ms

Algorithm
egg-herbie
Counts
61 → 61
Iterations

Useful iterations: 4 (74.0ms)

IterNodesCost
0167489
1366443
2822441
32327441
45001439

prune349.0ms

Pruning

13 alts after pruning (12 fresh and 1 done)

Merged error: 22.0b

localize27.0ms

Local error

Found 4 expressions with local error:

29.7b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
29.7b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
29.7b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
29.7b
(sqrt (+ (* x.re x.re) (* x.im x.im)))

rewrite33.0ms

Algorithm
rewrite-expression-head
Rules
12×add-sqr-sqrt sqrt-prod
pow1 add-cube-cbrt *-un-lft-identity sqrt-div
add-exp-log rem-sqrt-square sqrt-pow1 flip3-+ pow1/2 add-cbrt-cube flip-+ add-log-exp
Counts
4 → 60
Calls
4 calls:
7.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
7.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
7.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
9.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

series150.0ms

Counts
4 → 12
Calls
4 calls:
39.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
36.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
39.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
36.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

simplify142.0ms

Algorithm
egg-herbie
Counts
72 → 72
Iterations

Useful iterations: 5 (137.0ms)

IterNodesCost
089400
1215388
2503388
31265388
44227388
55002384

prune466.0ms

Pruning

13 alts after pruning (12 fresh and 1 done)

Merged error: 22.0b

localize23.0ms

Local error

Found 4 expressions with local error:

1.1b
(* (atan2 x.im x.re) y.re)
25.7b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
29.7b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
29.7b
(sqrt (+ (* x.re x.re) (* x.im x.im)))

rewrite41.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:
6.0ms
(* (atan2 x.im x.re) y.re)
16.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
10.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
8.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

series242.0ms

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

simplify74.0ms

Algorithm
egg-herbie
Counts
68 → 68
Iterations

Useful iterations: 2 (13.0ms)

IterNodesCost
0194425
1496388
21117386
32398386
45002386

prune289.0ms

Pruning

12 alts after pruning (11 fresh and 1 done)

Merged error: 22.0b

regimes356.0ms

Accuracy

79.3% (2.9b remaining)

Error of 22.1b against oracle of 19.2b and baseline of 33.4b

bsearch119.0ms

Steps
ItersRangePoint
8
-2.3810080649002763e-307
1.561401660420803e-307
-5.43416065043903e-309

simplify2.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
04236
14236

end0.0ms

sample3.4s

Algorithm
intervals
Results
1.3s2144×body1280valid
694.0ms7969×body80valid
589.0ms1461×body640valid
159.0ms572×body320valid
64.0ms43×body2560valid
41.0ms227×body160valid