Details

Time bar (total: 8.1s)

sample404.0ms

Algorithm
intervals
Results
58.0ms78×body1280valid
40.0ms248×body80valid
23.0ms45×body640valid
8.0ms24×body320valid
3.0msbody2560valid
3.0ms10×body160valid

simplify41.0ms

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 1 (4.0ms)

IterNodesCost
03121
15320
28420
320320
487920
5500120

prune16.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: 34.0b

Counts
2 → 2

localize25.0ms

Local error

Found 4 expressions with local error:

1.6b
(* (atan2 x.im x.re) y.im)
28.9b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
28.9b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
32.8b
(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
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:
4.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)))
9.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)
37.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
35.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
164.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

prune323.0ms

Filtered
68 candidates to 54 candidates (79.4%)
Pruning

11 alts after pruning (11 fresh and 0 done)

PrunedKeptTotal
New581068
Fresh011
Picked101
Done000
Total591170

Merged error: 20.0b

Counts
70 → 11

localize31.0ms

Local error

Found 4 expressions with local error:

28.9b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
28.9b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
28.9b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
32.8b
(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)))

rewrite36.0ms

Algorithm
rewrite-expression-head
Rules
10×add-sqr-sqrt
sqrt-prod
pow1 add-cube-cbrt *-un-lft-identity
sqrt-div
add-exp-log add-cbrt-cube add-log-exp
rem-sqrt-square sqrt-pow1 flip3-+ pow1/2 flip-+
sin-sum
Counts
4 → 53
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)))
4.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
23.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)))

series253.0ms

Counts
4 → 12
Calls
4 calls:
38.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
35.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
37.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
143.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)))

simplify65.0ms

Algorithm
egg-herbie
Counts
65 → 65
Iterations

Useful iterations: 4 (58.0ms)

IterNodesCost
0148607
1303551
2643551
31821551
45001548

prune367.0ms

Filtered
65 candidates to 55 candidates (84.6%)
Pruning

11 alts after pruning (11 fresh and 0 done)

PrunedKeptTotal
New62365
Fresh2810
Picked101
Done000
Total651176

Merged error: 20.0b

Counts
76 → 11

localize36.0ms

Local error

Found 4 expressions with local error:

28.9b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
28.9b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
28.9b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
32.8b
(sin (+ (* (log (* (* (cbrt (sqrt (+ (* x.re x.re) (* x.im x.im)))) (cbrt (* (* (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))))))) (cbrt (sqrt (+ (* x.re x.re) (* x.im x.im)))))) y.im) (* (atan2 x.im x.re) y.re)))

rewrite49.0ms

Algorithm
rewrite-expression-head
Rules
10×add-sqr-sqrt
sqrt-prod
pow1 add-cube-cbrt *-un-lft-identity
sqrt-div
add-exp-log add-cbrt-cube add-log-exp
rem-sqrt-square sqrt-pow1 flip3-+ pow1/2 flip-+
sin-sum
Counts
4 → 53
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)))
4.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
36.0ms
(sin (+ (* (log (* (* (cbrt (sqrt (+ (* x.re x.re) (* x.im x.im)))) (cbrt (* (* (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))))))) (cbrt (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:
34.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
36.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
34.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
147.0ms
(sin (+ (* (log (* (* (cbrt (sqrt (+ (* x.re x.re) (* x.im x.im)))) (cbrt (* (* (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))))))) (cbrt (sqrt (+ (* x.re x.re) (* x.im x.im)))))) y.im) (* (atan2 x.im x.re) y.re)))

simplify64.0ms

Algorithm
egg-herbie
Counts
65 → 65
Iterations

Useful iterations: 4 (56.0ms)

IterNodesCost
0154763
1313681
2661681
31837681
45002678

prune394.0ms

Filtered
65 candidates to 55 candidates (84.6%)
Pruning

11 alts after pruning (10 fresh and 1 done)

PrunedKeptTotal
New65065
Fresh01010
Picked011
Done000
Total651176

Merged error: 20.0b

Counts
76 → 11

localize31.0ms

Local error

Found 4 expressions with local error:

28.9b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
32.8b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
32.8b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
32.8b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

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

series457.0ms

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

simplify159.0ms

Algorithm
egg-herbie
Counts
51 → 51
Iterations

Useful iterations: 4 (52.0ms)

IterNodesCost
0142553
1288487
2611487
31523487
44766486
55002486

prune290.0ms

Filtered
51 candidates to 48 candidates (94.1%)
Pruning

13 alts after pruning (12 fresh and 1 done)

PrunedKeptTotal
New48351
Fresh099
Picked101
Done011
Total491362

Merged error: 20.0b

Counts
62 → 13

regimes438.0ms

Accuracy

77.5% (3.1b remaining)

Error of 22.5b against oracle of 19.3b and baseline of 33.2b

bsearch182.0ms

Steps
ItersRangePoint
11
-3.8022484328853887e-292
3.1730313686709675e-289
-6.201233448198836e-309

simplify2.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03935
13935

end0.0ms

sample3.8s

Algorithm
intervals
Results
1.6s2190×body1280valid
852.0ms7976×body80valid
675.0ms1400×body640valid
184.0ms555×body320valid
65.0ms37×body2560valid
63.0ms275×body160valid