Details

Time bar (total: 6.9s)

analyze1.5s (21.6%)

Algorithm
search
Search
TrueOtherFalseIter
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
Compiler

Compiled 62 to 45 computations (27.4% saved)

sample3.2s (46%)

Results
2.8s8256×body128valid
353.0ms981×body128invalid
Compiler

Compiled 124 to 90 computations (27.4% saved)

preprocess55.0ms (0.8%)

Algorithm
egg-herbie
Rules
516×fma-neg_binary32
426×fma-def_binary32
304×distribute-rgt-in_binary32
225×unsub-neg_binary32
193×cancel-sign-sub-inv_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
075259
1186217
2445217
3942182
41406182
51644182
61945182
72744182
84465182
044
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
2
3
Outputs
0
1
2
3
Call 2
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))
Compiler

Compiled 29 to 20 computations (31% saved)

simplify36.0ms (0.5%)

Algorithm
egg-herbie
Rules
717×fma-def_binary32
598×times-frac_binary32
385×fma-neg_binary32
232×div-sub_binary32
205×distribute-neg-frac_binary32
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01837
13831
28431
317226
426126
531226
638226
748626
874626
988026
10108526
11176426
12392226
Stop Event
node limit
Counts
1 → 2
Calls
Call 1
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))

prune4.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.8b
Counts
3 → 2
Alt Table
StatusErrorProgram
9.1b
(/.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))
Compiler

Compiled 146 to 89 computations (39% saved)

localize52.0ms (0.8%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i)
0.1b
(*.f32 (-.f32 1 u) normAngle)
0.5b
(*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle)))
2.1b
(*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle)))

series85.0ms (1.2%)

Counts
4 → 96
Calls

27 calls:

TimeVariablePointExpression
14.0ms
normAngle
@0
(*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i)
6.0ms
normAngle
@0
(*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle)))
5.0ms
n0_i
@-inf
(*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i)
4.0ms
n0_i
@0
(*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i)
4.0ms
n0_i
@inf
(*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i)

rewrite58.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
625×prod-diff_binary32
158×add-sqr-sqrt_binary32
155×*-un-lft-identity_binary32
155×pow1_binary32
144×add-cbrt-cube_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01549
131249
2401349
Stop Event
node limit
Counts
4 → 90
Calls
Call 1
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 1 u) normAngle)
(*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i)
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 log1p.f32 (expm1.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 -.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 log1p.f32 (expm1.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 +.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 log1p.f32 (expm1.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 -.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 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 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))))))

simplify56.0ms (0.8%)

Algorithm
egg-herbie
Rules
691×cancel-sign-sub-inv_binary32
391×fma-def_binary32
371×associate-*r*_binary32
262×associate-+r+_binary32
235×associate-*l*_binary32
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02632410
19102364
237502360
Stop Event
node limit
Counts
186 → 141
Calls
Call 1
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))
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))
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))
Outputs
(/.f32 (*.f32 u normAngle) (sin.f32 normAngle))
(/.f32 u (/.f32 (sin.f32 normAngle) normAngle))
(*.f32 (/.f32 u (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 (sin.f32 normAngle)) normAngle) (*.f32 1/6 (/.f32 (pow.f32 u 3) (/.f32 (sin.f32 normAngle) (pow.f32 normAngle 3)))))
(fma.f32 (/.f32 u (sin.f32 normAngle)) normAngle (*.f32 (/.f32 (pow.f32 u 3) (/.f32 (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)))))
(+.f32 (fma.f32 1/120 (*.f32 (/.f32 (pow.f32 u 5) (sin.f32 normAngle)) (pow.f32 normAngle 5)) (*.f32 (/.f32 u (sin.f32 normAngle)) normAngle)) (*.f32 (/.f32 (pow.f32 u 3) (/.f32 (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 (pow.f32 u 3) (/.f32 (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 (sin.f32 normAngle)) normAngle)) (fma.f32 1/6 (/.f32 (pow.f32 u 3) (/.f32 (sin.f32 normAngle) (pow.f32 normAngle 3))) (*.f32 1/5040 (/.f32 (*.f32 (pow.f32 u 7) (pow.f32 normAngle 7)) (sin.f32 normAngle)))))
(+.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 (pow.f32 u 3) (/.f32 (sin.f32 normAngle) (pow.f32 normAngle 3))) -1/6))) (*.f32 -1/5040 (/.f32 (*.f32 (pow.f32 u 7) (pow.f32 normAngle 7)) (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 (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))
(+.f32 u (fma.f32 u (*.f32 (*.f32 normAngle normAngle) 1/6) (*.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 u 3) (*.f32 (pow.f32 normAngle 6) 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 (-.f32 1 (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle)))) (*.f32 1/2 (*.f32 (*.f32 normAngle normAngle) (*.f32 u u))))
(-.f32 1 (fma.f32 1/2 (*.f32 normAngle (*.f32 normAngle (*.f32 u u))) (/.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 1/2 (*.f32 (*.f32 normAngle normAngle) (*.f32 u u)))))
(-.f32 (fma.f32 1/6 (/.f32 (*.f32 (pow.f32 u 3) (*.f32 (pow.f32 normAngle 3) (cos.f32 normAngle))) (sin.f32 normAngle)) 1) (fma.f32 1/2 (*.f32 normAngle (*.f32 normAngle (*.f32 u u))) (/.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 1/6 (pow.f32 u 3)) (*.f32 u 1/3)))) (fma.f32 1/2 (*.f32 normAngle (*.f32 normAngle (*.f32 u u))) 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 1/2 (*.f32 (*.f32 normAngle normAngle) (*.f32 u u))))))))
(+.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 1/6 (pow.f32 u 3)) (*.f32 u 1/3))) (+.f32 (fma.f32 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 4)) 1/18 (*.f32 1/2 (*.f32 normAngle (*.f32 normAngle (*.f32 u u))))) (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 (-.f32 (+.f32 1 (+.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 1/6 (pow.f32 u 3)) (*.f32 u 1/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 normAngle (*.f32 normAngle (*.f32 u u))) (*.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))
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 u (neg.f32 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 u (neg.f32 normAngle))
(-.f32 normAngle (*.f32 u normAngle))
(-.f32 normAngle (*.f32 u normAngle))
(-.f32 normAngle (*.f32 u 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 (*.f32 normAngle (*.f32 u n0_i)) (/.f32 (sin.f32 normAngle) (cos.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 (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 (*.f32 normAngle (*.f32 u n0_i)) (/.f32 (sin.f32 normAngle) (cos.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 n0_i (-.f32 (*.f32 1/6 (/.f32 (*.f32 (*.f32 (cos.f32 normAngle) (pow.f32 u 3)) (*.f32 (pow.f32 normAngle 3) n0_i)) (sin.f32 normAngle))) (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 (cos.f32 normAngle) (*.f32 (pow.f32 normAngle 3) (*.f32 (pow.f32 u 3) n0_i))) (sin.f32 normAngle)) n0_i) (fma.f32 1/2 (*.f32 u (*.f32 (*.f32 normAngle (*.f32 u n0_i)) normAngle)) (/.f32 (*.f32 normAngle (*.f32 u n0_i)) (/.f32 (sin.f32 normAngle) (cos.f32 normAngle)))))
(/.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 n0_i (*.f32 (*.f32 normAngle (*.f32 normAngle n0_i)) (+.f32 (*.f32 u 1/2) (*.f32 1/6 (pow.f32 u 3))))) (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 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 u 5/72) (*.f32 (pow.f32 u 3) 1/12)))))))))
(-.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 u 7) (*.f32 (pow.f32 normAngle 6) 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)

prune221.0ms (3.2%)

Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New1347141
Fresh011
Picked101
Done000
Total1358143
Error
0.1b
Counts
143 → 8
Alt Table
StatusErrorProgram
0.9b
(+.f32 (*.f32 (log1p.f32 (expm1.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.1b
(+.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))
9.1b
(/.f32 (fma.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) n0_i (*.f32 (sin.f32 (*.f32 u normAngle)) n1_i)) (sin.f32 normAngle))
1.0b
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) (*.f32 (/.f32 (sqrt.f32 (sin.f32 (*.f32 u normAngle))) (/.f32 (sin.f32 normAngle) (sqrt.f32 (sin.f32 (*.f32 u normAngle))))) n1_i))
1.1b
(+.f32 (*.f32 (log.f32 (+.f32 1 (expm1.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 (exp.f32 (log1p.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)))) 1) n0_i) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i))
0.8b
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) (*.f32 u n1_i))
1.0b
(+.f32 (-.f32 n0_i (*.f32 u n0_i)) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i))
Compiler

Compiled 5681 to 3231 computations (43.1% saved)

localize43.0ms (0.6%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) (*.f32 u n1_i))
0.1b
(*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i)
0.1b
(*.f32 (-.f32 1 u) normAngle)
0.5b
(*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle)))

series54.0ms (0.8%)

Counts
1 → 48
Calls

12 calls:

TimeVariablePointExpression
15.0ms
normAngle
@0
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) (*.f32 u n1_i))
5.0ms
normAngle
@inf
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) (*.f32 u n1_i))
4.0ms
n1_i
@inf
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) (*.f32 u n1_i))
4.0ms
normAngle
@-inf
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) (*.f32 u n1_i))
4.0ms
u
@inf
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) (*.f32 u n1_i))

rewrite53.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
287×expm1-udef_binary32
286×log1p-udef_binary32
165×add-sqr-sqrt_binary32
162×*-un-lft-identity_binary32
162×pow1_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01521
132021
2430721
Stop Event
node limit
Counts
1 → 40
Calls
Call 1
Inputs
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) (*.f32 u n1_i))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (fma.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle)) (*.f32 u n1_i)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 (pow.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))) 2) (-.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))) (*.f32 u n1_i))) (/.f32 (pow.f32 (*.f32 u n1_i) 2) (-.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))) (*.f32 u n1_i))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (fma.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle)) (*.f32 u n1_i)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (fma.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle)) (*.f32 u n1_i)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (fma.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle)) (*.f32 u n1_i))) (pow.f32 (cbrt.f32 (fma.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle)) (*.f32 u n1_i))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (fma.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle)) (*.f32 u n1_i))) 2) (cbrt.f32 (fma.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle)) (*.f32 u n1_i))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (fma.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle)) (*.f32 u n1_i))) (sqrt.f32 (fma.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle)) (*.f32 u n1_i))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 (pow.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))) 3) (pow.f32 (*.f32 u n1_i) 3)) (/.f32 1 (+.f32 (pow.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))) 2) (*.f32 (*.f32 u n1_i) (-.f32 (*.f32 u n1_i) (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 (pow.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))) 2) (pow.f32 (*.f32 u n1_i) 2)) (/.f32 1 (-.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))) (*.f32 u n1_i))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (+.f32 (pow.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))) 2) (*.f32 (*.f32 u n1_i) (-.f32 (*.f32 u n1_i) (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle)))))) (+.f32 (pow.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))) 3) (pow.f32 (*.f32 u n1_i) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (-.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))) (*.f32 u n1_i)) (-.f32 (pow.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))) 2) (pow.f32 (*.f32 u n1_i) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))) 3) (pow.f32 (*.f32 u n1_i) 3)) (+.f32 (pow.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))) 2) (*.f32 (*.f32 u n1_i) (-.f32 (*.f32 u n1_i) (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))) 3) (pow.f32 (*.f32 u n1_i) 3)) (+.f32 (pow.f32 (*.f32 u n1_i) 2) (-.f32 (pow.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))) 2) (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (*.f32 (/.f32 n0_i (sin.f32 normAngle)) (*.f32 u n1_i))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))) 2) (pow.f32 (*.f32 u n1_i) 2)) (-.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))) (*.f32 u n1_i)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (+.f32 (pow.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))) 3) (pow.f32 (*.f32 u n1_i) 3))) (neg.f32 (+.f32 (pow.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))) 2) (*.f32 (*.f32 u n1_i) (-.f32 (*.f32 u n1_i) (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (-.f32 (pow.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))) 2) (pow.f32 (*.f32 u n1_i) 2))) (neg.f32 (-.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))) (*.f32 u n1_i))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (*.f32 u n1_i) 2) (pow.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))) 2)) (-.f32 (*.f32 u n1_i) (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (fma.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle)) (*.f32 u n1_i)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (fma.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle)) (*.f32 u n1_i)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (fma.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle)) (*.f32 u n1_i))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (fma.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle)) (*.f32 u n1_i))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (fma.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle)) (*.f32 u n1_i)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (fma.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle)) (*.f32 u n1_i))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (fma.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle)) (*.f32 u n1_i)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (fma.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle)) (*.f32 u n1_i)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (fma.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle)) (*.f32 u n1_i))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (fma.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle)) (*.f32 u n1_i))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))) (*.f32 u n1_i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 u n1_i) (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u n1_i (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle)) (*.f32 u n1_i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (sin.f32 normAngle)) n0_i (*.f32 u n1_i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 n0_i (/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (sin.f32 normAngle)) (*.f32 u n1_i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 n1_i u (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle)))) 2) (cbrt.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle)))) (*.f32 u n1_i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (*.f32 u n1_i)) 2) (cbrt.f32 (*.f32 u n1_i)) (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle)))) (sqrt.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle)))) (*.f32 u n1_i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 u n1_i)) (sqrt.f32 (*.f32 u n1_i)) (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (fma.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle)) (*.f32 u n1_i))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (fma.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle)) (*.f32 u n1_i))) 1))))))

simplify38.0ms (0.5%)

Algorithm
egg-herbie
Rules
402×cancel-sign-sub-inv_binary32
390×associate--l+_binary32
262×associate-*r*_binary32
230×fma-def_binary32
225×distribute-rgt-out_binary32
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01671478
15721471
223401410
Stop Event
node limit
Counts
88 → 60
Calls
Call 1
Inputs
n0_i
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u (*.f32 n0_i normAngle))) (sin.f32 normAngle)))
(-.f32 (+.f32 (*.f32 n1_i u) 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 (*.f32 n1_i u) (+.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 n1_i u)
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(*.f32 n1_i u)
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (+.f32 (*.f32 1/2 (*.f32 u (*.f32 n0_i (pow.f32 normAngle 2)))) (+.f32 (*.f32 n1_i u) (+.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 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (*.f32 u n0_i))))
(-.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 n1_i u) (+.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 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 (*.f32 1/12 (*.f32 (pow.f32 u 3) (*.f32 n0_i (pow.f32 normAngle 4)))) (*.f32 u n0_i))))))))
(-.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 n1_i u) (+.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 u 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/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 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(*.f32 n1_i u)
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.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 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.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 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.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 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(*.f32 n1_i u)
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(*.f32 n1_i u)
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
Outputs
n0_i
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u (*.f32 n0_i normAngle))) (sin.f32 normAngle)))
(-.f32 (fma.f32 n1_i u n0_i) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 n0_i (*.f32 u normAngle)))))
(-.f32 (fma.f32 n1_i u n0_i) (*.f32 (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)) (*.f32 n0_i (*.f32 u normAngle))))
(-.f32 (+.f32 (*.f32 n1_i u) 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 (fma.f32 n1_i u n0_i) (fma.f32 1/2 (*.f32 (*.f32 u u) (*.f32 n0_i (*.f32 normAngle normAngle))) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 n0_i (*.f32 u normAngle))))))
(-.f32 (fma.f32 n1_i u n0_i) (fma.f32 1/2 (*.f32 n0_i (*.f32 (*.f32 normAngle normAngle) (*.f32 u u))) (*.f32 (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)) (*.f32 n0_i (*.f32 u normAngle)))))
(-.f32 (fma.f32 n1_i u n0_i) (fma.f32 1/2 (*.f32 n0_i (*.f32 (*.f32 u u) (*.f32 normAngle normAngle))) (*.f32 (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)) (*.f32 n0_i (*.f32 u normAngle)))))
(-.f32 (+.f32 (*.f32 n1_i u) (+.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 (fma.f32 n1_i u n0_i) (*.f32 1/6 (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 (pow.f32 u 3) (*.f32 n0_i (pow.f32 normAngle 3))))))) (fma.f32 1/2 (*.f32 (*.f32 u u) (*.f32 n0_i (*.f32 normAngle normAngle))) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 n0_i (*.f32 u normAngle))))))
(fma.f32 n1_i u (-.f32 (fma.f32 1/6 (*.f32 (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)) (*.f32 n0_i (*.f32 (pow.f32 normAngle 3) (pow.f32 u 3)))) n0_i) (fma.f32 1/2 (*.f32 n0_i (*.f32 (*.f32 normAngle normAngle) (*.f32 u u))) (*.f32 (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)) (*.f32 n0_i (*.f32 u normAngle))))))
(-.f32 (fma.f32 n1_i u (fma.f32 1/6 (/.f32 (cos.f32 normAngle) (/.f32 (/.f32 (sin.f32 normAngle) (*.f32 n0_i (pow.f32 u 3))) (pow.f32 normAngle 3))) n0_i)) (fma.f32 1/2 (*.f32 n0_i (*.f32 (*.f32 u u) (*.f32 normAngle normAngle))) (*.f32 (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)) (*.f32 n0_i (*.f32 u normAngle)))))
(*.f32 n1_i u)
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))
(*.f32 n1_i u)
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (fma.f32 n1_i u n0_i) (*.f32 n0_i u))
(+.f32 n0_i (*.f32 u (-.f32 n1_i n0_i)))
(-.f32 (+.f32 (*.f32 1/2 (*.f32 u (*.f32 n0_i (pow.f32 normAngle 2)))) (+.f32 (*.f32 n1_i u) (+.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 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (*.f32 u n0_i))))
(-.f32 (fma.f32 1/2 (*.f32 (*.f32 n0_i u) (*.f32 normAngle normAngle)) (fma.f32 n1_i u (fma.f32 1/6 (*.f32 (*.f32 n0_i (*.f32 normAngle normAngle)) (pow.f32 u 3)) n0_i))) (fma.f32 1/6 (*.f32 (*.f32 n0_i u) (*.f32 normAngle normAngle)) (fma.f32 1/2 (*.f32 (*.f32 u u) (*.f32 n0_i (*.f32 normAngle normAngle))) (*.f32 n0_i u))))
(-.f32 (fma.f32 1/2 (*.f32 n0_i (*.f32 u (*.f32 normAngle normAngle))) (fma.f32 n1_i u (fma.f32 1/6 (*.f32 (*.f32 n0_i (*.f32 normAngle normAngle)) (pow.f32 u 3)) n0_i))) (fma.f32 1/6 (*.f32 n0_i (*.f32 u (*.f32 normAngle normAngle))) (fma.f32 n0_i u (*.f32 (*.f32 u u) (*.f32 (*.f32 n0_i (*.f32 normAngle normAngle)) 1/2)))))
(-.f32 (+.f32 (fma.f32 n1_i u (fma.f32 1/6 (*.f32 n0_i (*.f32 (*.f32 normAngle normAngle) (pow.f32 u 3))) n0_i)) (*.f32 (*.f32 n0_i (*.f32 u (*.f32 normAngle normAngle))) 1/3)) (*.f32 n0_i (+.f32 (*.f32 (*.f32 1/2 (*.f32 u u)) (*.f32 normAngle normAngle)) u)))
(-.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 n1_i u) (+.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 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 (*.f32 1/12 (*.f32 (pow.f32 u 3) (*.f32 n0_i (pow.f32 normAngle 4)))) (*.f32 u n0_i))))))))
(-.f32 (fma.f32 1/2 (*.f32 (*.f32 n0_i u) (*.f32 normAngle normAngle)) (fma.f32 1/12 (*.f32 (*.f32 u u) (*.f32 n0_i (pow.f32 normAngle 4))) (fma.f32 11/120 (*.f32 u (*.f32 n0_i (pow.f32 normAngle 4))) (fma.f32 1/36 (*.f32 n0_i (*.f32 (pow.f32 u 3) (pow.f32 normAngle 4))) (fma.f32 n1_i u (fma.f32 1/6 (*.f32 (*.f32 n0_i (*.f32 normAngle normAngle)) (pow.f32 u 3)) (fma.f32 1/24 (*.f32 (*.f32 n0_i (pow.f32 normAngle 4)) (pow.f32 u 4)) n0_i))))))) (fma.f32 1/6 (*.f32 (*.f32 n0_i u) (*.f32 normAngle normAngle)) (fma.f32 1/12 (*.f32 n0_i (*.f32 (*.f32 u u) (pow.f32 normAngle 4))) (fma.f32 1/120 (*.f32 (*.f32 n0_i (pow.f32 normAngle 4)) (pow.f32 u 5)) (fma.f32 1/2 (*.f32 (*.f32 u u) (*.f32 n0_i (*.f32 normAngle normAngle))) (fma.f32 5/72 (*.f32 u (*.f32 n0_i (pow.f32 normAngle 4))) (fma.f32 1/12 (*.f32 (pow.f32 u 3) (*.f32 n0_i (pow.f32 normAngle 4))) (*.f32 n0_i u))))))))
(-.f32 (fma.f32 1/2 (*.f32 n0_i (*.f32 u (*.f32 normAngle normAngle))) (fma.f32 1/12 (*.f32 n0_i (*.f32 u (*.f32 u (pow.f32 normAngle 4)))) (fma.f32 11/120 (*.f32 n0_i (*.f32 u (pow.f32 normAngle 4))) (fma.f32 1/36 (*.f32 n0_i (*.f32 (pow.f32 u 3) (pow.f32 normAngle 4))) (fma.f32 n1_i u (fma.f32 1/6 (*.f32 (*.f32 n0_i (*.f32 normAngle normAngle)) (pow.f32 u 3)) (fma.f32 1/24 (*.f32 n0_i (*.f32 (pow.f32 normAngle 4) (pow.f32 u 4))) n0_i))))))) (fma.f32 1/6 (*.f32 n0_i (*.f32 u (*.f32 normAngle normAngle))) (fma.f32 1/12 (*.f32 n0_i (*.f32 u (*.f32 u (pow.f32 normAngle 4)))) (fma.f32 1/120 (*.f32 (pow.f32 normAngle 4) (*.f32 n0_i (pow.f32 u 5))) (+.f32 (*.f32 (*.f32 n0_i (pow.f32 normAngle 4)) (+.f32 (*.f32 u 5/72) (*.f32 (pow.f32 u 3) 1/12))) (fma.f32 n0_i u (*.f32 (*.f32 u u) (*.f32 (*.f32 n0_i (*.f32 normAngle normAngle)) 1/2))))))))
(+.f32 (+.f32 (fma.f32 1/36 (*.f32 (pow.f32 normAngle 4) (*.f32 n0_i (pow.f32 u 3))) (fma.f32 n1_i u (fma.f32 1/6 (*.f32 n0_i (*.f32 (*.f32 normAngle normAngle) (pow.f32 u 3))) (fma.f32 1/24 (*.f32 n0_i (*.f32 (pow.f32 normAngle 4) (pow.f32 u 4))) n0_i)))) (*.f32 (*.f32 n0_i (pow.f32 normAngle 4)) (+.f32 (*.f32 11/120 u) (*.f32 (*.f32 u u) 1/12)))) (-.f32 (*.f32 (*.f32 n0_i (*.f32 u (*.f32 normAngle normAngle))) 1/3) (+.f32 (+.f32 (*.f32 (*.f32 n0_i (pow.f32 normAngle 4)) (+.f32 (*.f32 u 5/72) (*.f32 (pow.f32 u 3) 1/12))) (*.f32 n0_i (+.f32 (*.f32 (*.f32 1/2 (*.f32 u u)) (*.f32 normAngle normAngle)) u))) (*.f32 (*.f32 n0_i (pow.f32 normAngle 4)) (+.f32 (*.f32 1/120 (pow.f32 u 5)) (*.f32 (*.f32 u u) 1/12))))))
(-.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 n1_i u) (+.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 u 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/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 n0_i (pow.f32 normAngle 6))) (fma.f32 1/36 (*.f32 n0_i (*.f32 (pow.f32 u 3) (pow.f32 normAngle 4))) (fma.f32 1/5040 (*.f32 n0_i (*.f32 (pow.f32 normAngle 6) (pow.f32 u 7))) (+.f32 (fma.f32 1/24 (*.f32 (*.f32 n0_i (pow.f32 normAngle 4)) (pow.f32 u 4)) n0_i) (fma.f32 1/2 (*.f32 (*.f32 n0_i u) (*.f32 normAngle normAngle)) (fma.f32 1/12 (*.f32 (*.f32 u u) (*.f32 n0_i (pow.f32 normAngle 4))) (fma.f32 1/60 (*.f32 (*.f32 n0_i u) (pow.f32 normAngle 6)) (fma.f32 1/72 (*.f32 n0_i (*.f32 (*.f32 u u) (pow.f32 normAngle 6))) (fma.f32 11/120 (*.f32 u (*.f32 n0_i (pow.f32 normAngle 4))) (fma.f32 n1_i u (fma.f32 1/6 (*.f32 (*.f32 n0_i (*.f32 normAngle normAngle)) (pow.f32 u 3)) (*.f32 1/360 (*.f32 n0_i (*.f32 (pow.f32 u 5) (pow.f32 normAngle 6))))))))))))))) (fma.f32 1/120 (*.f32 (*.f32 n0_i (pow.f32 normAngle 4)) (pow.f32 u 5)) (fma.f32 1/720 (*.f32 n0_i (*.f32 (pow.f32 normAngle 6) (pow.f32 u 6))) (fma.f32 1/120 (*.f32 n0_i (*.f32 (pow.f32 u 3) (pow.f32 normAngle 6))) (fma.f32 1/12 (*.f32 (pow.f32 u 3) (*.f32 n0_i (pow.f32 normAngle 4))) (fma.f32 u n0_i (fma.f32 1/6 (*.f32 (*.f32 n0_i u) (*.f32 normAngle normAngle)) (fma.f32 1/12 (*.f32 n0_i (*.f32 (*.f32 u u) (pow.f32 normAngle 4))) (fma.f32 1/2 (*.f32 (*.f32 u u) (*.f32 n0_i (*.f32 normAngle normAngle))) (fma.f32 11/756 (*.f32 (*.f32 n0_i u) (pow.f32 normAngle 6)) (fma.f32 5/72 (*.f32 u (*.f32 n0_i (pow.f32 normAngle 4))) (*.f32 (*.f32 1/72 (*.f32 u u)) (*.f32 n0_i (pow.f32 normAngle 6))))))))))))))
(-.f32 (fma.f32 1/216 (*.f32 n0_i (*.f32 (pow.f32 u 3) (pow.f32 normAngle 6))) (fma.f32 1/36 (*.f32 n0_i (*.f32 (pow.f32 u 3) (pow.f32 normAngle 4))) (fma.f32 1/5040 (*.f32 n0_i (*.f32 (pow.f32 normAngle 6) (pow.f32 u 7))) (+.f32 (fma.f32 1/24 (*.f32 n0_i (*.f32 (pow.f32 normAngle 4) (pow.f32 u 4))) n0_i) (fma.f32 1/2 (*.f32 n0_i (*.f32 u (*.f32 normAngle normAngle))) (fma.f32 1/12 (*.f32 n0_i (*.f32 u (*.f32 u (pow.f32 normAngle 4)))) (fma.f32 1/60 (*.f32 (*.f32 n0_i u) (pow.f32 normAngle 6)) (fma.f32 1/72 (*.f32 n0_i (*.f32 (*.f32 u u) (pow.f32 normAngle 6))) (fma.f32 11/120 (*.f32 n0_i (*.f32 u (pow.f32 normAngle 4))) (fma.f32 n1_i u (fma.f32 1/6 (*.f32 (*.f32 n0_i (*.f32 normAngle normAngle)) (pow.f32 u 3)) (*.f32 (*.f32 (pow.f32 u 5) (pow.f32 normAngle 6)) (*.f32 n0_i 1/360))))))))))))) (fma.f32 1/120 (*.f32 (pow.f32 normAngle 4) (*.f32 n0_i (pow.f32 u 5))) (fma.f32 1/720 (*.f32 n0_i (*.f32 (pow.f32 normAngle 6) (pow.f32 u 6))) (fma.f32 1/120 (*.f32 n0_i (*.f32 (pow.f32 u 3) (pow.f32 normAngle 6))) (fma.f32 1/12 (*.f32 n0_i (*.f32 (pow.f32 u 3) (pow.f32 normAngle 4))) (fma.f32 n0_i u (fma.f32 1/6 (*.f32 n0_i (*.f32 u (*.f32 normAngle normAngle))) (fma.f32 1/12 (*.f32 n0_i (*.f32 u (*.f32 u (pow.f32 normAngle 4)))) (fma.f32 1/2 (*.f32 n0_i (*.f32 (*.f32 normAngle normAngle) (*.f32 u u))) (fma.f32 (*.f32 (*.f32 n0_i u) (pow.f32 normAngle 6)) 11/756 (fma.f32 5/72 (*.f32 n0_i (*.f32 u (pow.f32 normAngle 4))) (*.f32 n0_i (*.f32 (*.f32 (*.f32 u u) (pow.f32 normAngle 6)) 1/72)))))))))))))
(+.f32 (fma.f32 1/5040 (*.f32 n0_i (*.f32 (pow.f32 normAngle 6) (pow.f32 u 7))) (+.f32 (fma.f32 1/24 (*.f32 n0_i (*.f32 (pow.f32 normAngle 4) (pow.f32 u 4))) n0_i) (fma.f32 1/2 (*.f32 n0_i (*.f32 u (*.f32 normAngle normAngle))) (fma.f32 1/12 (*.f32 n0_i (*.f32 (*.f32 u u) (pow.f32 normAngle 4))) (+.f32 (fma.f32 11/120 (*.f32 u (*.f32 n0_i (pow.f32 normAngle 4))) (fma.f32 n1_i u (*.f32 n0_i (+.f32 (*.f32 (*.f32 1/6 (pow.f32 u 3)) (*.f32 normAngle normAngle)) (*.f32 1/360 (*.f32 (pow.f32 u 5) (pow.f32 normAngle 6))))))) (*.f32 (*.f32 n0_i (pow.f32 normAngle 6)) (+.f32 (*.f32 u 1/60) (*.f32 (*.f32 u u) 1/72)))))))) (-.f32 (*.f32 (*.f32 n0_i (pow.f32 u 3)) (+.f32 (*.f32 (pow.f32 normAngle 6) 1/216) (*.f32 (pow.f32 normAngle 4) 1/36))) (fma.f32 1/120 (*.f32 (*.f32 n0_i (pow.f32 normAngle 4)) (pow.f32 u 5)) (fma.f32 1/720 (*.f32 n0_i (*.f32 (pow.f32 normAngle 6) (pow.f32 u 6))) (+.f32 (fma.f32 n0_i u (fma.f32 1/6 (*.f32 n0_i (*.f32 u (*.f32 normAngle normAngle))) (+.f32 (+.f32 (*.f32 u (*.f32 (*.f32 n0_i (pow.f32 normAngle 4)) 5/72)) (*.f32 (*.f32 n0_i (pow.f32 normAngle 6)) (+.f32 (*.f32 (*.f32 u u) 1/72) (*.f32 u 11/756)))) (*.f32 (*.f32 n0_i (*.f32 u u)) (+.f32 (*.f32 (*.f32 normAngle normAngle) 1/2) (*.f32 (pow.f32 normAngle 4) 1/12)))))) (*.f32 (*.f32 n0_i (pow.f32 u 3)) (+.f32 (*.f32 (pow.f32 normAngle 6) 1/120) (*.f32 (pow.f32 normAngle 4) 1/12))))))))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))
(*.f32 n1_i u)
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (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 1 u))) (sin.f32 normAngle)) n0_i)
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (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 1 u))) (sin.f32 normAngle)) n0_i)
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (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 1 u))) (sin.f32 normAngle)) n0_i)
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))
(*.f32 n1_i u)
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))
(*.f32 n1_i u)
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))

prune205.0ms (3%)

Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New1564160
Fresh437
Picked101
Done000
Total1617168
Error
0b
Counts
168 → 7
Alt Table
StatusErrorProgram
9.1b
(/.f32 (fma.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) n0_i (*.f32 (sin.f32 (*.f32 u normAngle)) n1_i)) (sin.f32 normAngle))
7.0b
(/.f32 (-.f32 (pow.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))) 2) (pow.f32 (*.f32 u n1_i) 2)) (-.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))) (*.f32 u n1_i)))
2.9b
(-.f32 (fma.f32 n1_i u n0_i) (*.f32 (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)) (*.f32 n0_i (*.f32 u normAngle))))
1.0b
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) (*.f32 (/.f32 (sqrt.f32 (sin.f32 (*.f32 u normAngle))) (/.f32 (sin.f32 normAngle) (sqrt.f32 (sin.f32 (*.f32 u normAngle))))) n1_i))
0.7b
(+.f32 n0_i (*.f32 u (-.f32 n1_i n0_i)))
0.5b
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))
1.0b
(+.f32 (-.f32 n0_i (*.f32 u n0_i)) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i))
Compiler

Compiled 5466 to 3045 computations (44.3% saved)

localize42.0ms (0.6%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))
0.1b
(*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i)
0.1b
(*.f32 normAngle (-.f32 1 u))
0.3b
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle))

series126.0ms (1.8%)

Counts
4 → 132
Calls

33 calls:

TimeVariablePointExpression
17.0ms
normAngle
@0
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))
17.0ms
normAngle
@0
(*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i)
6.0ms
n0_i
@-inf
(*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i)
6.0ms
normAngle
@0
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle))
5.0ms
u
@0
(*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i)

rewrite57.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
626×prod-diff_binary32
245×log1p-udef_binary32
138×add-sqr-sqrt_binary32
136×*-un-lft-identity_binary32
136×pow1_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01359
126759
2345759
Stop Event
node limit
Counts
4 → 102
Calls
Call 1
Inputs
(/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle))
(*.f32 normAngle (-.f32 1 u))
(*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i)
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))
Outputs
((#(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 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 1 (sin.f32 normAngle)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle))) (pow.f32 (cbrt.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle))) 2) (cbrt.f32 (/.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 (cbrt.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u)))) (/.f32 1 (sin.f32 normAngle))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle))) (sqrt.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u)))) (*.f32 (sqrt.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u)))) (/.f32 1 (sin.f32 normAngle))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (neg.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u)))) (/.f32 1 (neg.f32 (sin.f32 normAngle))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (sin.f32 normAngle)) (sin.f32 (*.f32 normAngle (-.f32 1 u))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u)))) 2) 1) (/.f32 (cbrt.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u)))) (sin.f32 normAngle)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sqrt.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u)))) 1) (/.f32 (sqrt.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u)))) (sin.f32 normAngle)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (pow.f32 (cbrt.f32 (sin.f32 normAngle)) 2)) (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (cbrt.f32 (sin.f32 normAngle))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u)))) 2) (pow.f32 (cbrt.f32 (sin.f32 normAngle)) 2)) (cbrt.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sqrt.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u)))) (pow.f32 (cbrt.f32 (sin.f32 normAngle)) 2)) (/.f32 (sqrt.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u)))) (cbrt.f32 (sin.f32 normAngle))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (sqrt.f32 (sin.f32 normAngle))) (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sqrt.f32 (sin.f32 normAngle))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u)))) 2) (sqrt.f32 (sin.f32 normAngle))) (/.f32 (cbrt.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u)))) (sqrt.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 pow.f32 (/.f32 (sin.f32 normAngle) (sin.f32 (*.f32 normAngle (-.f32 1 u)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (neg.f32 (sin.f32 normAngle))))))) (#(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 expm1.f32 (log1p.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle))))))) (#(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 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 +.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 1 u))))) (#(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 1 u))))) (#(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 log1p.f32 (expm1.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 -.f32 (exp.f32 (log1p.f32 (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (sin.f32 normAngle) (*.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) n0_i)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (/.f32 (sin.f32 normAngle) n0_i))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 n0_i (/.f32 (sin.f32 normAngle) (sin.f32 (*.f32 normAngle (-.f32 1 u)))))))) (#(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 (neg.f32 (*.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) n0_i)) (neg.f32 (sin.f32 normAngle)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (/.f32 (*.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) n0_i) 1) (sin.f32 normAngle))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (/.f32 (*.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) n0_i) (pow.f32 (cbrt.f32 (sin.f32 normAngle)) 2)) (cbrt.f32 (sin.f32 normAngle)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (/.f32 (*.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) n0_i) (sqrt.f32 (sin.f32 normAngle))) (sqrt.f32 (sin.f32 normAngle)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (neg.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u)))) n0_i) (neg.f32 (sin.f32 normAngle)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 n0_i (neg.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))))) (neg.f32 (sin.f32 normAngle)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle))) n0_i))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i) 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 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i)) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i) (*.f32 u n1_i))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 u n1_i) (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (*.f32 u n1_i) 1) (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))) (pow.f32 (cbrt.f32 (fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))) 2) (cbrt.f32 (fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))) (sqrt.f32 (fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (*.f32 u n1_i) 3) (pow.f32 (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i) 3)) (+.f32 (*.f32 (*.f32 u n1_i) (*.f32 u n1_i)) (-.f32 (pow.f32 (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i) 2) (*.f32 (*.f32 u n1_i) (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (*.f32 (*.f32 u n1_i) (*.f32 u n1_i)) (pow.f32 (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i) 2)) (-.f32 (*.f32 u n1_i) (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))) 1))))))

simplify69.0ms (1%)

Algorithm
egg-herbie
Rules
879×cancel-sign-sub-inv_binary32
443×fma-def_binary32
390×associate-+r+_binary32
335×associate-*r*_binary32
254×sub-neg_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02653444
19533394
239993394
Stop Event
node limit
Counts
234 → 157
Calls
Call 1
Inputs
(-.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))
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 (-.f32 1 u) normAngle)
(*.f32 (-.f32 1 u) normAngle)
(*.f32 (-.f32 1 u) normAngle)
(*.f32 (-.f32 1 u) normAngle)
(*.f32 (-.f32 1 u) normAngle)
(*.f32 (-.f32 1 u) normAngle)
(*.f32 (-.f32 1 u) normAngle)
(*.f32 (-.f32 1 u) normAngle)
(*.f32 (-.f32 1 u) normAngle)
(*.f32 (-.f32 1 u) normAngle)
(*.f32 (-.f32 1 u) normAngle)
(*.f32 (-.f32 1 u) 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))
(-.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))
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 (*.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 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(*.f32 n1_i u)
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(*.f32 n1_i u)
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
n0_i
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u (*.f32 n0_i normAngle))) (sin.f32 normAngle)))
(-.f32 (+.f32 (*.f32 n1_i u) 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 (*.f32 n1_i u) (+.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 n1_i u)
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(*.f32 n1_i u)
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (+.f32 (*.f32 1/2 (*.f32 u (*.f32 n0_i (pow.f32 normAngle 2)))) (+.f32 (*.f32 n1_i u) (+.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 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (*.f32 u n0_i))))
(-.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 n1_i u) (+.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 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 (*.f32 1/12 (*.f32 (pow.f32 u 3) (*.f32 n0_i (pow.f32 normAngle 4)))) (*.f32 u n0_i))))))))
(-.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 n1_i u) (+.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 u 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/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 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(*.f32 n1_i u)
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.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 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.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 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
Outputs
(-.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 1 (*.f32 1/6 (*.f32 (*.f32 normAngle normAngle) (pow.f32 u 3))))) (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 (*.f32 u normAngle) (*.f32 u 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 (*.f32 normAngle normAngle) (pow.f32 u 3)))))) (fma.f32 1/120 (*.f32 (pow.f32 normAngle 4) (pow.f32 u 5)) (+.f32 u (fma.f32 1/18 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 4)) (*.f32 1/2 (*.f32 (*.f32 normAngle normAngle) (*.f32 u u))))))))
(+.f32 (+.f32 (*.f32 (*.f32 normAngle normAngle) (+.f32 (*.f32 u 1/3) (*.f32 1/6 (pow.f32 u 3)))) (*.f32 (pow.f32 normAngle 4) (+.f32 (*.f32 u 1/45) (*.f32 1/24 (pow.f32 u 4))))) (-.f32 1 (+.f32 (fma.f32 1/2 (*.f32 (*.f32 u normAngle) (*.f32 u normAngle)) (*.f32 (pow.f32 u 3) (*.f32 (pow.f32 normAngle 4) 1/18))) (fma.f32 1/120 (*.f32 (pow.f32 normAngle 4) (pow.f32 u 5)) 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 (*.f32 normAngle normAngle) (pow.f32 u 3)) (*.f32 1/5040 (*.f32 (pow.f32 normAngle 6) (pow.f32 u 7))))))))) (fma.f32 1/120 (*.f32 (pow.f32 normAngle 4) (pow.f32 u 5)) (+.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 1/270 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 6))))))))))
(+.f32 (+.f32 (+.f32 (+.f32 (*.f32 (*.f32 normAngle normAngle) (+.f32 (*.f32 u 1/3) (*.f32 1/6 (pow.f32 u 3)))) (*.f32 (pow.f32 normAngle 4) (+.f32 (*.f32 u 1/45) (*.f32 1/24 (pow.f32 u 4))))) (*.f32 (pow.f32 normAngle 6) (*.f32 1/5040 (pow.f32 u 7)))) (*.f32 (pow.f32 normAngle 6) (+.f32 (*.f32 u 2/945) (*.f32 (pow.f32 u 5) 1/360)))) (-.f32 1 (+.f32 (fma.f32 1/18 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 4)) (fma.f32 1/2 (*.f32 (*.f32 u normAngle) (*.f32 u normAngle)) (*.f32 (pow.f32 normAngle 6) (+.f32 (*.f32 (pow.f32 u 3) 1/270) (*.f32 1/720 (pow.f32 u 6)))))) (fma.f32 1/120 (*.f32 (pow.f32 normAngle 4) (pow.f32 u 5)) u))))
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (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 u normAngle))) (sin.f32 normAngle))
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (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 u normAngle))) (sin.f32 normAngle))
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (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 u normAngle))) (sin.f32 normAngle))
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (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 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 (cos.f32 normAngle) (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 (-.f32 1 (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle)))) (*.f32 1/2 (*.f32 (*.f32 normAngle normAngle) (*.f32 u u))))
(-.f32 1 (fma.f32 1/2 (*.f32 (*.f32 u normAngle) (*.f32 u normAngle)) (*.f32 (/.f32 (cos.f32 normAngle) (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 (*.f32 (cos.f32 normAngle) (*.f32 (pow.f32 u 3) (pow.f32 normAngle 3))) (sin.f32 normAngle)) 1) (+.f32 (*.f32 1/2 (*.f32 (*.f32 normAngle normAngle) (*.f32 u u))) (/.f32 (cos.f32 normAngle) (/.f32 (sin.f32 normAngle) (*.f32 u normAngle)))))
(-.f32 (fma.f32 1/6 (*.f32 (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)) (*.f32 (pow.f32 u 3) (pow.f32 normAngle 3))) 1) (fma.f32 1/2 (*.f32 (*.f32 u normAngle) (*.f32 u normAngle)) (*.f32 (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)) (*.f32 u normAngle))))
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (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 u normAngle))) (sin.f32 normAngle))
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (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 u normAngle))) (sin.f32 normAngle))
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (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 u normAngle))) (sin.f32 normAngle))
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (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 u normAngle))) (sin.f32 normAngle))
(*.f32 (-.f32 1 u) normAngle)
(-.f32 normAngle (*.f32 u normAngle))
(*.f32 (-.f32 1 u) normAngle)
(-.f32 normAngle (*.f32 u normAngle))
(*.f32 (-.f32 1 u) normAngle)
(-.f32 normAngle (*.f32 u normAngle))
(*.f32 (-.f32 1 u) normAngle)
(-.f32 normAngle (*.f32 u normAngle))
(*.f32 (-.f32 1 u) normAngle)
(-.f32 normAngle (*.f32 u normAngle))
(*.f32 (-.f32 1 u) normAngle)
(-.f32 normAngle (*.f32 u normAngle))
(*.f32 (-.f32 1 u) normAngle)
(-.f32 normAngle (*.f32 u normAngle))
(*.f32 (-.f32 1 u) normAngle)
(-.f32 normAngle (*.f32 u normAngle))
(*.f32 (-.f32 1 u) normAngle)
(-.f32 normAngle (*.f32 u normAngle))
(*.f32 (-.f32 1 u) normAngle)
(-.f32 normAngle (*.f32 u normAngle))
(*.f32 (-.f32 1 u) normAngle)
(-.f32 normAngle (*.f32 u normAngle))
(*.f32 (-.f32 1 u) normAngle)
(-.f32 normAngle (*.f32 u normAngle))
normAngle
(-.f32 normAngle (*.f32 u normAngle))
(*.f32 (-.f32 1 u) normAngle)
(-.f32 normAngle (*.f32 u normAngle))
(*.f32 (-.f32 1 u) normAngle)
(-.f32 normAngle (*.f32 u normAngle))
(*.f32 (-.f32 1 u) normAngle)
(*.f32 -1 (*.f32 u normAngle))
(neg.f32 (*.f32 u normAngle))
(-.f32 normAngle (*.f32 u normAngle))
(*.f32 (-.f32 1 u) normAngle)
(-.f32 normAngle (*.f32 u normAngle))
(*.f32 (-.f32 1 u) normAngle)
(-.f32 normAngle (*.f32 u normAngle))
(*.f32 (-.f32 1 u) normAngle)
(*.f32 -1 (*.f32 u normAngle))
(neg.f32 (*.f32 u normAngle))
(-.f32 normAngle (*.f32 u normAngle))
(*.f32 (-.f32 1 u) normAngle)
(-.f32 normAngle (*.f32 u normAngle))
(*.f32 (-.f32 1 u) normAngle)
(-.f32 normAngle (*.f32 u normAngle))
(*.f32 (-.f32 1 u) 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 (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 u (*.f32 normAngle (*.f32 normAngle n0_i))) (fma.f32 u n0_i (*.f32 1/2 (*.f32 (*.f32 normAngle normAngle) (*.f32 u (*.f32 u n0_i))))))))
(-.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 (*.f32 u n0_i) (pow.f32 normAngle 4)) (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 (*.f32 (pow.f32 u 4) n0_i) (pow.f32 normAngle 4)) n0_i)))))) (fma.f32 1/6 (*.f32 u (*.f32 (*.f32 normAngle normAngle) n0_i)) (fma.f32 1/12 (*.f32 (*.f32 n0_i (*.f32 u u)) (pow.f32 normAngle 4)) (fma.f32 1/120 (*.f32 (*.f32 (pow.f32 u 5) n0_i) (pow.f32 normAngle 4)) (fma.f32 n0_i u (fma.f32 1/2 (*.f32 (*.f32 u u) (*.f32 (*.f32 normAngle normAngle) n0_i)) (fma.f32 5/72 (*.f32 (*.f32 u n0_i) (pow.f32 normAngle 4)) (*.f32 1/12 (*.f32 (pow.f32 u 3) (*.f32 (pow.f32 normAngle 4) n0_i))))))))))
(-.f32 (fma.f32 1/2 (*.f32 u (*.f32 normAngle (*.f32 normAngle n0_i))) (fma.f32 1/12 (*.f32 u (*.f32 (pow.f32 normAngle 4) (*.f32 u n0_i))) (fma.f32 11/120 (*.f32 (pow.f32 normAngle 4) (*.f32 u n0_i)) (fma.f32 1/36 (*.f32 (pow.f32 u 3) (*.f32 (pow.f32 normAngle 4) 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 u (*.f32 normAngle (*.f32 normAngle n0_i))) (fma.f32 1/12 (*.f32 u (*.f32 (pow.f32 normAngle 4) (*.f32 u n0_i))) (fma.f32 1/120 (*.f32 (pow.f32 normAngle 4) (*.f32 (pow.f32 u 5) n0_i)) (fma.f32 u n0_i (fma.f32 1/2 (*.f32 (*.f32 normAngle normAngle) (*.f32 u (*.f32 u n0_i))) (*.f32 (*.f32 (pow.f32 normAngle 4) n0_i) (+.f32 (*.f32 u 5/72) (*.f32 (pow.f32 u 3) 1/12)))))))))
(-.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 normAngle 6) (pow.f32 u 7)) n0_i) (+.f32 (fma.f32 1/24 (*.f32 (*.f32 (pow.f32 u 4) n0_i) (pow.f32 normAngle 4)) 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 (*.f32 u (pow.f32 normAngle 6)) n0_i) (fma.f32 1/72 (*.f32 (*.f32 n0_i (*.f32 u u)) (pow.f32 normAngle 6)) (fma.f32 11/120 (*.f32 (*.f32 u n0_i) (pow.f32 normAngle 4)) (fma.f32 1/6 (*.f32 (pow.f32 u 3) (*.f32 (*.f32 normAngle normAngle) n0_i)) (*.f32 1/360 (*.f32 (*.f32 (pow.f32 u 5) (pow.f32 normAngle 6)) n0_i)))))))))))) (fma.f32 1/120 (*.f32 (*.f32 (pow.f32 u 5) n0_i) (pow.f32 normAngle 4)) (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 (*.f32 n0_i (*.f32 u u)) (pow.f32 normAngle 4)) (fma.f32 n0_i u (fma.f32 1/2 (*.f32 (*.f32 u u) (*.f32 (*.f32 normAngle normAngle) n0_i)) (fma.f32 11/756 (*.f32 (*.f32 u (pow.f32 normAngle 6)) n0_i) (fma.f32 5/72 (*.f32 (*.f32 u n0_i) (pow.f32 normAngle 4)) (*.f32 1/72 (*.f32 (*.f32 u u) (*.f32 (pow.f32 normAngle 6) n0_i))))))))))))))
(-.f32 (fma.f32 1/216 (*.f32 (pow.f32 u 3) (*.f32 (pow.f32 normAngle 6) n0_i)) (fma.f32 1/36 (*.f32 (pow.f32 u 3) (*.f32 (pow.f32 normAngle 4) 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 u (*.f32 normAngle (*.f32 normAngle n0_i))) (fma.f32 1/12 (*.f32 u (*.f32 (pow.f32 normAngle 4) (*.f32 u 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 (pow.f32 normAngle 4) (*.f32 u n0_i)) (fma.f32 1/6 (*.f32 (*.f32 normAngle normAngle) (*.f32 (pow.f32 u 3) n0_i)) (*.f32 (*.f32 (pow.f32 u 5) n0_i) (*.f32 (pow.f32 normAngle 6) 1/360)))))))))))) (fma.f32 1/120 (*.f32 (pow.f32 normAngle 4) (*.f32 (pow.f32 u 5) n0_i)) (fma.f32 1/720 (*.f32 (pow.f32 u 6) (*.f32 (pow.f32 normAngle 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 u 3) (*.f32 (pow.f32 normAngle 4) n0_i)) (fma.f32 1/6 (*.f32 u (*.f32 normAngle (*.f32 normAngle n0_i))) (fma.f32 1/12 (*.f32 u (*.f32 (pow.f32 normAngle 4) (*.f32 u n0_i))) (fma.f32 u n0_i (fma.f32 1/2 (*.f32 (*.f32 normAngle normAngle) (*.f32 u (*.f32 u n0_i))) (fma.f32 (*.f32 (pow.f32 normAngle 6) (*.f32 u n0_i)) 11/756 (fma.f32 (*.f32 (pow.f32 normAngle 4) (*.f32 u 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 (-.f32 1 u) normAngle)) (/.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 (-.f32 1 u) normAngle)) (/.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 (-.f32 1 u) normAngle)) (/.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 (-.f32 1 u) normAngle)) (/.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 (-.f32 1 u) normAngle)) (/.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 (-.f32 1 u) normAngle)) (/.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 (-.f32 1 u) normAngle)) (/.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 (-.f32 1 u) normAngle)) (/.f32 (sin.f32 normAngle) n0_i))
(*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i)
n0_i
(-.f32 n0_i (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u (*.f32 n0_i normAngle))) (sin.f32 normAngle)))
(-.f32 n0_i (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u (*.f32 normAngle n0_i))) (sin.f32 normAngle)))
(-.f32 n0_i (/.f32 (cos.f32 normAngle) (/.f32 (/.f32 (sin.f32 normAngle) (*.f32 u 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 u u) (*.f32 (*.f32 normAngle normAngle) n0_i)) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u (*.f32 normAngle n0_i))) (sin.f32 normAngle))))
(-.f32 n0_i (fma.f32 (*.f32 1/2 (*.f32 u u)) (*.f32 normAngle (*.f32 normAngle n0_i)) (/.f32 (cos.f32 normAngle) (/.f32 (/.f32 (sin.f32 normAngle) (*.f32 u normAngle)) 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 (*.f32 (cos.f32 normAngle) (*.f32 (pow.f32 u 3) (*.f32 (pow.f32 normAngle 3) n0_i))) (sin.f32 normAngle))) (fma.f32 1/2 (*.f32 (*.f32 u u) (*.f32 (*.f32 normAngle normAngle) n0_i)) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u (*.f32 normAngle n0_i))) (sin.f32 normAngle)))))
(-.f32 (fma.f32 1/6 (*.f32 (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)) (*.f32 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 3)) n0_i)) n0_i) (fma.f32 (*.f32 1/2 (*.f32 u u)) (*.f32 normAngle (*.f32 normAngle n0_i)) (/.f32 (cos.f32 normAngle) (/.f32 (/.f32 (sin.f32 normAngle) (*.f32 u normAngle)) n0_i))))
(/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle))
(/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.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 (-.f32 1 u) normAngle)) (/.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 (-.f32 1 u) normAngle)) (/.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 (-.f32 1 u) normAngle)) (/.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 (-.f32 1 u) normAngle)) (/.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 (-.f32 1 u) normAngle)) (/.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 (-.f32 1 u) normAngle)) (/.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 (-.f32 1 u) normAngle)) (/.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 (-.f32 1 u) normAngle)) (/.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 (-.f32 1 u) normAngle)) (/.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 (-.f32 1 u) normAngle)) (/.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 (-.f32 1 u) normAngle)) (/.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 (-.f32 1 u) normAngle)) (/.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 (-.f32 1 u) normAngle)) (/.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 (-.f32 1 u) normAngle)) (/.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 (-.f32 1 u) normAngle)) (/.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 (-.f32 1 u) normAngle)) (/.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 (-.f32 1 u) normAngle)) (/.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 (-.f32 1 u) normAngle)) (/.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 (-.f32 1 u) normAngle)) (/.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 (-.f32 1 u) normAngle)) (/.f32 (sin.f32 normAngle) n0_i))
(*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i)
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 u n1_i (*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 u n1_i (*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 u n1_i (*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i))
(*.f32 n1_i u)
(*.f32 u n1_i)
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 u n1_i (*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 u n1_i (*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 u n1_i (*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i))
(*.f32 n1_i u)
(*.f32 u n1_i)
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 u n1_i (*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 u n1_i (*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 u n1_i (*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i))
n0_i
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u (*.f32 n0_i normAngle))) (sin.f32 normAngle)))
(-.f32 (fma.f32 n1_i u n0_i) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u (*.f32 normAngle n0_i))) (sin.f32 normAngle)))
(-.f32 (fma.f32 u n1_i n0_i) (/.f32 (cos.f32 normAngle) (/.f32 (/.f32 (sin.f32 normAngle) (*.f32 u normAngle)) n0_i)))
(-.f32 (+.f32 (*.f32 n1_i u) 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 (fma.f32 n1_i u n0_i) (fma.f32 1/2 (*.f32 (*.f32 u u) (*.f32 (*.f32 normAngle normAngle) n0_i)) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u (*.f32 normAngle n0_i))) (sin.f32 normAngle))))
(-.f32 (fma.f32 u n1_i n0_i) (fma.f32 (*.f32 1/2 (*.f32 u u)) (*.f32 normAngle (*.f32 normAngle n0_i)) (/.f32 (cos.f32 normAngle) (/.f32 (/.f32 (sin.f32 normAngle) (*.f32 u normAngle)) n0_i))))
(-.f32 (+.f32 (*.f32 n1_i u) (+.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 (fma.f32 n1_i u n0_i) (*.f32 1/6 (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 (pow.f32 u 3) (*.f32 (pow.f32 normAngle 3) n0_i))) (sin.f32 normAngle)))) (fma.f32 1/2 (*.f32 (*.f32 u u) (*.f32 (*.f32 normAngle normAngle) n0_i)) (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u (*.f32 normAngle n0_i))) (sin.f32 normAngle))))
(-.f32 (fma.f32 u n1_i (fma.f32 1/6 (*.f32 (/.f32 (cos.f32 normAngle) (sin.f32 normAngle)) (*.f32 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 3)) n0_i)) n0_i)) (fma.f32 (*.f32 1/2 (*.f32 u u)) (*.f32 normAngle (*.f32 normAngle n0_i)) (/.f32 (cos.f32 normAngle) (/.f32 (/.f32 (sin.f32 normAngle) (*.f32 u normAngle)) n0_i))))
(*.f32 n1_i u)
(*.f32 u n1_i)
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 u n1_i (*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 u n1_i (*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 u n1_i (*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i))
(*.f32 n1_i u)
(*.f32 u n1_i)
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 u n1_i (*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 u n1_i (*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 u n1_i (*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i))
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (fma.f32 n1_i u n0_i) (*.f32 u n0_i))
(-.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i))
(-.f32 (+.f32 (*.f32 1/2 (*.f32 u (*.f32 n0_i (pow.f32 normAngle 2)))) (+.f32 (*.f32 n1_i u) (+.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 1/2 (*.f32 (pow.f32 u 2) (*.f32 n0_i (pow.f32 normAngle 2)))) (*.f32 u n0_i))))
(-.f32 (fma.f32 1/2 (*.f32 u (*.f32 (*.f32 normAngle normAngle) n0_i)) (fma.f32 n1_i u (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 n0_i (*.f32 (*.f32 normAngle (*.f32 normAngle n0_i)) (+.f32 (*.f32 u 1/2) (*.f32 1/6 (pow.f32 u 3))))) (*.f32 u n1_i)) (fma.f32 1/6 (*.f32 u (*.f32 normAngle (*.f32 normAngle n0_i))) (fma.f32 u n0_i (*.f32 1/2 (*.f32 (*.f32 normAngle normAngle) (*.f32 u (*.f32 u n0_i)))))))
(-.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 n1_i u) (+.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 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 (*.f32 1/12 (*.f32 (pow.f32 u 3) (*.f32 n0_i (pow.f32 normAngle 4)))) (*.f32 u n0_i))))))))
(-.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 (*.f32 u n0_i) (pow.f32 normAngle 4)) (fma.f32 1/36 (*.f32 (*.f32 (pow.f32 u 3) (pow.f32 normAngle 4)) n0_i) (fma.f32 n1_i u (fma.f32 1/6 (*.f32 (pow.f32 u 3) (*.f32 (*.f32 normAngle normAngle) n0_i)) (fma.f32 1/24 (*.f32 (*.f32 (pow.f32 u 4) n0_i) (pow.f32 normAngle 4)) n0_i))))))) (fma.f32 1/6 (*.f32 u (*.f32 (*.f32 normAngle normAngle) n0_i)) (fma.f32 1/12 (*.f32 (*.f32 n0_i (*.f32 u u)) (pow.f32 normAngle 4)) (fma.f32 1/120 (*.f32 (*.f32 (pow.f32 u 5) n0_i) (pow.f32 normAngle 4)) (fma.f32 1/2 (*.f32 (*.f32 u u) (*.f32 (*.f32 normAngle normAngle) n0_i)) (fma.f32 5/72 (*.f32 (*.f32 u n0_i) (pow.f32 normAngle 4)) (fma.f32 1/12 (*.f32 (pow.f32 u 3) (*.f32 (pow.f32 normAngle 4) n0_i)) (*.f32 u n0_i))))))))
(-.f32 (fma.f32 1/2 (*.f32 u (*.f32 normAngle (*.f32 normAngle n0_i))) (fma.f32 1/12 (*.f32 u (*.f32 (pow.f32 normAngle 4) (*.f32 u n0_i))) (fma.f32 11/120 (*.f32 (pow.f32 normAngle 4) (*.f32 u n0_i)) (fma.f32 1/36 (*.f32 (pow.f32 u 3) (*.f32 (pow.f32 normAngle 4) n0_i)) (fma.f32 u n1_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 u (*.f32 normAngle (*.f32 normAngle n0_i))) (fma.f32 1/12 (*.f32 u (*.f32 (pow.f32 normAngle 4) (*.f32 u n0_i))) (fma.f32 1/120 (*.f32 (pow.f32 normAngle 4) (*.f32 (pow.f32 u 5) n0_i)) (fma.f32 u n0_i (fma.f32 1/2 (*.f32 (*.f32 normAngle normAngle) (*.f32 u (*.f32 u n0_i))) (*.f32 (*.f32 (pow.f32 normAngle 4) n0_i) (+.f32 (*.f32 u 5/72) (*.f32 (pow.f32 u 3) 1/12)))))))))
(-.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 n1_i u) (+.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 u 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/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 normAngle 6) (pow.f32 u 7)) n0_i) (+.f32 (fma.f32 1/24 (*.f32 (*.f32 (pow.f32 u 4) n0_i) (pow.f32 normAngle 4)) 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 (*.f32 u (pow.f32 normAngle 6)) n0_i) (fma.f32 1/72 (*.f32 (*.f32 n0_i (*.f32 u u)) (pow.f32 normAngle 6)) (fma.f32 11/120 (*.f32 (*.f32 u n0_i) (pow.f32 normAngle 4)) (fma.f32 n1_i u (fma.f32 1/6 (*.f32 (pow.f32 u 3) (*.f32 (*.f32 normAngle normAngle) n0_i)) (*.f32 1/360 (*.f32 (*.f32 (pow.f32 u 5) (pow.f32 normAngle 6)) n0_i))))))))))))) (fma.f32 1/120 (*.f32 (*.f32 (pow.f32 u 5) n0_i) (pow.f32 normAngle 4)) (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 u n0_i (fma.f32 1/6 (*.f32 u (*.f32 (*.f32 normAngle normAngle) n0_i)) (fma.f32 1/12 (*.f32 (*.f32 n0_i (*.f32 u u)) (pow.f32 normAngle 4)) (fma.f32 1/2 (*.f32 (*.f32 u u) (*.f32 (*.f32 normAngle normAngle) n0_i)) (fma.f32 11/756 (*.f32 (*.f32 u (pow.f32 normAngle 6)) n0_i) (fma.f32 5/72 (*.f32 (*.f32 u n0_i) (pow.f32 normAngle 4)) (*.f32 1/72 (*.f32 (*.f32 u u) (*.f32 (pow.f32 normAngle 6) n0_i))))))))))))))
(-.f32 (fma.f32 1/216 (*.f32 (pow.f32 u 3) (*.f32 (pow.f32 normAngle 6) n0_i)) (fma.f32 1/36 (*.f32 (pow.f32 u 3) (*.f32 (pow.f32 normAngle 4) 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 u (*.f32 normAngle (*.f32 normAngle n0_i))) (fma.f32 1/12 (*.f32 u (*.f32 (pow.f32 normAngle 4) (*.f32 u 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 (pow.f32 normAngle 4) (*.f32 u n0_i)) (fma.f32 u n1_i (fma.f32 1/6 (*.f32 (*.f32 normAngle normAngle) (*.f32 (pow.f32 u 3) n0_i)) (*.f32 (*.f32 (pow.f32 u 5) n0_i) (*.f32 (pow.f32 normAngle 6) 1/360))))))))))))) (fma.f32 1/120 (*.f32 (pow.f32 normAngle 4) (*.f32 (pow.f32 u 5) n0_i)) (fma.f32 1/720 (*.f32 (pow.f32 u 6) (*.f32 (pow.f32 normAngle 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 u 3) (*.f32 (pow.f32 normAngle 4) n0_i)) (fma.f32 1/6 (*.f32 u (*.f32 normAngle (*.f32 normAngle n0_i))) (fma.f32 1/12 (*.f32 u (*.f32 (pow.f32 normAngle 4) (*.f32 u n0_i))) (fma.f32 u n0_i (fma.f32 1/2 (*.f32 (*.f32 normAngle normAngle) (*.f32 u (*.f32 u n0_i))) (fma.f32 (*.f32 (pow.f32 normAngle 6) (*.f32 u n0_i)) 11/756 (fma.f32 (*.f32 (pow.f32 normAngle 4) (*.f32 u n0_i)) 5/72 (*.f32 (*.f32 u u) (*.f32 (*.f32 (pow.f32 normAngle 6) n0_i) 1/72)))))))))))))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 u n1_i (*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 u n1_i (*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 u n1_i (*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 u n1_i (*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 u n1_i (*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 u n1_i (*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 u n1_i (*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 u n1_i (*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i))
(*.f32 n1_i u)
(*.f32 u n1_i)
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 u n1_i (*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 u n1_i (*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 u n1_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 (-.f32 1 u) normAngle)) (/.f32 (sin.f32 normAngle) n0_i))
(*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i)
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 u n1_i (*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 u n1_i (*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 u n1_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 (-.f32 1 u) normAngle)) (/.f32 (sin.f32 normAngle) n0_i))
(*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i)
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 u n1_i (*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 u n1_i (*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i))
(+.f32 (*.f32 n1_i u) (/.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (sin.f32 normAngle)))
(fma.f32 n1_i u (/.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 (sin.f32 normAngle) n0_i)))
(fma.f32 u n1_i (*.f32 (/.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sin.f32 normAngle)) n0_i))

prune194.0ms (2.8%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New1561157
Fresh156
Picked011
Done000
Total1577164
Error
0b
Counts
164 → 7
Alt Table
StatusErrorProgram
9.1b
(/.f32 (fma.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) n0_i (*.f32 (sin.f32 (*.f32 u normAngle)) n1_i)) (sin.f32 normAngle))
0.7b
(-.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i))
7.0b
(/.f32 (-.f32 (pow.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))) 2) (pow.f32 (*.f32 u n1_i) 2)) (-.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))) (*.f32 u n1_i)))
1.0b
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) (*.f32 (/.f32 (sqrt.f32 (sin.f32 (*.f32 u normAngle))) (/.f32 (sin.f32 normAngle) (sqrt.f32 (sin.f32 (*.f32 u normAngle))))) n1_i))
0.7b
(+.f32 n0_i (*.f32 u (-.f32 n1_i n0_i)))
0.5b
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))
1.0b
(+.f32 (-.f32 n0_i (*.f32 u n0_i)) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i))
Compiler

Compiled 5097 to 2925 computations (42.6% saved)

localize22.0ms (0.3%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.1b
(-.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i))

series7.0ms (0.1%)

Counts
1 → 36
Calls

9 calls:

TimeVariablePointExpression
1.0ms
u
@inf
(-.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i))
1.0ms
n0_i
@-inf
(-.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i))
1.0ms
n1_i
@-inf
(-.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i))
1.0ms
u
@-inf
(-.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i))
1.0ms
n1_i
@inf
(-.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i))

rewrite42.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
796×log1p-expm1-u_binary32
796×expm1-log1p-u_binary32
83×add-sqr-sqrt_binary32
82×*-un-lft-identity_binary32
82×pow1_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0711
115311
2213811
Stop Event
node limit
Counts
1 → 41
Calls
Call 1
Inputs
(-.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 u n1_i n0_i) (*.f32 u (neg.f32 n0_i)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 u n1_i n0_i) (*.f32 (*.f32 u (neg.f32 n0_i)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (-.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i)) (fma.f32 (neg.f32 n0_i) u (*.f32 u n0_i)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (-.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i)) (fma.f32 (neg.f32 u) n0_i (*.f32 u n0_i)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (-.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i)) (fma.f32 (*.f32 u (neg.f32 n0_i)) 1 (*.f32 u n0_i)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (-.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i)) (fma.f32 (neg.f32 (cbrt.f32 (*.f32 u n0_i))) (pow.f32 (cbrt.f32 (*.f32 u n0_i)) 2) (*.f32 u n0_i)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (-.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i)) (fma.f32 (neg.f32 (sqrt.f32 (*.f32 u n0_i))) (sqrt.f32 (*.f32 u n0_i)) (*.f32 u n0_i)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 u n1_i) (-.f32 n0_i (*.f32 u n0_i)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 u n1_i) (+.f32 n0_i (*.f32 u (neg.f32 n0_i))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 u (neg.f32 n0_i)) (fma.f32 u n1_i n0_i))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (-.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (-.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i))) (pow.f32 (cbrt.f32 (-.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (-.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i))) 2) (cbrt.f32 (-.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (-.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i))) (sqrt.f32 (-.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 (pow.f32 (fma.f32 u n1_i n0_i) 3) (pow.f32 (*.f32 u n0_i) 3)) (/.f32 1 (+.f32 (pow.f32 (fma.f32 u n1_i n0_i) 2) (*.f32 (*.f32 u n0_i) (+.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 (pow.f32 (fma.f32 u n1_i n0_i) 2) (pow.f32 (*.f32 u n0_i) 2)) (/.f32 1 (+.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 (sqrt.f32 (fma.f32 u n1_i n0_i)) (sqrt.f32 (*.f32 u n0_i))) (-.f32 (sqrt.f32 (fma.f32 u n1_i n0_i)) (sqrt.f32 (*.f32 u n0_i))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (+.f32 (pow.f32 (fma.f32 u n1_i n0_i) 2) (*.f32 (*.f32 u n0_i) (+.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i)))) (-.f32 (pow.f32 (fma.f32 u n1_i n0_i) 3) (pow.f32 (*.f32 u n0_i) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (+.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i)) (-.f32 (pow.f32 (fma.f32 u n1_i n0_i) 2) (pow.f32 (*.f32 u n0_i) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (fma.f32 u n1_i n0_i) 3) (pow.f32 (*.f32 u n0_i) 3)) (+.f32 (pow.f32 (fma.f32 u n1_i n0_i) 2) (*.f32 (*.f32 u n0_i) (+.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (fma.f32 u n1_i n0_i) 2) (pow.f32 (*.f32 u n0_i) 2)) (+.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (-.f32 (pow.f32 (fma.f32 u n1_i n0_i) 3) (pow.f32 (*.f32 u n0_i) 3))) (neg.f32 (+.f32 (pow.f32 (fma.f32 u n1_i n0_i) 2) (*.f32 (*.f32 u n0_i) (+.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (-.f32 (pow.f32 (fma.f32 u n1_i n0_i) 2) (pow.f32 (*.f32 u n0_i) 2))) (neg.f32 (+.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (fma.f32 u n1_i n0_i) 3) (pow.f32 (*.f32 u (neg.f32 n0_i)) 3)) (+.f32 (pow.f32 (fma.f32 u n1_i n0_i) 2) (-.f32 (*.f32 (*.f32 u (neg.f32 n0_i)) (*.f32 u (neg.f32 n0_i))) (*.f32 (fma.f32 u n1_i n0_i) (*.f32 u (neg.f32 n0_i))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (fma.f32 u n1_i n0_i) 2) (*.f32 (*.f32 u (neg.f32 n0_i)) (*.f32 u (neg.f32 n0_i)))) (-.f32 (fma.f32 u n1_i n0_i) (*.f32 u (neg.f32 n0_i))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (-.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (-.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (-.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (-.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (-.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (-.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (-.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (-.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (-.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (-.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (fma.f32 u n1_i n0_i) (*.f32 u (neg.f32 n0_i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (fma.f32 u n1_i n0_i)) 2) (cbrt.f32 (fma.f32 u n1_i n0_i)) (*.f32 u (neg.f32 n0_i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (fma.f32 u n1_i n0_i)) (sqrt.f32 (fma.f32 u n1_i n0_i)) (*.f32 u (neg.f32 n0_i)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (-.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (-.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i))) 1))))))

simplify26.0ms (0.4%)

Algorithm
egg-herbie
Rules
275×fma-neg_binary32
251×fma-def_binary32
61×distribute-rgt-in_binary32
36×associate--r+_binary32
36×cancel-sign-sub-inv_binary32
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
023345
161318
2126318
3252264
4534264
5958264
61153264
71177264
Stop Event
saturated
Counts
77 → 53
Calls
Call 1
Inputs
n0_i
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 u n0_i))
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 u n0_i))
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 u n0_i))
(*.f32 (-.f32 n1_i n0_i) u)
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 u n0_i))
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 u n0_i))
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 u n0_i))
(*.f32 -1 (*.f32 (-.f32 n0_i n1_i) u))
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 n0_i (*.f32 u n0_i))
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(*.f32 n1_i u)
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(*.f32 n1_i u)
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(*.f32 n1_i u)
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(*.f32 (-.f32 1 u) n0_i)
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(*.f32 -1 (*.f32 n0_i (-.f32 u 1)))
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
Outputs
n0_i
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 u n0_i))
(-.f32 (fma.f32 n1_i u n0_i) (*.f32 n0_i u))
(+.f32 n0_i (*.f32 u (-.f32 n1_i n0_i)))
(fma.f32 u (-.f32 n1_i n0_i) n0_i)
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 u n0_i))
(-.f32 (fma.f32 n1_i u n0_i) (*.f32 n0_i u))
(+.f32 n0_i (*.f32 u (-.f32 n1_i n0_i)))
(fma.f32 u (-.f32 n1_i n0_i) n0_i)
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 u n0_i))
(-.f32 (fma.f32 n1_i u n0_i) (*.f32 n0_i u))
(+.f32 n0_i (*.f32 u (-.f32 n1_i n0_i)))
(fma.f32 u (-.f32 n1_i n0_i) n0_i)
(*.f32 (-.f32 n1_i n0_i) u)
(*.f32 u (-.f32 n1_i n0_i))
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 u n0_i))
(-.f32 (fma.f32 n1_i u n0_i) (*.f32 n0_i u))
(+.f32 n0_i (*.f32 u (-.f32 n1_i n0_i)))
(fma.f32 u (-.f32 n1_i n0_i) n0_i)
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 u n0_i))
(-.f32 (fma.f32 n1_i u n0_i) (*.f32 n0_i u))
(+.f32 n0_i (*.f32 u (-.f32 n1_i n0_i)))
(fma.f32 u (-.f32 n1_i n0_i) n0_i)
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 u n0_i))
(-.f32 (fma.f32 n1_i u n0_i) (*.f32 n0_i u))
(+.f32 n0_i (*.f32 u (-.f32 n1_i n0_i)))
(fma.f32 u (-.f32 n1_i n0_i) n0_i)
(*.f32 -1 (*.f32 (-.f32 n0_i n1_i) u))
(*.f32 u (-.f32 n1_i n0_i))
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (fma.f32 n1_i u n0_i) (*.f32 n0_i u))
(+.f32 n0_i (*.f32 u (-.f32 n1_i n0_i)))
(fma.f32 u (-.f32 n1_i n0_i) n0_i)
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (fma.f32 n1_i u n0_i) (*.f32 n0_i u))
(+.f32 n0_i (*.f32 u (-.f32 n1_i n0_i)))
(fma.f32 u (-.f32 n1_i n0_i) n0_i)
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (fma.f32 n1_i u n0_i) (*.f32 n0_i u))
(+.f32 n0_i (*.f32 u (-.f32 n1_i n0_i)))
(fma.f32 u (-.f32 n1_i n0_i) n0_i)
(-.f32 n0_i (*.f32 u n0_i))
(-.f32 n0_i (*.f32 n0_i u))
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (fma.f32 n1_i u n0_i) (*.f32 n0_i u))
(+.f32 n0_i (*.f32 u (-.f32 n1_i n0_i)))
(fma.f32 u (-.f32 n1_i n0_i) n0_i)
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (fma.f32 n1_i u n0_i) (*.f32 n0_i u))
(+.f32 n0_i (*.f32 u (-.f32 n1_i n0_i)))
(fma.f32 u (-.f32 n1_i n0_i) n0_i)
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (fma.f32 n1_i u n0_i) (*.f32 n0_i u))
(+.f32 n0_i (*.f32 u (-.f32 n1_i n0_i)))
(fma.f32 u (-.f32 n1_i n0_i) n0_i)
(*.f32 n1_i u)
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (fma.f32 n1_i u n0_i) (*.f32 n0_i u))
(+.f32 n0_i (*.f32 u (-.f32 n1_i n0_i)))
(fma.f32 u (-.f32 n1_i n0_i) n0_i)
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (fma.f32 n1_i u n0_i) (*.f32 n0_i u))
(+.f32 n0_i (*.f32 u (-.f32 n1_i n0_i)))
(fma.f32 u (-.f32 n1_i n0_i) n0_i)
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (fma.f32 n1_i u n0_i) (*.f32 n0_i u))
(+.f32 n0_i (*.f32 u (-.f32 n1_i n0_i)))
(fma.f32 u (-.f32 n1_i n0_i) n0_i)
(*.f32 n1_i u)
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (fma.f32 n1_i u n0_i) (*.f32 n0_i u))
(+.f32 n0_i (*.f32 u (-.f32 n1_i n0_i)))
(fma.f32 u (-.f32 n1_i n0_i) n0_i)
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (fma.f32 n1_i u n0_i) (*.f32 n0_i u))
(+.f32 n0_i (*.f32 u (-.f32 n1_i n0_i)))
(fma.f32 u (-.f32 n1_i n0_i) n0_i)
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (fma.f32 n1_i u n0_i) (*.f32 n0_i u))
(+.f32 n0_i (*.f32 u (-.f32 n1_i n0_i)))
(fma.f32 u (-.f32 n1_i n0_i) n0_i)
(*.f32 n1_i u)
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (fma.f32 n1_i u n0_i) (*.f32 n0_i u))
(+.f32 n0_i (*.f32 u (-.f32 n1_i n0_i)))
(fma.f32 u (-.f32 n1_i n0_i) n0_i)
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (fma.f32 n1_i u n0_i) (*.f32 n0_i u))
(+.f32 n0_i (*.f32 u (-.f32 n1_i n0_i)))
(fma.f32 u (-.f32 n1_i n0_i) n0_i)
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (fma.f32 n1_i u n0_i) (*.f32 n0_i u))
(+.f32 n0_i (*.f32 u (-.f32 n1_i n0_i)))
(fma.f32 u (-.f32 n1_i n0_i) n0_i)
(*.f32 (-.f32 1 u) n0_i)
(-.f32 n0_i (*.f32 n0_i u))
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (fma.f32 n1_i u n0_i) (*.f32 n0_i u))
(+.f32 n0_i (*.f32 u (-.f32 n1_i n0_i)))
(fma.f32 u (-.f32 n1_i n0_i) n0_i)
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (fma.f32 n1_i u n0_i) (*.f32 n0_i u))
(+.f32 n0_i (*.f32 u (-.f32 n1_i n0_i)))
(fma.f32 u (-.f32 n1_i n0_i) n0_i)
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (fma.f32 n1_i u n0_i) (*.f32 n0_i u))
(+.f32 n0_i (*.f32 u (-.f32 n1_i n0_i)))
(fma.f32 u (-.f32 n1_i n0_i) n0_i)
(*.f32 -1 (*.f32 n0_i (-.f32 u 1)))
(-.f32 n0_i (*.f32 n0_i u))
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (fma.f32 n1_i u n0_i) (*.f32 n0_i u))
(+.f32 n0_i (*.f32 u (-.f32 n1_i n0_i)))
(fma.f32 u (-.f32 n1_i n0_i) n0_i)
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (fma.f32 n1_i u n0_i) (*.f32 n0_i u))
(+.f32 n0_i (*.f32 u (-.f32 n1_i n0_i)))
(fma.f32 u (-.f32 n1_i n0_i) n0_i)
(-.f32 (+.f32 (*.f32 n1_i u) n0_i) (*.f32 n0_i u))
(-.f32 (fma.f32 n1_i u n0_i) (*.f32 n0_i u))
(+.f32 n0_i (*.f32 u (-.f32 n1_i n0_i)))
(fma.f32 u (-.f32 n1_i n0_i) n0_i)

prune39.0ms (0.6%)

Pruning

6 alts after pruning (4 fresh and 2 done)

PrunedKeptTotal
New52153
Fresh235
Picked011
Done011
Total54660
Error
0b
Counts
60 → 6
Alt Table
StatusErrorProgram
0.5b
(fma.f32 n1_i u (*.f32 (/.f32 (sin.f32 (*.f32 normAngle (-.f32 1 u))) (sin.f32 normAngle)) n0_i))
0.7b
(fma.f32 u (-.f32 n1_i n0_i) n0_i)
9.1b
(/.f32 (fma.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) n0_i (*.f32 (sin.f32 (*.f32 u normAngle)) n1_i)) (sin.f32 normAngle))
0.7b
(-.f32 (fma.f32 u n1_i n0_i) (*.f32 u n0_i))
1.0b
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) (*.f32 (/.f32 (sqrt.f32 (sin.f32 (*.f32 u normAngle))) (/.f32 (sin.f32 normAngle) (sqrt.f32 (sin.f32 (*.f32 u normAngle))))) n1_i))
1.0b
(+.f32 (-.f32 n0_i (*.f32 u n0_i)) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i))
Compiler

Compiled 895 to 275 computations (69.3% saved)

regimes568.0ms (8.2%)

Accuracy

Total 0.4b remaining (96%)

Threshold costs 0.4b (96%)

Counts
115 → 1
Compiler

Compiled 13508 to 9002 computations (33.4% saved)

simplify3.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary32
+-commutative_binary32
sub-neg_binary32
neg-sub0_binary32
neg-mul-1_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02452
13452
23852
34052
44152
Stop Event
saturated
Calls
Call 1
Inputs
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) (*.f32 (fma.f32 (/.f32 u (sin.f32 normAngle)) normAngle (*.f32 (/.f32 (pow.f32 u 3) (/.f32 (sin.f32 normAngle) (pow.f32 normAngle 3))) -1/6)) n1_i))
Outputs
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) (*.f32 (fma.f32 (/.f32 u (sin.f32 normAngle)) normAngle (*.f32 (/.f32 (pow.f32 u 3) (/.f32 (sin.f32 normAngle) (pow.f32 normAngle 3))) -1/6)) n1_i))

end84.0ms (1.2%)

Stop Event
fuel
Compiler

Compiled 192 to 121 computations (37% saved)

Profiling

Loading profile data...