Time bar (total: 4.7s)
| 1× | search |
| True | Other | False | Iter |
|---|---|---|---|
| 0% | 100% | 0% | 0 |
| 0% | 100% | 0% | 1 |
| 0% | 100% | 0% | 2 |
| 50% | 50% | 0% | 3 |
| 75% | 25% | 0% | 4 |
| 87.5% | 12.5% | 0% | 5 |
| 93.7% | 6.2% | 0% | 6 |
| 96.8% | 3.1% | 0% | 7 |
| 98.4% | 1.6% | 0% | 8 |
| 99.2% | 0.8% | 0% | 9 |
| 99.6% | 0.4% | 0% | 10 |
| 99.8% | 0.2% | 0% | 11 |
| 99.9% | 0.1% | 0% | 12 |
| 99.9% | 0% | 0% | 13 |
| 99.9% | 0% | 0.1% | 14 |
Compiled 8 to 6 computations (25% saved)
| 666.0ms | 8256× | body | 128 | valid |
| 0.0ms | 1× | body | 128 | invalid |
Compiled 23 to 17 computations (26.1% saved)
| 1× | egg-herbie |
| 2× | *-commutative_binary64 |
| 1× | associate-*r*_binary64 |
| 1× | associate-*l*_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 6 | 9 |
| 1 | 10 | 9 |
| 2 | 11 | 9 |
| 3 | 11 | 9 |
2 alts after pruning (2 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 1 | 1 | 2 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 1 | 2 | 3 |
| Status | Error | Program |
| ▶ | 31.4b | (sqrt.f64 (*.f64 (*.f64 2 x) x)) |
Compiled 27 to 19 computations (29.6% saved)
Found 1 expressions with local error:
| New | Error | Program |
| ✓ | 30.1b | (sqrt.f64 (*.f64 (*.f64 2 x) x)) |
1 calls:
| 3.0ms | (sqrt.f64 (*.f64 (*.f64 2 x) x)) |
| 2× | batch-egg-rewrite |
| 488× | log1p-expm1-u_binary64 |
| 488× | expm1-log1p-u_binary64 |
| 483× | unpow-prod-down_binary64 |
| 289× | log-prod_binary64 |
| 142× | pow2_binary64 |
1 calls:
| 37.0ms | (sqrt.f64 (*.f64 (*.f64 2 x) x)) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 6 | 9 |
| 1 | 121 | 6 |
| 2 | 1317 | 6 |
| 3 | 4961 | 6 |
| 0 | 0 | 0 |
| 1 | 0 | 0 |
| 1× | egg-herbie |
| 38× | fma-def_binary64 |
| 9× | sub-neg_binary64 |
| 6× | +-commutative_binary64 |
| 4× | *-commutative_binary64 |
| 4× | distribute-lft-in_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 80 |
| 1 | 12 | 80 |
| 2 | 24 | 80 |
| 3 | 25 | 80 |
| 4 | 29 | 80 |
| 5 | 47 | 80 |
| 6 | 58 | 80 |
| 7 | 63 | 80 |
| 8 | 75 | 80 |
| 9 | 72 | 80 |
| 10 | 58 | 80 |
9 alts after pruning (8 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 49 | 8 | 57 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 49 | 9 | 58 |
| Status | Error | Program |
| 33.4b | (*.f64 (sqrt.f64 x) (sqrt.f64 (+.f64 x x))) | |
| ✓ | 31.4b | (sqrt.f64 (*.f64 (*.f64 2 x) x)) |
| 15.3b | (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (+.f64 x x)) 2)) (pow.f64 (*.f64 (cbrt.f64 (+.f64 x x)) x) 1/2)) | |
| ▶ | 15.3b | (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 x) 2)) (pow.f64 (*.f64 (cbrt.f64 x) (+.f64 x x)) 1/2)) |
| 40.1b | (*.f64 (cbrt.f64 (*.f64 x (sqrt.f64 2))) (pow.f64 (*.f64 (cbrt.f64 (*.f64 x (sqrt.f64 2))) (*.f64 x (sqrt.f64 2))) 1/2)) | |
| 30.3b | (neg.f64 (*.f64 (sqrt.f64 2) x)) | |
| 32.9b | (*.f64 (sqrt.f64 2) x) | |
| 33.6b | (pow.f64 (sqrt.f64 (*.f64 x (sqrt.f64 2))) 2) | |
| 33.3b | (pow.f64 (cbrt.f64 (*.f64 x (sqrt.f64 2))) 3) |
Compiled 822 to 555 computations (32.5% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 0.3b | (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 x) 2)) (pow.f64 (*.f64 (cbrt.f64 x) (+.f64 x x)) 1/2)) |
| ✓ | 0.5b | (pow.f64 (cbrt.f64 x) 2) |
| ✓ | 0.5b | (cbrt.f64 x) |
| ✓ | 14.4b | (pow.f64 (*.f64 (cbrt.f64 x) (+.f64 x x)) 1/2) |
4 calls:
| 719.0ms | (pow.f64 (*.f64 (cbrt.f64 x) (+.f64 x x)) 1/2) |
| 38.0ms | (pow.f64 (cbrt.f64 x) 2) |
| 30.0ms | (cbrt.f64 x) |
| 17.0ms | (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 x) 2)) (pow.f64 (*.f64 (cbrt.f64 x) (+.f64 x x)) 1/2)) |
| 2× | batch-egg-rewrite |
| 824× | log1p-expm1-u_binary64 |
| 824× | expm1-log1p-u_binary64 |
| 499× | prod-diff_binary64 |
| 99× | add-sqr-sqrt_binary64 |
| 93× | add-cube-cbrt_binary64 |
4 calls:
| 79.0ms | (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 x) 2)) (pow.f64 (*.f64 (cbrt.f64 x) (+.f64 x x)) 1/2)) |
| 79.0ms | (pow.f64 (cbrt.f64 x) 2) |
| 79.0ms | (cbrt.f64 x) |
| 79.0ms | (pow.f64 (*.f64 (cbrt.f64 x) (+.f64 x x)) 1/2) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 11 | 36 |
| 1 | 219 | 25 |
| 2 | 2178 | 25 |
| 3 | 5792 | 25 |
| 0 | 0 | 0 |
| 1 | 0 | 0 |
| 1× | egg-herbie |
| 927× | fma-def_binary64 |
| 735× | sqr-pow_binary64 |
| 412× | unswap-sqr_binary64 |
| 388× | *-commutative_binary64 |
| 288× | fma-neg_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 22 | 400 |
| 1 | 53 | 400 |
| 2 | 100 | 400 |
| 3 | 234 | 400 |
| 4 | 671 | 400 |
| 5 | 1071 | 400 |
| 6 | 1134 | 400 |
| 7 | 1347 | 400 |
| 8 | 1640 | 400 |
| 9 | 1962 | 400 |
| 10 | 2318 | 400 |
| 11 | 2672 | 400 |
| 12 | 3136 | 400 |
| 13 | 3857 | 400 |
| 14 | 4627 | 400 |
| 15 | 4938 | 400 |
| 16 | 4746 | 400 |
10 alts after pruning (8 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 121 | 1 | 122 |
| Fresh | 0 | 7 | 7 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 1 | 1 |
| Total | 121 | 10 | 131 |
| Status | Error | Program |
| 33.4b | (*.f64 (sqrt.f64 x) (sqrt.f64 (+.f64 x x))) | |
| ✓ | 31.4b | (sqrt.f64 (*.f64 (*.f64 2 x) x)) |
| 15.4b | (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 x) 2)) (pow.f64 (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 x)) 3) (+.f64 x x)) 1/2)) | |
| 30.3b | (neg.f64 (*.f64 (sqrt.f64 2) x)) | |
| ▶ | 15.3b | (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (+.f64 x x)) 2)) (pow.f64 (*.f64 (cbrt.f64 (+.f64 x x)) x) 1/2)) |
| ✓ | 15.3b | (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 x) 2)) (pow.f64 (*.f64 (cbrt.f64 x) (+.f64 x x)) 1/2)) |
| 40.1b | (*.f64 (cbrt.f64 (*.f64 x (sqrt.f64 2))) (pow.f64 (*.f64 (cbrt.f64 (*.f64 x (sqrt.f64 2))) (*.f64 x (sqrt.f64 2))) 1/2)) | |
| 32.9b | (*.f64 (sqrt.f64 2) x) | |
| 33.6b | (pow.f64 (sqrt.f64 (*.f64 x (sqrt.f64 2))) 2) | |
| 33.3b | (pow.f64 (cbrt.f64 (*.f64 x (sqrt.f64 2))) 3) |
Compiled 2128 to 1269 computations (40.4% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 0.3b | (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (+.f64 x x)) 2)) (pow.f64 (*.f64 (cbrt.f64 (+.f64 x x)) x) 1/2)) |
| ✓ | 0.5b | (pow.f64 (cbrt.f64 (+.f64 x x)) 2) |
| ✓ | 0.6b | (cbrt.f64 (+.f64 x x)) |
| ✓ | 14.5b | (pow.f64 (*.f64 (cbrt.f64 (+.f64 x x)) x) 1/2) |
4 calls:
| 848.0ms | (pow.f64 (*.f64 (cbrt.f64 (+.f64 x x)) x) 1/2) |
| 46.0ms | (pow.f64 (cbrt.f64 (+.f64 x x)) 2) |
| 34.0ms | (cbrt.f64 (+.f64 x x)) |
| 23.0ms | (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (+.f64 x x)) 2)) (pow.f64 (*.f64 (cbrt.f64 (+.f64 x x)) x) 1/2)) |
| 2× | batch-egg-rewrite |
| 620× | log1p-expm1-u_binary64 |
| 620× | expm1-log1p-u_binary64 |
| 308× | log-prod_binary64 |
| 238× | prod-diff_binary64 |
| 218× | egg-rr |
4 calls:
| 60.0ms | (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (+.f64 x x)) 2)) (pow.f64 (*.f64 (cbrt.f64 (+.f64 x x)) x) 1/2)) |
| 60.0ms | (pow.f64 (cbrt.f64 (+.f64 x x)) 2) |
| 60.0ms | (cbrt.f64 (+.f64 x x)) |
| 60.0ms | (pow.f64 (*.f64 (cbrt.f64 (+.f64 x x)) x) 1/2) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 11 | 34 |
| 1 | 215 | 26 |
| 2 | 1624 | 26 |
| 3 | 4958 | 26 |
| 0 | 0 | 0 |
| 1 | 0 | 0 |
| 1× | egg-herbie |
| 1003× | fma-def_binary64 |
| 790× | unswap-sqr_binary64 |
| 662× | sqr-pow_binary64 |
| 468× | *-commutative_binary64 |
| 344× | distribute-rgt-in_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 27 | 516 |
| 1 | 64 | 516 |
| 2 | 129 | 516 |
| 3 | 324 | 516 |
| 4 | 1021 | 516 |
| 5 | 1715 | 516 |
| 6 | 1918 | 516 |
| 7 | 2288 | 516 |
| 8 | 2999 | 516 |
| 9 | 3608 | 516 |
| 10 | 4272 | 516 |
| 11 | 4564 | 516 |
| 12 | 4655 | 516 |
11 alts after pruning (8 fresh and 3 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 232 | 1 | 233 |
| Fresh | 0 | 7 | 7 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 2 | 2 |
| Total | 232 | 11 | 243 |
| Status | Error | Program |
| ▶ | 15.3b | (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (+.f64 x x)) 2)) (pow.f64 (*.f64 (*.f64 (cbrt.f64 2) (cbrt.f64 x)) x) 1/2)) |
| ✓ | 15.3b | (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 x) 2)) (pow.f64 (*.f64 (cbrt.f64 x) (+.f64 x x)) 1/2)) |
| 33.4b | (*.f64 (sqrt.f64 x) (sqrt.f64 (+.f64 x x))) | |
| ✓ | 31.4b | (sqrt.f64 (*.f64 (*.f64 2 x) x)) |
| 15.4b | (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 x) 2)) (pow.f64 (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 x)) 3) (+.f64 x x)) 1/2)) | |
| 30.3b | (neg.f64 (*.f64 (sqrt.f64 2) x)) | |
| ✓ | 15.3b | (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (+.f64 x x)) 2)) (pow.f64 (*.f64 (cbrt.f64 (+.f64 x x)) x) 1/2)) |
| 40.1b | (*.f64 (cbrt.f64 (*.f64 x (sqrt.f64 2))) (pow.f64 (*.f64 (cbrt.f64 (*.f64 x (sqrt.f64 2))) (*.f64 x (sqrt.f64 2))) 1/2)) | |
| 32.9b | (*.f64 (sqrt.f64 2) x) | |
| 33.6b | (pow.f64 (sqrt.f64 (*.f64 x (sqrt.f64 2))) 2) | |
| 33.3b | (pow.f64 (cbrt.f64 (*.f64 x (sqrt.f64 2))) 3) |
Compiled 5034 to 2323 computations (53.9% saved)
Found 4 expressions with local error:
| New | Error | Program |
| 0.5b | (cbrt.f64 x) | |
| 0.6b | (cbrt.f64 (+.f64 x x)) | |
| ✓ | 1.0b | (cbrt.f64 2) |
| ✓ | 14.5b | (pow.f64 (*.f64 (*.f64 (cbrt.f64 2) (cbrt.f64 x)) x) 1/2) |
2 calls:
| 964.0ms | (pow.f64 (*.f64 (*.f64 (cbrt.f64 2) (cbrt.f64 x)) x) 1/2) |
| 0.0ms | (cbrt.f64 2) |
| 2× | batch-egg-rewrite |
| 716× | log1p-expm1-u_binary64 |
| 716× | expm1-log1p-u_binary64 |
| 142× | expm1-udef_binary64 |
| 142× | log1p-udef_binary64 |
| 133× | log-pow_binary64 |
2 calls:
| 41.0ms | (cbrt.f64 2) |
| 41.0ms | (pow.f64 (*.f64 (*.f64 (cbrt.f64 2) (cbrt.f64 x)) x) 1/2) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 14 |
| 1 | 184 | 14 |
| 2 | 1903 | 14 |
| 3 | 4889 | 14 |
| 0 | 0 | 0 |
| 1 | 0 | 0 |
| 1× | egg-herbie |
| 1024× | sqr-pow_binary64 |
| 744× | fabs-mul_binary64 |
| 722× | cube-prod_binary64 |
| 450× | unswap-sqr_binary64 |
| 390× | pow-sqr_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 15 | 184 |
| 1 | 32 | 184 |
| 2 | 62 | 184 |
| 3 | 99 | 184 |
| 4 | 192 | 184 |
| 5 | 464 | 184 |
| 6 | 641 | 184 |
| 7 | 1056 | 184 |
| 8 | 1095 | 184 |
| 9 | 1271 | 184 |
| 10 | 1472 | 184 |
| 11 | 1756 | 184 |
| 12 | 2046 | 184 |
| 13 | 2468 | 184 |
| 14 | 3023 | 184 |
| 15 | 3312 | 184 |
| 16 | 3602 | 184 |
| 17 | 3770 | 184 |
| 18 | 3845 | 184 |
| 19 | 3912 | 184 |
| 20 | 4688 | 184 |
| 21 | 4787 | 184 |
11 alts after pruning (8 fresh and 3 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 166 | 1 | 167 |
| Fresh | 0 | 7 | 7 |
| Picked | 0 | 1 | 1 |
| Done | 1 | 2 | 3 |
| Total | 167 | 11 | 178 |
| Status | Error | Program |
| 33.4b | (*.f64 (sqrt.f64 x) (sqrt.f64 (+.f64 x x))) | |
| ✓ | 31.4b | (sqrt.f64 (*.f64 (*.f64 2 x) x)) |
| 40.1b | (*.f64 (cbrt.f64 (*.f64 x (sqrt.f64 2))) (pow.f64 (*.f64 (cbrt.f64 (*.f64 x (sqrt.f64 2))) (*.f64 x (sqrt.f64 2))) 1/2)) | |
| 15.6b | (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (+.f64 x x)) 2)) (*.f64 (cbrt.f64 (*.f64 x (cbrt.f64 (*.f64 2 x)))) (cbrt.f64 (sqrt.f64 (*.f64 x (cbrt.f64 (*.f64 2 x))))))) | |
| 15.4b | (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 x) 2)) (pow.f64 (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 x)) 3) (+.f64 x x)) 1/2)) | |
| 30.3b | (neg.f64 (*.f64 (sqrt.f64 2) x)) | |
| ✓ | 15.3b | (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (+.f64 x x)) 2)) (pow.f64 (*.f64 (cbrt.f64 (+.f64 x x)) x) 1/2)) |
| ✓ | 15.3b | (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (+.f64 x x)) 2)) (pow.f64 (*.f64 (*.f64 (cbrt.f64 2) (cbrt.f64 x)) x) 1/2)) |
| 32.9b | (*.f64 (sqrt.f64 2) x) | |
| 33.6b | (pow.f64 (sqrt.f64 (*.f64 x (sqrt.f64 2))) 2) | |
| 33.3b | (pow.f64 (cbrt.f64 (*.f64 x (sqrt.f64 2))) 3) |
Compiled 3730 to 2350 computations (37% saved)
Total 0.3b remaining (72.3%)
Threshold costs 0.3b (72.3%)
Compiled 906 to 659 computations (27.3% saved)
| Iters | Range | Point | |
|---|---|---|---|
| 9 | -2.951990989665665e-304 | 3.707064043527614e-307 | -1.85078885647426e-310 |
Compiled 2 to 1 computations (50% saved)
| 1× | egg-herbie |
| 5× | *-commutative_binary64 |
| 3× | +-commutative_binary64 |
| 3× | sub-neg_binary64 |
| 3× | neg-sub0_binary64 |
| 3× | neg-mul-1_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 14 | 25 |
| 1 | 24 | 25 |
| 2 | 32 | 25 |
| 3 | 37 | 25 |
| 4 | 39 | 25 |
| 5 | 39 | 25 |
Compiled 173 to 129 computations (25.4% saved)
Loading profile data...