Details

Time bar (total: 7.6s)

analyze1.5s

Algorithm
search
Search
TrueOtherFalseIter
0%99.8%0.2%0
0%99.8%0.2%1
0%99.8%0.2%2
0%99.8%0.2%3
0%99.8%0.2%4
0%99.8%0.2%5
9.4%90.4%0.2%6
17.2%82.7%0.2%7
19.5%80.3%0.2%8
30.8%69%0.2%9
35.5%64.3%0.2%10
42.4%57.4%0.2%11
47.1%52.7%0.2%12
48.9%50.8%0.3%13
50%49.7%0.4%14

sample128.0ms

Algorithm
intervals
Results
41.0ms58×body1280invalid
31.0ms241×body80valid
18.0ms37×body640invalid
8.0ms22×body320invalid
4.0msbody1280valid
2.0msbody640valid
2.0msbody160invalid
1.0msbody320valid
1.0ms10×body80invalid
0.0msbody160valid

simplify469.0ms

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (51.0ms)

IterNodesCost
0493436
1493436

prune28.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

localize25.0ms

Local error

Found 4 expressions with local error:

2.2b
(* (atan2 x.im x.re) y.im)
29.4b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
29.4b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
33.3b
(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:
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)))
9.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

series92.0ms

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

simplify45.0ms

Algorithm
egg-herbie
Counts
68 → 68
Iterations

Useful iterations: 0 (39.0ms)

IterNodesCost
05029677

prune131.0ms

Filtered
56 candidates to 68 candidates (-21.4%)
Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New64468
Fresh011
Picked101
Done000
Total65570

Merged error: 19.4b

Counts
70 → 5

localize17.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.3b
(* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re)
2.2b
(* (atan2 x.im x.re) y.im)
29.4b
(sqrt (+ (* x.re x.re) (* x.im x.im)))

rewrite19.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 → 65
Calls
4 calls:
4.0ms
(- (* (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)))

series80.0ms

Counts
4 → 12
Calls
4 calls:
40.0ms
(- (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re) (* (atan2 x.im x.re) y.im))
27.0ms
(* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re)
7.0ms
(* (atan2 x.im x.re) y.im)
6.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

simplify50.0ms

Algorithm
egg-herbie
Counts
77 → 77
Iterations

Useful iterations: 0 (43.0ms)

IterNodesCost
04931892
14931892

prune126.0ms

Filtered
57 candidates to 77 candidates (-35.1%)
Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New73477
Fresh134
Picked101
Done000
Total75782

Merged error: 3.6b

Counts
82 → 7

localize30.0ms

Local error

Found 4 expressions with local error:

2.2b
(* (atan2 x.im x.re) y.im)
29.4b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
29.4b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
33.3b
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

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

series78.0ms

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

simplify46.0ms

Algorithm
egg-herbie
Counts
68 → 68
Iterations

Useful iterations: 0 (40.0ms)

IterNodesCost
05029677

prune136.0ms

Filtered
56 candidates to 68 candidates (-21.4%)
Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New67168
Fresh066
Picked101
Done000
Total68775

Merged error: 3.6b

Counts
75 → 7

localize29.0ms

Local error

Found 4 expressions with local error:

29.4b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
33.3b
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
33.3b
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
33.3b
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

rewrite26.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:
4.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
7.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
7.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
7.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

series176.0ms

Counts
4 → 12
Calls
4 calls:
6.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
55.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
57.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
58.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

simplify41.0ms

Algorithm
egg-herbie
Counts
51 → 51
Iterations

Useful iterations: 0 (35.0ms)

IterNodesCost
04993815
14993815

prune84.0ms

Filtered
48 candidates to 51 candidates (-6.3%)
Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New50151
Fresh066
Picked011
Done000
Total50858

Merged error: 3.6b

Counts
58 → 8

regimes473.0ms

Accuracy

81.8% (5.4b remaining)

Error of 9.0b against oracle of 3.7b and baseline of 33.2b

bsearch76.0ms

Steps
ItersRangePoint
9
-4.283679741380354e-306
1.2000194640375912e-303
4.1007807237685e-310

simplify2.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (1.0ms)

IterNodesCost
05927
15927

end0.0ms

sample3.7s

Algorithm
intervals
Results
1.3s1921×body1280invalid
816.0ms7536×body80valid
631.0ms1335×body640invalid
177.0ms539×body320invalid
95.0ms132×body1280valid
78.0ms164×body640valid
47.0ms425×body80invalid
47.0ms215×body160invalid
38.0ms116×body320valid
12.0ms52×body160valid

Profiling

Loading profile data...