Details

Time bar (total: 8.7s)

sample368.0ms

Algorithm
intervals
Results
42.0ms66×body1280valid
21.0ms250×body80valid
20.0ms43×body640valid
6.0ms22×body320valid
2.0ms10×body160valid

simplify37.0ms

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 1 (3.0ms)

IterNodesCost
03121
15320
28420
320320
487920
5500120

prune19.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 33.1b

localize25.0ms

Local error

Found 4 expressions with local error:

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

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

series250.0ms

Counts
4 → 12
Calls
4 calls:
19.0ms
(* (atan2 x.im x.re) y.im)
36.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
36.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
159.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 (14.0ms)

IterNodesCost
0196425
1506388
21139386
32509386
45001386

prune329.0ms

Pruning

7 alts after pruning (7 fresh and 0 done)

Merged error: 18.1b

localize33.0ms

Local error

Found 4 expressions with local error:

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

rewrite22.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:
4.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
4.0ms
(cbrt (+ (* x.re x.re) (* x.im x.im)))
4.0ms
(cbrt (+ (* x.re x.re) (* x.im x.im)))
10.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)))

series493.0ms

Counts
4 → 12
Calls
4 calls:
36.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
96.0ms
(cbrt (+ (* x.re x.re) (* x.im x.im)))
95.0ms
(cbrt (+ (* x.re x.re) (* x.im x.im)))
266.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)))

simplify63.0ms

Algorithm
egg-herbie
Counts
61 → 61
Iterations

Useful iterations: 3 (57.0ms)

IterNodesCost
0226599
1690543
22010539
35002538

prune438.0ms

Pruning

10 alts after pruning (9 fresh and 1 done)

Merged error: 18.0b

localize38.0ms

Local error

Found 4 expressions with local error:

30.9b
(cbrt (+ (* x.re x.re) (* x.im x.im)))
30.9b
(cbrt (+ (* x.re x.re) (* x.im x.im)))
30.9b
(cbrt (+ (* x.re x.re) (* x.im x.im)))
33.2b
(sin (+ (* (log (* (fabs (* (* (cbrt (cbrt (+ (* x.re x.re) (* x.im x.im)))) (cbrt (cbrt (+ (* x.re x.re) (* x.im x.im))))) (cbrt (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)))

rewrite23.0ms

Algorithm
rewrite-expression-head
Rules
cbrt-prod
add-sqr-sqrt add-cube-cbrt *-un-lft-identity
cbrt-div
pow1 add-exp-log add-cbrt-cube add-log-exp
flip3-+ pow1/3 flip-+
sin-sum
Counts
4 → 47
Calls
4 calls:
4.0ms
(cbrt (+ (* x.re x.re) (* x.im x.im)))
4.0ms
(cbrt (+ (* x.re x.re) (* x.im x.im)))
4.0ms
(cbrt (+ (* x.re x.re) (* x.im x.im)))
10.0ms
(sin (+ (* (log (* (fabs (* (* (cbrt (cbrt (+ (* x.re x.re) (* x.im x.im)))) (cbrt (cbrt (+ (* x.re x.re) (* x.im x.im))))) (cbrt (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)))

series556.0ms

Counts
4 → 12
Calls
4 calls:
96.0ms
(cbrt (+ (* x.re x.re) (* x.im x.im)))
95.0ms
(cbrt (+ (* x.re x.re) (* x.im x.im)))
96.0ms
(cbrt (+ (* x.re x.re) (* x.im x.im)))
269.0ms
(sin (+ (* (log (* (fabs (* (* (cbrt (cbrt (+ (* x.re x.re) (* x.im x.im)))) (cbrt (cbrt (+ (* x.re x.re) (* x.im x.im))))) (cbrt (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)))

simplify61.0ms

Algorithm
egg-herbie
Counts
59 → 59
Iterations

Useful iterations: 2 (16.0ms)

IterNodesCost
0214777
1648689
21928683
35001683

prune511.0ms

Pruning

9 alts after pruning (8 fresh and 1 done)

Merged error: 18.0b

localize41.0ms

Local error

Found 4 expressions with local error:

30.9b
(cbrt (+ (* x.re x.re) (* x.im x.im)))
30.9b
(cbrt (+ (* x.re x.re) (* x.im x.im)))
30.9b
(cbrt (+ (* x.re x.re) (* x.im x.im)))
33.3b
(sin (+ (* (log (* (fabs (* (* (cbrt (cbrt (+ (* x.re x.re) (* x.im x.im)))) (cbrt (cbrt (+ (* x.re x.re) (* x.im x.im))))) (cbrt (cbrt (+ (* x.re x.re) (* x.im x.im)))))) (sqrt (exp (log (cbrt (+ (* x.re x.re) (* x.im x.im)))))))) y.im) (* (atan2 x.im x.re) y.re)))

rewrite26.0ms

Algorithm
rewrite-expression-head
Rules
cbrt-prod
add-sqr-sqrt add-cube-cbrt *-un-lft-identity
cbrt-div
pow1 add-exp-log add-cbrt-cube add-log-exp
flip3-+ pow1/3 flip-+
sin-sum
Counts
4 → 47
Calls
4 calls:
4.0ms
(cbrt (+ (* x.re x.re) (* x.im x.im)))
4.0ms
(cbrt (+ (* x.re x.re) (* x.im x.im)))
4.0ms
(cbrt (+ (* x.re x.re) (* x.im x.im)))
13.0ms
(sin (+ (* (log (* (fabs (* (* (cbrt (cbrt (+ (* x.re x.re) (* x.im x.im)))) (cbrt (cbrt (+ (* x.re x.re) (* x.im x.im))))) (cbrt (cbrt (+ (* x.re x.re) (* x.im x.im)))))) (sqrt (exp (log (cbrt (+ (* x.re x.re) (* x.im x.im)))))))) y.im) (* (atan2 x.im x.re) y.re)))

series556.0ms

Counts
4 → 12
Calls
4 calls:
96.0ms
(cbrt (+ (* x.re x.re) (* x.im x.im)))
96.0ms
(cbrt (+ (* x.re x.re) (* x.im x.im)))
96.0ms
(cbrt (+ (* x.re x.re) (* x.im x.im)))
266.0ms
(sin (+ (* (log (* (fabs (* (* (cbrt (cbrt (+ (* x.re x.re) (* x.im x.im)))) (cbrt (cbrt (+ (* x.re x.re) (* x.im x.im))))) (cbrt (cbrt (+ (* x.re x.re) (* x.im x.im)))))) (sqrt (exp (log (cbrt (+ (* x.re x.re) (* x.im x.im)))))))) y.im) (* (atan2 x.im x.re) y.re)))

simplify61.0ms

Algorithm
egg-herbie
Counts
59 → 59
Iterations

Useful iterations: 2 (16.0ms)

IterNodesCost
0216801
1657709
21960703
35001703

prune511.0ms

Pruning

9 alts after pruning (7 fresh and 2 done)

Merged error: 18.0b

regimes413.0ms

Accuracy

77.5% (3.1b remaining)

Error of 22.2b against oracle of 19.1b and baseline of 32.9b

bsearch388.0ms

Steps
ItersRangePoint
9
8.211979739506963e-78
2.318953502136414e-69
1.3997201639137561e-73
8
5.668963595959583e-174
4.614711203633007e-170
3.081011543928129e-170
9
-8.557077847409789e-308
3.482262805343108e-300
-4.91324257936214e-309

simplify2.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06180
16180

end0.0ms

sample3.4s

Algorithm
intervals
Results
1.4s2270×body1280valid
694.0ms8006×body80valid
558.0ms1366×body640valid
165.0ms585×body320valid
74.0ms47×body2560valid
42.0ms226×body160valid