Details

Time bar (total: 8.7s)

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
48.9%50.8%0.3%13
50%49.7%0.4%14

sample130.0ms

Algorithm
intervals
Results
44.0ms62×body1280invalid
33.0ms245×body80valid
22.0ms44×body640invalid
7.0ms18×body320invalid
3.0msbody640valid
1.0ms11×body80invalid
1.0msbody160invalid
1.0msbody160valid
0.0msbody320valid

simplify622.0ms

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (102.0ms)

IterNodesCost
0495072
1495072

prune9.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: 30.8b

Counts
2 → 2

localize33.0ms

Local error

Found 4 expressions with local error:

1.2b
(*.f64 (atan2.f64 x.im x.re) y.re)
27.4b
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
27.4b
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
32.8b
(cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))

rewrite24.0ms

Algorithm
rewrite-expression-head
Rules
12×add-sqr-sqrt_binary64
*-un-lft-identity_binary64 pow1_binary64 add-cube-cbrt_binary64
add-exp-log_binary64 add-cbrt-cube_binary64 sqrt-prod_binary64
add-log-exp_binary64 sqrt-div_binary64
associate-*r*_binary64 associate-*l*_binary64
flip3-+_binary64 pow1/2_binary64 sqrt-pow1_binary64 rem-sqrt-square_binary64 flip-+_binary64
pow-prod-down_binary64 cbrt-unprod_binary64 unswap-sqr_binary64 prod-exp_binary64 cos-sum_binary64 *-commutative_binary64
Counts
4 → 56
Calls
4 calls:
4.0ms
(*.f64 (atan2.f64 x.im x.re) y.re)
4.0ms
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
4.0ms
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
9.0ms
(cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))

series291.0ms

Counts
4 → 12
Calls
4 calls:
27.0ms
(*.f64 (atan2.f64 x.im x.re) y.re)
26.0ms
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
26.0ms
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
212.0ms
(cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))

simplify152.0ms

Algorithm
egg-herbie
Counts
68 → 68
Iterations

Useful iterations: 0 (129.0ms)

IterNodesCost
048101251
148101251

prune104.0ms

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

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New63568
Fresh011
Picked101
Done000
Total64670

Merged error: 17.3b

Counts
70 → 6

localize19.0ms

Local error

Found 4 expressions with local error:

0.0b
(exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)))
0.3b
(*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re)
1.0b
(*.f64 (atan2.f64 x.im x.re) y.im)
27.4b
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))

rewrite20.0ms

Algorithm
rewrite-expression-head
Rules
15×add-sqr-sqrt_binary64
11×pow1_binary64
10×*-un-lft-identity_binary64 add-cube-cbrt_binary64
associate-*l*_binary64
add-exp-log_binary64 add-cbrt-cube_binary64
add-log-exp_binary64
associate-*r*_binary64
log-pow_binary64 sqrt-prod_binary64 exp-prod_binary64
pow-prod-down_binary64 pow1/2_binary64 cbrt-unprod_binary64 rem-exp-log_binary64 sqrt-pow1_binary64 unswap-sqr_binary64 prod-exp_binary64 sqrt-div_binary64 *-commutative_binary64
flip3-+_binary64 sub-neg_binary64 diff-log_binary64 exp-diff_binary64 rem-sqrt-square_binary64 exp-sum_binary64 flip-+_binary64
Counts
4 → 68
Calls
4 calls:
5.0ms
(exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)))
5.0ms
(*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re)
4.0ms
(*.f64 (atan2.f64 x.im x.re) y.im)
4.0ms
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))

series264.0ms

Counts
4 → 12
Calls
4 calls:
134.0ms
(exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)))
75.0ms
(*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re)
29.0ms
(*.f64 (atan2.f64 x.im x.re) y.im)
26.0ms
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))

simplify101.0ms

Algorithm
egg-herbie
Counts
80 → 80
Iterations

Useful iterations: 0 (76.0ms)

IterNodesCost
050091564

prune93.0ms

Filtered
65 candidates to 80 candidates (-23.1%)
Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New77380
Fresh145
Picked101
Done000
Total79786

Merged error: 2.4b

Counts
86 → 7

localize32.0ms

Local error

Found 4 expressions with local error:

1.2b
(*.f64 (atan2.f64 x.im x.re) y.re)
27.4b
(sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))
27.4b
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
32.8b
(cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))

rewrite27.0ms

Algorithm
rewrite-expression-head
Rules
12×*-un-lft-identity_binary64 add-sqr-sqrt_binary64
pow1_binary64 add-cube-cbrt_binary64 sqrt-prod_binary64
add-exp-log_binary64 add-cbrt-cube_binary64
add-log-exp_binary64 sqrt-div_binary64
associate-*r*_binary64 associate-*l*_binary64
flip3-+_binary64 pow1/2_binary64 distribute-lft-out_binary64 sqrt-pow1_binary64 rem-sqrt-square_binary64 unpow-prod-down_binary64 flip-+_binary64
pow-prod-down_binary64 cbrt-unprod_binary64 unswap-sqr_binary64 prod-exp_binary64 cos-sum_binary64 *-commutative_binary64
Counts
4 → 58
Calls
4 calls:
4.0ms
(*.f64 (atan2.f64 x.im x.re) y.re)
8.0ms
(sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))
4.0ms
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
9.0ms
(cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))

series255.0ms

Counts
4 → 12
Calls
4 calls:
27.0ms
(*.f64 (atan2.f64 x.im x.re) y.re)
22.0ms
(sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))
23.0ms
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
183.0ms
(cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))

simplify55.0ms

Algorithm
egg-herbie
Counts
70 → 70
Iterations

Useful iterations: 0 (35.0ms)

IterNodesCost
051861281

prune102.0ms

Filtered
55 candidates to 70 candidates (-27.3%)
Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New70070
Fresh066
Picked011
Done000
Total70777

Merged error: 2.4b

Counts
77 → 7

localize41.0ms

Local error

Found 4 expressions with local error:

27.4b
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
32.8b
(cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
32.8b
(cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
32.8b
(cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))

rewrite27.0ms

Algorithm
rewrite-expression-head
Rules
add-sqr-sqrt_binary64
*-un-lft-identity_binary64 pow1_binary64 add-cube-cbrt_binary64
add-log-exp_binary64 add-exp-log_binary64 add-cbrt-cube_binary64
cos-sum_binary64 sqrt-prod_binary64
sqrt-div_binary64
flip3-+_binary64 pow1/2_binary64 sqrt-pow1_binary64 rem-sqrt-square_binary64 flip-+_binary64
Counts
4 → 39
Calls
4 calls:
4.0ms
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
7.0ms
(cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
7.0ms
(cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
8.0ms
(cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))

series565.0ms

Counts
4 → 12
Calls
4 calls:
22.0ms
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
186.0ms
(cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
174.0ms
(cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
184.0ms
(cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))

simplify88.0ms

Algorithm
egg-herbie
Counts
51 → 51
Iterations

Useful iterations: 0 (67.0ms)

IterNodesCost
048991522
148991522

prune155.0ms

Filtered
49 candidates to 51 candidates (-4.1%)
Pruning

7 alts after pruning (5 fresh and 2 done)

PrunedKeptTotal
New51051
Fresh055
Picked011
Done011
Total51758

Merged error: 2.4b

Counts
58 → 7

regimes266.0ms

Accuracy

83.5% (5.0b remaining)

Error of 8.7b against oracle of 3.7b and baseline of 33.8b

bsearch115.0ms

Steps
ItersRangePoint
10
-3.012847183078543e-303
5.831464382568382e-303
-1.1113437107198e-310

simplify4.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (2.0ms)

IterNodesCost
06453
16453

end0.0ms

sample3.8s

Algorithm
intervals
Results
1.4s2019×body1280invalid
829.0ms7518×body80valid
604.0ms1252×body640invalid
197.0ms564×body320invalid
102.0ms144×body1280valid
81.0ms160×body640valid
50.0ms224×body160invalid
49.0ms434×body80invalid
37.0ms109×body320valid
16.0ms69×body160valid

Profiling

Loading profile data...