Details

Time bar (total: 15.1s)

sample4.4s

Algorithm
intervals
sampling

Space saved by range analysis: 0.633765%

Space saved by search: 0.195169%

Guaranteed chance to sample good point: 0%

Results
44.0ms60×body1280invalid
31.0ms230×body80valid
23.0ms45×body640invalid
5.0msbody1280valid
5.0ms10×body640valid
4.0ms13×body320invalid
2.0msbody160invalid
1.0msbody320valid
1.0ms11×body80invalid
1.0msbody160valid

simplify381.0ms

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 1 (3.0ms)

IterNodesCost
03121
15320
28420
320320
487920
5500120

prune19.0ms

Filtered
1 candidates to 1 candidates (0.0%)
Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022

Merged error: 35.6b

Counts
2 → 2

localize47.0ms

Local error

Found 4 expressions with local error:

1.8b
(* (atan2 x.im x.re) y.im)
30.1b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
30.1b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
36.4b
(cos (+ (* (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-+
cos-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)
4.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
4.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
8.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

series86.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)))
11.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
63.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

simplify79.0ms

Algorithm
egg-herbie
Counts
68 → 68
Iterations

Useful iterations: 2 (13.0ms)

IterNodesCost
0199426
1523389
21179387
32665387
45002387

prune124.0ms

Filtered
54 candidates to 68 candidates (-25.9%)
Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New63568
Fresh011
Picked101
Done000
Total64670

Merged error: 22.3b

Counts
70 → 6

localize15.0ms

Local error

Found 4 expressions with local error:

0.1b
(exp (- (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re) (* (atan2 x.im x.re) y.im)))
0.3b
(* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re)
1.8b
(* (atan2 x.im x.re) y.im)
30.1b
(sqrt (+ (* x.re x.re) (* x.im x.im)))

rewrite17.0ms

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

series75.0ms

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

simplify60.0ms

Algorithm
egg-herbie
Counts
81 → 81
Iterations

Useful iterations: 3 (53.0ms)

IterNodesCost
0299556
1864496
22274481
35002479

prune133.0ms

Filtered
60 candidates to 81 candidates (-35.0%)
Pruning

10 alts after pruning (9 fresh and 1 done)

PrunedKeptTotal
New77481
Fresh055
Picked011
Done000
Total771087

Merged error: 6.5b

Counts
87 → 10

localize10.0ms

Local error

Found 3 expressions with local error:

0.0b
(exp (* (atan2 x.im x.re) y.im))
0.3b
(/ (pow x.re y.re) (exp (* (atan2 x.im x.re) y.im)))
1.8b
(* (atan2 x.im x.re) y.im)

rewrite12.0ms

Algorithm
rewrite-expression-head
Rules
23×add-sqr-sqrt
21×add-cube-cbrt *-un-lft-identity times-frac
12×unpow-prod-down
add-exp-log add-cbrt-cube associate-/l*
pow1 add-log-exp
sqr-pow
div-exp associate-*r* associate-*l* associate-/r*
cbrt-undiv pow-to-exp exp-prod exp-to-pow frac-2neg pow-prod-down pow-exp prod-exp clear-num *-commutative cbrt-unprod div-inv rem-exp-log unswap-sqr
Counts
3 → 73
Calls
3 calls:
2.0ms
(exp (* (atan2 x.im x.re) y.im))
5.0ms
(/ (pow x.re y.re) (exp (* (atan2 x.im x.re) y.im)))
3.0ms
(* (atan2 x.im x.re) y.im)

series44.0ms

Counts
3 → 9
Calls
3 calls:
9.0ms
(exp (* (atan2 x.im x.re) y.im))
27.0ms
(/ (pow x.re y.re) (exp (* (atan2 x.im x.re) y.im)))
9.0ms
(* (atan2 x.im x.re) y.im)

simplify35.0ms

Algorithm
egg-herbie
Counts
82 → 82
Iterations

Useful iterations: 2 (28.0ms)

IterNodesCost
0266599
11004563
25001558

prune108.0ms

Filtered
58 candidates to 82 candidates (-41.4%)
Pruning

10 alts after pruning (8 fresh and 2 done)

PrunedKeptTotal
New82082
Fresh088
Picked011
Done011
Total821092

Merged error: 6.5b

Counts
92 → 10

localize12.0ms

Local error

Found 4 expressions with local error:

0.0b
(/ 1 (pow (/ -1 x.re) y.re))
0.0b
(exp (* (atan2 x.im x.re) y.im))
0.2b
(/ (/ 1 (pow (/ -1 x.re) y.re)) (exp (* (atan2 x.im x.re) y.im)))
1.8b
(* (atan2 x.im x.re) y.im)

rewrite57.0ms

Algorithm
rewrite-expression-head
Rules
564×times-frac
282×add-sqr-sqrt
280×add-cube-cbrt *-un-lft-identity
208×unpow-prod-down
58×associate-/l*
39×add-exp-log
35×div-exp
22×div-inv
20×associate-/r*
16×sqr-pow
13×add-cbrt-cube
12×pow-exp
rec-exp 1-exp
pow1 pow-to-exp add-log-exp
cbrt-undiv
associate-*r* associate-*l*
frac-2neg clear-num
exp-prod exp-to-pow pow-flip pow-prod-down prod-exp *-commutative cbrt-unprod rem-exp-log associate-/l/ inv-pow unswap-sqr
Counts
4 → 373
Calls
4 calls:
8.0ms
(/ 1 (pow (/ -1 x.re) y.re))
2.0ms
(exp (* (atan2 x.im x.re) y.im))
18.0ms
(/ (/ 1 (pow (/ -1 x.re) y.re)) (exp (* (atan2 x.im x.re) y.im)))
3.0ms
(* (atan2 x.im x.re) y.im)

series60.0ms

Counts
4 → 12
Calls
4 calls:
14.0ms
(/ 1 (pow (/ -1 x.re) y.re))
9.0ms
(exp (* (atan2 x.im x.re) y.im))
31.0ms
(/ (/ 1 (pow (/ -1 x.re) y.re)) (exp (* (atan2 x.im x.re) y.im)))
6.0ms
(* (atan2 x.im x.re) y.im)

simplify77.0ms

Algorithm
egg-herbie
Counts
385 → 385
Iterations

Useful iterations: 1 (28.0ms)

IterNodesCost
014374944
150024672

prune588.0ms

Filtered
241 candidates to 385 candidates (-59.8%)
Pruning

11 alts after pruning (9 fresh and 2 done)

PrunedKeptTotal
New3823385
Fresh167
Picked101
Done022
Total38411395

Merged error: 6.5b

Counts
395 → 11

regimes482.0ms

Accuracy

50.1% (7.9b remaining)

Error of 12.2b against oracle of 4.3b and baseline of 20.2b

bsearch416.0ms

Steps
ItersRangePoint
10
2.1268374295369894e-78
5.495029501303663e-67
4.835437917345077e-73
9
-3.684632596192235e-275
-1.380358447849174e-282
-1.5775093623743453e-281
8
-2.302059237858308e-212
-4.0936481142640626e-216
-6.720569622323342e-215
7
-2.3436073232027523e+104
-1.0077299007601604e+103
-1.2760520745232182e+103

simplify3.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05754
16554
26554

end0.0ms

sample7.7s

Algorithm
intervals
sampling

Space saved by range analysis: 0.633765%

Space saved by search: 0.195169%

Guaranteed chance to sample good point: 0%

Results
1.4s1919×body1280invalid
839.0ms7539×body80valid
636.0ms1278×body640invalid
178.0ms521×body320invalid
104.0ms142×body1280valid
77.0ms153×body640valid
61.0ms272×body160invalid
46.0ms392×body80invalid
35.0ms101×body320valid
15.0ms65×body160valid

Profiling

Loading profile data...