
Time bar (total: 1.9s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 0.8% | 99.2% | 0% | 0% | 0% | 0 |
| 0% | 0% | 0.8% | 99.2% | 0% | 0% | 0% | 1 |
| 0% | 0% | 0.8% | 99.2% | 0% | 0% | 0% | 2 |
| 0% | 0% | 0.8% | 99.2% | 0% | 0% | 0% | 3 |
| 0% | 0% | 0.8% | 99.2% | 0% | 0% | 0% | 4 |
| 0% | 0% | 0.8% | 99.2% | 0% | 0% | 0% | 5 |
| 16.7% | 0.1% | 0.5% | 99.2% | 0% | 0.2% | 0% | 6 |
| 25% | 0.1% | 0.4% | 99.2% | 0% | 0.2% | 0% | 7 |
| 25% | 0.1% | 0.4% | 99.2% | 0% | 0.2% | 0% | 8 |
| 25% | 0.1% | 0.4% | 99.2% | 0% | 0.2% | 0% | 9 |
| 45% | 0.2% | 0.3% | 99.2% | 0% | 0.3% | 0% | 10 |
| 52.5% | 0.3% | 0.2% | 99.2% | 0% | 0.3% | 0% | 11 |
| 52.5% | 0.3% | 0.2% | 99.2% | 0% | 0.3% | 0% | 12 |
Compiled 59 to 39 computations (33.9% saved)
| 37.0ms | 260× | 0 | valid |
| 15.0ms | 72× | 0 | invalid |
ival-sin: 11.0ms (25.8% of total)ival-mult: 10.0ms (23.5% of total)const: 5.0ms (11.7% of total)ival-<=: 5.0ms (11.7% of total)ival-div: 4.0ms (9.4% of total)ival-sub: 2.0ms (4.7% of total)ival-and: 2.0ms (4.7% of total)ival-pi: 1.0ms (2.3% of total)ival-add: 1.0ms (2.3% of total)exact: 1.0ms (2.3% of total)adjust: 0.0ms (0% of total)ival-assert: 0.0ms (0% of total)| Ground Truth | Overpredictions | Example | Underpredictions | Example | Subexpression |
|---|---|---|---|---|---|
| 43 | 7 | (2.5430925023542604e-30 8.340051982358432e-10 -6.477235969803985e-10 1.0760496138573217e-7) | 0 | - | (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 #s(literal 1 binary32) (sin.f32 normAngle))) |
| 1 | 0 | - | 0 | - | (*.f32 (sin.f32 (*.f32 (-.f32 #s(literal 1 binary32) u) normAngle)) (/.f32 #s(literal 1 binary32) (sin.f32 normAngle))) |
| 0 | 0 | - | 0 | - | (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 #s(literal 1 binary32) u) normAngle)) (/.f32 #s(literal 1 binary32) (sin.f32 normAngle))) n0_i) |
| 0 | 6 | (7.375708683081931e-37 4.786116915056482e-5 1.4614634277848007e-34 1.7654190909621148e-26) | 0 | - | (sin.f32 (*.f32 (-.f32 #s(literal 1 binary32) u) normAngle)) |
| 0 | 0 | - | 0 | - | (*.f32 u normAngle) |
| 0 | 0 | - | 0 | - | n1_i |
| 0 | 0 | - | 0 | - | (*.f32 (-.f32 #s(literal 1 binary32) u) normAngle) |
| 0 | 0 | - | 0 | - | (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 #s(literal 1 binary32) (sin.f32 normAngle))) n1_i) |
| 0 | 0 | - | 0 | - | n0_i |
| 0 | 0 | - | 0 | - | normAngle |
| 0 | 0 | - | 0 | - | (-.f32 #s(literal 1 binary32) u) |
| 0 | 58 | (4.95961507539916e-16 0.0007194596691988409 -6.334887042019899e-13 1.7564288503465634e-20) | 0 | - | (+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 #s(literal 1 binary32) u) normAngle)) (/.f32 #s(literal 1 binary32) (sin.f32 normAngle))) n0_i) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 #s(literal 1 binary32) (sin.f32 normAngle))) n1_i)) |
| 0 | 0 | - | 0 | - | #s(literal 1 binary32) |
| 0 | 5 | (6.03511044413637e-28 2.6959190435604796e-8 -4.479171436446069e-18 -1.3245880963237741e-18) | 0 | - | (sin.f32 (*.f32 u normAngle)) |
| 0 | 0 | - | 0 | - | u |
| 0 | 0 | - | 0 | - | (sin.f32 normAngle) |
| 0 | 0 | - | 0 | - | (/.f32 #s(literal 1 binary32) (sin.f32 normAngle)) |
| Operator | Subexpression | Explanation | Count | |
|---|---|---|---|---|
+.f32 | (+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 #s(literal 1 binary32) u) normAngle)) (/.f32 #s(literal 1 binary32) (sin.f32 normAngle))) n0_i) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 #s(literal 1 binary32) (sin.f32 normAngle))) n1_i)) | cancellation | 58 | 0 |
*.f32 | (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 #s(literal 1 binary32) (sin.f32 normAngle))) | n*u | 47 | 0 |
sin.f32 | (sin.f32 (*.f32 (-.f32 #s(literal 1 binary32) u) normAngle)) | cancelation | 6 | 0 |
sin.f32 | (sin.f32 (*.f32 u normAngle)) | cancelation | 5 | 0 |
*.f32 | (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 #s(literal 1 binary32) (sin.f32 normAngle))) | u*o | 1 | 0 |
| ↳ | (*.f32 u normAngle) | underflow | 50 | |
| ↳ | (sin.f32 (*.f32 u normAngle)) | underflow | 50 | |
| ↳ | (/.f32 #s(literal 1 binary32) (sin.f32 normAngle)) | overflow | 1 | |
*.f32 | (*.f32 (sin.f32 (*.f32 (-.f32 #s(literal 1 binary32) u) normAngle)) (/.f32 #s(literal 1 binary32) (sin.f32 normAngle))) | u*o | 1 | 0 |
| ↳ | (*.f32 (-.f32 #s(literal 1 binary32) u) normAngle) | underflow | 1 | |
| ↳ | (sin.f32 (*.f32 (-.f32 #s(literal 1 binary32) u) normAngle)) | underflow | 1 | |
| ↳ | (/.f32 #s(literal 1 binary32) (sin.f32 normAngle)) | overflow | 1 |
| Predicted + | Predicted - | |
|---|---|---|
| + | 19 | 0 |
| - | 83 | 154 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 19 | 0 | 0 |
| - | 83 | 0 | 154 |
| number | freq |
|---|---|
| 0 | 154 |
| 1 | 86 |
| 2 | 16 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 1 | 0 | 0 |
| - | 0 | 0 | 0 |
| 308.0ms | 3 036× | 0 | valid |
| 7.0ms | 36× | 1 | valid |
Compiled 3 960 to 840 computations (78.8% saved)
ival-mult: 93.0ms (44% of total)ival-sin: 64.0ms (30.3% of total)ival-div: 20.0ms (9.5% of total)ival-sub: 16.0ms (7.6% of total)ival-add: 12.0ms (5.7% of total)adjust: 2.0ms (0.9% 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 | 106 | 368 |
| 1 | 279 | 300 |
| 2 | 741 | 283 |
| 3 | 1977 | 255 |
| 4 | 3516 | 252 |
| 5 | 6491 | 252 |
| 0 | 17 | 25 |
| 0 | 29 | 25 |
| 1 | 48 | 21 |
| 2 | 88 | 20 |
| 3 | 156 | 18 |
| 4 | 203 | 18 |
| 5 | 238 | 18 |
| 6 | 282 | 18 |
| 7 | 367 | 18 |
| 8 | 510 | 18 |
| 9 | 609 | 18 |
| 10 | 735 | 18 |
| 11 | 1173 | 18 |
| 12 | 1886 | 18 |
| 13 | 2293 | 18 |
| 14 | 2312 | 18 |
| 15 | 2313 | 18 |
| 16 | 2313 | 18 |
| 0 | 2313 | 17 |
| 1× | iter limit |
| 1× | saturated |
| 1× | iter limit |
| 1× | node limit |
| Inputs |
|---|
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 #s(literal 1 binary32) u) normAngle)) (/.f32 #s(literal 1 binary32) (sin.f32 normAngle))) n0_i) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 #s(literal 1 binary32) (sin.f32 normAngle))) n1_i)) |
| Outputs |
|---|
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 #s(literal 1 binary32) u) normAngle)) (/.f32 #s(literal 1 binary32) (sin.f32 normAngle))) n0_i) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 #s(literal 1 binary32) (sin.f32 normAngle))) n1_i)) |
(/.f32 (fma.f32 n1_i (sin.f32 (*.f32 normAngle u)) (*.f32 n0_i (sin.f32 (*.f32 normAngle (-.f32 #s(literal 1 binary32) u))))) (sin.f32 normAngle)) |
(abs normAngle)
Compiled 25 to 17 computations (32% saved)
Compiled 0 to 4 computations (-∞% saved)
| Status | Accuracy | Program |
|---|---|---|
| 96.2% | (+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 #s(literal 1 binary32) u) normAngle)) (/.f32 #s(literal 1 binary32) (sin.f32 normAngle))) n0_i) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 #s(literal 1 binary32) (sin.f32 normAngle))) n1_i)) |
Compiled 50 to 34 computations (32% saved)
| 1× | egg-herbie |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 17 | 25 |
| 1 | 29 | 25 |
| 2 | 33 | 25 |
| 3 | 35 | 25 |
| 4 | 36 | 25 |
| 1× | saturated |
| Inputs |
|---|
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 #s(literal 1 binary32) u) normAngle)) (/.f32 #s(literal 1 binary32) (sin.f32 normAngle))) n0_i) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 #s(literal 1 binary32) (sin.f32 normAngle))) n1_i)) |
| Outputs |
|---|
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 #s(literal 1 binary32) u) normAngle)) (/.f32 #s(literal 1 binary32) (sin.f32 normAngle))) n0_i) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 #s(literal 1 binary32) (sin.f32 normAngle))) n1_i)) |
(+.f32 (*.f32 n1_i (*.f32 (sin.f32 (*.f32 normAngle u)) (/.f32 #s(literal 1 binary32) (sin.f32 normAngle)))) (*.f32 n0_i (*.f32 (/.f32 #s(literal 1 binary32) (sin.f32 normAngle)) (sin.f32 (*.f32 normAngle (-.f32 #s(literal 1 binary32) u)))))) |
| 1× | fuel |
Compiled 25 to 17 computations (32% saved)
(abs normAngle)
Compiled 200 to 136 computations (32% saved)
Loading profile data...