
Time bar (total: 2.4s)
| 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)
| 243.0ms | 1 857× | 0 | invalid |
| 33.0ms | 260× | 0 | valid |
ival-mult: 70.0ms (32.8% of total)ival-expm1: 31.0ms (14.5% of total)const: 31.0ms (14.5% of total)ival-fabs: 20.0ms (9.4% of total)ival-<=: 19.0ms (8.9% of total)ival-add: 13.0ms (6.1% of total)ival-div: 12.0ms (5.6% of total)ival-fmin: 10.0ms (4.7% of total)ival-and: 6.0ms (2.8% of total)adjust: 1.0ms (0.5% of total)ival-assert: 1.0ms (0.5% of total)exact: 1.0ms (0.5% of total)| Ground Truth | Overpredictions | Example | Underpredictions | Example | Subexpression |
|---|---|---|---|---|---|
| 230 | 0 | - | 2 | (-7.1928264617170845e-93 -9.695805911451218e-22 8.856321375266872e-103) | (/.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)))) |
| 142 | 114 | (1.6917859939992162e-246 -1.178370763655214e-200 2.9734818297464043e-249) | 4 | (-1.2148226323347851e-34 -8.38688282272491e-267 4.114500882788783e-279) | (-.f64 (exp.f64 (*.f64 (+.f64 a b) eps)) #s(literal 1 binary64)) |
| 113 | 143 | (1.6917859939992162e-246 -1.178370763655214e-200 2.9734818297464043e-249) | 2 | (3.637709422245112e-232 1.4991395775703292e-77 5.167158039829699e-234) | (-.f64 (exp.f64 (*.f64 b eps)) #s(literal 1 binary64)) |
| 103 | 153 | (-1.4422596146940193e-222 -1.3960939837089615e-15 6.338563472524514e-230) | 5 | (-1.2148226323347851e-34 -8.38688282272491e-267 4.114500882788783e-279) | (-.f64 (exp.f64 (*.f64 a 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 b eps)) #s(literal 1 binary64)) | cancellation | 254 | 0 |
-.f64 | (-.f64 (exp.f64 (*.f64 (+.f64 a b) eps)) #s(literal 1 binary64)) | cancellation | 252 | 0 |
-.f64 | (-.f64 (exp.f64 (*.f64 a eps)) #s(literal 1 binary64)) | cancellation | 251 | 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 | 114 | 0 |
| ↳ | (*.f64 eps (-.f64 (exp.f64 (*.f64 (+.f64 a b) eps)) #s(literal 1 binary64))) | underflow | 208 | |
| ↳ | (*.f64 (+.f64 a b) eps) | underflow | 114 | |
| ↳ | (-.f64 (exp.f64 (*.f64 (+.f64 a b) eps)) #s(literal 1 binary64)) | underflow | 114 | |
/.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 | 94 | 0 |
| ↳ | (*.f64 eps (-.f64 (exp.f64 (*.f64 (+.f64 a b) eps)) #s(literal 1 binary64))) | underflow | 208 | |
| ↳ | (*.f64 (+.f64 a b) eps) | underflow | 114 | |
| ↳ | (-.f64 (exp.f64 (*.f64 (+.f64 a b) eps)) #s(literal 1 binary64)) | underflow | 114 | |
| ↳ | (*.f64 b eps) | underflow | 143 | |
| ↳ | (-.f64 (exp.f64 (*.f64 a eps)) #s(literal 1 binary64)) | underflow | 153 | |
| ↳ | (-.f64 (exp.f64 (*.f64 b eps)) #s(literal 1 binary64)) | underflow | 143 | |
| ↳ | (*.f64 (-.f64 (exp.f64 (*.f64 a eps)) #s(literal 1 binary64)) (-.f64 (exp.f64 (*.f64 b eps)) #s(literal 1 binary64))) | underflow | 228 | |
| ↳ | (*.f64 a eps) | underflow | 153 | |
/.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 | 20 | 0 |
| ↳ | (*.f64 b eps) | underflow | 143 | |
| ↳ | (-.f64 (exp.f64 (*.f64 a eps)) #s(literal 1 binary64)) | underflow | 153 | |
| ↳ | (-.f64 (exp.f64 (*.f64 b eps)) #s(literal 1 binary64)) | underflow | 143 | |
| ↳ | (*.f64 (-.f64 (exp.f64 (*.f64 a eps)) #s(literal 1 binary64)) (-.f64 (exp.f64 (*.f64 b eps)) #s(literal 1 binary64))) | underflow | 228 | |
| ↳ | (*.f64 a eps) | underflow | 153 |
| Predicted + | Predicted - | |
|---|---|---|
| + | 256 | 0 |
| - | 0 | 0 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 256 | 0 | 0 |
| - | 0 | 0 | 0 |
| number | freq |
|---|---|
| 2 | 4 |
| 3 | 31 |
| 4 | 221 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 1 | 0 | 0 |
| - | 0 | 0 | 0 |
| 330.0ms | 3 072× | 0 | valid |
Compiled 3 876 to 840 computations (78.3% saved)
ival-mult: 83.0ms (37.7% of total)ival-exp: 54.0ms (24.5% of total)ival-expm1: 44.0ms (20% of total)ival-div: 17.0ms (7.7% of total)ival-add: 17.0ms (7.7% of total)ival-true: 2.0ms (0.9% of total)exact: 2.0ms (0.9% of total)adjust: 1.0ms (0.5% 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...