Details

Time bar (total: 11.0s)

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
49%50.8%0.2%13
50.1%49.7%0.2%14

sample157.0ms

Algorithm
intervals
Results
58.0ms69×body1280invalid
27.0ms230×body80valid
21.0ms41×body640invalid
8.0ms10×body1280valid
7.0msbody2560invalid
5.0ms13×body320invalid
4.0msbody640valid
3.0msbody320valid
2.0ms18×body80invalid
1.0msbody160invalid
0.0msbody160valid

simplify502.0ms

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (64.0ms)

IterNodesCost
0497036
1497036

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: 34.1b

Counts
2 → 2

localize25.0ms

Local error

Found 4 expressions with local error:

2.7b
(* (atan2 x.im x.re) y.im)
29.2b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
29.2b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
33.3b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

rewrite34.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-+
sin-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)))
16.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
8.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

series81.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)))
64.0ms
(sin (+ (* (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 (49.0ms)

IterNodesCost
04750692
14750692

prune163.0ms

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

11 alts after pruning (11 fresh and 0 done)

PrunedKeptTotal
New581068
Fresh011
Picked101
Done000
Total591170

Merged error: 22.1b

Counts
70 → 11

localize33.0ms

Local error

Found 4 expressions with local error:

29.2b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
29.2b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
29.2b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
33.3b
(sin (+ (* (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)))

rewrite34.0ms

Algorithm
rewrite-expression-head
Rules
10×add-sqr-sqrt
sqrt-prod
pow1 add-cube-cbrt *-un-lft-identity
sqrt-div
add-exp-log add-cbrt-cube add-log-exp
rem-sqrt-square sqrt-pow1 flip3-+ pow1/2 flip-+
sin-sum
Counts
4 → 53
Calls
4 calls:
4.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
4.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
4.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
22.0ms
(sin (+ (* (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)))

series72.0ms

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

simplify50.0ms

Algorithm
egg-herbie
Counts
65 → 65
Iterations

Useful iterations: 0 (44.0ms)

IterNodesCost
05065691

prune153.0ms

Filtered
50 candidates to 65 candidates (-30.0%)
Pruning

12 alts after pruning (11 fresh and 1 done)

PrunedKeptTotal
New63265
Fresh1910
Picked011
Done000
Total641276

Merged error: 22.0b

Counts
76 → 12

localize30.0ms

Local error

Found 4 expressions with local error:

29.2b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
33.3b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
33.3b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
33.3b
(sin (+ (* (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
add-sqr-sqrt
pow1 add-cube-cbrt *-un-lft-identity
add-exp-log add-cbrt-cube add-log-exp
sin-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)))
6.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
6.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
6.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

series165.0ms

Counts
4 → 12
Calls
4 calls:
6.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
53.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
52.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))
55.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))

simplify47.0ms

Algorithm
egg-herbie
Counts
51 → 51
Iterations

Useful iterations: 0 (41.0ms)

IterNodesCost
05038851

prune133.0ms

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

12 alts after pruning (10 fresh and 2 done)

PrunedKeptTotal
New51051
Fresh01010
Picked011
Done011
Total511263

Merged error: 22.0b

Counts
63 → 12

localize26.0ms

Local error

Found 4 expressions with local error:

1.2b
(* y.re (atan2 x.im x.re))
29.2b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
29.2b
(sqrt (+ (* x.re x.re) (* x.im x.im)))
33.3b
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* y.re (atan2 x.im x.re))))

rewrite17.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-+
sin-sum pow-prod-down prod-exp *-commutative cbrt-unprod unswap-sqr
Counts
4 → 56
Calls
4 calls:
3.0ms
(* y.re (atan2 x.im x.re))
3.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
4.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
6.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* y.re (atan2 x.im x.re))))

series66.0ms

Counts
4 → 12
Calls
4 calls:
4.0ms
(* y.re (atan2 x.im x.re))
5.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
5.0ms
(sqrt (+ (* x.re x.re) (* x.im x.im)))
52.0ms
(sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* y.re (atan2 x.im x.re))))

simplify48.0ms

Algorithm
egg-herbie
Counts
68 → 68
Iterations

Useful iterations: 0 (40.0ms)

IterNodesCost
05498692

prune97.0ms

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

13 alts after pruning (11 fresh and 2 done)

PrunedKeptTotal
New64468
Fresh279
Picked101
Done022
Total671380

Merged error: 22.0b

Counts
80 → 13

regimes542.0ms

Accuracy

63% (5.1b remaining)

Error of 24.8b against oracle of 19.8b and baseline of 33.5b

bsearch1.6s

Steps
ItersRangePoint
10
-1.1111933463196331e-288
-8.08465505491727e-299
-8.16319307845502e-299

simplify2.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
04364
14364

end0.0ms

analyze1.3s

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
49%50.8%0.2%13
50.1%49.7%0.2%14

sample4.0s

Algorithm
intervals
Results
1.6s2079×body1280invalid
846.0ms7513×body80valid
652.0ms1297×body640invalid
163.0ms451×body320invalid
111.0ms153×body1280valid
90.0ms178×body640valid
85.0ms50×body2560invalid
53.0ms414×body80invalid
38.0ms167×body160invalid
35.0ms102×body320valid
13.0ms54×body160valid

Profiling

Loading profile data...