Details

Time bar (total: 6.6s)

sample335.0ms

Algorithm
intervals
Results
211.0ms45×body640valid
53.0ms68×body1280valid
29.0ms254×body80valid
8.0ms23×body320valid
2.0ms10×body160valid

simplify38.0ms

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 1 (3.0ms)

IterNodesCost
03121
15320
28420
320320
487920
5500120

prune16.0ms

Filtered
1 candidates to 1 candidates (0.0%)
Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New101
Fresh011
Picked000
Done000
Total112

Merged error: 34.6b

Counts
2 → 1

localize32.0ms

Local error

Found 4 expressions with local error:

1.0b
(* (atan2 x.im x.re) y.im)
30.2b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
30.2b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
34.3b
(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)))
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)))

series90.0ms

Counts
4 → 12
Calls
4 calls:
6.0ms
(* (atan2 x.im x.re) y.im)
6.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
6.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
72.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

simplify82.0ms

Algorithm
egg-herbie
Counts
68 → 68
Iterations

Useful iterations: 2 (14.0ms)

IterNodesCost
0206434
1539395
21201392
32732392
45002392

prune138.0ms

Filtered
68 candidates to 54 candidates (20.6%)
Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New61768
Fresh000
Picked101
Done000
Total62769

Merged error: 21.5b

Counts
69 → 7

localize30.0ms

Local error

Found 4 expressions with local error:

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

series170.0ms

Counts
4 → 12
Calls
4 calls:
6.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
55.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
55.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
54.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

simplify60.0ms

Algorithm
egg-herbie
Counts
51 → 51
Iterations

Useful iterations: 4 (54.0ms)

IterNodesCost
0152580
1321508
2672505
31724505
45001504

prune113.0ms

Filtered
51 candidates to 48 candidates (5.9%)
Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New51051
Fresh066
Picked011
Done000
Total51758

Merged error: 21.5b

Counts
58 → 7

localize25.0ms

Local error

Found 4 expressions with local error:

4.2b
(log (exp (* (atan2 x.im x.re) y.im)))
30.2b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
30.2b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
34.3b
(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
pow1 add-cube-cbrt *-un-lft-identity
sqrt-prod
add-log-exp
add-exp-log sqrt-div add-cbrt-cube
log-prod log-pow
rem-sqrt-square sqrt-pow1 flip3-+ pow1/2 flip-+
exp-prod exp-to-pow sin-sum rem-log-exp
Counts
4 → 52
Calls
4 calls:
2.0ms
(log (exp (* (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)))

series73.0ms

Counts
4 → 12
Calls
4 calls:
6.0ms
(log (exp (* (atan2 x.im x.re) y.im)))
6.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
6.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
55.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

simplify63.0ms

Algorithm
egg-herbie
Counts
64 → 64
Iterations

Useful iterations: 4 (58.0ms)

IterNodesCost
0174444
1380400
2818399
32053399
45002397

prune108.0ms

Filtered
64 candidates to 53 candidates (17.2%)
Pruning

7 alts after pruning (5 fresh and 2 done)

PrunedKeptTotal
New64064
Fresh055
Picked011
Done011
Total64771

Merged error: 21.5b

Counts
71 → 7

localize25.0ms

Local error

Found 4 expressions with local error:

11.9b
(cbrt (pow (sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re))) 3))
30.2b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
30.2b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
34.3b
(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))
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)))

series121.0ms

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

simplify48.0ms

Algorithm
egg-herbie
Counts
71 → 71
Iterations

Useful iterations: 2 (14.0ms)

IterNodesCost
0201743
1526731
21327729
35001729

prune101.0ms

Filtered
71 candidates to 55 candidates (22.5%)
Pruning

7 alts after pruning (4 fresh and 3 done)

PrunedKeptTotal
New71071
Fresh044
Picked011
Done022
Total71778

Merged error: 21.5b

Counts
78 → 7

regimes426.0ms

Accuracy

79.5% (2.9b remaining)

Error of 23.0b against oracle of 20.1b and baseline of 34.3b

bsearch91.0ms

Steps
ItersRangePoint
8
-1.1302990408342867e-306
5.5519482282290063e-306
-5.5907332575058e-311

simplify2.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
04235
14235

end0.0ms

sample4.4s

Algorithm
intervals
Results
1.7s2274×body1280valid
897.0ms7967×body80valid
747.0ms1435×body640valid
204.0ms569×body320valid
66.0ms40×body2560valid
58.0ms243×body160valid

Profiling

Loading profile data...