Details

Time bar (total: 7.3s)

sample418.0ms

Algorithm
intervals
Results
41.0ms254×body80valid
29.0ms51×body1280valid
17.0ms46×body640valid
5.0ms19×body320valid
4.0ms13×body160valid

simplify37.0ms

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 1 (3.0ms)

IterNodesCost
03121
15320
28420
320320
487920
5500120

prune15.0ms

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 32.7b

localize26.0ms

Local error

Found 4 expressions with local error:

1.0b
(* (atan2 x.im x.re) y.re)
29.5b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
29.5b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
33.0b
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) 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-+
cos-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)
7.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
8.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
27.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

series218.0ms

Counts
4 → 12
Calls
4 calls:
15.0ms
(* (atan2 x.im x.re) y.re)
31.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
34.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
137.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

simplify71.0ms

Algorithm
egg-herbie
Counts
68 → 68
Iterations

Useful iterations: 2 (13.0ms)

IterNodesCost
0189420
1491383
21112381
32393381
45001381

prune302.0ms

Pruning

5 alts after pruning (5 fresh and 0 done)

Merged error: 18.8b

localize16.0ms

Local error

Found 4 expressions with local error:

0.0b
(- (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re) (* (atan2 x.im x.re) y.im))
0.2b
(* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re)
0.5b
(* (atan2 x.im x.re) y.im)
29.5b
(sqrt (+ (* x.re x.re) (* x.im x.im)))

rewrite37.0ms

Algorithm
rewrite-expression-head
Rules
14×add-sqr-sqrt
11×pow1
add-cube-cbrt *-un-lft-identity associate-*l*
add-exp-log add-cbrt-cube
associate-*r* add-log-exp
sqrt-prod log-pow
sqrt-pow1 pow1/2 sqrt-div pow-prod-down prod-exp *-commutative cbrt-unprod unswap-sqr
sub-neg rem-sqrt-square flip3-- flip3-+ diff-log flip-- flip-+
Counts
4 → 66
Calls
4 calls:
8.0ms
(- (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re) (* (atan2 x.im x.re) y.im))
13.0ms
(* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re)
6.0ms
(* (atan2 x.im x.re) y.im)
8.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

series238.0ms

Counts
4 → 12
Calls
4 calls:
111.0ms
(- (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re) (* (atan2 x.im x.re) y.im))
80.0ms
(* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re)
15.0ms
(* (atan2 x.im x.re) y.im)
31.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

simplify77.0ms

Algorithm
egg-herbie
Counts
78 → 78
Iterations

Useful iterations: 2 (26.0ms)

IterNodesCost
0290541
1897501
22667491
35002491

prune264.0ms

Pruning

8 alts after pruning (7 fresh and 1 done)

Merged error: 3.7b

localize30.0ms

Local error

Found 4 expressions with local error:

29.5b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
33.0b
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
33.0b
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
33.0b
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

rewrite62.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
cos-sum sqrt-prod
sqrt-div
rem-sqrt-square sqrt-pow1 flip3-+ pow1/2 flip-+
Counts
4 → 39
Calls
4 calls:
8.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
19.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
17.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
17.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

series406.0ms

Counts
4 → 12
Calls
4 calls:
32.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
127.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
122.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
125.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

simplify161.0ms

Algorithm
egg-herbie
Counts
51 → 51
Iterations

Useful iterations: 4 (53.0ms)

IterNodesCost
0137538
1283472
2606472
31518472
44761471
55001471

prune343.0ms

Pruning

10 alts after pruning (9 fresh and 1 done)

Merged error: 3.7b

localize41.0ms

Local error

Found 4 expressions with local error:

29.5b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
33.0b
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
33.0b
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
33.0b
(cos (+ (* (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)))

rewrite176.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
cos-sum sqrt-prod
sqrt-div
rem-sqrt-square sqrt-pow1 flip3-+ pow1/2 flip-+
Counts
4 → 39
Calls
4 calls:
8.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
17.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
18.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
132.0ms
(cos (+ (* (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)))

series409.0ms

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

simplify64.0ms

Algorithm
egg-herbie
Counts
51 → 51
Iterations

Useful iterations: 4 (58.0ms)

IterNodesCost
0162695
1318603
2661473
31839473
45001471

prune374.0ms

Pruning

10 alts after pruning (8 fresh and 2 done)

Merged error: 3.7b

regimes334.0ms

Accuracy

61.1% (6.6b remaining)

Error of 10.1b against oracle of 3.5b and baseline of 20.4b

bsearch155.0ms

Steps
ItersRangePoint
6
5.568387801196678e-62
2.7162657665844248e-61
6.623197845640913e-62
8
-0.2945747773639613
-0.0004774284186052567
-0.27205829223981903

simplify2.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
04927
16827
26827

end0.0ms

sample3.0s

Algorithm
intervals
Results
1.1s1988×body1280valid
639.0ms7999×body80valid
515.0ms1390×body640valid
177.0ms690×body320valid
53.0ms299×body160valid