
Time bar (total: 2.1s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 0 |
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 1 |
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 2 |
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 3 |
| 25% | 25% | 74.9% | 0.1% | 0% | 0% | 0% | 4 |
| 25% | 25% | 74.9% | 0.1% | 0% | 0% | 0% | 5 |
| 34.4% | 34.3% | 65.5% | 0.1% | 0% | 0% | 0% | 6 |
| 36.7% | 34.3% | 59.3% | 0.1% | 0% | 6.2% | 0% | 7 |
| 40.8% | 38.2% | 55.4% | 0.1% | 0% | 6.2% | 0% | 8 |
| 51.3% | 46.8% | 44.5% | 0.1% | 0% | 8.6% | 0% | 9 |
| 56.5% | 49% | 37.6% | 0.1% | 0% | 13.3% | 0% | 10 |
| 61.9% | 53.1% | 32.7% | 0.1% | 0% | 14% | 0% | 11 |
| 69.7% | 58.2% | 25.3% | 0.1% | 0% | 16.4% | 0% | 12 |
Compiled 40 to 22 computations (45% saved)
| 862.0ms | 8 256× | 0 | valid |
| 100.0ms | 944× | 0 | invalid |
ival-mult: 233.0ms (35.6% of total)ival-div: 136.0ms (20.8% of total)ival-sub: 81.0ms (12.4% of total)ival-if: 63.0ms (9.6% of total)ival-sqrt: 57.0ms (8.7% of total)ival-neg: 46.0ms (7% of total)ival-add: 20.0ms (3.1% of total)exact: 11.0ms (1.7% of total)adjust: 3.0ms (0.5% of total)ival-assert: 3.0ms (0.5% of total)ival->=: 1.0ms (0.2% of total)| Ground Truth | Overpredictions | Example | Underpredictions | Example | Subexpression |
|---|---|---|---|---|---|
| 102 | 0 | - | 2 | (-2.2097432844860376e-288 -5.849040489451256e-157 -1.1477227681800464e-91) | (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c))) |
| 77 | 0 | - | 0 | - | (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c)))) |
| 56 | 0 | - | 0 | - | (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c)))) |
| 19 | 0 | - | 0 | - | (/.f64 (*.f64 #s(literal 2 binary64) c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c))))) |
| 17 | 0 | - | 2 | (8.41183294564308e-232 7.603730761623198e-199 4.609566746147672e-286) | (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c)))) (*.f64 #s(literal 2 binary64) a)) |
| 2 | 0 | - | 0 | - | (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c)) |
| 1 | 0 | - | 0 | - | (*.f64 (*.f64 #s(literal 4 binary64) a) c) |
| 0 | 0 | - | 0 | - | a |
| 0 | 0 | - | 0 | - | (*.f64 #s(literal 2 binary64) c) |
| 0 | 0 | - | 0 | - | (*.f64 b b) |
| 0 | 0 | - | 0 | - | (*.f64 #s(literal 2 binary64) a) |
| 0 | 0 | - | 0 | - | c |
| 0 | 0 | - | 0 | - | (*.f64 #s(literal 4 binary64) a) |
| 0 | 0 | - | 0 | - | (neg.f64 b) |
| 0 | 0 | - | 0 | - | (>=.f64 b #s(literal 0 binary64)) |
| 0 | 0 | - | 0 | - | (if (>=.f64 b #s(literal 0 binary64)) (/.f64 (*.f64 #s(literal 2 binary64) c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c)))) (*.f64 #s(literal 2 binary64) a))) |
| 0 | 0 | - | 0 | - | #s(literal 4 binary64) |
| 0 | 0 | - | 0 | - | #s(literal 0 binary64) |
| 0 | 0 | - | 0 | - | #s(literal 2 binary64) |
| 0 | 0 | - | 0 | - | b |
| Operator | Subexpression | Explanation | Count | |
|---|---|---|---|---|
sqrt.f64 | (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c))) | oflow-rescue | 97 | 0 |
| ↳ | (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c)) | overflow | 97 | |
| ↳ | (*.f64 #s(literal 4 binary64) a) | overflow | 1 | |
| ↳ | (*.f64 (*.f64 #s(literal 4 binary64) a) c) | overflow | 14 | |
| ↳ | (*.f64 b b) | overflow | 92 | |
-.f64 | (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c)))) | cancellation | 77 | 0 |
+.f64 | (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c)))) | cancellation | 56 | 0 |
/.f64 | (/.f64 (*.f64 #s(literal 2 binary64) c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c))))) | n/u | 19 | 0 |
| ↳ | (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c)))) | underflow | 27 | |
| ↳ | (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c)) | underflow | 3 | |
| ↳ | (*.f64 (*.f64 #s(literal 4 binary64) a) c) | underflow | 37 | |
| ↳ | (*.f64 b b) | underflow | 34 | |
/.f64 | (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c)))) (*.f64 #s(literal 2 binary64) a)) | u/n | 15 | 0 |
| ↳ | (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c)) | underflow | 3 | |
| ↳ | (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c)))) | underflow | 30 | |
| ↳ | (*.f64 (*.f64 #s(literal 4 binary64) a) c) | underflow | 37 | |
| ↳ | (*.f64 b b) | underflow | 34 | |
sqrt.f64 | (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c))) | uflow-rescue | 3 | 0 |
| ↳ | (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c)) | underflow | 3 | |
| ↳ | (*.f64 (*.f64 #s(literal 4 binary64) a) c) | underflow | 37 | |
| ↳ | (*.f64 b b) | underflow | 34 | |
-.f64 | (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 4 binary64) a) c)) | nan-rescue | 2 | 0 |
| ↳ | (*.f64 b b) | overflow | 92 | |
| ↳ | (*.f64 (*.f64 #s(literal 4 binary64) a) c) | overflow | 14 | |
| ↳ | (*.f64 #s(literal 4 binary64) a) | overflow | 1 | |
*.f64 | (*.f64 (*.f64 #s(literal 4 binary64) a) c) | n*o | 1 | 0 |
| Predicted + | Predicted - | |
|---|---|---|
| + | 77 | 1 |
| - | 116 | 62 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 77 | 0 | 1 |
| - | 116 | 0 | 62 |
| number | freq |
|---|---|
| 0 | 63 |
| 1 | 119 |
| 2 | 71 |
| 3 | 3 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 1 | 0 | 0 |
| - | 0 | 0 | 0 |
| 63.0ms | 158× | 2 | valid |
| 54.0ms | 192× | 1 | valid |
| 16.0ms | 136× | 0 | valid |
| 12.0ms | 26× | 3 | valid |
Compiled 332 to 64 computations (80.7% saved)
adjust: 26.0ms (24.3% of total)ival-mult: 26.0ms (24.3% of total)ival-div: 19.0ms (17.7% of total)ival-sub: 13.0ms (12.1% of total)ival-sqrt: 9.0ms (8.4% of total)ival-add: 5.0ms (4.7% of total)ival-if: 4.0ms (3.7% of total)ival-neg: 2.0ms (1.9% of total)ival->=: 1.0ms (0.9% of total)exact: 1.0ms (0.9% of total)ival-assert: 0.0ms (0% of total)ival-true: 0.0ms (0% of total)Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 89 | 393 |
| 1 | 226 | 381 |
| 2 | 547 | 381 |
| 3 | 1099 | 379 |
| 4 | 2337 | 373 |
| 0 | 27 | 48 |
| 0 | 36 | 48 |
| 1 | 38 | 48 |
| 2 | 40 | 48 |
| 3 | 45 | 48 |
| 4 | 65 | 48 |
| 5 | 141 | 48 |
| 6 | 594 | 48 |
| 7 | 4708 | 48 |
| 0 | 8441 | 48 |
| 1× | saturated |
| 1× | node limit |
| 1× | iter limit |
| 1× | node limit |
Loading profile data...