
Time bar (total: 1.3s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 0 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 1 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 2 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 3 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 4 |
| 75% | 74.9% | 25% | 0.2% | 0% | 0% | 0% | 5 |
| 75% | 74.9% | 25% | 0.2% | 0% | 0% | 0% | 6 |
| 75% | 74.9% | 25% | 0.2% | 0% | 0% | 0% | 7 |
| 87.5% | 87.3% | 12.5% | 0.2% | 0% | 0% | 0% | 8 |
| 93.8% | 93.6% | 6.2% | 0.2% | 0% | 0% | 0% | 9 |
| 93.8% | 93.6% | 6.2% | 0.2% | 0% | 0% | 0% | 10 |
| 93.8% | 93.6% | 6.2% | 0.2% | 0% | 0% | 0% | 11 |
| 96.9% | 96.7% | 3.1% | 0.2% | 0% | 0% | 0% | 12 |
Compiled 17 to 13 computations (23.5% saved)
| 15.0ms | 260× | 0 | valid |
ival-mult: 6.0ms (63.1% of total)ival-add: 2.0ms (21% of total)ival-div: 1.0ms (10.5% of total)ival-true: 0.0ms (0% of total)ival-assert: 0.0ms (0% of total)| Ground Truth | Overpredictions | Example | Underpredictions | Example | Subexpression |
|---|---|---|---|---|---|
| 113 | 0 | - | 1 | (-4.289146008988361e-191 -1.835497240231953e-33 -1.390586850777989e-242 -4.285783192141318e-157) | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
| 2 | 0 | - | 0 | - | (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) |
| 0 | 0 | - | 0 | - | (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) |
| 0 | 0 | - | 0 | - | (*.f64 y.re y.re) |
| 0 | 0 | - | 0 | - | (*.f64 x.re y.re) |
| 0 | 0 | - | 0 | - | (*.f64 y.im y.im) |
| 0 | 0 | - | 0 | - | x.re |
| 0 | 0 | - | 0 | - | y.re |
| 0 | 0 | - | 0 | - | y.im |
| 0 | 0 | - | 0 | - | (*.f64 x.im y.im) |
| 0 | 0 | - | 0 | - | x.im |
| Operator | Subexpression | Explanation | Count | |
|---|---|---|---|---|
/.f64 | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) | o/o | 61 | 0 |
| ↳ | (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) | overflow | 72 | |
| ↳ | (*.f64 x.im y.im) | overflow | 36 | |
| ↳ | (*.f64 x.re y.re) | overflow | 42 | |
| ↳ | (*.f64 y.re y.re) | overflow | 75 | |
| ↳ | (*.f64 y.im y.im) | overflow | 67 | |
| ↳ | (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) | overflow | 122 | |
/.f64 | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) | n/o | 31 | 0 |
| ↳ | (*.f64 y.re y.re) | overflow | 75 | |
| ↳ | (*.f64 y.im y.im) | overflow | 67 | |
| ↳ | (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) | overflow | 122 | |
/.f64 | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) | o/n | 11 | 0 |
| ↳ | (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) | overflow | 72 | |
| ↳ | (*.f64 x.im y.im) | overflow | 36 | |
| ↳ | (*.f64 x.re y.re) | overflow | 42 | |
/.f64 | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) | n/u | 5 | 0 |
| ↳ | (*.f64 y.re y.re) | underflow | 56 | |
| ↳ | (*.f64 y.im y.im) | underflow | 57 | |
| ↳ | (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) | underflow | 13 | |
/.f64 | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) | u/u | 3 | 0 |
| ↳ | (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) | underflow | 4 | |
| ↳ | (*.f64 x.im y.im) | underflow | 28 | |
| ↳ | (*.f64 x.re y.re) | underflow | 25 | |
| ↳ | (*.f64 y.re y.re) | underflow | 56 | |
| ↳ | (*.f64 y.im y.im) | underflow | 57 | |
| ↳ | (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) | underflow | 13 | |
+.f64 | (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) | nan-rescue | 2 | 0 |
| ↳ | (*.f64 x.re y.re) | overflow | 42 | |
| ↳ | (*.f64 x.im y.im) | overflow | 36 | |
/.f64 | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) | u/n | 1 | 0 |
| ↳ | (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) | underflow | 4 | |
| ↳ | (*.f64 x.im y.im) | underflow | 28 | |
| ↳ | (*.f64 x.re y.re) | underflow | 25 |
| Predicted + | Predicted - | |
|---|---|---|
| + | 112 | 1 |
| - | 0 | 143 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 112 | 0 | 1 |
| - | 0 | 0 | 143 |
| number | freq |
|---|---|
| 0 | 144 |
| 1 | 110 |
| 2 | 2 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 1 | 0 | 0 |
| - | 0 | 0 | 0 |
| 204.0ms | 3 072× | 0 | valid |
Compiled 1 824 to 552 computations (69.7% saved)
ival-mult: 71.0ms (62.7% of total)ival-add: 23.0ms (20.3% of total)ival-div: 16.0ms (14.1% of total)ival-true: 2.0ms (1.8% of total)ival-assert: 1.0ms (0.9% of total)| 1× | egg-herbie |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 60 | 218 |
| 1 | 132 | 210 |
| 2 | 209 | 210 |
| 3 | 377 | 210 |
| 4 | 914 | 210 |
| 5 | 2299 | 210 |
| 6 | 3076 | 210 |
| 7 | 3886 | 210 |
| 8 | 4759 | 210 |
| 9 | 5156 | 210 |
| 10 | 5284 | 210 |
| 11 | 5444 | 210 |
| 12 | 5444 | 210 |
| 13 | 5480 | 210 |
| 14 | 5496 | 210 |
| 15 | 5496 | 210 |
| 16 | 5856 | 210 |
| 17 | 6830 | 210 |
| 18 | 6982 | 210 |
| 19 | 6994 | 210 |
| 20 | 6998 | 210 |
| 21 | 7006 | 210 |
| 22 | 7014 | 210 |
| 23 | 7014 | 210 |
| 24 | 7122 | 210 |
| 25 | 7170 | 210 |
| 26 | 7170 | 210 |
| 0 | 11 | 15 |
| 0 | 18 | 15 |
| 1 | 22 | 15 |
| 0 | 22 | 13 |
| 1× | iter limit |
| 1× | saturated |
| 1× | iter limit |
| 1× | saturated |
| Inputs |
|---|
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
| Outputs |
|---|
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (fma.f64 y.im y.im (*.f64 y.re y.re))) |
Compiled 15 to 11 computations (26.7% saved)
Compiled 0 to 4 computations (-∞% saved)
| Status | Accuracy | Program |
|---|---|---|
| 57.9% | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
Compiled 30 to 22 computations (26.7% saved)
| 1× | egg-herbie |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 11 | 15 |
| 1 | 15 | 15 |
| 1× | saturated |
| Inputs |
|---|
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
| Outputs |
|---|
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 (+.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) |
| 1× | fuel |
Compiled 15 to 11 computations (26.7% saved)
Compiled 60 to 44 computations (26.7% saved)
Loading profile data...