Details

Time bar (total: 9.4s)

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

sample163.0ms

Algorithm
intervals
Results
66.0ms85×body1280invalid
30.0ms247×body80valid
28.0ms52×body640invalid
8.0msbody2560invalid
3.0msbody320invalid
2.0msbody1280valid
2.0msbody640valid
2.0msbody160invalid
2.0ms12×body80invalid
0.0msbody160valid

simplify623.0ms

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (93.0ms)

IterNodesCost
0495072
1495072

prune9.0ms

Filtered
1 candidates to 1 candidates (0.0%)
Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New101
Fresh011
Picked000
Done000
Total112

Merged error: 33.7b

Counts
2 → 1

localize33.0ms

Local error

Found 4 expressions with local error:

1.8b
(*.f64 (atan2.f64 x.im x.re) y.im)
30.8b
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
30.8b
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
31.5b
(sin.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)))

rewrite25.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 sin-sum_binary64 unswap-sqr_binary64 prod-exp_binary64 *-commutative_binary64
Counts
4 → 56
Calls
4 calls:
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)))
4.0ms
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
10.0ms
(sin.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)))

series297.0ms

Counts
4 → 12
Calls
4 calls:
27.0ms
(*.f64 (atan2.f64 x.im x.re) y.im)
22.0ms
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
24.0ms
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
223.0ms
(sin.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)))

simplify130.0ms

Algorithm
egg-herbie
Counts
68 → 68
Iterations

Useful iterations: 0 (107.0ms)

IterNodesCost
048381270
148381270

prune117.0ms

Filtered
58 candidates to 68 candidates (-17.2%)
Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New61768
Fresh000
Picked101
Done000
Total62769

Merged error: 19.3b

Counts
69 → 7

localize35.0ms

Local error

Found 4 expressions with local error:

30.8b
(sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))
30.8b
(sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))
30.8b
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
31.5b
(sin.f64 (+.f64 (*.f64 (log.f64 (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) (cbrt.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (cbrt.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)))

rewrite60.0ms

Algorithm
rewrite-expression-head
Rules
15×*-un-lft-identity_binary64
13×sqrt-prod_binary64
10×add-sqr-sqrt_binary64
pow1_binary64 add-cube-cbrt_binary64
sqrt-div_binary64
add-log-exp_binary64 distribute-lft-out_binary64 add-exp-log_binary64 add-cbrt-cube_binary64 unpow-prod-down_binary64
flip3-+_binary64 pow1/2_binary64 sqrt-pow1_binary64 rem-sqrt-square_binary64 flip-+_binary64
sin-sum_binary64
Counts
4 → 57
Calls
4 calls:
8.0ms
(sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))
9.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)))
36.0ms
(sin.f64 (+.f64 (*.f64 (log.f64 (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) (cbrt.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (cbrt.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)))

series273.0ms

Counts
4 → 12
Calls
4 calls:
22.0ms
(sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))
24.0ms
(sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))
25.0ms
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
200.0ms
(sin.f64 (+.f64 (*.f64 (log.f64 (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2)))) (cbrt.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 2) (pow.f64 x.im 2))))) (cbrt.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)))

simplify90.0ms

Algorithm
egg-herbie
Counts
69 → 69
Iterations

Useful iterations: 0 (68.0ms)

IterNodesCost
050281297

prune144.0ms

Filtered
54 candidates to 69 candidates (-27.8%)
Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New68169
Fresh066
Picked011
Done000
Total68876

Merged error: 19.2b

Counts
76 → 8

localize38.0ms

Local error

Found 4 expressions with local error:

30.8b
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
31.5b
(sin.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)))
31.5b
(sin.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)))
31.5b
(sin.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)))

rewrite29.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
sin-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)))
10.0ms
(sin.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
(sin.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
(sin.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)))

series583.0ms

Counts
4 → 12
Calls
4 calls:
22.0ms
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
189.0ms
(sin.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)))
188.0ms
(sin.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)))
185.0ms
(sin.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 (66.0ms)

IterNodesCost
050441579

prune172.0ms

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

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New51051
Fresh066
Picked011
Done011
Total51859

Merged error: 19.2b

Counts
59 → 8

localize25.0ms

Local error

Found 4 expressions with local error:

1.5b
(*.f64 (atan2.f64 x.im x.re) y.re)
1.8b
(*.f64 (atan2.f64 x.im x.re) y.im)
19.2b
(sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
30.8b
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))

rewrite19.0ms

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

series241.0ms

Counts
4 → 12
Calls
4 calls:
29.0ms
(*.f64 (atan2.f64 x.im x.re) y.re)
29.0ms
(*.f64 (atan2.f64 x.im x.re) y.im)
156.0ms
(sin.f64 (+.f64 (*.f64 (log.f64 (neg.f64 x.re)) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
27.0ms
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))

simplify130.0ms

Algorithm
egg-herbie
Counts
71 → 71
Iterations

Useful iterations: 0 (107.0ms)

IterNodesCost
048391147
148391147

prune68.0ms

Filtered
54 candidates to 71 candidates (-31.5%)
Pruning

11 alts after pruning (8 fresh and 3 done)

PrunedKeptTotal
New68371
Fresh055
Picked011
Done022
Total681179

Merged error: 11.6b

Counts
79 → 11

regimes292.0ms

Accuracy

76.2% (4.9b remaining)

Error of 17.7b against oracle of 12.9b and baseline of 33.4b

bsearch336.0ms

Steps
ItersRangePoint
8
-5.418256131246544e-307
1.4670708365425242e-307
2.7747355521088e-310
5
-4.5667240563801356e-257
-1.6183037814701356e-257
-2.054387041127435e-257
10
-5.153748302180885e-188
-9.993350302135847e-201
-9.305949498214368e-199
6
-1.6690360359972105e-22
-1.7187940215324266e-23
-1.5876991366774867e-22

simplify7.0ms

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (2.0ms)

IterNodesCost
091312
191312

end0.0ms

sample4.1s

Algorithm
intervals
Results
1.6s2055×body1280invalid
887.0ms7569×body80valid
638.0ms1232×body640invalid
161.0ms447×body320invalid
97.0ms131×body1280valid
88.0ms50×body2560invalid
82.0ms160×body640valid
45.0ms364×body80invalid
45.0ms188×body160invalid
30.0ms83×body320valid
14.0ms57×body160valid

Profiling

Loading profile data...