Details

Time bar (total: 29.6s)

analyze3.9s (13.2%)

Algorithm
search
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05334427
044
144
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%99.8%0.2%7
0%98.2%1.8%8
0%94.3%5.7%9
0.4%93%6.6%10
7.4%83.3%9.3%11
12.4%75.2%12.4%12
14.4%68.9%16.7%13
16.8%65.4%17.8%14
Symmetry

(sort A C)

Compiler

Compiled 41 to 33 computations (19.5% saved)

sample191.0ms (0.6%)

Algorithm
intervals
Results
27.0ms173×body128valid
26.0ms25×body2048nan
21.0ms29×body1024valid
20.0ms23×body2048valid
17.0ms25×body1024nan
16.0ms100×body128nan
9.0ms18×body512valid
9.0ms18×body512nan
5.0ms13×body256valid
2.0msbody256nan
Compiler

Compiled 81 to 69 computations (14.8% saved)

simplify56.0ms (0.2%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (49.0ms)

IterNodesCost
0561361

prune13.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New101
Fresh011
Picked000
Done000
Total112
Error
53.1b
Counts
2 → 1
Compiler

Compiled 80 to 59 computations (26.3% saved)

localize39.0ms (0.1%)

Local error

Found 4 expressions with local error:

6.3b
(*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)
16.9b
(sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (+.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))
20.0b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (+.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
34.3b
(sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))

rewrite983.0ms (3.3%)

Algorithm
rewrite-expression-head
Error
50.7b
Rules
66×sqrt-div_binary64_3505
40×associate-*r/_binary64_3430
39×*-un-lft-identity_binary64_3488
36×times-frac_binary64_3494
35×add-sqr-sqrt_binary64_3510
34×associate-*l/_binary64_3431
32×add-cube-cbrt_binary64_3523
31×flip3-+_binary64_3491 flip-+_binary64_3462
24×frac-add_binary64_3496 frac-times_binary64_3498
20×distribute-neg-frac_binary64_3452 associate-/l/_binary64_3435
17×pow1_binary64_3549
16×distribute-rgt-neg-in_binary64_3446 distribute-lft-neg-in_binary64_3445 flip3--_binary64_3492 flip--_binary64_3463
15×sqrt-prod_binary64_3504
12×associate-/l*_binary64_3433
add-exp-log_binary64_3526 add-cbrt-cube_binary64_3524
pow-prod-down_binary64_3559
sqrt-pow1_binary64_3506
add-log-exp_binary64_3527 unpow-prod-down_binary64_3567 neg-mul-1_binary64_3484
distribute-lft-out_binary64_3439 associate-/r*_binary64_3432 associate-*l*_binary64_3429 associate-*r*_binary64_3428
pow1/2_binary64_3568 associate-/r/_binary64_3434
distribute-lft-out--_binary64_3440 rem-sqrt-square_binary64_3501 div-exp_binary64_3539 cbrt-undiv_binary64_3522 frac-2neg_binary64_3499 neg-sub0_binary64_3483 div-sub_binary64_3493 clear-num_binary64_3487 div-inv_binary64_3485 distribute-frac-neg_binary64_3451 prod-exp_binary64_3537 cbrt-unprod_binary64_3521 unswap-sqr_binary64_3456 *-commutative_binary64_3419
Counts
4 → 158
Calls

4 calls:

35.0ms
(sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (+.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))
18.0ms
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (+.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
13.0ms
(sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))
12.0ms
(*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)
Compiler

Compiled 11876 to 7641 computations (35.7% saved)

series4.8s (16.1%)

Error
29.9b
Counts
4 → 73
Calls

4 calls:

2.3s
(sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (+.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))
1.5s
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (+.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
376.0ms
(sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))
371.0ms
(*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)
Compiler

Compiled 14385 to 10660 computations (25.9% saved)

simplify180.0ms (0.6%)

Algorithm
egg-herbie
Counts
231 → 231
Iterations

Useful iterations: 0 (48.0ms)

IterNodesCost
0496913924
1496913924

prune875.0ms (3%)

Pruning

20 alts after pruning (20 fresh and 0 done)

PrunedKeptTotal
New21120231
Fresh000
Picked101
Done000
Total21220232
Error
28.7b
Counts
232 → 20
Compiler

Compiled 15048 to 8035 computations (46.6% saved)

localize8.0ms (0%)

Local error

Found 3 expressions with local error:

0.0b
(*.f64 -1/2 (/.f64 F A))
0.4b
(*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 -1/2 (/.f64 F A))))
12.5b
(sqrt.f64 (*.f64 -1/2 (/.f64 F A)))

rewrite129.0ms (0.4%)

Algorithm
rewrite-expression-head
Error
28.6b
Rules
23×add-sqr-sqrt_binary64_3510
17×associate-*r*_binary64_3428
15×pow1_binary64_3549
14×add-cube-cbrt_binary64_3523 *-un-lft-identity_binary64_3488
10×add-exp-log_binary64_3526 add-cbrt-cube_binary64_3524 times-frac_binary64_3494
associate-*l*_binary64_3429
pow-prod-down_binary64_3559
sqrt-pow1_binary64_3506 sqrt-prod_binary64_3504
associate-*r/_binary64_3430 unswap-sqr_binary64_3456
pow1/2_binary64_3568 add-log-exp_binary64_3527 prod-exp_binary64_3537 cbrt-unprod_binary64_3521
sqrt-div_binary64_3505 *-commutative_binary64_3419
sqrt-unprod_binary64_3508 div-exp_binary64_3539 cbrt-undiv_binary64_3522 div-inv_binary64_3485
Counts
3 → 72
Calls

3 calls:

9.0ms
(*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 -1/2 (/.f64 F A))))
7.0ms
(*.f64 -1/2 (/.f64 F A))
4.0ms
(sqrt.f64 (*.f64 -1/2 (/.f64 F A)))
Compiler

Compiled 1174 to 824 computations (29.8% saved)

series233.0ms (0.8%)

Error
28.7b
Counts
3 → 18
Calls

3 calls:

83.0ms
(*.f64 -1/2 (/.f64 F A))
73.0ms
(*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 -1/2 (/.f64 F A))))
66.0ms
(sqrt.f64 (*.f64 -1/2 (/.f64 F A)))
Compiler

Compiled 674 to 676 computations (-0.3% saved)

simplify86.0ms (0.3%)

Algorithm
egg-herbie
Counts
90 → 90
Iterations

Useful iterations: 0 (66.0ms)

IterNodesCost
049481045
149481045

prune169.0ms (0.6%)

Pruning

26 alts after pruning (26 fresh and 0 done)

PrunedKeptTotal
New83790
Fresh01919
Picked101
Done000
Total8426110
Error
28.6b
Counts
110 → 26
Compiler

Compiled 2092 to 1493 computations (28.6% saved)

localize5.0ms (0%)

Local error

Found 1 expressions with local error:

12.5b
(sqrt.f64 (neg.f64 (/.f64 F A)))

rewrite53.0ms (0.2%)

Algorithm
rewrite-expression-head
Error
26.5b
Rules
30×sqrt-prod_binary64_3504
18×times-frac_binary64_3494
17×add-sqr-sqrt_binary64_3510
16×add-cube-cbrt_binary64_3523 *-un-lft-identity_binary64_3488
13×distribute-rgt-neg-in_binary64_3446 distribute-lft-neg-in_binary64_3445
pow1_binary64_3549 div-inv_binary64_3485
pow1/2_binary64_3568 add-log-exp_binary64_3527 add-exp-log_binary64_3526 add-cbrt-cube_binary64_3524 sqrt-pow1_binary64_3506 distribute-neg-frac_binary64_3452 sqrt-div_binary64_3505 neg-mul-1_binary64_3484 rem-sqrt-square_binary64_3501
Counts
1 → 41
Calls

1 calls:

5.0ms
(sqrt.f64 (neg.f64 (/.f64 F A)))
Compiler

Compiled 547 to 221 computations (59.6% saved)

series42.0ms (0.1%)

Error
28.6b
Counts
1 → 6
Calls

1 calls:

39.0ms
(sqrt.f64 (neg.f64 (/.f64 F A)))
Compiler

Compiled 160 to 154 computations (3.8% saved)

simplify172.0ms (0.6%)

Algorithm
egg-herbie
Counts
47 → 47
Iterations

Useful iterations: 0 (158.0ms)

IterNodesCost
04604671
14604671

prune115.0ms (0.4%)

Pruning

28 alts after pruning (27 fresh and 1 done)

PrunedKeptTotal
New41647
Fresh42125
Picked011
Done000
Total452873
Error
26.5b
Counts
73 → 28
Compiler

Compiled 1349 to 818 computations (39.4% saved)

localize13.0ms (0%)

Local error

Found 2 expressions with local error:

0.1b
(sqrt.f64 (/.f64 -1 A))
0.3b
(*.f64 (sqrt.f64 F) (sqrt.f64 (/.f64 -1 A)))

rewrite152.0ms (0.5%)

Algorithm
rewrite-expression-head
Error
26.5b
Rules
36×add-sqr-sqrt_binary64_3510 sqrt-prod_binary64_3504
21×times-frac_binary64_3494
19×add-cube-cbrt_binary64_3523 *-un-lft-identity_binary64_3488
16×associate-*r*_binary64_3428
pow1_binary64_3549
unswap-sqr_binary64_3456 associate-*l*_binary64_3429
add-exp-log_binary64_3526 add-cbrt-cube_binary64_3524
pow1/2_binary64_3568 pow-prod-down_binary64_3559 sqrt-pow1_binary64_3506
add-log-exp_binary64_3527 sqrt-div_binary64_3505 div-inv_binary64_3485 rem-sqrt-square_binary64_3501
prod-exp_binary64_3537 cbrt-unprod_binary64_3521 sqrt-unprod_binary64_3508 associate-*r/_binary64_3430 *-commutative_binary64_3419
Counts
2 → 68
Calls

2 calls:

26.0ms
(*.f64 (sqrt.f64 F) (sqrt.f64 (/.f64 -1 A)))
5.0ms
(sqrt.f64 (/.f64 -1 A))
Compiler

Compiled 1023 to 688 computations (32.7% saved)

series85.0ms (0.3%)

Error
26.5b
Counts
2 → 9
Calls

2 calls:

66.0ms
(*.f64 (sqrt.f64 F) (sqrt.f64 (/.f64 -1 A)))
13.0ms
(sqrt.f64 (/.f64 -1 A))
Compiler

Compiled 277 to 270 computations (2.5% saved)

simplify110.0ms (0.4%)

Algorithm
egg-herbie
Counts
77 → 77
Iterations

Useful iterations: 0 (83.0ms)

IterNodesCost
04831989
14831989

prune80.0ms (0.3%)

Pruning

29 alts after pruning (28 fresh and 1 done)

PrunedKeptTotal
New69877
Fresh62026
Picked011
Done101
Total7629105
Error
26.5b
Counts
105 → 29
Compiler

Compiled 993 to 644 computations (35.1% saved)

regimes5.0s (17%)

Accuracy

Total 4.7b remaining (15.1%)

Threshold costs 0b (0%)

Compiler

Compiled 35876 to 28248 computations (21.3% saved)

bsearch13.0ms (0%)

Compiler

Compiled 40 to 32 computations (20% saved)

simplify40.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (4.0ms)

IterNodesCost
0310431
1310431
Compiler

Compiled 556 to 384 computations (30.9% saved)

end0.0ms (0%)

sample12.0s (40.7%)

Algorithm
intervals
Results
1.0s5518×body128valid
663.0ms649×body2048valid
652.0ms874×body1024valid
556.0ms759×body1024nan
509.0ms2851×body128nan
508.0ms526×body2048nan
330.0ms609×body512valid
294.0ms551×body512nan
142.0ms349×body256valid
115.0ms339×body256nan
2.0msbody4096valid
Compiler

Compiled 6228 to 4878 computations (21.7% saved)

Profiling

Loading profile data...