Details

Time bar (total: 49.6s)

analyze3.6s (7.3%)

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
Compiler

Compiled 36 to 32 computations (11.1% saved)

sample273.0ms (0.6%)

Algorithm
intervals
Results
83.0ms256×body128valid
67.0ms267×body128nan
34.0ms121×body128invalid
Compiler

Compiled 71 to 68 computations (4.2% saved)

simplify91.0ms (0.2%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (78.0ms)

IterNodesCost
0520541

prune13.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 54 to 46 computations (14.8% saved)

localize57.0ms (0.1%)

Local error

Found 4 expressions with local error:

7.2b
(*.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.5b
(sqrt.f64 (/.f64 d h))
12.2b
(sqrt.f64 (/.f64 d l))
13.5b
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))

rewrite107.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
77×add-exp-log_binary64_1480
41×prod-exp_binary64_1491
32×add-sqr-sqrt_binary64_1464
29×times-frac_binary64_1448
26×sqrt-prod_binary64_1458 add-cube-cbrt_binary64_1477 *-un-lft-identity_binary64_1442
21×add-cbrt-cube_binary64_1478
16×associate-*r*_binary64_1382 div-exp_binary64_1493
14×sqrt-div_binary64_1459
13×pow1_binary64_1503
10×pow-exp_binary64_1510
cbrt-unprod_binary64_1475 frac-times_binary64_1452
associate-*r/_binary64_1384 associate-*l/_binary64_1385
rem-sqrt-square_binary64_1455 flip3--_binary64_1446 pow-prod-down_binary64_1513 add-log-exp_binary64_1481 flip--_binary64_1417
div-inv_binary64_1439
sqrt-pow1_binary64_1460 cbrt-undiv_binary64_1476 cancel-sign-sub-inv_binary64_1408 sub-neg_binary64_1435 associate-*l*_binary64_1383 *-commutative_binary64_1373 distribute-lft-in_binary64_1391 distribute-rgt-in_binary64_1392 pow1/2_binary64_1522 pow-to-exp_binary64_1511
Counts
4 → 127
Calls

4 calls:

37.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))))
26.0ms
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))
7.0ms
(sqrt.f64 (/.f64 d h))
7.0ms
(sqrt.f64 (/.f64 d l))

series3.0s (6.1%)

Counts
4 → 50
Calls

4 calls:

1.8s
(*.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))))
1.1s
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))
87.0ms
(sqrt.f64 (/.f64 d h))
81.0ms
(sqrt.f64 (/.f64 d l))
Compiler

Compiled 2576 to 2255 computations (12.5% saved)

simplify226.0ms (0.5%)

Algorithm
egg-herbie
Counts
177 → 177
Iterations

Useful iterations: 0 (141.0ms)

IterNodesCost
049794371
149794371

prune799.0ms (1.6%)

Pruning

25 alts after pruning (25 fresh and 0 done)

PrunedKeptTotal
New15225177
Fresh000
Picked101
Done000
Total15325178
Error
11.3b
Counts
178 → 25
Compiler

Compiled 6307 to 3014 computations (52.2% saved)

localize61.0ms (0.1%)

Local error

Found 4 expressions with local error:

6.1b
(/.f64 (*.f64 M D) (*.f64 d 2))
7.2b
(*.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))))
11.5b
(sqrt.f64 (/.f64 d h))
13.5b
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))

rewrite131.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
93×add-exp-log_binary64_1480
48×prod-exp_binary64_1491
37×add-cbrt-cube_binary64_1478
22×add-sqr-sqrt_binary64_1464
20×times-frac_binary64_1448 div-exp_binary64_1493
19×add-cube-cbrt_binary64_1477 *-un-lft-identity_binary64_1442
16×associate-*r*_binary64_1382 cbrt-unprod_binary64_1475 pow1_binary64_1503
13×sqrt-div_binary64_1459 sqrt-prod_binary64_1458
12×associate-*r/_binary64_1384
10×pow-exp_binary64_1510
frac-times_binary64_1452
pow-prod-down_binary64_1513
cbrt-undiv_binary64_1476 associate-*l/_binary64_1385
flip3--_binary64_1446 add-log-exp_binary64_1481 flip--_binary64_1417
div-inv_binary64_1439
cancel-sign-sub-inv_binary64_1408 rem-sqrt-square_binary64_1455 sub-neg_binary64_1435 associate-*l*_binary64_1383 *-commutative_binary64_1373 distribute-lft-in_binary64_1391 distribute-rgt-in_binary64_1392 pow-to-exp_binary64_1511
sqrt-pow1_binary64_1460 associate-/r*_binary64_1386 clear-num_binary64_1441 associate-/l*_binary64_1387 frac-2neg_binary64_1453 pow1/2_binary64_1522
Counts
4 → 126
Calls

4 calls:

48.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))))
26.0ms
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))
13.0ms
(/.f64 (*.f64 M D) (*.f64 d 2))
6.0ms
(sqrt.f64 (/.f64 d h))

series5.9s (11.8%)

Counts
4 → 55
Calls

4 calls:

4.4s
(*.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))))
1.1s
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))
302.0ms
(/.f64 (*.f64 M D) (*.f64 d 2))
100.0ms
(sqrt.f64 (/.f64 d h))
Compiler

Compiled 4327 to 3539 computations (18.2% saved)

simplify287.0ms (0.6%)

Algorithm
egg-herbie
Counts
181 → 181
Iterations

Useful iterations: 0 (174.0ms)

IterNodesCost
049536056
149536056

prune806.0ms (1.6%)

Pruning

30 alts after pruning (30 fresh and 0 done)

PrunedKeptTotal
New16912181
Fresh61824
Picked101
Done000
Total17630206
Error
9.5b
Counts
206 → 30
Compiler

Compiled 8671 to 3497 computations (59.7% saved)

localize72.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.6b
(cbrt.f64 d)
6.1b
(/.f64 (*.f64 M D) (*.f64 d 2))
7.2b
(*.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 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))))
13.5b
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))

rewrite153.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
102×add-exp-log_binary64_1480
55×prod-exp_binary64_1491
46×add-cbrt-cube_binary64_1478
24×pow1_binary64_1503
23×cbrt-unprod_binary64_1475
20×div-exp_binary64_1493
18×associate-*r/_binary64_1384
16×associate-*r*_binary64_1382
14×pow-prod-down_binary64_1513
13×add-sqr-sqrt_binary64_1464 add-cube-cbrt_binary64_1477 *-un-lft-identity_binary64_1442
12×sqrt-div_binary64_1459
10×pow-exp_binary64_1510 times-frac_binary64_1448
frac-times_binary64_1452
cbrt-undiv_binary64_1476 associate-*l/_binary64_1385
flip3--_binary64_1446 add-log-exp_binary64_1481 flip--_binary64_1417
cbrt-prod_binary64_1473
cancel-sign-sub-inv_binary64_1408 div-inv_binary64_1439 sub-neg_binary64_1435 associate-*l*_binary64_1383 *-commutative_binary64_1373 distribute-lft-in_binary64_1391 distribute-rgt-in_binary64_1392 pow-to-exp_binary64_1511
associate-/r*_binary64_1386 clear-num_binary64_1441 associate-/l*_binary64_1387 frac-2neg_binary64_1453 pow1/3_binary64_1524
Counts
4 → 118
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 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))))
27.0ms
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))
14.0ms
(/.f64 (*.f64 M D) (*.f64 d 2))
3.0ms
(cbrt.f64 d)

series6.6s (13.3%)

Counts
4 → 54
Calls

4 calls:

5.0s
(*.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 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))))
1.1s
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))
287.0ms
(/.f64 (*.f64 M D) (*.f64 d 2))
166.0ms
(cbrt.f64 d)
Compiler

Compiled 5075 to 3854 computations (24.1% saved)

simplify305.0ms (0.6%)

Algorithm
egg-herbie
Counts
172 → 172
Iterations

Useful iterations: 0 (169.0ms)

IterNodesCost
051057370

prune835.0ms (1.7%)

Pruning

33 alts after pruning (33 fresh and 0 done)

PrunedKeptTotal
New1675172
Fresh12829
Picked101
Done000
Total16933202
Error
8.9b
Counts
202 → 33
Compiler

Compiled 9963 to 3459 computations (65.3% saved)

localize75.0ms (0.2%)

Local error

Found 4 expressions with local error:

4.7b
(/.f64 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) h) l)
6.1b
(/.f64 (*.f64 M D) (*.f64 d 2))
7.2b
(*.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 d 2)) 2)) h) l)))
7.3b
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) h)

rewrite189.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
104×add-exp-log_binary64_1480
55×prod-exp_binary64_1491
48×add-cbrt-cube_binary64_1478
24×pow1_binary64_1503
23×cbrt-unprod_binary64_1475
21×div-exp_binary64_1493
17×associate-*r/_binary64_1384
15×add-sqr-sqrt_binary64_1464 *-un-lft-identity_binary64_1442
14×cancel-sign-sub-inv_binary64_1408 pow-prod-down_binary64_1513
12×sqrt-div_binary64_1459 add-cube-cbrt_binary64_1477
10×pow-exp_binary64_1510 times-frac_binary64_1448
associate-*r*_binary64_1382 frac-times_binary64_1452
distribute-lft-in_binary64_1391 distribute-rgt-in_binary64_1392
cbrt-undiv_binary64_1476
associate-*l/_binary64_1385
associate-/r*_binary64_1386 div-inv_binary64_1439 flip3--_binary64_1446 add-log-exp_binary64_1481 flip--_binary64_1417
sub-neg_binary64_1435 clear-num_binary64_1441 associate-/l*_binary64_1387 associate-*l*_binary64_1383 *-commutative_binary64_1373 frac-2neg_binary64_1453 difference-of-squares_binary64_1411 pow-to-exp_binary64_1511
distribute-lft-out--_binary64_1394
Counts
4 → 130
Calls

4 calls:

75.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 d 2)) 2)) h) l)))
23.0ms
(/.f64 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) h) l)
20.0ms
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) h)
14.0ms
(/.f64 (*.f64 M D) (*.f64 d 2))

series7.6s (15.4%)

Counts
4 → 63
Calls

4 calls:

5.5s
(*.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 d 2)) 2)) h) l)))
1.1s
(/.f64 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) h) l)
792.0ms
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) h)
289.0ms
(/.f64 (*.f64 M D) (*.f64 d 2))
Compiler

Compiled 5917 to 4414 computations (25.4% saved)

simplify261.0ms (0.5%)

Algorithm
egg-herbie
Counts
193 → 193
Iterations

Useful iterations: 0 (112.0ms)

IterNodesCost
049389311
149389311

prune666.0ms (1.3%)

Pruning

35 alts after pruning (35 fresh and 0 done)

PrunedKeptTotal
New1894193
Fresh13132
Picked101
Done000
Total19135226
Error
8.7b
Counts
226 → 35
Compiler

Compiled 10058 to 2864 computations (71.5% saved)

regimes3.6s (7.3%)

Accuracy

Total 5.3b remaining (37.5%)

Threshold costs 0b (0%)

Compiler

Compiled 24621 to 18149 computations (26.3% saved)

bsearch548.0ms (1.1%)

Steps
ItersRangePoint
4
1.8750340580379816e-177
2.9566362306286747e-177
2.0341561774685226e-177
8
-6.871369978331623e-52
-1.191052178232461e-55
-2.7129522053962947e-55
Compiler

Compiled 1 to 5 computations (-400% saved)

simplify41.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (4.0ms)

IterNodesCost
0147160
1147160
Compiler

Compiled 198 to 102 computations (48.5% saved)

end0.0ms (0%)

sample13.2s (26.7%)

Algorithm
intervals
Results
2.1s8000×body128valid
1.9s8241×body128nan
1.3s4751×body128invalid
Compiler

Compiled 3640 to 2663 computations (26.8% saved)

Profiling

Loading profile data...