Details

Time bar (total: 13.3s)

sample3.6s

Algorithm
intervals
sampling

Space saved by range analysis: 0%

Space saved by search: 0.183105%

Guaranteed chance to sample good point: 64.693653%

Results
40.0ms50×body1280invalid
27.0ms238×body80valid
27.0ms54×body640invalid
6.0msbody1280valid
5.0ms14×body320invalid
3.0ms13×body160invalid
2.0msbody320valid
2.0msbody640valid
1.0ms12×body80invalid
1.0msbody160valid

simplify400.0ms

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 1 (3.0ms)

IterNodesCost
03121
15320
28420
320320
487920
5500120

prune22.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: 33.3b

Counts
2 → 2

localize35.0ms

Local error

Found 4 expressions with local error:

2.2b
(* (atan2 x.im x.re) y.im)
29.0b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
29.0b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
34.6b
(cos (+ (* (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-+
cos-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)))
8.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

series91.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)))
6.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
72.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

simplify81.0ms

Algorithm
egg-herbie
Counts
68 → 68
Iterations

Useful iterations: 3 (32.0ms)

IterNodesCost
0199426
1523389
21301389
32775387
45001387

prune149.0ms

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

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New61768
Fresh011
Picked101
Done000
Total62870

Merged error: 16.3b

Counts
70 → 8

localize17.0ms

Local error

Found 4 expressions with local error:

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

rewrite20.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:
6.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)))

series74.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)))
23.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

prune150.0ms

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

10 alts after pruning (10 fresh and 0 done)

PrunedKeptTotal
New77481
Fresh167
Picked101
Done000
Total791089

Merged error: 4.3b

Counts
89 → 10

localize11.0ms

Local error

Found 3 expressions with local error:

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

rewrite13.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:
5.0ms
(/ (pow x.re y.re) (exp (* (atan2 x.im x.re) y.im)))
2.0ms
(exp (* (atan2 x.im x.re) y.im))
4.0ms
(* (atan2 x.im x.re) y.im)

series42.0ms

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

simplify38.0ms

Algorithm
egg-herbie
Counts
82 → 82
Iterations

Useful iterations: 2 (28.0ms)

IterNodesCost
0266599
11004563
25001558

prune128.0ms

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

10 alts after pruning (10 fresh and 0 done)

PrunedKeptTotal
New81182
Fresh099
Picked101
Done000
Total821092

Merged error: 4.3b

Counts
92 → 10

localize14.0ms

Local error

Found 4 expressions with local error:

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

rewrite18.0ms

Algorithm
rewrite-expression-head
Rules
49×times-frac
42×add-sqr-sqrt
40×add-cube-cbrt *-un-lft-identity
36×log-pow
28×exp-prod
24×unpow-prod-down
15×pow1
11×add-exp-log
add-cbrt-cube sqr-pow
associate-/r* associate-/l*
add-log-exp
log-prod div-exp associate-*r* associate-*l*
cbrt-undiv pow-to-exp exp-to-pow frac-2neg rem-log-exp pow-prod-down pow-exp prod-exp clear-num *-commutative cbrt-unprod div-inv rem-exp-log unswap-sqr
Counts
4 → 120
Calls
4 calls:
6.0ms
(/ (pow x.re y.re) (log (exp (exp (* (atan2 x.im x.re) y.im)))))
2.0ms
(exp (* (atan2 x.im x.re) y.im))
2.0ms
(log (exp (exp (* (atan2 x.im x.re) y.im))))
4.0ms
(* (atan2 x.im x.re) y.im)

series51.0ms

Counts
4 → 12
Calls
4 calls:
27.0ms
(/ (pow x.re y.re) (log (exp (exp (* (atan2 x.im x.re) y.im)))))
8.0ms
(exp (* (atan2 x.im x.re) y.im))
9.0ms
(log (exp (exp (* (atan2 x.im x.re) y.im))))
6.0ms
(* (atan2 x.im x.re) y.im)

simplify43.0ms

Algorithm
egg-herbie
Counts
132 → 132
Iterations

Useful iterations: 2 (29.0ms)

IterNodesCost
03391169
111361046
250011029

prune113.0ms

Filtered
87 candidates to 132 candidates (-51.7%)
Pruning

11 alts after pruning (10 fresh and 1 done)

PrunedKeptTotal
New1311132
Fresh099
Picked011
Done000
Total13111142

Merged error: 4.3b

Counts
142 → 11

regimes578.0ms

Accuracy

74.3% (7.2b remaining)

Error of 11.1b against oracle of 3.9b and baseline of 31.8b

bsearch463.0ms

Steps
ItersRangePoint
10
1.61118683445263e-49
1.856820959590781e-33
2.744432728213749e-41
8
2.150845629868087e-152
2.073583369554214e-148
6.10638643596487e-151
9
1.0952901157250081e-250
1.3838278931131376e-241
2.156677059327629e-250
6
3.0409148893564322e-263
1.5492017645221345e-262
1.5263318606953946e-262
11
-1.6168763158563456e-290
4.6037683339880027e-299
-2.2436014628515e-310

simplify3.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
074101
178101
278101

end0.0ms

sample7.1s

Algorithm
intervals
sampling

Space saved by range analysis: 0%

Space saved by search: 0.183105%

Guaranteed chance to sample good point: 64.693653%

Results
1.3s1885×body1280invalid
865.0ms7543×body80valid
628.0ms1286×body640invalid
190.0ms549×body320invalid
86.0ms121×body1280valid
74.0ms154×body640valid
63.0ms281×body160invalid
50.0ms409×body80invalid
39.0ms115×body320valid
15.0ms67×body160valid

Profiling

Loading profile data...