Time bar (total: 8.5s)
| 1× | search |
| True | Other | False | Iter |
|---|---|---|---|
| 0% | 0.8% | 99.2% | 0 |
| 0% | 0.8% | 99.2% | 1 |
| 0% | 0.8% | 99.2% | 2 |
| 0% | 0.8% | 99.2% | 3 |
| 0% | 0.8% | 99.2% | 4 |
| 0% | 0.8% | 99.2% | 5 |
| 0.2% | 0.4% | 99.4% | 6 |
| 0.2% | 0.4% | 99.4% | 7 |
| 0.2% | 0.4% | 99.4% | 8 |
| 0.2% | 0.4% | 99.4% | 9 |
| 0.3% | 0.2% | 99.5% | 10 |
| 0.3% | 0.2% | 99.5% | 11 |
| 0.3% | 0.2% | 99.5% | 12 |
| 0.3% | 0.2% | 99.5% | 13 |
| 0.3% | 0.1% | 99.6% | 14 |
Compiled 62 to 45 computations (27.4% saved)
| 2.8s | 8256× | body | 128 | valid |
| 357.0ms | 1045× | body | 128 | invalid |
Compiled 124 to 90 computations (27.4% saved)
| 2× | egg-herbie |
| 516× | fma-neg_binary32 |
| 426× | fma-def_binary32 |
| 304× | distribute-rgt-in_binary32 |
| 225× | unsub-neg_binary32 |
| 193× | cancel-sign-sub-inv_binary32 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 75 | 259 |
| 1 | 186 | 217 |
| 2 | 445 | 217 |
| 3 | 942 | 182 |
| 4 | 1406 | 182 |
| 5 | 1644 | 182 |
| 6 | 1945 | 182 |
| 7 | 2744 | 182 |
| 8 | 4465 | 182 |
| 0 | 4 | 4 |
| 1× | saturated |
| 1× | node limit |
| Inputs |
|---|
0 |
1 |
2 |
3 |
| Outputs |
|---|
0 |
1 |
2 |
3 |
| Inputs |
|---|
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i)) |
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 normAngle) u)) (/.f32 1 (sin.f32 u))) n0_i) (*.f32 (*.f32 (sin.f32 (*.f32 normAngle u)) (/.f32 1 (sin.f32 u))) n1_i)) |
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) n0_i)) (/.f32 1 (sin.f32 n0_i))) normAngle) (*.f32 (*.f32 (sin.f32 (*.f32 u n0_i)) (/.f32 1 (sin.f32 n0_i))) n1_i)) |
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) n1_i)) (/.f32 1 (sin.f32 n1_i))) n0_i) (*.f32 (*.f32 (sin.f32 (*.f32 u n1_i)) (/.f32 1 (sin.f32 n1_i))) normAngle)) |
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 n0_i) normAngle)) (/.f32 1 (sin.f32 normAngle))) u) (*.f32 (*.f32 (sin.f32 (*.f32 n0_i normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i)) |
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 n1_i) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) (*.f32 (*.f32 (sin.f32 (*.f32 n1_i normAngle)) (/.f32 1 (sin.f32 normAngle))) u)) |
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i)) |
| Outputs |
|---|
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i)) |
(fma.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i (*.f32 (sin.f32 (*.f32 u normAngle)) (*.f32 (/.f32 1 (sin.f32 normAngle)) n1_i))) |
(fma.f32 (/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (sin.f32 normAngle)) n0_i (*.f32 (/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) n1_i)) |
(fma.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 n1_i (sin.f32 normAngle)) (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle)))) |
(/.f32 (fma.f32 (sin.f32 (*.f32 u normAngle)) n1_i (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i)) (sin.f32 normAngle)) |
(/.f32 (fma.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) n0_i (*.f32 (sin.f32 (*.f32 u normAngle)) n1_i)) (sin.f32 normAngle)) |
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 normAngle) u)) (/.f32 1 (sin.f32 u))) n0_i) (*.f32 (*.f32 (sin.f32 (*.f32 normAngle u)) (/.f32 1 (sin.f32 u))) n1_i)) |
(fma.f32 (*.f32 (sin.f32 (*.f32 u (-.f32 1 normAngle))) (/.f32 1 (sin.f32 u))) n0_i (*.f32 (sin.f32 (*.f32 u normAngle)) (*.f32 (/.f32 1 (sin.f32 u)) n1_i))) |
(fma.f32 n0_i (/.f32 (sin.f32 (*.f32 u (-.f32 1 normAngle))) (sin.f32 u)) (*.f32 n1_i (/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 u)))) |
(fma.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 n1_i (sin.f32 u)) (*.f32 (sin.f32 (*.f32 u (-.f32 1 normAngle))) (/.f32 n0_i (sin.f32 u)))) |
(/.f32 (fma.f32 n0_i (sin.f32 (-.f32 u (*.f32 u normAngle))) (*.f32 (sin.f32 (*.f32 u normAngle)) n1_i)) (sin.f32 u)) |
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) n0_i)) (/.f32 1 (sin.f32 n0_i))) normAngle) (*.f32 (*.f32 (sin.f32 (*.f32 u n0_i)) (/.f32 1 (sin.f32 n0_i))) n1_i)) |
(fma.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) n0_i)) (/.f32 1 (sin.f32 n0_i))) normAngle (*.f32 (sin.f32 (*.f32 u n0_i)) (*.f32 (/.f32 1 (sin.f32 n0_i)) n1_i))) |
(fma.f32 normAngle (/.f32 (sin.f32 (*.f32 (-.f32 1 u) n0_i)) (sin.f32 n0_i)) (/.f32 (*.f32 n1_i (sin.f32 (*.f32 u n0_i))) (sin.f32 n0_i))) |
(fma.f32 n1_i (/.f32 (sin.f32 (*.f32 u n0_i)) (sin.f32 n0_i)) (*.f32 (sin.f32 (*.f32 (-.f32 1 u) n0_i)) (/.f32 normAngle (sin.f32 n0_i)))) |
(/.f32 (fma.f32 normAngle (sin.f32 (-.f32 n0_i (*.f32 u n0_i))) (*.f32 n1_i (sin.f32 (*.f32 u n0_i)))) (sin.f32 n0_i)) |
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) n1_i)) (/.f32 1 (sin.f32 n1_i))) n0_i) (*.f32 (*.f32 (sin.f32 (*.f32 u n1_i)) (/.f32 1 (sin.f32 n1_i))) normAngle)) |
(fma.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) n1_i)) (/.f32 1 (sin.f32 n1_i))) n0_i (*.f32 normAngle (*.f32 (/.f32 1 (sin.f32 n1_i)) (sin.f32 (*.f32 u n1_i))))) |
(fma.f32 normAngle (/.f32 (sin.f32 (*.f32 u n1_i)) (sin.f32 n1_i)) (*.f32 n0_i (/.f32 (sin.f32 (*.f32 (-.f32 1 u) n1_i)) (sin.f32 n1_i)))) |
(fma.f32 (sin.f32 (*.f32 (-.f32 1 u) n1_i)) (/.f32 n0_i (sin.f32 n1_i)) (*.f32 normAngle (/.f32 (sin.f32 (*.f32 u n1_i)) (sin.f32 n1_i)))) |
(/.f32 (fma.f32 n0_i (sin.f32 (-.f32 n1_i (*.f32 u n1_i))) (*.f32 normAngle (sin.f32 (*.f32 u n1_i)))) (sin.f32 n1_i)) |
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 n0_i) normAngle)) (/.f32 1 (sin.f32 normAngle))) u) (*.f32 (*.f32 (sin.f32 (*.f32 n0_i normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i)) |
(fma.f32 (*.f32 (/.f32 1 (sin.f32 normAngle)) (sin.f32 (*.f32 normAngle (-.f32 1 n0_i)))) u (*.f32 (sin.f32 (*.f32 normAngle n0_i)) (*.f32 (/.f32 1 (sin.f32 normAngle)) n1_i))) |
(fma.f32 u (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 n0_i))) (sin.f32 normAngle)) (*.f32 n1_i (/.f32 (sin.f32 (*.f32 normAngle n0_i)) (sin.f32 normAngle)))) |
(*.f32 (/.f32 1 (sin.f32 normAngle)) (+.f32 (*.f32 n1_i (sin.f32 (*.f32 normAngle n0_i))) (*.f32 u (sin.f32 (*.f32 normAngle (-.f32 1 n0_i)))))) |
(/.f32 (fma.f32 u (sin.f32 (*.f32 normAngle (-.f32 1 n0_i))) (*.f32 n1_i (sin.f32 (*.f32 normAngle n0_i)))) (sin.f32 normAngle)) |
(/.f32 (fma.f32 u (sin.f32 (-.f32 normAngle (*.f32 normAngle n0_i))) (*.f32 n1_i (sin.f32 (*.f32 normAngle n0_i)))) (sin.f32 normAngle)) |
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 n1_i) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) (*.f32 (*.f32 (sin.f32 (*.f32 n1_i normAngle)) (/.f32 1 (sin.f32 normAngle))) u)) |
(fma.f32 (*.f32 (/.f32 1 (sin.f32 normAngle)) (sin.f32 (*.f32 normAngle (-.f32 1 n1_i)))) n0_i (*.f32 u (*.f32 (/.f32 1 (sin.f32 normAngle)) (sin.f32 (*.f32 normAngle n1_i))))) |
(fma.f32 n0_i (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 n1_i))) (sin.f32 normAngle)) (*.f32 u (/.f32 (sin.f32 (*.f32 normAngle n1_i)) (sin.f32 normAngle)))) |
(*.f32 (/.f32 1 (sin.f32 normAngle)) (+.f32 (*.f32 n0_i (sin.f32 (*.f32 normAngle (-.f32 1 n1_i)))) (*.f32 u (sin.f32 (*.f32 normAngle n1_i))))) |
(/.f32 (fma.f32 u (sin.f32 (*.f32 normAngle n1_i)) (*.f32 n0_i (sin.f32 (-.f32 normAngle (*.f32 normAngle n1_i))))) (sin.f32 normAngle)) |
(/.f32 (fma.f32 n0_i (sin.f32 (-.f32 normAngle (*.f32 normAngle n1_i))) (*.f32 u (sin.f32 (*.f32 normAngle n1_i)))) (sin.f32 normAngle)) |
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i)) |
(fma.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i (*.f32 n0_i (*.f32 (/.f32 1 (sin.f32 normAngle)) (sin.f32 (*.f32 u normAngle))))) |
(fma.f32 n0_i (/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) (/.f32 (*.f32 n1_i (sin.f32 (*.f32 (-.f32 1 u) normAngle))) (sin.f32 normAngle))) |
(fma.f32 n0_i (/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n1_i (sin.f32 normAngle)))) |
(/.f32 (fma.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n1_i (*.f32 n0_i (sin.f32 (*.f32 u normAngle)))) (sin.f32 normAngle)) |
(/.f32 (fma.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) n1_i (*.f32 n0_i (sin.f32 (*.f32 u normAngle)))) (sin.f32 normAngle)) |
Compiled 29 to 20 computations (31% saved)
| 1× | egg-herbie |
| 717× | fma-def_binary32 |
| 598× | times-frac_binary32 |
| 385× | fma-neg_binary32 |
| 232× | div-sub_binary32 |
| 205× | distribute-neg-frac_binary32 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 18 | 37 |
| 1 | 38 | 31 |
| 2 | 84 | 31 |
| 3 | 172 | 26 |
| 4 | 261 | 26 |
| 5 | 312 | 26 |
| 6 | 382 | 26 |
| 7 | 486 | 26 |
| 8 | 746 | 26 |
| 9 | 880 | 26 |
| 10 | 1085 | 26 |
| 11 | 1764 | 26 |
| 12 | 3922 | 26 |
| 1× | node limit |
| Inputs |
|---|
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i)) |
| Outputs |
|---|
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i)) |
(fma.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i (*.f32 (sin.f32 (*.f32 u normAngle)) (*.f32 (/.f32 1 (sin.f32 normAngle)) n1_i))) |
(fma.f32 (/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) n1_i (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle))) |
(fma.f32 (/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (sin.f32 normAngle)) n0_i (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 n1_i (sin.f32 normAngle)))) |
(/.f32 (fma.f32 (sin.f32 (*.f32 u normAngle)) n1_i (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i)) (sin.f32 normAngle)) |
(/.f32 (fma.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i (*.f32 (sin.f32 (*.f32 u normAngle)) n1_i)) (sin.f32 normAngle)) |
(/.f32 (fma.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) n0_i (*.f32 (sin.f32 (*.f32 u normAngle)) n1_i)) (sin.f32 normAngle)) |
3 alts after pruning (3 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 0 | 2 | 2 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 0 | 3 | 3 |
| Status | Error | Program |
|---|---|---|
| 8.3b | (/.f32 (fma.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) n0_i (*.f32 (sin.f32 (*.f32 u normAngle)) n1_i)) (sin.f32 normAngle)) | |
| ▶ | 0.9b | (+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i)) |
Compiled 146 to 89 computations (39% saved)
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.1b | (*.f32 (-.f32 1 u) normAngle) |
| ✓ | 0.1b | (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) |
| ✓ | 0.3b | (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) |
| ✓ | 1.7b | (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) |
27 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 16.0ms | n0_i | @ | 0 | (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) |
| 4.0ms | u | @ | 0 | (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) |
| 3.0ms | normAngle | @ | 0 | (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) |
| 3.0ms | normAngle | @ | 0 | (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) |
| 2.0ms | u | @ | inf | (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) |
| 1× | batch-egg-rewrite |
| 625× | prod-diff_binary32 |
| 158× | add-sqr-sqrt_binary32 |
| 155× | *-un-lft-identity_binary32 |
| 155× | pow1_binary32 |
| 144× | add-cbrt-cube_binary32 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 15 | 49 |
| 1 | 312 | 49 |
| 2 | 4013 | 49 |
| 1× | node limit |
| Inputs |
|---|
(*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) |
(*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) |
(*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) |
(*.f32 (-.f32 1 u) normAngle) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (sin.f32 normAngle) (sin.f32 (*.f32 u normAngle))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 u normAngle))) 2) (/.f32 (sin.f32 normAngle) (cbrt.f32 (sin.f32 (*.f32 u normAngle)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (sqrt.f32 (sin.f32 (*.f32 u normAngle))) (/.f32 (sin.f32 normAngle) (sqrt.f32 (sin.f32 (*.f32 u normAngle)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (sin.f32 (*.f32 u normAngle))) (neg.f32 (sin.f32 normAngle)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (/.f32 (sin.f32 (*.f32 u normAngle)) (sqrt.f32 (sin.f32 normAngle))) (sqrt.f32 (sin.f32 normAngle)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (/.f32 (sin.f32 (*.f32 u normAngle)) 1) (sin.f32 normAngle))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (/.f32 (sin.f32 (*.f32 u normAngle)) (cbrt.f32 (pow.f32 (sin.f32 normAngle) 2))) (cbrt.f32 (sin.f32 normAngle)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 -1 (sin.f32 (*.f32 u normAngle))) (neg.f32 (sin.f32 normAngle)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) -1) (neg.f32 (sin.f32 normAngle)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (/.f32 (pow.f32 (sin.f32 (*.f32 u normAngle)) 3) (pow.f32 (sin.f32 normAngle) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (sin.f32 (*.f32 u normAngle)) 3) (pow.f32 (/.f32 1 (sin.f32 normAngle)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (/.f32 1 (sin.f32 normAngle)) 3) (pow.f32 (sin.f32 (*.f32 u normAngle)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)))))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (sin.f32 normAngle) (sin.f32 (*.f32 normAngle (-.f32 1 u)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u)))) 2) (/.f32 (sin.f32 normAngle) (cbrt.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (sqrt.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u)))) (/.f32 (sin.f32 normAngle) (sqrt.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u)))) (neg.f32 (sin.f32 normAngle)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sqrt.f32 (sin.f32 normAngle))) (sqrt.f32 (sin.f32 normAngle)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) 1) (sin.f32 normAngle))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (cbrt.f32 (pow.f32 (sin.f32 normAngle) 2))) (cbrt.f32 (sin.f32 normAngle)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 -1 (sin.f32 (*.f32 normAngle (-.f32 1 u)))) (neg.f32 (sin.f32 normAngle)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) -1) (neg.f32 (sin.f32 normAngle)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (/.f32 (pow.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) 3) (pow.f32 (sin.f32 normAngle) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (/.f32 1 (sin.f32 normAngle)) 3) (pow.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) 3) (pow.f32 (/.f32 1 (sin.f32 normAngle)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)))))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 n0_i (sin.f32 normAngle))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) n0_i) (sin.f32 normAngle))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 n0_i (sin.f32 (*.f32 normAngle (-.f32 1 u)))) (sin.f32 normAngle))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 n0_i (sin.f32 normAngle))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 n0_i (sin.f32 normAngle))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 n0_i (sin.f32 normAngle)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 n0_i (sin.f32 normAngle)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 n0_i (sin.f32 normAngle))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u)))) (/.f32 n0_i (sin.f32 normAngle))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 n0_i (sin.f32 normAngle))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 n0_i (sin.f32 normAngle))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) 3) (pow.f32 n0_i 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 n0_i 3) (pow.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 n0_i (sin.f32 normAngle)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 n0_i (sin.f32 normAngle)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 n0_i (sin.f32 normAngle)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 n0_i (sin.f32 normAngle))))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f32 normAngle (*.f32 (neg.f32 u) normAngle))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 normAngle (*.f32 normAngle (neg.f32 u)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 normAngle (-.f32 1 u)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 1 (pow.f32 u 3)) normAngle) (+.f32 1 (fma.f32 u u u)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 1 (*.f32 u u)) normAngle) (+.f32 u 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 normAngle (-.f32 1 (pow.f32 u 3))) (+.f32 1 (fma.f32 u u u)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 normAngle (-.f32 1 (*.f32 u u))) (+.f32 u 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 normAngle (-.f32 1 u)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 normAngle (-.f32 1 u)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 normAngle (-.f32 1 u))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 normAngle (-.f32 1 u))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 normAngle (-.f32 1 u)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 normAngle) (-.f32 1 u)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 normAngle (-.f32 1 u)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 normAngle (-.f32 1 u)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 normAngle 3) (pow.f32 (-.f32 1 u) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (-.f32 1 u) 3) (pow.f32 normAngle 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 normAngle (-.f32 1 u))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 normAngle (-.f32 1 u))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 normAngle (-.f32 1 u))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 normAngle (-.f32 1 u)))))))) |
| 1× | egg-herbie |
| 691× | cancel-sign-sub-inv_binary32 |
| 391× | fma-def_binary32 |
| 371× | associate-*r*_binary32 |
| 266× | associate-+r+_binary32 |
| 236× | associate-*l*_binary32 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 263 | 2410 |
| 1 | 910 | 2364 |
| 2 | 3737 | 2360 |
| 1× | node limit |
| Inputs |
|---|
(/.f32 (*.f32 u normAngle) (sin.f32 normAngle)) |
(-.f32 (/.f32 (*.f32 u normAngle) (sin.f32 normAngle)) (*.f32 1/6 (/.f32 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 3)) (sin.f32 normAngle)))) |
(-.f32 (+.f32 (*.f32 1/120 (/.f32 (*.f32 (pow.f32 u 5) (pow.f32 normAngle 5)) (sin.f32 normAngle))) (/.f32 (*.f32 u normAngle) (sin.f32 normAngle))) (*.f32 1/6 (/.f32 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 3)) (sin.f32 normAngle)))) |
(-.f32 (+.f32 (*.f32 1/120 (/.f32 (*.f32 (pow.f32 u 5) (pow.f32 normAngle 5)) (sin.f32 normAngle))) (/.f32 (*.f32 u normAngle) (sin.f32 normAngle))) (+.f32 (*.f32 1/5040 (/.f32 (*.f32 (pow.f32 u 7) (pow.f32 normAngle 7)) (sin.f32 normAngle))) (*.f32 1/6 (/.f32 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 3)) (sin.f32 normAngle))))) |
(/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) |
u |
(-.f32 (+.f32 (*.f32 1/6 (*.f32 u (pow.f32 normAngle 2))) u) (*.f32 1/6 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 2)))) |
(-.f32 (+.f32 (*.f32 1/6 (*.f32 u (pow.f32 normAngle 2))) (+.f32 (*.f32 1/120 (*.f32 (pow.f32 u 5) (pow.f32 normAngle 4))) (+.f32 (*.f32 7/360 (*.f32 u (pow.f32 normAngle 4))) u))) (+.f32 (*.f32 1/6 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 2))) (*.f32 1/36 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 4))))) |
(-.f32 (+.f32 (*.f32 1/120 (*.f32 (pow.f32 u 5) (pow.f32 normAngle 4))) (+.f32 (*.f32 31/15120 (*.f32 u (pow.f32 normAngle 6))) (+.f32 (*.f32 1/720 (*.f32 (pow.f32 u 5) (pow.f32 normAngle 6))) (+.f32 u (+.f32 (*.f32 7/360 (*.f32 u (pow.f32 normAngle 4))) (*.f32 1/6 (*.f32 u (pow.f32 normAngle 2)))))))) (+.f32 (*.f32 1/6 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 2))) (+.f32 (*.f32 1/5040 (*.f32 (pow.f32 u 7) (pow.f32 normAngle 6))) (+.f32 (*.f32 1/36 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 4))) (*.f32 7/2160 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 6))))))) |
(/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) |
1 |
(-.f32 1 (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle))) |
(-.f32 1 (+.f32 (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) (*.f32 1/2 (*.f32 (pow.f32 u 2) (pow.f32 normAngle 2))))) |
(-.f32 (+.f32 (*.f32 1/6 (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 (pow.f32 u 3) (pow.f32 normAngle 3))) (sin.f32 normAngle))) 1) (+.f32 (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) (*.f32 1/2 (*.f32 (pow.f32 u 2) (pow.f32 normAngle 2))))) |
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (sin.f32 normAngle)) |
(-.f32 1 u) |
(-.f32 (+.f32 (*.f32 1/3 (*.f32 u (pow.f32 normAngle 2))) (+.f32 1 (*.f32 1/6 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 2))))) (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (pow.f32 normAngle 2))) u)) |
(-.f32 (+.f32 1 (+.f32 (*.f32 1/45 (*.f32 u (pow.f32 normAngle 4))) (+.f32 (*.f32 1/24 (*.f32 (pow.f32 u 4) (pow.f32 normAngle 4))) (+.f32 (*.f32 1/3 (*.f32 u (pow.f32 normAngle 2))) (*.f32 1/6 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 2))))))) (+.f32 (*.f32 1/120 (*.f32 (pow.f32 u 5) (pow.f32 normAngle 4))) (+.f32 u (+.f32 (*.f32 1/18 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 4))) (*.f32 1/2 (*.f32 (pow.f32 u 2) (pow.f32 normAngle 2))))))) |
(-.f32 (+.f32 1 (+.f32 (*.f32 2/945 (*.f32 u (pow.f32 normAngle 6))) (+.f32 (*.f32 1/360 (*.f32 (pow.f32 u 5) (pow.f32 normAngle 6))) (+.f32 (*.f32 1/24 (*.f32 (pow.f32 u 4) (pow.f32 normAngle 4))) (+.f32 (*.f32 1/45 (*.f32 u (pow.f32 normAngle 4))) (+.f32 (*.f32 1/3 (*.f32 u (pow.f32 normAngle 2))) (+.f32 (*.f32 1/6 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 2))) (*.f32 1/5040 (*.f32 (pow.f32 u 7) (pow.f32 normAngle 6)))))))))) (+.f32 (*.f32 1/120 (*.f32 (pow.f32 u 5) (pow.f32 normAngle 4))) (+.f32 u (+.f32 (*.f32 1/18 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 4))) (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (pow.f32 normAngle 2))) (+.f32 (*.f32 1/720 (*.f32 (pow.f32 u 6) (pow.f32 normAngle 6))) (*.f32 1/270 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 6))))))))) |
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (sin.f32 normAngle)) |
n0_i |
(-.f32 n0_i (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u (*.f32 n0_i normAngle))) (sin.f32 normAngle))) |
(-.f32 n0_i (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 n0_i (*.f32 u normAngle))) (sin.f32 normAngle)))) |
(-.f32 (+.f32 n0_i (*.f32 1/6 (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 (pow.f32 u 3) (*.f32 n0_i (pow.f32 normAngle 3)))) (sin.f32 normAngle)))) (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 n0_i (*.f32 u normAngle))) (sin.f32 normAngle)))) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(-.f32 n0_i (*.f32 u n0_i)) |
(-.f32 (+.f32 (*.f32 1/2 (*.f32 u (*.f32 n0_i (pow.f32 normAngle 2)))) (+.f32 (*.f32 1/6 (*.f32 (pow.f32 u 3) (*.f32 n0_i (pow.f32 normAngle 2)))) n0_i)) (+.f32 (*.f32 1/6 (*.f32 n0_i (*.f32 u (pow.f32 normAngle 2)))) (+.f32 (*.f32 n0_i u) (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2))))))) |
(-.f32 (+.f32 (*.f32 1/2 (*.f32 u (*.f32 n0_i (pow.f32 normAngle 2)))) (+.f32 (*.f32 1/12 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 4)))) (+.f32 (*.f32 11/120 (*.f32 n0_i (*.f32 u (pow.f32 normAngle 4)))) (+.f32 (*.f32 1/36 (*.f32 n0_i (*.f32 (pow.f32 u 3) (pow.f32 normAngle 4)))) (+.f32 (*.f32 1/6 (*.f32 (pow.f32 u 3) (*.f32 n0_i (pow.f32 normAngle 2)))) (+.f32 (*.f32 1/24 (*.f32 (pow.f32 u 4) (*.f32 n0_i (pow.f32 normAngle 4)))) n0_i)))))) (+.f32 (*.f32 1/6 (*.f32 n0_i (*.f32 u (pow.f32 normAngle 2)))) (+.f32 (*.f32 1/12 (*.f32 n0_i (*.f32 (pow.f32 u 2) (pow.f32 normAngle 4)))) (+.f32 (*.f32 1/120 (*.f32 (pow.f32 u 5) (*.f32 n0_i (pow.f32 normAngle 4)))) (+.f32 (*.f32 n0_i u) (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (+.f32 (*.f32 5/72 (*.f32 u (*.f32 n0_i (pow.f32 normAngle 4)))) (*.f32 1/12 (*.f32 (pow.f32 u 3) (*.f32 n0_i (pow.f32 normAngle 4))))))))))) |
(-.f32 (+.f32 (*.f32 1/216 (*.f32 (pow.f32 u 3) (*.f32 n0_i (pow.f32 normAngle 6)))) (+.f32 (*.f32 1/36 (*.f32 n0_i (*.f32 (pow.f32 u 3) (pow.f32 normAngle 4)))) (+.f32 (*.f32 1/5040 (*.f32 n0_i (*.f32 (pow.f32 u 7) (pow.f32 normAngle 6)))) (+.f32 (*.f32 1/24 (*.f32 (pow.f32 u 4) (*.f32 n0_i (pow.f32 normAngle 4)))) (+.f32 n0_i (+.f32 (*.f32 1/2 (*.f32 u (*.f32 n0_i (pow.f32 normAngle 2)))) (+.f32 (*.f32 1/12 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 4)))) (+.f32 (*.f32 1/60 (*.f32 u (*.f32 n0_i (pow.f32 normAngle 6)))) (+.f32 (*.f32 1/72 (*.f32 n0_i (*.f32 (pow.f32 u 2) (pow.f32 normAngle 6)))) (+.f32 (*.f32 11/120 (*.f32 n0_i (*.f32 u (pow.f32 normAngle 4)))) (+.f32 (*.f32 1/6 (*.f32 (pow.f32 u 3) (*.f32 n0_i (pow.f32 normAngle 2)))) (*.f32 1/360 (*.f32 n0_i (*.f32 (pow.f32 u 5) (pow.f32 normAngle 6))))))))))))))) (+.f32 (*.f32 1/120 (*.f32 (pow.f32 u 5) (*.f32 n0_i (pow.f32 normAngle 4)))) (+.f32 (*.f32 1/720 (*.f32 n0_i (*.f32 (pow.f32 u 6) (pow.f32 normAngle 6)))) (+.f32 (*.f32 1/120 (*.f32 n0_i (*.f32 (pow.f32 u 3) (pow.f32 normAngle 6)))) (+.f32 (*.f32 1/12 (*.f32 (pow.f32 u 3) (*.f32 n0_i (pow.f32 normAngle 4)))) (+.f32 (*.f32 1/6 (*.f32 n0_i (*.f32 u (pow.f32 normAngle 2)))) (+.f32 (*.f32 1/12 (*.f32 n0_i (*.f32 (pow.f32 u 2) (pow.f32 normAngle 4)))) (+.f32 (*.f32 n0_i u) (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (+.f32 (*.f32 11/756 (*.f32 n0_i (*.f32 u (pow.f32 normAngle 6)))) (+.f32 (*.f32 5/72 (*.f32 u (*.f32 n0_i (pow.f32 normAngle 4)))) (*.f32 1/72 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 6))))))))))))))) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
normAngle |
(-.f32 normAngle (*.f32 u normAngle)) |
(-.f32 normAngle (*.f32 u normAngle)) |
(-.f32 normAngle (*.f32 u normAngle)) |
(*.f32 -1 (*.f32 u normAngle)) |
(-.f32 normAngle (*.f32 u normAngle)) |
(-.f32 normAngle (*.f32 u normAngle)) |
(-.f32 normAngle (*.f32 u normAngle)) |
(*.f32 -1 (*.f32 u normAngle)) |
(-.f32 normAngle (*.f32 u normAngle)) |
(-.f32 normAngle (*.f32 u normAngle)) |
(-.f32 normAngle (*.f32 u normAngle)) |
| Outputs |
|---|
(/.f32 (*.f32 u normAngle) (sin.f32 normAngle)) |
(/.f32 u (/.f32 (sin.f32 normAngle) normAngle)) |
(-.f32 (/.f32 (*.f32 u normAngle) (sin.f32 normAngle)) (*.f32 1/6 (/.f32 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 3)) (sin.f32 normAngle)))) |
(-.f32 (/.f32 u (/.f32 (sin.f32 normAngle) normAngle)) (/.f32 (*.f32 1/6 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 3))) (sin.f32 normAngle))) |
(+.f32 (/.f32 (*.f32 u normAngle) (sin.f32 normAngle)) (*.f32 (*.f32 (/.f32 (pow.f32 u 3) (sin.f32 normAngle)) (pow.f32 normAngle 3)) -1/6)) |
(fma.f32 (/.f32 u (sin.f32 normAngle)) normAngle (*.f32 (*.f32 (/.f32 (pow.f32 u 3) (sin.f32 normAngle)) (pow.f32 normAngle 3)) -1/6)) |
(-.f32 (+.f32 (*.f32 1/120 (/.f32 (*.f32 (pow.f32 u 5) (pow.f32 normAngle 5)) (sin.f32 normAngle))) (/.f32 (*.f32 u normAngle) (sin.f32 normAngle))) (*.f32 1/6 (/.f32 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 3)) (sin.f32 normAngle)))) |
(+.f32 (fma.f32 1/120 (/.f32 (pow.f32 u 5) (/.f32 (sin.f32 normAngle) (pow.f32 normAngle 5))) (/.f32 u (/.f32 (sin.f32 normAngle) normAngle))) (*.f32 -1/6 (/.f32 (pow.f32 u 3) (/.f32 (sin.f32 normAngle) (pow.f32 normAngle 3))))) |
(fma.f32 1/120 (*.f32 (/.f32 (pow.f32 u 5) (sin.f32 normAngle)) (pow.f32 normAngle 5)) (+.f32 (/.f32 (*.f32 u normAngle) (sin.f32 normAngle)) (*.f32 (*.f32 (/.f32 (pow.f32 u 3) (sin.f32 normAngle)) (pow.f32 normAngle 3)) -1/6))) |
(fma.f32 1/120 (*.f32 (/.f32 (pow.f32 u 5) (sin.f32 normAngle)) (pow.f32 normAngle 5)) (fma.f32 (/.f32 u (sin.f32 normAngle)) normAngle (*.f32 (*.f32 (/.f32 (pow.f32 u 3) (sin.f32 normAngle)) (pow.f32 normAngle 3)) -1/6))) |
(-.f32 (+.f32 (*.f32 1/120 (/.f32 (*.f32 (pow.f32 u 5) (pow.f32 normAngle 5)) (sin.f32 normAngle))) (/.f32 (*.f32 u normAngle) (sin.f32 normAngle))) (+.f32 (*.f32 1/5040 (/.f32 (*.f32 (pow.f32 u 7) (pow.f32 normAngle 7)) (sin.f32 normAngle))) (*.f32 1/6 (/.f32 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 3)) (sin.f32 normAngle))))) |
(-.f32 (fma.f32 1/120 (/.f32 (pow.f32 u 5) (/.f32 (sin.f32 normAngle) (pow.f32 normAngle 5))) (/.f32 u (/.f32 (sin.f32 normAngle) normAngle))) (fma.f32 1/5040 (/.f32 (pow.f32 u 7) (/.f32 (sin.f32 normAngle) (pow.f32 normAngle 7))) (/.f32 (*.f32 1/6 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 3))) (sin.f32 normAngle)))) |
(-.f32 (fma.f32 1/120 (*.f32 (/.f32 (pow.f32 u 5) (sin.f32 normAngle)) (pow.f32 normAngle 5)) (/.f32 (*.f32 u normAngle) (sin.f32 normAngle))) (fma.f32 1/6 (*.f32 (/.f32 (pow.f32 u 3) (sin.f32 normAngle)) (pow.f32 normAngle 3)) (*.f32 1/5040 (*.f32 (/.f32 (pow.f32 u 7) (sin.f32 normAngle)) (pow.f32 normAngle 7))))) |
(+.f32 (fma.f32 1/120 (*.f32 (/.f32 (pow.f32 u 5) (sin.f32 normAngle)) (pow.f32 normAngle 5)) (fma.f32 (/.f32 u (sin.f32 normAngle)) normAngle (*.f32 (*.f32 (/.f32 (pow.f32 u 3) (sin.f32 normAngle)) (pow.f32 normAngle 3)) -1/6))) (*.f32 -1/5040 (*.f32 (/.f32 (pow.f32 u 7) (sin.f32 normAngle)) (pow.f32 normAngle 7)))) |
(/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) |
u |
(-.f32 (+.f32 (*.f32 1/6 (*.f32 u (pow.f32 normAngle 2))) u) (*.f32 1/6 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 2)))) |
(+.f32 (fma.f32 1/6 (*.f32 u (*.f32 normAngle normAngle)) u) (*.f32 -1/6 (*.f32 (pow.f32 u 3) (*.f32 normAngle normAngle)))) |
(+.f32 (fma.f32 1/6 (*.f32 u (*.f32 normAngle normAngle)) u) (*.f32 (*.f32 normAngle (*.f32 normAngle (pow.f32 u 3))) -1/6)) |
(fma.f32 1/6 (*.f32 u (*.f32 normAngle normAngle)) (+.f32 u (*.f32 (*.f32 normAngle (*.f32 normAngle (pow.f32 u 3))) -1/6))) |
(-.f32 (+.f32 (*.f32 1/6 (*.f32 u (pow.f32 normAngle 2))) (+.f32 (*.f32 1/120 (*.f32 (pow.f32 u 5) (pow.f32 normAngle 4))) (+.f32 (*.f32 7/360 (*.f32 u (pow.f32 normAngle 4))) u))) (+.f32 (*.f32 1/6 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 2))) (*.f32 1/36 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 4))))) |
(-.f32 (fma.f32 1/6 (*.f32 u (*.f32 normAngle normAngle)) (fma.f32 1/120 (*.f32 (pow.f32 u 5) (pow.f32 normAngle 4)) (fma.f32 7/360 (*.f32 u (pow.f32 normAngle 4)) u))) (fma.f32 1/6 (*.f32 (pow.f32 u 3) (*.f32 normAngle normAngle)) (*.f32 1/36 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 4))))) |
(-.f32 (+.f32 (*.f32 (pow.f32 normAngle 4) (+.f32 (*.f32 1/120 (pow.f32 u 5)) (*.f32 u 7/360))) (fma.f32 1/6 (*.f32 u (*.f32 normAngle normAngle)) u)) (fma.f32 1/6 (*.f32 normAngle (*.f32 normAngle (pow.f32 u 3))) (*.f32 (pow.f32 u 3) (*.f32 (pow.f32 normAngle 4) 1/36)))) |
(-.f32 (+.f32 (*.f32 1/120 (*.f32 (pow.f32 u 5) (pow.f32 normAngle 4))) (+.f32 (*.f32 31/15120 (*.f32 u (pow.f32 normAngle 6))) (+.f32 (*.f32 1/720 (*.f32 (pow.f32 u 5) (pow.f32 normAngle 6))) (+.f32 u (+.f32 (*.f32 7/360 (*.f32 u (pow.f32 normAngle 4))) (*.f32 1/6 (*.f32 u (pow.f32 normAngle 2)))))))) (+.f32 (*.f32 1/6 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 2))) (+.f32 (*.f32 1/5040 (*.f32 (pow.f32 u 7) (pow.f32 normAngle 6))) (+.f32 (*.f32 1/36 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 4))) (*.f32 7/2160 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 6))))))) |
(-.f32 (fma.f32 1/120 (*.f32 (pow.f32 u 5) (pow.f32 normAngle 4)) (fma.f32 31/15120 (*.f32 u (pow.f32 normAngle 6)) (fma.f32 1/720 (*.f32 (pow.f32 u 5) (pow.f32 normAngle 6)) (+.f32 u (fma.f32 7/360 (*.f32 u (pow.f32 normAngle 4)) (*.f32 1/6 (*.f32 u (*.f32 normAngle normAngle)))))))) (fma.f32 1/6 (*.f32 (pow.f32 u 3) (*.f32 normAngle normAngle)) (fma.f32 1/5040 (*.f32 (pow.f32 u 7) (pow.f32 normAngle 6)) (fma.f32 1/36 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 4)) (*.f32 (*.f32 7/2160 (pow.f32 u 3)) (pow.f32 normAngle 6)))))) |
(-.f32 (+.f32 (*.f32 (pow.f32 normAngle 6) (+.f32 (*.f32 u 31/15120) (*.f32 (pow.f32 u 5) 1/720))) (+.f32 (*.f32 (pow.f32 normAngle 4) (+.f32 (*.f32 1/120 (pow.f32 u 5)) (*.f32 u 7/360))) (fma.f32 1/6 (*.f32 u (*.f32 normAngle normAngle)) u))) (fma.f32 1/6 (*.f32 normAngle (*.f32 normAngle (pow.f32 u 3))) (fma.f32 1/5040 (*.f32 (pow.f32 u 7) (pow.f32 normAngle 6)) (fma.f32 1/36 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 4)) (*.f32 (pow.f32 normAngle 6) (*.f32 (pow.f32 u 3) 7/2160)))))) |
(/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle)) |
1 |
(-.f32 1 (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle))) |
(-.f32 1 (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle)))) |
(-.f32 1 (+.f32 (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) (*.f32 1/2 (*.f32 (pow.f32 u 2) (pow.f32 normAngle 2))))) |
(-.f32 1 (+.f32 (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle))) (*.f32 (*.f32 1/2 (*.f32 u u)) (*.f32 normAngle normAngle)))) |
(-.f32 1 (fma.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle normAngle))) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle))))) |
(-.f32 (+.f32 (*.f32 1/6 (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 (pow.f32 u 3) (pow.f32 normAngle 3))) (sin.f32 normAngle))) 1) (+.f32 (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) (*.f32 1/2 (*.f32 (pow.f32 u 2) (pow.f32 normAngle 2))))) |
(-.f32 (fma.f32 1/6 (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 (pow.f32 u 3) (pow.f32 normAngle 3)))) 1) (+.f32 (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle))) (*.f32 (*.f32 1/2 (*.f32 u u)) (*.f32 normAngle normAngle)))) |
(-.f32 (fma.f32 1/6 (/.f32 (*.f32 (pow.f32 normAngle 3) (*.f32 (pow.f32 u 3) (cos.f32 normAngle))) (sin.f32 normAngle)) 1) (fma.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle normAngle))) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle))))) |
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) |
(-.f32 1 u) |
(-.f32 (+.f32 (*.f32 1/3 (*.f32 u (pow.f32 normAngle 2))) (+.f32 1 (*.f32 1/6 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 2))))) (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (pow.f32 normAngle 2))) u)) |
(-.f32 (fma.f32 1/3 (*.f32 u (*.f32 normAngle normAngle)) (+.f32 (*.f32 1/6 (*.f32 (pow.f32 u 3) (*.f32 normAngle normAngle))) 1)) (fma.f32 1/2 (*.f32 (*.f32 normAngle normAngle) (*.f32 u u)) u)) |
(-.f32 (+.f32 1 (*.f32 (*.f32 normAngle normAngle) (+.f32 (*.f32 u 1/3) (*.f32 1/6 (pow.f32 u 3))))) (fma.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle normAngle))) u)) |
(-.f32 (+.f32 1 (+.f32 (*.f32 1/45 (*.f32 u (pow.f32 normAngle 4))) (+.f32 (*.f32 1/24 (*.f32 (pow.f32 u 4) (pow.f32 normAngle 4))) (+.f32 (*.f32 1/3 (*.f32 u (pow.f32 normAngle 2))) (*.f32 1/6 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 2))))))) (+.f32 (*.f32 1/120 (*.f32 (pow.f32 u 5) (pow.f32 normAngle 4))) (+.f32 u (+.f32 (*.f32 1/18 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 4))) (*.f32 1/2 (*.f32 (pow.f32 u 2) (pow.f32 normAngle 2))))))) |
(+.f32 1 (-.f32 (fma.f32 1/45 (*.f32 u (pow.f32 normAngle 4)) (fma.f32 1/24 (*.f32 (pow.f32 normAngle 4) (pow.f32 u 4)) (fma.f32 1/3 (*.f32 u (*.f32 normAngle normAngle)) (*.f32 1/6 (*.f32 (pow.f32 u 3) (*.f32 normAngle normAngle)))))) (fma.f32 1/120 (*.f32 (pow.f32 u 5) (pow.f32 normAngle 4)) (+.f32 u (fma.f32 1/18 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 4)) (*.f32 (*.f32 1/2 (*.f32 u u)) (*.f32 normAngle normAngle))))))) |
(+.f32 1 (+.f32 (*.f32 (pow.f32 normAngle 4) (+.f32 (*.f32 u 1/45) (*.f32 1/24 (pow.f32 u 4)))) (-.f32 (*.f32 (*.f32 normAngle normAngle) (+.f32 (*.f32 u 1/3) (*.f32 1/6 (pow.f32 u 3)))) (+.f32 (fma.f32 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 4)) 1/18 (*.f32 (*.f32 (*.f32 1/2 (*.f32 u u)) normAngle) normAngle)) (fma.f32 1/120 (*.f32 (pow.f32 u 5) (pow.f32 normAngle 4)) u))))) |
(-.f32 (+.f32 1 (+.f32 (*.f32 2/945 (*.f32 u (pow.f32 normAngle 6))) (+.f32 (*.f32 1/360 (*.f32 (pow.f32 u 5) (pow.f32 normAngle 6))) (+.f32 (*.f32 1/24 (*.f32 (pow.f32 u 4) (pow.f32 normAngle 4))) (+.f32 (*.f32 1/45 (*.f32 u (pow.f32 normAngle 4))) (+.f32 (*.f32 1/3 (*.f32 u (pow.f32 normAngle 2))) (+.f32 (*.f32 1/6 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 2))) (*.f32 1/5040 (*.f32 (pow.f32 u 7) (pow.f32 normAngle 6)))))))))) (+.f32 (*.f32 1/120 (*.f32 (pow.f32 u 5) (pow.f32 normAngle 4))) (+.f32 u (+.f32 (*.f32 1/18 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 4))) (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (pow.f32 normAngle 2))) (+.f32 (*.f32 1/720 (*.f32 (pow.f32 u 6) (pow.f32 normAngle 6))) (*.f32 1/270 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 6))))))))) |
(+.f32 1 (-.f32 (fma.f32 2/945 (*.f32 u (pow.f32 normAngle 6)) (fma.f32 1/360 (*.f32 (pow.f32 u 5) (pow.f32 normAngle 6)) (fma.f32 1/24 (*.f32 (pow.f32 normAngle 4) (pow.f32 u 4)) (fma.f32 1/45 (*.f32 u (pow.f32 normAngle 4)) (fma.f32 1/3 (*.f32 u (*.f32 normAngle normAngle)) (fma.f32 1/6 (*.f32 (pow.f32 u 3) (*.f32 normAngle normAngle)) (*.f32 1/5040 (*.f32 (pow.f32 u 7) (pow.f32 normAngle 6))))))))) (fma.f32 1/120 (*.f32 (pow.f32 u 5) (pow.f32 normAngle 4)) (+.f32 u (fma.f32 1/18 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 4)) (fma.f32 1/2 (*.f32 (*.f32 normAngle normAngle) (*.f32 u u)) (fma.f32 1/720 (*.f32 (pow.f32 normAngle 6) (pow.f32 u 6)) (*.f32 (*.f32 1/270 (pow.f32 u 3)) (pow.f32 normAngle 6))))))))) |
(+.f32 1 (-.f32 (-.f32 (+.f32 (+.f32 (*.f32 (pow.f32 normAngle 6) (+.f32 (*.f32 u 2/945) (*.f32 (pow.f32 u 5) 1/360))) (*.f32 (pow.f32 normAngle 4) (+.f32 (*.f32 u 1/45) (*.f32 1/24 (pow.f32 u 4))))) (+.f32 (*.f32 1/5040 (*.f32 (pow.f32 u 7) (pow.f32 normAngle 6))) (*.f32 (*.f32 normAngle normAngle) (+.f32 (*.f32 u 1/3) (*.f32 1/6 (pow.f32 u 3)))))) (fma.f32 1/120 (*.f32 (pow.f32 u 5) (pow.f32 normAngle 4)) u)) (fma.f32 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 4)) 1/18 (fma.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle normAngle))) (*.f32 (pow.f32 normAngle 6) (+.f32 (*.f32 1/720 (pow.f32 u 6)) (*.f32 (pow.f32 u 3) 1/270))))))) |
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) |
n0_i |
(-.f32 n0_i (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u (*.f32 n0_i normAngle))) (sin.f32 normAngle))) |
(-.f32 n0_i (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u (*.f32 normAngle n0_i))))) |
(-.f32 n0_i (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 normAngle (*.f32 u n0_i))))) |
(-.f32 n0_i (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 n0_i (*.f32 u normAngle))) (sin.f32 normAngle)))) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 (*.f32 u u) (*.f32 (*.f32 normAngle normAngle) n0_i)) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u (*.f32 normAngle n0_i)))))) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 u (*.f32 (*.f32 normAngle (*.f32 u n0_i)) normAngle)) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 normAngle (*.f32 u n0_i)))))) |
(-.f32 (+.f32 n0_i (*.f32 1/6 (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 (pow.f32 u 3) (*.f32 n0_i (pow.f32 normAngle 3)))) (sin.f32 normAngle)))) (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 n0_i (*.f32 u normAngle))) (sin.f32 normAngle)))) |
(+.f32 n0_i (-.f32 (*.f32 1/6 (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 (pow.f32 u 3) (*.f32 (pow.f32 normAngle 3) n0_i))))) (fma.f32 1/2 (*.f32 (*.f32 u u) (*.f32 (*.f32 normAngle normAngle) n0_i)) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u (*.f32 normAngle n0_i))))))) |
(-.f32 (fma.f32 1/6 (/.f32 (*.f32 (pow.f32 normAngle 3) (*.f32 (pow.f32 u 3) n0_i)) (/.f32 (sin.f32 normAngle) (cos.f32 normAngle))) n0_i) (fma.f32 1/2 (*.f32 u (*.f32 (*.f32 normAngle (*.f32 u n0_i)) normAngle)) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 normAngle (*.f32 u n0_i)))))) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)) |
(*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)) |
(*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)) |
(*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)) |
(*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)) |
(*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)) |
(*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)) |
(*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)) |
(*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i) |
(-.f32 n0_i (*.f32 u n0_i)) |
(-.f32 (+.f32 (*.f32 1/2 (*.f32 u (*.f32 n0_i (pow.f32 normAngle 2)))) (+.f32 (*.f32 1/6 (*.f32 (pow.f32 u 3) (*.f32 n0_i (pow.f32 normAngle 2)))) n0_i)) (+.f32 (*.f32 1/6 (*.f32 n0_i (*.f32 u (pow.f32 normAngle 2)))) (+.f32 (*.f32 n0_i u) (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2))))))) |
(-.f32 (fma.f32 1/2 (*.f32 u (*.f32 (*.f32 normAngle normAngle) n0_i)) (fma.f32 1/6 (*.f32 (pow.f32 u 3) (*.f32 (*.f32 normAngle normAngle) n0_i)) n0_i)) (fma.f32 1/6 (*.f32 u (*.f32 (*.f32 normAngle normAngle) n0_i)) (fma.f32 n0_i u (*.f32 (*.f32 1/2 (*.f32 u u)) (*.f32 (*.f32 normAngle normAngle) n0_i))))) |
(+.f32 (*.f32 (*.f32 normAngle (*.f32 normAngle n0_i)) (+.f32 (*.f32 u 1/2) (*.f32 1/6 (pow.f32 u 3)))) (-.f32 n0_i (fma.f32 1/6 (*.f32 (*.f32 normAngle (*.f32 u n0_i)) normAngle) (fma.f32 u n0_i (*.f32 1/2 (*.f32 u (*.f32 (*.f32 normAngle (*.f32 u n0_i)) normAngle))))))) |
(-.f32 (+.f32 (*.f32 1/2 (*.f32 u (*.f32 n0_i (pow.f32 normAngle 2)))) (+.f32 (*.f32 1/12 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 4)))) (+.f32 (*.f32 11/120 (*.f32 n0_i (*.f32 u (pow.f32 normAngle 4)))) (+.f32 (*.f32 1/36 (*.f32 n0_i (*.f32 (pow.f32 u 3) (pow.f32 normAngle 4)))) (+.f32 (*.f32 1/6 (*.f32 (pow.f32 u 3) (*.f32 n0_i (pow.f32 normAngle 2)))) (+.f32 (*.f32 1/24 (*.f32 (pow.f32 u 4) (*.f32 n0_i (pow.f32 normAngle 4)))) n0_i)))))) (+.f32 (*.f32 1/6 (*.f32 n0_i (*.f32 u (pow.f32 normAngle 2)))) (+.f32 (*.f32 1/12 (*.f32 n0_i (*.f32 (pow.f32 u 2) (pow.f32 normAngle 4)))) (+.f32 (*.f32 1/120 (*.f32 (pow.f32 u 5) (*.f32 n0_i (pow.f32 normAngle 4)))) (+.f32 (*.f32 n0_i u) (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (+.f32 (*.f32 5/72 (*.f32 u (*.f32 n0_i (pow.f32 normAngle 4)))) (*.f32 1/12 (*.f32 (pow.f32 u 3) (*.f32 n0_i (pow.f32 normAngle 4))))))))))) |
(-.f32 (fma.f32 1/2 (*.f32 u (*.f32 (*.f32 normAngle normAngle) n0_i)) (fma.f32 1/12 (*.f32 (*.f32 u u) (*.f32 (pow.f32 normAngle 4) n0_i)) (fma.f32 11/120 (*.f32 u (*.f32 (pow.f32 normAngle 4) n0_i)) (fma.f32 1/36 (*.f32 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 4)) n0_i) (fma.f32 1/6 (*.f32 (pow.f32 u 3) (*.f32 (*.f32 normAngle normAngle) n0_i)) (fma.f32 1/24 (*.f32 (pow.f32 u 4) (*.f32 (pow.f32 normAngle 4) n0_i)) n0_i)))))) (fma.f32 1/6 (*.f32 u (*.f32 (*.f32 normAngle normAngle) n0_i)) (fma.f32 1/12 (*.f32 n0_i (*.f32 (pow.f32 normAngle 4) (*.f32 u u))) (fma.f32 1/120 (*.f32 (pow.f32 u 5) (*.f32 (pow.f32 normAngle 4) n0_i)) (fma.f32 n0_i u (fma.f32 1/2 (*.f32 (*.f32 u u) (*.f32 (*.f32 normAngle normAngle) n0_i)) (fma.f32 5/72 (*.f32 u (*.f32 (pow.f32 normAngle 4) n0_i)) (*.f32 1/12 (*.f32 (pow.f32 u 3) (*.f32 (pow.f32 normAngle 4) n0_i)))))))))) |
(-.f32 (fma.f32 1/2 (*.f32 (*.f32 normAngle (*.f32 u n0_i)) normAngle) (fma.f32 1/12 (*.f32 u (*.f32 u (*.f32 (pow.f32 normAngle 4) n0_i))) (fma.f32 11/120 (*.f32 u (*.f32 (pow.f32 normAngle 4) n0_i)) (fma.f32 1/36 (*.f32 (pow.f32 normAngle 4) (*.f32 (pow.f32 u 3) n0_i)) (fma.f32 1/6 (*.f32 (*.f32 normAngle normAngle) (*.f32 (pow.f32 u 3) n0_i)) (fma.f32 1/24 (*.f32 (pow.f32 normAngle 4) (*.f32 (pow.f32 u 4) n0_i)) n0_i)))))) (fma.f32 1/6 (*.f32 (*.f32 normAngle (*.f32 u n0_i)) normAngle) (fma.f32 1/12 (*.f32 u (*.f32 u (*.f32 (pow.f32 normAngle 4) n0_i))) (fma.f32 1/120 (*.f32 (pow.f32 u 5) (*.f32 (pow.f32 normAngle 4) n0_i)) (fma.f32 u n0_i (fma.f32 1/2 (*.f32 u (*.f32 (*.f32 normAngle (*.f32 u n0_i)) normAngle)) (*.f32 (*.f32 (pow.f32 normAngle 4) n0_i) (+.f32 (*.f32 (pow.f32 u 3) 1/12) (*.f32 u 5/72))))))))) |
(-.f32 (+.f32 (*.f32 1/216 (*.f32 (pow.f32 u 3) (*.f32 n0_i (pow.f32 normAngle 6)))) (+.f32 (*.f32 1/36 (*.f32 n0_i (*.f32 (pow.f32 u 3) (pow.f32 normAngle 4)))) (+.f32 (*.f32 1/5040 (*.f32 n0_i (*.f32 (pow.f32 u 7) (pow.f32 normAngle 6)))) (+.f32 (*.f32 1/24 (*.f32 (pow.f32 u 4) (*.f32 n0_i (pow.f32 normAngle 4)))) (+.f32 n0_i (+.f32 (*.f32 1/2 (*.f32 u (*.f32 n0_i (pow.f32 normAngle 2)))) (+.f32 (*.f32 1/12 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 4)))) (+.f32 (*.f32 1/60 (*.f32 u (*.f32 n0_i (pow.f32 normAngle 6)))) (+.f32 (*.f32 1/72 (*.f32 n0_i (*.f32 (pow.f32 u 2) (pow.f32 normAngle 6)))) (+.f32 (*.f32 11/120 (*.f32 n0_i (*.f32 u (pow.f32 normAngle 4)))) (+.f32 (*.f32 1/6 (*.f32 (pow.f32 u 3) (*.f32 n0_i (pow.f32 normAngle 2)))) (*.f32 1/360 (*.f32 n0_i (*.f32 (pow.f32 u 5) (pow.f32 normAngle 6))))))))))))))) (+.f32 (*.f32 1/120 (*.f32 (pow.f32 u 5) (*.f32 n0_i (pow.f32 normAngle 4)))) (+.f32 (*.f32 1/720 (*.f32 n0_i (*.f32 (pow.f32 u 6) (pow.f32 normAngle 6)))) (+.f32 (*.f32 1/120 (*.f32 n0_i (*.f32 (pow.f32 u 3) (pow.f32 normAngle 6)))) (+.f32 (*.f32 1/12 (*.f32 (pow.f32 u 3) (*.f32 n0_i (pow.f32 normAngle 4)))) (+.f32 (*.f32 1/6 (*.f32 n0_i (*.f32 u (pow.f32 normAngle 2)))) (+.f32 (*.f32 1/12 (*.f32 n0_i (*.f32 (pow.f32 u 2) (pow.f32 normAngle 4)))) (+.f32 (*.f32 n0_i u) (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (+.f32 (*.f32 11/756 (*.f32 n0_i (*.f32 u (pow.f32 normAngle 6)))) (+.f32 (*.f32 5/72 (*.f32 u (*.f32 n0_i (pow.f32 normAngle 4)))) (*.f32 1/72 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 6))))))))))))))) |
(-.f32 (fma.f32 1/216 (*.f32 (pow.f32 u 3) (*.f32 (pow.f32 normAngle 6) n0_i)) (fma.f32 1/36 (*.f32 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 4)) n0_i) (fma.f32 1/5040 (*.f32 (*.f32 (pow.f32 u 7) (pow.f32 normAngle 6)) n0_i) (+.f32 (fma.f32 1/24 (*.f32 (pow.f32 u 4) (*.f32 (pow.f32 normAngle 4) n0_i)) n0_i) (fma.f32 1/2 (*.f32 u (*.f32 (*.f32 normAngle normAngle) n0_i)) (fma.f32 1/12 (*.f32 (*.f32 u u) (*.f32 (pow.f32 normAngle 4) n0_i)) (fma.f32 1/60 (*.f32 u (*.f32 (pow.f32 normAngle 6) n0_i)) (fma.f32 1/72 (*.f32 n0_i (*.f32 (pow.f32 normAngle 6) (*.f32 u u))) (fma.f32 11/120 (*.f32 u (*.f32 (pow.f32 normAngle 4) n0_i)) (fma.f32 1/6 (*.f32 (pow.f32 u 3) (*.f32 (*.f32 normAngle normAngle) n0_i)) (*.f32 (*.f32 1/360 n0_i) (*.f32 (pow.f32 u 5) (pow.f32 normAngle 6))))))))))))) (fma.f32 1/120 (*.f32 (pow.f32 u 5) (*.f32 (pow.f32 normAngle 4) n0_i)) (fma.f32 1/720 (*.f32 (*.f32 (pow.f32 normAngle 6) (pow.f32 u 6)) n0_i) (fma.f32 1/120 (*.f32 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 6)) n0_i) (fma.f32 1/12 (*.f32 (pow.f32 u 3) (*.f32 (pow.f32 normAngle 4) n0_i)) (fma.f32 1/6 (*.f32 u (*.f32 (*.f32 normAngle normAngle) n0_i)) (fma.f32 1/12 (*.f32 n0_i (*.f32 (pow.f32 normAngle 4) (*.f32 u u))) (fma.f32 n0_i u (fma.f32 1/2 (*.f32 (*.f32 u u) (*.f32 (*.f32 normAngle normAngle) n0_i)) (fma.f32 11/756 (*.f32 u (*.f32 (pow.f32 normAngle 6) n0_i)) (fma.f32 5/72 (*.f32 u (*.f32 (pow.f32 normAngle 4) n0_i)) (*.f32 1/72 (*.f32 (*.f32 (*.f32 u u) n0_i) (pow.f32 normAngle 6)))))))))))))) |
(-.f32 (fma.f32 1/216 (*.f32 (pow.f32 u 3) (*.f32 (pow.f32 normAngle 6) n0_i)) (fma.f32 1/36 (*.f32 (pow.f32 normAngle 4) (*.f32 (pow.f32 u 3) n0_i)) (fma.f32 1/5040 (*.f32 (pow.f32 normAngle 6) (*.f32 (pow.f32 u 7) n0_i)) (+.f32 (fma.f32 1/24 (*.f32 (pow.f32 normAngle 4) (*.f32 (pow.f32 u 4) n0_i)) n0_i) (fma.f32 1/2 (*.f32 (*.f32 normAngle (*.f32 u n0_i)) normAngle) (fma.f32 1/12 (*.f32 u (*.f32 u (*.f32 (pow.f32 normAngle 4) n0_i))) (fma.f32 1/60 (*.f32 (pow.f32 normAngle 6) (*.f32 u n0_i)) (fma.f32 1/72 (*.f32 u (*.f32 (pow.f32 normAngle 6) (*.f32 u n0_i))) (fma.f32 11/120 (*.f32 u (*.f32 (pow.f32 normAngle 4) n0_i)) (fma.f32 1/6 (*.f32 (*.f32 normAngle normAngle) (*.f32 (pow.f32 u 3) n0_i)) (*.f32 (*.f32 (pow.f32 u 5) (pow.f32 normAngle 6)) (*.f32 1/360 n0_i)))))))))))) (fma.f32 1/120 (*.f32 (pow.f32 u 5) (*.f32 (pow.f32 normAngle 4) n0_i)) (fma.f32 1/720 (*.f32 (pow.f32 normAngle 6) (*.f32 (pow.f32 u 6) n0_i)) (fma.f32 1/120 (*.f32 (pow.f32 u 3) (*.f32 (pow.f32 normAngle 6) n0_i)) (fma.f32 1/12 (*.f32 (pow.f32 normAngle 4) (*.f32 (pow.f32 u 3) n0_i)) (fma.f32 1/6 (*.f32 (*.f32 normAngle (*.f32 u n0_i)) normAngle) (fma.f32 1/12 (*.f32 u (*.f32 u (*.f32 (pow.f32 normAngle 4) n0_i))) (fma.f32 u n0_i (fma.f32 1/2 (*.f32 u (*.f32 (*.f32 normAngle (*.f32 u n0_i)) normAngle)) (fma.f32 11/756 (*.f32 (pow.f32 normAngle 6) (*.f32 u n0_i)) (fma.f32 (*.f32 u (*.f32 (pow.f32 normAngle 4) n0_i)) 5/72 (*.f32 (*.f32 u u) (*.f32 (*.f32 (pow.f32 normAngle 6) n0_i) 1/72))))))))))))) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)) |
(*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)) |
(*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)) |
(*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)) |
(*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)) |
(*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)) |
(*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)) |
(*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)) |
(*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)) |
(*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)) |
(*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)) |
(*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)) |
(*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)) |
(*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)) |
(*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)) |
(*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)) |
(*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)) |
(*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)) |
(*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)) |
(*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i) |
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)) |
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)) |
(*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i) |
normAngle |
(-.f32 normAngle (*.f32 u normAngle)) |
(-.f32 normAngle (*.f32 u normAngle)) |
(-.f32 normAngle (*.f32 u normAngle)) |
(*.f32 -1 (*.f32 u normAngle)) |
(neg.f32 (*.f32 u normAngle)) |
(*.f32 normAngle (neg.f32 u)) |
(-.f32 normAngle (*.f32 u normAngle)) |
(-.f32 normAngle (*.f32 u normAngle)) |
(-.f32 normAngle (*.f32 u normAngle)) |
(*.f32 -1 (*.f32 u normAngle)) |
(neg.f32 (*.f32 u normAngle)) |
(*.f32 normAngle (neg.f32 u)) |
(-.f32 normAngle (*.f32 u normAngle)) |
(-.f32 normAngle (*.f32 u normAngle)) |
(-.f32 normAngle (*.f32 u normAngle)) |
8 alts after pruning (8 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 134 | 7 | 141 |
| Fresh | 0 | 1 | 1 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 135 | 8 | 143 |
| Status | Error | Program |
|---|---|---|
| 8.3b | (/.f32 (fma.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) n0_i (*.f32 (sin.f32 (*.f32 u normAngle)) n1_i)) (sin.f32 normAngle)) | |
| 0.8b | (+.f32 (*.f32 (-.f32 1 (fma.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle normAngle))) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle))))) n0_i) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i)) | |
| 1.1b | (+.f32 (pow.f32 (cbrt.f32 (*.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 n0_i (sin.f32 normAngle)))) 3) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i)) | |
| 1.0b | (+.f32 (*.f32 (log.f32 (exp.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)))) n0_i) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i)) | |
| 1.0b | (+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) (*.f32 (pow.f32 (cbrt.f32 (/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle))) 3) n1_i)) | |
| 2.6b | (+.f32 (-.f32 n0_i (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u (*.f32 n0_i normAngle))) (sin.f32 normAngle))) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i)) | |
| ▶ | 0.4b | (+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) (*.f32 (-.f32 (+.f32 (*.f32 1/120 (*.f32 (pow.f32 u 5) (pow.f32 normAngle 4))) (+.f32 (*.f32 31/15120 (*.f32 u (pow.f32 normAngle 6))) (+.f32 (*.f32 1/720 (*.f32 (pow.f32 u 5) (pow.f32 normAngle 6))) (+.f32 u (+.f32 (*.f32 7/360 (*.f32 u (pow.f32 normAngle 4))) (*.f32 1/6 (*.f32 u (pow.f32 normAngle 2)))))))) (+.f32 (*.f32 1/6 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 2))) (+.f32 (*.f32 1/5040 (*.f32 (pow.f32 u 7) (pow.f32 normAngle 6))) (+.f32 (*.f32 1/36 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 4))) (*.f32 7/2160 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 6))))))) n1_i)) |
| 0.8b | (+.f32 (-.f32 n0_i (*.f32 u n0_i)) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i)) |
Compiled 5851 to 3358 computations (42.6% saved)
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| 0.1b | (*.f32 (-.f32 1 u) normAngle) | |
| 0.1b | (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) | |
| ✓ | 0.2b | (*.f32 1/6 (*.f32 u (pow.f32 normAngle 2))) |
| 0.3b | (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) |
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 5.0ms | normAngle | @ | 0 | (*.f32 1/6 (*.f32 u (pow.f32 normAngle 2))) |
| 2.0ms | normAngle | @ | inf | (*.f32 1/6 (*.f32 u (pow.f32 normAngle 2))) |
| 1.0ms | u | @ | 0 | (*.f32 1/6 (*.f32 u (pow.f32 normAngle 2))) |
| 1.0ms | u | @ | inf | (*.f32 1/6 (*.f32 u (pow.f32 normAngle 2))) |
| 0.0ms | u | @ | -inf | (*.f32 1/6 (*.f32 u (pow.f32 normAngle 2))) |
| 1× | batch-egg-rewrite |
| 690× | pow1_binary32 |
| 637× | add-log-exp_binary32 |
| 637× | log1p-expm1-u_binary32 |
| 637× | expm1-log1p-u_binary32 |
| 78× | add-sqr-sqrt_binary32 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 10 |
| 1 | 165 | 10 |
| 2 | 1788 | 10 |
| 1× | node limit |
| Inputs |
|---|
(*.f32 1/6 (*.f32 u (pow.f32 normAngle 2))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 (*.f32 normAngle normAngle) (*.f32 1/6 u)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (*.f32 normAngle normAngle) (*.f32 1/6 u)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 (*.f32 normAngle normAngle) (*.f32 1/6 u)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 (*.f32 normAngle normAngle) (*.f32 1/6 u))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (sqrt.f32 (*.f32 1/6 u)) normAngle) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (*.f32 1/36 (*.f32 (pow.f32 normAngle 4) (*.f32 u u))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (pow.f32 (exp.f32 u) (*.f32 normAngle normAngle)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 (*.f32 normAngle normAngle) (*.f32 1/6 u)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 (*.f32 normAngle normAngle) (*.f32 1/6 u)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 (*.f32 normAngle normAngle) (*.f32 1/6 u))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 (*.f32 normAngle normAngle) (*.f32 1/6 u))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 (*.f32 normAngle normAngle) (*.f32 1/6 u)))))))) |
| 1× | egg-herbie |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 0 | 0 |
| 1× | saturated |
| Inputs |
|---|
| Outputs |
|---|
8 alts after pruning (8 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 111 | 1 | 112 |
| Fresh | 0 | 7 | 7 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 112 | 8 | 120 |
| Status | Error | Program |
|---|---|---|
| 8.3b | (/.f32 (fma.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) n0_i (*.f32 (sin.f32 (*.f32 u normAngle)) n1_i)) (sin.f32 normAngle)) | |
| 0.8b | (+.f32 (*.f32 (-.f32 1 (fma.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle normAngle))) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle))))) n0_i) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i)) | |
| ▶ | 0.3b | (+.f32 (*.f32 (-.f32 1 u) n0_i) (*.f32 (-.f32 (+.f32 (*.f32 1/120 (*.f32 (pow.f32 u 5) (pow.f32 normAngle 4))) (+.f32 (*.f32 31/15120 (*.f32 u (pow.f32 normAngle 6))) (+.f32 (*.f32 1/720 (*.f32 (pow.f32 u 5) (pow.f32 normAngle 6))) (+.f32 u (+.f32 (*.f32 7/360 (*.f32 u (pow.f32 normAngle 4))) (*.f32 1/6 (*.f32 u (pow.f32 normAngle 2)))))))) (+.f32 (*.f32 1/6 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 2))) (+.f32 (*.f32 1/5040 (*.f32 (pow.f32 u 7) (pow.f32 normAngle 6))) (+.f32 (*.f32 1/36 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 4))) (*.f32 7/2160 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 6))))))) n1_i)) |
| 1.1b | (+.f32 (pow.f32 (cbrt.f32 (*.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 n0_i (sin.f32 normAngle)))) 3) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i)) | |
| 1.0b | (+.f32 (*.f32 (log.f32 (exp.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)))) n0_i) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i)) | |
| 1.0b | (+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) (*.f32 (pow.f32 (cbrt.f32 (/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle))) 3) n1_i)) | |
| 2.6b | (+.f32 (-.f32 n0_i (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u (*.f32 n0_i normAngle))) (sin.f32 normAngle))) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i)) | |
| 0.8b | (+.f32 (-.f32 n0_i (*.f32 u n0_i)) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i)) |
Compiled 13261 to 9756 computations (26.4% saved)
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.1b | (*.f32 u (pow.f32 normAngle 2)) |
| ✓ | 0.1b | (*.f32 1/6 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 2))) |
| ✓ | 0.1b | (*.f32 (-.f32 1 u) n0_i) |
| 0.2b | (*.f32 1/6 (*.f32 u (pow.f32 normAngle 2))) |
18 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 7.0ms | u | @ | inf | (*.f32 (-.f32 1 u) n0_i) |
| 1.0ms | normAngle | @ | 0 | (*.f32 1/6 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 2))) |
| 1.0ms | u | @ | 0 | (*.f32 1/6 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 2))) |
| 1.0ms | u | @ | inf | (*.f32 1/6 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 2))) |
| 1.0ms | normAngle | @ | inf | (*.f32 1/6 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 2))) |
| 1× | batch-egg-rewrite |
| 247× | expm1-udef_binary32 |
| 246× | log1p-udef_binary32 |
| 204× | log-pow_binary32 |
| 149× | fma-def_binary32 |
| 146× | add-sqr-sqrt_binary32 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 15 | 27 |
| 1 | 314 | 27 |
| 2 | 3491 | 27 |
| 1× | node limit |
| Inputs |
|---|
(*.f32 (-.f32 1 u) n0_i) |
(*.f32 1/6 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 2))) |
(*.f32 u (pow.f32 normAngle 2)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f32 n0_i (*.f32 (neg.f32 u) n0_i))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 n0_i (*.f32 n0_i (neg.f32 u)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 (-.f32 1 u) n0_i))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 1 (pow.f32 u 3)) n0_i) (+.f32 1 (fma.f32 u u u)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 1 (*.f32 u u)) n0_i) (+.f32 1 u))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 n0_i (-.f32 1 (pow.f32 u 3))) (+.f32 1 (fma.f32 u u u)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 n0_i (-.f32 1 (*.f32 u u))) (+.f32 1 u))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (-.f32 1 u) n0_i) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 (-.f32 1 u) n0_i) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 (-.f32 1 u) n0_i)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 (-.f32 1 u) n0_i)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 (-.f32 1 u) n0_i) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 n0_i) (-.f32 1 u)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 (-.f32 1 u) n0_i))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 (-.f32 1 u) n0_i) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (-.f32 1 u) 3) (pow.f32 n0_i 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 n0_i 3) (pow.f32 (-.f32 1 u) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 (-.f32 1 u) n0_i)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 (-.f32 1 u) n0_i)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 (-.f32 1 u) n0_i)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 n0_i (*.f32 (neg.f32 u) n0_i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 n0_i (*.f32 n0_i (neg.f32 u)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 n0_i 1 (*.f32 (neg.f32 u) n0_i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 n0_i 1 (*.f32 n0_i (neg.f32 u)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 n0_i) (pow.f32 (cbrt.f32 n0_i) 2) (*.f32 (neg.f32 u) n0_i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 n0_i) (pow.f32 (cbrt.f32 n0_i) 2) (*.f32 n0_i (neg.f32 u)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 n0_i) 2) (cbrt.f32 n0_i) (*.f32 (neg.f32 u) n0_i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 n0_i) 2) (cbrt.f32 n0_i) (*.f32 n0_i (neg.f32 u)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 n0_i) (sqrt.f32 n0_i) (*.f32 (neg.f32 u) n0_i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 n0_i) (sqrt.f32 n0_i) (*.f32 n0_i (neg.f32 u)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 (-.f32 1 u) n0_i))))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 (*.f32 normAngle normAngle) (*.f32 1/6 (pow.f32 u 3))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (*.f32 normAngle normAngle) (*.f32 1/6 (pow.f32 u 3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 (*.f32 normAngle normAngle) (*.f32 1/6 (pow.f32 u 3))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (*.f32 u (pow.f32 (cbrt.f32 normAngle) 2)) (cbrt.f32 1/6)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (*.f32 normAngle (pow.f32 u 3/2)) (sqrt.f32 1/6)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (*.f32 (*.f32 (pow.f32 normAngle 4) (pow.f32 u 6)) 1/36))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (pow.f32 (exp.f32 (pow.f32 u 3)) (*.f32 normAngle normAngle)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 (*.f32 normAngle normAngle) (*.f32 1/6 (pow.f32 u 3))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 (*.f32 normAngle normAngle) (*.f32 1/6 (pow.f32 u 3))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 (*.f32 normAngle normAngle) (*.f32 1/6 (pow.f32 u 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 (*.f32 normAngle normAngle) (*.f32 1/6 (pow.f32 u 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 (*.f32 normAngle normAngle) (*.f32 1/6 (pow.f32 u 3)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 (*.f32 normAngle normAngle) (*.f32 1/6 (pow.f32 u 3))))))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 u (*.f32 normAngle normAngle)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 u (*.f32 normAngle normAngle)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 u (*.f32 normAngle normAngle)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 u (*.f32 normAngle normAngle))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 normAngle (sqrt.f32 u)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (*.f32 (pow.f32 normAngle 4) (*.f32 u u)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 u) (*.f32 normAngle normAngle)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 u (*.f32 normAngle normAngle)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 u (*.f32 normAngle normAngle)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 u 3) (pow.f32 (*.f32 normAngle normAngle) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (*.f32 normAngle normAngle) 3) (pow.f32 u 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 u (*.f32 normAngle normAngle))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 u (*.f32 normAngle normAngle))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 u (*.f32 normAngle normAngle))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 u (*.f32 normAngle normAngle)))))))) |
| 1× | egg-herbie |
| 111× | fma-def_binary32 |
| 89× | fma-neg_binary32 |
| 23× | cancel-sign-sub-inv_binary32 |
| 20× | associate-*r*_binary32 |
| 19× | sub-neg_binary32 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 76 |
| 1 | 16 | 76 |
| 2 | 34 | 76 |
| 3 | 57 | 76 |
| 4 | 85 | 76 |
| 5 | 167 | 76 |
| 6 | 301 | 76 |
| 7 | 410 | 76 |
| 8 | 491 | 76 |
| 9 | 497 | 76 |
| 1× | saturated |
| Inputs |
|---|
n0_i |
(-.f32 n0_i (*.f32 u n0_i)) |
(-.f32 n0_i (*.f32 u n0_i)) |
(-.f32 n0_i (*.f32 u n0_i)) |
(*.f32 -1 (*.f32 u n0_i)) |
(-.f32 n0_i (*.f32 u n0_i)) |
(-.f32 n0_i (*.f32 u n0_i)) |
(-.f32 n0_i (*.f32 u n0_i)) |
(*.f32 -1 (*.f32 u n0_i)) |
(-.f32 n0_i (*.f32 u n0_i)) |
(-.f32 n0_i (*.f32 u n0_i)) |
(-.f32 n0_i (*.f32 u n0_i)) |
| Outputs |
|---|
n0_i |
(-.f32 n0_i (*.f32 u n0_i)) |
(-.f32 n0_i (*.f32 n0_i u)) |
(-.f32 n0_i (*.f32 u n0_i)) |
(-.f32 n0_i (*.f32 n0_i u)) |
(-.f32 n0_i (*.f32 u n0_i)) |
(-.f32 n0_i (*.f32 n0_i u)) |
(*.f32 -1 (*.f32 u n0_i)) |
(neg.f32 (*.f32 n0_i u)) |
(*.f32 n0_i (neg.f32 u)) |
(-.f32 n0_i (*.f32 u n0_i)) |
(-.f32 n0_i (*.f32 n0_i u)) |
(-.f32 n0_i (*.f32 u n0_i)) |
(-.f32 n0_i (*.f32 n0_i u)) |
(-.f32 n0_i (*.f32 u n0_i)) |
(-.f32 n0_i (*.f32 n0_i u)) |
(*.f32 -1 (*.f32 u n0_i)) |
(neg.f32 (*.f32 n0_i u)) |
(*.f32 n0_i (neg.f32 u)) |
(-.f32 n0_i (*.f32 u n0_i)) |
(-.f32 n0_i (*.f32 n0_i u)) |
(-.f32 n0_i (*.f32 u n0_i)) |
(-.f32 n0_i (*.f32 n0_i u)) |
(-.f32 n0_i (*.f32 u n0_i)) |
(-.f32 n0_i (*.f32 n0_i u)) |
8 alts after pruning (7 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 76 | 0 | 76 |
| Fresh | 0 | 7 | 7 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 76 | 8 | 84 |
| Status | Error | Program |
|---|---|---|
| 8.3b | (/.f32 (fma.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) n0_i (*.f32 (sin.f32 (*.f32 u normAngle)) n1_i)) (sin.f32 normAngle)) | |
| ▶ | 0.8b | (+.f32 (*.f32 (-.f32 1 (fma.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle normAngle))) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle))))) n0_i) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i)) |
| ✓ | 0.3b | (+.f32 (*.f32 (-.f32 1 u) n0_i) (*.f32 (-.f32 (+.f32 (*.f32 1/120 (*.f32 (pow.f32 u 5) (pow.f32 normAngle 4))) (+.f32 (*.f32 31/15120 (*.f32 u (pow.f32 normAngle 6))) (+.f32 (*.f32 1/720 (*.f32 (pow.f32 u 5) (pow.f32 normAngle 6))) (+.f32 u (+.f32 (*.f32 7/360 (*.f32 u (pow.f32 normAngle 4))) (*.f32 1/6 (*.f32 u (pow.f32 normAngle 2)))))))) (+.f32 (*.f32 1/6 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 2))) (+.f32 (*.f32 1/5040 (*.f32 (pow.f32 u 7) (pow.f32 normAngle 6))) (+.f32 (*.f32 1/36 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 4))) (*.f32 7/2160 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 6))))))) n1_i)) |
| 1.1b | (+.f32 (pow.f32 (cbrt.f32 (*.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 n0_i (sin.f32 normAngle)))) 3) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i)) | |
| 1.0b | (+.f32 (*.f32 (log.f32 (exp.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)))) n0_i) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i)) | |
| 1.0b | (+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) (*.f32 (pow.f32 (cbrt.f32 (/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle))) 3) n1_i)) | |
| 2.6b | (+.f32 (-.f32 n0_i (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u (*.f32 n0_i normAngle))) (sin.f32 normAngle))) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i)) | |
| 0.8b | (+.f32 (-.f32 n0_i (*.f32 u n0_i)) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i)) |
Compiled 7791 to 5811 computations (25.4% saved)
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.2b | (*.f32 (-.f32 1 (fma.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle normAngle))) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle))))) n0_i) |
| ✓ | 0.2b | (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle))) |
| ✓ | 1.6b | (/.f32 (sin.f32 normAngle) (*.f32 u normAngle)) |
| 1.7b | (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) |
21 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 3.0ms | u | @ | -inf | (*.f32 (-.f32 1 (fma.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle normAngle))) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle))))) n0_i) |
| 3.0ms | n0_i | @ | 0 | (*.f32 (-.f32 1 (fma.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle normAngle))) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle))))) n0_i) |
| 1.0ms | u | @ | 0 | (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle))) |
| 1.0ms | normAngle | @ | 0 | (/.f32 (sin.f32 normAngle) (*.f32 u normAngle)) |
| 1.0ms | normAngle | @ | -inf | (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle))) |
| 1× | batch-egg-rewrite |
| 548× | prod-diff_binary32 |
| 182× | add-sqr-sqrt_binary32 |
| 177× | *-un-lft-identity_binary32 |
| 177× | pow1_binary32 |
| 167× | add-cbrt-cube_binary32 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 17 | 56 |
| 1 | 359 | 53 |
| 2 | 4846 | 53 |
| 1× | node limit |
| Inputs |
|---|
(/.f32 (sin.f32 normAngle) (*.f32 u normAngle)) |
(/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle))) |
(*.f32 (-.f32 1 (fma.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle normAngle))) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle))))) n0_i) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (/.f32 (sin.f32 normAngle) (*.f32 normAngle u)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sin.f32 normAngle) (/.f32 1 (*.f32 normAngle u)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sin.f32 normAngle) (*.f32 normAngle u)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (/.f32 (sin.f32 normAngle) (*.f32 normAngle u)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (/.f32 (sin.f32 normAngle) (*.f32 normAngle u))) (cbrt.f32 (pow.f32 (/.f32 (sin.f32 normAngle) (*.f32 normAngle u)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (pow.f32 (/.f32 (sin.f32 normAngle) (*.f32 normAngle u)) 2)) (cbrt.f32 (/.f32 (sin.f32 normAngle) (*.f32 normAngle u))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (pow.f32 (sin.f32 normAngle) 2)) (*.f32 (cbrt.f32 (sin.f32 normAngle)) (/.f32 1 (*.f32 normAngle u))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (/.f32 (sin.f32 normAngle) (*.f32 normAngle u))) (sqrt.f32 (/.f32 (sin.f32 normAngle) (*.f32 normAngle u))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (sin.f32 normAngle)) (*.f32 (sqrt.f32 (sin.f32 normAngle)) (/.f32 1 (*.f32 normAngle u))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (neg.f32 (sin.f32 normAngle)) (/.f32 1 (*.f32 u (neg.f32 normAngle))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (*.f32 normAngle u)) (sin.f32 normAngle))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sin.f32 normAngle) u) (/.f32 1 normAngle))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 normAngle) (/.f32 (sin.f32 normAngle) u))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (cbrt.f32 (pow.f32 (sin.f32 normAngle) 2)) normAngle) (/.f32 (cbrt.f32 (sin.f32 normAngle)) u))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sqrt.f32 (sin.f32 normAngle)) normAngle) (/.f32 (sqrt.f32 (sin.f32 normAngle)) u))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sqrt.f32 (sin.f32 normAngle)) u) (/.f32 (sqrt.f32 (sin.f32 normAngle)) normAngle))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 u) (/.f32 (sin.f32 normAngle) normAngle))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (cbrt.f32 (pow.f32 (sin.f32 normAngle) 2)) u) (/.f32 (cbrt.f32 (sin.f32 normAngle)) normAngle))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (cbrt.f32 (pow.f32 (sin.f32 normAngle) 2)) 1) (/.f32 (cbrt.f32 (sin.f32 normAngle)) (*.f32 normAngle u)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sqrt.f32 (sin.f32 normAngle)) 1) (/.f32 (sqrt.f32 (sin.f32 normAngle)) (*.f32 normAngle u)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (pow.f32 (cbrt.f32 (*.f32 normAngle u)) 2)) (/.f32 (sin.f32 normAngle) (cbrt.f32 (*.f32 normAngle u))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (cbrt.f32 (pow.f32 (sin.f32 normAngle) 2)) (pow.f32 (cbrt.f32 (*.f32 normAngle u)) 2)) (cbrt.f32 (/.f32 (sin.f32 normAngle) (*.f32 normAngle u))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sqrt.f32 (sin.f32 normAngle)) (pow.f32 (cbrt.f32 (*.f32 normAngle u)) 2)) (/.f32 (sqrt.f32 (sin.f32 normAngle)) (cbrt.f32 (*.f32 normAngle u))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (sqrt.f32 (*.f32 normAngle u))) (/.f32 (sin.f32 normAngle) (sqrt.f32 (*.f32 normAngle u))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (cbrt.f32 (pow.f32 (sin.f32 normAngle) 2)) (sqrt.f32 (*.f32 normAngle u))) (/.f32 (cbrt.f32 (sin.f32 normAngle)) (sqrt.f32 (*.f32 normAngle u))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (sin.f32 normAngle) (*.f32 normAngle u)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (/.f32 (sin.f32 normAngle) (*.f32 normAngle u)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (/.f32 (sin.f32 normAngle) (*.f32 normAngle u))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (/.f32 (sin.f32 normAngle) (*.f32 normAngle u))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 normAngle (/.f32 (sin.f32 normAngle) u)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f32 (/.f32 (sin.f32 normAngle) (*.f32 u (neg.f32 normAngle))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (/.f32 (sin.f32 normAngle) (*.f32 normAngle u)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (/.f32 (sin.f32 normAngle) (*.f32 normAngle u))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (/.f32 (sin.f32 normAngle) (*.f32 normAngle u)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (/.f32 (sin.f32 normAngle) (*.f32 normAngle u)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (/.f32 (pow.f32 (sin.f32 normAngle) 3) (pow.f32 (*.f32 normAngle u) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (/.f32 (sin.f32 normAngle) (*.f32 normAngle u))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (/.f32 (sin.f32 normAngle) (*.f32 normAngle u))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (/.f32 (sin.f32 normAngle) (*.f32 normAngle u))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (/.f32 (sin.f32 normAngle) (*.f32 normAngle u)))))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cos.f32 normAngle) (/.f32 normAngle (/.f32 (sin.f32 normAngle) u)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)))) (pow.f32 (cbrt.f32 (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)))) 2) (cbrt.f32 (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (cos.f32 normAngle)) 2) (*.f32 (cbrt.f32 (cos.f32 normAngle)) (/.f32 normAngle (/.f32 (sin.f32 normAngle) u))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)))) (sqrt.f32 (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (cos.f32 normAngle)) (*.f32 (sqrt.f32 (cos.f32 normAngle)) (/.f32 normAngle (/.f32 (sin.f32 normAngle) u))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (neg.f32 (cos.f32 normAngle)) (/.f32 1 (/.f32 (neg.f32 (sin.f32 normAngle)) (*.f32 normAngle u))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 normAngle (/.f32 (sin.f32 normAngle) u)) (cos.f32 normAngle))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)) (*.f32 normAngle u))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (cos.f32 normAngle)) 2) 1) (/.f32 (cbrt.f32 (cos.f32 normAngle)) (/.f32 (sin.f32 normAngle) (*.f32 normAngle u))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sqrt.f32 (cos.f32 normAngle)) 1) (/.f32 (sqrt.f32 (cos.f32 normAngle)) (/.f32 (sin.f32 normAngle) (*.f32 normAngle u))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sqrt.f32 (cos.f32 normAngle)) (sin.f32 normAngle)) (/.f32 (sqrt.f32 (cos.f32 normAngle)) (/.f32 1 (*.f32 normAngle u))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (sin.f32 normAngle)) (/.f32 (cos.f32 normAngle) (/.f32 1 (*.f32 normAngle u))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (cos.f32 normAngle)) 2) (sin.f32 normAngle)) (/.f32 (cbrt.f32 (cos.f32 normAngle)) (/.f32 1 (*.f32 normAngle u))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (cbrt.f32 (pow.f32 (/.f32 (sin.f32 normAngle) (*.f32 normAngle u)) 2))) (/.f32 (cos.f32 normAngle) (cbrt.f32 (/.f32 (sin.f32 normAngle) (*.f32 normAngle u)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (cos.f32 normAngle)) 2) (cbrt.f32 (pow.f32 (/.f32 (sin.f32 normAngle) (*.f32 normAngle u)) 2))) (cbrt.f32 (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sqrt.f32 (cos.f32 normAngle)) (cbrt.f32 (pow.f32 (/.f32 (sin.f32 normAngle) (*.f32 normAngle u)) 2))) (/.f32 (sqrt.f32 (cos.f32 normAngle)) (cbrt.f32 (/.f32 (sin.f32 normAngle) (*.f32 normAngle u)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (sqrt.f32 (/.f32 (sin.f32 normAngle) (*.f32 normAngle u)))) (/.f32 (cos.f32 normAngle) (sqrt.f32 (/.f32 (sin.f32 normAngle) (*.f32 normAngle u)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (cos.f32 normAngle)) 2) (sqrt.f32 (/.f32 (sin.f32 normAngle) (*.f32 normAngle u)))) (/.f32 (cbrt.f32 (cos.f32 normAngle)) (sqrt.f32 (/.f32 (sin.f32 normAngle) (*.f32 normAngle u)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (cos.f32 normAngle) 1) (/.f32 normAngle (/.f32 (sin.f32 normAngle) u)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (cos.f32 normAngle) (neg.f32 (sin.f32 normAngle))) (*.f32 u (neg.f32 normAngle)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) u)) normAngle)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)) normAngle) u)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)) u) normAngle)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)) 1) (*.f32 normAngle u))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)) (pow.f32 (cbrt.f32 (*.f32 normAngle u)) 2)) (cbrt.f32 (*.f32 normAngle u)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)) (sqrt.f32 (*.f32 normAngle u))) (sqrt.f32 (*.f32 normAngle u)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (sin.f32 normAngle) (*.f32 (cos.f32 normAngle) (*.f32 normAngle u))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f32 (/.f32 (cos.f32 normAngle) (/.f32 (neg.f32 (sin.f32 normAngle)) (*.f32 normAngle u))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 (cos.f32 normAngle)) (/.f32 normAngle (/.f32 (sin.f32 normAngle) u))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (/.f32 (pow.f32 (cos.f32 normAngle) 3) (pow.f32 (/.f32 (sin.f32 normAngle) (*.f32 normAngle u)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle))))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f32 n0_i (*.f32 (neg.f32 (fma.f32 1/2 (pow.f32 (*.f32 normAngle u) 2) (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle))))) n0_i))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 n0_i (*.f32 n0_i (neg.f32 (fma.f32 1/2 (pow.f32 (*.f32 normAngle u) 2) (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 (-.f32 1 (fma.f32 1/2 (pow.f32 (*.f32 normAngle u) 2) (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle))))) n0_i))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 1 (pow.f32 (fma.f32 1/2 (pow.f32 (*.f32 normAngle u) 2) (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)))) 3)) n0_i) (+.f32 (+.f32 1 (pow.f32 (fma.f32 1/2 (pow.f32 (*.f32 normAngle u) 2) (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)))) 2)) (fma.f32 1/2 (pow.f32 (*.f32 normAngle u) 2) (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 1 (pow.f32 (fma.f32 1/2 (pow.f32 (*.f32 normAngle u) 2) (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)))) 2)) n0_i) (+.f32 1 (fma.f32 1/2 (pow.f32 (*.f32 normAngle u) 2) (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 n0_i (-.f32 1 (pow.f32 (fma.f32 1/2 (pow.f32 (*.f32 normAngle u) 2) (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)))) 3))) (+.f32 (+.f32 1 (pow.f32 (fma.f32 1/2 (pow.f32 (*.f32 normAngle u) 2) (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)))) 2)) (fma.f32 1/2 (pow.f32 (*.f32 normAngle u) 2) (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 n0_i (-.f32 1 (pow.f32 (fma.f32 1/2 (pow.f32 (*.f32 normAngle u) 2) (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)))) 2))) (+.f32 1 (fma.f32 1/2 (pow.f32 (*.f32 normAngle u) 2) (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (-.f32 1 (fma.f32 1/2 (pow.f32 (*.f32 normAngle u) 2) (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle))))) n0_i) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 (-.f32 1 (fma.f32 1/2 (pow.f32 (*.f32 normAngle u) 2) (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle))))) n0_i) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 (-.f32 1 (fma.f32 1/2 (pow.f32 (*.f32 normAngle u) 2) (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle))))) n0_i)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 (-.f32 1 (fma.f32 1/2 (pow.f32 (*.f32 normAngle u) 2) (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle))))) n0_i)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 (-.f32 1 (fma.f32 1/2 (pow.f32 (*.f32 normAngle u) 2) (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle))))) n0_i) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 n0_i) (-.f32 1 (fma.f32 1/2 (pow.f32 (*.f32 normAngle u) 2) (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 (-.f32 1 (fma.f32 1/2 (pow.f32 (*.f32 normAngle u) 2) (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle))))) n0_i))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 (-.f32 1 (fma.f32 1/2 (pow.f32 (*.f32 normAngle u) 2) (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle))))) n0_i) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (-.f32 1 (fma.f32 1/2 (pow.f32 (*.f32 normAngle u) 2) (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle))))) 3) (pow.f32 n0_i 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 n0_i 3) (pow.f32 (-.f32 1 (fma.f32 1/2 (pow.f32 (*.f32 normAngle u) 2) (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle))))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 (-.f32 1 (fma.f32 1/2 (pow.f32 (*.f32 normAngle u) 2) (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle))))) n0_i)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 (-.f32 1 (fma.f32 1/2 (pow.f32 (*.f32 normAngle u) 2) (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle))))) n0_i)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 (-.f32 1 (fma.f32 1/2 (pow.f32 (*.f32 normAngle u) 2) (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle))))) n0_i)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 (-.f32 1 (fma.f32 1/2 (pow.f32 (*.f32 normAngle u) 2) (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle))))) n0_i))))))) |
| 1× | egg-herbie |
| 453× | distribute-rgt-neg-in_binary32 |
| 408× | fma-def_binary32 |
| 329× | associate-*l*_binary32 |
| 300× | associate-*r*_binary32 |
| 267× | times-frac_binary32 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 90 | 1603 |
| 1 | 273 | 1603 |
| 2 | 850 | 1500 |
| 3 | 3573 | 1500 |
| 1× | node limit |
| Inputs |
|---|
(/.f32 1 u) |
(-.f32 (/.f32 1 u) (*.f32 1/6 (/.f32 (pow.f32 normAngle 2) u))) |
(-.f32 (+.f32 (*.f32 1/120 (/.f32 (pow.f32 normAngle 4) u)) (/.f32 1 u)) (*.f32 1/6 (/.f32 (pow.f32 normAngle 2) u))) |
(-.f32 (+.f32 (*.f32 1/120 (/.f32 (pow.f32 normAngle 4) u)) (/.f32 1 u)) (+.f32 (*.f32 1/5040 (/.f32 (pow.f32 normAngle 6) u)) (*.f32 1/6 (/.f32 (pow.f32 normAngle 2) u)))) |
u |
(-.f32 u (*.f32 1/3 (*.f32 u (pow.f32 normAngle 2)))) |
(-.f32 u (+.f32 (*.f32 1/3 (*.f32 u (pow.f32 normAngle 2))) (*.f32 1/45 (*.f32 u (pow.f32 normAngle 4))))) |
(-.f32 u (+.f32 (*.f32 1/3 (*.f32 u (pow.f32 normAngle 2))) (+.f32 (*.f32 2/945 (*.f32 u (pow.f32 normAngle 6))) (*.f32 1/45 (*.f32 u (pow.f32 normAngle 4)))))) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
n0_i |
(-.f32 n0_i (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u (*.f32 n0_i normAngle))) (sin.f32 normAngle))) |
(-.f32 n0_i (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 n0_i (*.f32 u normAngle))) (sin.f32 normAngle)))) |
(-.f32 n0_i (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 n0_i (*.f32 u normAngle))) (sin.f32 normAngle)))) |
(*.f32 -1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) |
(neg.f32 (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u (*.f32 n0_i normAngle))) (sin.f32 normAngle)))) |
(-.f32 n0_i (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 n0_i (*.f32 u normAngle))) (sin.f32 normAngle)))) |
(-.f32 n0_i (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 n0_i (*.f32 u normAngle))) (sin.f32 normAngle)))) |
(*.f32 -1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) |
(neg.f32 (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u (*.f32 n0_i normAngle))) (sin.f32 normAngle)))) |
(-.f32 n0_i (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 n0_i (*.f32 u normAngle))) (sin.f32 normAngle)))) |
(-.f32 n0_i (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 n0_i (*.f32 u normAngle))) (sin.f32 normAngle)))) |
(*.f32 n0_i (-.f32 1 u)) |
(-.f32 (+.f32 (*.f32 1/3 (*.f32 u (*.f32 n0_i (pow.f32 normAngle 2)))) n0_i) (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (*.f32 u n0_i))) |
(-.f32 (+.f32 (*.f32 1/3 (*.f32 u (*.f32 n0_i (pow.f32 normAngle 2)))) (+.f32 (*.f32 1/45 (*.f32 u (*.f32 n0_i (pow.f32 normAngle 4)))) n0_i)) (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (*.f32 u n0_i))) |
(-.f32 (+.f32 (*.f32 1/3 (*.f32 u (*.f32 n0_i (pow.f32 normAngle 2)))) (+.f32 (*.f32 2/945 (*.f32 u (*.f32 n0_i (pow.f32 normAngle 6)))) (+.f32 (*.f32 1/45 (*.f32 u (*.f32 n0_i (pow.f32 normAngle 4)))) n0_i))) (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (*.f32 u n0_i))) |
(*.f32 -1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) |
(neg.f32 (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u (*.f32 n0_i normAngle))) (sin.f32 normAngle)))) |
(-.f32 n0_i (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 n0_i (*.f32 u normAngle))) (sin.f32 normAngle)))) |
(-.f32 n0_i (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 n0_i (*.f32 u normAngle))) (sin.f32 normAngle)))) |
(*.f32 -1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) |
(neg.f32 (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u (*.f32 n0_i normAngle))) (sin.f32 normAngle)))) |
(-.f32 n0_i (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 n0_i (*.f32 u normAngle))) (sin.f32 normAngle)))) |
(-.f32 n0_i (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 n0_i (*.f32 u normAngle))) (sin.f32 normAngle)))) |
(*.f32 (-.f32 1 (+.f32 (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) (*.f32 1/2 (*.f32 (pow.f32 u 2) (pow.f32 normAngle 2))))) n0_i) |
(*.f32 (-.f32 1 (+.f32 (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) (*.f32 1/2 (*.f32 (pow.f32 u 2) (pow.f32 normAngle 2))))) n0_i) |
(*.f32 (-.f32 1 (+.f32 (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) (*.f32 1/2 (*.f32 (pow.f32 u 2) (pow.f32 normAngle 2))))) n0_i) |
(*.f32 (-.f32 1 (+.f32 (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) (*.f32 1/2 (*.f32 (pow.f32 u 2) (pow.f32 normAngle 2))))) n0_i) |
(*.f32 (-.f32 1 (+.f32 (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) (*.f32 1/2 (*.f32 (pow.f32 u 2) (pow.f32 normAngle 2))))) n0_i) |
(*.f32 (-.f32 1 (+.f32 (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) (*.f32 1/2 (*.f32 (pow.f32 u 2) (pow.f32 normAngle 2))))) n0_i) |
(*.f32 (-.f32 1 (+.f32 (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) (*.f32 1/2 (*.f32 (pow.f32 u 2) (pow.f32 normAngle 2))))) n0_i) |
(*.f32 (-.f32 1 (+.f32 (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) (*.f32 1/2 (*.f32 (pow.f32 u 2) (pow.f32 normAngle 2))))) n0_i) |
(*.f32 (-.f32 1 (+.f32 (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) (*.f32 1/2 (*.f32 (pow.f32 u 2) (pow.f32 normAngle 2))))) n0_i) |
(*.f32 (-.f32 1 (+.f32 (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) (*.f32 1/2 (*.f32 (pow.f32 u 2) (pow.f32 normAngle 2))))) n0_i) |
(*.f32 (-.f32 1 (+.f32 (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) (*.f32 1/2 (*.f32 (pow.f32 u 2) (pow.f32 normAngle 2))))) n0_i) |
(*.f32 (-.f32 1 (+.f32 (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) (*.f32 1/2 (*.f32 (pow.f32 u 2) (pow.f32 normAngle 2))))) n0_i) |
| Outputs |
|---|
(/.f32 1 u) |
(-.f32 (/.f32 1 u) (*.f32 1/6 (/.f32 (pow.f32 normAngle 2) u))) |
(+.f32 (/.f32 1 u) (*.f32 -1/6 (/.f32 (*.f32 normAngle normAngle) u))) |
(-.f32 (/.f32 1 u) (*.f32 1/6 (/.f32 (*.f32 normAngle normAngle) u))) |
(fma.f32 (/.f32 (*.f32 normAngle normAngle) u) -1/6 (/.f32 1 u)) |
(fma.f32 (*.f32 (/.f32 normAngle u) normAngle) -1/6 (/.f32 1 u)) |
(-.f32 (+.f32 (*.f32 1/120 (/.f32 (pow.f32 normAngle 4) u)) (/.f32 1 u)) (*.f32 1/6 (/.f32 (pow.f32 normAngle 2) u))) |
(+.f32 (fma.f32 1/120 (/.f32 (pow.f32 normAngle 4) u) (/.f32 1 u)) (*.f32 -1/6 (/.f32 (*.f32 normAngle normAngle) u))) |
(+.f32 (fma.f32 1/120 (/.f32 (pow.f32 normAngle 4) u) (/.f32 1 u)) (*.f32 (/.f32 (*.f32 normAngle normAngle) u) -1/6)) |
(fma.f32 (/.f32 (*.f32 normAngle normAngle) u) -1/6 (fma.f32 1/120 (/.f32 (pow.f32 normAngle 4) u) (/.f32 1 u))) |
(fma.f32 (*.f32 (/.f32 normAngle u) normAngle) -1/6 (fma.f32 1/120 (/.f32 (pow.f32 normAngle 4) u) (/.f32 1 u))) |
(-.f32 (+.f32 (*.f32 1/120 (/.f32 (pow.f32 normAngle 4) u)) (/.f32 1 u)) (+.f32 (*.f32 1/5040 (/.f32 (pow.f32 normAngle 6) u)) (*.f32 1/6 (/.f32 (pow.f32 normAngle 2) u)))) |
(-.f32 (fma.f32 1/120 (/.f32 (pow.f32 normAngle 4) u) (/.f32 1 u)) (fma.f32 1/5040 (/.f32 (pow.f32 normAngle 6) u) (*.f32 1/6 (/.f32 (*.f32 normAngle normAngle) u)))) |
(-.f32 (fma.f32 1/120 (/.f32 (pow.f32 normAngle 4) u) (/.f32 1 u)) (fma.f32 1/6 (/.f32 (*.f32 normAngle normAngle) u) (*.f32 1/5040 (/.f32 (pow.f32 normAngle 6) u)))) |
(+.f32 (/.f32 1 u) (fma.f32 1/120 (/.f32 (pow.f32 normAngle 4) u) (fma.f32 (/.f32 (*.f32 normAngle normAngle) u) -1/6 (/.f32 -1/5040 (/.f32 u (pow.f32 normAngle 6)))))) |
(+.f32 (/.f32 1 u) (fma.f32 1/120 (/.f32 (pow.f32 normAngle 4) u) (fma.f32 (*.f32 (/.f32 normAngle u) normAngle) -1/6 (*.f32 (/.f32 (pow.f32 normAngle 6) u) -1/5040)))) |
u |
(-.f32 u (*.f32 1/3 (*.f32 u (pow.f32 normAngle 2)))) |
(+.f32 u (*.f32 -1/3 (*.f32 u (*.f32 normAngle normAngle)))) |
(+.f32 u (*.f32 (*.f32 u (*.f32 normAngle normAngle)) -1/3)) |
(fma.f32 (*.f32 u (*.f32 normAngle normAngle)) -1/3 u) |
(-.f32 u (+.f32 (*.f32 1/3 (*.f32 u (pow.f32 normAngle 2))) (*.f32 1/45 (*.f32 u (pow.f32 normAngle 4))))) |
(-.f32 u (fma.f32 1/3 (*.f32 u (*.f32 normAngle normAngle)) (*.f32 (*.f32 1/45 u) (pow.f32 normAngle 4)))) |
(-.f32 u (fma.f32 1/3 (*.f32 u (*.f32 normAngle normAngle)) (*.f32 u (*.f32 (pow.f32 normAngle 4) 1/45)))) |
(-.f32 u (*.f32 u (+.f32 (*.f32 (*.f32 normAngle normAngle) 1/3) (*.f32 (pow.f32 normAngle 4) 1/45)))) |
(+.f32 u (*.f32 u (+.f32 (*.f32 (*.f32 normAngle normAngle) -1/3) (*.f32 (pow.f32 normAngle 4) -1/45)))) |
(-.f32 u (+.f32 (*.f32 1/3 (*.f32 u (pow.f32 normAngle 2))) (+.f32 (*.f32 2/945 (*.f32 u (pow.f32 normAngle 6))) (*.f32 1/45 (*.f32 u (pow.f32 normAngle 4)))))) |
(-.f32 u (fma.f32 1/3 (*.f32 u (*.f32 normAngle normAngle)) (fma.f32 2/945 (*.f32 u (pow.f32 normAngle 6)) (*.f32 (*.f32 1/45 u) (pow.f32 normAngle 4))))) |
(-.f32 u (fma.f32 1/3 (*.f32 u (*.f32 normAngle normAngle)) (fma.f32 1/45 (*.f32 u (pow.f32 normAngle 4)) (*.f32 u (*.f32 (pow.f32 normAngle 6) 2/945))))) |
(-.f32 u (fma.f32 u (*.f32 (pow.f32 normAngle 4) 1/45) (*.f32 u (+.f32 (*.f32 (*.f32 normAngle normAngle) 1/3) (*.f32 (pow.f32 normAngle 6) 2/945))))) |
(-.f32 (fma.f32 (*.f32 u (*.f32 normAngle normAngle)) -1/3 u) (*.f32 u (+.f32 (*.f32 (pow.f32 normAngle 4) 1/45) (*.f32 (pow.f32 normAngle 6) 2/945)))) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle))) |
(*.f32 (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)) (*.f32 u normAngle)) |
(*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle))) |
(*.f32 (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)) (*.f32 u normAngle)) |
(*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle))) |
(*.f32 (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)) (*.f32 u normAngle)) |
(*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle))) |
(*.f32 (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)) (*.f32 u normAngle)) |
(*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle))) |
(*.f32 (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)) (*.f32 u normAngle)) |
(*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle))) |
(*.f32 (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)) (*.f32 u normAngle)) |
(*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle))) |
(*.f32 (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)) (*.f32 u normAngle)) |
(*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle))) |
(*.f32 (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)) (*.f32 u normAngle)) |
(*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle))) |
(*.f32 (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)) (*.f32 u normAngle)) |
(*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle))) |
(*.f32 (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)) (*.f32 u normAngle)) |
(*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle))) |
(*.f32 (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)) (*.f32 u normAngle)) |
(*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle))) |
(*.f32 (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)) (*.f32 u normAngle)) |
(*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle))) |
(*.f32 (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)) (*.f32 u normAngle)) |
(*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle))) |
(*.f32 (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)) (*.f32 u normAngle)) |
(*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle))) |
(*.f32 (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)) (*.f32 u normAngle)) |
(*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle))) |
(*.f32 (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)) (*.f32 u normAngle)) |
(*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle))) |
(*.f32 (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)) (*.f32 u normAngle)) |
(*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle))) |
(*.f32 (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)) (*.f32 u normAngle)) |
(*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle))) |
(*.f32 (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)) (*.f32 u normAngle)) |
(*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle) |
(/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) |
(/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle))) |
(*.f32 (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)) (*.f32 u normAngle)) |
(*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle) |
n0_i |
(-.f32 n0_i (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u (*.f32 n0_i normAngle))) (sin.f32 normAngle))) |
(-.f32 n0_i (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 (*.f32 u n0_i) normAngle)))) |
(-.f32 n0_i (/.f32 (*.f32 (*.f32 u normAngle) (*.f32 (cos.f32 normAngle) n0_i)) (sin.f32 normAngle))) |
(-.f32 n0_i (*.f32 (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle) n0_i)) |
(-.f32 n0_i (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 n0_i (*.f32 u normAngle))) (sin.f32 normAngle)))) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 (*.f32 (*.f32 u u) n0_i) (*.f32 normAngle normAngle)) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 (*.f32 u n0_i) normAngle))))) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle (*.f32 normAngle n0_i)))) (/.f32 (*.f32 (*.f32 u normAngle) (*.f32 (cos.f32 normAngle) n0_i)) (sin.f32 normAngle)))) |
(*.f32 n0_i (-.f32 1 (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(-.f32 n0_i (*.f32 n0_i (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(-.f32 n0_i (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 n0_i (*.f32 u normAngle))) (sin.f32 normAngle)))) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 (*.f32 (*.f32 u u) n0_i) (*.f32 normAngle normAngle)) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 (*.f32 u n0_i) normAngle))))) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle (*.f32 normAngle n0_i)))) (/.f32 (*.f32 (*.f32 u normAngle) (*.f32 (cos.f32 normAngle) n0_i)) (sin.f32 normAngle)))) |
(*.f32 n0_i (-.f32 1 (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(-.f32 n0_i (*.f32 n0_i (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(*.f32 -1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) |
(*.f32 (*.f32 (*.f32 (*.f32 u u) n0_i) (*.f32 normAngle normAngle)) -1/2) |
(*.f32 (*.f32 normAngle (*.f32 normAngle n0_i)) (*.f32 (*.f32 u u) -1/2)) |
(*.f32 u (*.f32 (*.f32 u (*.f32 normAngle (*.f32 normAngle n0_i))) -1/2)) |
(neg.f32 (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u (*.f32 n0_i normAngle))) (sin.f32 normAngle)))) |
(neg.f32 (fma.f32 1/2 (*.f32 (*.f32 (*.f32 u u) n0_i) (*.f32 normAngle normAngle)) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 (*.f32 u n0_i) normAngle))))) |
(-.f32 (*.f32 (*.f32 normAngle (*.f32 normAngle n0_i)) (*.f32 (*.f32 u u) -1/2)) (/.f32 (*.f32 (*.f32 u normAngle) (*.f32 (cos.f32 normAngle) n0_i)) (sin.f32 normAngle))) |
(*.f32 n0_i (-.f32 (*.f32 (*.f32 -1/2 normAngle) (*.f32 u (*.f32 u normAngle))) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle))) |
(*.f32 n0_i (-.f32 (*.f32 (*.f32 normAngle normAngle) (*.f32 (*.f32 u u) -1/2)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle))) |
(-.f32 n0_i (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 n0_i (*.f32 u normAngle))) (sin.f32 normAngle)))) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 (*.f32 (*.f32 u u) n0_i) (*.f32 normAngle normAngle)) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 (*.f32 u n0_i) normAngle))))) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle (*.f32 normAngle n0_i)))) (/.f32 (*.f32 (*.f32 u normAngle) (*.f32 (cos.f32 normAngle) n0_i)) (sin.f32 normAngle)))) |
(*.f32 n0_i (-.f32 1 (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(-.f32 n0_i (*.f32 n0_i (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(-.f32 n0_i (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 n0_i (*.f32 u normAngle))) (sin.f32 normAngle)))) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 (*.f32 (*.f32 u u) n0_i) (*.f32 normAngle normAngle)) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 (*.f32 u n0_i) normAngle))))) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle (*.f32 normAngle n0_i)))) (/.f32 (*.f32 (*.f32 u normAngle) (*.f32 (cos.f32 normAngle) n0_i)) (sin.f32 normAngle)))) |
(*.f32 n0_i (-.f32 1 (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(-.f32 n0_i (*.f32 n0_i (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(*.f32 -1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) |
(*.f32 (*.f32 (*.f32 (*.f32 u u) n0_i) (*.f32 normAngle normAngle)) -1/2) |
(*.f32 (*.f32 normAngle (*.f32 normAngle n0_i)) (*.f32 (*.f32 u u) -1/2)) |
(*.f32 u (*.f32 (*.f32 u (*.f32 normAngle (*.f32 normAngle n0_i))) -1/2)) |
(neg.f32 (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u (*.f32 n0_i normAngle))) (sin.f32 normAngle)))) |
(neg.f32 (fma.f32 1/2 (*.f32 (*.f32 (*.f32 u u) n0_i) (*.f32 normAngle normAngle)) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 (*.f32 u n0_i) normAngle))))) |
(-.f32 (*.f32 (*.f32 normAngle (*.f32 normAngle n0_i)) (*.f32 (*.f32 u u) -1/2)) (/.f32 (*.f32 (*.f32 u normAngle) (*.f32 (cos.f32 normAngle) n0_i)) (sin.f32 normAngle))) |
(*.f32 n0_i (-.f32 (*.f32 (*.f32 -1/2 normAngle) (*.f32 u (*.f32 u normAngle))) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle))) |
(*.f32 n0_i (-.f32 (*.f32 (*.f32 normAngle normAngle) (*.f32 (*.f32 u u) -1/2)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle))) |
(-.f32 n0_i (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 n0_i (*.f32 u normAngle))) (sin.f32 normAngle)))) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 (*.f32 (*.f32 u u) n0_i) (*.f32 normAngle normAngle)) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 (*.f32 u n0_i) normAngle))))) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle (*.f32 normAngle n0_i)))) (/.f32 (*.f32 (*.f32 u normAngle) (*.f32 (cos.f32 normAngle) n0_i)) (sin.f32 normAngle)))) |
(*.f32 n0_i (-.f32 1 (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(-.f32 n0_i (*.f32 n0_i (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(-.f32 n0_i (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 n0_i (*.f32 u normAngle))) (sin.f32 normAngle)))) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 (*.f32 (*.f32 u u) n0_i) (*.f32 normAngle normAngle)) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 (*.f32 u n0_i) normAngle))))) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle (*.f32 normAngle n0_i)))) (/.f32 (*.f32 (*.f32 u normAngle) (*.f32 (cos.f32 normAngle) n0_i)) (sin.f32 normAngle)))) |
(*.f32 n0_i (-.f32 1 (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(-.f32 n0_i (*.f32 n0_i (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(*.f32 n0_i (-.f32 1 u)) |
(-.f32 (+.f32 (*.f32 1/3 (*.f32 u (*.f32 n0_i (pow.f32 normAngle 2)))) n0_i) (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (*.f32 u n0_i))) |
(-.f32 (fma.f32 1/3 (*.f32 u (*.f32 (*.f32 normAngle normAngle) n0_i)) n0_i) (fma.f32 1/2 (*.f32 (*.f32 (*.f32 u u) n0_i) (*.f32 normAngle normAngle)) (*.f32 u n0_i))) |
(-.f32 (fma.f32 1/3 (*.f32 u (*.f32 normAngle (*.f32 normAngle n0_i))) n0_i) (fma.f32 u n0_i (*.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle (*.f32 normAngle n0_i))))))) |
(+.f32 n0_i (-.f32 (*.f32 (*.f32 normAngle (*.f32 normAngle n0_i)) (-.f32 (*.f32 u 1/3) (*.f32 1/2 (*.f32 u u)))) (*.f32 u n0_i))) |
(+.f32 n0_i (-.f32 (*.f32 (*.f32 normAngle (*.f32 normAngle n0_i)) (+.f32 (*.f32 u 1/3) (*.f32 (*.f32 u u) -1/2))) (*.f32 u n0_i))) |
(-.f32 (+.f32 (*.f32 1/3 (*.f32 u (*.f32 n0_i (pow.f32 normAngle 2)))) (+.f32 (*.f32 1/45 (*.f32 u (*.f32 n0_i (pow.f32 normAngle 4)))) n0_i)) (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (*.f32 u n0_i))) |
(-.f32 (fma.f32 1/3 (*.f32 u (*.f32 (*.f32 normAngle normAngle) n0_i)) (fma.f32 1/45 (*.f32 (*.f32 u n0_i) (pow.f32 normAngle 4)) n0_i)) (fma.f32 1/2 (*.f32 (*.f32 (*.f32 u u) n0_i) (*.f32 normAngle normAngle)) (*.f32 u n0_i))) |
(-.f32 (fma.f32 1/3 (*.f32 u (*.f32 normAngle (*.f32 normAngle n0_i))) (fma.f32 1/45 (*.f32 u (*.f32 (pow.f32 normAngle 4) n0_i)) n0_i)) (fma.f32 u n0_i (*.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle (*.f32 normAngle n0_i))))))) |
(+.f32 (fma.f32 1/45 (*.f32 (pow.f32 normAngle 4) (*.f32 u n0_i)) n0_i) (-.f32 (*.f32 (*.f32 normAngle (*.f32 normAngle n0_i)) (-.f32 (*.f32 u 1/3) (*.f32 1/2 (*.f32 u u)))) (*.f32 u n0_i))) |
(+.f32 (fma.f32 (*.f32 u (*.f32 1/45 n0_i)) (pow.f32 normAngle 4) n0_i) (-.f32 (*.f32 (*.f32 normAngle (*.f32 normAngle n0_i)) (+.f32 (*.f32 u 1/3) (*.f32 (*.f32 u u) -1/2))) (*.f32 u n0_i))) |
(-.f32 (+.f32 (*.f32 1/3 (*.f32 u (*.f32 n0_i (pow.f32 normAngle 2)))) (+.f32 (*.f32 2/945 (*.f32 u (*.f32 n0_i (pow.f32 normAngle 6)))) (+.f32 (*.f32 1/45 (*.f32 u (*.f32 n0_i (pow.f32 normAngle 4)))) n0_i))) (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (*.f32 u n0_i))) |
(-.f32 (fma.f32 1/3 (*.f32 u (*.f32 (*.f32 normAngle normAngle) n0_i)) (fma.f32 2/945 (*.f32 u (*.f32 (pow.f32 normAngle 6) n0_i)) (fma.f32 1/45 (*.f32 (*.f32 u n0_i) (pow.f32 normAngle 4)) n0_i))) (fma.f32 1/2 (*.f32 (*.f32 (*.f32 u u) n0_i) (*.f32 normAngle normAngle)) (*.f32 u n0_i))) |
(-.f32 (fma.f32 1/3 (*.f32 u (*.f32 normAngle (*.f32 normAngle n0_i))) (fma.f32 2/945 (*.f32 u (*.f32 (pow.f32 normAngle 6) n0_i)) (fma.f32 1/45 (*.f32 u (*.f32 (pow.f32 normAngle 4) n0_i)) n0_i))) (fma.f32 u n0_i (*.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle (*.f32 normAngle n0_i))))))) |
(+.f32 (*.f32 n0_i (*.f32 u (+.f32 (*.f32 (pow.f32 normAngle 4) 1/45) (*.f32 (pow.f32 normAngle 6) 2/945)))) (+.f32 n0_i (-.f32 (*.f32 (*.f32 normAngle (*.f32 normAngle n0_i)) (-.f32 (*.f32 u 1/3) (*.f32 1/2 (*.f32 u u)))) (*.f32 u n0_i)))) |
(+.f32 n0_i (+.f32 (*.f32 (*.f32 u n0_i) (+.f32 (*.f32 (pow.f32 normAngle 4) 1/45) (*.f32 (pow.f32 normAngle 6) 2/945))) (-.f32 (*.f32 (*.f32 normAngle (*.f32 normAngle n0_i)) (+.f32 (*.f32 u 1/3) (*.f32 (*.f32 u u) -1/2))) (*.f32 u n0_i)))) |
(*.f32 -1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) |
(*.f32 (*.f32 (*.f32 (*.f32 u u) n0_i) (*.f32 normAngle normAngle)) -1/2) |
(*.f32 (*.f32 normAngle (*.f32 normAngle n0_i)) (*.f32 (*.f32 u u) -1/2)) |
(*.f32 u (*.f32 (*.f32 u (*.f32 normAngle (*.f32 normAngle n0_i))) -1/2)) |
(neg.f32 (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u (*.f32 n0_i normAngle))) (sin.f32 normAngle)))) |
(neg.f32 (fma.f32 1/2 (*.f32 (*.f32 (*.f32 u u) n0_i) (*.f32 normAngle normAngle)) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 (*.f32 u n0_i) normAngle))))) |
(-.f32 (*.f32 (*.f32 normAngle (*.f32 normAngle n0_i)) (*.f32 (*.f32 u u) -1/2)) (/.f32 (*.f32 (*.f32 u normAngle) (*.f32 (cos.f32 normAngle) n0_i)) (sin.f32 normAngle))) |
(*.f32 n0_i (-.f32 (*.f32 (*.f32 -1/2 normAngle) (*.f32 u (*.f32 u normAngle))) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle))) |
(*.f32 n0_i (-.f32 (*.f32 (*.f32 normAngle normAngle) (*.f32 (*.f32 u u) -1/2)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle))) |
(-.f32 n0_i (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 n0_i (*.f32 u normAngle))) (sin.f32 normAngle)))) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 (*.f32 (*.f32 u u) n0_i) (*.f32 normAngle normAngle)) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 (*.f32 u n0_i) normAngle))))) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle (*.f32 normAngle n0_i)))) (/.f32 (*.f32 (*.f32 u normAngle) (*.f32 (cos.f32 normAngle) n0_i)) (sin.f32 normAngle)))) |
(*.f32 n0_i (-.f32 1 (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(-.f32 n0_i (*.f32 n0_i (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(-.f32 n0_i (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 n0_i (*.f32 u normAngle))) (sin.f32 normAngle)))) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 (*.f32 (*.f32 u u) n0_i) (*.f32 normAngle normAngle)) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 (*.f32 u n0_i) normAngle))))) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle (*.f32 normAngle n0_i)))) (/.f32 (*.f32 (*.f32 u normAngle) (*.f32 (cos.f32 normAngle) n0_i)) (sin.f32 normAngle)))) |
(*.f32 n0_i (-.f32 1 (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(-.f32 n0_i (*.f32 n0_i (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(*.f32 -1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) |
(*.f32 (*.f32 (*.f32 (*.f32 u u) n0_i) (*.f32 normAngle normAngle)) -1/2) |
(*.f32 (*.f32 normAngle (*.f32 normAngle n0_i)) (*.f32 (*.f32 u u) -1/2)) |
(*.f32 u (*.f32 (*.f32 u (*.f32 normAngle (*.f32 normAngle n0_i))) -1/2)) |
(neg.f32 (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u (*.f32 n0_i normAngle))) (sin.f32 normAngle)))) |
(neg.f32 (fma.f32 1/2 (*.f32 (*.f32 (*.f32 u u) n0_i) (*.f32 normAngle normAngle)) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 (*.f32 u n0_i) normAngle))))) |
(-.f32 (*.f32 (*.f32 normAngle (*.f32 normAngle n0_i)) (*.f32 (*.f32 u u) -1/2)) (/.f32 (*.f32 (*.f32 u normAngle) (*.f32 (cos.f32 normAngle) n0_i)) (sin.f32 normAngle))) |
(*.f32 n0_i (-.f32 (*.f32 (*.f32 -1/2 normAngle) (*.f32 u (*.f32 u normAngle))) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle))) |
(*.f32 n0_i (-.f32 (*.f32 (*.f32 normAngle normAngle) (*.f32 (*.f32 u u) -1/2)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle))) |
(-.f32 n0_i (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 n0_i (*.f32 u normAngle))) (sin.f32 normAngle)))) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 (*.f32 (*.f32 u u) n0_i) (*.f32 normAngle normAngle)) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 (*.f32 u n0_i) normAngle))))) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle (*.f32 normAngle n0_i)))) (/.f32 (*.f32 (*.f32 u normAngle) (*.f32 (cos.f32 normAngle) n0_i)) (sin.f32 normAngle)))) |
(*.f32 n0_i (-.f32 1 (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(-.f32 n0_i (*.f32 n0_i (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(-.f32 n0_i (+.f32 (*.f32 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 n0_i (*.f32 u normAngle))) (sin.f32 normAngle)))) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 (*.f32 (*.f32 u u) n0_i) (*.f32 normAngle normAngle)) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 (*.f32 u n0_i) normAngle))))) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle (*.f32 normAngle n0_i)))) (/.f32 (*.f32 (*.f32 u normAngle) (*.f32 (cos.f32 normAngle) n0_i)) (sin.f32 normAngle)))) |
(*.f32 n0_i (-.f32 1 (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(-.f32 n0_i (*.f32 n0_i (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(*.f32 (-.f32 1 (+.f32 (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) (*.f32 1/2 (*.f32 (pow.f32 u 2) (pow.f32 normAngle 2))))) n0_i) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 (*.f32 (*.f32 u u) n0_i) (*.f32 normAngle normAngle)) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 (*.f32 u n0_i) normAngle))))) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle (*.f32 normAngle n0_i)))) (/.f32 (*.f32 (*.f32 u normAngle) (*.f32 (cos.f32 normAngle) n0_i)) (sin.f32 normAngle)))) |
(*.f32 n0_i (-.f32 1 (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(-.f32 n0_i (*.f32 n0_i (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(*.f32 (-.f32 1 (+.f32 (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) (*.f32 1/2 (*.f32 (pow.f32 u 2) (pow.f32 normAngle 2))))) n0_i) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 (*.f32 (*.f32 u u) n0_i) (*.f32 normAngle normAngle)) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 (*.f32 u n0_i) normAngle))))) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle (*.f32 normAngle n0_i)))) (/.f32 (*.f32 (*.f32 u normAngle) (*.f32 (cos.f32 normAngle) n0_i)) (sin.f32 normAngle)))) |
(*.f32 n0_i (-.f32 1 (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(-.f32 n0_i (*.f32 n0_i (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(*.f32 (-.f32 1 (+.f32 (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) (*.f32 1/2 (*.f32 (pow.f32 u 2) (pow.f32 normAngle 2))))) n0_i) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 (*.f32 (*.f32 u u) n0_i) (*.f32 normAngle normAngle)) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 (*.f32 u n0_i) normAngle))))) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle (*.f32 normAngle n0_i)))) (/.f32 (*.f32 (*.f32 u normAngle) (*.f32 (cos.f32 normAngle) n0_i)) (sin.f32 normAngle)))) |
(*.f32 n0_i (-.f32 1 (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(-.f32 n0_i (*.f32 n0_i (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(*.f32 (-.f32 1 (+.f32 (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) (*.f32 1/2 (*.f32 (pow.f32 u 2) (pow.f32 normAngle 2))))) n0_i) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 (*.f32 (*.f32 u u) n0_i) (*.f32 normAngle normAngle)) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 (*.f32 u n0_i) normAngle))))) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle (*.f32 normAngle n0_i)))) (/.f32 (*.f32 (*.f32 u normAngle) (*.f32 (cos.f32 normAngle) n0_i)) (sin.f32 normAngle)))) |
(*.f32 n0_i (-.f32 1 (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(-.f32 n0_i (*.f32 n0_i (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(*.f32 (-.f32 1 (+.f32 (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) (*.f32 1/2 (*.f32 (pow.f32 u 2) (pow.f32 normAngle 2))))) n0_i) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 (*.f32 (*.f32 u u) n0_i) (*.f32 normAngle normAngle)) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 (*.f32 u n0_i) normAngle))))) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle (*.f32 normAngle n0_i)))) (/.f32 (*.f32 (*.f32 u normAngle) (*.f32 (cos.f32 normAngle) n0_i)) (sin.f32 normAngle)))) |
(*.f32 n0_i (-.f32 1 (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(-.f32 n0_i (*.f32 n0_i (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(*.f32 (-.f32 1 (+.f32 (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) (*.f32 1/2 (*.f32 (pow.f32 u 2) (pow.f32 normAngle 2))))) n0_i) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 (*.f32 (*.f32 u u) n0_i) (*.f32 normAngle normAngle)) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 (*.f32 u n0_i) normAngle))))) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle (*.f32 normAngle n0_i)))) (/.f32 (*.f32 (*.f32 u normAngle) (*.f32 (cos.f32 normAngle) n0_i)) (sin.f32 normAngle)))) |
(*.f32 n0_i (-.f32 1 (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(-.f32 n0_i (*.f32 n0_i (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(*.f32 (-.f32 1 (+.f32 (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) (*.f32 1/2 (*.f32 (pow.f32 u 2) (pow.f32 normAngle 2))))) n0_i) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 (*.f32 (*.f32 u u) n0_i) (*.f32 normAngle normAngle)) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 (*.f32 u n0_i) normAngle))))) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle (*.f32 normAngle n0_i)))) (/.f32 (*.f32 (*.f32 u normAngle) (*.f32 (cos.f32 normAngle) n0_i)) (sin.f32 normAngle)))) |
(*.f32 n0_i (-.f32 1 (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(-.f32 n0_i (*.f32 n0_i (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(*.f32 (-.f32 1 (+.f32 (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) (*.f32 1/2 (*.f32 (pow.f32 u 2) (pow.f32 normAngle 2))))) n0_i) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 (*.f32 (*.f32 u u) n0_i) (*.f32 normAngle normAngle)) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 (*.f32 u n0_i) normAngle))))) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle (*.f32 normAngle n0_i)))) (/.f32 (*.f32 (*.f32 u normAngle) (*.f32 (cos.f32 normAngle) n0_i)) (sin.f32 normAngle)))) |
(*.f32 n0_i (-.f32 1 (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(-.f32 n0_i (*.f32 n0_i (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(*.f32 (-.f32 1 (+.f32 (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) (*.f32 1/2 (*.f32 (pow.f32 u 2) (pow.f32 normAngle 2))))) n0_i) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 (*.f32 (*.f32 u u) n0_i) (*.f32 normAngle normAngle)) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 (*.f32 u n0_i) normAngle))))) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle (*.f32 normAngle n0_i)))) (/.f32 (*.f32 (*.f32 u normAngle) (*.f32 (cos.f32 normAngle) n0_i)) (sin.f32 normAngle)))) |
(*.f32 n0_i (-.f32 1 (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(-.f32 n0_i (*.f32 n0_i (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(*.f32 (-.f32 1 (+.f32 (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) (*.f32 1/2 (*.f32 (pow.f32 u 2) (pow.f32 normAngle 2))))) n0_i) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 (*.f32 (*.f32 u u) n0_i) (*.f32 normAngle normAngle)) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 (*.f32 u n0_i) normAngle))))) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle (*.f32 normAngle n0_i)))) (/.f32 (*.f32 (*.f32 u normAngle) (*.f32 (cos.f32 normAngle) n0_i)) (sin.f32 normAngle)))) |
(*.f32 n0_i (-.f32 1 (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(-.f32 n0_i (*.f32 n0_i (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(*.f32 (-.f32 1 (+.f32 (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) (*.f32 1/2 (*.f32 (pow.f32 u 2) (pow.f32 normAngle 2))))) n0_i) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 (*.f32 (*.f32 u u) n0_i) (*.f32 normAngle normAngle)) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 (*.f32 u n0_i) normAngle))))) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle (*.f32 normAngle n0_i)))) (/.f32 (*.f32 (*.f32 u normAngle) (*.f32 (cos.f32 normAngle) n0_i)) (sin.f32 normAngle)))) |
(*.f32 n0_i (-.f32 1 (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(-.f32 n0_i (*.f32 n0_i (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(*.f32 (-.f32 1 (+.f32 (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u normAngle)) (sin.f32 normAngle)) (*.f32 1/2 (*.f32 (pow.f32 u 2) (pow.f32 normAngle 2))))) n0_i) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 (*.f32 (*.f32 u u) n0_i) (*.f32 normAngle normAngle)) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 (*.f32 u n0_i) normAngle))))) |
(-.f32 n0_i (fma.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle (*.f32 normAngle n0_i)))) (/.f32 (*.f32 (*.f32 u normAngle) (*.f32 (cos.f32 normAngle) n0_i)) (sin.f32 normAngle)))) |
(*.f32 n0_i (-.f32 1 (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
(-.f32 n0_i (*.f32 n0_i (fma.f32 (*.f32 normAngle normAngle) (*.f32 1/2 (*.f32 u u)) (*.f32 (/.f32 (*.f32 u (cos.f32 normAngle)) (sin.f32 normAngle)) normAngle)))) |
6 alts after pruning (5 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 179 | 2 | 181 |
| Fresh | 3 | 3 | 6 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 1 | 1 |
| Total | 183 | 6 | 189 |
| Status | Error | Program |
|---|---|---|
| 8.3b | (/.f32 (fma.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) n0_i (*.f32 (sin.f32 (*.f32 u normAngle)) n1_i)) (sin.f32 normAngle)) | |
| 0.8b | (+.f32 (+.f32 n0_i (*.f32 (neg.f32 (fma.f32 1/2 (pow.f32 (*.f32 normAngle u) 2) (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle))))) n0_i)) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i)) | |
| ✓ | 0.3b | (+.f32 (*.f32 (-.f32 1 u) n0_i) (*.f32 (-.f32 (+.f32 (*.f32 1/120 (*.f32 (pow.f32 u 5) (pow.f32 normAngle 4))) (+.f32 (*.f32 31/15120 (*.f32 u (pow.f32 normAngle 6))) (+.f32 (*.f32 1/720 (*.f32 (pow.f32 u 5) (pow.f32 normAngle 6))) (+.f32 u (+.f32 (*.f32 7/360 (*.f32 u (pow.f32 normAngle 4))) (*.f32 1/6 (*.f32 u (pow.f32 normAngle 2)))))))) (+.f32 (*.f32 1/6 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 2))) (+.f32 (*.f32 1/5040 (*.f32 (pow.f32 u 7) (pow.f32 normAngle 6))) (+.f32 (*.f32 1/36 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 4))) (*.f32 7/2160 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 6))))))) n1_i)) |
| 1.0b | (+.f32 (*.f32 (log.f32 (exp.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)))) n0_i) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i)) | |
| 1.0b | (+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) (*.f32 (pow.f32 (cbrt.f32 (/.f32 (sin.f32 (*.f32 u normAngle)) (sin.f32 normAngle))) 3) n1_i)) | |
| 0.9b | (+.f32 (*.f32 (-.f32 1 (fma.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle normAngle))) (log.f32 (+.f32 1 (expm1.f32 (*.f32 (*.f32 normAngle u) (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)))))))) n0_i) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i)) |
Compiled 7481 to 3011 computations (59.8% saved)
Total 0.2b remaining (82%)
Threshold costs 0.2b (82%)
Compiled 7694 to 3286 computations (57.3% saved)
| 1× | egg-herbie |
| 11× | *-commutative_binary32 |
| 4× | +-commutative_binary32 |
| 2× | sub-neg_binary32 |
| 1× | neg-sub0_binary32 |
| 1× | neg-mul-1_binary32 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 44 | 103 |
| 1 | 60 | 103 |
| 2 | 64 | 103 |
| 3 | 66 | 103 |
| 4 | 67 | 103 |
| 1× | saturated |
| Inputs |
|---|
(+.f32 (*.f32 (-.f32 1 (fma.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle normAngle))) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle))))) n0_i) (*.f32 (+.f32 (fma.f32 1/120 (*.f32 (/.f32 (pow.f32 u 5) (sin.f32 normAngle)) (pow.f32 normAngle 5)) (fma.f32 (/.f32 u (sin.f32 normAngle)) normAngle (*.f32 (*.f32 (/.f32 (pow.f32 u 3) (sin.f32 normAngle)) (pow.f32 normAngle 3)) -1/6))) (*.f32 -1/5040 (*.f32 (/.f32 (pow.f32 u 7) (sin.f32 normAngle)) (pow.f32 normAngle 7)))) n1_i)) |
| Outputs |
|---|
(+.f32 (*.f32 (-.f32 1 (fma.f32 1/2 (*.f32 u (*.f32 u (*.f32 normAngle normAngle))) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle))))) n0_i) (*.f32 (+.f32 (fma.f32 1/120 (*.f32 (/.f32 (pow.f32 u 5) (sin.f32 normAngle)) (pow.f32 normAngle 5)) (fma.f32 (/.f32 u (sin.f32 normAngle)) normAngle (*.f32 (*.f32 (/.f32 (pow.f32 u 3) (sin.f32 normAngle)) (pow.f32 normAngle 3)) -1/6))) (*.f32 -1/5040 (*.f32 (/.f32 (pow.f32 u 7) (sin.f32 normAngle)) (pow.f32 normAngle 7)))) n1_i)) |
| 1× | fuel |
Compiled 400 to 271 computations (32.3% saved)
Loading profile data...