
Time bar (total: 1.5s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 50% | 50% | 0% | 0% | 0% | 0 |
| 0% | 0% | 50% | 50% | 0% | 0% | 0% | 1 |
| 50% | 25% | 25% | 50% | 0% | 0% | 0% | 2 |
| 50% | 25% | 25% | 50% | 0% | 0% | 0% | 3 |
| 62.5% | 31.2% | 18.7% | 50% | 0% | 0% | 0% | 4 |
| 62.5% | 31.2% | 18.7% | 50% | 0% | 0% | 0% | 5 |
| 68.8% | 34.3% | 15.6% | 50% | 0% | 0% | 0% | 6 |
| 68.8% | 34.3% | 15.6% | 50% | 0% | 0% | 0% | 7 |
| 71.9% | 35.9% | 14% | 50% | 0% | 0% | 0% | 8 |
| 71.9% | 35.9% | 14% | 50% | 0% | 0% | 0% | 9 |
| 73.4% | 36.7% | 13.3% | 50% | 0% | 0% | 0% | 10 |
| 73.4% | 36.7% | 13.3% | 50% | 0% | 0% | 0% | 11 |
| 74.2% | 37.1% | 12.9% | 50% | 0% | 0% | 0% | 12 |
Compiled 19 to 12 computations (36.8% saved)
| 11.0ms | 193× | 0 | valid |
| 4.0ms | 17× | 3 | valid |
| 4.0ms | 23× | 2 | valid |
| 3.0ms | 27× | 1 | valid |
ival-hypot: 7.0ms (41.1% of total)ival-mult: 4.0ms (23.5% of total)adjust: 2.0ms (11.7% of total)ival-sub: 2.0ms (11.7% of total)ival-sqrt: 2.0ms (11.7% of total)ival->: 1.0ms (5.9% of total)ival-assert: 0.0ms (0% of total)exact: 0.0ms (0% of total)| Ground Truth | Overpredictions | Example | Underpredictions | Example | Subexpression |
|---|---|---|---|---|---|
| 117 | 0 | - | 0 | - | (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) |
| 36 | 32 | (1.5317499384879829e+162 1.211343631094368e-249) | 0 | - | (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) |
| 24 | 0 | - | 24 | (8.104491507767065e+55 8.464920125118886e-158) | (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))) |
| 0 | 0 | - | 0 | - | (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))) |
| 0 | 0 | - | 0 | - | (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)) |
| 0 | 0 | - | 0 | - | (*.f64 re re) |
| 0 | 0 | - | 0 | - | im |
| 0 | 0 | - | 0 | - | (+.f64 (*.f64 re re) (*.f64 im im)) |
| 0 | 0 | - | 0 | - | #s(literal 2 binary64) |
| 0 | 0 | - | 0 | - | re |
| 0 | 0 | - | 0 | - | #s(literal 1/2 binary64) |
| 0 | 0 | - | 0 | - | (*.f64 im im) |
| Operator | Subexpression | Explanation | Count | |
|---|---|---|---|---|
sqrt.f64 | (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) | oflow-rescue | 106 | 0 |
| ↳ | (+.f64 (*.f64 re re) (*.f64 im im)) | overflow | 106 | |
| ↳ | (*.f64 re re) | overflow | 62 | |
| ↳ | (*.f64 im im) | overflow | 62 | |
-.f64 | (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) | cancellation | 68 | 0 |
sqrt.f64 | (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) | uflow-rescue | 11 | 0 |
| ↳ | (+.f64 (*.f64 re re) (*.f64 im im)) | underflow | 11 | |
| ↳ | (*.f64 re re) | underflow | 57 | |
| ↳ | (*.f64 im im) | underflow | 56 |
| Predicted + | Predicted - | |
|---|---|---|
| + | 149 | 0 |
| - | 0 | 107 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 149 | 0 | 0 |
| - | 0 | 0 | 107 |
| number | freq |
|---|---|
| 0 | 107 |
| 1 | 113 |
| 2 | 36 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 1 | 0 | 0 |
| - | 0 | 0 | 0 |
| 188.0ms | 2 268× | 0 | valid |
| 69.0ms | 204× | 3 | valid |
| 68.0ms | 276× | 2 | valid |
| 55.0ms | 324× | 1 | valid |
Compiled 2 904 to 600 computations (79.3% saved)
ival-hypot: 85.0ms (32% of total)ival-mult: 79.0ms (29.7% of total)adjust: 36.0ms (13.6% of total)ival-sqrt: 27.0ms (10.2% of total)ival-sub: 20.0ms (7.5% of total)ival-add: 14.0ms (5.3% of total)exact: 3.0ms (1.1% of total)ival-true: 2.0ms (0.8% of total)ival-assert: 1.0ms (0.4% of total)| 1× | egg-herbie |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 30 | 77 |
| 1 | 71 | 75 |
| 2 | 152 | 75 |
| 3 | 285 | 75 |
| 4 | 424 | 75 |
| 5 | 515 | 75 |
| 6 | 637 | 75 |
| 7 | 775 | 75 |
| 8 | 830 | 75 |
| 0 | 12 | 15 |
| 0 | 20 | 15 |
| 1 | 25 | 15 |
| 2 | 36 | 15 |
| 3 | 52 | 15 |
| 4 | 73 | 15 |
| 5 | 98 | 15 |
| 6 | 154 | 15 |
| 7 | 227 | 15 |
| 8 | 310 | 15 |
| 9 | 360 | 15 |
| 10 | 420 | 15 |
| 11 | 434 | 15 |
| 12 | 450 | 15 |
| 13 | 470 | 15 |
| 14 | 500 | 15 |
| 15 | 531 | 15 |
| 16 | 543 | 15 |
| 17 | 545 | 15 |
| 0 | 545 | 10 |
| 1× | iter limit |
| 1× | saturated |
| 1× | iter limit |
| 1× | saturated |
| Inputs |
|---|
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))) |
| Outputs |
|---|
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))) |
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64)) |
(abs im)
Compiled 15 to 12 computations (20% saved)
Compiled 0 to 2 computations (-∞% saved)
| Status | Accuracy | Program |
|---|---|---|
| 45.0% | (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))) |
Compiled 30 to 24 computations (20% saved)
| 1× | egg-herbie |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 12 | 15 |
| 1 | 17 | 15 |
| 2 | 22 | 15 |
| 3 | 24 | 15 |
| 4 | 25 | 15 |
| 1× | saturated |
| Inputs |
|---|
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))) |
| Outputs |
|---|
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))) |
(*.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 im im) (*.f64 re re))) re) #s(literal 2 binary64))) #s(literal 1/2 binary64)) |
| 1× | fuel |
Compiled 15 to 12 computations (20% saved)
(abs im)
Compiled 120 to 96 computations (20% saved)
Loading profile data...