Details

Time bar (total: 6.2s)

sample320.0ms

Algorithm
intervals
Results
22.0ms250×body80valid
10.0ms134×body80overflowed
5.0msbody1280valid
3.0msbody640valid
1.0msbody320valid

simplify39.0ms

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 1 (3.0ms)

IterNodesCost
03121
15320
28420
320320
487920
5500120

prune13.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 33.8b

localize34.0ms

Local error

Found 4 expressions with local error:

1.3b
(* (atan2 x.im x.re) y.re)
30.5b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
30.5b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
32.3b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

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

series238.0ms

Counts
4 → 12
Calls
4 calls:
18.0ms
(* (atan2 x.im x.re) y.re)
32.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
33.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
154.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

simplify74.0ms

Algorithm
egg-herbie
Counts
68 → 68
Iterations

Useful iterations: 2 (14.0ms)

IterNodesCost
0194425
1496388
21117386
32398386
45002386

prune352.0ms

Pruning

11 alts after pruning (11 fresh and 0 done)

Merged error: 17.6b

localize29.0ms

Local error

Found 4 expressions with local error:

30.5b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
31.6b
(cbrt (+ (* x.re x.re) (* x.im x.im)))
31.6b
(cbrt (+ (* x.re x.re) (* x.im x.im)))
32.3b
(sin (+ (* (log (* (fabs (cbrt (+ (* x.re x.re) (* x.im x.im)))) (sqrt (cbrt (+ (* x.re x.re) (* x.im x.im)))))) y.im) (* (atan2 x.im x.re) y.re)))

rewrite54.0ms

Algorithm
rewrite-expression-head
Rules
add-sqr-sqrt
add-cube-cbrt *-un-lft-identity
cbrt-prod
pow1
add-exp-log cbrt-div add-cbrt-cube add-log-exp
flip3-+ sqrt-prod flip-+
pow1/3 sqrt-div
rem-sqrt-square sqrt-pow1 pow1/2 sin-sum
Counts
4 → 49
Calls
4 calls:
8.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
5.0ms
(cbrt (+ (* x.re x.re) (* x.im x.im)))
7.0ms
(cbrt (+ (* x.re x.re) (* x.im x.im)))
33.0ms
(sin (+ (* (log (* (fabs (cbrt (+ (* x.re x.re) (* x.im x.im)))) (sqrt (cbrt (+ (* x.re x.re) (* x.im x.im)))))) y.im) (* (atan2 x.im x.re) y.re)))

series480.0ms

Counts
4 → 12
Calls
4 calls:
37.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
90.0ms
(cbrt (+ (* x.re x.re) (* x.im x.im)))
89.0ms
(cbrt (+ (* x.re x.re) (* x.im x.im)))
264.0ms
(sin (+ (* (log (* (fabs (cbrt (+ (* x.re x.re) (* x.im x.im)))) (sqrt (cbrt (+ (* x.re x.re) (* x.im x.im)))))) y.im) (* (atan2 x.im x.re) y.re)))

simplify64.0ms

Algorithm
egg-herbie
Counts
61 → 61
Iterations

Useful iterations: 3 (58.0ms)

IterNodesCost
0226599
1690543
22010539
35002538

prune439.0ms

Pruning

10 alts after pruning (10 fresh and 0 done)

Merged error: 17.5b

localize34.0ms

Local error

Found 4 expressions with local error:

30.5b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
31.6b
(cbrt (+ (* x.re x.re) (* x.im x.im)))
32.5b
(sin (+ (* (log (* (fabs (pow (+ (* x.re x.re) (* x.im x.im)) 1/3)) (sqrt (cbrt (+ (* x.re x.re) (* x.im x.im)))))) y.im) (* (atan2 x.im x.re) y.re)))
33.7b
(pow (+ (* x.re x.re) (* x.im x.im)) 1/3)

rewrite60.0ms

Algorithm
rewrite-expression-head
Rules
add-sqr-sqrt
add-cube-cbrt *-un-lft-identity
pow1
add-exp-log
add-cbrt-cube add-log-exp
cbrt-prod unpow-prod-down pow-unpow sqrt-prod
cbrt-div flip3-+ sqrt-div flip-+
pow-to-exp rem-sqrt-square pow-pow sqrt-pow1 pow1/2 unpow1/3 sin-sum pow1/3 pow-exp sqr-pow
Counts
4 → 54
Calls
4 calls:
8.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
5.0ms
(cbrt (+ (* x.re x.re) (* x.im x.im)))
36.0ms
(sin (+ (* (log (* (fabs (pow (+ (* x.re x.re) (* x.im x.im)) 1/3)) (sqrt (cbrt (+ (* x.re x.re) (* x.im x.im)))))) y.im) (* (atan2 x.im x.re) y.re)))
10.0ms
(pow (+ (* x.re x.re) (* x.im x.im)) 1/3)

series481.0ms

Counts
4 → 12
Calls
4 calls:
32.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
90.0ms
(cbrt (+ (* x.re x.re) (* x.im x.im)))
268.0ms
(sin (+ (* (log (* (fabs (pow (+ (* x.re x.re) (* x.im x.im)) 1/3)) (sqrt (cbrt (+ (* x.re x.re) (* x.im x.im)))))) y.im) (* (atan2 x.im x.re) y.re)))
91.0ms
(pow (+ (* x.re x.re) (* x.im x.im)) 1/3)

simplify97.0ms

Algorithm
egg-herbie
Counts
66 → 66
Iterations

Useful iterations: 2 (22.0ms)

IterNodesCost
0275590
1894515
23010510
35001510

prune467.0ms

Pruning

10 alts after pruning (9 fresh and 1 done)

Merged error: 17.5b

localize30.0ms

Local error

Found 4 expressions with local error:

1.2b
(* (atan2 x.im x.re) y.im)
30.5b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
30.5b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
31.8b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (* (atan2 x.im x.re) (* (cbrt y.re) (cbrt y.re))) (cbrt y.re))))

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

series252.0ms

Counts
4 → 12
Calls
4 calls:
16.0ms
(* (atan2 x.im x.re) y.im)
34.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
37.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
165.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (* (atan2 x.im x.re) (* (cbrt y.re) (cbrt y.re))) (cbrt y.re))))

simplify80.0ms

Algorithm
egg-herbie
Counts
68 → 68
Iterations

Useful iterations: 2 (15.0ms)

IterNodesCost
0206485
1544438
21224436
32606436
45002436

prune319.0ms

Pruning

10 alts after pruning (9 fresh and 1 done)

Merged error: 17.5b

regimes365.0ms

Accuracy

77.6% (3.2b remaining)

Error of 22.0b against oracle of 18.9b and baseline of 33.0b

bsearch101.0ms

Steps
ItersRangePoint
10
-2.9915123049234395e-302
6.78784030439545e-305
-5.72493342858166e-309

simplify2.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
04236
14236

end0.0ms

sample1.6s

Algorithm
intervals
Results
650.0ms7955×body80valid
312.0ms3960×body80overflowed
85.0ms138×body1280valid
69.0ms162×body640valid
34.0ms109×body320valid
12.0ms65×body160valid