
Time bar (total: 1.3s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 0 |
| 100% | 99.9% | 0% | 0.1% | 0% | 0% | 0% | 1 |
Compiled 10 to 6 computations (40% saved)
| 997.0ms | 7206× | body | 256 | valid |
| 85.0ms | 1049× | body | 256 | infinite |
| 0.0ms | 1× | body | 512 | valid |
| 1× | egg-herbie |
| 2008× | fma-def |
| 222× | cancel-sign-sub-inv |
| 220× | fma-neg |
| 144× | sub-neg |
| 122× | distribute-lft-neg-in |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 19 | 84 |
| 1 | 59 | 76 |
| 2 | 135 | 68 |
| 3 | 417 | 60 |
| 4 | 1121 | 60 |
| 5 | 2062 | 60 |
| 6 | 2316 | 60 |
| 7 | 2327 | 60 |
| 1× | saturated |
| Inputs |
|---|
(-.f64 (+.f64 x y) (*.f64 x y)) |
(-.f64 (+.f64 (neg.f64 x) y) (*.f64 (neg.f64 x) y)) |
(-.f64 (+.f64 x (neg.f64 y)) (*.f64 x (neg.f64 y))) |
(-.f64 (+.f64 y x) (*.f64 y x)) |
| Outputs |
|---|
(-.f64 (+.f64 x y) (*.f64 x y)) |
(+.f64 x (-.f64 y (*.f64 x y))) |
(fma.f64 x (-.f64 1 y) y) |
(-.f64 (+.f64 (neg.f64 x) y) (*.f64 (neg.f64 x) y)) |
(+.f64 (+.f64 y (neg.f64 x)) (*.f64 x y)) |
(+.f64 (*.f64 x y) (-.f64 y x)) |
(fma.f64 x y (-.f64 y x)) |
(-.f64 (fma.f64 x y y) x) |
(-.f64 (+.f64 x (neg.f64 y)) (*.f64 x (neg.f64 y))) |
(-.f64 (-.f64 x y) (*.f64 x (neg.f64 y))) |
(+.f64 (*.f64 x y) (-.f64 x y)) |
(fma.f64 x y (-.f64 x y)) |
(-.f64 (fma.f64 x y x) y) |
(-.f64 (+.f64 y x) (*.f64 y x)) |
(+.f64 x (-.f64 y (*.f64 x y))) |
(fma.f64 x (-.f64 1 y) y) |
(sort x y)
Compiled 11 to 7 computations (36.4% saved)
| 1× | egg-herbie |
| 796× | fma-def |
| 84× | cancel-sign-sub-inv |
| 82× | sub-neg |
| 64× | distribute-rgt-in |
| 62× | associate-+l- |
Useful iterations: 4 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 19 |
| 1 | 17 | 19 |
| 2 | 37 | 19 |
| 3 | 72 | 17 |
| 4 | 139 | 15 |
| 5 | 267 | 15 |
| 6 | 505 | 15 |
| 7 | 762 | 15 |
| 8 | 936 | 15 |
| 9 | 964 | 15 |
| 10 | 965 | 15 |
| 1× | saturated |
| Inputs |
|---|
(-.f64 (+.f64 x y) (*.f64 x y)) |
| Outputs |
|---|
(-.f64 (+.f64 x y) (*.f64 x y)) |
(+.f64 x (-.f64 y (*.f64 x y))) |
(+.f64 y (-.f64 x (*.f64 x y))) |
(fma.f64 (fma.f64 -1 y 1) x y) |
(fma.f64 x (-.f64 1 y) y) |
Compiled 36 to 16 computations (55.6% saved)
2 alts after pruning (2 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 4 | 1 | 5 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 4 | 2 | 6 |
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 100.0% | (-.f64 (+.f64 x y) (*.f64 x y)) |
| ▶ | 100.0% | (-.f64 (+.f64 x y) (*.f64 x y)) |
Compiled 18 to 10 computations (44.4% saved)
Compiled 18 to 6 computations (66.7% saved)
Compiled 2 to 2 computations (0% saved)
1 alts after pruning (0 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 0 | 0 | 0 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 0 | 1 | 1 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 100.0% | (-.f64 (+.f64 x y) (*.f64 x y)) |
Compiled 18 to 10 computations (44.4% saved)
| 1× | egg-herbie |
| 10× | +-commutative |
| 8× | sub-neg |
| 8× | *-commutative |
| 6× | neg-mul-1 |
| 6× | neg-sub0 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 19 |
| 1 | 15 | 19 |
| 2 | 27 | 19 |
| 3 | 33 | 19 |
| 4 | 37 | 19 |
| 5 | 38 | 19 |
| 1× | done |
| 1× | saturated |
| Inputs |
|---|
(-.f64 (+.f64 x y) (*.f64 x y)) |
| Outputs |
|---|
(-.f64 (+.f64 x y) (*.f64 x y)) |
Compiled 9 to 5 computations (44.4% saved)
(sort x y)
Compiled 54 to 30 computations (44.4% saved)
Loading profile data...