Details

Time bar (total: 7.8s)

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

sample138.0ms

Algorithm
intervals
Results
53.0ms68×body1280invalid
29.0ms247×body80valid
22.0ms45×body640invalid
5.0ms16×body320invalid
2.0msbody160invalid
2.0msbody320valid
1.0msbody640valid
1.0ms12×body80invalid
1.0msbody1280valid

simplify463.0ms

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (41.0ms)

IterNodesCost
0489736
1489736

prune21.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.7b

Counts
2 → 2

localize24.0ms

Local error

Found 4 expressions with local error:

0.6b
(* (atan2 x.im x.re) y.re)
30.9b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
30.9b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
32.8b
(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.re)
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)))

series85.0ms

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

simplify59.0ms

Algorithm
egg-herbie
Counts
68 → 68
Iterations

Useful iterations: 0 (53.0ms)

IterNodesCost
05027676

prune130.0ms

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

4 alts after pruning (4 fresh and 0 done)

PrunedKeptTotal
New65368
Fresh011
Picked101
Done000
Total66470

Merged error: 19.0b

Counts
70 → 4

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

rewrite18.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 pow-prod-down prod-exp *-commutative cbrt-unprod rem-exp-log unswap-sqr
sub-neg rem-sqrt-square flip3-+ exp-diff diff-log exp-sum flip-+
Counts
4 → 68
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)))

series73.0ms

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

simplify29.0ms

Algorithm
egg-herbie
Counts
80 → 80
Iterations

Useful iterations: 0 (23.0ms)

IterNodesCost
05043842

prune141.0ms

Filtered
61 candidates to 80 candidates (-31.1%)
Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New77380
Fresh123
Picked011
Done000
Total78684

Merged error: 2.1b

Counts
84 → 6

localize16.0ms

Local error

Found 4 expressions with local error:

0.2b
(* (pow (sqrt (+ (* x.re x.re) (* x.im x.im))) y.re) (pow (exp (atan2 x.im x.re)) (neg y.im)))
0.5b
(exp (atan2 x.im x.re))
1.2b
(pow (exp (atan2 x.im x.re)) (neg y.im))
30.9b
(sqrt (+ (* x.re x.re) (* x.im x.im)))

rewrite24.0ms

Algorithm
rewrite-expression-head
Rules
34×add-sqr-sqrt
22×unpow-prod-down
16×add-cube-cbrt *-un-lft-identity
13×add-exp-log
12×unswap-sqr
10×pow-unpow associate-*l* sqr-pow
prod-exp sqrt-prod
pow-to-exp associate-*r* pow-exp
pow1 exp-prod add-cbrt-cube
add-log-exp
pow-pow
distribute-lft-neg-in pow-neg distribute-rgt-neg-in
neg-sub0 sqrt-div associate-*r/ pow-sub
neg-mul-1 rem-sqrt-square sqrt-pow1 flip3-+ pow1/2 un-div-inv *-commutative cbrt-unprod flip-+ rem-exp-log
Counts
4 → 105
Calls
4 calls:
12.0ms
(* (pow (sqrt (+ (* x.re x.re) (* x.im x.im))) y.re) (pow (exp (atan2 x.im x.re)) (neg y.im)))
2.0ms
(exp (atan2 x.im x.re))
4.0ms
(pow (exp (atan2 x.im x.re)) (neg y.im))
4.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

series66.0ms

Counts
4 → 12
Calls
4 calls:
44.0ms
(* (pow (sqrt (+ (* x.re x.re) (* x.im x.im))) y.re) (pow (exp (atan2 x.im x.re)) (neg y.im)))
4.0ms
(exp (atan2 x.im x.re))
12.0ms
(pow (exp (atan2 x.im x.re)) (neg y.im))
6.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))

simplify44.0ms

Algorithm
egg-herbie
Counts
117 → 117
Iterations

Useful iterations: 0 (32.0ms)

IterNodesCost
051651677

prune146.0ms

Filtered
80 candidates to 117 candidates (-46.3%)
Pruning

6 alts after pruning (4 fresh and 2 done)

PrunedKeptTotal
New1170117
Fresh044
Picked011
Done011
Total1176123

Merged error: 2.1b

Counts
123 → 6

localize27.0ms

Local error

Found 4 expressions with local error:

30.9b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
32.8b
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
32.8b
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
32.8b
(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)))
9.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
6.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

series154.0ms

Counts
4 → 12
Calls
4 calls:
6.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
48.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
51.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
49.0ms
(cos (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

simplify57.0ms

Algorithm
egg-herbie
Counts
51 → 51
Iterations

Useful iterations: 0 (50.0ms)

IterNodesCost
04962812
14962812

prune91.0ms

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

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New48351
Fresh033
Picked101
Done022
Total49857

Merged error: 2.1b

Counts
57 → 8

regimes454.0ms

Accuracy

67.1% (5.4b remaining)

Error of 8.8b against oracle of 3.5b and baseline of 19.7b

bsearch248.0ms

Steps
ItersRangePoint
9
6.394553194570509e-69
7.241031404090824e-63
7.027221242821304e-68
9
1.3877518063409838e-167
2.069871222658754e-158
3.4498780821159295e-165
10
-4.123054802319074e-306
3.441803137792769e-300
1.2023040272701e-310

simplify3.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (1.0ms)

IterNodesCost
015854
115854

end0.0ms

sample3.8s

Algorithm
intervals
Results
1.4s1932×body1280invalid
857.0ms7573×body80valid
646.0ms1351×body640invalid
190.0ms545×body320invalid
93.0ms131×body1280valid
70.0ms142×body640valid
56.0ms249×body160invalid
49.0ms408×body80invalid
32.0ms93×body320valid
14.0ms61×body160valid

Profiling

Loading profile data...