Details

Time bar (total: 8.7s)

sample371.0ms

Algorithm
intervals
Results
53.0ms83×body1280valid
25.0ms259×body80valid
18.0ms43×body640valid
5.0ms17×body320valid
2.0ms11×body160valid
2.0msbody2560valid

simplify40.0ms

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 1 (3.0ms)

IterNodesCost
03121
15320
28420
320320
487920
5500120

prune24.0ms

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 30.4b

localize25.0ms

Local error

Found 4 expressions with local error:

1.9b
(* (atan2 x.im x.re) y.im)
27.2b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
27.2b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
31.6b
(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:
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)))

series249.0ms

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

simplify77.0ms

Algorithm
egg-herbie
Counts
68 → 68
Iterations

Useful iterations: 2 (14.0ms)

IterNodesCost
0196425
1506388
21139386
32509386
45001386

prune354.0ms

Pruning

11 alts after pruning (11 fresh and 0 done)

Merged error: 18.6b

localize30.0ms

Local error

Found 4 expressions with local error:

27.2b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
28.1b
(cbrt (+ (* x.re x.re) (* x.im x.im)))
28.1b
(cbrt (+ (* x.re x.re) (* x.im x.im)))
31.5b
(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:
3.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
2.0ms
(cbrt (+ (* x.re x.re) (* x.im x.im)))
2.0ms
(cbrt (+ (* x.re x.re) (* x.im x.im)))
13.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)))

series488.0ms

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

simplify65.0ms

Algorithm
egg-herbie
Counts
61 → 61
Iterations

Useful iterations: 3 (58.0ms)

IterNodesCost
0226599
1690543
22010539
35002538

prune452.0ms

Pruning

12 alts after pruning (12 fresh and 0 done)

Merged error: 18.5b

localize42.0ms

Local error

Found 4 expressions with local error:

27.2b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
28.1b
(cbrt (+ (* x.re x.re) (* x.im x.im)))
30.5b
(pow (+ (pow x.re 2) (pow x.im 2)) 1/3)
31.4b
(sin (+ (* (log (* (fabs (cbrt (+ (* x.re x.re) (* x.im x.im)))) (sqrt (* (cbrt 1) (pow (+ (pow x.re 2) (pow x.im 2)) 1/3))))) y.im) (* (atan2 x.im x.re) y.re)))

rewrite135.0ms

Algorithm
rewrite-expression-head
Rules
12×*-un-lft-identity
add-sqr-sqrt
add-cube-cbrt
unpow-prod-down
pow1
add-exp-log
add-cbrt-cube add-log-exp
cbrt-prod pow-unpow sqrt-prod
cbrt-div flip3-+ sqrt-div flip-+ distribute-lft-out
pow-to-exp rem-sqrt-square pow-pow sqrt-pow1 pow1/2 unpow1/3 sin-sum pow1/3 pow-exp sqr-pow
Counts
4 → 56
Calls
4 calls:
3.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
2.0ms
(cbrt (+ (* x.re x.re) (* x.im x.im)))
17.0ms
(pow (+ (pow x.re 2) (pow x.im 2)) 1/3)
111.0ms
(sin (+ (* (log (* (fabs (cbrt (+ (* x.re x.re) (* x.im x.im)))) (sqrt (* (cbrt 1) (pow (+ (pow x.re 2) (pow x.im 2)) 1/3))))) y.im) (* (atan2 x.im x.re) y.re)))

series490.0ms

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

simplify114.0ms

Algorithm
egg-herbie
Counts
68 → 68
Iterations

Useful iterations: 2 (25.0ms)

IterNodesCost
0286622
1954543
23506538
35002538

prune576.0ms

Pruning

11 alts after pruning (11 fresh and 0 done)

Merged error: 18.5b

localize34.0ms

Local error

Found 4 expressions with local error:

28.1b
(cbrt (+ (* x.re x.re) (* x.im x.im)))
28.1b
(cbrt (+ (* x.re x.re) (* x.im x.im)))
28.1b
(cbrt (+ (* x.re x.re) (* x.im x.im)))
31.5b
(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)))

rewrite21.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:
2.0ms
(cbrt (+ (* x.re x.re) (* x.im x.im)))
2.0ms
(cbrt (+ (* x.re x.re) (* x.im x.im)))
2.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 (cbrt (+ (* x.re x.re) (* x.im x.im)))))) y.im) (* (atan2 x.im x.re) y.re)))

series545.0ms

Counts
4 → 12
Calls
4 calls:
94.0ms
(cbrt (+ (* x.re x.re) (* x.im x.im)))
93.0ms
(cbrt (+ (* x.re x.re) (* x.im x.im)))
93.0ms
(cbrt (+ (* x.re x.re) (* x.im x.im)))
265.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

prune477.0ms

Pruning

11 alts after pruning (10 fresh and 1 done)

Merged error: 18.5b

regimes407.0ms

Accuracy

78% (3.1b remaining)

Error of 22.5b against oracle of 19.4b and baseline of 33.7b

bsearch132.0ms

Steps
ItersRangePoint
8
-1.2183125014823537e-305
2.1669339449380637e-307
8.5967781878852e-311

simplify2.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
04235
14235

end0.0ms

sample3.5s

Algorithm
intervals
Results
1.4s2280×body1280valid
710.0ms7893×body80valid
609.0ms1436×body640valid
164.0ms578×body320valid
81.0ms52×body2560valid
55.0ms265×body160valid