
Time bar (total: 2.2s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 0 |
| 100% | 99.9% | 0% | 0.1% | 0% | 0% | 0% | 1 |
Compiled 24 to 20 computations (16.7% saved)
| 19.0ms | 102× | 1 | valid |
| 15.0ms | 61× | 2 | valid |
| 8.0ms | 97× | 0 | valid |
adjust: 9.0ms (25.5% of total)ival-pow2: 7.0ms (19.8% of total)ival-sub: 4.0ms (11.3% of total)ival-mult: 4.0ms (11.3% of total)ival-add: 4.0ms (11.3% of total)ival-sqrt: 3.0ms (8.5% of total)ival-div: 2.0ms (5.7% of total)ival-fabs: 2.0ms (5.7% of total)ival-assert: 0.0ms (0% of total)ival-true: 0.0ms (0% of total)exact: 0.0ms (0% of total)| Ground Truth | Overpredictions | Example | Underpredictions | Example | Subexpression |
|---|---|---|---|---|---|
| 148 | 0 | - | 1 | (-3.425201662687631e-290 -1.2118410019842631e-161 -9.415178349086052e-239) | (sqrt.f64 (+.f64 (pow.f64 (-.f64 p r) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (pow.f64 q #s(literal 2 binary64))))) |
| 131 | 31 | (5.205931085885297e-220 -1.3954171667883087e-148 -1.955191305700122e-251) | 0 | - | (-.f64 (+.f64 (fabs.f64 p) (fabs.f64 r)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 p r) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (pow.f64 q #s(literal 2 binary64)))))) |
| 1 | 0 | - | 0 | - | (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)) (-.f64 (+.f64 (fabs.f64 p) (fabs.f64 r)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 p r) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (pow.f64 q #s(literal 2 binary64))))))) |
| 0 | 0 | - | 0 | - | q |
| 0 | 0 | - | 0 | - | (-.f64 p r) |
| 0 | 0 | - | 0 | - | (pow.f64 q #s(literal 2 binary64)) |
| 0 | 0 | - | 0 | - | #s(literal 1 binary64) |
| 0 | 0 | - | 0 | - | (pow.f64 (-.f64 p r) #s(literal 2 binary64)) |
| 0 | 0 | - | 0 | - | (fabs.f64 p) |
| 0 | 0 | - | 0 | - | (+.f64 (fabs.f64 p) (fabs.f64 r)) |
| 0 | 0 | - | 0 | - | (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)) |
| 0 | 0 | - | 0 | - | #s(literal 4 binary64) |
| 0 | 0 | - | 0 | - | p |
| 0 | 0 | - | 0 | - | (+.f64 (pow.f64 (-.f64 p r) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (pow.f64 q #s(literal 2 binary64)))) |
| 0 | 0 | - | 0 | - | (fabs.f64 r) |
| 0 | 0 | - | 0 | - | #s(literal 2 binary64) |
| 0 | 0 | - | 0 | - | r |
| 0 | 0 | - | 0 | - | (*.f64 #s(literal 4 binary64) (pow.f64 q #s(literal 2 binary64))) |
| Operator | Subexpression | Explanation | Count | |
|---|---|---|---|---|
-.f64 | (-.f64 (+.f64 (fabs.f64 p) (fabs.f64 r)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 p r) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (pow.f64 q #s(literal 2 binary64)))))) | cancellation | 162 | 0 |
sqrt.f64 | (sqrt.f64 (+.f64 (pow.f64 (-.f64 p r) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (pow.f64 q #s(literal 2 binary64))))) | oflow-rescue | 143 | 0 |
| ↳ | (+.f64 (pow.f64 (-.f64 p r) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (pow.f64 q #s(literal 2 binary64)))) | overflow | 144 | |
| ↳ | (pow.f64 q #s(literal 2 binary64)) | overflow | 74 | |
| ↳ | (pow.f64 (-.f64 p r) #s(literal 2 binary64)) | overflow | 102 | |
| ↳ | (sqrt.f64 (+.f64 (pow.f64 (-.f64 p r) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (pow.f64 q #s(literal 2 binary64))))) | overflow | 1 | |
| ↳ | (*.f64 #s(literal 4 binary64) (pow.f64 q #s(literal 2 binary64))) | overflow | 74 | |
sqrt.f64 | (sqrt.f64 (+.f64 (pow.f64 (-.f64 p r) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (pow.f64 q #s(literal 2 binary64))))) | uflow-rescue | 4 | 0 |
| ↳ | (+.f64 (pow.f64 (-.f64 p r) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (pow.f64 q #s(literal 2 binary64)))) | underflow | 4 | |
| ↳ | (pow.f64 q #s(literal 2 binary64)) | underflow | 60 | |
| ↳ | (pow.f64 (-.f64 p r) #s(literal 2 binary64)) | underflow | 19 | |
| ↳ | (*.f64 #s(literal 4 binary64) (pow.f64 q #s(literal 2 binary64))) | underflow | 60 | |
*.f64 | (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)) (-.f64 (+.f64 (fabs.f64 p) (fabs.f64 r)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 p r) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (pow.f64 q #s(literal 2 binary64))))))) | n*o | 1 | 0 |
| Predicted + | Predicted - | |
|---|---|---|
| + | 211 | 0 |
| - | 11 | 34 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 211 | 0 | 0 |
| - | 11 | 0 | 34 |
| number | freq |
|---|---|
| 0 | 34 |
| 1 | 134 |
| 2 | 88 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 1 | 0 | 0 |
| - | 0 | 0 | 0 |
| 258.0ms | 1 212× | 1 | valid |
| 216.0ms | 732× | 2 | valid |
| 113.0ms | 1 128× | 0 | valid |
Compiled 3 780 to 888 computations (76.5% saved)
adjust: 108.0ms (26% of total)ival-pow2: 79.0ms (19% of total)ival-mult: 52.0ms (12.5% of total)ival-add: 47.0ms (11.3% of total)ival-sub: 43.0ms (10.3% of total)ival-sqrt: 37.0ms (8.9% of total)ival-fabs: 25.0ms (6% of total)ival-div: 19.0ms (4.6% of total)exact: 4.0ms (1% of total)ival-true: 2.0ms (0.5% of total)ival-assert: 1.0ms (0.2% of total)| 1× | egg-herbie |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 69 | 187 |
| 1 | 160 | 184 |
| 2 | 443 | 180 |
| 3 | 1440 | 180 |
| 4 | 3448 | 180 |
| 5 | 5328 | 180 |
| 6 | 7340 | 180 |
| 0 | 18 | 20 |
| 0 | 31 | 20 |
| 1 | 45 | 20 |
| 2 | 80 | 20 |
| 3 | 170 | 20 |
| 4 | 345 | 20 |
| 5 | 791 | 20 |
| 6 | 1603 | 20 |
| 7 | 3084 | 20 |
| 8 | 3825 | 20 |
| 9 | 4113 | 20 |
| 10 | 4203 | 20 |
| 11 | 4207 | 20 |
| 12 | 4207 | 20 |
| 13 | 4337 | 20 |
| 14 | 4361 | 20 |
| 15 | 4361 | 20 |
| 0 | 4361 | 19 |
| 1× | iter limit |
| 1× | saturated |
| 1× | iter limit |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)) (-.f64 (+.f64 (fabs.f64 p) (fabs.f64 r)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 p r) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (pow.f64 q #s(literal 2 binary64))))))) |
| Outputs |
|---|
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)) (-.f64 (+.f64 (fabs.f64 p) (fabs.f64 r)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 p r) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (pow.f64 q #s(literal 2 binary64))))))) |
(*.f64 #s(literal -1/2 binary64) (-.f64 (sqrt.f64 (fma.f64 (*.f64 q q) #s(literal 4 binary64) (pow.f64 (-.f64 p r) #s(literal 2 binary64)))) (+.f64 (fabs.f64 r) (fabs.f64 p)))) |
(abs q)
(sort p r)
Compiled 22 to 18 computations (18.2% saved)
Compiled 0 to 3 computations (-∞% saved)
| Status | Accuracy | Program |
|---|---|---|
| 22.2% | (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)) (-.f64 (+.f64 (fabs.f64 p) (fabs.f64 r)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 p r) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (pow.f64 q #s(literal 2 binary64))))))) |
Compiled 44 to 36 computations (18.2% saved)
| 1× | egg-herbie |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 18 | 22 |
| 1 | 29 | 22 |
| 2 | 36 | 22 |
| 3 | 40 | 22 |
| 4 | 42 | 22 |
| 1× | saturated |
| Inputs |
|---|
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)) (-.f64 (+.f64 (fabs.f64 p) (fabs.f64 r)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 p r) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (pow.f64 q #s(literal 2 binary64))))))) |
| Outputs |
|---|
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)) (-.f64 (+.f64 (fabs.f64 p) (fabs.f64 r)) (sqrt.f64 (+.f64 (pow.f64 (-.f64 p r) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (pow.f64 q #s(literal 2 binary64))))))) |
(*.f64 (-.f64 (+.f64 (fabs.f64 r) (fabs.f64 p)) (sqrt.f64 (+.f64 (*.f64 (pow.f64 q #s(literal 2 binary64)) #s(literal 4 binary64)) (pow.f64 (-.f64 p r) #s(literal 2 binary64))))) (/.f64 #s(literal 1 binary64) #s(literal 2 binary64))) |
| 1× | fuel |
Compiled 22 to 18 computations (18.2% saved)
(sort p r)
(abs q)
Compiled 264 to 216 computations (18.2% saved)
Loading profile data...