
Time bar (total: 930.0ms)
| 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 8 to 6 computations (25% saved)
| 691.0ms | 7193× | body | 256 | valid |
| 80.0ms | 1063× | body | 256 | infinite |
| 1× | egg-herbie |
| 274× | fma-def |
| 60× | fma-neg |
| 36× | sub-neg |
| 36× | div-sub |
| 28× | distribute-lft-in |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 16 | 60 |
| 1 | 32 | 52 |
| 2 | 58 | 52 |
| 3 | 111 | 52 |
| 4 | 157 | 52 |
| 5 | 232 | 52 |
| 6 | 284 | 52 |
| 7 | 395 | 52 |
| 8 | 397 | 52 |
| 1× | saturated |
| Inputs |
|---|
(/.f64 (*.f64 x y) 2) |
(/.f64 (*.f64 (neg.f64 x) y) 2) |
(/.f64 (*.f64 x (neg.f64 y)) 2) |
(/.f64 (*.f64 y x) 2) |
| Outputs |
|---|
(/.f64 (*.f64 x y) 2) |
(/.f64 x (/.f64 2 y)) |
(*.f64 (/.f64 x 2) y) |
(*.f64 x (/.f64 y 2)) |
(/.f64 (*.f64 (neg.f64 x) y) 2) |
(/.f64 (neg.f64 x) (/.f64 2 y)) |
(/.f64 x (/.f64 -2 y)) |
(*.f64 y (/.f64 x -2)) |
(*.f64 y (*.f64 -1/2 x)) |
(*.f64 y (*.f64 x -1/2)) |
(/.f64 (*.f64 x (neg.f64 y)) 2) |
(/.f64 (neg.f64 x) (/.f64 2 y)) |
(/.f64 x (/.f64 -2 y)) |
(*.f64 y (/.f64 x -2)) |
(*.f64 y (*.f64 -1/2 x)) |
(*.f64 y (*.f64 x -1/2)) |
(/.f64 (*.f64 y x) 2) |
(/.f64 x (/.f64 2 y)) |
(*.f64 (/.f64 x 2) y) |
(*.f64 x (/.f64 y 2)) |
(sort x y)
Compiled 9 to 7 computations (22.2% saved)
| 1× | egg-herbie |
| 6× | *-commutative |
| 4× | associate-/l* |
| 4× | associate-/r/ |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 13 |
| 1 | 10 | 13 |
| 2 | 14 | 13 |
| 3 | 17 | 13 |
| 4 | 18 | 13 |
| 1× | saturated |
| Inputs |
|---|
(/.f64 (*.f64 x y) 2) |
| Outputs |
|---|
(/.f64 (*.f64 x y) 2) |
(/.f64 x (/.f64 2 y)) |
(*.f64 (/.f64 x 2) y) |
(*.f64 y (/.f64 x 2)) |
(*.f64 x (/.f64 y 2)) |
Compiled 27 to 17 computations (37% saved)
1 alts after pruning (1 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 4 | 1 | 5 |
| Fresh | 1 | 0 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 5 | 1 | 6 |
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 100.0% | (*.f64 (/.f64 x 2) y) |
| ▶ | 100.0% | (*.f64 (/.f64 x 2) y) |
Compiled 14 to 10 computations (28.6% saved)
Compiled 14 to 9 computations (35.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 2) y) |
Compiled 19 to 13 computations (31.6% saved)
Total -0.2b remaining (-∞%)
Threshold costs -0.2b (-∞%)
| Inputs |
|---|
(*.f64 (/.f64 x 2) y) |
(/.f64 (*.f64 x y) 2) |
| Outputs |
|---|
(*.f64 (/.f64 x 2) y) |
4 calls:
| 4.0ms | y |
| 3.0ms | x |
| 2.0ms | (*.f64 x y) |
| 2.0ms | (/.f64 (*.f64 x y) 2) |
| Accuracy | Segments | Branch |
|---|---|---|
| 100.0% | 1 | x |
| 100.0% | 1 | y |
| 100.0% | 1 | (/.f64 (*.f64 x y) 2) |
| 100.0% | 1 | (*.f64 x y) |
Compiled 30 to 20 computations (33.3% saved)
| 1× | egg-herbie |
| 2× | *-commutative |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 13 |
| 1 | 8 | 13 |
| 1× | done |
| 1× | saturated |
| Inputs |
|---|
(*.f64 (/.f64 x 2) y) |
| Outputs |
|---|
(*.f64 (/.f64 x 2) y) |
Compiled 7 to 5 computations (28.6% saved)
| 6× | *-commutative |
| 4× | associate-/l* |
| 4× | associate-/r/ |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 13 |
| 1 | 10 | 13 |
| 2 | 14 | 13 |
| 3 | 17 | 13 |
| 4 | 18 | 13 |
| 1× | saturated |
Compiled 12 to 8 computations (33.3% saved)
(sort x y)
Compiled 42 to 30 computations (28.6% saved)
Loading profile data...