
Time bar (total: 2.9s)
| 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)
| 44.0ms | 260× | 0 | valid |
| 1.0ms | 6× | 0 | invalid |
const: 9.0ms (24.9% of total)ival-div: 6.0ms (16.6% of total)ival-<=: 5.0ms (13.8% of total)ival-mult: 4.0ms (11.1% of total)ival-add: 3.0ms (8.3% of total)ival-log: 3.0ms (8.3% of total)ival-exp: 2.0ms (5.5% of total)ival-sub: 2.0ms (5.5% of total)ival-and: 1.0ms (2.8% of total)ival-assert: 0.0ms (0% of total)exact: 0.0ms (0% of total)| Ground Truth | Overpredictions | Example | Underpredictions | Example | Subexpression |
|---|---|---|---|---|---|
| 95 | 4 | (2.3402161691788922e-14 -2.8776099412242194e-34 -2.0967935721039055e-10 -5.394286952981259e-26 0.0007222529384307563) | 36 | (-3.401444910235466e-38 -0.002696372102946043 -4.157142956304492e-29 -0.02208409644663334 6.4187999623358685e-25) | (/.f32 (*.f32 cosTheta_i cosTheta_O) v) |
| 94 | 4 | (-9.317674551231572e-20 0.0009525000932626426 -8.243998053128446e-37 1.2958679718656267e-18 3.8457900752852936e-10) | 31 | (6.347479430957037e-9 -6.217750849521935e-30 -3.79756536142927e-38 -6.529894562845584e-7 8.330199503000909e-23) | (/.f32 (*.f32 sinTheta_i sinTheta_O) v) |
| 2 | 7 | (-2.2022975213224424e-14 -1.4947056733605177e-19 0.0055222781375050545 -2.033828423009254e-6 0.004138133022934198) | 2 | (-1.1472254895193712e-14 -9.770224096428137e-7 -2.0761093765031546e-5 -0.025362610816955566 0.017909284681081772) | (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))))) |
| 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 | - | (log.f32 (/.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) v))) |
| 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 | 11 | 0 |
| ↳ | (*.f32 sinTheta_i sinTheta_O) | underflow | 88 | |
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 | 7 | 5 |
/.f32 | (/.f32 (*.f32 cosTheta_i cosTheta_O) v) | u/n | 7 | 0 |
| ↳ | (*.f32 cosTheta_i cosTheta_O) | underflow | 80 |
| Predicted + | Predicted - | |
|---|---|---|
| + | 0 | 4 |
| - | 25 | 227 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 0 | 4 | 0 |
| - | 25 | 1 | 226 |
| number | freq |
|---|---|
| 0 | 231 |
| 1 | 25 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 1 | 0 | 0 |
| - | 0 | 0 | 0 |
| 798.0ms | 6 144× | 0 | valid |
Compiled 5 136 to 1 056 computations (79.4% saved)
ival-div: 152.0ms (27.6% of total)ival-mult: 106.0ms (19.2% of total)const: 82.0ms (14.9% of total)ival-log: 63.0ms (11.4% of total)ival-sub: 47.0ms (8.5% of total)ival-add: 46.0ms (8.4% of total)ival-exp: 42.0ms (7.6% of total)exact: 6.0ms (1.1% of total)ival-true: 5.0ms (0.9% of total)ival-assert: 2.0ms (0.4% 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.6% | (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...