
Time bar (total: 2.4s)
| 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 33 to 20 computations (39.4% saved)
| 22.0ms | 260× | 0 | valid |
ival-mult: 8.0ms (46.4% of total)ival-add: 4.0ms (23.2% of total)ival-sub: 2.0ms (11.6% of total)ival-pow2: 2.0ms (11.6% of total)ival-true: 0.0ms (0% of total)exact: 0.0ms (0% of total)ival-assert: 0.0ms (0% of total)| Ground Truth | Overpredictions | Example | Underpredictions | Example | Subexpression |
|---|---|---|---|---|---|
| 51 | 73 | (-2.0506927137577445e+111 -5.2939942470267235e+216) | 42 | (3.928847865008688e+96 -4.236428586365682e+199) | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (+.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 3 binary64) a)))))) |
| 32 | 0 | - | 0 | - | (+.f64 (*.f64 (*.f64 a a) (+.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 3 binary64) a)))) |
| 15 | 0 | - | 2 | (5.498465161249041e+252 -4.479389324588427e-162) | (*.f64 (*.f64 b b) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 3 binary64) a))) |
| 0 | 0 | - | 0 | - | (*.f64 a a) |
| 0 | 0 | - | 0 | - | (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 3 binary64) a)) |
| 0 | 0 | - | 0 | - | a |
| 0 | 0 | - | 0 | - | #s(literal 3 binary64) |
| 0 | 0 | - | 0 | - | #s(literal 1 binary64) |
| 0 | 0 | - | 0 | - | (*.f64 b b) |
| 0 | 0 | - | 0 | - | (+.f64 (*.f64 a a) (*.f64 b b)) |
| 0 | 0 | - | 0 | - | (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) |
| 0 | 0 | - | 0 | - | (*.f64 (*.f64 a a) (+.f64 #s(literal 1 binary64) a)) |
| 0 | 0 | - | 0 | - | #s(literal 4 binary64) |
| 0 | 0 | - | 0 | - | (+.f64 #s(literal 1 binary64) a) |
| 0 | 0 | - | 0 | - | #s(literal 2 binary64) |
| 0 | 0 | - | 0 | - | (-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (+.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 3 binary64) a)))))) #s(literal 1 binary64)) |
| 0 | 0 | - | 0 | - | b |
| 0 | 0 | - | 0 | - | (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (+.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 3 binary64) a))))) |
| 0 | 0 | - | 0 | - | (*.f64 #s(literal 3 binary64) a) |
| Operator | Subexpression | Explanation | Count | |
|---|---|---|---|---|
+.f64 | (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (+.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 3 binary64) a)))))) | nan-rescue | 82 | 0 |
| ↳ | (*.f64 b b) | overflow | 75 | |
| ↳ | (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) | overflow | 152 | |
| ↳ | (*.f64 a a) | overflow | 58 | |
| ↳ | (+.f64 (*.f64 a a) (*.f64 b b)) | overflow | 115 | |
| ↳ | (*.f64 b b) | overflow | 75 | |
| ↳ | (*.f64 (*.f64 a a) (+.f64 #s(literal 1 binary64) a)) | overflow | 76 | |
| ↳ | (*.f64 a a) | overflow | 58 | |
| ↳ | (*.f64 (*.f64 b b) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 3 binary64) a))) | overflow | 86 | |
| ↳ | (+.f64 (*.f64 (*.f64 a a) (+.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 3 binary64) a)))) | overflow | 130 | |
| ↳ | (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (+.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 3 binary64) a))))) | overflow | 130 | |
+.f64 | (+.f64 (*.f64 (*.f64 a a) (+.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 3 binary64) a)))) | nan-rescue | 32 | 0 |
| ↳ | (*.f64 (*.f64 a a) (+.f64 #s(literal 1 binary64) a)) | overflow | 76 | |
| ↳ | (*.f64 a a) | overflow | 58 | |
| ↳ | (*.f64 b b) | overflow | 75 | |
| ↳ | (*.f64 (*.f64 b b) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 3 binary64) a))) | overflow | 86 |
| Predicted + | Predicted - | |
|---|---|---|
| + | 41 | 24 |
| - | 59 | 132 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 41 | 0 | 24 |
| - | 59 | 0 | 132 |
| number | freq |
|---|---|
| 0 | 156 |
| 1 | 86 |
| 2 | 14 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 1 | 0 | 0 |
| - | 0 | 0 | 0 |
| 289.0ms | 2 856× | 0 | valid |
| 27.0ms | 132× | 1 | valid |
| 24.0ms | 84× | 2 | valid |
Compiled 5 832 to 936 computations (84% saved)
ival-mult: 99.0ms (43.8% of total)ival-add: 52.0ms (23% of total)ival-sub: 28.0ms (12.4% of total)ival-pow2: 28.0ms (12.4% of total)adjust: 11.0ms (4.9% of total)exact: 5.0ms (2.2% of total)ival-true: 2.0ms (0.9% of total)ival-assert: 1.0ms (0.4% of total)| 1× | egg-herbie |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 47 | 159 |
| 1 | 171 | 157 |
| 2 | 671 | 155 |
| 3 | 2845 | 155 |
| 4 | 6808 | 155 |
| 0 | 19 | 31 |
| 0 | 32 | 31 |
| 1 | 70 | 31 |
| 2 | 188 | 31 |
| 3 | 587 | 31 |
| 4 | 1955 | 31 |
| 5 | 3491 | 31 |
| 0 | 8062 | 26 |
| 1× | iter limit |
| 1× | node limit |
| 1× | iter limit |
| 1× | node limit |
| Inputs |
|---|
(-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (+.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 3 binary64) a)))))) #s(literal 1 binary64)) |
| Outputs |
|---|
(-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (+.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 3 binary64) a)))))) #s(literal 1 binary64)) |
(fma.f64 (fma.f64 #s(literal 4 binary64) a #s(literal 4 binary64)) (*.f64 a a) (fma.f64 (fma.f64 #s(literal -12 binary64) a #s(literal 4 binary64)) (*.f64 b b) (-.f64 (pow.f64 (fma.f64 b b (*.f64 a a)) #s(literal 2 binary64)) #s(literal 1 binary64)))) |
(abs b)
Compiled 31 to 19 computations (38.7% saved)
Compiled 0 to 2 computations (-∞% saved)
| Status | Accuracy | Program |
|---|---|---|
| 74.5% | (-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (+.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 3 binary64) a)))))) #s(literal 1 binary64)) |
Compiled 62 to 38 computations (38.7% saved)
| 1× | egg-herbie |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 19 | 31 |
| 1 | 37 | 31 |
| 2 | 51 | 31 |
| 3 | 62 | 31 |
| 4 | 79 | 31 |
| 5 | 102 | 31 |
| 6 | 104 | 31 |
| 1× | saturated |
| Inputs |
|---|
(-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (+.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 3 binary64) a)))))) #s(literal 1 binary64)) |
| Outputs |
|---|
(-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (+.f64 (*.f64 (*.f64 a a) (+.f64 #s(literal 1 binary64) a)) (*.f64 (*.f64 b b) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 3 binary64) a)))))) #s(literal 1 binary64)) |
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 3 binary64) a)) (*.f64 b b)) (*.f64 (+.f64 #s(literal 1 binary64) a) (*.f64 a a))) #s(literal 4 binary64)) (pow.f64 (+.f64 (*.f64 b b) (*.f64 a a)) #s(literal 2 binary64))) #s(literal 1 binary64)) |
| 1× | fuel |
Compiled 31 to 19 computations (38.7% saved)
(abs b)
Compiled 248 to 152 computations (38.7% saved)
Loading profile data...