
Time bar (total: 3.1s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 3% | 97% | 0% | 0% | 0% | 0 |
| 0% | 0% | 3% | 97% | 0% | 0% | 0% | 1 |
| 0% | 0% | 3% | 97% | 0% | 0% | 0% | 2 |
| 0% | 0% | 3% | 97% | 0% | 0% | 0% | 3 |
| 0% | 0% | 3% | 97% | 0% | 0% | 0% | 4 |
| 0% | 0% | 3% | 97% | 0% | 0% | 0% | 5 |
| 0% | 0% | 1.5% | 97% | 0% | 1.5% | 0% | 6 |
| 0% | 0% | 1.5% | 97% | 0% | 1.5% | 0% | 7 |
| 0% | 0% | 1.5% | 97% | 0% | 1.5% | 0% | 8 |
| 0% | 0% | 1.5% | 97% | 0% | 1.5% | 0% | 9 |
| 0% | 0% | 1.5% | 97% | 0% | 1.5% | 0% | 10 |
| 0% | 0% | 1.5% | 97% | 0% | 1.5% | 0% | 11 |
| 0% | 0% | 1.5% | 97% | 0% | 1.5% | 0% | 12 |
Compiled 65 to 44 computations (32.3% saved)
| 45.0ms | 260× | 0 | valid |
| 1.0ms | 7× | 0 | invalid |
const: 9.0ms (24% of total)ival-div: 7.0ms (18.7% of total)ival-<=: 5.0ms (13.3% of total)ival-mult: 4.0ms (10.7% of total)ival-log: 3.0ms (8% of total)ival-exp: 2.0ms (5.3% of total)ival-add: 2.0ms (5.3% of total)ival-sub: 2.0ms (5.3% of total)ival-and: 2.0ms (5.3% of total)adjust: 0.0ms (0% of total)ival-assert: 0.0ms (0% of total)exact: 0.0ms (0% of total)| Ground Truth | Overpredictions | Example | Underpredictions | Example | Subexpression |
|---|---|---|---|---|---|
| 87 | 4 | (3.6785844688283845e-14 -8.618265823212568e-11 -1.0442239624815997e-26 2.317018751615734e-34 6.627487005409513e-16) | 29 | (-0.04847526177763939 2.0615689155789596e-9 -1.899397978944261e-31 -1.2611986853635314e-14 0.0008453126065433025) | (/.f32 (*.f32 sinTheta_i sinTheta_O) v) |
| 82 | 1 | (-9.402999717418257e-32 3.362237804670024e-20 7.23093194210378e-7 4.63126944325668e-30 1.0551665354796569e-6) | 30 | (-2.509772514054827e-14 -3.6667783972770506e-30 -1.3201550996573785e-37 -6.238091599701277e-19 1.5419096207567692e-25) | (/.f32 (*.f32 cosTheta_i cosTheta_O) v) |
| 1 | 3 | (4.5761988355609226e-14 -2.676154220102034e-12 -1.0329686741373028e-35 5.802758273887321e-10 0.0015078919241204858) | 0 | - | (exp.f32 (+.f32 (+.f32 (-.f32 (-.f32 (/.f32 (*.f32 cosTheta_i cosTheta_O) v) (/.f32 (*.f32 sinTheta_i sinTheta_O) v)) (/.f32 #s(literal 1 binary32) v)) #s(literal 6931/10000 binary32)) (log.f32 (/.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) v))))) |
| 1 | 0 | - | 0 | - | (log.f32 (/.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) v))) |
| 0 | 0 | - | 0 | - | (/.f32 #s(literal 1 binary32) v) |
| 0 | 0 | - | 0 | - | (/.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) v)) |
| 0 | 0 | - | 0 | - | #s(literal 2 binary32) |
| 0 | 0 | - | 0 | - | (+.f32 (+.f32 (-.f32 (-.f32 (/.f32 (*.f32 cosTheta_i cosTheta_O) v) (/.f32 (*.f32 sinTheta_i sinTheta_O) v)) (/.f32 #s(literal 1 binary32) v)) #s(literal 6931/10000 binary32)) (log.f32 (/.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) v)))) |
| 0 | 0 | - | 0 | - | sinTheta_i |
| 0 | 0 | - | 0 | - | v |
| 0 | 0 | - | 0 | - | cosTheta_i |
| 0 | 0 | - | 0 | - | (+.f32 (-.f32 (-.f32 (/.f32 (*.f32 cosTheta_i cosTheta_O) v) (/.f32 (*.f32 sinTheta_i sinTheta_O) v)) (/.f32 #s(literal 1 binary32) v)) #s(literal 6931/10000 binary32)) |
| 0 | 0 | - | 0 | - | sinTheta_O |
| 0 | 0 | - | 0 | - | (*.f32 #s(literal 2 binary32) v) |
| 0 | 0 | - | 0 | - | (*.f32 sinTheta_i sinTheta_O) |
| 0 | 0 | - | 0 | - | #s(literal 1 binary32) |
| 0 | 0 | - | 0 | - | (*.f32 cosTheta_i cosTheta_O) |
| 0 | 0 | - | 0 | - | #s(literal 6931/10000 binary32) |
| 0 | 0 | - | 0 | - | (-.f32 (/.f32 (*.f32 cosTheta_i cosTheta_O) v) (/.f32 (*.f32 sinTheta_i sinTheta_O) v)) |
| 0 | 0 | - | 0 | - | (-.f32 (-.f32 (/.f32 (*.f32 cosTheta_i cosTheta_O) v) (/.f32 (*.f32 sinTheta_i sinTheta_O) v)) (/.f32 #s(literal 1 binary32) v)) |
| 0 | 0 | - | 0 | - | cosTheta_O |
| Operator | Subexpression | Explanation | Count | |
|---|---|---|---|---|
/.f32 | (/.f32 (*.f32 sinTheta_i sinTheta_O) v) | u/n | 10 | 0 |
| ↳ | (*.f32 sinTheta_i sinTheta_O) | underflow | 81 | |
/.f32 | (/.f32 (*.f32 cosTheta_i cosTheta_O) v) | u/n | 10 | 0 |
| ↳ | (*.f32 cosTheta_i cosTheta_O) | underflow | 74 | |
exp.f32 | (exp.f32 (+.f32 (+.f32 (-.f32 (-.f32 (/.f32 (*.f32 cosTheta_i cosTheta_O) v) (/.f32 (*.f32 sinTheta_i sinTheta_O) v)) (/.f32 #s(literal 1 binary32) v)) #s(literal 6931/10000 binary32)) (log.f32 (/.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) v))))) | sensitivity | 4 | 3 |
log.f32 | (log.f32 (/.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) v))) | oflow-rescue | 1 | 0 |
| ↳ | (/.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) v)) | overflow | 1 |
| Predicted + | Predicted - | |
|---|---|---|
| + | 2 | 0 |
| - | 23 | 231 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 2 | 0 | 0 |
| - | 23 | 3 | 228 |
| number | freq |
|---|---|
| 0 | 231 |
| 1 | 25 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 1 | 0 | 0 |
| - | 0 | 0 | 0 |
| 836.0ms | 6 144× | 0 | valid |
Compiled 5 136 to 1 056 computations (79.4% saved)
ival-div: 158.0ms (27.5% of total)ival-mult: 111.0ms (19.3% of total)const: 84.0ms (14.6% of total)ival-log: 64.0ms (11.1% of total)ival-add: 49.0ms (8.5% of total)ival-sub: 49.0ms (8.5% of total)ival-exp: 43.0ms (7.5% of total)exact: 6.0ms (1% of total)ival-true: 5.0ms (0.9% of total)adjust: 2.0ms (0.3% of total)ival-assert: 2.0ms (0.3% of total)| 1× | egg-herbie |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 159 | 481 |
| 1 | 462 | 447 |
| 2 | 1368 | 440 |
| 3 | 4990 | 440 |
| 0 | 21 | 25 |
| 0 | 34 | 23 |
| 1 | 63 | 22 |
| 2 | 151 | 22 |
| 3 | 471 | 22 |
| 4 | 1717 | 22 |
| 5 | 5047 | 22 |
| 0 | 8134 | 19 |
| 1× | iter limit |
| 1× | node limit |
| 1× | iter limit |
| 1× | node limit |
| Inputs |
|---|
(exp.f32 (+.f32 (+.f32 (-.f32 (-.f32 (/.f32 (*.f32 cosTheta_i cosTheta_O) v) (/.f32 (*.f32 sinTheta_i sinTheta_O) v)) (/.f32 #s(literal 1 binary32) v)) #s(literal 6931/10000 binary32)) (log.f32 (/.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) v))))) |
| Outputs |
|---|
(exp.f32 (+.f32 (+.f32 (-.f32 (-.f32 (/.f32 (*.f32 cosTheta_i cosTheta_O) v) (/.f32 (*.f32 sinTheta_i sinTheta_O) v)) (/.f32 #s(literal 1 binary32) v)) #s(literal 6931/10000 binary32)) (log.f32 (/.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) v))))) |
(*.f32 (/.f32 #s(literal 1/2 binary32) v) (exp.f32 (fma.f32 (fma.f32 sinTheta_O sinTheta_i #s(literal 1 binary32)) (/.f32 #s(literal -1 binary32) v) (fma.f32 (/.f32 cosTheta_O v) cosTheta_i #s(literal 6931/10000 binary32))))) |
(sort cosTheta_i cosTheta_O)
(sort sinTheta_i sinTheta_O)
Compiled 25 to 21 computations (16% saved)
Compiled 0 to 5 computations (-∞% saved)
| Status | Accuracy | Program |
|---|---|---|
| 99.4% | (exp.f32 (+.f32 (+.f32 (-.f32 (-.f32 (/.f32 (*.f32 cosTheta_i cosTheta_O) v) (/.f32 (*.f32 sinTheta_i sinTheta_O) v)) (/.f32 #s(literal 1 binary32) v)) #s(literal 6931/10000 binary32)) (log.f32 (/.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) v))))) |
Compiled 50 to 42 computations (16% saved)
| 1× | egg-herbie |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 21 | 25 |
| 1 | 33 | 25 |
| 2 | 47 | 25 |
| 3 | 63 | 25 |
| 4 | 77 | 25 |
| 5 | 106 | 25 |
| 6 | 148 | 25 |
| 7 | 152 | 25 |
| 1× | saturated |
| Inputs |
|---|
(exp.f32 (+.f32 (+.f32 (-.f32 (-.f32 (/.f32 (*.f32 cosTheta_i cosTheta_O) v) (/.f32 (*.f32 sinTheta_i sinTheta_O) v)) (/.f32 #s(literal 1 binary32) v)) #s(literal 6931/10000 binary32)) (log.f32 (/.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) v))))) |
| Outputs |
|---|
(exp.f32 (+.f32 (+.f32 (-.f32 (-.f32 (/.f32 (*.f32 cosTheta_i cosTheta_O) v) (/.f32 (*.f32 sinTheta_i sinTheta_O) v)) (/.f32 #s(literal 1 binary32) v)) #s(literal 6931/10000 binary32)) (log.f32 (/.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) v))))) |
(exp.f32 (+.f32 (log.f32 (/.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) v))) (+.f32 #s(literal 6931/10000 binary32) (-.f32 (-.f32 (/.f32 (*.f32 cosTheta_O cosTheta_i) v) (/.f32 (*.f32 sinTheta_O sinTheta_i) v)) (/.f32 #s(literal 1 binary32) v))))) |
| 1× | fuel |
Compiled 25 to 21 computations (16% saved)
(sort sinTheta_i sinTheta_O)
(sort cosTheta_i cosTheta_O)
Compiled 300 to 252 computations (16% saved)
Loading profile data...