
Time bar (total: 2.5s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 25.4% | 74.6% | 0% | 0% | 0% | 0 |
| 0% | 0% | 25.4% | 74.6% | 0% | 0% | 0% | 1 |
| 0% | 0% | 25.4% | 74.6% | 0% | 0% | 0% | 2 |
| 0% | 0% | 25.4% | 74.6% | 0% | 0% | 0% | 3 |
| 0% | 0% | 22.2% | 74.6% | 0% | 3.2% | 0% | 4 |
| 0% | 0% | 20.6% | 74.6% | 0% | 4.8% | 0% | 5 |
| 0% | 0% | 18.3% | 74.6% | 0% | 7.1% | 0% | 6 |
| 0% | 0% | 10.7% | 74.6% | 0% | 14.7% | 0% | 7 |
| 0% | 0% | 9.3% | 74.6% | 0% | 16.1% | 0% | 8 |
| 0% | 0% | 8.2% | 74.6% | 0% | 17.2% | 0% | 9 |
| 0% | 0% | 5.7% | 74.6% | 0% | 19.7% | 0% | 10 |
| 0% | 0% | 5% | 74.6% | 0% | 20.4% | 0% | 11 |
| 0% | 0% | 4.4% | 74.6% | 0% | 21% | 0% | 12 |
Compiled 52 to 27 computations (48.1% saved)
| 263.0ms | 2 099× | 0 | invalid |
| 32.0ms | 260× | 0 | valid |
ival-mult: 73.0ms (32.2% of total)const: 35.0ms (15.4% of total)ival-expm1: 32.0ms (14.1% of total)ival-fabs: 22.0ms (9.7% of total)ival-<=: 21.0ms (9.3% of total)ival-div: 13.0ms (5.7% of total)ival-add: 11.0ms (4.9% of total)ival-fmin: 11.0ms (4.9% of total)ival-and: 6.0ms (2.6% of total)ival-assert: 1.0ms (0.4% of total)exact: 1.0ms (0.4% of total)| Ground Truth | Overpredictions | Example | Underpredictions | Example | Subexpression |
|---|---|---|---|---|---|
| 240 | 0 | - | 3 | (-1.2398485390078333e-13 8.966696792871934e-94 4.353540318455178e-106) | (/.f64 (*.f64 eps (-.f64 (exp.f64 (*.f64 (+.f64 a b) eps)) #s(literal 1 binary64))) (*.f64 (-.f64 (exp.f64 (*.f64 a eps)) #s(literal 1 binary64)) (-.f64 (exp.f64 (*.f64 b eps)) #s(literal 1 binary64)))) |
| 143 | 113 | (5.394476542531989e-238 -5.761420188965521e-239 9.737371854465141e-251) | 11 | (-2.886770714743758e-250 -1.4934699931580107e-50 1.7962634080822787e-271) | (-.f64 (exp.f64 (*.f64 (+.f64 a b) eps)) #s(literal 1 binary64)) |
| 109 | 147 | (5.394476542531989e-238 -5.761420188965521e-239 9.737371854465141e-251) | 6 | (-4.3631905481608024e-153 -2.192864365413889e-140 2.0188407874334452e-165) | (-.f64 (exp.f64 (*.f64 a eps)) #s(literal 1 binary64)) |
| 100 | 156 | (-1.071110878899532e-18 1.904030992634191e-233 1.1867072171494633e-237) | 11 | (-2.886770714743758e-250 -1.4934699931580107e-50 1.7962634080822787e-271) | (-.f64 (exp.f64 (*.f64 b eps)) #s(literal 1 binary64)) |
| 0 | 0 | - | 0 | - | (+.f64 a b) |
| 0 | 0 | - | 0 | - | (*.f64 b eps) |
| 0 | 0 | - | 0 | - | (exp.f64 (*.f64 a eps)) |
| 0 | 0 | - | 0 | - | a |
| 0 | 0 | - | 0 | - | #s(literal 1 binary64) |
| 0 | 0 | - | 0 | - | (*.f64 a eps) |
| 0 | 0 | - | 0 | - | (exp.f64 (*.f64 (+.f64 a b) eps)) |
| 0 | 0 | - | 0 | - | eps |
| 0 | 0 | - | 0 | - | (*.f64 (-.f64 (exp.f64 (*.f64 a eps)) #s(literal 1 binary64)) (-.f64 (exp.f64 (*.f64 b eps)) #s(literal 1 binary64))) |
| 0 | 0 | - | 0 | - | (*.f64 eps (-.f64 (exp.f64 (*.f64 (+.f64 a b) eps)) #s(literal 1 binary64))) |
| 0 | 0 | - | 0 | - | (*.f64 (+.f64 a b) eps) |
| 0 | 0 | - | 0 | - | (exp.f64 (*.f64 b eps)) |
| 0 | 0 | - | 0 | - | b |
| Operator | Subexpression | Explanation | Count | |
|---|---|---|---|---|
-.f64 | (-.f64 (exp.f64 (*.f64 a eps)) #s(literal 1 binary64)) | cancellation | 250 | 0 |
-.f64 | (-.f64 (exp.f64 (*.f64 b eps)) #s(literal 1 binary64)) | cancellation | 245 | 0 |
-.f64 | (-.f64 (exp.f64 (*.f64 (+.f64 a b) eps)) #s(literal 1 binary64)) | cancellation | 245 | 0 |
/.f64 | (/.f64 (*.f64 eps (-.f64 (exp.f64 (*.f64 (+.f64 a b) eps)) #s(literal 1 binary64))) (*.f64 (-.f64 (exp.f64 (*.f64 a eps)) #s(literal 1 binary64)) (-.f64 (exp.f64 (*.f64 b eps)) #s(literal 1 binary64)))) | u/n | 113 | 0 |
| ↳ | (*.f64 eps (-.f64 (exp.f64 (*.f64 (+.f64 a b) eps)) #s(literal 1 binary64))) | underflow | 216 | |
| ↳ | (*.f64 (+.f64 a b) eps) | underflow | 112 | |
| ↳ | (-.f64 (exp.f64 (*.f64 (+.f64 a b) eps)) #s(literal 1 binary64)) | underflow | 113 | |
/.f64 | (/.f64 (*.f64 eps (-.f64 (exp.f64 (*.f64 (+.f64 a b) eps)) #s(literal 1 binary64))) (*.f64 (-.f64 (exp.f64 (*.f64 a eps)) #s(literal 1 binary64)) (-.f64 (exp.f64 (*.f64 b eps)) #s(literal 1 binary64)))) | u/u | 103 | 0 |
| ↳ | (*.f64 eps (-.f64 (exp.f64 (*.f64 (+.f64 a b) eps)) #s(literal 1 binary64))) | underflow | 216 | |
| ↳ | (*.f64 (+.f64 a b) eps) | underflow | 112 | |
| ↳ | (-.f64 (exp.f64 (*.f64 (+.f64 a b) eps)) #s(literal 1 binary64)) | underflow | 113 | |
| ↳ | (*.f64 b eps) | underflow | 155 | |
| ↳ | (-.f64 (exp.f64 (*.f64 a eps)) #s(literal 1 binary64)) | underflow | 148 | |
| ↳ | (-.f64 (exp.f64 (*.f64 b eps)) #s(literal 1 binary64)) | underflow | 156 | |
| ↳ | (*.f64 (-.f64 (exp.f64 (*.f64 a eps)) #s(literal 1 binary64)) (-.f64 (exp.f64 (*.f64 b eps)) #s(literal 1 binary64))) | underflow | 237 | |
| ↳ | (*.f64 a eps) | underflow | 145 | |
/.f64 | (/.f64 (*.f64 eps (-.f64 (exp.f64 (*.f64 (+.f64 a b) eps)) #s(literal 1 binary64))) (*.f64 (-.f64 (exp.f64 (*.f64 a eps)) #s(literal 1 binary64)) (-.f64 (exp.f64 (*.f64 b eps)) #s(literal 1 binary64)))) | n/u | 21 | 0 |
| ↳ | (*.f64 b eps) | underflow | 155 | |
| ↳ | (-.f64 (exp.f64 (*.f64 a eps)) #s(literal 1 binary64)) | underflow | 148 | |
| ↳ | (-.f64 (exp.f64 (*.f64 b eps)) #s(literal 1 binary64)) | underflow | 156 | |
| ↳ | (*.f64 (-.f64 (exp.f64 (*.f64 a eps)) #s(literal 1 binary64)) (-.f64 (exp.f64 (*.f64 b eps)) #s(literal 1 binary64))) | underflow | 237 | |
| ↳ | (*.f64 a eps) | underflow | 145 |
| Predicted + | Predicted - | |
|---|---|---|
| + | 256 | 0 |
| - | 0 | 0 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 256 | 0 | 0 |
| - | 0 | 0 | 0 |
| number | freq |
|---|---|
| 2 | 11 |
| 3 | 25 |
| 4 | 220 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 1 | 0 | 0 |
| - | 0 | 0 | 0 |
| 327.0ms | 3 072× | 0 | valid |
Compiled 3 876 to 840 computations (78.3% saved)
ival-mult: 80.0ms (36.7% of total)ival-exp: 54.0ms (24.8% of total)ival-expm1: 43.0ms (19.7% of total)ival-div: 18.0ms (8.3% of total)ival-add: 17.0ms (7.8% of total)ival-true: 2.0ms (0.9% of total)exact: 2.0ms (0.9% of total)ival-assert: 1.0ms (0.5% of total)| 1× | egg-herbie |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 82 | 233 |
| 1 | 250 | 229 |
| 2 | 708 | 227 |
| 3 | 2151 | 224 |
| 4 | 7041 | 224 |
| 0 | 17 | 24 |
| 0 | 30 | 24 |
| 1 | 56 | 24 |
| 2 | 109 | 24 |
| 3 | 176 | 24 |
| 4 | 327 | 24 |
| 5 | 655 | 24 |
| 6 | 1264 | 24 |
| 7 | 3455 | 24 |
| 8 | 6175 | 24 |
| 9 | 7511 | 24 |
| 10 | 7817 | 24 |
| 11 | 7898 | 24 |
| 12 | 7928 | 24 |
| 0 | 8057 | 18 |
| 1× | iter limit |
| 1× | node limit |
| 1× | iter limit |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (*.f64 eps (-.f64 (exp.f64 (*.f64 (+.f64 a b) eps)) #s(literal 1 binary64))) (*.f64 (-.f64 (exp.f64 (*.f64 a eps)) #s(literal 1 binary64)) (-.f64 (exp.f64 (*.f64 b eps)) #s(literal 1 binary64)))) |
| Outputs |
|---|
(/.f64 (*.f64 eps (-.f64 (exp.f64 (*.f64 (+.f64 a b) eps)) #s(literal 1 binary64))) (*.f64 (-.f64 (exp.f64 (*.f64 a eps)) #s(literal 1 binary64)) (-.f64 (exp.f64 (*.f64 b eps)) #s(literal 1 binary64)))) |
(*.f64 (/.f64 (/.f64 eps (expm1.f64 (*.f64 b eps))) (expm1.f64 (*.f64 a eps))) (expm1.f64 (*.f64 (+.f64 b a) eps))) |
(sort a b)
Compiled 24 to 17 computations (29.2% saved)
Compiled 0 to 3 computations (-∞% saved)
| Status | Accuracy | Program |
|---|---|---|
| 0.0% | (/.f64 (*.f64 eps (-.f64 (exp.f64 (*.f64 (+.f64 a b) eps)) #s(literal 1 binary64))) (*.f64 (-.f64 (exp.f64 (*.f64 a eps)) #s(literal 1 binary64)) (-.f64 (exp.f64 (*.f64 b eps)) #s(literal 1 binary64)))) |
Compiled 48 to 34 computations (29.2% saved)
| 1× | egg-herbie |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 17 | 24 |
| 1 | 30 | 24 |
| 2 | 36 | 24 |
| 3 | 39 | 24 |
| 4 | 42 | 24 |
| 5 | 47 | 24 |
| 1× | saturated |
| Inputs |
|---|
(/.f64 (*.f64 eps (-.f64 (exp.f64 (*.f64 (+.f64 a b) eps)) #s(literal 1 binary64))) (*.f64 (-.f64 (exp.f64 (*.f64 a eps)) #s(literal 1 binary64)) (-.f64 (exp.f64 (*.f64 b eps)) #s(literal 1 binary64)))) |
| Outputs |
|---|
(/.f64 (*.f64 eps (-.f64 (exp.f64 (*.f64 (+.f64 a b) eps)) #s(literal 1 binary64))) (*.f64 (-.f64 (exp.f64 (*.f64 a eps)) #s(literal 1 binary64)) (-.f64 (exp.f64 (*.f64 b eps)) #s(literal 1 binary64)))) |
(/.f64 (*.f64 (-.f64 (exp.f64 (*.f64 (+.f64 b a) eps)) #s(literal 1 binary64)) eps) (*.f64 (-.f64 (exp.f64 (*.f64 b eps)) #s(literal 1 binary64)) (-.f64 (exp.f64 (*.f64 a eps)) #s(literal 1 binary64)))) |
| 1× | fuel |
Compiled 24 to 17 computations (29.2% saved)
(sort a b)
Compiled 206 to 150 computations (27.2% saved)
Loading profile data...