
Time bar (total: 1.2s)
| 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 9 to 7 computations (22.2% saved)
ival-sub, time spent: 0.0ms, 0.0% of total-timeival-div, time spent: 0.0ms, 0.0% of total-timeival-fabs, time spent: 0.0ms, 0.0% of total-timeconst, time spent: 0.0ms, 0.0% of total-time| 895.0ms | 8255× | 256 | valid |
| 0.0ms | 1× | 256 | valid |
ival-div, time spent: 70.0ms, 40.0% of total-timeival-sub, time spent: 60.0ms, 34.0% of total-timeival-fabs, time spent: 33.0ms, 19.0% of total-timeconst, time spent: 14.0ms, 8.0% of total-time| 1× | egg-herbie |
| 136× | fma-neg |
| 48× | sub-neg |
| 44× | fma-define |
| 28× | *-commutative |
| 26× | distribute-lft-neg-in |
| Ground Truth | Overpredictions | Example | Underpredictions | Example | Subexpression |
|---|---|---|---|---|---|
| 0 | 0 | - | 0 | - | (/.f64 (fabs.f64 (-.f64 a b)) #s(literal 2 binary64)) |
| 0 | 0 | - | 0 | - | b |
| 0 | 0 | - | 0 | - | (-.f64 a b) |
| 0 | 0 | - | 0 | - | (fabs.f64 (-.f64 a b)) |
| 0 | 0 | - | 0 | - | a |
| 0 | 0 | - | 0 | - | #s(literal 2 binary64) |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 25 | 177 |
| 1 | 52 | 161 |
| 2 | 98 | 161 |
| 3 | 189 | 161 |
| 4 | 266 | 161 |
| 5 | 318 | 161 |
| 6 | 346 | 161 |
| 7 | 358 | 161 |
| 8 | 359 | 161 |
| 1× | saturated |
| Inputs |
|---|
(/.f64 (fabs.f64 (-.f64 a b)) #s(literal 2 binary64)) |
(/.f64 (fabs.f64 (-.f64 a b)) #s(literal 2 binary64)) |
(/.f64 (fabs.f64 (-.f64 (neg.f64 a) b)) #s(literal 2 binary64)) |
(/.f64 (fabs.f64 (-.f64 a (neg.f64 b))) #s(literal 2 binary64)) |
(neg.f64 (/.f64 (fabs.f64 (-.f64 (neg.f64 a) b)) #s(literal 2 binary64))) |
(neg.f64 (/.f64 (fabs.f64 (-.f64 a (neg.f64 b))) #s(literal 2 binary64))) |
(/.f64 (fabs.f64 (-.f64 b a)) #s(literal 2 binary64)) |
| Outputs |
|---|
(/.f64 (fabs.f64 (-.f64 a b)) #s(literal 2 binary64)) |
(/.f64 (fabs.f64 (-.f64 b a)) #s(literal 2 binary64)) |
(*.f64 (fabs.f64 (-.f64 b a)) #s(literal 1/2 binary64)) |
(/.f64 (fabs.f64 (-.f64 a b)) #s(literal 2 binary64)) |
(/.f64 (fabs.f64 (-.f64 b a)) #s(literal 2 binary64)) |
(*.f64 (fabs.f64 (-.f64 b a)) #s(literal 1/2 binary64)) |
(/.f64 (fabs.f64 (-.f64 (neg.f64 a) b)) #s(literal 2 binary64)) |
(/.f64 (fabs.f64 (+.f64 a b)) #s(literal 2 binary64)) |
(*.f64 (fabs.f64 (+.f64 a b)) #s(literal 1/2 binary64)) |
(/.f64 (fabs.f64 (-.f64 a (neg.f64 b))) #s(literal 2 binary64)) |
(/.f64 (fabs.f64 (-.f64 (neg.f64 a) b)) #s(literal 2 binary64)) |
(/.f64 (fabs.f64 (+.f64 a b)) #s(literal 2 binary64)) |
(*.f64 (fabs.f64 (+.f64 a b)) #s(literal 1/2 binary64)) |
(neg.f64 (/.f64 (fabs.f64 (-.f64 (neg.f64 a) b)) #s(literal 2 binary64))) |
(/.f64 (fabs.f64 (-.f64 (neg.f64 a) b)) #s(literal -2 binary64)) |
(/.f64 (fabs.f64 (+.f64 a b)) #s(literal -2 binary64)) |
(*.f64 (fabs.f64 (+.f64 a b)) #s(literal -1/2 binary64)) |
(neg.f64 (/.f64 (fabs.f64 (-.f64 a (neg.f64 b))) #s(literal 2 binary64))) |
(/.f64 (fabs.f64 (-.f64 (neg.f64 a) b)) #s(literal -2 binary64)) |
(/.f64 (fabs.f64 (+.f64 a b)) #s(literal -2 binary64)) |
(*.f64 (fabs.f64 (+.f64 a b)) #s(literal -1/2 binary64)) |
(/.f64 (fabs.f64 (-.f64 b a)) #s(literal 2 binary64)) |
(*.f64 (fabs.f64 (-.f64 b a)) #s(literal 1/2 binary64)) |
(sort a b)
Compiled 46 to 22 computations (52.2% saved)
ival-div, time spent: 6.0ms, 44.0% of total-timeival-sub, time spent: 4.0ms, 29.0% of total-timeival-fabs, time spent: 3.0ms, 22.0% of total-timeconst, time spent: 1.0ms, 7.0% of total-timeCompiled 14 to 8 computations (42.9% saved)
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 100.0% | (/.f64 (fabs.f64 (-.f64 b a)) #s(literal 2 binary64)) |
Compiled 8 to 6 computations (25% saved)
Compiled 19 to 8 computations (57.9% saved)
ival-sub, time spent: 10.0ms, 70.0% of total-timeival-div, time spent: 2.0ms, 14.0% of total-timeival-fabs, time spent: 2.0ms, 14.0% of total-timeconst, time spent: 1.0ms, 7.0% of total-timeCompiled 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 (fabs.f64 (-.f64 b a)) #s(literal 2 binary64)) |
Compiled 22 to 16 computations (27.3% saved)
Total 0b remaining (0%)
Threshold costs 0b (0%)
| Inputs |
|---|
(/.f64 (fabs.f64 (-.f64 a b)) #s(literal 2 binary64)) |
(/.f64 (fabs.f64 (-.f64 b a)) #s(literal 2 binary64)) |
| Outputs |
|---|
(/.f64 (fabs.f64 (-.f64 a b)) #s(literal 2 binary64)) |
5 calls:
| 4.0ms | b |
| 3.0ms | (/.f64 (fabs.f64 (-.f64 a b)) #s(literal 2 binary64)) |
| 3.0ms | (-.f64 a b) |
| 2.0ms | (fabs.f64 (-.f64 a b)) |
| 2.0ms | a |
| Accuracy | Segments | Branch |
|---|---|---|
| 100.0% | 1 | a |
| 100.0% | 1 | b |
| 100.0% | 1 | (/.f64 (fabs.f64 (-.f64 a b)) #s(literal 2 binary64)) |
| 100.0% | 1 | (fabs.f64 (-.f64 a b)) |
| 100.0% | 1 | (-.f64 a b) |
Compiled 25 to 17 computations (32% saved)
| 1× | egg-herbie |
| 8× | sub-neg |
| 8× | +-commutative |
| 4× | *-commutative |
| 4× | neg-sub0 |
| 4× | neg-mul-1 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 12 | 23 |
| 1 | 16 | 23 |
| 2 | 23 | 23 |
| 3 | 28 | 23 |
| 4 | 31 | 23 |
| 5 | 32 | 23 |
| 1× | done |
| 1× | saturated |
| Inputs |
|---|
(/.f64 (fabs.f64 (-.f64 a b)) #s(literal 2 binary64)) |
| Outputs |
|---|
(/.f64 (fabs.f64 (-.f64 a b)) #s(literal 2 binary64)) |
(/.f64 (fabs.f64 (-.f64 b a)) #s(literal 2 binary64)) |
Compiled 8 to 6 computations (25% saved)
(sort a b)
Compiled 64 to 48 computations (25% saved)
Loading profile data...