
Time bar (total: 2.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 10 to 7 computations (30% saved)
ival-sub: 0.0ms (0% of total)ival-div: 0.0ms (0% of total)ival-add: 0.0ms (0% of total)const: 0.0ms (0% of total)| 757.0ms | 8256× | 0 | valid |
ival-div: 78.0ms (39% of total)ival-sub: 59.0ms (29.5% of total)ival-add: 47.0ms (23.5% of total)const: 13.0ms (6.5% of total)backward-pass: 3.0ms (1.5% of total)| 1× | egg-herbie |
| 2980× | fma-neg |
| 638× | fma-define |
| 500× | sub-neg |
| 366× | distribute-lft-out |
| 330× | +-commutative |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 25 | 220 |
| 1 | 56 | 196 |
| 2 | 161 | 196 |
| 3 | 463 | 133 |
| 4 | 845 | 133 |
| 5 | 1493 | 133 |
| 6 | 2927 | 133 |
| 7 | 3527 | 133 |
| 8 | 3552 | 133 |
| 9 | 3570 | 133 |
| 10 | 3570 | 133 |
| 11 | 5243 | 133 |
| 12 | 6216 | 133 |
| 13 | 6442 | 133 |
| 14 | 6507 | 133 |
| 15 | 6571 | 133 |
| 16 | 6571 | 133 |
| 17 | 6594 | 133 |
| 18 | 6602 | 133 |
| 19 | 6602 | 133 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 x (/.f64 (-.f64 y x) #s(literal 2 binary64))) |
(+.f64 x (/.f64 (-.f64 y x) #s(literal 2 binary64))) |
(+.f64 (neg.f64 x) (/.f64 (-.f64 y (neg.f64 x)) #s(literal 2 binary64))) |
(+.f64 x (/.f64 (-.f64 (neg.f64 y) x) #s(literal 2 binary64))) |
(neg.f64 (+.f64 (neg.f64 x) (/.f64 (-.f64 y (neg.f64 x)) #s(literal 2 binary64)))) |
(neg.f64 (+.f64 x (/.f64 (-.f64 (neg.f64 y) x) #s(literal 2 binary64)))) |
(+.f64 y (/.f64 (-.f64 x y) #s(literal 2 binary64))) |
| Outputs |
|---|
(+.f64 x (/.f64 (-.f64 y x) #s(literal 2 binary64))) |
(*.f64 (+.f64 x y) #s(literal 1/2 binary64)) |
(+.f64 x (/.f64 (-.f64 y x) #s(literal 2 binary64))) |
(*.f64 (+.f64 x y) #s(literal 1/2 binary64)) |
(+.f64 (neg.f64 x) (/.f64 (-.f64 y (neg.f64 x)) #s(literal 2 binary64))) |
(*.f64 (-.f64 y x) #s(literal 1/2 binary64)) |
(+.f64 x (/.f64 (-.f64 (neg.f64 y) x) #s(literal 2 binary64))) |
(*.f64 (-.f64 y x) #s(literal -1/2 binary64)) |
(neg.f64 (+.f64 (neg.f64 x) (/.f64 (-.f64 y (neg.f64 x)) #s(literal 2 binary64)))) |
(*.f64 (-.f64 y x) #s(literal -1/2 binary64)) |
(neg.f64 (+.f64 x (/.f64 (-.f64 (neg.f64 y) x) #s(literal 2 binary64)))) |
(*.f64 (-.f64 y x) #s(literal 1/2 binary64)) |
(+.f64 y (/.f64 (-.f64 x y) #s(literal 2 binary64))) |
(*.f64 (+.f64 x y) #s(literal 1/2 binary64)) |
(sort x y)
| Ground Truth | Overpredictions | Example | Underpredictions | Example | Subexpression |
|---|---|---|---|---|---|
| 0 | 0 | - | 0 | - | x |
| 0 | 0 | - | 0 | - | (/.f64 (-.f64 y x) #s(literal 2 binary64)) |
| 0 | 0 | - | 0 | - | y |
| 0 | 0 | - | 0 | - | #s(literal 2 binary64) |
| 0 | 0 | - | 0 | - | (-.f64 y x) |
| 0 | 0 | - | 0 | - | (+.f64 x (/.f64 (-.f64 y x) #s(literal 2 binary64))) |
| 193.0ms | 512× | 256 | valid |
Compiled 51 to 26 computations (49% saved)
ival-div: 7.0ms (42.6% of total)ival-add: 5.0ms (30.4% of total)ival-sub: 3.0ms (18.3% of total)const: 1.0ms (6.1% of total)Compiled 7 to 5 computations (28.6% saved)
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 100.0% | (*.f64 (+.f64 x y) #s(literal 1/2 binary64)) |
Compiled 7 to 5 computations (28.6% saved)
| 24.0ms | 256× | 256 | valid |
Compiled 14 to 7 computations (50% saved)
ival-add: 7.0ms (72.8% of total)ival-mult: 2.0ms (20.8% of total)const: 0.0ms (0% of total)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) #s(literal 1/2 binary64)) |
Compiled 21 to 14 computations (33.3% saved)
Total -0.0b remaining (-∞%)
Threshold costs -0b (-∞%)
| Inputs |
|---|
(*.f64 (+.f64 x y) #s(literal 1/2 binary64)) |
(+.f64 x (/.f64 (-.f64 y x) #s(literal 2 binary64))) |
| Outputs |
|---|
(*.f64 (+.f64 x y) #s(literal 1/2 binary64)) |
3 calls:
| 1.0ms | (+.f64 x (/.f64 (-.f64 y x) #s(literal 2 binary64))) |
| 1.0ms | y |
| 1.0ms | x |
| Accuracy | Segments | Branch |
|---|---|---|
| 100.0% | 1 | x |
| 100.0% | 1 | y |
| 100.0% | 1 | (+.f64 x (/.f64 (-.f64 y x) #s(literal 2 binary64))) |
Compiled 15 to 10 computations (33.3% saved)
| 1× | egg-herbie |
| 1× | *-commutative |
| 1× | +-commutative |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 10 | 19 |
| 1 | 12 | 19 |
| 1× | saturated |
| Inputs |
|---|
(*.f64 (+.f64 x y) #s(literal 1/2 binary64)) |
| Outputs |
|---|
(*.f64 (+.f64 x y) #s(literal 1/2 binary64)) |
| 2980× | fma-neg |
| 638× | fma-define |
| 500× | sub-neg |
| 366× | distribute-lft-out |
| 330× | +-commutative |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 25 | 220 |
| 1 | 56 | 196 |
| 2 | 161 | 196 |
| 3 | 463 | 133 |
| 4 | 845 | 133 |
| 5 | 1493 | 133 |
| 6 | 2927 | 133 |
| 7 | 3527 | 133 |
| 8 | 3552 | 133 |
| 9 | 3570 | 133 |
| 10 | 3570 | 133 |
| 11 | 5243 | 133 |
| 12 | 6216 | 133 |
| 13 | 6442 | 133 |
| 14 | 6507 | 133 |
| 15 | 6571 | 133 |
| 16 | 6571 | 133 |
| 17 | 6594 | 133 |
| 18 | 6602 | 133 |
| 19 | 6602 | 133 |
| 1× | done |
| 1× | node limit |
Compiled 205 to 144 computations (29.8% saved)
(sort x y)
Compiled 74 to 52 computations (29.7% saved)
Loading profile data...