Time bar (total: 3.4s)
| 1× | search |
| True | Other | False | Iter |
|---|---|---|---|
| 0% | 0% | 100% | 0 |
| 0% | 0% | 100% | 1 |
Compiled 17 to 11 computations (35.3% saved)
| 784.0ms | 8256× | body | 128 | valid |
Compiled 44 to 28 computations (36.4% saved)
| 1× | egg-herbie |
| 649× | fma-neg_binary64 |
| 496× | div-sub_binary64 |
| 481× | fma-def_binary64 |
| 322× | times-frac_binary64 |
| 160× | associate-/l/_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 10 |
| 1 | 13 | 10 |
| 2 | 21 | 10 |
| 3 | 37 | 10 |
| 4 | 72 | 10 |
| 5 | 127 | 10 |
| 6 | 265 | 10 |
| 7 | 547 | 10 |
| 8 | 1353 | 10 |
| 9 | 2750 | 10 |
| 10 | 3664 | 10 |
| 11 | 4026 | 10 |
| 12 | 4151 | 10 |
| 13 | 4178 | 10 |
| 14 | 4188 | 10 |
| 15 | 4196 | 10 |
| 16 | 4196 | 10 |
| 1× | saturated |
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 |
| ▶ | 62.0b | (/.f64 (-.f64 x lo) (-.f64 hi lo)) |
Compiled 37 to 21 computations (43.2% saved)
Found 1 expressions with local error:
| New | Error | Program |
| ✓ | 62.0b | (/.f64 (-.f64 x lo) (-.f64 hi lo)) |
1 calls:
| 16.0ms | (/.f64 (-.f64 x lo) (-.f64 hi lo)) |
| 1× | batch-egg-rewrite |
| 952× | prod-diff_binary64 |
| 233× | egg-rr |
| 166× | expm1-udef_binary64 |
| 166× | log1p-udef_binary64 |
| 90× | add-sqr-sqrt_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 10 |
| 1 | 167 | 10 |
| 2 | 2654 | 10 |
| 1× | node limit |
1 calls:
| 90.0ms | (/.f64 (-.f64 x lo) (-.f64 hi lo)) |
| 1× | egg-herbie |
| 722× | sub-neg_binary64 |
| 402× | associate--l+_binary64 |
| 330× | fma-def_binary64 |
| 327× | associate--r+_binary64 |
| 299× | associate-+l+_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 78 | 1093 |
| 1 | 236 | 1075 |
| 2 | 863 | 919 |
| 3 | 4691 | 913 |
| 1× | node limit |
4 alts after pruning (4 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 261 | 4 | 265 |
| Fresh | 0 | 0 | 0 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 262 | 4 | 266 |
| Status | Error | Program |
| 57.5b | (+.f64 (+.f64 (*.f64 (+.f64 1 (/.f64 hi lo)) (/.f64 hi lo)) (-.f64 (pow.f64 (/.f64 hi lo) 3) (*.f64 (/.f64 x lo) (*.f64 (+.f64 1 (/.f64 hi lo)) (/.f64 hi lo))))) (-.f64 1 (/.f64 x lo))) | |
| 51.9b | (+.f64 (/.f64 hi lo) (+.f64 1 (-.f64 (*.f64 (/.f64 hi lo) (-.f64 (/.f64 hi lo) (/.f64 x lo))) (/.f64 x lo)))) | |
| ▶ | 51.9b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (fma.f64 (/.f64 lo hi) (/.f64 lo hi) (pow.f64 (/.f64 lo hi) 3)))) |
| 51.9b | (-.f64 (+.f64 (*.f64 (+.f64 1 (/.f64 hi lo)) (/.f64 hi lo)) (-.f64 1 (*.f64 (/.f64 x lo) (*.f64 (+.f64 1 (/.f64 hi lo)) (/.f64 hi lo))))) (/.f64 x lo)) |
Compiled 12683 to 3428 computations (73% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 0.4b | (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi)) |
| ✓ | 0.8b | (pow.f64 (/.f64 lo hi) 3) |
| ✓ | 1.7b | (+.f64 (/.f64 lo hi) 1) |
| ✓ | 2.4b | (fma.f64 (/.f64 lo hi) (/.f64 lo hi) (pow.f64 (/.f64 lo hi) 3)) |
4 calls:
| 17.0ms | (fma.f64 (/.f64 lo hi) (/.f64 lo hi) (pow.f64 (/.f64 lo hi) 3)) |
| 14.0ms | (pow.f64 (/.f64 lo hi) 3) |
| 11.0ms | (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi)) |
| 4.0ms | (+.f64 (/.f64 lo hi) 1) |
| 1× | batch-egg-rewrite |
| 430× | prod-diff_binary64 |
| 255× | fma-def_binary64 |
| 194× | egg-rr |
| 178× | log1p-udef_binary64 |
| 177× | expm1-udef_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 10 | 44 |
| 1 | 216 | 43 |
| 2 | 2785 | 43 |
| 1× | node limit |
4 calls:
| 55.0ms | (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi)) |
| 55.0ms | (pow.f64 (/.f64 lo hi) 3) |
| 55.0ms | (+.f64 (/.f64 lo hi) 1) |
| 54.0ms | (fma.f64 (/.f64 lo hi) (/.f64 lo hi) (pow.f64 (/.f64 lo hi) 3)) |
| 1× | egg-herbie |
| 1251× | fma-def_binary64 |
| 495× | unswap-sqr_binary64 |
| 349× | times-frac_binary64 |
| 221× | associate-/l*_binary64 |
| 220× | *-commutative_binary64 |
Useful iterations: 4 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 16 | 1167 |
| 1 | 39 | 1167 |
| 2 | 86 | 942 |
| 3 | 311 | 942 |
| 4 | 1943 | 906 |
| 5 | 3474 | 906 |
| 6 | 4419 | 906 |
| 1× | node limit |
16 alts after pruning (16 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 191 | 13 | 204 |
| Fresh | 0 | 3 | 3 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 192 | 16 | 208 |
| Status | Error | Program |
| 51.9b | (+.f64 (/.f64 hi lo) (+.f64 1 (-.f64 (*.f64 (/.f64 hi lo) (-.f64 (/.f64 hi lo) (/.f64 x lo))) (/.f64 x lo)))) | |
| 51.9b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (fma.f64 (/.f64 lo hi) (/.f64 lo hi) (cbrt.f64 (pow.f64 (pow.f64 (/.f64 lo hi) 3) 3))))) | |
| ▶ | 51.3b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (pow.f64 (/.f64 lo hi) 3) (pow.f64 (/.f64 lo hi) 2)) 2)))) |
| 51.9b | (-.f64 (+.f64 (*.f64 (+.f64 1 (/.f64 hi lo)) (/.f64 hi lo)) (-.f64 1 (*.f64 (/.f64 x lo) (*.f64 (+.f64 1 (/.f64 hi lo)) (/.f64 hi lo))))) (/.f64 x lo)) | |
| 51.9b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (log.f64 (*.f64 (+.f64 1 (expm1.f64 (pow.f64 (/.f64 lo hi) 3))) (exp.f64 (pow.f64 (/.f64 lo hi) 2)))))) | |
| 57.5b | (+.f64 (+.f64 (*.f64 (+.f64 1 (/.f64 hi lo)) (/.f64 hi lo)) (-.f64 (pow.f64 (/.f64 hi lo) 3) (*.f64 (/.f64 x lo) (*.f64 (+.f64 1 (/.f64 hi lo)) (/.f64 hi lo))))) (-.f64 1 (/.f64 x lo))) | |
| 51.9b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (fma.f64 (/.f64 lo hi) (/.f64 lo hi) (log.f64 (+.f64 1 (expm1.f64 (pow.f64 (/.f64 lo hi) 3))))))) | |
| 51.9b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (fma.f64 (/.f64 lo hi) (/.f64 lo hi) (/.f64 1 (pow.f64 (/.f64 hi lo) 3))))) | |
| 55.5b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (fma.f64 (/.f64 lo hi) (/.f64 lo hi) (*.f64 (*.f64 (pow.f64 (/.f64 lo hi) 2) lo) (/.f64 1 hi))))) | |
| 51.9b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (fma.f64 (/.f64 lo hi) (/.f64 lo hi) (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 lo hi)) 2) 3) (/.f64 lo hi))))) | |
| 51.9b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (fma.f64 (/.f64 lo hi) (/.f64 lo hi) (*.f64 (pow.f64 (cbrt.f64 (/.f64 lo hi)) 2) (*.f64 (cbrt.f64 (/.f64 lo hi)) (pow.f64 (/.f64 lo hi) 2)))))) | |
| 52.5b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (-.f64 (exp.f64 (log1p.f64 (+.f64 (pow.f64 (/.f64 lo hi) 3) (pow.f64 (/.f64 lo hi) 2)))) 1))) | |
| 51.9b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (fma.f64 (/.f64 lo hi) (/.f64 lo hi) (*.f64 lo (*.f64 (/.f64 1 hi) (pow.f64 (/.f64 lo hi) 2)))))) | |
| 51.9b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (/.f64 lo hi) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (fma.f64 (/.f64 lo hi) (/.f64 lo hi) (pow.f64 (/.f64 lo hi) 3)))) | |
| 51.9b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (log.f64 (*.f64 (exp.f64 (pow.f64 (/.f64 lo hi) 3)) (exp.f64 (pow.f64 (/.f64 lo hi) 2)))))) | |
| 51.9b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (fma.f64 (/.f64 lo hi) (/.f64 lo hi) (fma.f64 (*.f64 (cbrt.f64 (+.f64 (pow.f64 (/.f64 lo hi) 3) 1)) (cbrt.f64 (+.f64 (pow.f64 (/.f64 lo hi) 3) 1))) (cbrt.f64 (+.f64 (pow.f64 (/.f64 lo hi) 3) 1)) -1)))) |
Compiled 8834 to 3204 computations (63.7% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 0.6b | (pow.f64 (/.f64 lo hi) 2) |
| 0.8b | (pow.f64 (/.f64 lo hi) 3) | |
| 1.7b | (+.f64 (/.f64 lo hi) 1) | |
| ✓ | 1.8b | (+.f64 (pow.f64 (/.f64 lo hi) 3) (pow.f64 (/.f64 lo hi) 2)) |
2 calls:
| 32.0ms | (+.f64 (pow.f64 (/.f64 lo hi) 3) (pow.f64 (/.f64 lo hi) 2)) |
| 10.0ms | (pow.f64 (/.f64 lo hi) 2) |
| 1× | batch-egg-rewrite |
| 430× | log-prod_binary64 |
| 309× | fma-def_binary64 |
| 169× | fma-neg_binary64 |
| 162× | pow1/3_binary64 |
| 162× | expm1-udef_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 23 |
| 1 | 209 | 23 |
| 2 | 2625 | 23 |
| 1× | node limit |
2 calls:
| 44.0ms | (pow.f64 (/.f64 lo hi) 2) |
| 44.0ms | (+.f64 (pow.f64 (/.f64 lo hi) 3) (pow.f64 (/.f64 lo hi) 2)) |
| 1× | egg-herbie |
| 1227× | fma-def_binary64 |
| 495× | unswap-sqr_binary64 |
| 349× | times-frac_binary64 |
| 223× | *-commutative_binary64 |
| 221× | associate-/l*_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 12 | 696 |
| 1 | 32 | 696 |
| 2 | 82 | 597 |
| 3 | 310 | 597 |
| 4 | 1933 | 597 |
| 5 | 3463 | 597 |
| 6 | 4346 | 597 |
| 1× | node limit |
17 alts after pruning (17 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 192 | 14 | 206 |
| Fresh | 12 | 3 | 15 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 205 | 17 | 222 |
| Status | Error | Program |
| 51.3b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 1 (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (pow.f64 (/.f64 lo hi) 3) (pow.f64 (/.f64 lo hi) 2)) 2)))) | |
| 57.5b | (+.f64 (+.f64 (*.f64 (+.f64 1 (/.f64 hi lo)) (/.f64 hi lo)) (-.f64 (pow.f64 (/.f64 hi lo) 3) (*.f64 (/.f64 x lo) (*.f64 (+.f64 1 (/.f64 hi lo)) (/.f64 hi lo))))) (-.f64 1 (/.f64 x lo))) | |
| 51.3b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (/.f64 lo hi) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (pow.f64 (/.f64 lo hi) 3) (pow.f64 (/.f64 lo hi) 2)) 2)))) | |
| 51.9b | (+.f64 (/.f64 hi lo) (+.f64 1 (-.f64 (*.f64 (/.f64 hi lo) (-.f64 (/.f64 hi lo) (/.f64 x lo))) (/.f64 x lo)))) | |
| 51.3b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 lo hi)) 2) 3) (/.f64 lo hi)) (pow.f64 (/.f64 lo hi) 2)) 2)))) | |
| 51.3b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (pow.f64 (/.f64 lo hi) 3) (*.f64 (pow.f64 (cbrt.f64 (/.f64 lo hi)) 2) (*.f64 (cbrt.f64 (/.f64 lo hi)) (/.f64 lo hi)))) 2)))) | |
| 57.2b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (pow.f64 (/.f64 lo hi) 3) 2)))) | |
| 51.3b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (log.f64 (+.f64 1 (expm1.f64 (pow.f64 (/.f64 lo hi) 3)))) (pow.f64 (/.f64 lo hi) 2)) 2)))) | |
| 51.3b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (fma.f64 (*.f64 (/.f64 lo hi) (pow.f64 (cbrt.f64 (/.f64 lo hi)) 2)) (cbrt.f64 (/.f64 lo hi)) (pow.f64 (/.f64 lo hi) 3)) 2)))) | |
| 51.9b | (-.f64 (+.f64 (*.f64 (+.f64 1 (/.f64 hi lo)) (/.f64 hi lo)) (-.f64 1 (*.f64 (/.f64 x lo) (*.f64 (+.f64 1 (/.f64 hi lo)) (/.f64 hi lo))))) (/.f64 x lo)) | |
| 51.3b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (fma.f64 lo (*.f64 (/.f64 1 hi) (pow.f64 (/.f64 lo hi) 2)) (pow.f64 (/.f64 lo hi) 2)) 2)))) | |
| 51.3b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (fma.f64 lo (*.f64 (/.f64 1 hi) (/.f64 lo hi)) (pow.f64 (/.f64 lo hi) 3)) 2)))) | |
| 51.3b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (*.f64 lo (*.f64 (/.f64 1 hi) (pow.f64 (/.f64 lo hi) 2))) (pow.f64 (/.f64 lo hi) 2)) 2)))) | |
| ▶ | 51.3b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (pow.f64 (/.f64 lo hi) 3) (*.f64 lo (*.f64 (/.f64 1 hi) (/.f64 lo hi)))) 2)))) |
| 51.3b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (/.f64 1 (pow.f64 (/.f64 hi lo) 3)) (pow.f64 (/.f64 lo hi) 2)) 2)))) | |
| 51.3b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (pow.f64 (/.f64 lo hi) 3) (+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (pow.f64 (/.f64 lo hi) 2))) (cbrt.f64 (exp.f64 (pow.f64 (/.f64 lo hi) 2))))) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (/.f64 lo hi) 2)))))) 2)))) | |
| 51.3b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (fma.f64 (cbrt.f64 (pow.f64 (/.f64 lo hi) 4)) (*.f64 (pow.f64 (cbrt.f64 (/.f64 lo hi)) 2) (/.f64 lo hi)) (pow.f64 (/.f64 lo hi) 2)) 2)))) |
Compiled 9545 to 4306 computations (54.9% saved)
Found 4 expressions with local error:
| New | Error | Program |
| 0.8b | (pow.f64 (/.f64 lo hi) 3) | |
| ✓ | 1.0b | (*.f64 lo (*.f64 (/.f64 1 hi) (/.f64 lo hi))) |
| 1.7b | (+.f64 (/.f64 lo hi) 1) | |
| ✓ | 1.8b | (+.f64 (pow.f64 (/.f64 lo hi) 3) (*.f64 lo (*.f64 (/.f64 1 hi) (/.f64 lo hi)))) |
2 calls:
| 32.0ms | (+.f64 (pow.f64 (/.f64 lo hi) 3) (*.f64 lo (*.f64 (/.f64 1 hi) (/.f64 lo hi)))) |
| 24.0ms | (*.f64 lo (*.f64 (/.f64 1 hi) (/.f64 lo hi))) |
| 1× | batch-egg-rewrite |
| 467× | fma-def_binary64 |
| 238× | fma-neg_binary64 |
| 190× | expm1-udef_binary64 |
| 190× | log1p-udef_binary64 |
| 171× | log-pow_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 11 | 29 |
| 1 | 246 | 23 |
| 2 | 3289 | 23 |
| 1× | node limit |
2 calls:
| 50.0ms | (*.f64 lo (*.f64 (/.f64 1 hi) (/.f64 lo hi))) |
| 50.0ms | (+.f64 (pow.f64 (/.f64 lo hi) 3) (*.f64 lo (*.f64 (/.f64 1 hi) (/.f64 lo hi)))) |
| 1× | egg-herbie |
| 1227× | fma-def_binary64 |
| 495× | unswap-sqr_binary64 |
| 349× | times-frac_binary64 |
| 223× | *-commutative_binary64 |
| 221× | associate-/l*_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 12 | 696 |
| 1 | 32 | 696 |
| 2 | 82 | 597 |
| 3 | 310 | 597 |
| 4 | 1933 | 597 |
| 5 | 3463 | 597 |
| 6 | 4346 | 597 |
| 1× | node limit |
21 alts after pruning (21 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 196 | 12 | 208 |
| Fresh | 7 | 9 | 16 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 204 | 21 | 225 |
| Status | Error | Program |
| 57.5b | (+.f64 (+.f64 (*.f64 (+.f64 1 (/.f64 hi lo)) (/.f64 hi lo)) (-.f64 (pow.f64 (/.f64 hi lo) 3) (*.f64 (/.f64 x lo) (*.f64 (+.f64 1 (/.f64 hi lo)) (/.f64 hi lo))))) (-.f64 1 (/.f64 x lo))) | |
| 51.3b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 lo hi)) 2) (*.f64 (cbrt.f64 (/.f64 lo hi)) (pow.f64 (/.f64 lo hi) 2))) (*.f64 lo (*.f64 (/.f64 1 hi) (/.f64 lo hi)))) 2)))) | |
| 51.9b | (+.f64 (/.f64 hi lo) (+.f64 1 (-.f64 (*.f64 (/.f64 hi lo) (-.f64 (/.f64 hi lo) (/.f64 x lo))) (/.f64 x lo)))) | |
| 51.3b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 lo hi)) 2) 3) (/.f64 lo hi)) (*.f64 lo (*.f64 (/.f64 1 hi) (/.f64 lo hi)))) 2)))) | |
| 51.3b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (/.f64 lo hi) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (pow.f64 (/.f64 lo hi) 3) (pow.f64 (/.f64 lo hi) 2)) 2)))) | |
| 51.3b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (fma.f64 lo (*.f64 (/.f64 1 hi) (pow.f64 (/.f64 lo hi) 2)) (pow.f64 (/.f64 lo hi) 2)) 2)))) | |
| 51.3b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (/.f64 1 (pow.f64 (/.f64 hi lo) 3)) (*.f64 lo (*.f64 (/.f64 1 hi) (/.f64 lo hi)))) 2)))) | |
| 51.3b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (fma.f64 (*.f64 (/.f64 lo hi) (pow.f64 (pow.f64 (cbrt.f64 (/.f64 lo hi)) 2) 2)) (pow.f64 (cbrt.f64 (/.f64 lo hi)) 2) (pow.f64 (/.f64 lo hi) 2)) 2)))) | |
| 51.3b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 lo hi)) 2) 3) (/.f64 lo hi)) (pow.f64 (/.f64 lo hi) 2)) 2)))) | |
| 57.2b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (pow.f64 (/.f64 lo hi) 3) 2)))) | |
| 51.3b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (cbrt.f64 (pow.f64 (pow.f64 (/.f64 lo hi) 3) 3)) (*.f64 lo (*.f64 (/.f64 1 hi) (/.f64 lo hi)))) 2)))) | |
| 51.3b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (pow.f64 (/.f64 lo hi) 3) (+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (pow.f64 (/.f64 lo hi) 2))) (cbrt.f64 (exp.f64 (pow.f64 (/.f64 lo hi) 2))))) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (/.f64 lo hi) 2)))))) 2)))) | |
| 51.3b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 1 (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (pow.f64 (/.f64 lo hi) 3) (*.f64 lo (*.f64 (/.f64 1 hi) (/.f64 lo hi)))) 2)))) | |
| 51.3b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (pow.f64 (/.f64 lo hi) 3) (pow.f64 (pow.f64 (cbrt.f64 (/.f64 lo hi)) 2) 3)) 2)))) | |
| 51.3b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (fma.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 lo hi)) 2) 2) (*.f64 (pow.f64 (cbrt.f64 (/.f64 lo hi)) 2) (/.f64 lo hi)) (pow.f64 (/.f64 lo hi) 2)) 2)))) | |
| 51.3b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (fma.f64 (pow.f64 (cbrt.f64 (/.f64 lo hi)) 2) (pow.f64 (pow.f64 (cbrt.f64 (/.f64 lo hi)) 2) 2) (pow.f64 (/.f64 lo hi) 3)) 2)))) | |
| 51.3b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (log.f64 (+.f64 1 (expm1.f64 (pow.f64 (/.f64 lo hi) 3)))) (*.f64 lo (*.f64 (/.f64 1 hi) (/.f64 lo hi)))) 2)))) | |
| 51.3b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (/.f64 1 (pow.f64 (/.f64 hi lo) 3)) (pow.f64 (/.f64 lo hi) 2)) 2)))) | |
| 51.3b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (/.f64 lo hi) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (pow.f64 (/.f64 lo hi) 3) (*.f64 lo (*.f64 (/.f64 1 hi) (/.f64 lo hi)))) 2)))) | |
| 51.9b | (-.f64 (+.f64 (*.f64 (+.f64 1 (/.f64 hi lo)) (/.f64 hi lo)) (-.f64 1 (*.f64 (/.f64 x lo) (*.f64 (+.f64 1 (/.f64 hi lo)) (/.f64 hi lo))))) (/.f64 x lo)) | |
| 51.3b | (+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (*.f64 lo (*.f64 (/.f64 1 hi) (pow.f64 (/.f64 lo hi) 2))) (*.f64 lo (*.f64 (/.f64 1 hi) (/.f64 lo hi)))) 2)))) |
Compiled 9507 to 4258 computations (55.2% saved)
Total 0.6b remaining (1.1%)
Threshold costs 0.6b (1.1%)
Compiled 23342 to 13144 computations (43.7% saved)
| 1× | egg-herbie |
| 8× | *-commutative_binary64 |
| 7× | +-commutative_binary64 |
| 4× | sub-neg_binary64 |
| 2× | neg-sub0_binary64 |
| 2× | neg-mul-1_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 26 | 76 |
| 1 | 41 | 76 |
| 2 | 48 | 76 |
| 3 | 52 | 76 |
| 4 | 54 | 76 |
| 1× | saturated |
Compiled 990 to 555 computations (43.9% saved)
Loading profile data...