Time bar (total: 2.0s)
| 1× | search |
| True | Other | False | Iter |
|---|---|---|---|
| 0% | 99.9% | 0.1% | 0 |
| 0% | 99.9% | 0.1% | 1 |
| 0% | 99.9% | 0.1% | 2 |
| 0% | 99.9% | 0.1% | 3 |
| 0% | 99.9% | 0.1% | 4 |
| 25% | 74.9% | 0.1% | 5 |
| 25% | 50% | 25.1% | 6 |
| 25% | 31.2% | 43.8% | 7 |
| 31.2% | 25% | 43.8% | 8 |
| 39% | 17.2% | 43.8% | 9 |
| 42.9% | 13.3% | 43.8% | 10 |
| 47.2% | 9% | 43.8% | 11 |
| 49.4% | 6.8% | 43.8% | 12 |
| 51.6% | 4.6% | 43.8% | 13 |
| 52.7% | 3.5% | 43.8% | 14 |
Compiled 18 to 8 computations (55.6% saved)
| 706.0ms | 8256× | body | 128 | valid |
| 1.0ms | 7× | body | 128 | invalid |
Compiled 53 to 23 computations (56.6% saved)
| 1× | egg-herbie |
| 28× | fma-def_binary64 |
| 4× | *-commutative_binary64 |
| 4× | associate-+l+_binary64 |
| 4× | associate-*r*_binary64 |
| 3× | +-commutative_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 20 |
| 1 | 15 | 15 |
| 2 | 30 | 11 |
| 3 | 51 | 11 |
| 4 | 69 | 11 |
| 5 | 75 | 11 |
| 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 | (fma.f64 y (*.f64 y 3) (*.f64 x x)) |
| 0.1b | (+.f64 (+.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 y y)) (*.f64 y y)) |
Compiled 79 to 36 computations (54.4% saved)
Found 1 expressions with local error:
| New | Error | Program |
| ✓ | 0.1b | (fma.f64 y (*.f64 y 3) (*.f64 x x)) |
1 calls:
| 7.0ms | (fma.f64 y (*.f64 y 3) (*.f64 x x)) |
| 1× | batch-egg-rewrite |
| 571× | log1p-expm1-u_binary64 |
| 571× | expm1-log1p-u_binary64 |
| 303× | log-prod_binary64 |
| 121× | expm1-udef_binary64 |
| 121× | log1p-udef_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 11 |
| 1 | 140 | 11 |
| 2 | 1600 | 11 |
| 1× | node limit |
1 calls:
| 30.0ms | (fma.f64 y (*.f64 y 3) (*.f64 x x)) |
| 1× | egg-herbie |
| 632× | sqr-pow_binary64 |
| 591× | associate-*l*_binary64 |
| 372× | cube-prod_binary64 |
| 330× | associate-*r*_binary64 |
| 284× | fabs-mul_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 231 |
| 1 | 20 | 231 |
| 2 | 36 | 231 |
| 3 | 67 | 231 |
| 4 | 152 | 231 |
| 5 | 441 | 231 |
| 6 | 1734 | 231 |
| 7 | 2049 | 231 |
| 8 | 2327 | 231 |
| 9 | 2578 | 231 |
| 10 | 2919 | 231 |
| 11 | 3416 | 231 |
| 12 | 4073 | 231 |
| 13 | 4861 | 231 |
| 1× | node limit |
5 alts after pruning (4 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 31 | 4 | 35 |
| Fresh | 1 | 0 | 1 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 32 | 5 | 37 |
| Status | Error | Program |
| ✓ | 0.1b | (fma.f64 y (*.f64 y 3) (*.f64 x x)) |
| 1.2b | (*.f64 (cbrt.f64 (fma.f64 y (*.f64 y 3) (*.f64 x x))) (pow.f64 (cbrt.f64 (fma.f64 y (*.f64 y 3) (*.f64 x x))) 2)) | |
| ▶ | 0.1b | (fma.f64 x x (*.f64 3 (*.f64 y y))) |
| 0.3b | (pow.f64 (hypot.f64 x (sqrt.f64 (*.f64 y (*.f64 y 3)))) 2) | |
| 36.2b | (/.f64 (-.f64 (*.f64 (*.f64 y (*.f64 y 3)) (*.f64 y (*.f64 y 3))) (pow.f64 x 4)) (-.f64 (*.f64 y (*.f64 y 3)) (*.f64 x x))) |
Compiled 608 to 357 computations (41.3% saved)
Found 1 expressions with local error:
| New | Error | Program |
| ✓ | 0.2b | (*.f64 3 (*.f64 y y)) |
1 calls:
| 4.0ms | (*.f64 3 (*.f64 y y)) |
| 1× | batch-egg-rewrite |
| 400× | log1p-expm1-u_binary64 |
| 400× | expm1-log1p-u_binary64 |
| 347× | pow1_binary64 |
| 278× | unpow-prod-down_binary64 |
| 221× | log-prod_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 5 | 7 |
| 1 | 102 | 7 |
| 2 | 1149 | 7 |
| 1× | node limit |
1 calls:
| 28.0ms | (*.f64 3 (*.f64 y y)) |
| 1× | egg-herbie |
| 609× | sqr-pow_binary64 |
| 451× | associate-*l*_binary64 |
| 434× | unswap-sqr_binary64 |
| 281× | cube-prod_binary64 |
| 271× | fabs-mul_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 6 | 84 |
| 1 | 12 | 84 |
| 2 | 23 | 84 |
| 3 | 44 | 84 |
| 4 | 106 | 84 |
| 5 | 315 | 84 |
| 6 | 1235 | 84 |
| 7 | 2116 | 84 |
| 8 | 2280 | 84 |
| 9 | 2464 | 84 |
| 10 | 2672 | 84 |
| 11 | 2963 | 84 |
| 12 | 3356 | 84 |
| 13 | 3834 | 84 |
| 14 | 4395 | 84 |
| 1× | node limit |
4 alts after pruning (2 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 24 | 1 | 25 |
| Fresh | 2 | 1 | 3 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 1 | 1 |
| Total | 26 | 4 | 30 |
| Status | Error | Program |
| 13.9b | (fma.f64 x x (sqrt.f64 (*.f64 9 (pow.f64 y 4)))) | |
| ✓ | 0.1b | (fma.f64 x x (*.f64 3 (*.f64 y y))) |
| ▶ | 0.3b | (pow.f64 (hypot.f64 x (sqrt.f64 (*.f64 y (*.f64 y 3)))) 2) |
| ✓ | 0.1b | (fma.f64 y (*.f64 y 3) (*.f64 x x)) |
Compiled 362 to 222 computations (38.7% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 0.0b | (hypot.f64 x (sqrt.f64 (*.f64 y (*.f64 y 3)))) |
| ✓ | 0.2b | (*.f64 y (*.f64 y 3)) |
| ✓ | 0.2b | (pow.f64 (hypot.f64 x (sqrt.f64 (*.f64 y (*.f64 y 3)))) 2) |
| ✓ | 18.5b | (sqrt.f64 (*.f64 y (*.f64 y 3))) |
4 calls:
| 70.0ms | (pow.f64 (hypot.f64 x (sqrt.f64 (*.f64 y (*.f64 y 3)))) 2) |
| 16.0ms | (hypot.f64 x (sqrt.f64 (*.f64 y (*.f64 y 3)))) |
| 3.0ms | (sqrt.f64 (*.f64 y (*.f64 y 3))) |
| 2.0ms | (*.f64 y (*.f64 y 3)) |
| 1× | batch-egg-rewrite |
| 768× | log1p-expm1-u_binary64 |
| 768× | expm1-log1p-u_binary64 |
| 191× | prod-diff_binary64 |
| 94× | add-sqr-sqrt_binary64 |
| 89× | add-log-exp_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 10 | 43 |
| 1 | 206 | 33 |
| 2 | 2230 | 33 |
| 1× | node limit |
4 calls:
| 45.0ms | (hypot.f64 x (sqrt.f64 (*.f64 y (*.f64 y 3)))) |
| 45.0ms | (*.f64 y (*.f64 y 3)) |
| 45.0ms | (pow.f64 (hypot.f64 x (sqrt.f64 (*.f64 y (*.f64 y 3)))) 2) |
| 45.0ms | (sqrt.f64 (*.f64 y (*.f64 y 3))) |
| 1× | egg-herbie |
| 714× | times-frac_binary64 |
| 328× | associate-/l*_binary64 |
| 300× | associate-*r*_binary64 |
| 291× | associate-/r*_binary64 |
| 262× | associate-*l*_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 65 | 1351 |
| 1 | 214 | 1062 |
| 2 | 791 | 1038 |
| 1× | node limit |
6 alts after pruning (3 fresh and 3 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 121 | 2 | 123 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 2 | 2 |
| Total | 121 | 6 | 127 |
| Status | Error | Program |
| 13.9b | (fma.f64 x x (sqrt.f64 (*.f64 9 (pow.f64 y 4)))) | |
| ✓ | 0.1b | (fma.f64 x x (*.f64 3 (*.f64 y y))) |
| ▶ | 0.7b | (*.f64 (sqrt.f64 (hypot.f64 x (*.f64 y (sqrt.f64 3)))) (*.f64 (sqrt.f64 (hypot.f64 x (*.f64 y (sqrt.f64 3)))) (hypot.f64 x (*.f64 y (sqrt.f64 3))))) |
| 28.5b | (*.f64 (pow.f64 y 2) (pow.f64 (sqrt.f64 3) 2)) | |
| ✓ | 0.3b | (pow.f64 (hypot.f64 x (sqrt.f64 (*.f64 y (*.f64 y 3)))) 2) |
| ✓ | 0.1b | (fma.f64 y (*.f64 y 3) (*.f64 x x)) |
Compiled 2034 to 1522 computations (25.2% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 0.1b | (sqrt.f64 (hypot.f64 x (*.f64 y (sqrt.f64 3)))) |
| ✓ | 0.3b | (*.f64 (sqrt.f64 (hypot.f64 x (*.f64 y (sqrt.f64 3)))) (hypot.f64 x (*.f64 y (sqrt.f64 3)))) |
| ✓ | 0.3b | (*.f64 (sqrt.f64 (hypot.f64 x (*.f64 y (sqrt.f64 3)))) (*.f64 (sqrt.f64 (hypot.f64 x (*.f64 y (sqrt.f64 3)))) (hypot.f64 x (*.f64 y (sqrt.f64 3))))) |
| ✓ | 0.4b | (*.f64 y (sqrt.f64 3)) |
4 calls:
| 76.0ms | (*.f64 (sqrt.f64 (hypot.f64 x (*.f64 y (sqrt.f64 3)))) (*.f64 (sqrt.f64 (hypot.f64 x (*.f64 y (sqrt.f64 3)))) (hypot.f64 x (*.f64 y (sqrt.f64 3))))) |
| 28.0ms | (*.f64 (sqrt.f64 (hypot.f64 x (*.f64 y (sqrt.f64 3)))) (hypot.f64 x (*.f64 y (sqrt.f64 3)))) |
| 20.0ms | (sqrt.f64 (hypot.f64 x (*.f64 y (sqrt.f64 3)))) |
| 3.0ms | (*.f64 y (sqrt.f64 3)) |
| 1× | batch-egg-rewrite |
| 730× | log1p-expm1-u_binary64 |
| 730× | expm1-log1p-u_binary64 |
| 153× | log1p-udef_binary64 |
| 93× | prod-diff_binary64 |
| 89× | add-sqr-sqrt_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 10 | 59 |
| 1 | 200 | 40 |
| 2 | 2130 | 40 |
| 1× | node limit |
4 calls:
| 44.0ms | (sqrt.f64 (hypot.f64 x (*.f64 y (sqrt.f64 3)))) |
| 44.0ms | (*.f64 (sqrt.f64 (hypot.f64 x (*.f64 y (sqrt.f64 3)))) (hypot.f64 x (*.f64 y (sqrt.f64 3)))) |
| 44.0ms | (*.f64 (sqrt.f64 (hypot.f64 x (*.f64 y (sqrt.f64 3)))) (*.f64 (sqrt.f64 (hypot.f64 x (*.f64 y (sqrt.f64 3)))) (hypot.f64 x (*.f64 y (sqrt.f64 3))))) |
| 44.0ms | (*.f64 y (sqrt.f64 3)) |
| 1× | egg-herbie |
| 703× | associate-*r*_binary64 |
| 679× | associate-*l*_binary64 |
| 574× | fma-neg_binary64 |
| 354× | fma-def_binary64 |
| 221× | *-commutative_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 123 | 1077 |
| 1 | 341 | 872 |
| 2 | 1064 | 839 |
| 3 | 4739 | 839 |
| 1× | node limit |
7 alts after pruning (4 fresh and 3 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 174 | 2 | 176 |
| Fresh | 0 | 2 | 2 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 3 | 3 |
| Total | 175 | 7 | 182 |
| Status | Error | Program |
| 13.9b | (fma.f64 x x (sqrt.f64 (*.f64 9 (pow.f64 y 4)))) | |
| ✓ | 0.1b | (fma.f64 x x (*.f64 3 (*.f64 y y))) |
| 0.9b | (*.f64 (sqrt.f64 (hypot.f64 x (*.f64 y (sqrt.f64 3)))) (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (hypot.f64 x (*.f64 y (sqrt.f64 3))))) (cbrt.f64 (hypot.f64 x (*.f64 y (sqrt.f64 3))))) (hypot.f64 x (*.f64 y (sqrt.f64 3))))) | |
| 28.5b | (*.f64 (pow.f64 y 2) (pow.f64 (sqrt.f64 3) 2)) | |
| ✓ | 0.3b | (pow.f64 (hypot.f64 x (sqrt.f64 (*.f64 y (*.f64 y 3)))) 2) |
| 0.6b | (*.f64 (sqrt.f64 (hypot.f64 x (*.f64 y (sqrt.f64 3)))) (*.f64 (sqrt.f64 (hypot.f64 x (*.f64 y (sqrt.f64 3)))) (hypot.f64 x (sqrt.f64 (*.f64 3 (*.f64 y y)))))) | |
| ✓ | 0.1b | (fma.f64 y (*.f64 y 3) (*.f64 x x)) |
Compiled 4929 to 3720 computations (24.5% saved)
Total 0.1b remaining (92.8%)
Threshold costs 0.1b (92.8%)
Compiled 3063 to 2256 computations (26.3% saved)
| 1× | egg-herbie |
| 1× | *-commutative_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 11 |
| 1 | 8 | 11 |
| 1× | saturated |
Compiled 132 to 94 computations (28.8% saved)
Loading profile data...