
Time bar (total: 13.9s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 0.1% | 99.9% | 0% | 0% | 0% | 0 |
| 0% | 0% | 0.1% | 99.9% | 0% | 0% | 0% | 1 |
| 0% | 0% | 0.1% | 99.9% | 0% | 0% | 0% | 2 |
| 50% | 0.1% | 0.1% | 99.9% | 0% | 0% | 0% | 3 |
| 50% | 0.1% | 0.1% | 99.9% | 0% | 0% | 0% | 4 |
| 75% | 0.1% | 0% | 99.9% | 0% | 0% | 0% | 5 |
| 75% | 0.1% | 0% | 99.9% | 0% | 0% | 0% | 6 |
| 87.5% | 0.1% | 0% | 99.9% | 0% | 0% | 0% | 7 |
| 87.5% | 0.1% | 0% | 99.9% | 0% | 0% | 0% | 8 |
| 93.8% | 0.1% | 0% | 99.9% | 0% | 0% | 0% | 9 |
| 93.8% | 0.1% | 0% | 99.9% | 0% | 0% | 0% | 10 |
| 96.9% | 0.1% | 0% | 99.9% | 0% | 0% | 0% | 11 |
| 96.9% | 0.1% | 0% | 99.9% | 0% | 0% | 0% | 12 |
Compiled 31 to 25 computations (19.4% saved)
ival-sub, time spent: 9.0ms, 34.0% of total-timeival-<=, time spent: 6.0ms, 22.0% of total-timeival-mult, time spent: 4.0ms, 15.0% of total-timeival-log, time spent: 3.0ms, 11.0% of total-timeival-div, time spent: 3.0ms, 11.0% of total-timeconst, time spent: 1.0ms, 4.0% of total-timeival-and, time spent: 1.0ms, 4.0% of total-time| 2.4s | 8255× | 0 | valid |
| 0.0ms | 1× | 0 | valid |
ival-sub, time spent: 306.0ms, 26.0% of total-timeival-div, time spent: 234.0ms, 20.0% of total-timeival-log, time spent: 189.0ms, 16.0% of total-timeival-<=, time spent: 159.0ms, 14.0% of total-timeival-mult, time spent: 150.0ms, 13.0% of total-timeconst, time spent: 75.0ms, 6.0% of total-timeival-and, time spent: 44.0ms, 4.0% of total-time| 1× | egg-herbie |
| 3500× | fma-neg |
| 903× | fma-define |
| 480× | unsub-neg |
| 455× | sub-neg |
| 351× | distribute-neg-in |
| Ground Truth | Overpredictions | Example | Underpredictions | Example | Subexpression |
|---|---|---|---|---|---|
| 0 | 0 | - | 0 | - | (-.f32 u 1/4) |
| 0 | 0 | - | 0 | - | 1/4 |
| 0 | 0 | - | 0 | - | s |
| 0 | 0 | - | 0 | - | u |
| 0 | 0 | - | 0 | - | (/.f32 (-.f32 u 1/4) 3/4) |
| 0 | 0 | - | 0 | - | (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4)) |
| 0 | 0 | - | 0 | - | 3 |
| 0 | 0 | - | 0 | - | (*.f32 3 s) |
| 0 | 0 | - | 0 | - | 3/4 |
| 0 | 0 | - | 0 | - | 1 |
| 0 | 0 | - | 0 | - | (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4))) |
| 0 | 0 | - | 0 | - | (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4)))) |
| 0 | 0 | - | 0 | - | (*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4))))) |
Useful iterations: 4 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 38 | 331 |
| 1 | 105 | 261 |
| 2 | 258 | 245 |
| 3 | 633 | 229 |
| 4 | 1162 | 217 |
| 5 | 1955 | 217 |
| 6 | 2676 | 217 |
| 7 | 3662 | 217 |
| 8 | 5168 | 217 |
| 9 | 6476 | 217 |
| 10 | 7069 | 217 |
| 11 | 7480 | 217 |
| 12 | 7644 | 217 |
| 13 | 7747 | 217 |
| 14 | 7762 | 217 |
| 15 | 7763 | 217 |
| 16 | 7763 | 217 |
| 17 | 7813 | 217 |
| 18 | 7825 | 217 |
| 19 | 7825 | 217 |
| 20 | 7977 | 217 |
| 21 | 7977 | 217 |
| 1× | node limit |
| Inputs |
|---|
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4))))) |
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4))))) |
(*.f32 (*.f32 3 (neg.f32 s)) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4))))) |
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 (neg.f32 u) 1/4) 3/4))))) |
(neg.f32 (*.f32 (*.f32 3 (neg.f32 s)) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4)))))) |
(neg.f32 (*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 (neg.f32 u) 1/4) 3/4)))))) |
(*.f32 (*.f32 3 u) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 s 1/4) 3/4))))) |
| Outputs |
|---|
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4))))) |
(*.f32 (*.f32 3 s) (neg.f32 (log.f32 (-.f32 1 (-.f32 (/.f32 u 3/4) 1/3))))) |
(*.f32 (*.f32 s -3) (log1p.f32 (/.f32 (+.f32 u -1/4) -3/4))) |
(*.f32 s (*.f32 -3 (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3)))) |
(*.f32 s (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)) |
(*.f32 s (*.f32 (log.f32 (fma.f32 u -4/3 4/3)) -3)) |
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4))))) |
(*.f32 (*.f32 3 s) (neg.f32 (log.f32 (-.f32 1 (-.f32 (/.f32 u 3/4) 1/3))))) |
(*.f32 (*.f32 s -3) (log1p.f32 (/.f32 (+.f32 u -1/4) -3/4))) |
(*.f32 s (*.f32 -3 (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3)))) |
(*.f32 s (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)) |
(*.f32 s (*.f32 (log.f32 (fma.f32 u -4/3 4/3)) -3)) |
(*.f32 (*.f32 3 (neg.f32 s)) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4))))) |
(*.f32 3 (*.f32 (neg.f32 s) (neg.f32 (log.f32 (-.f32 1 (-.f32 (/.f32 u 3/4) 1/3)))))) |
(*.f32 (neg.f32 (log1p.f32 (/.f32 (+.f32 u -1/4) -3/4))) (*.f32 s -3)) |
(*.f32 3 (*.f32 s (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3)))) |
(*.f32 3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3)))) |
(*.f32 3 (*.f32 s (log.f32 (fma.f32 u -4/3 4/3)))) |
(*.f32 (*.f32 3 s) (log.f32 (fma.f32 u -4/3 4/3))) |
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 (neg.f32 u) 1/4) 3/4))))) |
(*.f32 (*.f32 3 s) (neg.f32 (log.f32 (-.f32 1 (-.f32 (/.f32 (neg.f32 u) 3/4) 1/3))))) |
(*.f32 (*.f32 3 s) (neg.f32 (log1p.f32 (/.f32 (fma.f32 -1 u -1/4) -3/4)))) |
(*.f32 s (*.f32 -3 (log1p.f32 (/.f32 (-.f32 -1/4 u) -3/4)))) |
(*.f32 s (*.f32 (log.f32 (+.f32 (*.f32 u 4/3) 4/3)) -3)) |
(*.f32 s (*.f32 (log.f32 (fma.f32 u 4/3 4/3)) -3)) |
(neg.f32 (*.f32 (*.f32 3 (neg.f32 s)) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4)))))) |
(*.f32 (*.f32 3 s) (neg.f32 (log.f32 (-.f32 1 (-.f32 (/.f32 u 3/4) 1/3))))) |
(*.f32 (*.f32 s -3) (log1p.f32 (/.f32 (+.f32 u -1/4) -3/4))) |
(*.f32 s (*.f32 -3 (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3)))) |
(*.f32 s (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)) |
(*.f32 s (*.f32 (log.f32 (fma.f32 u -4/3 4/3)) -3)) |
(neg.f32 (*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 (neg.f32 u) 1/4) 3/4)))))) |
(*.f32 (*.f32 3 (neg.f32 s)) (neg.f32 (log.f32 (-.f32 1 (-.f32 (/.f32 (neg.f32 u) 3/4) 1/3))))) |
(*.f32 s (*.f32 3 (log1p.f32 (/.f32 (fma.f32 -1 u -1/4) -3/4)))) |
(*.f32 3 (*.f32 s (log1p.f32 (/.f32 (-.f32 -1/4 u) -3/4)))) |
(*.f32 3 (*.f32 s (log.f32 (+.f32 (*.f32 u 4/3) 4/3)))) |
(*.f32 3 (*.f32 s (log.f32 (fma.f32 u 4/3 4/3)))) |
(*.f32 (*.f32 3 u) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 s 1/4) 3/4))))) |
(*.f32 (*.f32 3 u) (neg.f32 (log.f32 (-.f32 1 (-.f32 (/.f32 s 3/4) 1/3))))) |
(*.f32 (*.f32 3 u) (neg.f32 (log1p.f32 (/.f32 (+.f32 s -1/4) -3/4)))) |
(*.f32 u (*.f32 -3 (log1p.f32 (-.f32 (/.f32 s -3/4) -1/3)))) |
(*.f32 u (*.f32 (log1p.f32 (-.f32 1/3 (*.f32 s 4/3))) -3)) |
(*.f32 u (*.f32 (log1p.f32 (fma.f32 s -4/3 1/3)) -3)) |
(*.f32 (log1p.f32 (fma.f32 s -4/3 1/3)) (*.f32 u -3)) |
(negabs s)
Compiled 136 to 114 computations (16.2% saved)
ival-sub, time spent: 917.0ms, 60.0% of total-timeival-div, time spent: 281.0ms, 18.0% of total-timeival-log, time spent: 140.0ms, 9.0% of total-timeival-mult, time spent: 97.0ms, 6.0% of total-timeconst, time spent: 84.0ms, 6.0% of total-timeCompiled 53 to 43 computations (18.9% saved)
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 98.4% | (*.f32 (*.f32 s -3) (log1p.f32 (/.f32 (+.f32 u -1/4) -3/4))) |
| ▶ | 95.8% | (*.f32 (*.f32 3 s) (neg.f32 (log.f32 (-.f32 1 (-.f32 (/.f32 u 3/4) 1/3))))) |
| ▶ | 96.3% | (*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4))))) |
| 98.0% | (*.f32 s (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)) | |
| ▶ | 97.3% | (*.f32 s (*.f32 (log.f32 (fma.f32 u -4/3 4/3)) -3)) |
| ▶ | 97.0% | (*.f32 s (*.f32 -3 (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3)))) |
Compiled 154 to 130 computations (15.6% saved)
Compiled 213 to 170 computations (20.2% saved)
composed, time spent: 718.0ms, 21.0% of total-timeival-add, time spent: 657.0ms, 19.0% of total-timeival-sub, time spent: 656.0ms, 19.0% of total-timeival-log, time spent: 485.0ms, 14.0% of total-timeival-mult, time spent: 388.0ms, 11.0% of total-timeival-div, time spent: 307.0ms, 9.0% of total-timeconst, time spent: 152.0ms, 4.0% of total-timeival-neg, time spent: 20.0ms, 1.0% of total-timeCompiled 2 to 2 computations (0% saved)
6 alts after pruning (1 fresh and 5 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 0 | 0 | 0 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 5 | 5 |
| Done | 0 | 0 | 0 |
| Total | 0 | 6 | 6 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 98.4% | (*.f32 (*.f32 s -3) (log1p.f32 (/.f32 (+.f32 u -1/4) -3/4))) |
| ✓ | 95.8% | (*.f32 (*.f32 3 s) (neg.f32 (log.f32 (-.f32 1 (-.f32 (/.f32 u 3/4) 1/3))))) |
| ✓ | 96.3% | (*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4))))) |
| ▶ | 98.0% | (*.f32 s (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)) |
| ✓ | 97.3% | (*.f32 s (*.f32 (log.f32 (fma.f32 u -4/3 4/3)) -3)) |
| ✓ | 97.0% | (*.f32 s (*.f32 -3 (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3)))) |
Compiled 77 to 65 computations (15.6% saved)
Compiled 33 to 26 computations (21.2% saved)
composed, time spent: 595.0ms, 48.0% of total-timeival-add, time spent: 315.0ms, 25.0% of total-timeival-mult, time spent: 190.0ms, 15.0% of total-timeival-log, time spent: 115.0ms, 9.0% of total-timeconst, time spent: 35.0ms, 3.0% of total-timeCompiled 2 to 2 computations (0% saved)
6 alts after pruning (0 fresh and 6 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 0 | 0 | 0 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 5 | 5 |
| Total | 0 | 6 | 6 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 98.4% | (*.f32 (*.f32 s -3) (log1p.f32 (/.f32 (+.f32 u -1/4) -3/4))) |
| ✓ | 95.8% | (*.f32 (*.f32 3 s) (neg.f32 (log.f32 (-.f32 1 (-.f32 (/.f32 u 3/4) 1/3))))) |
| ✓ | 96.3% | (*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4))))) |
| ✓ | 98.0% | (*.f32 s (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)) |
| ✓ | 97.3% | (*.f32 s (*.f32 (log.f32 (fma.f32 u -4/3 4/3)) -3)) |
| ✓ | 97.0% | (*.f32 s (*.f32 -3 (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3)))) |
Compiled 144 to 120 computations (16.7% saved)
| Inputs |
|---|
(*.f32 s (*.f32 -3 (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3)))) |
(*.f32 (*.f32 s -3) (log1p.f32 (/.f32 (+.f32 u -1/4) -3/4))) |
(*.f32 (*.f32 3 s) (neg.f32 (log.f32 (-.f32 1 (-.f32 (/.f32 u 3/4) 1/3))))) |
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4))))) |
(*.f32 s (*.f32 (log.f32 (fma.f32 u -4/3 4/3)) -3)) |
(*.f32 s (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)) |
| Outputs |
|---|
(*.f32 (*.f32 s -3) (log1p.f32 (/.f32 (+.f32 u -1/4) -3/4))) |
9 calls:
| 10.0ms | (/.f32 (-.f32 u 1/4) 3/4) |
| 7.0ms | (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4)))) |
| 6.0ms | u |
| 5.0ms | (*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4))))) |
| 5.0ms | (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4))) |
| Accuracy | Segments | Branch |
|---|---|---|
| 98.4% | 1 | s |
| 98.4% | 1 | u |
| 98.4% | 1 | (*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4))))) |
| 98.4% | 1 | (*.f32 3 s) |
| 98.4% | 1 | (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4)))) |
| 98.4% | 1 | (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4))) |
| 98.4% | 1 | (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4)) |
| 98.4% | 1 | (/.f32 (-.f32 u 1/4) 3/4) |
| 98.4% | 1 | (-.f32 u 1/4) |
Compiled 71 to 61 computations (14.1% saved)
Total 0.0b remaining (0%)
Threshold costs 0b (0%)
| Inputs |
|---|
(*.f32 s (*.f32 -3 (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3)))) |
| Outputs |
|---|
(*.f32 s (*.f32 -3 (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3)))) |
2 calls:
| 3.0ms | s |
| 3.0ms | u |
| Accuracy | Segments | Branch |
|---|---|---|
| 97.0% | 1 | u |
| 97.0% | 1 | s |
Compiled 6 to 4 computations (33.3% saved)
| 1× | egg-herbie |
| 5× | *-commutative |
| 2× | +-commutative |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 23 | 70 |
| 1 | 30 | 70 |
| 1× | done |
| 1× | saturated |
| Inputs |
|---|
(*.f32 (*.f32 s -3) (log1p.f32 (/.f32 (+.f32 u -1/4) -3/4))) |
(*.f32 s (*.f32 -3 (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3)))) |
| Outputs |
|---|
(*.f32 (*.f32 s -3) (log1p.f32 (/.f32 (+.f32 u -1/4) -3/4))) |
(*.f32 s (*.f32 -3 (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3)))) |
Compiled 24 to 20 computations (16.7% saved)
| 3500× | fma-neg |
| 3500× | fma-neg |
| 903× | fma-define |
| 903× | fma-define |
| 480× | unsub-neg |
Useful iterations: 4 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 38 | 331 |
| 1 | 105 | 261 |
| 2 | 258 | 245 |
| 3 | 633 | 229 |
| 4 | 1162 | 217 |
| 5 | 1955 | 217 |
| 6 | 2676 | 217 |
| 7 | 3662 | 217 |
| 8 | 5168 | 217 |
| 9 | 6476 | 217 |
| 10 | 7069 | 217 |
| 11 | 7480 | 217 |
| 12 | 7644 | 217 |
| 13 | 7747 | 217 |
| 14 | 7762 | 217 |
| 15 | 7763 | 217 |
| 16 | 7763 | 217 |
| 17 | 7813 | 217 |
| 18 | 7825 | 217 |
| 19 | 7825 | 217 |
| 20 | 7977 | 217 |
| 21 | 7977 | 217 |
| 0 | 38 | 331 |
| 1 | 105 | 261 |
| 2 | 258 | 245 |
| 3 | 633 | 229 |
| 4 | 1162 | 217 |
| 5 | 1955 | 217 |
| 6 | 2676 | 217 |
| 7 | 3662 | 217 |
| 8 | 5168 | 217 |
| 9 | 6476 | 217 |
| 10 | 7069 | 217 |
| 11 | 7480 | 217 |
| 12 | 7644 | 217 |
| 13 | 7747 | 217 |
| 14 | 7762 | 217 |
| 15 | 7763 | 217 |
| 16 | 7763 | 217 |
| 17 | 7813 | 217 |
| 18 | 7825 | 217 |
| 19 | 7825 | 217 |
| 20 | 7977 | 217 |
| 21 | 7977 | 217 |
| 1× | node limit |
| 1× | node limit |
Compiled 434 to 368 computations (15.2% saved)
(negabs s)
Compiled 148 to 124 computations (16.2% saved)
Loading profile data...