
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)
| 16.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)adjust: 0.0ms (0% of total)ival-assert: 0.0ms (0% of total)| Ground Truth | Overpredictions | Example | Underpredictions | Example | Subexpression |
|---|---|---|---|---|---|
| 93 | 0 | - | 1 | (3.431762106766388e-208 -3.1793890265950826e-142 1.1367986298781736e-165 1.7703586651510268e-158) | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
| 1 | 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 | 44 | 0 |
| ↳ | (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) | overflow | 58 | |
| ↳ | (*.f64 x.im y.im) | overflow | 31 | |
| ↳ | (*.f64 x.re y.re) | overflow | 32 | |
| ↳ | (*.f64 y.re y.re) | overflow | 69 | |
| ↳ | (*.f64 y.im y.im) | overflow | 67 | |
| ↳ | (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) | overflow | 114 | |
/.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 | 29 | 0 |
| ↳ | (*.f64 y.re y.re) | overflow | 69 | |
| ↳ | (*.f64 y.im y.im) | overflow | 67 | |
| ↳ | (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) | overflow | 114 | |
/.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 | 14 | 0 |
| ↳ | (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) | overflow | 58 | |
| ↳ | (*.f64 x.im y.im) | overflow | 31 | |
| ↳ | (*.f64 x.re y.re) | overflow | 32 | |
/.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 | 2 | 0 |
| ↳ | (*.f64 y.re y.re) | underflow | 61 | |
| ↳ | (*.f64 y.im y.im) | underflow | 54 | |
| ↳ | (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) | underflow | 12 | |
/.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 | 2 | 0 |
| ↳ | (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) | underflow | 3 | |
| ↳ | (*.f64 x.im y.im) | underflow | 26 | |
| ↳ | (*.f64 x.re y.re) | underflow | 34 | |
| ↳ | (*.f64 y.re y.re) | underflow | 61 | |
| ↳ | (*.f64 y.im y.im) | underflow | 54 | |
| ↳ | (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) | underflow | 12 | |
/.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 | 3 | |
| ↳ | (*.f64 x.im y.im) | underflow | 26 | |
| ↳ | (*.f64 x.re y.re) | underflow | 34 | |
+.f64 | (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) | nan-rescue | 1 | 0 |
| ↳ | (*.f64 x.re y.re) | overflow | 32 | |
| ↳ | (*.f64 x.im y.im) | overflow | 31 |
| Predicted + | Predicted - | |
|---|---|---|
| + | 92 | 1 |
| - | 0 | 163 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 92 | 0 | 1 |
| - | 0 | 0 | 163 |
| number | freq |
|---|---|
| 0 | 164 |
| 1 | 91 |
| 2 | 1 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 1 | 0 | 0 |
| - | 0 | 0 | 0 |
| 209.0ms | 3 072× | 0 | valid |
Compiled 1 824 to 552 computations (69.7% saved)
ival-mult: 71.0ms (62.8% of total)ival-add: 22.0ms (19.5% of total)ival-div: 16.0ms (14.1% of total)ival-true: 2.0ms (1.8% of total)adjust: 1.0ms (0.9% 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 |
|---|---|---|
| 65.4% | (/.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...