Time bar (total: 3.1s)
| 1× | search |
| True | Other | False | Iter |
|---|---|---|---|
| 0% | 99.9% | 0.1% | 0 |
| 0% | 99.9% | 0.1% | 1 |
| 0% | 50% | 50% | 2 |
| 0% | 50% | 50% | 3 |
| 0% | 50% | 50% | 4 |
| 0% | 50% | 50% | 5 |
| 6.2% | 31.2% | 62.5% | 6 |
| 9.4% | 28.1% | 62.5% | 7 |
| 14% | 17.2% | 68.8% | 8 |
| 14.8% | 16.4% | 68.8% | 9 |
| 17.6% | 10.1% | 72.3% | 10 |
| 18.1% | 9.2% | 72.7% | 11 |
| 19.6% | 5.5% | 74.9% | 12 |
| 20% | 4.8% | 75.2% | 13 |
| 20.7% | 2.8% | 76.5% | 14 |
Compiled 23 to 20 computations (13% saved)
| 1.2s | 8256× | body | 128 | valid |
| 77.0ms | 598× | body | 128 | invalid |
Compiled 46 to 40 computations (13% saved)
| 2× | egg-herbie |
| 692× | fma-def_binary64 |
| 438× | fma-neg_binary64 |
| 227× | sub-neg_binary64 |
| 210× | distribute-rgt-neg-in_binary64 |
| 204× | unsub-neg_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 22 | 48 |
| 1 | 52 | 42 |
| 2 | 141 | 38 |
| 3 | 395 | 38 |
| 4 | 1005 | 38 |
| 5 | 1898 | 38 |
| 6 | 2873 | 38 |
| 7 | 4197 | 38 |
| 0 | 2 | 2 |
| 1× | saturated |
| 1× | node limit |
Compiled 22 to 19 computations (13.6% saved)
| 1× | egg-herbie |
| 1035× | fma-def_binary64 |
| 742× | fma-neg_binary64 |
| 189× | distribute-rgt-in_binary64 |
| 177× | cancel-sign-sub-inv_binary64 |
| 156× | distribute-lft-in_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 15 | 24 |
| 1 | 32 | 21 |
| 2 | 82 | 19 |
| 3 | 199 | 19 |
| 4 | 510 | 19 |
| 5 | 969 | 19 |
| 6 | 1470 | 19 |
| 7 | 2421 | 19 |
| 8 | 3626 | 19 |
| 9 | 4073 | 19 |
| 10 | 4231 | 19 |
| 11 | 4272 | 19 |
| 12 | 4275 | 19 |
| 13 | 4828 | 19 |
| 14 | 4828 | 19 |
| 1× | saturated |
3 alts after pruning (3 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 0 | 2 | 2 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 0 | 3 | 3 |
| Status | Error | Program |
| 0.1b | (*.f64 (-.f64 a 1/3) (+.f64 1 (/.f64 rand (sqrt.f64 (fma.f64 a 9 -3))))) | |
| ▶ | 0.1b | (*.f64 (-.f64 a (/.f64 1 3)) (+.f64 1 (*.f64 (/.f64 1 (sqrt.f64 (*.f64 9 (-.f64 a (/.f64 1 3))))) rand))) |
Compiled 109 to 91 computations (16.5% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 0.1b | (*.f64 (-.f64 a (/.f64 1 3)) (+.f64 1 (*.f64 (/.f64 1 (sqrt.f64 (*.f64 9 (-.f64 a (/.f64 1 3))))) rand))) |
| ✓ | 0.2b | (*.f64 (/.f64 1 (sqrt.f64 (*.f64 9 (-.f64 a (/.f64 1 3))))) rand) |
| ✓ | 0.2b | (/.f64 1 (sqrt.f64 (*.f64 9 (-.f64 a (/.f64 1 3))))) |
| ✓ | 0.6b | (sqrt.f64 (*.f64 9 (-.f64 a (/.f64 1 3)))) |
18 calls:
| 5.0ms | (*.f64 (-.f64 a (/.f64 1 3)) (+.f64 1 (*.f64 (/.f64 1 (sqrt.f64 (*.f64 9 (-.f64 a (/.f64 1 3))))) rand))) | a | -inf |
| 5.0ms | (/.f64 1 (sqrt.f64 (*.f64 9 (-.f64 a (/.f64 1 3))))) | a | inf |
| 5.0ms | (*.f64 (/.f64 1 (sqrt.f64 (*.f64 9 (-.f64 a (/.f64 1 3))))) rand) | a | inf |
| 5.0ms | (*.f64 (/.f64 1 (sqrt.f64 (*.f64 9 (-.f64 a (/.f64 1 3))))) rand) | rand | -inf |
| 4.0ms | (*.f64 (-.f64 a (/.f64 1 3)) (+.f64 1 (*.f64 (/.f64 1 (sqrt.f64 (*.f64 9 (-.f64 a (/.f64 1 3))))) rand))) | a | 0 |
| 1× | batch-egg-rewrite |
| 723× | prod-diff_binary64 |
| 142× | add-sqr-sqrt_binary64 |
| 138× | log1p-expm1-u_binary64 |
| 138× | expm1-log1p-u_binary64 |
| 137× | add-cbrt-cube_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 15 | 54 |
| 1 | 308 | 49 |
| 2 | 3888 | 49 |
| 1× | node limit |
| 1× | egg-herbie |
| 549× | fma-def_binary64 |
| 374× | associate-/l*_binary64 |
| 332× | times-frac_binary64 |
| 239× | associate-*r*_binary64 |
| 236× | associate-*l*_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 125 | 1029 |
| 1 | 397 | 973 |
| 2 | 1459 | 905 |
| 1× | node limit |
6 alts after pruning (6 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 159 | 6 | 165 |
| Fresh | 1 | 0 | 1 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 161 | 6 | 167 |
| Status | Error | Program |
| 0.3b | (*.f64 (-.f64 a (/.f64 1 3)) (+.f64 1 (pow.f64 (cbrt.f64 (*.f64 1/3 (/.f64 rand (sqrt.f64 (-.f64 a 1/3))))) 3))) | |
| 0.2b | (*.f64 (-.f64 a (/.f64 1 3)) (+.f64 1 (*.f64 1/3 (*.f64 rand (sqrt.f64 (/.f64 1 (-.f64 a 1/3))))))) | |
| 0.2b | (*.f64 (-.f64 a (/.f64 1 3)) (+.f64 1 (/.f64 (/.f64 rand (pow.f64 (+.f64 (*.f64 a 9) -3) 1/4)) (pow.f64 (+.f64 (*.f64 a 9) -3) 1/4)))) | |
| 0.1b | (*.f64 (-.f64 a (/.f64 1 3)) (+.f64 1 (/.f64 rand (*.f64 3 (sqrt.f64 (-.f64 a 1/3)))))) | |
| ▶ | 0.1b | (fma.f64 1/3 (*.f64 rand (sqrt.f64 (+.f64 -1/3 a))) (+.f64 -1/3 a)) |
| 7.8b | (+.f64 a (+.f64 -1/3 (*.f64 (/.f64 1/3 (sqrt.f64 (-.f64 a 1/3))) (*.f64 rand (-.f64 a 1/3))))) |
Compiled 4129 to 3368 computations (18.4% saved)
Found 3 expressions with local error:
| New | Error | Program |
| ✓ | 0.0b | (sqrt.f64 (+.f64 -1/3 a)) |
| ✓ | 0.1b | (fma.f64 1/3 (*.f64 rand (sqrt.f64 (+.f64 -1/3 a))) (+.f64 -1/3 a)) |
| ✓ | 0.2b | (*.f64 rand (sqrt.f64 (+.f64 -1/3 a))) |
15 calls:
| 5.0ms | (*.f64 rand (sqrt.f64 (+.f64 -1/3 a))) | a | inf |
| 4.0ms | (sqrt.f64 (+.f64 -1/3 a)) | a | -inf |
| 3.0ms | (*.f64 rand (sqrt.f64 (+.f64 -1/3 a))) | a | -inf |
| 3.0ms | (fma.f64 1/3 (*.f64 rand (sqrt.f64 (+.f64 -1/3 a))) (+.f64 -1/3 a)) | a | inf |
| 3.0ms | (fma.f64 1/3 (*.f64 rand (sqrt.f64 (+.f64 -1/3 a))) (+.f64 -1/3 a)) | a | -inf |
| 1× | batch-egg-rewrite |
| 860× | log1p-expm1-u_binary64 |
| 860× | expm1-log1p-u_binary64 |
| 165× | prod-diff_binary64 |
| 93× | add-sqr-sqrt_binary64 |
| 88× | add-cbrt-cube_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 31 |
| 1 | 191 | 31 |
| 2 | 2281 | 31 |
| 1× | node limit |
| 1× | egg-herbie |
| 585× | associate-/r*_binary64 |
| 369× | associate-/r/_binary64 |
| 324× | fma-neg_binary64 |
| 288× | associate-/l/_binary64 |
| 182× | fma-def_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 65 | 661 |
| 1 | 200 | 621 |
| 2 | 651 | 607 |
| 3 | 2612 | 583 |
| 1× | node limit |
6 alts after pruning (5 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 94 | 3 | 97 |
| Fresh | 3 | 2 | 5 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 97 | 6 | 103 |
| Status | Error | Program |
| 0.3b | (fma.f64 1/3 (*.f64 rand (pow.f64 (cbrt.f64 (sqrt.f64 (+.f64 -1/3 a))) 3)) (+.f64 -1/3 a)) | |
| ✓ | 0.1b | (fma.f64 1/3 (*.f64 rand (sqrt.f64 (+.f64 -1/3 a))) (+.f64 -1/3 a)) |
| 0.1b | (*.f64 (-.f64 a (/.f64 1 3)) (+.f64 1 (/.f64 rand (*.f64 3 (sqrt.f64 (-.f64 a 1/3)))))) | |
| ▶ | 0.1b | (+.f64 (+.f64 -1/3 a) (*.f64 (*.f64 1/3 rand) (sqrt.f64 (+.f64 -1/3 a)))) |
| 0.1b | (+.f64 -1/3 (fma.f64 rand (*.f64 1/3 (sqrt.f64 (+.f64 a -1/3))) a)) | |
| 0.2b | (*.f64 (-.f64 a (/.f64 1 3)) (+.f64 1 (*.f64 1/3 (*.f64 rand (sqrt.f64 (/.f64 1 (-.f64 a 1/3))))))) |
Compiled 1806 to 1420 computations (21.4% saved)
Found 4 expressions with local error:
| New | Error | Program |
| 0.0b | (sqrt.f64 (+.f64 -1/3 a)) | |
| ✓ | 0.0b | (+.f64 (+.f64 -1/3 a) (*.f64 (*.f64 1/3 rand) (sqrt.f64 (+.f64 -1/3 a)))) |
| ✓ | 0.3b | (*.f64 (*.f64 1/3 rand) (sqrt.f64 (+.f64 -1/3 a))) |
| ✓ | 0.3b | (*.f64 1/3 rand) |
15 calls:
| 13.0ms | (*.f64 (*.f64 1/3 rand) (sqrt.f64 (+.f64 -1/3 a))) | rand | inf |
| 4.0ms | (*.f64 (*.f64 1/3 rand) (sqrt.f64 (+.f64 -1/3 a))) | a | inf |
| 4.0ms | (*.f64 (*.f64 1/3 rand) (sqrt.f64 (+.f64 -1/3 a))) | a | -inf |
| 3.0ms | (+.f64 (+.f64 -1/3 a) (*.f64 (*.f64 1/3 rand) (sqrt.f64 (+.f64 -1/3 a)))) | rand | -inf |
| 3.0ms | (+.f64 (+.f64 -1/3 a) (*.f64 (*.f64 1/3 rand) (sqrt.f64 (+.f64 -1/3 a)))) | a | inf |
| 1× | batch-egg-rewrite |
| 513× | log-prod_binary64 |
| 465× | fma-def_binary64 |
| 200× | fma-neg_binary64 |
| 196× | expm1-udef_binary64 |
| 196× | log1p-udef_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 10 | 34 |
| 1 | 224 | 32 |
| 2 | 2988 | 32 |
| 1× | node limit |
| 1× | egg-herbie |
| 755× | associate-/l*_binary64 |
| 671× | cancel-sign-sub-inv_binary64 |
| 394× | associate-/r*_binary64 |
| 274× | fma-neg_binary64 |
| 234× | associate-/r/_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 45 | 615 |
| 1 | 139 | 585 |
| 2 | 436 | 573 |
| 3 | 1757 | 568 |
| 1× | node limit |
6 alts after pruning (4 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 164 | 0 | 164 |
| Fresh | 0 | 4 | 4 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 1 | 1 |
| Total | 164 | 6 | 170 |
| Status | Error | Program |
| 0.3b | (fma.f64 1/3 (*.f64 rand (pow.f64 (cbrt.f64 (sqrt.f64 (+.f64 -1/3 a))) 3)) (+.f64 -1/3 a)) | |
| ✓ | 0.1b | (fma.f64 1/3 (*.f64 rand (sqrt.f64 (+.f64 -1/3 a))) (+.f64 -1/3 a)) |
| 0.1b | (*.f64 (-.f64 a (/.f64 1 3)) (+.f64 1 (/.f64 rand (*.f64 3 (sqrt.f64 (-.f64 a 1/3)))))) | |
| ✓ | 0.1b | (+.f64 (+.f64 -1/3 a) (*.f64 (*.f64 1/3 rand) (sqrt.f64 (+.f64 -1/3 a)))) |
| ▶ | 0.1b | (+.f64 -1/3 (fma.f64 rand (*.f64 1/3 (sqrt.f64 (+.f64 a -1/3))) a)) |
| 0.2b | (*.f64 (-.f64 a (/.f64 1 3)) (+.f64 1 (*.f64 1/3 (*.f64 rand (sqrt.f64 (/.f64 1 (-.f64 a 1/3))))))) |
Compiled 3263 to 2540 computations (22.2% saved)
Found 3 expressions with local error:
| New | Error | Program |
| ✓ | 0.0b | (sqrt.f64 (+.f64 a -1/3)) |
| ✓ | 0.1b | (fma.f64 rand (*.f64 1/3 (sqrt.f64 (+.f64 a -1/3))) a) |
| ✓ | 0.4b | (*.f64 1/3 (sqrt.f64 (+.f64 a -1/3))) |
12 calls:
| 3.0ms | (fma.f64 rand (*.f64 1/3 (sqrt.f64 (+.f64 a -1/3))) a) | rand | -inf |
| 3.0ms | (*.f64 1/3 (sqrt.f64 (+.f64 a -1/3))) | a | -inf |
| 3.0ms | (*.f64 1/3 (sqrt.f64 (+.f64 a -1/3))) | a | inf |
| 2.0ms | (fma.f64 rand (*.f64 1/3 (sqrt.f64 (+.f64 a -1/3))) a) | a | -inf |
| 2.0ms | (fma.f64 rand (*.f64 1/3 (sqrt.f64 (+.f64 a -1/3))) a) | a | inf |
| 1× | batch-egg-rewrite |
| 849× | log1p-expm1-u_binary64 |
| 849× | expm1-log1p-u_binary64 |
| 146× | prod-diff_binary64 |
| 93× | add-sqr-sqrt_binary64 |
| 88× | add-cbrt-cube_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 28 |
| 1 | 191 | 28 |
| 2 | 2260 | 28 |
| 1× | node limit |
| 1× | egg-herbie |
| 711× | associate-*l/_binary64 |
| 566× | associate-/r*_binary64 |
| 297× | associate-/r/_binary64 |
| 274× | associate-/l/_binary64 |
| 263× | fma-neg_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 62 | 495 |
| 1 | 189 | 455 |
| 2 | 587 | 445 |
| 3 | 2259 | 417 |
| 1× | node limit |
6 alts after pruning (3 fresh and 3 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 88 | 0 | 88 |
| Fresh | 0 | 3 | 3 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 2 | 2 |
| Total | 88 | 6 | 94 |
| Status | Error | Program |
| 0.3b | (fma.f64 1/3 (*.f64 rand (pow.f64 (cbrt.f64 (sqrt.f64 (+.f64 -1/3 a))) 3)) (+.f64 -1/3 a)) | |
| ✓ | 0.1b | (fma.f64 1/3 (*.f64 rand (sqrt.f64 (+.f64 -1/3 a))) (+.f64 -1/3 a)) |
| 0.1b | (*.f64 (-.f64 a (/.f64 1 3)) (+.f64 1 (/.f64 rand (*.f64 3 (sqrt.f64 (-.f64 a 1/3)))))) | |
| ✓ | 0.1b | (+.f64 (+.f64 -1/3 a) (*.f64 (*.f64 1/3 rand) (sqrt.f64 (+.f64 -1/3 a)))) |
| ✓ | 0.1b | (+.f64 -1/3 (fma.f64 rand (*.f64 1/3 (sqrt.f64 (+.f64 a -1/3))) a)) |
| 0.2b | (*.f64 (-.f64 a (/.f64 1 3)) (+.f64 1 (*.f64 1/3 (*.f64 rand (sqrt.f64 (/.f64 1 (-.f64 a 1/3))))))) |
Compiled 1602 to 1267 computations (20.9% saved)
Total 0.1b remaining (87.1%)
Threshold costs 0.1b (87.1%)
Compiled 4862 to 4026 computations (17.2% saved)
| 1× | egg-herbie |
| 2× | +-commutative_binary64 |
| 1× | *-commutative_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 10 | 16 |
| 1 | 13 | 16 |
| 1× | saturated |
| 1× | fuel |
Compiled 120 to 96 computations (20% saved)
Loading profile data...