Details

Time bar (total: 5.8min)

analyze2.2s (0.7%)

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
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
Compiler

Compiled 36 to 32 computations (11.1% saved)

sample127.0ms (0%)

Algorithm
intervals
Results
38.0ms278×body128nan
36.0ms256×body128valid
23.0ms165×body128invalid
Compiler

Compiled 71 to 68 computations (4.2% saved)

simplify161.0ms (0%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (37.0ms)

IterNodesCost
0520541

prune13.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022

Merged error: 26.5b

Counts
2 → 2
Compiler

Compiled 89 to 77 computations (13.5% saved)

localize57.0ms (0%)

Local error

Found 4 expressions with local error:

8.1b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))))
11.1b
(pow.f64 (/.f64 d l) (/.f64 1 2))
12.5b
(pow.f64 (/.f64 d h) (/.f64 1 2))
13.9b
(*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))

rewrite131.0ms (0%)

Algorithm
rewrite-expression-head
Rules
331×add-exp-log_binary64_1139
179×prod-exp_binary64_1150
99×div-exp_binary64_1152
60×pow-exp_binary64_1169
45×times-frac_binary64_1107
40×add-sqr-sqrt_binary64_1123 *-un-lft-identity_binary64_1101 add-cube-cbrt_binary64_1136
30×add-cbrt-cube_binary64_1137
26×unpow-prod-down_binary64_1180 pow-unpow_binary64_1178
18×pow-to-exp_binary64_1170
16×associate-*r*_binary64_1041
14×1-exp_binary64_1145 rec-exp_binary64_1151
13×cbrt-unprod_binary64_1134
10×pow1_binary64_1162
div-inv_binary64_1098 cbrt-undiv_binary64_1135
add-log-exp_binary64_1140
associate-*r/_binary64_1043 associate-*l/_binary64_1044
*-commutative_binary64_1032 pow-pow_binary64_1173 sub-neg_binary64_1094 distribute-lft-in_binary64_1050 pow-prod-down_binary64_1172 associate-*l*_binary64_1042 cancel-sign-sub-inv_binary64_1067 sqr-pow_binary64_1073 distribute-rgt-in_binary64_1051
frac-times_binary64_1111 flip--_binary64_1076 flip3--_binary64_1105
Counts
4 → 204
Calls

4 calls:

37.0ms
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))))
29.0ms
(*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))
13.0ms
(pow.f64 (/.f64 d h) (/.f64 1 2))
12.0ms
(pow.f64 (/.f64 d l) (/.f64 1 2))

series735.0ms (0.2%)

Counts
4 → 12
Calls

4 calls:

459.0ms
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))))
114.0ms
(*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))
81.0ms
(pow.f64 (/.f64 d l) (/.f64 1 2))
80.0ms
(pow.f64 (/.f64 d h) (/.f64 1 2))

simplify180.0ms (0.1%)

Algorithm
egg-herbie
Counts
216 → 216
Iterations

Useful iterations: 0 (91.0ms)

IterNodesCost
049815019
149815019

prune1.4s (0.4%)

Pruning

71 alts after pruning (70 fresh and 1 done)

PrunedKeptTotal
New14769216
Fresh011
Picked011
Done000
Total14771218

Merged error: 15.5b

Counts
218 → 71
Compiler

Compiled 10814 to 7023 computations (35.1% saved)

localize29.0ms (0%)

Local error

Found 4 expressions with local error:

4.8b
(/.f64 (*.f64 M D) (*.f64 2 d))
8.1b
(*.f64 (*.f64 (*.f64 (fabs.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 h))) (sqrt.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 h)))) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))))
11.1b
(pow.f64 (/.f64 d l) (/.f64 1 2))
13.9b
(*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))

rewrite89.0ms (0%)

Algorithm
rewrite-expression-head
Rules
320×add-exp-log_binary64_1139
171×prod-exp_binary64_1150
96×div-exp_binary64_1152
46×pow-exp_binary64_1169 add-cbrt-cube_binary64_1137
28×times-frac_binary64_1107
26×add-sqr-sqrt_binary64_1123 *-un-lft-identity_binary64_1101 add-cube-cbrt_binary64_1136
20×cbrt-unprod_binary64_1134
16×associate-*r*_binary64_1041
14×1-exp_binary64_1145 rec-exp_binary64_1151
13×unpow-prod-down_binary64_1180 pow-unpow_binary64_1178
11×pow-to-exp_binary64_1170
pow1_binary64_1162 cbrt-undiv_binary64_1135
associate-*l/_binary64_1044
associate-*r/_binary64_1043
add-log-exp_binary64_1140 div-inv_binary64_1098
frac-times_binary64_1111 sqrt-div_binary64_1118
*-commutative_binary64_1032 sub-neg_binary64_1094 distribute-lft-in_binary64_1050 flip--_binary64_1076 flip3--_binary64_1105 pow-prod-down_binary64_1172 associate-*l*_binary64_1042 cancel-sign-sub-inv_binary64_1067 distribute-rgt-in_binary64_1051
pow-pow_binary64_1173 frac-2neg_binary64_1112 clear-num_binary64_1100 associate-/l*_binary64_1046 sqr-pow_binary64_1073 associate-/r*_binary64_1045
Counts
4 → 183
Calls

4 calls:

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

series1.8s (0.5%)

Counts
4 → 12
Calls

4 calls:

1.5s
(*.f64 (*.f64 (*.f64 (fabs.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 h))) (sqrt.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 h)))) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))))
186.0ms
(*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))
83.0ms
(pow.f64 (/.f64 d l) (/.f64 1 2))
39.0ms
(/.f64 (*.f64 M D) (*.f64 2 d))

simplify197.0ms (0.1%)

Algorithm
egg-herbie
Counts
195 → 195
Iterations

Useful iterations: 0 (123.0ms)

IterNodesCost
050105605

prune2.0s (0.6%)

Pruning

134 alts after pruning (133 fresh and 1 done)

PrunedKeptTotal
New12966195
Fresh26769
Picked101
Done011
Total132134266

Merged error: 12.7b

Counts
266 → 134
Compiler

Compiled 14797 to 8333 computations (43.7% saved)

localize60.0ms (0%)

Local error

Found 4 expressions with local error:

4.8b
(/.f64 (*.f64 M D) (*.f64 2 d))
7.1b
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 (*.f64 (cbrt.f64 h) (cbrt.f64 h)) (*.f64 (cbrt.f64 l) (cbrt.f64 l))))
8.1b
(*.f64 (*.f64 (*.f64 (fabs.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 h))) (sqrt.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 h)))) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (*.f64 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 (*.f64 (cbrt.f64 h) (cbrt.f64 h)) (*.f64 (cbrt.f64 l) (cbrt.f64 l)))) (/.f64 (cbrt.f64 h) (cbrt.f64 l)))))
11.1b
(pow.f64 (/.f64 d l) (/.f64 1 2))

rewrite124.0ms (0%)

Algorithm
rewrite-expression-head
Rules
263×add-exp-log_binary64_1139
152×prod-exp_binary64_1150
59×div-exp_binary64_1152
50×add-cbrt-cube_binary64_1137
33×cbrt-unprod_binary64_1134
31×pow-exp_binary64_1169
20×add-sqr-sqrt_binary64_1123 *-un-lft-identity_binary64_1101 add-cube-cbrt_binary64_1136 times-frac_binary64_1107
13×unpow-prod-down_binary64_1180 pow-unpow_binary64_1178
12×cbrt-undiv_binary64_1135
pow1_binary64_1162
associate-*r*_binary64_1041 pow-to-exp_binary64_1170
associate-*r/_binary64_1043
add-log-exp_binary64_1140 div-inv_binary64_1098 associate-*l/_binary64_1044
sqrt-div_binary64_1118
*-commutative_binary64_1032 frac-times_binary64_1111 sub-neg_binary64_1094 distribute-lft-in_binary64_1050 flip--_binary64_1076 flip3--_binary64_1105 pow-prod-down_binary64_1172 associate-*l*_binary64_1042 cancel-sign-sub-inv_binary64_1067 distribute-rgt-in_binary64_1051
pow-pow_binary64_1173 frac-2neg_binary64_1112 clear-num_binary64_1100 associate-/l*_binary64_1046 sqr-pow_binary64_1073 associate-/r*_binary64_1045
Counts
4 → 159
Calls

4 calls:

36.0ms
(*.f64 (*.f64 (*.f64 (fabs.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 h))) (sqrt.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 h)))) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (*.f64 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 (*.f64 (cbrt.f64 h) (cbrt.f64 h)) (*.f64 (cbrt.f64 l) (cbrt.f64 l)))) (/.f64 (cbrt.f64 h) (cbrt.f64 l)))))
21.0ms
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 (*.f64 (cbrt.f64 h) (cbrt.f64 h)) (*.f64 (cbrt.f64 l) (cbrt.f64 l))))
11.0ms
(/.f64 (*.f64 M D) (*.f64 2 d))
11.0ms
(pow.f64 (/.f64 d l) (/.f64 1 2))

series2.1s (0.6%)

Counts
4 → 12
Calls

4 calls:

1.6s
(*.f64 (*.f64 (*.f64 (fabs.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 h))) (sqrt.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 h)))) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (*.f64 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 (*.f64 (cbrt.f64 h) (cbrt.f64 h)) (*.f64 (cbrt.f64 l) (cbrt.f64 l)))) (/.f64 (cbrt.f64 h) (cbrt.f64 l)))))
347.0ms
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 (*.f64 (cbrt.f64 h) (cbrt.f64 h)) (*.f64 (cbrt.f64 l) (cbrt.f64 l))))
76.0ms
(pow.f64 (/.f64 d l) (/.f64 1 2))
25.0ms
(/.f64 (*.f64 M D) (*.f64 2 d))

simplify150.0ms (0%)

Algorithm
egg-herbie
Counts
171 → 171
Iterations

Useful iterations: 0 (71.0ms)

IterNodesCost
050475505

prune3.4s (1%)

Pruning

186 alts after pruning (185 fresh and 1 done)

PrunedKeptTotal
New11259171
Fresh6126132
Picked101
Done011
Total119186305

Merged error: 10.3b

Counts
305 → 186
Compiler

Compiled 18635 to 10032 computations (46.2% saved)

localize44.0ms (0%)

Local error

Found 4 expressions with local error:

2.2b
(*.f64 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 (*.f64 (cbrt.f64 h) (cbrt.f64 h)) (*.f64 (cbrt.f64 l) (cbrt.f64 l)))) (/.f64 (cbrt.f64 h) (cbrt.f64 l)))
4.8b
(/.f64 (*.f64 M D) (*.f64 2 d))
7.1b
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 (*.f64 (cbrt.f64 h) (cbrt.f64 h)) (*.f64 (cbrt.f64 l) (cbrt.f64 l))))
8.1b
(*.f64 (*.f64 (*.f64 (fabs.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 h))) (sqrt.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 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 (*.f64 (cbrt.f64 h) (cbrt.f64 h)) (*.f64 (cbrt.f64 l) (cbrt.f64 l)))) (/.f64 (cbrt.f64 h) (cbrt.f64 l)))))

rewrite259.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
801×add-exp-log_binary64_1139
480×prod-exp_binary64_1150
201×div-exp_binary64_1152
122×add-cbrt-cube_binary64_1137
108×cbrt-unprod_binary64_1134
75×pow-exp_binary64_1169
48×associate-*r*_binary64_1041
39×cbrt-undiv_binary64_1135
38×times-frac_binary64_1107
36×cbrt-prod_binary64_1132
31×add-sqr-sqrt_binary64_1123 *-un-lft-identity_binary64_1101 add-cube-cbrt_binary64_1136
29×pow1_binary64_1162
21×associate-*r/_binary64_1043
17×pow-prod-down_binary64_1172
15×pow-to-exp_binary64_1170
12×sqrt-div_binary64_1118
10×frac-times_binary64_1111
associate-*l/_binary64_1044
add-log-exp_binary64_1140 flip--_binary64_1076 flip3--_binary64_1105
*-commutative_binary64_1032 div-inv_binary64_1098 associate-*l*_binary64_1042
sub-neg_binary64_1094 distribute-lft-in_binary64_1050 cancel-sign-sub-inv_binary64_1067 distribute-rgt-in_binary64_1051
frac-2neg_binary64_1112 clear-num_binary64_1100 associate-/l*_binary64_1046 associate-/r*_binary64_1045
Counts
4 → 287
Calls

4 calls:

65.0ms
(*.f64 (*.f64 (*.f64 (fabs.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 h))) (sqrt.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 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 (*.f64 (cbrt.f64 h) (cbrt.f64 h)) (*.f64 (cbrt.f64 l) (cbrt.f64 l)))) (/.f64 (cbrt.f64 h) (cbrt.f64 l)))))
41.0ms
(*.f64 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 (*.f64 (cbrt.f64 h) (cbrt.f64 h)) (*.f64 (cbrt.f64 l) (cbrt.f64 l)))) (/.f64 (cbrt.f64 h) (cbrt.f64 l)))
22.0ms
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 (*.f64 (cbrt.f64 h) (cbrt.f64 h)) (*.f64 (cbrt.f64 l) (cbrt.f64 l))))
8.0ms
(/.f64 (*.f64 M D) (*.f64 2 d))

series2.2s (0.6%)

Counts
4 → 12
Calls

4 calls:

1.8s
(*.f64 (*.f64 (*.f64 (fabs.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 h))) (sqrt.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 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 (*.f64 (cbrt.f64 h) (cbrt.f64 h)) (*.f64 (cbrt.f64 l) (cbrt.f64 l)))) (/.f64 (cbrt.f64 h) (cbrt.f64 l)))))
260.0ms
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 (*.f64 (cbrt.f64 h) (cbrt.f64 h)) (*.f64 (cbrt.f64 l) (cbrt.f64 l))))
102.0ms
(*.f64 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 (*.f64 (cbrt.f64 h) (cbrt.f64 h)) (*.f64 (cbrt.f64 l) (cbrt.f64 l)))) (/.f64 (cbrt.f64 h) (cbrt.f64 l)))
24.0ms
(/.f64 (*.f64 M D) (*.f64 2 d))

simplify181.0ms (0.1%)

Algorithm
egg-herbie
Counts
299 → 299
Iterations

Useful iterations: 0 (63.0ms)

IterNodesCost
0507011341

prune5.6s (1.6%)

Pruning

267 alts after pruning (266 fresh and 1 done)

PrunedKeptTotal
New21386299
Fresh4180184
Picked101
Done011
Total218267485

Merged error: 9.0b

Counts
485 → 267
Compiler

Compiled 17029 to 4560 computations (73.2% saved)

regimes15.6s (4.5%)

Compiler

Compiled 152159 to 103994 computations (31.7% saved)

bsearch4.7min (82.1%)

simplify118.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (2.0ms)

IterNodesCost
011197
111197

end0.0ms (0%)

sample23.0s (6.7%)

Algorithm
intervals
Results
1.1s8000×body128valid
1.1s8429×body128nan
706.0ms4875×body128invalid
Compiler

Compiled 26371 to 17064 computations (35.3% saved)

Pareto

0.05460622432846967

Profiling

Loading profile data...