Details

Time bar (total: 35.6s)

analyze2.3s (6.6%)

Algorithm
search
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05362451
055
155
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
0%99.8%0.2%6
0%81.1%18.9%7
0%68.6%31.4%8
0%59.2%40.8%9
0%59.2%40.8%10
0%59.2%40.8%11
0.4%49.5%50.1%12
0.8%44.4%54.8%13
1.4%39.9%58.7%14
Symmetry

(sort M D)

Compiler

Compiled 36 to 32 computations (11.1% saved)

sample163.0ms (0.5%)

Algorithm
intervals
Results
40.0ms263×body128nan
39.0ms256×body128valid
26.0ms169×body128invalid
Compiler

Compiled 71 to 68 computations (4.2% saved)

simplify46.0ms (0.1%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (40.0ms)

IterNodesCost
0520541

prune9.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New011
Fresh101
Picked000
Done000
Total112
Error
27.0b
Counts
2 → 1
Compiler

Compiled 54 to 46 computations (14.8% saved)

localize19.0ms (0.1%)

Local error

Found 4 expressions with local error:

5.7b
(*.f64 (*.f64 (sqrt.f64 (/.f64 d h)) (sqrt.f64 (/.f64 d l))) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))))
10.2b
(sqrt.f64 (/.f64 d h))
15.0b
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))
16.0b
(sqrt.f64 (/.f64 d l))

rewrite641.0ms (1.8%)

Algorithm
rewrite-expression-head
Error
14.0b
Rules
77×add-exp-log_binary64_1139
41×prod-exp_binary64_1150
32×add-sqr-sqrt_binary64_1123
29×times-frac_binary64_1107
26×add-cube-cbrt_binary64_1136 sqrt-prod_binary64_1117 *-un-lft-identity_binary64_1101
21×add-cbrt-cube_binary64_1137
16×div-exp_binary64_1152 associate-*r*_binary64_1041
14×sqrt-div_binary64_1118
13×pow1_binary64_1162
10×pow-exp_binary64_1169
cbrt-unprod_binary64_1134 frac-times_binary64_1111
associate-*r/_binary64_1043 associate-*l/_binary64_1044
add-log-exp_binary64_1140 rem-sqrt-square_binary64_1114 pow-prod-down_binary64_1172 flip3--_binary64_1105 flip--_binary64_1076
div-inv_binary64_1098
pow1/2_binary64_1181 sqrt-pow1_binary64_1119 pow-to-exp_binary64_1170 cbrt-undiv_binary64_1135 associate-*l*_binary64_1042 *-commutative_binary64_1032 sub-neg_binary64_1094 distribute-rgt-in_binary64_1051 cancel-sign-sub-inv_binary64_1067 distribute-lft-in_binary64_1050
Counts
4 → 127
Calls

4 calls:

17.0ms
(*.f64 (*.f64 (sqrt.f64 (/.f64 d h)) (sqrt.f64 (/.f64 d l))) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))))
11.0ms
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))
6.0ms
(sqrt.f64 (/.f64 d l))
3.0ms
(sqrt.f64 (/.f64 d h))
Compiler

Compiled 4932 to 2296 computations (53.4% saved)

series1.9s (5.3%)

Error
17.5b
Counts
4 → 50
Calls

4 calls:

1.1s
(*.f64 (*.f64 (sqrt.f64 (/.f64 d h)) (sqrt.f64 (/.f64 d l))) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))))
666.0ms
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))
52.0ms
(sqrt.f64 (/.f64 d l))
43.0ms
(sqrt.f64 (/.f64 d h))
Compiler

Compiled 3752 to 2913 computations (22.4% saved)

simplify103.0ms (0.3%)

Algorithm
egg-herbie
Counts
177 → 177
Iterations

Useful iterations: 0 (62.0ms)

IterNodesCost
049794371
149794371

prune322.0ms (0.9%)

Pruning

21 alts after pruning (21 fresh and 0 done)

PrunedKeptTotal
New15621177
Fresh000
Picked101
Done000
Total15721178
Error
10.8b
Counts
178 → 21
Compiler

Compiled 6159 to 2904 computations (52.8% saved)

localize23.0ms (0.1%)

Local error

Found 4 expressions with local error:

4.1b
(/.f64 (*.f64 M D) (*.f64 d 2))
5.7b
(*.f64 (*.f64 (sqrt.f64 (/.f64 d h)) (*.f64 (fabs.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 l))) (sqrt.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 l))))) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))))
10.2b
(sqrt.f64 (/.f64 d h))
15.0b
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))

rewrite379.0ms (1.1%)

Algorithm
rewrite-expression-head
Error
7.3b
Rules
93×add-exp-log_binary64_1139
48×prod-exp_binary64_1150
37×add-cbrt-cube_binary64_1137
22×add-sqr-sqrt_binary64_1123
20×div-exp_binary64_1152 times-frac_binary64_1107
19×add-cube-cbrt_binary64_1136 *-un-lft-identity_binary64_1101
16×pow1_binary64_1162 cbrt-unprod_binary64_1134 associate-*r*_binary64_1041
13×sqrt-div_binary64_1118 sqrt-prod_binary64_1117
12×associate-*r/_binary64_1043
10×pow-exp_binary64_1169
frac-times_binary64_1111
pow-prod-down_binary64_1172
cbrt-undiv_binary64_1135 associate-*l/_binary64_1044
add-log-exp_binary64_1140 flip3--_binary64_1105 flip--_binary64_1076
div-inv_binary64_1098
pow-to-exp_binary64_1170 associate-*l*_binary64_1042 *-commutative_binary64_1032 rem-sqrt-square_binary64_1114 sub-neg_binary64_1094 distribute-rgt-in_binary64_1051 cancel-sign-sub-inv_binary64_1067 distribute-lft-in_binary64_1050
pow1/2_binary64_1181 sqrt-pow1_binary64_1119 frac-2neg_binary64_1112 clear-num_binary64_1100 associate-/l*_binary64_1046 associate-/r*_binary64_1045
Counts
4 → 126
Calls

4 calls:

23.0ms
(*.f64 (*.f64 (sqrt.f64 (/.f64 d h)) (*.f64 (fabs.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 l))) (sqrt.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 l))))) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))))
18.0ms
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))
8.0ms
(/.f64 (*.f64 M D) (*.f64 d 2))
3.0ms
(sqrt.f64 (/.f64 d h))
Compiler

Compiled 6223 to 2306 computations (62.9% saved)

series3.8s (10.7%)

Error
8.5b
Counts
4 → 55
Calls

4 calls:

2.8s
(*.f64 (*.f64 (sqrt.f64 (/.f64 d h)) (*.f64 (fabs.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 l))) (sqrt.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 l))))) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))))
677.0ms
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))
173.0ms
(/.f64 (*.f64 M D) (*.f64 d 2))
64.0ms
(sqrt.f64 (/.f64 d h))
Compiler

Compiled 6480 to 4729 computations (27% saved)

simplify128.0ms (0.4%)

Algorithm
egg-herbie
Counts
181 → 181
Iterations

Useful iterations: 0 (65.0ms)

IterNodesCost
049536056
149536056

prune359.0ms (1%)

Pruning

25 alts after pruning (24 fresh and 1 done)

PrunedKeptTotal
New1765181
Fresh11920
Picked011
Done000
Total17725202
Error
7.7b
Counts
202 → 25
Compiler

Compiled 8291 to 3267 computations (60.6% saved)

localize32.0ms (0.1%)

Local error

Found 4 expressions with local error:

2.4b
(sqrt.f64 (/.f64 (cbrt.f64 d) h))
4.1b
(/.f64 (*.f64 M D) (*.f64 d 2))
5.7b
(*.f64 (*.f64 (*.f64 (fabs.f64 (cbrt.f64 d)) (sqrt.f64 (/.f64 (cbrt.f64 d) h))) (*.f64 (fabs.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 l))) (sqrt.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 l))))) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))))
15.0b
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))

rewrite392.0ms (1.1%)

Algorithm
rewrite-expression-head
Error
6.0b
Rules
102×add-exp-log_binary64_1139
55×prod-exp_binary64_1150
46×add-cbrt-cube_binary64_1137
30×add-sqr-sqrt_binary64_1123 times-frac_binary64_1107
25×pow1_binary64_1162 add-cube-cbrt_binary64_1136 *-un-lft-identity_binary64_1101
23×cbrt-unprod_binary64_1134
22×sqrt-prod_binary64_1117
20×div-exp_binary64_1152
18×associate-*r/_binary64_1043
16×associate-*r*_binary64_1041
14×pow-prod-down_binary64_1172
13×sqrt-div_binary64_1118
10×pow-exp_binary64_1169 cbrt-prod_binary64_1132
frac-times_binary64_1111
cbrt-undiv_binary64_1135 associate-*l/_binary64_1044
add-log-exp_binary64_1140 flip3--_binary64_1105 flip--_binary64_1076
div-inv_binary64_1098 rem-sqrt-square_binary64_1114
pow-to-exp_binary64_1170 associate-*l*_binary64_1042 *-commutative_binary64_1032 sub-neg_binary64_1094 distribute-rgt-in_binary64_1051 cancel-sign-sub-inv_binary64_1067 distribute-lft-in_binary64_1050
frac-2neg_binary64_1112 clear-num_binary64_1100 associate-/l*_binary64_1046 associate-/r*_binary64_1045 pow1/2_binary64_1181 sqrt-pow1_binary64_1119
Counts
4 → 142
Calls

4 calls:

32.0ms
(*.f64 (*.f64 (*.f64 (fabs.f64 (cbrt.f64 d)) (sqrt.f64 (/.f64 (cbrt.f64 d) h))) (*.f64 (fabs.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 l))) (sqrt.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 l))))) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))))
11.0ms
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))
6.0ms
(/.f64 (*.f64 M D) (*.f64 d 2))
4.0ms
(sqrt.f64 (/.f64 (cbrt.f64 d) h))
Compiler

Compiled 7884 to 2640 computations (66.5% saved)

series4.1s (11.5%)

Error
7.7b
Counts
4 → 55
Calls

4 calls:

3.0s
(*.f64 (*.f64 (*.f64 (fabs.f64 (cbrt.f64 d)) (sqrt.f64 (/.f64 (cbrt.f64 d) h))) (*.f64 (fabs.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 l))) (sqrt.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 l))))) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))))
672.0ms
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))
163.0ms
(/.f64 (*.f64 M D) (*.f64 d 2))
161.0ms
(sqrt.f64 (/.f64 (cbrt.f64 d) h))
Compiler

Compiled 7407 to 5263 computations (28.9% saved)

simplify133.0ms (0.4%)

Algorithm
egg-herbie
Counts
197 → 197
Iterations

Useful iterations: 0 (58.0ms)

IterNodesCost
049577292
149577292

prune422.0ms (1.2%)

Pruning

26 alts after pruning (26 fresh and 0 done)

PrunedKeptTotal
New1916197
Fresh32023
Picked101
Done101
Total19626222
Error
7.0b
Counts
222 → 26
Compiler

Compiled 10197 to 3694 computations (63.8% saved)

localize49.0ms (0.1%)

Local error

Found 4 expressions with local error:

4.1b
(/.f64 (*.f64 M D) (*.f64 2 d))
5.7b
(*.f64 (*.f64 (*.f64 (fabs.f64 (cbrt.f64 d)) (sqrt.f64 (/.f64 (cbrt.f64 d) h))) (*.f64 (fabs.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 l))) (sqrt.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 l))))) (-.f64 1 (*.f64 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (*.f64 (cbrt.f64 h) (cbrt.f64 h))) (/.f64 (cbrt.f64 h) l))))
6.4b
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (*.f64 (cbrt.f64 h) (cbrt.f64 h)))
7.9b
(*.f64 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (*.f64 (cbrt.f64 h) (cbrt.f64 h))) (/.f64 (cbrt.f64 h) l))

rewrite585.0ms (1.6%)

Algorithm
rewrite-expression-head
Error
6.0b
Rules
291×add-exp-log_binary64_1139
189×prod-exp_binary64_1150
70×add-cbrt-cube_binary64_1137
51×cbrt-unprod_binary64_1134
45×div-exp_binary64_1152
36×pow1_binary64_1162
30×pow-exp_binary64_1169
26×associate-*r*_binary64_1041
22×pow-prod-down_binary64_1172
19×times-frac_binary64_1107
18×add-cube-cbrt_binary64_1136 add-sqr-sqrt_binary64_1123 *-un-lft-identity_binary64_1101 associate-*r/_binary64_1043
12×sqrt-div_binary64_1118
cbrt-undiv_binary64_1135 cbrt-prod_binary64_1132 frac-times_binary64_1111
pow-to-exp_binary64_1170 associate-*l/_binary64_1044
add-log-exp_binary64_1140 flip3--_binary64_1105 flip--_binary64_1076
associate-*l*_binary64_1042 *-commutative_binary64_1032
div-inv_binary64_1098 sub-neg_binary64_1094 distribute-rgt-in_binary64_1051 cancel-sign-sub-inv_binary64_1067 distribute-lft-in_binary64_1050
frac-2neg_binary64_1112 clear-num_binary64_1100 associate-/l*_binary64_1046 associate-/r*_binary64_1045
Counts
4 → 174
Calls

4 calls:

28.0ms
(*.f64 (*.f64 (*.f64 (fabs.f64 (cbrt.f64 d)) (sqrt.f64 (/.f64 (cbrt.f64 d) h))) (*.f64 (fabs.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 l))) (sqrt.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 l))))) (-.f64 1 (*.f64 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (*.f64 (cbrt.f64 h) (cbrt.f64 h))) (/.f64 (cbrt.f64 h) l))))
27.0ms
(*.f64 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (*.f64 (cbrt.f64 h) (cbrt.f64 h))) (/.f64 (cbrt.f64 h) l))
17.0ms
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (*.f64 (cbrt.f64 h) (cbrt.f64 h)))
6.0ms
(/.f64 (*.f64 M D) (*.f64 2 d))
Compiler

Compiled 11246 to 3389 computations (69.9% saved)

series5.0s (14%)

Error
7.0b
Counts
4 → 61
Calls

4 calls:

3.0s
(*.f64 (*.f64 (*.f64 (fabs.f64 (cbrt.f64 d)) (sqrt.f64 (/.f64 (cbrt.f64 d) h))) (*.f64 (fabs.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 l))) (sqrt.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 l))))) (-.f64 1 (*.f64 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (*.f64 (cbrt.f64 h) (cbrt.f64 h))) (/.f64 (cbrt.f64 h) l))))
835.0ms
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (*.f64 (cbrt.f64 h) (cbrt.f64 h)))
776.0ms
(*.f64 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (*.f64 (cbrt.f64 h) (cbrt.f64 h))) (/.f64 (cbrt.f64 h) l))
180.0ms
(/.f64 (*.f64 M D) (*.f64 2 d))
Compiler

Compiled 8620 to 5960 computations (30.9% saved)

simplify157.0ms (0.4%)

Algorithm
egg-herbie
Counts
235 → 235
Iterations

Useful iterations: 0 (60.0ms)

IterNodesCost
049868884
149868884

prune434.0ms (1.2%)

Pruning

27 alts after pruning (26 fresh and 1 done)

PrunedKeptTotal
New2341235
Fresh02525
Picked011
Done000
Total23427261
Error
6.6b
Counts
261 → 27
Compiler

Compiled 11527 to 3437 computations (70.2% saved)

regimes3.5s (9.9%)

Accuracy

Total 5.3b remaining (39%)

Threshold costs 0b (0%)

Compiler

Compiled 42555 to 30826 computations (27.6% saved)

bsearch13.0ms (0%)

Compiler

Compiled 35 to 31 computations (11.4% saved)

simplify22.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (2.0ms)

IterNodesCost
0121190
1121190
Remove

(sort M D)

Compiler

Compiled 238 to 136 computations (42.9% saved)

end0.0ms (0%)

sample10.5s (29.5%)

Algorithm
intervals
Results
1.5s8000×body128valid
1.4s8488×body128nan
881.0ms4781×body128invalid
Compiler

Compiled 6222 to 4491 computations (27.8% saved)

Profiling

Loading profile data...