Details

Time bar (total: 5.9s)

analyze1.0ms (0%)

Algorithm
search
Search
TrueOtherFalseIter
0%0.1%99.9%0
0.1%0%99.9%1
Compiler

Compiled 33 to 24 computations (27.3% saved)

sample1.6s (26.5%)

Results
1.6s8256×body256valid

preprocess71.0ms (1.2%)

Algorithm
egg-herbie
Rules
601×fma-def_binary32
498×fma-neg_binary32
174×cancel-sign-sub-inv_binary32
94×sub-neg_binary32
89×unsub-neg_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01640
14032
210632
322232
454032
5115232
6198032
7231832
8239832
9240932
033
Stop Event
saturated
saturated
Calls
Call 1
Inputs
0
1
2
Outputs
0
1
2
Call 2
Inputs
(+.f32 (-.f32 1 ux) (*.f32 ux maxCos))
(+.f32 (-.f32 1 uy) (*.f32 uy maxCos))
(+.f32 (-.f32 1 maxCos) (*.f32 maxCos ux))
(+.f32 (-.f32 1 ux) (*.f32 ux uy))
Outputs
(+.f32 (-.f32 1 ux) (*.f32 ux maxCos))
(fma.f32 ux maxCos (-.f32 1 ux))
(+.f32 (-.f32 1 uy) (*.f32 uy maxCos))
(+.f32 (-.f32 1 uy) (*.f32 maxCos uy))
(fma.f32 maxCos uy (-.f32 1 uy))
(-.f32 (fma.f32 maxCos uy 1) uy)
(+.f32 (-.f32 1 maxCos) (*.f32 maxCos ux))
(+.f32 (*.f32 ux maxCos) (-.f32 1 maxCos))
(fma.f32 ux maxCos (-.f32 1 maxCos))
(-.f32 (fma.f32 ux maxCos 1) maxCos)
(fma.f32 maxCos (+.f32 ux -1) 1)
(+.f32 (-.f32 1 ux) (*.f32 ux uy))
(fma.f32 ux uy (-.f32 1 ux))
(-.f32 (fma.f32 ux uy 1) ux)
(fma.f32 ux (-.f32 uy 1) 1)
Compiler

Compiled 13 to 10 computations (23.1% saved)

simplify23.0ms (0.4%)

Algorithm
egg-herbie
Rules
199×fma-def_binary32
151×fma-neg_binary32
47×cancel-sign-sub-inv_binary32
34×sub-neg_binary32
26×unsub-neg_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0710
1158
2358
3728
41678
53638
66268
77688
88008
98058
Stop Event
saturated
Counts
1 → 2
Calls
Call 1
Inputs
(+.f32 (-.f32 1 ux) (*.f32 ux maxCos))
Outputs
(+.f32 (-.f32 1 ux) (*.f32 ux maxCos))
(fma.f32 ux maxCos (-.f32 1 ux))
(-.f32 (fma.f32 ux maxCos 1) ux)

eval1.0ms (0%)

Compiler

Compiled 16 to 10 computations (37.5% saved)

prune1.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.0b
Counts
3 → 2
Alt Table
Click to see full alt table
StatusErrorProgram
0.1b
(-.f32 (fma.f32 ux maxCos 1) ux)
0.1b
(+.f32 (-.f32 1 ux) (*.f32 ux maxCos))
Compiler

Compiled 19 to 13 computations (31.6% saved)

localize22.0ms (0.4%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.1b
(+.f32 (-.f32 1 ux) (*.f32 ux maxCos))
Compiler

Compiled 19 to 10 computations (47.4% saved)

series3.0ms (0.1%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
ux
@inf
(+.f32 (-.f32 1 ux) (*.f32 ux maxCos))
1.0ms
ux
@0
(+.f32 (-.f32 1 ux) (*.f32 ux maxCos))
1.0ms
ux
@-inf
(+.f32 (-.f32 1 ux) (*.f32 ux maxCos))
0.0ms
maxCos
@inf
(+.f32 (-.f32 1 ux) (*.f32 ux maxCos))
0.0ms
maxCos
@0
(+.f32 (-.f32 1 ux) (*.f32 ux maxCos))

rewrite55.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
897×pow1_binary32
836×add-log-exp_binary32
836×log1p-expm1-u_binary32
836×expm1-log1p-u_binary32
820×add-exp-log_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0710
11548
222158
Stop Event
node limit
Counts
1 → 39
Calls
Call 1
Inputs
(+.f32 (-.f32 1 ux) (*.f32 ux maxCos))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f32 1 (*.f32 ux (-.f32 1 maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (fma.f32 ux maxCos (-.f32 1 ux))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 (pow.f32 (-.f32 1 ux) 2) (-.f32 1 (+.f32 ux (*.f32 ux maxCos)))) (/.f32 (pow.f32 (*.f32 ux maxCos) 2) (-.f32 1 (+.f32 ux (*.f32 ux maxCos)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 (*.f32 ux maxCos) 1) ux)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (fma.f32 ux maxCos (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)) (/.f32 1 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (-.f32 (*.f32 ux maxCos) (-.f32 1 ux))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (/.f32 1 (-.f32 1 (+.f32 ux (*.f32 ux maxCos)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (-.f32 (*.f32 ux maxCos) (-.f32 1 ux)))) (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (-.f32 1 (+.f32 ux (*.f32 ux maxCos))) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)) (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (-.f32 (*.f32 ux maxCos) (-.f32 1 ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)) (+.f32 (pow.f32 (*.f32 ux maxCos) 2) (-.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 (-.f32 1 ux) ux) maxCos))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (+.f32 ux (*.f32 ux maxCos))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3))) (neg.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (-.f32 (*.f32 ux maxCos) (-.f32 1 ux))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) (neg.f32 (-.f32 1 (+.f32 ux (*.f32 ux maxCos)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (+.f32 1 (+.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 ux (-.f32 1 maxCos))) (*.f32 ux (-.f32 1 maxCos)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 1 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 ux (-.f32 1 maxCos)))) (+.f32 1 (*.f32 ux (-.f32 1 maxCos))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (pow.f32 (-.f32 1 ux) 2)) (-.f32 (*.f32 ux maxCos) (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (-.f32 1 ux) (*.f32 ux maxCos))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 ux maxCos) (-.f32 1 ux))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 ux maxCos (-.f32 1 ux))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 maxCos ux (-.f32 1 ux))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (*.f32 ux maxCos)) 2) (cbrt.f32 (*.f32 ux maxCos)) (-.f32 1 ux))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (-.f32 1 ux)) 2) (cbrt.f32 (-.f32 1 ux)) (*.f32 ux maxCos))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 ux maxCos)) (sqrt.f32 (*.f32 ux maxCos)) (-.f32 1 ux))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (-.f32 1 ux)) (sqrt.f32 (-.f32 1 ux)) (*.f32 ux maxCos))))))

simplify27.0ms (0.5%)

Algorithm
egg-herbie
Rules
185×fma-def_binary32
162×fma-neg_binary32
31×sub-neg_binary32
25×unsub-neg_binary32
23×cancel-sign-sub-inv_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
017207
145171
2111171
3230171
4465171
5664171
6772171
7790171
Stop Event
saturated
Counts
63 → 49
Calls
Call 1
Inputs
1
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(*.f32 (-.f32 maxCos 1) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(*.f32 -1 (*.f32 ux (+.f32 1 (*.f32 -1 maxCos))))
(+.f32 1 (*.f32 -1 (*.f32 ux (+.f32 1 (*.f32 -1 maxCos)))))
(+.f32 1 (*.f32 -1 (*.f32 ux (+.f32 1 (*.f32 -1 maxCos)))))
(+.f32 1 (*.f32 -1 (*.f32 ux (+.f32 1 (*.f32 -1 maxCos)))))
(-.f32 1 ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(*.f32 maxCos ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(*.f32 maxCos ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
Outputs
1
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (-.f32 maxCos 1) ux)
(*.f32 (+.f32 maxCos -1) ux)
(-.f32 (*.f32 maxCos ux) ux)
(*.f32 ux (+.f32 maxCos -1))
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 -1 (*.f32 ux (+.f32 1 (*.f32 -1 maxCos))))
(*.f32 (+.f32 maxCos -1) ux)
(-.f32 (*.f32 maxCos ux) ux)
(*.f32 ux (+.f32 maxCos -1))
(+.f32 1 (*.f32 -1 (*.f32 ux (+.f32 1 (*.f32 -1 maxCos)))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 1 (*.f32 -1 (*.f32 ux (+.f32 1 (*.f32 -1 maxCos)))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 1 (*.f32 -1 (*.f32 ux (+.f32 1 (*.f32 -1 maxCos)))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 1 ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 maxCos ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 maxCos ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(-.f32 (fma.f32 maxCos ux 1) ux)

localize17.0ms (0.3%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.1b
(-.f32 (fma.f32 ux maxCos 1) ux)
Compiler

Compiled 16 to 9 computations (43.8% saved)

series3.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
ux
@0
(-.f32 (fma.f32 ux maxCos 1) ux)
0.0ms
ux
@-inf
(-.f32 (fma.f32 ux maxCos 1) ux)
0.0ms
maxCos
@-inf
(-.f32 (fma.f32 ux maxCos 1) ux)
0.0ms
maxCos
@inf
(-.f32 (fma.f32 ux maxCos 1) ux)
0.0ms
ux
@inf
(-.f32 (fma.f32 ux maxCos 1) ux)

rewrite50.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
672×pow1_binary32
624×add-log-exp_binary32
624×log1p-expm1-u_binary32
624×expm1-log1p-u_binary32
610×add-exp-log_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
068
11248
216378
Stop Event
node limit
Counts
1 → 37
Calls
Call 1
Inputs
(-.f32 (fma.f32 ux maxCos 1) ux)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 ux maxCos 1) (neg.f32 ux))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 ux maxCos 1) (*.f32 (neg.f32 ux) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (-.f32 (fma.f32 ux maxCos 1) ux) (fma.f32 (neg.f32 ux) 1 ux))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (-.f32 (fma.f32 ux maxCos 1) ux) (fma.f32 (neg.f32 (cbrt.f32 ux)) (pow.f32 (cbrt.f32 ux) 2) ux))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (-.f32 (fma.f32 ux maxCos 1) ux) (fma.f32 (neg.f32 (sqrt.f32 ux)) (sqrt.f32 ux) ux))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 ux maxCos) (-.f32 1 ux))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 ux maxCos) (+.f32 1 (neg.f32 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (neg.f32 ux) (fma.f32 ux maxCos 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (-.f32 (fma.f32 ux maxCos 1) ux))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 (fma.f32 ux maxCos 1) ux) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (-.f32 (fma.f32 ux maxCos 1) ux)) (pow.f32 (cbrt.f32 (-.f32 (fma.f32 ux maxCos 1) ux)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (-.f32 (fma.f32 ux maxCos 1) ux)) 2) (cbrt.f32 (-.f32 (fma.f32 ux maxCos 1) ux)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (-.f32 (fma.f32 ux maxCos 1) ux)) (sqrt.f32 (-.f32 (fma.f32 ux maxCos 1) ux)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 (pow.f32 (fma.f32 ux maxCos 1) 3) (pow.f32 ux 3)) (/.f32 1 (+.f32 (pow.f32 (fma.f32 ux maxCos 1) 2) (*.f32 ux (+.f32 ux (fma.f32 ux maxCos 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 (pow.f32 (fma.f32 ux maxCos 1) 2) (*.f32 ux ux)) (/.f32 1 (+.f32 ux (fma.f32 ux maxCos 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 (sqrt.f32 (fma.f32 ux maxCos 1)) (sqrt.f32 ux)) (-.f32 (sqrt.f32 (fma.f32 ux maxCos 1)) (sqrt.f32 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (+.f32 (pow.f32 (fma.f32 ux maxCos 1) 2) (*.f32 ux (+.f32 ux (fma.f32 ux maxCos 1)))) (-.f32 (pow.f32 (fma.f32 ux maxCos 1) 3) (pow.f32 ux 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (+.f32 ux (fma.f32 ux maxCos 1)) (-.f32 (pow.f32 (fma.f32 ux maxCos 1) 2) (*.f32 ux ux))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (fma.f32 ux maxCos 1) 3) (pow.f32 ux 3)) (+.f32 (pow.f32 (fma.f32 ux maxCos 1) 2) (*.f32 ux (+.f32 ux (fma.f32 ux maxCos 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (fma.f32 ux maxCos 1) 2) (*.f32 ux ux)) (+.f32 ux (fma.f32 ux maxCos 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (-.f32 (pow.f32 (fma.f32 ux maxCos 1) 3) (pow.f32 ux 3))) (neg.f32 (+.f32 (pow.f32 (fma.f32 ux maxCos 1) 2) (*.f32 ux (+.f32 ux (fma.f32 ux maxCos 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (-.f32 (pow.f32 (fma.f32 ux maxCos 1) 2) (*.f32 ux ux))) (neg.f32 (+.f32 ux (fma.f32 ux maxCos 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (fma.f32 ux maxCos 1) 3) (pow.f32 (neg.f32 ux) 3)) (+.f32 (pow.f32 (fma.f32 ux maxCos 1) 2) (-.f32 (*.f32 (neg.f32 ux) (neg.f32 ux)) (*.f32 (fma.f32 ux maxCos 1) (neg.f32 ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (fma.f32 ux maxCos 1) 2) (*.f32 (neg.f32 ux) (neg.f32 ux))) (-.f32 (fma.f32 ux maxCos 1) (neg.f32 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (-.f32 (fma.f32 ux maxCos 1) ux) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (-.f32 (fma.f32 ux maxCos 1) ux) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (-.f32 (fma.f32 ux maxCos 1) ux)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (-.f32 (fma.f32 ux maxCos 1) ux)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (-.f32 (fma.f32 ux maxCos 1) ux) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (-.f32 (fma.f32 ux maxCos 1) ux)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (-.f32 (fma.f32 ux maxCos 1) ux) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (-.f32 (fma.f32 ux maxCos 1) ux)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (-.f32 (fma.f32 ux maxCos 1) ux)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (-.f32 (fma.f32 ux maxCos 1) ux)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (fma.f32 ux maxCos 1) (neg.f32 ux))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos 1)) 2) (cbrt.f32 (fma.f32 ux maxCos 1)) (neg.f32 ux))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (fma.f32 ux maxCos 1)) (sqrt.f32 (fma.f32 ux maxCos 1)) (neg.f32 ux))))))

simplify26.0ms (0.4%)

Algorithm
egg-herbie
Rules
185×fma-def_binary32
162×fma-neg_binary32
31×sub-neg_binary32
25×unsub-neg_binary32
23×cancel-sign-sub-inv_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
017207
145171
2111171
3230171
4465171
5664171
6772171
7790171
Stop Event
saturated
Counts
61 → 47
Calls
Call 1
Inputs
1
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(*.f32 (-.f32 maxCos 1) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(*.f32 -1 (*.f32 ux (+.f32 1 (*.f32 -1 maxCos))))
(+.f32 1 (*.f32 -1 (*.f32 ux (+.f32 1 (*.f32 -1 maxCos)))))
(+.f32 1 (*.f32 -1 (*.f32 ux (+.f32 1 (*.f32 -1 maxCos)))))
(+.f32 1 (*.f32 -1 (*.f32 ux (+.f32 1 (*.f32 -1 maxCos)))))
(-.f32 1 ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(*.f32 maxCos ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(*.f32 maxCos ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
Outputs
1
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (-.f32 maxCos 1) ux)
(*.f32 (+.f32 maxCos -1) ux)
(-.f32 (*.f32 maxCos ux) ux)
(*.f32 ux (+.f32 maxCos -1))
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 -1 (*.f32 ux (+.f32 1 (*.f32 -1 maxCos))))
(*.f32 (+.f32 maxCos -1) ux)
(-.f32 (*.f32 maxCos ux) ux)
(*.f32 ux (+.f32 maxCos -1))
(+.f32 1 (*.f32 -1 (*.f32 ux (+.f32 1 (*.f32 -1 maxCos)))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 1 (*.f32 -1 (*.f32 ux (+.f32 1 (*.f32 -1 maxCos)))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 1 (*.f32 -1 (*.f32 ux (+.f32 1 (*.f32 -1 maxCos)))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 1 ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 maxCos ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 maxCos ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(-.f32 (fma.f32 maxCos ux 1) ux)

eval25.0ms (0.4%)

Compiler

Compiled 1223 to 740 computations (39.5% saved)

prune20.0ms (0.3%)

Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New90696
Fresh000
Picked101
Done101
Total92698
Error
0b
Counts
98 → 6
Alt Table
Click to see full alt table
StatusErrorProgram
9.3b
1
0.6b
(pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 3)
0.4b
(/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (+.f32 1 (+.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 ux (-.f32 1 maxCos))) (*.f32 ux (-.f32 1 maxCos)))))
0.0b
(-.f32 1 (*.f32 ux (-.f32 1 maxCos)))
0.5b
(-.f32 1 ux)
0.4b
(/.f32 1 (/.f32 (-.f32 1 (+.f32 ux (*.f32 ux maxCos))) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))))
Compiler

Compiled 172 to 130 computations (24.4% saved)

localize22.0ms (0.4%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(-.f32 1 (*.f32 ux (-.f32 1 maxCos)))
0.0b
(*.f32 ux (-.f32 1 maxCos))
Compiler

Compiled 21 to 14 computations (33.3% saved)

series5.0ms (0.1%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
maxCos
@0
(*.f32 ux (-.f32 1 maxCos))
1.0ms
ux
@0
(*.f32 ux (-.f32 1 maxCos))
0.0ms
ux
@inf
(*.f32 ux (-.f32 1 maxCos))
0.0ms
ux
@-inf
(*.f32 ux (-.f32 1 maxCos))
0.0ms
maxCos
@inf
(*.f32 ux (-.f32 1 maxCos))

rewrite56.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
847×pow1_binary32
787×add-log-exp_binary32
787×log1p-expm1-u_binary32
787×expm1-log1p-u_binary32
773×add-exp-log_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0717
115417
2207717
Stop Event
node limit
Counts
2 → 45
Calls
Call 1
Inputs
(*.f32 ux (-.f32 1 maxCos))
(-.f32 1 (*.f32 ux (-.f32 1 maxCos)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f32 ux (*.f32 (neg.f32 maxCos) ux))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 ux (*.f32 ux (neg.f32 maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (*.f32 ux (-.f32 1 maxCos))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 1 (pow.f32 maxCos 3)) ux) (+.f32 1 (fma.f32 maxCos maxCos maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 1 (*.f32 maxCos maxCos)) ux) (+.f32 1 maxCos))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 ux (-.f32 1 (pow.f32 maxCos 3))) (+.f32 1 (fma.f32 maxCos maxCos maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 ux (-.f32 1 (*.f32 maxCos maxCos))) (+.f32 1 maxCos))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 ux (-.f32 1 maxCos)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 ux (-.f32 1 maxCos))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 ux (-.f32 1 maxCos))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 ux) (-.f32 1 maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 ux (-.f32 1 maxCos))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 ux (-.f32 1 maxCos))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 ux (-.f32 1 maxCos))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 1 (*.f32 (-.f32 1 maxCos) (neg.f32 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 1 (*.f32 (*.f32 (-.f32 1 maxCos) (neg.f32 ux)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (-.f32 1 maxCos) (neg.f32 ux)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (-.f32 1 (*.f32 ux (-.f32 1 maxCos))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos)))) (pow.f32 (cbrt.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos)))) 2) (cbrt.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos)))) (sqrt.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (/.f32 1 (+.f32 1 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (+.f32 1 (*.f32 ux (-.f32 1 maxCos)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)) (/.f32 1 (+.f32 1 (*.f32 ux (-.f32 1 maxCos)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (+.f32 1 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (+.f32 1 (*.f32 ux (-.f32 1 maxCos))))) (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (+.f32 1 (*.f32 ux (-.f32 1 maxCos))) (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (+.f32 1 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (+.f32 1 (*.f32 ux (-.f32 1 maxCos))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)) (+.f32 1 (*.f32 ux (-.f32 1 maxCos))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) (neg.f32 (+.f32 1 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (+.f32 1 (*.f32 ux (-.f32 1 maxCos)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2))) (neg.f32 (+.f32 1 (*.f32 ux (-.f32 1 maxCos)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 1 (pow.f32 (*.f32 (-.f32 1 maxCos) (neg.f32 ux)) 3)) (+.f32 1 (-.f32 (*.f32 (*.f32 (-.f32 1 maxCos) (neg.f32 ux)) (*.f32 (-.f32 1 maxCos) (neg.f32 ux))) (*.f32 (-.f32 1 maxCos) (neg.f32 ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 1 (*.f32 (*.f32 (-.f32 1 maxCos) (neg.f32 ux)) (*.f32 (-.f32 1 maxCos) (neg.f32 ux)))) (-.f32 1 (*.f32 (-.f32 1 maxCos) (neg.f32 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log1p.f32 (*.f32 (-.f32 1 maxCos) (neg.f32 ux))))))))

simplify34.0ms (0.6%)

Algorithm
egg-herbie
Rules
203×fma-def_binary32
147×fma-neg_binary32
52×cancel-sign-sub-inv_binary32
36×sub-neg_binary32
32×associate--r+_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
018367
145331
296331
3180331
4377331
5620331
6784331
7839331
8848331
Stop Event
saturated
Counts
93 → 61
Calls
Call 1
Inputs
(*.f32 (-.f32 1 maxCos) ux)
(*.f32 (-.f32 1 maxCos) ux)
(*.f32 (-.f32 1 maxCos) ux)
(*.f32 (-.f32 1 maxCos) ux)
(*.f32 (-.f32 1 maxCos) ux)
(*.f32 (-.f32 1 maxCos) ux)
(*.f32 (-.f32 1 maxCos) ux)
(*.f32 (-.f32 1 maxCos) ux)
(*.f32 (-.f32 1 maxCos) ux)
(*.f32 (-.f32 1 maxCos) ux)
(*.f32 (-.f32 1 maxCos) ux)
(*.f32 (-.f32 1 maxCos) ux)
ux
(+.f32 (*.f32 -1 (*.f32 maxCos ux)) ux)
(+.f32 (*.f32 -1 (*.f32 maxCos ux)) ux)
(+.f32 (*.f32 -1 (*.f32 maxCos ux)) ux)
(*.f32 -1 (*.f32 maxCos ux))
(+.f32 (*.f32 -1 (*.f32 maxCos ux)) ux)
(+.f32 (*.f32 -1 (*.f32 maxCos ux)) ux)
(+.f32 (*.f32 -1 (*.f32 maxCos ux)) ux)
(*.f32 -1 (*.f32 maxCos ux))
(+.f32 (*.f32 -1 (*.f32 maxCos ux)) ux)
(+.f32 (*.f32 -1 (*.f32 maxCos ux)) ux)
(+.f32 (*.f32 -1 (*.f32 maxCos ux)) ux)
1
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(*.f32 (-.f32 maxCos 1) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(*.f32 -1 (*.f32 (-.f32 1 maxCos) ux))
(+.f32 1 (*.f32 -1 (*.f32 (-.f32 1 maxCos) ux)))
(+.f32 1 (*.f32 -1 (*.f32 (-.f32 1 maxCos) ux)))
(+.f32 1 (*.f32 -1 (*.f32 (-.f32 1 maxCos) ux)))
(-.f32 1 ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(*.f32 maxCos ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(*.f32 maxCos ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
Outputs
(*.f32 (-.f32 1 maxCos) ux)
(-.f32 ux (*.f32 maxCos ux))
(*.f32 (-.f32 1 maxCos) ux)
(-.f32 ux (*.f32 maxCos ux))
(*.f32 (-.f32 1 maxCos) ux)
(-.f32 ux (*.f32 maxCos ux))
(*.f32 (-.f32 1 maxCos) ux)
(-.f32 ux (*.f32 maxCos ux))
(*.f32 (-.f32 1 maxCos) ux)
(-.f32 ux (*.f32 maxCos ux))
(*.f32 (-.f32 1 maxCos) ux)
(-.f32 ux (*.f32 maxCos ux))
(*.f32 (-.f32 1 maxCos) ux)
(-.f32 ux (*.f32 maxCos ux))
(*.f32 (-.f32 1 maxCos) ux)
(-.f32 ux (*.f32 maxCos ux))
(*.f32 (-.f32 1 maxCos) ux)
(-.f32 ux (*.f32 maxCos ux))
(*.f32 (-.f32 1 maxCos) ux)
(-.f32 ux (*.f32 maxCos ux))
(*.f32 (-.f32 1 maxCos) ux)
(-.f32 ux (*.f32 maxCos ux))
(*.f32 (-.f32 1 maxCos) ux)
(-.f32 ux (*.f32 maxCos ux))
ux
(+.f32 (*.f32 -1 (*.f32 maxCos ux)) ux)
(*.f32 (-.f32 1 maxCos) ux)
(-.f32 ux (*.f32 maxCos ux))
(+.f32 (*.f32 -1 (*.f32 maxCos ux)) ux)
(*.f32 (-.f32 1 maxCos) ux)
(-.f32 ux (*.f32 maxCos ux))
(+.f32 (*.f32 -1 (*.f32 maxCos ux)) ux)
(*.f32 (-.f32 1 maxCos) ux)
(-.f32 ux (*.f32 maxCos ux))
(*.f32 -1 (*.f32 maxCos ux))
(neg.f32 (*.f32 maxCos ux))
(*.f32 maxCos (neg.f32 ux))
(+.f32 (*.f32 -1 (*.f32 maxCos ux)) ux)
(*.f32 (-.f32 1 maxCos) ux)
(-.f32 ux (*.f32 maxCos ux))
(+.f32 (*.f32 -1 (*.f32 maxCos ux)) ux)
(*.f32 (-.f32 1 maxCos) ux)
(-.f32 ux (*.f32 maxCos ux))
(+.f32 (*.f32 -1 (*.f32 maxCos ux)) ux)
(*.f32 (-.f32 1 maxCos) ux)
(-.f32 ux (*.f32 maxCos ux))
(*.f32 -1 (*.f32 maxCos ux))
(neg.f32 (*.f32 maxCos ux))
(*.f32 maxCos (neg.f32 ux))
(+.f32 (*.f32 -1 (*.f32 maxCos ux)) ux)
(*.f32 (-.f32 1 maxCos) ux)
(-.f32 ux (*.f32 maxCos ux))
(+.f32 (*.f32 -1 (*.f32 maxCos ux)) ux)
(*.f32 (-.f32 1 maxCos) ux)
(-.f32 ux (*.f32 maxCos ux))
(+.f32 (*.f32 -1 (*.f32 maxCos ux)) ux)
(*.f32 (-.f32 1 maxCos) ux)
(-.f32 ux (*.f32 maxCos ux))
1
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(fma.f32 ux (+.f32 maxCos -1) 1)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(fma.f32 ux (+.f32 maxCos -1) 1)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(fma.f32 ux (+.f32 maxCos -1) 1)
(*.f32 (-.f32 maxCos 1) ux)
(*.f32 ux (+.f32 maxCos -1))
(-.f32 (*.f32 maxCos ux) ux)
(fma.f32 maxCos ux (neg.f32 ux))
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(fma.f32 ux (+.f32 maxCos -1) 1)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(fma.f32 ux (+.f32 maxCos -1) 1)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(fma.f32 ux (+.f32 maxCos -1) 1)
(*.f32 -1 (*.f32 (-.f32 1 maxCos) ux))
(*.f32 ux (+.f32 maxCos -1))
(-.f32 (*.f32 maxCos ux) ux)
(fma.f32 maxCos ux (neg.f32 ux))
(+.f32 1 (*.f32 -1 (*.f32 (-.f32 1 maxCos) ux)))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(fma.f32 ux (+.f32 maxCos -1) 1)
(+.f32 1 (*.f32 -1 (*.f32 (-.f32 1 maxCos) ux)))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(fma.f32 ux (+.f32 maxCos -1) 1)
(+.f32 1 (*.f32 -1 (*.f32 (-.f32 1 maxCos) ux)))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(fma.f32 ux (+.f32 maxCos -1) 1)
(-.f32 1 ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(fma.f32 ux (+.f32 maxCos -1) 1)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(fma.f32 ux (+.f32 maxCos -1) 1)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(fma.f32 ux (+.f32 maxCos -1) 1)
(*.f32 maxCos ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(fma.f32 ux (+.f32 maxCos -1) 1)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(fma.f32 ux (+.f32 maxCos -1) 1)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(fma.f32 ux (+.f32 maxCos -1) 1)
(*.f32 maxCos ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(fma.f32 ux (+.f32 maxCos -1) 1)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(fma.f32 ux (+.f32 maxCos -1) 1)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(fma.f32 ux (+.f32 maxCos -1) 1)

localize7.0ms (0.1%)

Compiler

Compiled 8 to 6 computations (25% saved)

localize72.0ms (1.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 ux (-.f32 1 maxCos)))
0.1b
(+.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 ux (-.f32 1 maxCos))) (*.f32 ux (-.f32 1 maxCos)))
0.1b
(pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)
0.4b
(/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (+.f32 1 (+.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 ux (-.f32 1 maxCos))) (*.f32 ux (-.f32 1 maxCos)))))
Compiler

Compiled 107 to 74 computations (30.8% saved)

series18.0ms (0.3%)

Counts
4 → 96
Calls

24 calls:

TimeVariablePointExpression
3.0ms
maxCos
@inf
(/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (+.f32 1 (+.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 ux (-.f32 1 maxCos))) (*.f32 ux (-.f32 1 maxCos)))))
2.0ms
maxCos
@0
(/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (+.f32 1 (+.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 ux (-.f32 1 maxCos))) (*.f32 ux (-.f32 1 maxCos)))))
2.0ms
maxCos
@-inf
(/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (+.f32 1 (+.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 ux (-.f32 1 maxCos))) (*.f32 ux (-.f32 1 maxCos)))))
1.0ms
ux
@inf
(/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (+.f32 1 (+.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 ux (-.f32 1 maxCos))) (*.f32 ux (-.f32 1 maxCos)))))
1.0ms
ux
@0
(/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (+.f32 1 (+.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 ux (-.f32 1 maxCos))) (*.f32 ux (-.f32 1 maxCos)))))

rewrite96.0ms (1.6%)

Algorithm
batch-egg-rewrite
Rules
794×log-prod_binary32
507×fma-neg_binary32
263×expm1-udef_binary32
261×log1p-udef_binary32
215×log-div_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01376
131570
2482370
Stop Event
node limit
Counts
4 → 172
Calls
Call 1
Inputs
(/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (+.f32 1 (+.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 ux (-.f32 1 maxCos))) (*.f32 ux (-.f32 1 maxCos)))))
(pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)
(+.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 ux (-.f32 1 maxCos))) (*.f32 ux (-.f32 1 maxCos)))
(*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 ux (-.f32 1 maxCos)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (/.f32 1 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)) (neg.f32 (/.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (*.f32 (cbrt.f32 (exp.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)))) (cbrt.f32 (exp.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)))))) (log.f32 (cbrt.f32 (exp.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (exp.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))) (log.f32 (sqrt.f32 (exp.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 1 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)) (/.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (/.f32 1 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) 2) (*.f32 (cbrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) (/.f32 1 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))) (pow.f32 (cbrt.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))) 2) (cbrt.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) (*.f32 (sqrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) (/.f32 1 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))) (sqrt.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (neg.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) (/.f32 1 (neg.f32 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)) (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (pow.f32 (cbrt.f32 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)) 2)) (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (cbrt.f32 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (hypot.f32 (*.f32 ux (-.f32 1 maxCos)) (sqrt.f32 (fma.f32 ux (-.f32 1 maxCos) 1)))) (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (hypot.f32 (*.f32 ux (-.f32 1 maxCos)) (sqrt.f32 (fma.f32 ux (-.f32 1 maxCos) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) 2) 1) (/.f32 (cbrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sqrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) 1) (/.f32 (sqrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) 2) (pow.f32 (cbrt.f32 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)) 2)) (cbrt.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sqrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) (pow.f32 (cbrt.f32 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)) 2)) (/.f32 (sqrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) (cbrt.f32 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) 2) (hypot.f32 (*.f32 ux (-.f32 1 maxCos)) (sqrt.f32 (fma.f32 ux (-.f32 1 maxCos) 1)))) (/.f32 (cbrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) (hypot.f32 (*.f32 ux (-.f32 1 maxCos)) (sqrt.f32 (fma.f32 ux (-.f32 1 maxCos) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (+.f32 1 (pow.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1)) 3))) (+.f32 1 (*.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1)) (fma.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (-.f32 1 (pow.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1)) 2))) (-.f32 1 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1) (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (neg.f32 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (/.f32 (pow.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) 3) (pow.f32 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (/.f32 1 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)) (neg.f32 (/.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (cbrt.f32 (/.f32 1 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))) (cbrt.f32 (/.f32 1 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)))) (cbrt.f32 (/.f32 1 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))) (neg.f32 (/.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (/.f32 1 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))) (sqrt.f32 (/.f32 1 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))) (neg.f32 (/.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (/.f32 1 (+.f32 1 (pow.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1)) 3))) (+.f32 1 (*.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1)) (fma.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1) -1))) (neg.f32 (/.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (/.f32 1 (-.f32 1 (pow.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1)) 2))) (-.f32 1 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1))) (neg.f32 (/.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (*.f32 (cbrt.f32 (exp.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) (cbrt.f32 (exp.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))))) (log.f32 (cbrt.f32 (exp.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (exp.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)))) (log.f32 (sqrt.f32 (exp.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 ux (*.f32 (-.f32 1 maxCos) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 ux (*.f32 (*.f32 (pow.f32 (-.f32 1 maxCos) 2) ux) (*.f32 ux (-.f32 1 maxCos))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 1 maxCos) (*.f32 ux (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 ux (-.f32 1 maxCos)) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2) (*.f32 ux (-.f32 1 maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 ux ux) (*.f32 (pow.f32 (-.f32 1 maxCos) 2) (*.f32 ux (-.f32 1 maxCos))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (*.f32 ux (-.f32 1 maxCos))) 2) (*.f32 (cbrt.f32 (*.f32 ux (-.f32 1 maxCos))) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 4)) (*.f32 (pow.f32 (cbrt.f32 (*.f32 ux (-.f32 1 maxCos))) 2) (*.f32 ux (-.f32 1 maxCos))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (*.f32 ux (-.f32 1 maxCos))) (*.f32 (sqrt.f32 (*.f32 ux (-.f32 1 maxCos))) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 ux 3) (pow.f32 (-.f32 1 maxCos) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (-.f32 1 maxCos) 3) (pow.f32 ux 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3/2) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (-.f32 1 maxCos) (*.f32 ux ux)) (*.f32 (pow.f32 (-.f32 1 maxCos) 2) ux))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (sqrt.f32 (*.f32 ux (-.f32 1 maxCos))) 3) (pow.f32 (sqrt.f32 (*.f32 ux (-.f32 1 maxCos))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 ux ux)) (pow.f32 (-.f32 1 maxCos) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (cbrt.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 4))) (pow.f32 (cbrt.f32 (*.f32 ux (-.f32 1 maxCos))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 (-.f32 1 maxCos) (*.f32 ux ux))) (-.f32 1 maxCos))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2) ux) (-.f32 1 maxCos))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2) (-.f32 1 maxCos)) ux)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2) (pow.f32 (cbrt.f32 (*.f32 ux (-.f32 1 maxCos))) 2)) (cbrt.f32 (*.f32 ux (-.f32 1 maxCos))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2) (sqrt.f32 (*.f32 ux (-.f32 1 maxCos)))) (sqrt.f32 (*.f32 ux (-.f32 1 maxCos))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 9))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (+.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (cbrt.f32 (+.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) (cbrt.f32 (+.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)))) (cbrt.f32 (+.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (hypot.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3/2)) (hypot.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3/2)) -1)))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 4) (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) -1))) (/.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2) (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 ux (+.f32 (-.f32 1 maxCos) (*.f32 (pow.f32 (-.f32 1 maxCos) 2) ux)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 ux (+.f32 (*.f32 (pow.f32 (-.f32 1 maxCos) 2) ux) (-.f32 1 maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 1 maxCos) (+.f32 ux (*.f32 (-.f32 1 maxCos) (*.f32 ux ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 1 maxCos) (+.f32 (*.f32 (-.f32 1 maxCos) (*.f32 ux ux)) ux))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1))) (cbrt.f32 (pow.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (pow.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1)) 2)) (cbrt.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (hypot.f32 (*.f32 ux (-.f32 1 maxCos)) (sqrt.f32 (*.f32 ux (-.f32 1 maxCos)))) (hypot.f32 (*.f32 ux (-.f32 1 maxCos)) (sqrt.f32 (*.f32 ux (-.f32 1 maxCos)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 6)) (/.f32 1 (-.f32 (+.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 4) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 4) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)) (/.f32 1 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (fma.f32 ux (-.f32 1 maxCos) 1) 1) (*.f32 ux (-.f32 1 maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (fma.f32 ux (-.f32 1 maxCos) 1) ux) (-.f32 1 maxCos))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (-.f32 1 maxCos)) ux)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (pow.f32 (cbrt.f32 (*.f32 ux (-.f32 1 maxCos))) 2)) (cbrt.f32 (*.f32 ux (-.f32 1 maxCos))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (sqrt.f32 (*.f32 ux (-.f32 1 maxCos)))) (sqrt.f32 (*.f32 ux (-.f32 1 maxCos))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (-.f32 (+.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 4) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (+.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 6))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) -1)) (-.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 4) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 6)) (-.f32 (+.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 4) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 6)) (+.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2) (-.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 4) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 4) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)) (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (+.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 6))) (neg.f32 (-.f32 (+.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 4) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (-.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 4) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2))) (neg.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 4)) (-.f32 (*.f32 ux (-.f32 1 maxCos)) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (hypot.f32 (*.f32 ux (-.f32 1 maxCos)) (sqrt.f32 (*.f32 ux (-.f32 1 maxCos)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 (fma.f32 ux (-.f32 1 maxCos) 1)) (*.f32 ux (-.f32 1 maxCos))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (+.f32 1 (expm1.f32 (*.f32 ux (-.f32 1 maxCos)))) (exp.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (pow.f32 (exp.f32 ux) (-.f32 1 maxCos)) (+.f32 1 (expm1.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (+.f32 1 (expm1.f32 (*.f32 ux (-.f32 1 maxCos)))) (+.f32 1 (expm1.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (+.f32 1 (expm1.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2))) (pow.f32 (exp.f32 ux) (-.f32 1 maxCos))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (exp.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)) (+.f32 1 (expm1.f32 (*.f32 ux (-.f32 1 maxCos))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (+.f32 1 (expm1.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2))) (+.f32 1 (expm1.f32 (*.f32 ux (-.f32 1 maxCos))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (*.f32 (log1p.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 ux (-.f32 1 maxCos)) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2) (*.f32 ux (-.f32 1 maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 ux (-.f32 1 maxCos) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 ux (*.f32 (pow.f32 (-.f32 1 maxCos) 2) ux) (*.f32 ux (-.f32 1 maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (-.f32 1 maxCos) ux (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 ux (-.f32 1 maxCos)) (*.f32 ux (-.f32 1 maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1) 1 -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 maxCos) 2) (*.f32 ux (-.f32 1 maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)) (pow.f32 (cbrt.f32 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)) 2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)) 2) (cbrt.f32 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (*.f32 ux (-.f32 1 maxCos))) 2) (cbrt.f32 (*.f32 ux (-.f32 1 maxCos))) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 4)) (pow.f32 (cbrt.f32 (*.f32 ux (-.f32 1 maxCos))) 2) (*.f32 ux (-.f32 1 maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (hypot.f32 (*.f32 ux (-.f32 1 maxCos)) (sqrt.f32 (fma.f32 ux (-.f32 1 maxCos) 1))) (hypot.f32 (*.f32 ux (-.f32 1 maxCos)) (sqrt.f32 (fma.f32 ux (-.f32 1 maxCos) 1))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 ux (-.f32 1 maxCos))) (sqrt.f32 (*.f32 ux (-.f32 1 maxCos))) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (+.f32 1 (pow.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1)) 3)) (/.f32 1 (+.f32 1 (*.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1)) (fma.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1) -1)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (-.f32 1 (pow.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1)) 2)) (/.f32 1 (-.f32 1 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (-.f32 1 maxCos) (*.f32 ux ux)) (-.f32 1 maxCos) (*.f32 ux (-.f32 1 maxCos)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (-.f32 1 maxCos) (*.f32 ux ux)) (*.f32 (neg.f32 maxCos) (*.f32 (-.f32 1 maxCos) (*.f32 ux ux))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (*.f32 (-.f32 1 maxCos) (*.f32 ux ux)) 1) (*.f32 (*.f32 (-.f32 1 maxCos) (*.f32 ux ux)) (neg.f32 maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (*.f32 (cbrt.f32 (exp.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2))) (cbrt.f32 (exp.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2))))) (log.f32 (cbrt.f32 (exp.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (exp.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)))) (log.f32 (sqrt.f32 (exp.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (*.f32 (-.f32 1 maxCos) (*.f32 ux ux)) (-.f32 1 (pow.f32 maxCos 3))) (+.f32 1 (fma.f32 maxCos maxCos maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (*.f32 (-.f32 1 maxCos) (*.f32 ux ux)) (-.f32 1 (*.f32 maxCos maxCos))) (+.f32 1 maxCos))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (cbrt.f32 (*.f32 ux (-.f32 1 maxCos))) 2) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 6) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 2 (log.f32 (*.f32 ux (-.f32 1 maxCos)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 ux (-.f32 1 maxCos))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 2 (log.f32 (*.f32 ux (-.f32 1 maxCos)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (+.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (cbrt.f32 (+.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2))) (cbrt.f32 (+.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)))) (cbrt.f32 (+.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (hypot.f32 1 (*.f32 ux (-.f32 1 maxCos))) (hypot.f32 1 (*.f32 ux (-.f32 1 maxCos))) -1)))))

simplify76.0ms (1.3%)

Algorithm
egg-herbie
Rules
627×distribute-rgt-in_binary32
587×distribute-lft-in_binary32
436×times-frac_binary32
252×cancel-sign-sub-inv_binary32
224×fma-def_binary32
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02013361
17013034
228432846
Stop Event
node limit
Counts
268 → 247
Calls
Call 1
Inputs
1
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (+.f32 (*.f32 -1 (*.f32 (pow.f32 ux 2) (+.f32 (*.f32 (-.f32 maxCos 1) (-.f32 1 maxCos)) (pow.f32 (-.f32 1 maxCos) 2)))) (*.f32 (-.f32 maxCos 1) ux)))
(+.f32 1 (+.f32 (*.f32 (-.f32 (*.f32 -1 (pow.f32 (-.f32 1 maxCos) 3)) (+.f32 (*.f32 (-.f32 maxCos 1) (pow.f32 (-.f32 1 maxCos) 2)) (*.f32 -1 (*.f32 (-.f32 1 maxCos) (+.f32 (*.f32 (-.f32 1 maxCos) (-.f32 maxCos 1)) (pow.f32 (-.f32 1 maxCos) 2)))))) (pow.f32 ux 3)) (+.f32 (*.f32 -1 (*.f32 (pow.f32 ux 2) (+.f32 (*.f32 (-.f32 maxCos 1) (-.f32 1 maxCos)) (pow.f32 (-.f32 1 maxCos) 2)))) (*.f32 (-.f32 maxCos 1) ux))))
(*.f32 -1 (*.f32 (-.f32 1 maxCos) ux))
(+.f32 1 (*.f32 -1 (*.f32 (-.f32 1 maxCos) ux)))
(+.f32 1 (*.f32 -1 (*.f32 (-.f32 1 maxCos) ux)))
(+.f32 1 (*.f32 -1 (*.f32 (-.f32 1 maxCos) ux)))
(*.f32 -1 (*.f32 (-.f32 1 maxCos) ux))
(+.f32 1 (*.f32 -1 (*.f32 (-.f32 1 maxCos) ux)))
(+.f32 1 (*.f32 -1 (*.f32 (-.f32 1 maxCos) ux)))
(+.f32 1 (*.f32 -1 (*.f32 (-.f32 1 maxCos) ux)))
(/.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))
(-.f32 (+.f32 (/.f32 1 (+.f32 (pow.f32 ux 2) (+.f32 1 ux))) (*.f32 (-.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 -2 (pow.f32 ux 3)) (*.f32 -1 (pow.f32 ux 3))) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2))) maxCos)) (/.f32 (pow.f32 ux 3) (+.f32 (pow.f32 ux 2) (+.f32 1 ux))))
(-.f32 (+.f32 (/.f32 1 (+.f32 (pow.f32 ux 2) (+.f32 1 ux))) (+.f32 (*.f32 (-.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 -2 (pow.f32 ux 3)) (*.f32 -1 (pow.f32 ux 3))) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2))) maxCos) (*.f32 (pow.f32 maxCos 2) (-.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (+.f32 (/.f32 (*.f32 (pow.f32 ux 2) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2)) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 -2 (pow.f32 ux 3)) (*.f32 -1 (pow.f32 ux 3))) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2)))) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))))))) (/.f32 (pow.f32 ux 3) (+.f32 (pow.f32 ux 2) (+.f32 1 ux))))
(-.f32 (+.f32 (/.f32 1 (+.f32 (pow.f32 ux 2) (+.f32 1 ux))) (+.f32 (*.f32 (pow.f32 maxCos 3) (-.f32 (/.f32 (pow.f32 ux 3) (+.f32 (pow.f32 ux 2) (+.f32 1 ux))) (+.f32 (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (+.f32 (/.f32 (*.f32 (pow.f32 ux 2) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2)) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 -2 (pow.f32 ux 3)) (*.f32 -1 (pow.f32 ux 3))) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2)))) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))))) (+.f32 (pow.f32 ux 2) (+.f32 1 ux))) (/.f32 (*.f32 (-.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 -2 (pow.f32 ux 3)) (*.f32 -1 (pow.f32 ux 3))) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2))) (pow.f32 ux 2)) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))))) (+.f32 (*.f32 (-.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 -2 (pow.f32 ux 3)) (*.f32 -1 (pow.f32 ux 3))) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2))) maxCos) (*.f32 (pow.f32 maxCos 2) (-.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (+.f32 (/.f32 (*.f32 (pow.f32 ux 2) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2)) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 -2 (pow.f32 ux 3)) (*.f32 -1 (pow.f32 ux 3))) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2)))) (+.f32 (pow.f32 ux 2) (+.f32 1 ux))))))))) (/.f32 (pow.f32 ux 3) (+.f32 (pow.f32 ux 2) (+.f32 1 ux))))
(*.f32 maxCos ux)
(-.f32 (+.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 ux 2))) (+.f32 1 (*.f32 maxCos ux))) (*.f32 -2 ux))
(-.f32 (+.f32 1 (+.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 -2 (pow.f32 ux 3)) (*.f32 -1 (pow.f32 ux 3))) (*.f32 maxCos (pow.f32 ux 2)))) (+.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 ux 2))) (*.f32 maxCos ux)))) (+.f32 (/.f32 ux maxCos) (+.f32 (/.f32 1 (*.f32 maxCos ux)) (+.f32 (/.f32 1 maxCos) (+.f32 (*.f32 -2 ux) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 (+.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 ux 2))) 1) (*.f32 -2 ux))) (*.f32 maxCos (pow.f32 ux 2))))))))
(-.f32 (+.f32 1 (+.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 -2 (pow.f32 ux 3)) (*.f32 -1 (pow.f32 ux 3))) (*.f32 maxCos (pow.f32 ux 2)))) (+.f32 (/.f32 1 (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))) (+.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 ux 2))) (*.f32 maxCos ux))))) (+.f32 (/.f32 ux maxCos) (+.f32 (/.f32 1 (*.f32 maxCos ux)) (+.f32 (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 -2 (pow.f32 ux 3)) (*.f32 -1 (pow.f32 ux 3))) (pow.f32 ux 2))) (+.f32 1 (+.f32 (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 (+.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 ux 2))) 1) (*.f32 -2 ux))) (pow.f32 ux 2)) (+.f32 ux (/.f32 1 ux)))))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))) (+.f32 (/.f32 1 maxCos) (+.f32 (/.f32 (*.f32 (-.f32 (+.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 ux 2))) 1) (*.f32 -2 ux)) (+.f32 (pow.f32 ux 2) (+.f32 1 ux))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))) (+.f32 (/.f32 ux (pow.f32 maxCos 2)) (+.f32 (*.f32 -2 ux) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 (+.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 ux 2))) 1) (*.f32 -2 ux))) (*.f32 maxCos (pow.f32 ux 2)))))))))))
(*.f32 maxCos ux)
(-.f32 (+.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 ux 2))) (*.f32 maxCos ux)) (*.f32 -1 (/.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) ux)))
(-.f32 (+.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 ux 2))) (+.f32 (*.f32 -1 (/.f32 (-.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 ux 2))) (+.f32 (/.f32 (*.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) (-.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 ux 2))) (*.f32 -1 (/.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) ux)))) (pow.f32 ux 2)) (*.f32 -1 (/.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) ux)))) maxCos)) (*.f32 maxCos ux))) (*.f32 -1 (/.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) ux)))
(-.f32 (+.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 ux 2))) (+.f32 (*.f32 -1 (/.f32 (-.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 ux 2))) (+.f32 (/.f32 (*.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) (-.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 ux 2))) (*.f32 -1 (/.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) ux)))) (pow.f32 ux 2)) (*.f32 -1 (/.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) ux)))) maxCos)) (+.f32 (/.f32 1 (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))) (*.f32 maxCos ux)))) (+.f32 (/.f32 (*.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) (-.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 ux 2))) (+.f32 (/.f32 (*.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) (-.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 ux 2))) (*.f32 -1 (/.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) ux)))) (pow.f32 ux 2)) (*.f32 -1 (/.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) ux))))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))) (+.f32 (/.f32 ux (pow.f32 maxCos 2)) (+.f32 (/.f32 (*.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) (-.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 ux 2))) (*.f32 -1 (/.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) ux)))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))) (*.f32 -1 (/.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) ux))))))
(*.f32 (pow.f32 (-.f32 1 maxCos) 3) (pow.f32 ux 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 3) (pow.f32 ux 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 3) (pow.f32 ux 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 3) (pow.f32 ux 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 3) (pow.f32 ux 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 3) (pow.f32 ux 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 3) (pow.f32 ux 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 3) (pow.f32 ux 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 3) (pow.f32 ux 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 3) (pow.f32 ux 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 3) (pow.f32 ux 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 3) (pow.f32 ux 3))
(pow.f32 ux 3)
(+.f32 (*.f32 maxCos (+.f32 (*.f32 -2 (pow.f32 ux 3)) (*.f32 -1 (pow.f32 ux 3)))) (pow.f32 ux 3))
(+.f32 (*.f32 maxCos (+.f32 (*.f32 -2 (pow.f32 ux 3)) (*.f32 -1 (pow.f32 ux 3)))) (+.f32 (*.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 maxCos 2)) (pow.f32 ux 3)))
(+.f32 (*.f32 maxCos (+.f32 (*.f32 -2 (pow.f32 ux 3)) (*.f32 -1 (pow.f32 ux 3)))) (+.f32 (*.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 maxCos 2)) (+.f32 (*.f32 -1 (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3))) (pow.f32 ux 3))))
(*.f32 -1 (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3)))
(+.f32 (*.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 maxCos 2)) (*.f32 -1 (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3))))
(+.f32 (*.f32 maxCos (+.f32 (*.f32 -2 (pow.f32 ux 3)) (*.f32 -1 (pow.f32 ux 3)))) (+.f32 (*.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 maxCos 2)) (*.f32 -1 (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3)))))
(+.f32 (*.f32 maxCos (+.f32 (*.f32 -2 (pow.f32 ux 3)) (*.f32 -1 (pow.f32 ux 3)))) (+.f32 (*.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 maxCos 2)) (+.f32 (*.f32 -1 (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3))) (pow.f32 ux 3))))
(*.f32 -1 (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3)))
(+.f32 (*.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 maxCos 2)) (*.f32 -1 (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3))))
(+.f32 (*.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 maxCos 2)) (+.f32 (*.f32 -1 (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3))) (*.f32 -1 (*.f32 maxCos (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3))))))
(+.f32 (*.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 maxCos 2)) (+.f32 (*.f32 -1 (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3))) (+.f32 (pow.f32 ux 3) (*.f32 -1 (*.f32 maxCos (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)))))))
(*.f32 (-.f32 1 maxCos) ux)
(+.f32 (*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2)) (*.f32 (-.f32 1 maxCos) ux))
(+.f32 (*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2)) (*.f32 (-.f32 1 maxCos) ux))
(+.f32 (*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2)) (*.f32 (-.f32 1 maxCos) ux))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2))
(+.f32 (*.f32 (-.f32 1 maxCos) ux) (*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2)))
(+.f32 (*.f32 (-.f32 1 maxCos) ux) (*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2)))
(+.f32 (*.f32 (-.f32 1 maxCos) ux) (*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2)))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2))
(+.f32 (*.f32 (-.f32 1 maxCos) ux) (*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2)))
(+.f32 (*.f32 (-.f32 1 maxCos) ux) (*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2)))
(+.f32 (*.f32 (-.f32 1 maxCos) ux) (*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2)))
(+.f32 (pow.f32 ux 2) ux)
(+.f32 (pow.f32 ux 2) (+.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) maxCos) ux))
(+.f32 (pow.f32 ux 2) (+.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) maxCos) (+.f32 ux (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))))
(+.f32 (pow.f32 ux 2) (+.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) maxCos) (+.f32 ux (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(+.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) maxCos) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))
(+.f32 (pow.f32 ux 2) (+.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) maxCos) (+.f32 ux (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))))
(+.f32 (pow.f32 ux 2) (+.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) maxCos) (+.f32 ux (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(+.f32 (*.f32 -1 (*.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) maxCos)) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))
(+.f32 (pow.f32 ux 2) (+.f32 (*.f32 -1 (*.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) maxCos)) (+.f32 ux (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))))
(+.f32 (pow.f32 ux 2) (+.f32 (*.f32 -1 (*.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) maxCos)) (+.f32 ux (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2))
(pow.f32 ux 2)
(+.f32 (pow.f32 ux 2) (*.f32 -2 (*.f32 maxCos (pow.f32 ux 2))))
(+.f32 (pow.f32 ux 2) (+.f32 (*.f32 -2 (*.f32 maxCos (pow.f32 ux 2))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))))
(+.f32 (pow.f32 ux 2) (+.f32 (*.f32 -2 (*.f32 maxCos (pow.f32 ux 2))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(+.f32 (*.f32 -2 (*.f32 maxCos (pow.f32 ux 2))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))
(+.f32 (pow.f32 ux 2) (+.f32 (*.f32 -2 (*.f32 maxCos (pow.f32 ux 2))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))))
(+.f32 (pow.f32 ux 2) (+.f32 (*.f32 -2 (*.f32 maxCos (pow.f32 ux 2))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(+.f32 (*.f32 -2 (*.f32 maxCos (pow.f32 ux 2))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))
(+.f32 (pow.f32 ux 2) (+.f32 (*.f32 -2 (*.f32 maxCos (pow.f32 ux 2))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))))
(+.f32 (pow.f32 ux 2) (+.f32 (*.f32 -2 (*.f32 maxCos (pow.f32 ux 2))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))))
Outputs
1
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(+.f32 1 (+.f32 (*.f32 -1 (*.f32 (pow.f32 ux 2) (+.f32 (*.f32 (-.f32 maxCos 1) (-.f32 1 maxCos)) (pow.f32 (-.f32 1 maxCos) 2)))) (*.f32 (-.f32 maxCos 1) ux)))
(+.f32 1 (fma.f32 -1 (*.f32 (*.f32 ux ux) (fma.f32 (+.f32 maxCos -1) (-.f32 1 maxCos) (pow.f32 (-.f32 1 maxCos) 2))) (*.f32 (+.f32 maxCos -1) ux)))
(+.f32 1 (-.f32 (*.f32 (+.f32 maxCos -1) ux) (*.f32 (*.f32 ux ux) (*.f32 (-.f32 1 maxCos) (+.f32 (-.f32 1 maxCos) (+.f32 maxCos -1))))))
(+.f32 1 (*.f32 ux (-.f32 (+.f32 maxCos -1) (*.f32 (*.f32 (-.f32 1 maxCos) (+.f32 (-.f32 1 maxCos) (+.f32 maxCos -1))) ux))))
(+.f32 1 (+.f32 (*.f32 (-.f32 (*.f32 -1 (pow.f32 (-.f32 1 maxCos) 3)) (+.f32 (*.f32 (-.f32 maxCos 1) (pow.f32 (-.f32 1 maxCos) 2)) (*.f32 -1 (*.f32 (-.f32 1 maxCos) (+.f32 (*.f32 (-.f32 1 maxCos) (-.f32 maxCos 1)) (pow.f32 (-.f32 1 maxCos) 2)))))) (pow.f32 ux 3)) (+.f32 (*.f32 -1 (*.f32 (pow.f32 ux 2) (+.f32 (*.f32 (-.f32 maxCos 1) (-.f32 1 maxCos)) (pow.f32 (-.f32 1 maxCos) 2)))) (*.f32 (-.f32 maxCos 1) ux))))
(+.f32 1 (fma.f32 (-.f32 (neg.f32 (pow.f32 (-.f32 1 maxCos) 3)) (fma.f32 (+.f32 maxCos -1) (pow.f32 (-.f32 1 maxCos) 2) (neg.f32 (*.f32 (-.f32 1 maxCos) (fma.f32 (+.f32 maxCos -1) (-.f32 1 maxCos) (pow.f32 (-.f32 1 maxCos) 2)))))) (pow.f32 ux 3) (fma.f32 -1 (*.f32 (*.f32 ux ux) (fma.f32 (+.f32 maxCos -1) (-.f32 1 maxCos) (pow.f32 (-.f32 1 maxCos) 2))) (*.f32 (+.f32 maxCos -1) ux))))
(+.f32 (fma.f32 (-.f32 (neg.f32 (pow.f32 (-.f32 1 maxCos) 3)) (-.f32 (*.f32 (+.f32 maxCos -1) (pow.f32 (-.f32 1 maxCos) 2)) (*.f32 (-.f32 1 maxCos) (*.f32 (-.f32 1 maxCos) (+.f32 (-.f32 1 maxCos) (+.f32 maxCos -1)))))) (pow.f32 ux 3) (*.f32 (*.f32 (-.f32 1 maxCos) (+.f32 (-.f32 1 maxCos) (+.f32 maxCos -1))) (*.f32 (neg.f32 ux) ux))) (fma.f32 (+.f32 maxCos -1) ux 1))
(+.f32 (*.f32 (*.f32 ux ux) (-.f32 (*.f32 (-.f32 (-.f32 (pow.f32 (-.f32 1 maxCos) 3) (pow.f32 (-.f32 1 maxCos) 3)) (-.f32 (pow.f32 (-.f32 1 maxCos) 3) (pow.f32 (-.f32 1 maxCos) 3))) ux) (*.f32 (-.f32 1 maxCos) (+.f32 (-.f32 1 maxCos) (+.f32 maxCos -1))))) (fma.f32 (+.f32 maxCos -1) ux 1))
(*.f32 -1 (*.f32 (-.f32 1 maxCos) ux))
(neg.f32 (*.f32 ux (-.f32 1 maxCos)))
(*.f32 ux (neg.f32 (-.f32 1 maxCos)))
(*.f32 (-.f32 1 maxCos) (neg.f32 ux))
(+.f32 1 (*.f32 -1 (*.f32 (-.f32 1 maxCos) ux)))
(+.f32 1 (neg.f32 (*.f32 ux (-.f32 1 maxCos))))
(-.f32 1 (*.f32 ux (-.f32 1 maxCos)))
(+.f32 1 (*.f32 -1 (*.f32 (-.f32 1 maxCos) ux)))
(+.f32 1 (neg.f32 (*.f32 ux (-.f32 1 maxCos))))
(-.f32 1 (*.f32 ux (-.f32 1 maxCos)))
(+.f32 1 (*.f32 -1 (*.f32 (-.f32 1 maxCos) ux)))
(+.f32 1 (neg.f32 (*.f32 ux (-.f32 1 maxCos))))
(-.f32 1 (*.f32 ux (-.f32 1 maxCos)))
(*.f32 -1 (*.f32 (-.f32 1 maxCos) ux))
(neg.f32 (*.f32 ux (-.f32 1 maxCos)))
(*.f32 ux (neg.f32 (-.f32 1 maxCos)))
(*.f32 (-.f32 1 maxCos) (neg.f32 ux))
(+.f32 1 (*.f32 -1 (*.f32 (-.f32 1 maxCos) ux)))
(+.f32 1 (neg.f32 (*.f32 ux (-.f32 1 maxCos))))
(-.f32 1 (*.f32 ux (-.f32 1 maxCos)))
(+.f32 1 (*.f32 -1 (*.f32 (-.f32 1 maxCos) ux)))
(+.f32 1 (neg.f32 (*.f32 ux (-.f32 1 maxCos))))
(-.f32 1 (*.f32 ux (-.f32 1 maxCos)))
(+.f32 1 (*.f32 -1 (*.f32 (-.f32 1 maxCos) ux)))
(+.f32 1 (neg.f32 (*.f32 ux (-.f32 1 maxCos))))
(-.f32 1 (*.f32 ux (-.f32 1 maxCos)))
(/.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))
(/.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 (*.f32 ux ux) (+.f32 1 ux)))
(/.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 1 (fma.f32 ux ux ux)))
(-.f32 (+.f32 (/.f32 1 (+.f32 (pow.f32 ux 2) (+.f32 1 ux))) (*.f32 (-.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 -2 (pow.f32 ux 3)) (*.f32 -1 (pow.f32 ux 3))) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2))) maxCos)) (/.f32 (pow.f32 ux 3) (+.f32 (pow.f32 ux 2) (+.f32 1 ux))))
(+.f32 (/.f32 1 (+.f32 (*.f32 ux ux) (+.f32 1 ux))) (-.f32 (*.f32 maxCos (-.f32 (neg.f32 (/.f32 (*.f32 (pow.f32 ux 3) -3) (+.f32 (*.f32 ux ux) (+.f32 1 ux)))) (/.f32 (*.f32 (-.f32 1 (pow.f32 ux 3)) (fma.f32 -1 ux (*.f32 (*.f32 ux ux) -2))) (pow.f32 (+.f32 (*.f32 ux ux) (+.f32 1 ux)) 2)))) (/.f32 (pow.f32 ux 3) (+.f32 (*.f32 ux ux) (+.f32 1 ux)))))
(+.f32 (*.f32 maxCos (-.f32 (/.f32 (*.f32 (neg.f32 (pow.f32 ux 3)) -3) (+.f32 1 (fma.f32 ux ux ux))) (*.f32 (/.f32 (-.f32 (*.f32 (*.f32 ux ux) -2) ux) (pow.f32 (+.f32 1 (fma.f32 ux ux ux)) 2)) (-.f32 1 (pow.f32 ux 3))))) (/.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 1 (fma.f32 ux ux ux))))
(+.f32 (*.f32 maxCos (-.f32 (/.f32 3 (/.f32 (+.f32 1 (fma.f32 ux ux ux)) (pow.f32 ux 3))) (/.f32 (-.f32 1 (pow.f32 ux 3)) (/.f32 (pow.f32 (+.f32 1 (fma.f32 ux ux ux)) 2) (-.f32 (*.f32 (*.f32 ux ux) -2) ux))))) (/.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 1 (fma.f32 ux ux ux))))
(-.f32 (+.f32 (/.f32 1 (+.f32 (pow.f32 ux 2) (+.f32 1 ux))) (+.f32 (*.f32 (-.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 -2 (pow.f32 ux 3)) (*.f32 -1 (pow.f32 ux 3))) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2))) maxCos) (*.f32 (pow.f32 maxCos 2) (-.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (+.f32 (/.f32 (*.f32 (pow.f32 ux 2) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2)) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 -2 (pow.f32 ux 3)) (*.f32 -1 (pow.f32 ux 3))) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2)))) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))))))) (/.f32 (pow.f32 ux 3) (+.f32 (pow.f32 ux 2) (+.f32 1 ux))))
(+.f32 (/.f32 1 (+.f32 (*.f32 ux ux) (+.f32 1 ux))) (-.f32 (fma.f32 (-.f32 (neg.f32 (/.f32 (*.f32 (pow.f32 ux 3) -3) (+.f32 (*.f32 ux ux) (+.f32 1 ux)))) (/.f32 (*.f32 (-.f32 1 (pow.f32 ux 3)) (fma.f32 -1 ux (*.f32 (*.f32 ux ux) -2))) (pow.f32 (+.f32 (*.f32 ux ux) (+.f32 1 ux)) 2))) maxCos (*.f32 (*.f32 maxCos maxCos) (-.f32 (neg.f32 (/.f32 (*.f32 3 (pow.f32 ux 3)) (+.f32 (*.f32 ux ux) (+.f32 1 ux)))) (+.f32 (/.f32 (*.f32 ux ux) (/.f32 (pow.f32 (+.f32 (*.f32 ux ux) (+.f32 1 ux)) 2) (-.f32 1 (pow.f32 ux 3)))) (/.f32 (*.f32 (fma.f32 -1 ux (*.f32 (*.f32 ux ux) -2)) (-.f32 (neg.f32 (/.f32 (*.f32 (pow.f32 ux 3) -3) (+.f32 (*.f32 ux ux) (+.f32 1 ux)))) (/.f32 (*.f32 (-.f32 1 (pow.f32 ux 3)) (fma.f32 -1 ux (*.f32 (*.f32 ux ux) -2))) (pow.f32 (+.f32 (*.f32 ux ux) (+.f32 1 ux)) 2)))) (+.f32 (*.f32 ux ux) (+.f32 1 ux))))))) (/.f32 (pow.f32 ux 3) (+.f32 (*.f32 ux ux) (+.f32 1 ux)))))
(+.f32 (fma.f32 maxCos (-.f32 (/.f32 (*.f32 (neg.f32 (pow.f32 ux 3)) -3) (+.f32 1 (fma.f32 ux ux ux))) (*.f32 (/.f32 (-.f32 (*.f32 (*.f32 ux ux) -2) ux) (pow.f32 (+.f32 1 (fma.f32 ux ux ux)) 2)) (-.f32 1 (pow.f32 ux 3)))) (*.f32 (*.f32 maxCos maxCos) (-.f32 (/.f32 (pow.f32 ux 3) (/.f32 (+.f32 1 (fma.f32 ux ux ux)) -3)) (+.f32 (*.f32 (/.f32 (*.f32 ux ux) (pow.f32 (+.f32 1 (fma.f32 ux ux ux)) 2)) (-.f32 1 (pow.f32 ux 3))) (*.f32 (/.f32 (-.f32 (*.f32 (*.f32 ux ux) -2) ux) (+.f32 1 (fma.f32 ux ux ux))) (-.f32 (/.f32 (*.f32 (neg.f32 (pow.f32 ux 3)) -3) (+.f32 1 (fma.f32 ux ux ux))) (*.f32 (/.f32 (-.f32 (*.f32 (*.f32 ux ux) -2) ux) (pow.f32 (+.f32 1 (fma.f32 ux ux ux)) 2)) (-.f32 1 (pow.f32 ux 3))))))))) (/.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 1 (fma.f32 ux ux ux))))
(+.f32 (*.f32 maxCos (+.f32 (-.f32 (/.f32 3 (/.f32 (+.f32 1 (fma.f32 ux ux ux)) (pow.f32 ux 3))) (/.f32 (-.f32 1 (pow.f32 ux 3)) (/.f32 (pow.f32 (+.f32 1 (fma.f32 ux ux ux)) 2) (-.f32 (*.f32 (*.f32 ux ux) -2) ux)))) (*.f32 (-.f32 (-.f32 (/.f32 (pow.f32 ux 3) (/.f32 (+.f32 1 (fma.f32 ux ux ux)) -3)) (*.f32 (/.f32 (*.f32 ux ux) (pow.f32 (+.f32 1 (fma.f32 ux ux ux)) 2)) (-.f32 1 (pow.f32 ux 3)))) (*.f32 (/.f32 (-.f32 (*.f32 (*.f32 ux ux) -2) ux) (+.f32 1 (fma.f32 ux ux ux))) (-.f32 (/.f32 3 (/.f32 (+.f32 1 (fma.f32 ux ux ux)) (pow.f32 ux 3))) (/.f32 (-.f32 1 (pow.f32 ux 3)) (/.f32 (pow.f32 (+.f32 1 (fma.f32 ux ux ux)) 2) (-.f32 (*.f32 (*.f32 ux ux) -2) ux)))))) maxCos))) (/.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 1 (fma.f32 ux ux ux))))
(-.f32 (+.f32 (/.f32 1 (+.f32 (pow.f32 ux 2) (+.f32 1 ux))) (+.f32 (*.f32 (pow.f32 maxCos 3) (-.f32 (/.f32 (pow.f32 ux 3) (+.f32 (pow.f32 ux 2) (+.f32 1 ux))) (+.f32 (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (+.f32 (/.f32 (*.f32 (pow.f32 ux 2) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2)) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 -2 (pow.f32 ux 3)) (*.f32 -1 (pow.f32 ux 3))) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2)))) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))))) (+.f32 (pow.f32 ux 2) (+.f32 1 ux))) (/.f32 (*.f32 (-.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 -2 (pow.f32 ux 3)) (*.f32 -1 (pow.f32 ux 3))) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2))) (pow.f32 ux 2)) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))))) (+.f32 (*.f32 (-.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 -2 (pow.f32 ux 3)) (*.f32 -1 (pow.f32 ux 3))) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2))) maxCos) (*.f32 (pow.f32 maxCos 2) (-.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (+.f32 (/.f32 (*.f32 (pow.f32 ux 2) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2)) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 -2 (pow.f32 ux 3)) (*.f32 -1 (pow.f32 ux 3))) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2)))) (+.f32 (pow.f32 ux 2) (+.f32 1 ux))))))))) (/.f32 (pow.f32 ux 3) (+.f32 (pow.f32 ux 2) (+.f32 1 ux))))
(-.f32 (+.f32 (/.f32 1 (+.f32 (*.f32 ux ux) (+.f32 1 ux))) (fma.f32 (pow.f32 maxCos 3) (-.f32 (/.f32 (pow.f32 ux 3) (+.f32 (*.f32 ux ux) (+.f32 1 ux))) (+.f32 (/.f32 (fma.f32 -1 ux (*.f32 (*.f32 ux ux) -2)) (/.f32 (+.f32 (*.f32 ux ux) (+.f32 1 ux)) (-.f32 (neg.f32 (/.f32 (*.f32 3 (pow.f32 ux 3)) (+.f32 (*.f32 ux ux) (+.f32 1 ux)))) (+.f32 (/.f32 (*.f32 ux ux) (/.f32 (pow.f32 (+.f32 (*.f32 ux ux) (+.f32 1 ux)) 2) (-.f32 1 (pow.f32 ux 3)))) (/.f32 (*.f32 (fma.f32 -1 ux (*.f32 (*.f32 ux ux) -2)) (-.f32 (neg.f32 (/.f32 (*.f32 (pow.f32 ux 3) -3) (+.f32 (*.f32 ux ux) (+.f32 1 ux)))) (/.f32 (*.f32 (-.f32 1 (pow.f32 ux 3)) (fma.f32 -1 ux (*.f32 (*.f32 ux ux) -2))) (pow.f32 (+.f32 (*.f32 ux ux) (+.f32 1 ux)) 2)))) (+.f32 (*.f32 ux ux) (+.f32 1 ux))))))) (/.f32 (-.f32 (neg.f32 (/.f32 (*.f32 (pow.f32 ux 3) -3) (+.f32 (*.f32 ux ux) (+.f32 1 ux)))) (/.f32 (*.f32 (-.f32 1 (pow.f32 ux 3)) (fma.f32 -1 ux (*.f32 (*.f32 ux ux) -2))) (pow.f32 (+.f32 (*.f32 ux ux) (+.f32 1 ux)) 2))) (/.f32 (+.f32 (*.f32 ux ux) (+.f32 1 ux)) (*.f32 ux ux))))) (fma.f32 (-.f32 (neg.f32 (/.f32 (*.f32 (pow.f32 ux 3) -3) (+.f32 (*.f32 ux ux) (+.f32 1 ux)))) (/.f32 (*.f32 (-.f32 1 (pow.f32 ux 3)) (fma.f32 -1 ux (*.f32 (*.f32 ux ux) -2))) (pow.f32 (+.f32 (*.f32 ux ux) (+.f32 1 ux)) 2))) maxCos (*.f32 (*.f32 maxCos maxCos) (-.f32 (neg.f32 (/.f32 (*.f32 3 (pow.f32 ux 3)) (+.f32 (*.f32 ux ux) (+.f32 1 ux)))) (+.f32 (/.f32 (*.f32 ux ux) (/.f32 (pow.f32 (+.f32 (*.f32 ux ux) (+.f32 1 ux)) 2) (-.f32 1 (pow.f32 ux 3)))) (/.f32 (*.f32 (fma.f32 -1 ux (*.f32 (*.f32 ux ux) -2)) (-.f32 (neg.f32 (/.f32 (*.f32 (pow.f32 ux 3) -3) (+.f32 (*.f32 ux ux) (+.f32 1 ux)))) (/.f32 (*.f32 (-.f32 1 (pow.f32 ux 3)) (fma.f32 -1 ux (*.f32 (*.f32 ux ux) -2))) (pow.f32 (+.f32 (*.f32 ux ux) (+.f32 1 ux)) 2)))) (+.f32 (*.f32 ux ux) (+.f32 1 ux))))))))) (/.f32 (pow.f32 ux 3) (+.f32 (*.f32 ux ux) (+.f32 1 ux))))
(+.f32 (fma.f32 (pow.f32 maxCos 3) (-.f32 (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux))) (+.f32 (*.f32 (/.f32 (-.f32 (*.f32 (*.f32 ux ux) -2) ux) (+.f32 1 (fma.f32 ux ux ux))) (-.f32 (/.f32 (pow.f32 ux 3) (/.f32 (+.f32 1 (fma.f32 ux ux ux)) -3)) (+.f32 (*.f32 (/.f32 (*.f32 ux ux) (pow.f32 (+.f32 1 (fma.f32 ux ux ux)) 2)) (-.f32 1 (pow.f32 ux 3))) (*.f32 (/.f32 (-.f32 (*.f32 (*.f32 ux ux) -2) ux) (+.f32 1 (fma.f32 ux ux ux))) (-.f32 (/.f32 (*.f32 (neg.f32 (pow.f32 ux 3)) -3) (+.f32 1 (fma.f32 ux ux ux))) (*.f32 (/.f32 (-.f32 (*.f32 (*.f32 ux ux) -2) ux) (pow.f32 (+.f32 1 (fma.f32 ux ux ux)) 2)) (-.f32 1 (pow.f32 ux 3)))))))) (*.f32 (/.f32 (-.f32 (/.f32 (*.f32 (neg.f32 (pow.f32 ux 3)) -3) (+.f32 1 (fma.f32 ux ux ux))) (*.f32 (/.f32 (-.f32 (*.f32 (*.f32 ux ux) -2) ux) (pow.f32 (+.f32 1 (fma.f32 ux ux ux)) 2)) (-.f32 1 (pow.f32 ux 3)))) (+.f32 1 (fma.f32 ux ux ux))) (*.f32 ux ux)))) (fma.f32 maxCos (-.f32 (/.f32 (*.f32 (neg.f32 (pow.f32 ux 3)) -3) (+.f32 1 (fma.f32 ux ux ux))) (*.f32 (/.f32 (-.f32 (*.f32 (*.f32 ux ux) -2) ux) (pow.f32 (+.f32 1 (fma.f32 ux ux ux)) 2)) (-.f32 1 (pow.f32 ux 3)))) (*.f32 (*.f32 maxCos maxCos) (-.f32 (/.f32 (pow.f32 ux 3) (/.f32 (+.f32 1 (fma.f32 ux ux ux)) -3)) (+.f32 (*.f32 (/.f32 (*.f32 ux ux) (pow.f32 (+.f32 1 (fma.f32 ux ux ux)) 2)) (-.f32 1 (pow.f32 ux 3))) (*.f32 (/.f32 (-.f32 (*.f32 (*.f32 ux ux) -2) ux) (+.f32 1 (fma.f32 ux ux ux))) (-.f32 (/.f32 (*.f32 (neg.f32 (pow.f32 ux 3)) -3) (+.f32 1 (fma.f32 ux ux ux))) (*.f32 (/.f32 (-.f32 (*.f32 (*.f32 ux ux) -2) ux) (pow.f32 (+.f32 1 (fma.f32 ux ux ux)) 2)) (-.f32 1 (pow.f32 ux 3)))))))))) (/.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 1 (fma.f32 ux ux ux))))
(+.f32 (fma.f32 (pow.f32 maxCos 3) (-.f32 (-.f32 (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux))) (*.f32 (/.f32 (-.f32 (/.f32 3 (/.f32 (+.f32 1 (fma.f32 ux ux ux)) (pow.f32 ux 3))) (/.f32 (-.f32 1 (pow.f32 ux 3)) (/.f32 (pow.f32 (+.f32 1 (fma.f32 ux ux ux)) 2) (-.f32 (*.f32 (*.f32 ux ux) -2) ux)))) (+.f32 1 (fma.f32 ux ux ux))) (*.f32 ux ux))) (*.f32 (/.f32 (-.f32 (*.f32 (*.f32 ux ux) -2) ux) (+.f32 1 (fma.f32 ux ux ux))) (-.f32 (-.f32 (/.f32 (pow.f32 ux 3) (/.f32 (+.f32 1 (fma.f32 ux ux ux)) -3)) (*.f32 (/.f32 (*.f32 ux ux) (pow.f32 (+.f32 1 (fma.f32 ux ux ux)) 2)) (-.f32 1 (pow.f32 ux 3)))) (*.f32 (/.f32 (-.f32 (*.f32 (*.f32 ux ux) -2) ux) (+.f32 1 (fma.f32 ux ux ux))) (-.f32 (/.f32 3 (/.f32 (+.f32 1 (fma.f32 ux ux ux)) (pow.f32 ux 3))) (/.f32 (-.f32 1 (pow.f32 ux 3)) (/.f32 (pow.f32 (+.f32 1 (fma.f32 ux ux ux)) 2) (-.f32 (*.f32 (*.f32 ux ux) -2) ux)))))))) (*.f32 maxCos (+.f32 (-.f32 (/.f32 3 (/.f32 (+.f32 1 (fma.f32 ux ux ux)) (pow.f32 ux 3))) (/.f32 (-.f32 1 (pow.f32 ux 3)) (/.f32 (pow.f32 (+.f32 1 (fma.f32 ux ux ux)) 2) (-.f32 (*.f32 (*.f32 ux ux) -2) ux)))) (*.f32 (-.f32 (-.f32 (/.f32 (pow.f32 ux 3) (/.f32 (+.f32 1 (fma.f32 ux ux ux)) -3)) (*.f32 (/.f32 (*.f32 ux ux) (pow.f32 (+.f32 1 (fma.f32 ux ux ux)) 2)) (-.f32 1 (pow.f32 ux 3)))) (*.f32 (/.f32 (-.f32 (*.f32 (*.f32 ux ux) -2) ux) (+.f32 1 (fma.f32 ux ux ux))) (-.f32 (/.f32 3 (/.f32 (+.f32 1 (fma.f32 ux ux ux)) (pow.f32 ux 3))) (/.f32 (-.f32 1 (pow.f32 ux 3)) (/.f32 (pow.f32 (+.f32 1 (fma.f32 ux ux ux)) 2) (-.f32 (*.f32 (*.f32 ux ux) -2) ux)))))) maxCos)))) (/.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 1 (fma.f32 ux ux ux))))
(*.f32 maxCos ux)
(-.f32 (+.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 ux 2))) (+.f32 1 (*.f32 maxCos ux))) (*.f32 -2 ux))
(+.f32 (+.f32 (fma.f32 -1 (/.f32 (*.f32 3 (pow.f32 ux 3)) (*.f32 ux ux)) 1) (*.f32 maxCos ux)) (*.f32 2 ux))
(+.f32 (/.f32 (pow.f32 ux 3) (/.f32 (*.f32 ux ux) -3)) (+.f32 (fma.f32 maxCos ux 1) (*.f32 ux 2)))
(+.f32 (fma.f32 maxCos ux 1) (fma.f32 (/.f32 (pow.f32 ux 3) ux) (/.f32 -3 ux) (*.f32 ux 2)))
(-.f32 (+.f32 1 (+.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 -2 (pow.f32 ux 3)) (*.f32 -1 (pow.f32 ux 3))) (*.f32 maxCos (pow.f32 ux 2)))) (+.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 ux 2))) (*.f32 maxCos ux)))) (+.f32 (/.f32 ux maxCos) (+.f32 (/.f32 1 (*.f32 maxCos ux)) (+.f32 (/.f32 1 maxCos) (+.f32 (*.f32 -2 ux) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 (+.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 ux 2))) 1) (*.f32 -2 ux))) (*.f32 maxCos (pow.f32 ux 2))))))))
(+.f32 1 (-.f32 (fma.f32 -1 (/.f32 (*.f32 (pow.f32 ux 3) -3) (*.f32 maxCos (*.f32 ux ux))) (fma.f32 -1 (/.f32 (*.f32 3 (pow.f32 ux 3)) (*.f32 ux ux)) (*.f32 maxCos ux))) (+.f32 (/.f32 ux maxCos) (+.f32 (/.f32 1 (*.f32 maxCos ux)) (+.f32 (/.f32 1 maxCos) (fma.f32 -2 ux (*.f32 (/.f32 (fma.f32 -1 ux (*.f32 (*.f32 ux ux) -2)) maxCos) (/.f32 (+.f32 (fma.f32 -1 (/.f32 (*.f32 3 (pow.f32 ux 3)) (*.f32 ux ux)) 1) (*.f32 2 ux)) (*.f32 ux ux)))))))))
(-.f32 (-.f32 (+.f32 1 (-.f32 (-.f32 (fma.f32 maxCos ux (/.f32 (pow.f32 ux 3) (/.f32 (*.f32 ux ux) -3))) (/.f32 (/.f32 (pow.f32 ux 3) (/.f32 maxCos -3)) (*.f32 ux ux))) (/.f32 ux maxCos))) (+.f32 (/.f32 1 (*.f32 maxCos ux)) (/.f32 1 maxCos))) (fma.f32 ux -2 (*.f32 (/.f32 (-.f32 (*.f32 (*.f32 ux ux) -2) ux) maxCos) (/.f32 (+.f32 1 (-.f32 (/.f32 (pow.f32 ux 3) (/.f32 (*.f32 ux ux) -3)) (*.f32 ux -2))) (*.f32 ux ux)))))
(-.f32 (-.f32 (+.f32 (*.f32 (+.f32 (/.f32 -1 maxCos) 1) (*.f32 (/.f32 (pow.f32 ux 3) ux) (/.f32 -3 ux))) (fma.f32 maxCos ux 1)) (/.f32 ux maxCos)) (+.f32 (fma.f32 ux -2 (*.f32 (/.f32 (-.f32 (*.f32 (*.f32 ux ux) -2) ux) (*.f32 ux ux)) (/.f32 (+.f32 1 (fma.f32 (/.f32 (pow.f32 ux 3) ux) (/.f32 -3 ux) (*.f32 ux 2))) maxCos))) (+.f32 (/.f32 1 (*.f32 maxCos ux)) (/.f32 1 maxCos))))
(-.f32 (+.f32 1 (+.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 -2 (pow.f32 ux 3)) (*.f32 -1 (pow.f32 ux 3))) (*.f32 maxCos (pow.f32 ux 2)))) (+.f32 (/.f32 1 (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))) (+.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 ux 2))) (*.f32 maxCos ux))))) (+.f32 (/.f32 ux maxCos) (+.f32 (/.f32 1 (*.f32 maxCos ux)) (+.f32 (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 -2 (pow.f32 ux 3)) (*.f32 -1 (pow.f32 ux 3))) (pow.f32 ux 2))) (+.f32 1 (+.f32 (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 (+.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 ux 2))) 1) (*.f32 -2 ux))) (pow.f32 ux 2)) (+.f32 ux (/.f32 1 ux)))))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))) (+.f32 (/.f32 1 maxCos) (+.f32 (/.f32 (*.f32 (-.f32 (+.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 ux 2))) 1) (*.f32 -2 ux)) (+.f32 (pow.f32 ux 2) (+.f32 1 ux))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))) (+.f32 (/.f32 ux (pow.f32 maxCos 2)) (+.f32 (*.f32 -2 ux) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 (+.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 ux 2))) 1) (*.f32 -2 ux))) (*.f32 maxCos (pow.f32 ux 2)))))))))))
(+.f32 1 (-.f32 (fma.f32 -1 (/.f32 (*.f32 (pow.f32 ux 3) -3) (*.f32 maxCos (*.f32 ux ux))) (+.f32 (fma.f32 -1 (/.f32 (*.f32 3 (pow.f32 ux 3)) (*.f32 ux ux)) (*.f32 maxCos ux)) (/.f32 (/.f32 1 (*.f32 maxCos maxCos)) (*.f32 ux ux)))) (+.f32 (/.f32 ux maxCos) (+.f32 (/.f32 1 (*.f32 maxCos ux)) (+.f32 (*.f32 (/.f32 (fma.f32 -1 ux (*.f32 (*.f32 ux ux) -2)) (*.f32 maxCos maxCos)) (/.f32 (-.f32 (neg.f32 (/.f32 (*.f32 (pow.f32 ux 3) -3) (*.f32 ux ux))) (+.f32 1 (+.f32 (/.f32 (fma.f32 -1 ux (*.f32 (*.f32 ux ux) -2)) (/.f32 (*.f32 ux ux) (+.f32 (fma.f32 -1 (/.f32 (*.f32 3 (pow.f32 ux 3)) (*.f32 ux ux)) 1) (*.f32 2 ux)))) (+.f32 ux (/.f32 1 ux))))) (*.f32 ux ux))) (+.f32 (/.f32 1 maxCos) (+.f32 (*.f32 (/.f32 (+.f32 (fma.f32 -1 (/.f32 (*.f32 3 (pow.f32 ux 3)) (*.f32 ux ux)) 1) (*.f32 2 ux)) (*.f32 maxCos maxCos)) (/.f32 (+.f32 (*.f32 ux ux) (+.f32 1 ux)) (*.f32 ux ux))) (+.f32 (fma.f32 -2 ux (*.f32 (/.f32 (fma.f32 -1 ux (*.f32 (*.f32 ux ux) -2)) maxCos) (/.f32 (+.f32 (fma.f32 -1 (/.f32 (*.f32 3 (pow.f32 ux 3)) (*.f32 ux ux)) 1) (*.f32 2 ux)) (*.f32 ux ux)))) (/.f32 ux (*.f32 maxCos maxCos))))))))))
(+.f32 1 (-.f32 (-.f32 (-.f32 (+.f32 (/.f32 (pow.f32 ux 3) (/.f32 (*.f32 ux ux) -3)) (fma.f32 maxCos ux (/.f32 1 (*.f32 (*.f32 maxCos ux) (*.f32 maxCos ux))))) (/.f32 (/.f32 (pow.f32 ux 3) (/.f32 maxCos -3)) (*.f32 ux ux))) (/.f32 ux maxCos)) (+.f32 (/.f32 1 (*.f32 maxCos ux)) (+.f32 (+.f32 (fma.f32 ux -2 (*.f32 (/.f32 (-.f32 (*.f32 (*.f32 ux ux) -2) ux) maxCos) (/.f32 (+.f32 1 (-.f32 (/.f32 (pow.f32 ux 3) (/.f32 (*.f32 ux ux) -3)) (*.f32 ux -2))) (*.f32 ux ux)))) (fma.f32 (/.f32 (+.f32 1 (-.f32 (/.f32 (pow.f32 ux 3) (/.f32 (*.f32 ux ux) -3)) (*.f32 ux -2))) (*.f32 maxCos maxCos)) (/.f32 (+.f32 1 (fma.f32 ux ux ux)) (*.f32 ux ux)) (/.f32 (/.f32 ux maxCos) maxCos))) (fma.f32 (/.f32 (-.f32 (*.f32 (*.f32 ux ux) -2) ux) (*.f32 maxCos maxCos)) (/.f32 (-.f32 (-.f32 (fma.f32 -1 (/.f32 (pow.f32 ux 3) (/.f32 (*.f32 ux ux) -3)) -1) (+.f32 ux (/.f32 1 ux))) (*.f32 (/.f32 (-.f32 (*.f32 (*.f32 ux ux) -2) ux) (*.f32 ux ux)) (+.f32 1 (-.f32 (/.f32 (pow.f32 ux 3) (/.f32 (*.f32 ux ux) -3)) (*.f32 ux -2))))) (*.f32 ux ux)) (/.f32 1 maxCos))))))
(-.f32 (-.f32 (+.f32 (+.f32 (*.f32 (+.f32 (/.f32 -1 maxCos) 1) (*.f32 (/.f32 (pow.f32 ux 3) ux) (/.f32 -3 ux))) (fma.f32 maxCos ux 1)) (/.f32 (/.f32 1 (*.f32 maxCos maxCos)) (*.f32 ux ux))) (/.f32 ux maxCos)) (+.f32 (fma.f32 (/.f32 (-.f32 (*.f32 (*.f32 ux ux) -2) ux) (*.f32 maxCos maxCos)) (/.f32 (-.f32 (-.f32 (+.f32 (*.f32 (/.f32 (pow.f32 ux 3) ux) (/.f32 3 ux)) -1) (+.f32 ux (/.f32 1 ux))) (*.f32 (/.f32 (-.f32 (*.f32 (*.f32 ux ux) -2) ux) (*.f32 ux ux)) (+.f32 1 (fma.f32 (/.f32 (pow.f32 ux 3) ux) (/.f32 -3 ux) (*.f32 ux 2))))) (*.f32 ux ux)) (/.f32 1 maxCos)) (+.f32 (+.f32 (+.f32 (*.f32 ux -2) (/.f32 ux (*.f32 maxCos maxCos))) (*.f32 (/.f32 (+.f32 1 (fma.f32 (/.f32 (pow.f32 ux 3) ux) (/.f32 -3 ux) (*.f32 ux 2))) (*.f32 ux ux)) (+.f32 (/.f32 (-.f32 (*.f32 (*.f32 ux ux) -2) ux) maxCos) (/.f32 (+.f32 1 (fma.f32 ux ux ux)) (*.f32 maxCos maxCos))))) (/.f32 1 (*.f32 maxCos ux)))))
(*.f32 maxCos ux)
(-.f32 (+.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 ux 2))) (*.f32 maxCos ux)) (*.f32 -1 (/.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) ux)))
(-.f32 (fma.f32 -1 (/.f32 (*.f32 3 (pow.f32 ux 3)) (*.f32 ux ux)) (*.f32 maxCos ux)) (neg.f32 (/.f32 (+.f32 ux (*.f32 2 (*.f32 ux ux))) ux)))
(+.f32 (/.f32 (pow.f32 ux 3) (/.f32 (*.f32 ux ux) -3)) (fma.f32 maxCos ux (/.f32 (fma.f32 2 (*.f32 ux ux) ux) ux)))
(+.f32 (fma.f32 maxCos ux (*.f32 (/.f32 (pow.f32 ux 3) ux) (/.f32 -3 ux))) (/.f32 (fma.f32 2 (*.f32 ux ux) ux) ux))
(-.f32 (+.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 ux 2))) (+.f32 (*.f32 -1 (/.f32 (-.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 ux 2))) (+.f32 (/.f32 (*.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) (-.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 ux 2))) (*.f32 -1 (/.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) ux)))) (pow.f32 ux 2)) (*.f32 -1 (/.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) ux)))) maxCos)) (*.f32 maxCos ux))) (*.f32 -1 (/.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) ux)))
(-.f32 (fma.f32 -1 (/.f32 (*.f32 3 (pow.f32 ux 3)) (*.f32 ux ux)) (fma.f32 -1 (/.f32 (-.f32 (neg.f32 (/.f32 (*.f32 3 (pow.f32 ux 3)) (*.f32 ux ux))) (+.f32 (/.f32 (*.f32 (+.f32 ux (*.f32 2 (*.f32 ux ux))) (*.f32 -1 (-.f32 (/.f32 (*.f32 3 (pow.f32 ux 3)) (*.f32 ux ux)) (/.f32 (+.f32 ux (*.f32 2 (*.f32 ux ux))) ux)))) (*.f32 ux ux)) (neg.f32 (/.f32 (+.f32 (*.f32 ux ux) (+.f32 1 ux)) ux)))) maxCos) (*.f32 maxCos ux))) (neg.f32 (/.f32 (+.f32 ux (*.f32 2 (*.f32 ux ux))) ux)))
(+.f32 (-.f32 (/.f32 (pow.f32 ux 3) (/.f32 (*.f32 ux ux) -3)) (/.f32 (-.f32 (/.f32 (pow.f32 ux 3) (/.f32 (*.f32 ux ux) -3)) (-.f32 (*.f32 (/.f32 (fma.f32 2 (*.f32 ux ux) ux) ux) (/.f32 (+.f32 (/.f32 (pow.f32 ux 3) (/.f32 (*.f32 ux ux) -3)) (/.f32 (fma.f32 2 (*.f32 ux ux) ux) ux)) ux)) (/.f32 (+.f32 1 (fma.f32 ux ux ux)) ux))) maxCos)) (fma.f32 maxCos ux (/.f32 (fma.f32 2 (*.f32 ux ux) ux) ux)))
(+.f32 (-.f32 (*.f32 maxCos ux) (/.f32 (-.f32 (fma.f32 (/.f32 (pow.f32 ux 3) ux) (/.f32 -3 ux) (/.f32 (+.f32 1 (fma.f32 ux ux ux)) ux)) (*.f32 (/.f32 (fma.f32 2 (*.f32 ux ux) ux) (*.f32 ux ux)) (fma.f32 (/.f32 (pow.f32 ux 3) ux) (/.f32 -3 ux) (/.f32 (fma.f32 2 (*.f32 ux ux) ux) ux)))) maxCos)) (fma.f32 (/.f32 (pow.f32 ux 3) ux) (/.f32 -3 ux) (/.f32 (fma.f32 2 (*.f32 ux ux) ux) ux)))
(-.f32 (+.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 ux 2))) (+.f32 (*.f32 -1 (/.f32 (-.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 ux 2))) (+.f32 (/.f32 (*.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) (-.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 ux 2))) (*.f32 -1 (/.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) ux)))) (pow.f32 ux 2)) (*.f32 -1 (/.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) ux)))) maxCos)) (+.f32 (/.f32 1 (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))) (*.f32 maxCos ux)))) (+.f32 (/.f32 (*.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) (-.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 ux 2))) (+.f32 (/.f32 (*.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) (-.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 ux 2))) (*.f32 -1 (/.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) ux)))) (pow.f32 ux 2)) (*.f32 -1 (/.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) ux))))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))) (+.f32 (/.f32 ux (pow.f32 maxCos 2)) (+.f32 (/.f32 (*.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) (-.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 ux 2))) (*.f32 -1 (/.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) ux)))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))) (*.f32 -1 (/.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) ux))))))
(-.f32 (fma.f32 -1 (/.f32 (*.f32 3 (pow.f32 ux 3)) (*.f32 ux ux)) (fma.f32 -1 (/.f32 (-.f32 (neg.f32 (/.f32 (*.f32 3 (pow.f32 ux 3)) (*.f32 ux ux))) (+.f32 (/.f32 (*.f32 (+.f32 ux (*.f32 2 (*.f32 ux ux))) (*.f32 -1 (-.f32 (/.f32 (*.f32 3 (pow.f32 ux 3)) (*.f32 ux ux)) (/.f32 (+.f32 ux (*.f32 2 (*.f32 ux ux))) ux)))) (*.f32 ux ux)) (neg.f32 (/.f32 (+.f32 (*.f32 ux ux) (+.f32 1 ux)) ux)))) maxCos) (+.f32 (*.f32 maxCos ux) (/.f32 (/.f32 1 (*.f32 maxCos maxCos)) (*.f32 ux ux))))) (+.f32 (*.f32 (/.f32 (+.f32 ux (*.f32 2 (*.f32 ux ux))) (*.f32 maxCos maxCos)) (/.f32 (-.f32 (neg.f32 (/.f32 (*.f32 3 (pow.f32 ux 3)) (*.f32 ux ux))) (+.f32 (/.f32 (*.f32 (+.f32 ux (*.f32 2 (*.f32 ux ux))) (*.f32 -1 (-.f32 (/.f32 (*.f32 3 (pow.f32 ux 3)) (*.f32 ux ux)) (/.f32 (+.f32 ux (*.f32 2 (*.f32 ux ux))) ux)))) (*.f32 ux ux)) (neg.f32 (/.f32 (+.f32 (*.f32 ux ux) (+.f32 1 ux)) ux)))) (*.f32 ux ux))) (+.f32 (/.f32 ux (*.f32 maxCos maxCos)) (+.f32 (neg.f32 (/.f32 (+.f32 ux (*.f32 2 (*.f32 ux ux))) ux)) (*.f32 (/.f32 (+.f32 (*.f32 ux ux) (+.f32 1 ux)) (*.f32 maxCos maxCos)) (/.f32 (*.f32 -1 (-.f32 (/.f32 (*.f32 3 (pow.f32 ux 3)) (*.f32 ux ux)) (/.f32 (+.f32 ux (*.f32 2 (*.f32 ux ux))) ux))) (*.f32 ux ux)))))))
(+.f32 (/.f32 (pow.f32 ux 3) (/.f32 (*.f32 ux ux) -3)) (-.f32 (-.f32 (fma.f32 maxCos ux (/.f32 1 (*.f32 (*.f32 maxCos ux) (*.f32 maxCos ux)))) (/.f32 (-.f32 (/.f32 (pow.f32 ux 3) (/.f32 (*.f32 ux ux) -3)) (-.f32 (*.f32 (/.f32 (fma.f32 2 (*.f32 ux ux) ux) ux) (/.f32 (+.f32 (/.f32 (pow.f32 ux 3) (/.f32 (*.f32 ux ux) -3)) (/.f32 (fma.f32 2 (*.f32 ux ux) ux) ux)) ux)) (/.f32 (+.f32 1 (fma.f32 ux ux ux)) ux))) maxCos)) (+.f32 (-.f32 (*.f32 (/.f32 (+.f32 1 (fma.f32 ux ux ux)) (*.f32 maxCos maxCos)) (/.f32 (+.f32 (/.f32 (pow.f32 ux 3) (/.f32 (*.f32 ux ux) -3)) (/.f32 (fma.f32 2 (*.f32 ux ux) ux) ux)) (*.f32 ux ux))) (/.f32 (fma.f32 2 (*.f32 ux ux) ux) ux)) (fma.f32 (/.f32 (fma.f32 2 (*.f32 ux ux) ux) (*.f32 maxCos maxCos)) (/.f32 (-.f32 (/.f32 (pow.f32 ux 3) (/.f32 (*.f32 ux ux) -3)) (-.f32 (*.f32 (/.f32 (fma.f32 2 (*.f32 ux ux) ux) ux) (/.f32 (+.f32 (/.f32 (pow.f32 ux 3) (/.f32 (*.f32 ux ux) -3)) (/.f32 (fma.f32 2 (*.f32 ux ux) ux) ux)) ux)) (/.f32 (+.f32 1 (fma.f32 ux ux ux)) ux))) (*.f32 ux ux)) (/.f32 (/.f32 ux maxCos) maxCos)))))
(+.f32 (fma.f32 (/.f32 (pow.f32 ux 3) ux) (/.f32 -3 ux) (/.f32 (+.f32 (*.f32 (/.f32 (pow.f32 ux 3) ux) (/.f32 3 ux)) (fma.f32 (/.f32 (fma.f32 2 (*.f32 ux ux) ux) (*.f32 ux ux)) (fma.f32 (/.f32 (pow.f32 ux 3) ux) (/.f32 -3 ux) (/.f32 (fma.f32 2 (*.f32 ux ux) ux) ux)) (/.f32 (+.f32 -1 (neg.f32 (fma.f32 ux ux ux))) ux))) maxCos)) (-.f32 (fma.f32 maxCos ux (/.f32 (/.f32 1 (*.f32 maxCos maxCos)) (*.f32 ux ux))) (+.f32 (fma.f32 (/.f32 (+.f32 1 (fma.f32 ux ux ux)) (*.f32 ux ux)) (/.f32 (fma.f32 (/.f32 (pow.f32 ux 3) ux) (/.f32 -3 ux) (/.f32 (fma.f32 2 (*.f32 ux ux) ux) ux)) (*.f32 maxCos maxCos)) (/.f32 (neg.f32 (fma.f32 2 (*.f32 ux ux) ux)) ux)) (fma.f32 (/.f32 (fma.f32 2 (*.f32 ux ux) ux) (*.f32 maxCos maxCos)) (/.f32 (-.f32 (fma.f32 (/.f32 (pow.f32 ux 3) ux) (/.f32 -3 ux) (/.f32 (+.f32 1 (fma.f32 ux ux ux)) ux)) (*.f32 (/.f32 (fma.f32 2 (*.f32 ux ux) ux) (*.f32 ux ux)) (fma.f32 (/.f32 (pow.f32 ux 3) ux) (/.f32 -3 ux) (/.f32 (fma.f32 2 (*.f32 ux ux) ux) ux)))) (*.f32 ux ux)) (/.f32 ux (*.f32 maxCos maxCos))))))
(*.f32 (pow.f32 (-.f32 1 maxCos) 3) (pow.f32 ux 3))
(*.f32 (pow.f32 ux 3) (pow.f32 (-.f32 1 maxCos) 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 3) (pow.f32 ux 3))
(*.f32 (pow.f32 ux 3) (pow.f32 (-.f32 1 maxCos) 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 3) (pow.f32 ux 3))
(*.f32 (pow.f32 ux 3) (pow.f32 (-.f32 1 maxCos) 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 3) (pow.f32 ux 3))
(*.f32 (pow.f32 ux 3) (pow.f32 (-.f32 1 maxCos) 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 3) (pow.f32 ux 3))
(*.f32 (pow.f32 ux 3) (pow.f32 (-.f32 1 maxCos) 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 3) (pow.f32 ux 3))
(*.f32 (pow.f32 ux 3) (pow.f32 (-.f32 1 maxCos) 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 3) (pow.f32 ux 3))
(*.f32 (pow.f32 ux 3) (pow.f32 (-.f32 1 maxCos) 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 3) (pow.f32 ux 3))
(*.f32 (pow.f32 ux 3) (pow.f32 (-.f32 1 maxCos) 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 3) (pow.f32 ux 3))
(*.f32 (pow.f32 ux 3) (pow.f32 (-.f32 1 maxCos) 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 3) (pow.f32 ux 3))
(*.f32 (pow.f32 ux 3) (pow.f32 (-.f32 1 maxCos) 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 3) (pow.f32 ux 3))
(*.f32 (pow.f32 ux 3) (pow.f32 (-.f32 1 maxCos) 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 3) (pow.f32 ux 3))
(*.f32 (pow.f32 ux 3) (pow.f32 (-.f32 1 maxCos) 3))
(pow.f32 ux 3)
(+.f32 (*.f32 maxCos (+.f32 (*.f32 -2 (pow.f32 ux 3)) (*.f32 -1 (pow.f32 ux 3)))) (pow.f32 ux 3))
(fma.f32 maxCos (*.f32 (pow.f32 ux 3) -3) (pow.f32 ux 3))
(+.f32 (*.f32 maxCos (+.f32 (*.f32 -2 (pow.f32 ux 3)) (*.f32 -1 (pow.f32 ux 3)))) (+.f32 (*.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 maxCos 2)) (pow.f32 ux 3)))
(fma.f32 maxCos (*.f32 (pow.f32 ux 3) -3) (fma.f32 (*.f32 3 (pow.f32 ux 3)) (*.f32 maxCos maxCos) (pow.f32 ux 3)))
(fma.f32 maxCos (*.f32 (pow.f32 ux 3) -3) (fma.f32 (*.f32 maxCos maxCos) (*.f32 3 (pow.f32 ux 3)) (pow.f32 ux 3)))
(+.f32 (pow.f32 ux 3) (*.f32 (*.f32 maxCos (*.f32 3 (pow.f32 ux 3))) (+.f32 maxCos -1)))
(+.f32 (*.f32 maxCos (+.f32 (*.f32 -2 (pow.f32 ux 3)) (*.f32 -1 (pow.f32 ux 3)))) (+.f32 (*.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 maxCos 2)) (+.f32 (*.f32 -1 (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3))) (pow.f32 ux 3))))
(fma.f32 maxCos (*.f32 (pow.f32 ux 3) -3) (fma.f32 (*.f32 3 (pow.f32 ux 3)) (*.f32 maxCos maxCos) (fma.f32 -1 (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3)) (pow.f32 ux 3))))
(fma.f32 maxCos (*.f32 (pow.f32 ux 3) -3) (fma.f32 (*.f32 maxCos maxCos) (*.f32 3 (pow.f32 ux 3)) (*.f32 (+.f32 (neg.f32 (pow.f32 maxCos 3)) 1) (pow.f32 ux 3))))
(+.f32 (*.f32 (+.f32 (neg.f32 (pow.f32 maxCos 3)) 1) (pow.f32 ux 3)) (*.f32 (*.f32 maxCos (*.f32 3 (pow.f32 ux 3))) (+.f32 maxCos -1)))
(*.f32 -1 (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3)))
(neg.f32 (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3)))
(*.f32 (pow.f32 ux 3) (neg.f32 (pow.f32 maxCos 3)))
(+.f32 (*.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 maxCos 2)) (*.f32 -1 (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3))))
(fma.f32 (*.f32 3 (pow.f32 ux 3)) (*.f32 maxCos maxCos) (neg.f32 (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3))))
(-.f32 (*.f32 maxCos (*.f32 maxCos (*.f32 3 (pow.f32 ux 3)))) (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3)))
(*.f32 (pow.f32 ux 3) (-.f32 (*.f32 (*.f32 maxCos maxCos) 3) (pow.f32 maxCos 3)))
(+.f32 (*.f32 maxCos (+.f32 (*.f32 -2 (pow.f32 ux 3)) (*.f32 -1 (pow.f32 ux 3)))) (+.f32 (*.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 maxCos 2)) (*.f32 -1 (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3)))))
(fma.f32 maxCos (*.f32 (pow.f32 ux 3) -3) (fma.f32 (*.f32 3 (pow.f32 ux 3)) (*.f32 maxCos maxCos) (neg.f32 (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3)))))
(-.f32 (fma.f32 maxCos (*.f32 (pow.f32 ux 3) -3) (*.f32 maxCos (*.f32 maxCos (*.f32 3 (pow.f32 ux 3))))) (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3)))
(-.f32 (*.f32 (*.f32 maxCos (*.f32 3 (pow.f32 ux 3))) (+.f32 maxCos -1)) (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3)))
(+.f32 (*.f32 maxCos (+.f32 (*.f32 -2 (pow.f32 ux 3)) (*.f32 -1 (pow.f32 ux 3)))) (+.f32 (*.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 maxCos 2)) (+.f32 (*.f32 -1 (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3))) (pow.f32 ux 3))))
(fma.f32 maxCos (*.f32 (pow.f32 ux 3) -3) (fma.f32 (*.f32 3 (pow.f32 ux 3)) (*.f32 maxCos maxCos) (fma.f32 -1 (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3)) (pow.f32 ux 3))))
(fma.f32 maxCos (*.f32 (pow.f32 ux 3) -3) (fma.f32 (*.f32 maxCos maxCos) (*.f32 3 (pow.f32 ux 3)) (*.f32 (+.f32 (neg.f32 (pow.f32 maxCos 3)) 1) (pow.f32 ux 3))))
(+.f32 (*.f32 (+.f32 (neg.f32 (pow.f32 maxCos 3)) 1) (pow.f32 ux 3)) (*.f32 (*.f32 maxCos (*.f32 3 (pow.f32 ux 3))) (+.f32 maxCos -1)))
(*.f32 -1 (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3)))
(neg.f32 (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3)))
(*.f32 (pow.f32 ux 3) (neg.f32 (pow.f32 maxCos 3)))
(+.f32 (*.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 maxCos 2)) (*.f32 -1 (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3))))
(fma.f32 (*.f32 3 (pow.f32 ux 3)) (*.f32 maxCos maxCos) (neg.f32 (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3))))
(-.f32 (*.f32 maxCos (*.f32 maxCos (*.f32 3 (pow.f32 ux 3)))) (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3)))
(*.f32 (pow.f32 ux 3) (-.f32 (*.f32 (*.f32 maxCos maxCos) 3) (pow.f32 maxCos 3)))
(+.f32 (*.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 maxCos 2)) (+.f32 (*.f32 -1 (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3))) (*.f32 -1 (*.f32 maxCos (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3))))))
(fma.f32 maxCos (*.f32 (pow.f32 ux 3) -3) (fma.f32 (*.f32 3 (pow.f32 ux 3)) (*.f32 maxCos maxCos) (neg.f32 (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3)))))
(-.f32 (fma.f32 maxCos (*.f32 (pow.f32 ux 3) -3) (*.f32 maxCos (*.f32 maxCos (*.f32 3 (pow.f32 ux 3))))) (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3)))
(-.f32 (*.f32 (*.f32 maxCos (*.f32 3 (pow.f32 ux 3))) (+.f32 maxCos -1)) (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3)))
(+.f32 (*.f32 (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)) (pow.f32 maxCos 2)) (+.f32 (*.f32 -1 (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3))) (+.f32 (pow.f32 ux 3) (*.f32 -1 (*.f32 maxCos (+.f32 (*.f32 2 (pow.f32 ux 3)) (pow.f32 ux 3)))))))
(fma.f32 maxCos (*.f32 (pow.f32 ux 3) -3) (fma.f32 (*.f32 3 (pow.f32 ux 3)) (*.f32 maxCos maxCos) (fma.f32 -1 (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3)) (pow.f32 ux 3))))
(fma.f32 maxCos (*.f32 (pow.f32 ux 3) -3) (fma.f32 (*.f32 maxCos maxCos) (*.f32 3 (pow.f32 ux 3)) (*.f32 (+.f32 (neg.f32 (pow.f32 maxCos 3)) 1) (pow.f32 ux 3))))
(+.f32 (*.f32 (+.f32 (neg.f32 (pow.f32 maxCos 3)) 1) (pow.f32 ux 3)) (*.f32 (*.f32 maxCos (*.f32 3 (pow.f32 ux 3))) (+.f32 maxCos -1)))
(*.f32 (-.f32 1 maxCos) ux)
(*.f32 ux (-.f32 1 maxCos))
(+.f32 (*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2)) (*.f32 (-.f32 1 maxCos) ux))
(fma.f32 (-.f32 1 maxCos) ux (*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 maxCos) 2)))
(fma.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 maxCos) 2) (*.f32 ux (-.f32 1 maxCos)))
(*.f32 ux (+.f32 (-.f32 1 maxCos) (*.f32 (pow.f32 (-.f32 1 maxCos) 2) ux)))
(+.f32 (*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2)) (*.f32 (-.f32 1 maxCos) ux))
(fma.f32 (-.f32 1 maxCos) ux (*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 maxCos) 2)))
(fma.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 maxCos) 2) (*.f32 ux (-.f32 1 maxCos)))
(*.f32 ux (+.f32 (-.f32 1 maxCos) (*.f32 (pow.f32 (-.f32 1 maxCos) 2) ux)))
(+.f32 (*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2)) (*.f32 (-.f32 1 maxCos) ux))
(fma.f32 (-.f32 1 maxCos) ux (*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 maxCos) 2)))
(fma.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 maxCos) 2) (*.f32 ux (-.f32 1 maxCos)))
(*.f32 ux (+.f32 (-.f32 1 maxCos) (*.f32 (pow.f32 (-.f32 1 maxCos) 2) ux)))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 maxCos) 2))
(*.f32 ux (*.f32 ux (pow.f32 (-.f32 1 maxCos) 2)))
(+.f32 (*.f32 (-.f32 1 maxCos) ux) (*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2)))
(fma.f32 (-.f32 1 maxCos) ux (*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 maxCos) 2)))
(fma.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 maxCos) 2) (*.f32 ux (-.f32 1 maxCos)))
(*.f32 ux (+.f32 (-.f32 1 maxCos) (*.f32 (pow.f32 (-.f32 1 maxCos) 2) ux)))
(+.f32 (*.f32 (-.f32 1 maxCos) ux) (*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2)))
(fma.f32 (-.f32 1 maxCos) ux (*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 maxCos) 2)))
(fma.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 maxCos) 2) (*.f32 ux (-.f32 1 maxCos)))
(*.f32 ux (+.f32 (-.f32 1 maxCos) (*.f32 (pow.f32 (-.f32 1 maxCos) 2) ux)))
(+.f32 (*.f32 (-.f32 1 maxCos) ux) (*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2)))
(fma.f32 (-.f32 1 maxCos) ux (*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 maxCos) 2)))
(fma.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 maxCos) 2) (*.f32 ux (-.f32 1 maxCos)))
(*.f32 ux (+.f32 (-.f32 1 maxCos) (*.f32 (pow.f32 (-.f32 1 maxCos) 2) ux)))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 maxCos) 2))
(*.f32 ux (*.f32 ux (pow.f32 (-.f32 1 maxCos) 2)))
(+.f32 (*.f32 (-.f32 1 maxCos) ux) (*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2)))
(fma.f32 (-.f32 1 maxCos) ux (*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 maxCos) 2)))
(fma.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 maxCos) 2) (*.f32 ux (-.f32 1 maxCos)))
(*.f32 ux (+.f32 (-.f32 1 maxCos) (*.f32 (pow.f32 (-.f32 1 maxCos) 2) ux)))
(+.f32 (*.f32 (-.f32 1 maxCos) ux) (*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2)))
(fma.f32 (-.f32 1 maxCos) ux (*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 maxCos) 2)))
(fma.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 maxCos) 2) (*.f32 ux (-.f32 1 maxCos)))
(*.f32 ux (+.f32 (-.f32 1 maxCos) (*.f32 (pow.f32 (-.f32 1 maxCos) 2) ux)))
(+.f32 (*.f32 (-.f32 1 maxCos) ux) (*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2)))
(fma.f32 (-.f32 1 maxCos) ux (*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 maxCos) 2)))
(fma.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 maxCos) 2) (*.f32 ux (-.f32 1 maxCos)))
(*.f32 ux (+.f32 (-.f32 1 maxCos) (*.f32 (pow.f32 (-.f32 1 maxCos) 2) ux)))
(+.f32 (pow.f32 ux 2) ux)
(+.f32 ux (*.f32 ux ux))
(fma.f32 ux ux ux)
(+.f32 (pow.f32 ux 2) (+.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) maxCos) ux))
(+.f32 (*.f32 ux ux) (fma.f32 (fma.f32 -1 ux (*.f32 (*.f32 ux ux) -2)) maxCos ux))
(fma.f32 ux ux (fma.f32 maxCos (-.f32 (*.f32 (*.f32 ux ux) -2) ux) ux))
(+.f32 (pow.f32 ux 2) (+.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) maxCos) (+.f32 ux (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))))
(+.f32 (*.f32 ux ux) (+.f32 (fma.f32 (fma.f32 -1 ux (*.f32 (*.f32 ux ux) -2)) maxCos ux) (*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))))
(fma.f32 ux ux (fma.f32 maxCos (-.f32 (*.f32 (*.f32 ux ux) -2) ux) (fma.f32 (*.f32 ux ux) (*.f32 maxCos maxCos) ux)))
(+.f32 (pow.f32 ux 2) (+.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) maxCos) (+.f32 ux (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))))
(+.f32 (*.f32 ux ux) (+.f32 (fma.f32 (fma.f32 -1 ux (*.f32 (*.f32 ux ux) -2)) maxCos ux) (*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))))
(fma.f32 ux ux (fma.f32 maxCos (-.f32 (*.f32 (*.f32 ux ux) -2) ux) (fma.f32 (*.f32 ux ux) (*.f32 maxCos maxCos) ux)))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))
(*.f32 (*.f32 maxCos ux) (*.f32 maxCos ux))
(*.f32 ux (*.f32 ux (*.f32 maxCos maxCos)))
(+.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) maxCos) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))
(fma.f32 (fma.f32 -1 ux (*.f32 (*.f32 ux ux) -2)) maxCos (*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos)))
(fma.f32 maxCos (-.f32 (*.f32 (*.f32 ux ux) -2) ux) (*.f32 (*.f32 maxCos ux) (*.f32 maxCos ux)))
(*.f32 maxCos (+.f32 (*.f32 maxCos (*.f32 ux ux)) (-.f32 (*.f32 (*.f32 ux ux) -2) ux)))
(+.f32 (pow.f32 ux 2) (+.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) maxCos) (+.f32 ux (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))))
(+.f32 (*.f32 ux ux) (+.f32 (fma.f32 (fma.f32 -1 ux (*.f32 (*.f32 ux ux) -2)) maxCos ux) (*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))))
(fma.f32 ux ux (fma.f32 maxCos (-.f32 (*.f32 (*.f32 ux ux) -2) ux) (fma.f32 (*.f32 ux ux) (*.f32 maxCos maxCos) ux)))
(+.f32 (pow.f32 ux 2) (+.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) maxCos) (+.f32 ux (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))))
(+.f32 (*.f32 ux ux) (+.f32 (fma.f32 (fma.f32 -1 ux (*.f32 (*.f32 ux ux) -2)) maxCos ux) (*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))))
(fma.f32 ux ux (fma.f32 maxCos (-.f32 (*.f32 (*.f32 ux ux) -2) ux) (fma.f32 (*.f32 ux ux) (*.f32 maxCos maxCos) ux)))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))
(*.f32 (*.f32 maxCos ux) (*.f32 maxCos ux))
(*.f32 ux (*.f32 ux (*.f32 maxCos maxCos)))
(+.f32 (*.f32 -1 (*.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) maxCos)) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))
(fma.f32 -1 (*.f32 maxCos (+.f32 ux (*.f32 2 (*.f32 ux ux)))) (*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos)))
(fma.f32 (neg.f32 (fma.f32 2 (*.f32 ux ux) ux)) maxCos (*.f32 (*.f32 maxCos ux) (*.f32 maxCos ux)))
(*.f32 maxCos (-.f32 (*.f32 maxCos (*.f32 ux ux)) (fma.f32 2 (*.f32 ux ux) ux)))
(+.f32 (pow.f32 ux 2) (+.f32 (*.f32 -1 (*.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) maxCos)) (+.f32 ux (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))))
(+.f32 (*.f32 ux ux) (fma.f32 -1 (*.f32 maxCos (+.f32 ux (*.f32 2 (*.f32 ux ux)))) (+.f32 ux (*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos)))))
(fma.f32 ux ux (fma.f32 (neg.f32 (fma.f32 2 (*.f32 ux ux) ux)) maxCos (fma.f32 (*.f32 ux ux) (*.f32 maxCos maxCos) ux)))
(fma.f32 ux ux (+.f32 ux (*.f32 maxCos (-.f32 (*.f32 maxCos (*.f32 ux ux)) (fma.f32 2 (*.f32 ux ux) ux)))))
(+.f32 (pow.f32 ux 2) (+.f32 (*.f32 -1 (*.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) maxCos)) (+.f32 ux (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))))
(+.f32 (*.f32 ux ux) (fma.f32 -1 (*.f32 maxCos (+.f32 ux (*.f32 2 (*.f32 ux ux)))) (+.f32 ux (*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos)))))
(fma.f32 ux ux (fma.f32 (neg.f32 (fma.f32 2 (*.f32 ux ux) ux)) maxCos (fma.f32 (*.f32 ux ux) (*.f32 maxCos maxCos) ux)))
(fma.f32 ux ux (+.f32 ux (*.f32 maxCos (-.f32 (*.f32 maxCos (*.f32 ux ux)) (fma.f32 2 (*.f32 ux ux) ux)))))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 maxCos) 2))
(*.f32 ux (*.f32 ux (pow.f32 (-.f32 1 maxCos) 2)))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 maxCos) 2))
(*.f32 ux (*.f32 ux (pow.f32 (-.f32 1 maxCos) 2)))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 maxCos) 2))
(*.f32 ux (*.f32 ux (pow.f32 (-.f32 1 maxCos) 2)))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 maxCos) 2))
(*.f32 ux (*.f32 ux (pow.f32 (-.f32 1 maxCos) 2)))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 maxCos) 2))
(*.f32 ux (*.f32 ux (pow.f32 (-.f32 1 maxCos) 2)))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 maxCos) 2))
(*.f32 ux (*.f32 ux (pow.f32 (-.f32 1 maxCos) 2)))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 maxCos) 2))
(*.f32 ux (*.f32 ux (pow.f32 (-.f32 1 maxCos) 2)))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 maxCos) 2))
(*.f32 ux (*.f32 ux (pow.f32 (-.f32 1 maxCos) 2)))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 maxCos) 2))
(*.f32 ux (*.f32 ux (pow.f32 (-.f32 1 maxCos) 2)))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 maxCos) 2))
(*.f32 ux (*.f32 ux (pow.f32 (-.f32 1 maxCos) 2)))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 maxCos) 2))
(*.f32 ux (*.f32 ux (pow.f32 (-.f32 1 maxCos) 2)))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 maxCos) 2))
(*.f32 ux (*.f32 ux (pow.f32 (-.f32 1 maxCos) 2)))
(pow.f32 ux 2)
(*.f32 ux ux)
(+.f32 (pow.f32 ux 2) (*.f32 -2 (*.f32 maxCos (pow.f32 ux 2))))
(+.f32 (*.f32 ux ux) (*.f32 -2 (*.f32 maxCos (*.f32 ux ux))))
(*.f32 (+.f32 (*.f32 maxCos -2) 1) (*.f32 ux ux))
(*.f32 ux (+.f32 ux (*.f32 (*.f32 maxCos -2) ux)))
(+.f32 (pow.f32 ux 2) (+.f32 (*.f32 -2 (*.f32 maxCos (pow.f32 ux 2))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))))
(+.f32 (*.f32 ux ux) (fma.f32 -2 (*.f32 maxCos (*.f32 ux ux)) (*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))))
(fma.f32 ux ux (*.f32 (*.f32 ux ux) (+.f32 (*.f32 maxCos -2) (*.f32 maxCos maxCos))))
(fma.f32 ux ux (*.f32 (*.f32 maxCos (*.f32 ux ux)) (+.f32 -2 maxCos)))
(+.f32 (pow.f32 ux 2) (+.f32 (*.f32 -2 (*.f32 maxCos (pow.f32 ux 2))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))))
(+.f32 (*.f32 ux ux) (fma.f32 -2 (*.f32 maxCos (*.f32 ux ux)) (*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))))
(fma.f32 ux ux (*.f32 (*.f32 ux ux) (+.f32 (*.f32 maxCos -2) (*.f32 maxCos maxCos))))
(fma.f32 ux ux (*.f32 (*.f32 maxCos (*.f32 ux ux)) (+.f32 -2 maxCos)))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))
(*.f32 (*.f32 maxCos ux) (*.f32 maxCos ux))
(*.f32 ux (*.f32 ux (*.f32 maxCos maxCos)))
(+.f32 (*.f32 -2 (*.f32 maxCos (pow.f32 ux 2))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))
(fma.f32 -2 (*.f32 maxCos (*.f32 ux ux)) (*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos)))
(*.f32 (*.f32 ux ux) (+.f32 (*.f32 maxCos -2) (*.f32 maxCos maxCos)))
(*.f32 (*.f32 maxCos (*.f32 ux ux)) (+.f32 -2 maxCos))
(+.f32 (pow.f32 ux 2) (+.f32 (*.f32 -2 (*.f32 maxCos (pow.f32 ux 2))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))))
(+.f32 (*.f32 ux ux) (fma.f32 -2 (*.f32 maxCos (*.f32 ux ux)) (*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))))
(fma.f32 ux ux (*.f32 (*.f32 ux ux) (+.f32 (*.f32 maxCos -2) (*.f32 maxCos maxCos))))
(fma.f32 ux ux (*.f32 (*.f32 maxCos (*.f32 ux ux)) (+.f32 -2 maxCos)))
(+.f32 (pow.f32 ux 2) (+.f32 (*.f32 -2 (*.f32 maxCos (pow.f32 ux 2))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))))
(+.f32 (*.f32 ux ux) (fma.f32 -2 (*.f32 maxCos (*.f32 ux ux)) (*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))))
(fma.f32 ux ux (*.f32 (*.f32 ux ux) (+.f32 (*.f32 maxCos -2) (*.f32 maxCos maxCos))))
(fma.f32 ux ux (*.f32 (*.f32 maxCos (*.f32 ux ux)) (+.f32 -2 maxCos)))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))
(*.f32 (*.f32 maxCos ux) (*.f32 maxCos ux))
(*.f32 ux (*.f32 ux (*.f32 maxCos maxCos)))
(+.f32 (*.f32 -2 (*.f32 maxCos (pow.f32 ux 2))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))
(fma.f32 -2 (*.f32 maxCos (*.f32 ux ux)) (*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos)))
(*.f32 (*.f32 ux ux) (+.f32 (*.f32 maxCos -2) (*.f32 maxCos maxCos)))
(*.f32 (*.f32 maxCos (*.f32 ux ux)) (+.f32 -2 maxCos))
(+.f32 (pow.f32 ux 2) (+.f32 (*.f32 -2 (*.f32 maxCos (pow.f32 ux 2))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))))
(+.f32 (*.f32 ux ux) (fma.f32 -2 (*.f32 maxCos (*.f32 ux ux)) (*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))))
(fma.f32 ux ux (*.f32 (*.f32 ux ux) (+.f32 (*.f32 maxCos -2) (*.f32 maxCos maxCos))))
(fma.f32 ux ux (*.f32 (*.f32 maxCos (*.f32 ux ux)) (+.f32 -2 maxCos)))
(+.f32 (pow.f32 ux 2) (+.f32 (*.f32 -2 (*.f32 maxCos (pow.f32 ux 2))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))))
(+.f32 (*.f32 ux ux) (fma.f32 -2 (*.f32 maxCos (*.f32 ux ux)) (*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))))
(fma.f32 ux ux (*.f32 (*.f32 ux ux) (+.f32 (*.f32 maxCos -2) (*.f32 maxCos maxCos))))
(fma.f32 ux ux (*.f32 (*.f32 maxCos (*.f32 ux ux)) (+.f32 -2 maxCos)))

localize67.0ms (1.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(pow.f32 (*.f32 ux maxCos) 2)
0.2b
(/.f32 (-.f32 1 (+.f32 ux (*.f32 ux maxCos))) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))
0.4b
(/.f32 1 (/.f32 (-.f32 1 (+.f32 ux (*.f32 ux maxCos))) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))))
0.5b
(pow.f32 (-.f32 1 ux) 2)
Compiler

Compiled 86 to 46 computations (46.5% saved)

series19.0ms (0.3%)

Counts
4 → 84
Calls

21 calls:

TimeVariablePointExpression
3.0ms
ux
@-inf
(pow.f32 (*.f32 ux maxCos) 2)
2.0ms
maxCos
@0
(pow.f32 (*.f32 ux maxCos) 2)
1.0ms
ux
@-inf
(/.f32 1 (/.f32 (-.f32 1 (+.f32 ux (*.f32 ux maxCos))) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))))
1.0ms
ux
@inf
(/.f32 (-.f32 1 (+.f32 ux (*.f32 ux maxCos))) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))
1.0ms
ux
@-inf
(/.f32 (-.f32 1 (+.f32 ux (*.f32 ux maxCos))) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))

rewrite94.0ms (1.6%)

Algorithm
batch-egg-rewrite
Rules
747×fma-def_binary32
336×fma-neg_binary32
285×expm1-udef_binary32
283×log1p-udef_binary32
240×log-div_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01473
133766
2502466
Stop Event
node limit
Counts
4 → 158
Calls
Call 1
Inputs
(pow.f32 (-.f32 1 ux) 2)
(/.f32 1 (/.f32 (-.f32 1 (+.f32 ux (*.f32 ux maxCos))) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))))
(/.f32 (-.f32 1 (+.f32 ux (*.f32 ux maxCos))) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))
(pow.f32 (*.f32 ux maxCos) 2)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (-.f32 1 ux) (*.f32 (neg.f32 ux) (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (-.f32 1 ux) (*.f32 (-.f32 1 ux) (neg.f32 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (pow.f32 (-.f32 1 ux) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (pow.f32 (-.f32 1 ux) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 1 ux) (-.f32 1 ux))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (-.f32 1 ux) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (-.f32 1 ux)) 2) (cbrt.f32 (pow.f32 (-.f32 1 ux) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (-.f32 1 ux)) 2) (*.f32 (cbrt.f32 (-.f32 1 ux)) (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (pow.f32 (-.f32 1 ux) 4)) (pow.f32 (cbrt.f32 (-.f32 1 ux)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (-.f32 1 ux)) (*.f32 (sqrt.f32 (-.f32 1 ux)) (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (-.f32 1 ux) (sqrt.f32 (-.f32 1 ux))) (sqrt.f32 (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (-.f32 1 ux) (pow.f32 (cbrt.f32 (-.f32 1 ux)) 2)) (cbrt.f32 (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 1 (pow.f32 ux 3)) (-.f32 1 (pow.f32 ux 3))) (*.f32 (+.f32 1 (fma.f32 ux ux ux)) (+.f32 1 (fma.f32 ux ux ux))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 1 (*.f32 ux ux)) (-.f32 1 (*.f32 ux ux))) (*.f32 (+.f32 1 ux) (+.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 1 (*.f32 ux ux)) (-.f32 1 (pow.f32 ux 3))) (*.f32 (+.f32 1 ux) (+.f32 1 (fma.f32 ux ux ux))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 1 (pow.f32 ux 3)) (-.f32 1 (*.f32 ux ux))) (*.f32 (+.f32 1 (fma.f32 ux ux ux)) (+.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 1 (pow.f32 ux 3)) (-.f32 1 ux)) (+.f32 1 (fma.f32 ux ux ux)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 1 (*.f32 ux ux)) (-.f32 1 ux)) (+.f32 1 ux))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 1 ux) (-.f32 1 (pow.f32 ux 3))) (+.f32 1 (fma.f32 ux ux ux)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 1 ux) (-.f32 1 (*.f32 ux ux))) (+.f32 1 ux))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (-.f32 1 ux) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (pow.f32 (-.f32 1 ux) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (pow.f32 (-.f32 1 ux) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (-.f32 1 ux) 6))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (pow.f32 (-.f32 1 ux) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (pow.f32 (-.f32 1 ux) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 2 (log1p.f32 (neg.f32 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 2 (log1p.f32 (neg.f32 ux))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (-.f32 1 ux) (*.f32 (neg.f32 ux) (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (-.f32 1 ux) (*.f32 (-.f32 1 ux) (neg.f32 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (-.f32 1 ux) 1 (*.f32 (neg.f32 ux) (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (-.f32 1 ux) 1 (*.f32 (-.f32 1 ux) (neg.f32 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (-.f32 1 ux)) 2) (cbrt.f32 (-.f32 1 ux)) (*.f32 (neg.f32 ux) (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (-.f32 1 ux)) 2) (cbrt.f32 (-.f32 1 ux)) (*.f32 (-.f32 1 ux) (neg.f32 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (-.f32 1 ux)) (pow.f32 (cbrt.f32 (-.f32 1 ux)) 2) (*.f32 (neg.f32 ux) (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (-.f32 1 ux)) (pow.f32 (cbrt.f32 (-.f32 1 ux)) 2) (*.f32 (-.f32 1 ux) (neg.f32 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (-.f32 1 ux)) (sqrt.f32 (-.f32 1 ux)) (*.f32 (neg.f32 ux) (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (-.f32 1 ux)) (sqrt.f32 (-.f32 1 ux)) (*.f32 (-.f32 1 ux) (neg.f32 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (-.f32 1 (pow.f32 ux 3)) (/.f32 1 (+.f32 1 (fma.f32 ux ux ux))) (*.f32 (neg.f32 ux) (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (-.f32 1 (pow.f32 ux 3)) (/.f32 1 (+.f32 1 (fma.f32 ux ux ux))) (*.f32 (-.f32 1 ux) (neg.f32 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (-.f32 1 (*.f32 ux ux)) (/.f32 1 (+.f32 1 ux)) (*.f32 (neg.f32 ux) (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (-.f32 1 (*.f32 ux ux)) (/.f32 1 (+.f32 1 ux)) (*.f32 (-.f32 1 ux) (neg.f32 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (cbrt.f32 (pow.f32 (-.f32 1 ux) 4))) (sqrt.f32 (pow.f32 (cbrt.f32 (-.f32 1 ux)) 2)) (*.f32 (neg.f32 ux) (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (cbrt.f32 (pow.f32 (-.f32 1 ux) 4))) (sqrt.f32 (pow.f32 (cbrt.f32 (-.f32 1 ux)) 2)) (*.f32 (-.f32 1 ux) (neg.f32 ux)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (pow.f32 (-.f32 1 ux) 2) (/.f32 1 (-.f32 1 (fma.f32 ux maxCos ux)))) (*.f32 (neg.f32 (pow.f32 (*.f32 ux maxCos) 2)) (/.f32 1 (-.f32 1 (fma.f32 ux maxCos ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (/.f32 1 (-.f32 1 (fma.f32 ux maxCos ux))) (pow.f32 (-.f32 1 ux) 2)) (*.f32 (/.f32 1 (-.f32 1 (fma.f32 ux maxCos ux))) (neg.f32 (pow.f32 (*.f32 ux maxCos) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 (pow.f32 (-.f32 1 ux) 2) (-.f32 1 (fma.f32 ux maxCos ux))) (/.f32 (pow.f32 (*.f32 ux maxCos) 2) (-.f32 1 (fma.f32 ux maxCos ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (/.f32 1 (-.f32 1 (fma.f32 ux maxCos ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux)))) (pow.f32 (cbrt.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux)))) 2) (cbrt.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux)))) (sqrt.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 -1 (/.f32 1 (/.f32 (neg.f32 (-.f32 1 (fma.f32 ux maxCos ux))) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (-.f32 1 (fma.f32 ux maxCos ux))) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (-.f32 1 (fma.f32 ux maxCos ux))) (pow.f32 (/.f32 1 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (pow.f32 (cbrt.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) 2) -1) (pow.f32 (cbrt.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (sqrt.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) -1) (pow.f32 (sqrt.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) 2) 1) (/.f32 (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) (-.f32 1 (fma.f32 ux maxCos ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (hypot.f32 (-.f32 1 ux) (sqrt.f32 (neg.f32 (pow.f32 (*.f32 ux maxCos) 2)))) 1) (/.f32 (hypot.f32 (-.f32 1 ux) (sqrt.f32 (neg.f32 (pow.f32 (*.f32 ux maxCos) 2)))) (-.f32 1 (fma.f32 ux maxCos ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (pow.f32 (cbrt.f32 (-.f32 1 (fma.f32 ux maxCos ux))) 2)) (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (cbrt.f32 (-.f32 1 (fma.f32 ux maxCos ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) 2) (pow.f32 (cbrt.f32 (-.f32 1 (fma.f32 ux maxCos ux))) 2)) (/.f32 (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) (cbrt.f32 (-.f32 1 (fma.f32 ux maxCos ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (hypot.f32 (-.f32 1 ux) (sqrt.f32 (neg.f32 (pow.f32 (*.f32 ux maxCos) 2)))) (pow.f32 (cbrt.f32 (-.f32 1 (fma.f32 ux maxCos ux))) 2)) (/.f32 (hypot.f32 (-.f32 1 ux) (sqrt.f32 (neg.f32 (pow.f32 (*.f32 ux maxCos) 2)))) (cbrt.f32 (-.f32 1 (fma.f32 ux maxCos ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (sqrt.f32 (-.f32 1 (fma.f32 ux maxCos ux)))) (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (sqrt.f32 (-.f32 1 (fma.f32 ux maxCos ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) 2) (sqrt.f32 (-.f32 1 (fma.f32 ux maxCos ux)))) (/.f32 (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) (sqrt.f32 (-.f32 1 (fma.f32 ux maxCos ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (hypot.f32 (-.f32 1 ux) (sqrt.f32 (neg.f32 (pow.f32 (*.f32 ux maxCos) 2)))) (sqrt.f32 (-.f32 1 (fma.f32 ux maxCos ux)))) (/.f32 (hypot.f32 (-.f32 1 ux) (sqrt.f32 (neg.f32 (pow.f32 (*.f32 ux maxCos) 2)))) (sqrt.f32 (-.f32 1 (fma.f32 ux maxCos ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (neg.f32 (-.f32 1 (fma.f32 ux maxCos ux)))) (neg.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (pow.f32 (fma.f32 ux maxCos ux) 3))) (fma.f32 (fma.f32 ux maxCos ux) (+.f32 1 (fma.f32 ux maxCos ux)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (pow.f32 (fma.f32 ux maxCos ux) 2))) (+.f32 1 (fma.f32 ux maxCos ux)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (/.f32 1 (-.f32 1 (fma.f32 ux maxCos ux))) 1) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (/.f32 1 (-.f32 1 (fma.f32 ux maxCos ux))) (pow.f32 (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) 2)) (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (/.f32 1 (-.f32 1 (fma.f32 ux maxCos ux))) (hypot.f32 (-.f32 1 ux) (sqrt.f32 (neg.f32 (pow.f32 (*.f32 ux maxCos) 2))))) (hypot.f32 (-.f32 1 ux) (sqrt.f32 (neg.f32 (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (/.f32 (pow.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) 3) (pow.f32 (-.f32 1 (fma.f32 ux maxCos ux)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (-.f32 1 ux) 2) (/.f32 1 (-.f32 1 (fma.f32 ux maxCos ux))) (*.f32 (neg.f32 (pow.f32 (*.f32 ux maxCos) 2)) (/.f32 1 (-.f32 1 (fma.f32 ux maxCos ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (/.f32 1 (-.f32 1 (fma.f32 ux maxCos ux))) (pow.f32 (-.f32 1 ux) 2) (*.f32 (/.f32 1 (-.f32 1 (fma.f32 ux maxCos ux))) (neg.f32 (pow.f32 (*.f32 ux maxCos) 2))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (/.f32 1 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) (neg.f32 (/.f32 (fma.f32 ux maxCos ux) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 1 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) (/.f32 (fma.f32 ux maxCos ux) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 (/.f32 1 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) 1) (/.f32 (/.f32 (fma.f32 ux maxCos ux) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 (-.f32 1 ux) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) (/.f32 (*.f32 ux maxCos) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (/.f32 1 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) (pow.f32 (cbrt.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) 2) (cbrt.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (-.f32 1 (fma.f32 ux maxCos ux))) 2) (*.f32 (cbrt.f32 (-.f32 1 (fma.f32 ux maxCos ux))) (/.f32 1 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) (sqrt.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (-.f32 1 (fma.f32 ux maxCos ux))) (*.f32 (sqrt.f32 (-.f32 1 (fma.f32 ux maxCos ux))) (/.f32 1 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (neg.f32 (-.f32 1 (fma.f32 ux maxCos ux))) (/.f32 1 (neg.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) (-.f32 1 (fma.f32 ux maxCos ux)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (pow.f32 (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) 2)) (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (hypot.f32 (-.f32 1 ux) (sqrt.f32 (neg.f32 (pow.f32 (*.f32 ux maxCos) 2))))) (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (hypot.f32 (-.f32 1 ux) (sqrt.f32 (neg.f32 (pow.f32 (*.f32 ux maxCos) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (-.f32 1 (fma.f32 ux maxCos ux))) 2) 1) (/.f32 (cbrt.f32 (-.f32 1 (fma.f32 ux maxCos ux))) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sqrt.f32 (-.f32 1 (fma.f32 ux maxCos ux))) 1) (/.f32 (sqrt.f32 (-.f32 1 (fma.f32 ux maxCos ux))) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (-.f32 1 (fma.f32 ux maxCos ux))) 2) (pow.f32 (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) 2)) (cbrt.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sqrt.f32 (-.f32 1 (fma.f32 ux maxCos ux))) (pow.f32 (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) 2)) (/.f32 (sqrt.f32 (-.f32 1 (fma.f32 ux maxCos ux))) (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (-.f32 1 (fma.f32 ux maxCos ux))) 2) (hypot.f32 (-.f32 1 ux) (sqrt.f32 (neg.f32 (pow.f32 (*.f32 ux maxCos) 2))))) (/.f32 (cbrt.f32 (-.f32 1 (fma.f32 ux maxCos ux))) (hypot.f32 (-.f32 1 ux) (sqrt.f32 (neg.f32 (pow.f32 (*.f32 ux maxCos) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 6) (pow.f32 (*.f32 ux maxCos) 6))) (+.f32 (pow.f32 (-.f32 1 ux) 4) (+.f32 (pow.f32 (*.f32 ux maxCos) 4) (pow.f32 (*.f32 (-.f32 1 ux) (*.f32 ux maxCos)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 4) (pow.f32 (*.f32 ux maxCos) 4))) (+.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (neg.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (/.f32 (pow.f32 (-.f32 1 (fma.f32 ux maxCos ux)) 3) (pow.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (/.f32 1 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) (neg.f32 (/.f32 (fma.f32 ux maxCos ux) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (cbrt.f32 (/.f32 1 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) (cbrt.f32 (/.f32 1 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))))) (cbrt.f32 (/.f32 1 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) (neg.f32 (/.f32 (fma.f32 ux maxCos ux) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (/.f32 1 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) (sqrt.f32 (/.f32 1 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) (neg.f32 (/.f32 (fma.f32 ux maxCos ux) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (/.f32 1 (-.f32 (pow.f32 (-.f32 1 ux) 6) (pow.f32 (*.f32 ux maxCos) 6))) (+.f32 (pow.f32 (-.f32 1 ux) 4) (+.f32 (pow.f32 (*.f32 ux maxCos) 4) (pow.f32 (*.f32 (-.f32 1 ux) (*.f32 ux maxCos)) 2))) (neg.f32 (/.f32 (fma.f32 ux maxCos ux) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (/.f32 1 (-.f32 (pow.f32 (-.f32 1 ux) 4) (pow.f32 (*.f32 ux maxCos) 4))) (+.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (neg.f32 (/.f32 (fma.f32 ux maxCos ux) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (pow.f32 (*.f32 ux maxCos) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (pow.f32 (*.f32 ux maxCos) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 ux (*.f32 maxCos (*.f32 ux maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 maxCos (*.f32 (*.f32 ux ux) maxCos))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 ux maxCos) (*.f32 ux maxCos))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (*.f32 ux maxCos) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (pow.f32 (*.f32 ux maxCos) 4)) (pow.f32 (cbrt.f32 (*.f32 ux maxCos)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (*.f32 ux maxCos)) 2) (cbrt.f32 (pow.f32 (*.f32 ux maxCos) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (*.f32 ux maxCos)) 2) (*.f32 (cbrt.f32 (*.f32 ux maxCos)) (*.f32 ux maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (*.f32 ux maxCos)) (*.f32 (sqrt.f32 (*.f32 ux maxCos)) (*.f32 ux maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 maxCos maxCos) (*.f32 ux ux))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (*.f32 ux ux) maxCos) maxCos)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (*.f32 ux maxCos) (sqrt.f32 (*.f32 ux maxCos))) (sqrt.f32 (*.f32 ux maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (*.f32 ux maxCos) maxCos) ux)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (*.f32 ux maxCos) (pow.f32 (cbrt.f32 (*.f32 ux maxCos)) 2)) (cbrt.f32 (*.f32 ux maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 ux maxCos) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (pow.f32 (*.f32 ux maxCos) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (pow.f32 (*.f32 ux maxCos) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 ux maxCos) 6))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (pow.f32 (*.f32 ux maxCos) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (pow.f32 (*.f32 ux maxCos) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 2 (log.f32 (*.f32 ux maxCos))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 2 (log.f32 (*.f32 ux maxCos))) 1))))))

simplify73.0ms (1.2%)

Algorithm
egg-herbie
Rules
726×associate-/l*_binary32
421×distribute-rgt-in_binary32
382×distribute-lft-in_binary32
245×cancel-sign-sub-inv_binary32
187×fma-def_binary32
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02232943
17882681
233402613
Stop Event
node limit
Counts
242 → 228
Calls
Call 1
Inputs
1
(+.f32 1 (*.f32 -2 ux))
(+.f32 (pow.f32 ux 2) (+.f32 1 (*.f32 -2 ux)))
(+.f32 (pow.f32 ux 2) (+.f32 1 (*.f32 -2 ux)))
(pow.f32 ux 2)
(+.f32 (pow.f32 ux 2) (*.f32 -2 ux))
(+.f32 (pow.f32 ux 2) (+.f32 1 (*.f32 -2 ux)))
(+.f32 (pow.f32 ux 2) (+.f32 1 (*.f32 -2 ux)))
(pow.f32 ux 2)
(+.f32 (pow.f32 ux 2) (*.f32 -2 ux))
(+.f32 (pow.f32 ux 2) (+.f32 1 (*.f32 -2 ux)))
(+.f32 (pow.f32 ux 2) (+.f32 1 (*.f32 -2 ux)))
1
(+.f32 (*.f32 -1 (*.f32 ux (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))))) 1)
(+.f32 (*.f32 -1 (*.f32 ux (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))))) (+.f32 1 (*.f32 (pow.f32 ux 2) (-.f32 1 (+.f32 (*.f32 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))) (+.f32 1 maxCos)) (pow.f32 maxCos 2))))))
(+.f32 (*.f32 -1 (*.f32 ux (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))))) (+.f32 (*.f32 (pow.f32 ux 3) (*.f32 (-.f32 1 (+.f32 (*.f32 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))) (+.f32 1 maxCos)) (pow.f32 maxCos 2))) (+.f32 1 maxCos))) (+.f32 1 (*.f32 (pow.f32 ux 2) (-.f32 1 (+.f32 (*.f32 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))) (+.f32 1 maxCos)) (pow.f32 maxCos 2)))))))
(*.f32 -1 (/.f32 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux) (+.f32 1 maxCos)))
(-.f32 (+.f32 (*.f32 2 (/.f32 1 (+.f32 1 maxCos))) (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (+.f32 1 maxCos) 2)) (*.f32 -1 (/.f32 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux) (+.f32 1 maxCos))))) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2)))
(-.f32 (+.f32 (*.f32 -1 (/.f32 (+.f32 (/.f32 1 (+.f32 1 maxCos)) (*.f32 -1 (/.f32 (-.f32 (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (+.f32 1 maxCos) 2)) (*.f32 2 (/.f32 1 (+.f32 1 maxCos)))) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2))) (+.f32 1 maxCos)))) ux)) (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (+.f32 1 maxCos) 2)) (+.f32 (*.f32 2 (/.f32 1 (+.f32 1 maxCos))) (*.f32 -1 (/.f32 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux) (+.f32 1 maxCos)))))) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2)))
(-.f32 (+.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 -1 (/.f32 (-.f32 (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (+.f32 1 maxCos) 2)) (*.f32 2 (/.f32 1 (+.f32 1 maxCos)))) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2))) (pow.f32 (+.f32 1 maxCos) 2))) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2))) (pow.f32 ux 2))) (+.f32 (*.f32 -1 (/.f32 (+.f32 (/.f32 1 (+.f32 1 maxCos)) (*.f32 -1 (/.f32 (-.f32 (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (+.f32 1 maxCos) 2)) (*.f32 2 (/.f32 1 (+.f32 1 maxCos)))) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2))) (+.f32 1 maxCos)))) ux)) (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (+.f32 1 maxCos) 2)) (+.f32 (*.f32 2 (/.f32 1 (+.f32 1 maxCos))) (*.f32 -1 (/.f32 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux) (+.f32 1 maxCos))))))) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2)))
(*.f32 -1 (/.f32 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux) (-.f32 1 (*.f32 -1 maxCos))))
(-.f32 (+.f32 (*.f32 2 (/.f32 1 (-.f32 1 (*.f32 -1 maxCos)))) (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 2)) (*.f32 -1 (/.f32 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux) (-.f32 1 (*.f32 -1 maxCos)))))) (/.f32 1 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 2)))
(-.f32 (+.f32 (*.f32 2 (/.f32 1 (-.f32 1 (*.f32 -1 maxCos)))) (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 2)) (+.f32 (*.f32 -1 (/.f32 (-.f32 (+.f32 (/.f32 1 (-.f32 1 (*.f32 -1 maxCos))) (/.f32 1 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 3))) (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 3)) (*.f32 2 (/.f32 1 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 2))))) ux)) (*.f32 -1 (/.f32 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux) (-.f32 1 (*.f32 -1 maxCos))))))) (/.f32 1 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 2)))
(-.f32 (+.f32 (*.f32 2 (/.f32 1 (*.f32 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 3) (pow.f32 ux 2)))) (+.f32 (*.f32 2 (/.f32 1 (-.f32 1 (*.f32 -1 maxCos)))) (+.f32 (*.f32 -1 (/.f32 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux) (-.f32 1 (*.f32 -1 maxCos)))) (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 2)) (+.f32 (*.f32 -1 (/.f32 (-.f32 (+.f32 (/.f32 1 (-.f32 1 (*.f32 -1 maxCos))) (/.f32 1 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 3))) (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 3)) (*.f32 2 (/.f32 1 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 2))))) ux)) (/.f32 (pow.f32 maxCos 2) (*.f32 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 4) (pow.f32 ux 2)))))))) (+.f32 (/.f32 1 (*.f32 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 2) (pow.f32 ux 2))) (+.f32 (/.f32 1 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 2)) (/.f32 1 (*.f32 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 4) (pow.f32 ux 2))))))
(-.f32 1 ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(*.f32 maxCos ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(*.f32 maxCos ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
1
(+.f32 1 (*.f32 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))) ux))
(+.f32 1 (+.f32 (*.f32 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))) ux) (*.f32 (pow.f32 ux 2) (-.f32 (pow.f32 maxCos 2) (+.f32 1 (*.f32 -2 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos)))))))))
(+.f32 (*.f32 -1 (*.f32 (+.f32 (*.f32 -2 (-.f32 (pow.f32 maxCos 2) (+.f32 1 (*.f32 -2 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))))))) (*.f32 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))) (-.f32 1 (pow.f32 maxCos 2)))) (pow.f32 ux 3))) (+.f32 1 (+.f32 (*.f32 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))) ux) (*.f32 (pow.f32 ux 2) (-.f32 (pow.f32 maxCos 2) (+.f32 1 (*.f32 -2 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))))))))))
(*.f32 -1 (/.f32 (+.f32 1 maxCos) (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux)))
(-.f32 (+.f32 (*.f32 -1 (/.f32 (+.f32 1 maxCos) (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux))) (/.f32 1 (*.f32 (pow.f32 ux 2) (-.f32 1 (pow.f32 maxCos 2))))) (*.f32 2 (/.f32 (+.f32 1 maxCos) (*.f32 (pow.f32 ux 2) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))))
(-.f32 (+.f32 (/.f32 1 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) (pow.f32 ux 2))) (+.f32 (*.f32 -1 (/.f32 (+.f32 1 maxCos) (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux))) (*.f32 -1 (/.f32 (+.f32 (*.f32 -2 (/.f32 (-.f32 (/.f32 1 (-.f32 1 (pow.f32 maxCos 2))) (*.f32 2 (/.f32 (+.f32 1 maxCos) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (-.f32 1 (pow.f32 maxCos 2)))) (*.f32 -1 (/.f32 (+.f32 1 maxCos) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (pow.f32 ux 3))))) (*.f32 2 (/.f32 (+.f32 1 maxCos) (*.f32 (pow.f32 ux 2) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))))
(-.f32 (+.f32 (/.f32 1 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) (pow.f32 ux 2))) (+.f32 (*.f32 -1 (/.f32 (+.f32 1 maxCos) (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux))) (+.f32 (*.f32 2 (/.f32 (+.f32 1 maxCos) (*.f32 (pow.f32 ux 4) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 3)))) (*.f32 -1 (/.f32 (+.f32 (*.f32 -2 (/.f32 (-.f32 (/.f32 1 (-.f32 1 (pow.f32 maxCos 2))) (*.f32 2 (/.f32 (+.f32 1 maxCos) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (-.f32 1 (pow.f32 maxCos 2)))) (*.f32 -1 (/.f32 (+.f32 1 maxCos) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (pow.f32 ux 3)))))) (+.f32 (*.f32 2 (/.f32 (+.f32 (*.f32 -2 (/.f32 (-.f32 (/.f32 1 (-.f32 1 (pow.f32 maxCos 2))) (*.f32 2 (/.f32 (+.f32 1 maxCos) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (-.f32 1 (pow.f32 maxCos 2)))) (*.f32 -1 (/.f32 (+.f32 1 maxCos) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (*.f32 (pow.f32 ux 4) (-.f32 1 (pow.f32 maxCos 2))))) (+.f32 (/.f32 1 (*.f32 (pow.f32 ux 4) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2))) (*.f32 2 (/.f32 (+.f32 1 maxCos) (*.f32 (pow.f32 ux 2) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))))))
(*.f32 -1 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux)))
(-.f32 (+.f32 (/.f32 1 (*.f32 (pow.f32 ux 2) (-.f32 1 (pow.f32 maxCos 2)))) (*.f32 -1 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux)))) (*.f32 2 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (*.f32 (pow.f32 ux 2) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))))
(-.f32 (+.f32 (/.f32 1 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) (pow.f32 ux 2))) (+.f32 (*.f32 -1 (/.f32 (-.f32 (*.f32 -1 (/.f32 maxCos (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2))) (+.f32 (*.f32 2 (/.f32 (-.f32 (/.f32 1 (-.f32 1 (pow.f32 maxCos 2))) (*.f32 2 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (-.f32 1 (pow.f32 maxCos 2)))) (/.f32 1 (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (pow.f32 ux 3))) (*.f32 -1 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux))))) (*.f32 2 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (*.f32 (pow.f32 ux 2) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))))
(-.f32 (+.f32 (/.f32 1 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) (pow.f32 ux 2))) (+.f32 (*.f32 -1 (/.f32 (-.f32 (*.f32 -1 (/.f32 maxCos (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2))) (+.f32 (*.f32 2 (/.f32 (-.f32 (/.f32 1 (-.f32 1 (pow.f32 maxCos 2))) (*.f32 2 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (-.f32 1 (pow.f32 maxCos 2)))) (/.f32 1 (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (pow.f32 ux 3))) (+.f32 (*.f32 -1 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux))) (*.f32 2 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (*.f32 (pow.f32 ux 4) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 3))))))) (+.f32 (*.f32 2 (/.f32 (-.f32 (*.f32 -1 (/.f32 maxCos (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2))) (+.f32 (*.f32 2 (/.f32 (-.f32 (/.f32 1 (-.f32 1 (pow.f32 maxCos 2))) (*.f32 2 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (-.f32 1 (pow.f32 maxCos 2)))) (/.f32 1 (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (*.f32 (pow.f32 ux 4) (-.f32 1 (pow.f32 maxCos 2))))) (+.f32 (*.f32 2 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (*.f32 (pow.f32 ux 2) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (/.f32 1 (*.f32 (pow.f32 ux 4) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2))))))
(/.f32 1 (-.f32 1 ux))
(+.f32 (/.f32 1 (-.f32 1 ux)) (*.f32 -1 (/.f32 (*.f32 maxCos ux) (pow.f32 (-.f32 1 ux) 2))))
(+.f32 (/.f32 (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)) (pow.f32 (-.f32 1 ux) 3)) (+.f32 (/.f32 1 (-.f32 1 ux)) (*.f32 -1 (/.f32 (*.f32 maxCos ux) (pow.f32 (-.f32 1 ux) 2)))))
(+.f32 (/.f32 (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)) (pow.f32 (-.f32 1 ux) 3)) (+.f32 (/.f32 1 (-.f32 1 ux)) (+.f32 (*.f32 -1 (/.f32 (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3)) (pow.f32 (-.f32 1 ux) 4))) (*.f32 -1 (/.f32 (*.f32 maxCos ux) (pow.f32 (-.f32 1 ux) 2))))))
(/.f32 1 (*.f32 maxCos ux))
(+.f32 (/.f32 1 (*.f32 maxCos ux)) (*.f32 -1 (/.f32 (-.f32 1 ux) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))))
(+.f32 (/.f32 1 (*.f32 maxCos ux)) (+.f32 (*.f32 -1 (/.f32 (-.f32 1 ux) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))) (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3)))))
(+.f32 (*.f32 -1 (/.f32 (pow.f32 (-.f32 1 ux) 3) (*.f32 (pow.f32 maxCos 4) (pow.f32 ux 4)))) (+.f32 (/.f32 1 (*.f32 maxCos ux)) (+.f32 (*.f32 -1 (/.f32 (-.f32 1 ux) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))) (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3))))))
(/.f32 1 (*.f32 maxCos ux))
(+.f32 (/.f32 1 (*.f32 maxCos ux)) (*.f32 -1 (/.f32 (-.f32 1 ux) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))))
(+.f32 (/.f32 1 (*.f32 maxCos ux)) (+.f32 (*.f32 -1 (/.f32 (-.f32 1 ux) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))) (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3)))))
(+.f32 (*.f32 -1 (/.f32 (pow.f32 (-.f32 1 ux) 3) (*.f32 (pow.f32 maxCos 4) (pow.f32 ux 4)))) (+.f32 (/.f32 1 (*.f32 maxCos ux)) (+.f32 (*.f32 -1 (/.f32 (-.f32 1 ux) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))) (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3))))))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
Outputs
1
(+.f32 1 (*.f32 -2 ux))
(fma.f32 -2 ux 1)
(+.f32 (pow.f32 ux 2) (+.f32 1 (*.f32 -2 ux)))
(+.f32 (+.f32 1 (*.f32 -2 ux)) (*.f32 ux ux))
(fma.f32 ux ux (fma.f32 -2 ux 1))
(+.f32 (pow.f32 ux 2) (+.f32 1 (*.f32 -2 ux)))
(+.f32 (+.f32 1 (*.f32 -2 ux)) (*.f32 ux ux))
(fma.f32 ux ux (fma.f32 -2 ux 1))
(pow.f32 ux 2)
(*.f32 ux ux)
(+.f32 (pow.f32 ux 2) (*.f32 -2 ux))
(+.f32 (*.f32 -2 ux) (*.f32 ux ux))
(*.f32 ux (+.f32 -2 ux))
(+.f32 (pow.f32 ux 2) (+.f32 1 (*.f32 -2 ux)))
(+.f32 (+.f32 1 (*.f32 -2 ux)) (*.f32 ux ux))
(fma.f32 ux ux (fma.f32 -2 ux 1))
(+.f32 (pow.f32 ux 2) (+.f32 1 (*.f32 -2 ux)))
(+.f32 (+.f32 1 (*.f32 -2 ux)) (*.f32 ux ux))
(fma.f32 ux ux (fma.f32 -2 ux 1))
(pow.f32 ux 2)
(*.f32 ux ux)
(+.f32 (pow.f32 ux 2) (*.f32 -2 ux))
(+.f32 (*.f32 -2 ux) (*.f32 ux ux))
(*.f32 ux (+.f32 -2 ux))
(+.f32 (pow.f32 ux 2) (+.f32 1 (*.f32 -2 ux)))
(+.f32 (+.f32 1 (*.f32 -2 ux)) (*.f32 ux ux))
(fma.f32 ux ux (fma.f32 -2 ux 1))
(+.f32 (pow.f32 ux 2) (+.f32 1 (*.f32 -2 ux)))
(+.f32 (+.f32 1 (*.f32 -2 ux)) (*.f32 ux ux))
(fma.f32 ux ux (fma.f32 -2 ux 1))
1
(+.f32 (*.f32 -1 (*.f32 ux (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))))) 1)
(fma.f32 -1 (*.f32 ux (+.f32 2 (neg.f32 (+.f32 1 maxCos)))) 1)
(-.f32 1 (*.f32 ux (+.f32 1 (neg.f32 maxCos))))
(+.f32 1 (*.f32 ux (+.f32 -1 maxCos)))
(+.f32 (*.f32 -1 (*.f32 ux (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))))) (+.f32 1 (*.f32 (pow.f32 ux 2) (-.f32 1 (+.f32 (*.f32 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))) (+.f32 1 maxCos)) (pow.f32 maxCos 2))))))
(+.f32 (fma.f32 -1 (*.f32 ux (+.f32 2 (neg.f32 (+.f32 1 maxCos)))) 1) (*.f32 (*.f32 ux ux) (-.f32 1 (fma.f32 (+.f32 2 (neg.f32 (+.f32 1 maxCos))) (+.f32 1 maxCos) (*.f32 maxCos maxCos)))))
(-.f32 (fma.f32 (*.f32 ux ux) (-.f32 1 (fma.f32 maxCos maxCos (*.f32 (+.f32 1 maxCos) (+.f32 1 (neg.f32 maxCos))))) 1) (*.f32 ux (+.f32 1 (neg.f32 maxCos))))
(+.f32 1 (*.f32 ux (+.f32 (*.f32 (-.f32 1 (fma.f32 maxCos maxCos (*.f32 (+.f32 1 maxCos) (-.f32 1 maxCos)))) ux) (+.f32 -1 maxCos))))
(+.f32 (*.f32 -1 (*.f32 ux (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))))) (+.f32 (*.f32 (pow.f32 ux 3) (*.f32 (-.f32 1 (+.f32 (*.f32 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))) (+.f32 1 maxCos)) (pow.f32 maxCos 2))) (+.f32 1 maxCos))) (+.f32 1 (*.f32 (pow.f32 ux 2) (-.f32 1 (+.f32 (*.f32 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))) (+.f32 1 maxCos)) (pow.f32 maxCos 2)))))))
(fma.f32 -1 (*.f32 ux (+.f32 2 (neg.f32 (+.f32 1 maxCos)))) (fma.f32 (pow.f32 ux 3) (*.f32 (+.f32 1 maxCos) (-.f32 1 (fma.f32 (+.f32 2 (neg.f32 (+.f32 1 maxCos))) (+.f32 1 maxCos) (*.f32 maxCos maxCos)))) (+.f32 1 (*.f32 (*.f32 ux ux) (-.f32 1 (fma.f32 (+.f32 2 (neg.f32 (+.f32 1 maxCos))) (+.f32 1 maxCos) (*.f32 maxCos maxCos)))))))
(-.f32 (fma.f32 (pow.f32 ux 3) (*.f32 (+.f32 1 maxCos) (-.f32 1 (fma.f32 maxCos maxCos (*.f32 (+.f32 1 maxCos) (+.f32 1 (neg.f32 maxCos)))))) (fma.f32 (*.f32 ux ux) (-.f32 1 (fma.f32 maxCos maxCos (*.f32 (+.f32 1 maxCos) (+.f32 1 (neg.f32 maxCos))))) 1)) (*.f32 ux (+.f32 1 (neg.f32 maxCos))))
(+.f32 (*.f32 ux (+.f32 -1 maxCos)) (+.f32 1 (*.f32 (-.f32 1 (fma.f32 maxCos maxCos (*.f32 (+.f32 1 maxCos) (-.f32 1 maxCos)))) (+.f32 (*.f32 ux ux) (*.f32 (pow.f32 ux 3) (+.f32 1 maxCos))))))
(*.f32 -1 (/.f32 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux) (+.f32 1 maxCos)))
(neg.f32 (/.f32 (*.f32 ux (-.f32 1 (*.f32 maxCos maxCos))) (+.f32 1 maxCos)))
(/.f32 (neg.f32 (-.f32 1 (*.f32 maxCos maxCos))) (/.f32 (+.f32 1 maxCos) ux))
(*.f32 (/.f32 (fma.f32 maxCos maxCos -1) (+.f32 1 maxCos)) ux)
(-.f32 (+.f32 (*.f32 2 (/.f32 1 (+.f32 1 maxCos))) (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (+.f32 1 maxCos) 2)) (*.f32 -1 (/.f32 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux) (+.f32 1 maxCos))))) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2)))
(+.f32 (/.f32 2 (+.f32 1 maxCos)) (-.f32 (+.f32 (neg.f32 (/.f32 (*.f32 ux (-.f32 1 (*.f32 maxCos maxCos))) (+.f32 1 maxCos))) (/.f32 (*.f32 maxCos maxCos) (pow.f32 (+.f32 1 maxCos) 2))) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2))))
(+.f32 (-.f32 (/.f32 2 (+.f32 1 maxCos)) (/.f32 (-.f32 1 (*.f32 maxCos maxCos)) (/.f32 (+.f32 1 maxCos) ux))) (-.f32 (/.f32 (*.f32 maxCos maxCos) (pow.f32 (+.f32 1 maxCos) 2)) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2))))
(+.f32 (+.f32 (/.f32 2 (+.f32 1 maxCos)) (*.f32 (/.f32 maxCos (pow.f32 (+.f32 1 maxCos) 2)) maxCos)) (+.f32 (*.f32 (/.f32 (fma.f32 maxCos maxCos -1) (+.f32 1 maxCos)) ux) (/.f32 -1 (pow.f32 (+.f32 1 maxCos) 2))))
(-.f32 (+.f32 (*.f32 -1 (/.f32 (+.f32 (/.f32 1 (+.f32 1 maxCos)) (*.f32 -1 (/.f32 (-.f32 (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (+.f32 1 maxCos) 2)) (*.f32 2 (/.f32 1 (+.f32 1 maxCos)))) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2))) (+.f32 1 maxCos)))) ux)) (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (+.f32 1 maxCos) 2)) (+.f32 (*.f32 2 (/.f32 1 (+.f32 1 maxCos))) (*.f32 -1 (/.f32 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux) (+.f32 1 maxCos)))))) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2)))
(-.f32 (fma.f32 -1 (/.f32 (+.f32 (/.f32 1 (+.f32 1 maxCos)) (neg.f32 (/.f32 (+.f32 (/.f32 (*.f32 maxCos maxCos) (pow.f32 (+.f32 1 maxCos) 2)) (-.f32 (/.f32 2 (+.f32 1 maxCos)) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2)))) (+.f32 1 maxCos)))) ux) (+.f32 (/.f32 2 (+.f32 1 maxCos)) (+.f32 (neg.f32 (/.f32 (*.f32 ux (-.f32 1 (*.f32 maxCos maxCos))) (+.f32 1 maxCos))) (/.f32 (*.f32 maxCos maxCos) (pow.f32 (+.f32 1 maxCos) 2))))) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2)))
(+.f32 (-.f32 (+.f32 (-.f32 (/.f32 2 (+.f32 1 maxCos)) (/.f32 (-.f32 1 (*.f32 maxCos maxCos)) (/.f32 (+.f32 1 maxCos) ux))) (/.f32 (*.f32 maxCos maxCos) (pow.f32 (+.f32 1 maxCos) 2))) (/.f32 (-.f32 (/.f32 1 (+.f32 1 maxCos)) (/.f32 (+.f32 (/.f32 2 (+.f32 1 maxCos)) (+.f32 (/.f32 (*.f32 maxCos maxCos) (pow.f32 (+.f32 1 maxCos) 2)) (/.f32 -1 (pow.f32 (+.f32 1 maxCos) 2)))) (+.f32 1 maxCos))) ux)) (/.f32 -1 (pow.f32 (+.f32 1 maxCos) 2)))
(-.f32 (+.f32 (+.f32 (/.f32 2 (+.f32 1 maxCos)) (*.f32 (/.f32 maxCos (pow.f32 (+.f32 1 maxCos) 2)) maxCos)) (+.f32 (*.f32 (/.f32 (fma.f32 maxCos maxCos -1) (+.f32 1 maxCos)) ux) (/.f32 -1 (pow.f32 (+.f32 1 maxCos) 2)))) (/.f32 (-.f32 (/.f32 1 (+.f32 1 maxCos)) (+.f32 (/.f32 (+.f32 (/.f32 2 (+.f32 1 maxCos)) (*.f32 (/.f32 maxCos (pow.f32 (+.f32 1 maxCos) 2)) maxCos)) (+.f32 1 maxCos)) (/.f32 -1 (pow.f32 (+.f32 1 maxCos) 3)))) ux))
(-.f32 (+.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 -1 (/.f32 (-.f32 (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (+.f32 1 maxCos) 2)) (*.f32 2 (/.f32 1 (+.f32 1 maxCos)))) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2))) (pow.f32 (+.f32 1 maxCos) 2))) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2))) (pow.f32 ux 2))) (+.f32 (*.f32 -1 (/.f32 (+.f32 (/.f32 1 (+.f32 1 maxCos)) (*.f32 -1 (/.f32 (-.f32 (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (+.f32 1 maxCos) 2)) (*.f32 2 (/.f32 1 (+.f32 1 maxCos)))) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2))) (+.f32 1 maxCos)))) ux)) (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (+.f32 1 maxCos) 2)) (+.f32 (*.f32 2 (/.f32 1 (+.f32 1 maxCos))) (*.f32 -1 (/.f32 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux) (+.f32 1 maxCos))))))) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2)))
(-.f32 (fma.f32 -1 (/.f32 (fma.f32 -1 (/.f32 (+.f32 (/.f32 (*.f32 maxCos maxCos) (pow.f32 (+.f32 1 maxCos) 2)) (-.f32 (/.f32 2 (+.f32 1 maxCos)) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2)))) (pow.f32 (+.f32 1 maxCos) 2)) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2))) (*.f32 ux ux)) (fma.f32 -1 (/.f32 (+.f32 (/.f32 1 (+.f32 1 maxCos)) (neg.f32 (/.f32 (+.f32 (/.f32 (*.f32 maxCos maxCos) (pow.f32 (+.f32 1 maxCos) 2)) (-.f32 (/.f32 2 (+.f32 1 maxCos)) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2)))) (+.f32 1 maxCos)))) ux) (+.f32 (/.f32 2 (+.f32 1 maxCos)) (+.f32 (neg.f32 (/.f32 (*.f32 ux (-.f32 1 (*.f32 maxCos maxCos))) (+.f32 1 maxCos))) (/.f32 (*.f32 maxCos maxCos) (pow.f32 (+.f32 1 maxCos) 2)))))) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2)))
(+.f32 (-.f32 (-.f32 (+.f32 (-.f32 (/.f32 2 (+.f32 1 maxCos)) (/.f32 (-.f32 1 (*.f32 maxCos maxCos)) (/.f32 (+.f32 1 maxCos) ux))) (/.f32 (*.f32 maxCos maxCos) (pow.f32 (+.f32 1 maxCos) 2))) (/.f32 (-.f32 (/.f32 1 (+.f32 1 maxCos)) (/.f32 (+.f32 (/.f32 2 (+.f32 1 maxCos)) (+.f32 (/.f32 (*.f32 maxCos maxCos) (pow.f32 (+.f32 1 maxCos) 2)) (/.f32 -1 (pow.f32 (+.f32 1 maxCos) 2)))) (+.f32 1 maxCos))) ux)) (/.f32 (-.f32 (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2)) (/.f32 (+.f32 (/.f32 2 (+.f32 1 maxCos)) (+.f32 (/.f32 (*.f32 maxCos maxCos) (pow.f32 (+.f32 1 maxCos) 2)) (/.f32 -1 (pow.f32 (+.f32 1 maxCos) 2)))) (pow.f32 (+.f32 1 maxCos) 2))) (*.f32 ux ux))) (/.f32 -1 (pow.f32 (+.f32 1 maxCos) 2)))
(-.f32 (-.f32 (+.f32 (+.f32 (/.f32 2 (+.f32 1 maxCos)) (*.f32 (/.f32 maxCos (pow.f32 (+.f32 1 maxCos) 2)) maxCos)) (+.f32 (*.f32 (/.f32 (fma.f32 maxCos maxCos -1) (+.f32 1 maxCos)) ux) (/.f32 -1 (pow.f32 (+.f32 1 maxCos) 2)))) (/.f32 (-.f32 (/.f32 1 (+.f32 1 maxCos)) (+.f32 (/.f32 (+.f32 (/.f32 2 (+.f32 1 maxCos)) (*.f32 (/.f32 maxCos (pow.f32 (+.f32 1 maxCos) 2)) maxCos)) (+.f32 1 maxCos)) (/.f32 -1 (pow.f32 (+.f32 1 maxCos) 3)))) ux)) (/.f32 (-.f32 (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2)) (+.f32 (/.f32 (+.f32 (/.f32 2 (+.f32 1 maxCos)) (*.f32 (/.f32 maxCos (pow.f32 (+.f32 1 maxCos) 2)) maxCos)) (pow.f32 (+.f32 1 maxCos) 2)) (/.f32 -1 (pow.f32 (+.f32 1 maxCos) 4)))) (*.f32 ux ux)))
(*.f32 -1 (/.f32 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux) (-.f32 1 (*.f32 -1 maxCos))))
(neg.f32 (/.f32 (*.f32 ux (-.f32 1 (*.f32 maxCos maxCos))) (+.f32 1 maxCos)))
(/.f32 (neg.f32 (-.f32 1 (*.f32 maxCos maxCos))) (/.f32 (+.f32 1 maxCos) ux))
(*.f32 (/.f32 (fma.f32 maxCos maxCos -1) (+.f32 1 maxCos)) ux)
(-.f32 (+.f32 (*.f32 2 (/.f32 1 (-.f32 1 (*.f32 -1 maxCos)))) (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 2)) (*.f32 -1 (/.f32 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux) (-.f32 1 (*.f32 -1 maxCos)))))) (/.f32 1 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 2)))
(+.f32 (/.f32 2 (+.f32 1 maxCos)) (-.f32 (+.f32 (neg.f32 (/.f32 (*.f32 ux (-.f32 1 (*.f32 maxCos maxCos))) (+.f32 1 maxCos))) (/.f32 (*.f32 maxCos maxCos) (pow.f32 (+.f32 1 maxCos) 2))) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2))))
(+.f32 (-.f32 (/.f32 2 (+.f32 1 maxCos)) (/.f32 (-.f32 1 (*.f32 maxCos maxCos)) (/.f32 (+.f32 1 maxCos) ux))) (-.f32 (/.f32 (*.f32 maxCos maxCos) (pow.f32 (+.f32 1 maxCos) 2)) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2))))
(+.f32 (+.f32 (/.f32 2 (+.f32 1 maxCos)) (*.f32 (/.f32 maxCos (pow.f32 (+.f32 1 maxCos) 2)) maxCos)) (+.f32 (*.f32 (/.f32 (fma.f32 maxCos maxCos -1) (+.f32 1 maxCos)) ux) (/.f32 -1 (pow.f32 (+.f32 1 maxCos) 2))))
(-.f32 (+.f32 (*.f32 2 (/.f32 1 (-.f32 1 (*.f32 -1 maxCos)))) (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 2)) (+.f32 (*.f32 -1 (/.f32 (-.f32 (+.f32 (/.f32 1 (-.f32 1 (*.f32 -1 maxCos))) (/.f32 1 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 3))) (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 3)) (*.f32 2 (/.f32 1 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 2))))) ux)) (*.f32 -1 (/.f32 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux) (-.f32 1 (*.f32 -1 maxCos))))))) (/.f32 1 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 2)))
(+.f32 (/.f32 2 (-.f32 1 (neg.f32 maxCos))) (-.f32 (+.f32 (/.f32 (*.f32 maxCos maxCos) (pow.f32 (-.f32 1 (neg.f32 maxCos)) 2)) (*.f32 -1 (+.f32 (/.f32 (-.f32 (+.f32 (/.f32 1 (-.f32 1 (neg.f32 maxCos))) (/.f32 1 (pow.f32 (-.f32 1 (neg.f32 maxCos)) 3))) (+.f32 (/.f32 (*.f32 maxCos maxCos) (pow.f32 (-.f32 1 (neg.f32 maxCos)) 3)) (/.f32 2 (pow.f32 (-.f32 1 (neg.f32 maxCos)) 2)))) ux) (/.f32 (-.f32 1 (*.f32 maxCos maxCos)) (/.f32 (-.f32 1 (neg.f32 maxCos)) ux))))) (/.f32 1 (pow.f32 (-.f32 1 (neg.f32 maxCos)) 2))))
(+.f32 (-.f32 (-.f32 (/.f32 (*.f32 maxCos maxCos) (pow.f32 (+.f32 1 maxCos) 2)) (/.f32 (+.f32 (/.f32 1 (+.f32 1 maxCos)) (-.f32 (/.f32 1 (pow.f32 (+.f32 1 maxCos) 3)) (+.f32 (/.f32 maxCos (/.f32 (pow.f32 (+.f32 1 maxCos) 3) maxCos)) (/.f32 2 (pow.f32 (+.f32 1 maxCos) 2))))) ux)) (/.f32 (-.f32 1 (*.f32 maxCos maxCos)) (/.f32 (+.f32 1 maxCos) ux))) (+.f32 (/.f32 2 (+.f32 1 maxCos)) (/.f32 -1 (pow.f32 (+.f32 1 maxCos) 2))))
(+.f32 (+.f32 (/.f32 2 (+.f32 1 maxCos)) (*.f32 (/.f32 maxCos (pow.f32 (+.f32 1 maxCos) 2)) maxCos)) (+.f32 (-.f32 (*.f32 (/.f32 (fma.f32 maxCos maxCos -1) (+.f32 1 maxCos)) ux) (/.f32 (+.f32 (/.f32 1 (+.f32 1 maxCos)) (+.f32 (/.f32 1 (pow.f32 (+.f32 1 maxCos) 3)) (-.f32 (/.f32 -2 (pow.f32 (+.f32 1 maxCos) 2)) (*.f32 (/.f32 maxCos (pow.f32 (+.f32 1 maxCos) 3)) maxCos)))) ux)) (/.f32 -1 (pow.f32 (+.f32 1 maxCos) 2))))
(-.f32 (+.f32 (*.f32 2 (/.f32 1 (*.f32 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 3) (pow.f32 ux 2)))) (+.f32 (*.f32 2 (/.f32 1 (-.f32 1 (*.f32 -1 maxCos)))) (+.f32 (*.f32 -1 (/.f32 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux) (-.f32 1 (*.f32 -1 maxCos)))) (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 2)) (+.f32 (*.f32 -1 (/.f32 (-.f32 (+.f32 (/.f32 1 (-.f32 1 (*.f32 -1 maxCos))) (/.f32 1 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 3))) (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 3)) (*.f32 2 (/.f32 1 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 2))))) ux)) (/.f32 (pow.f32 maxCos 2) (*.f32 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 4) (pow.f32 ux 2)))))))) (+.f32 (/.f32 1 (*.f32 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 2) (pow.f32 ux 2))) (+.f32 (/.f32 1 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 2)) (/.f32 1 (*.f32 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 4) (pow.f32 ux 2))))))
(+.f32 (/.f32 2 (*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 (neg.f32 maxCos)) 3))) (-.f32 (+.f32 (/.f32 2 (-.f32 1 (neg.f32 maxCos))) (fma.f32 -1 (/.f32 (-.f32 1 (*.f32 maxCos maxCos)) (/.f32 (-.f32 1 (neg.f32 maxCos)) ux)) (+.f32 (/.f32 (*.f32 maxCos maxCos) (pow.f32 (-.f32 1 (neg.f32 maxCos)) 2)) (fma.f32 -1 (/.f32 (-.f32 (+.f32 (/.f32 1 (-.f32 1 (neg.f32 maxCos))) (/.f32 1 (pow.f32 (-.f32 1 (neg.f32 maxCos)) 3))) (+.f32 (/.f32 (*.f32 maxCos maxCos) (pow.f32 (-.f32 1 (neg.f32 maxCos)) 3)) (/.f32 2 (pow.f32 (-.f32 1 (neg.f32 maxCos)) 2)))) ux) (/.f32 (*.f32 maxCos maxCos) (*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 (neg.f32 maxCos)) 4))))))) (+.f32 (/.f32 1 (*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 (neg.f32 maxCos)) 2))) (+.f32 (/.f32 1 (pow.f32 (-.f32 1 (neg.f32 maxCos)) 2)) (/.f32 1 (*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 (neg.f32 maxCos)) 4)))))))
(+.f32 (+.f32 (-.f32 (/.f32 2 (+.f32 1 maxCos)) (/.f32 (-.f32 1 (*.f32 maxCos maxCos)) (/.f32 (+.f32 1 maxCos) ux))) (+.f32 (/.f32 (*.f32 maxCos maxCos) (pow.f32 (+.f32 1 maxCos) 2)) (-.f32 (/.f32 (*.f32 maxCos maxCos) (*.f32 (*.f32 ux ux) (pow.f32 (+.f32 1 maxCos) 4))) (/.f32 (+.f32 (/.f32 1 (+.f32 1 maxCos)) (-.f32 (/.f32 1 (pow.f32 (+.f32 1 maxCos) 3)) (+.f32 (/.f32 maxCos (/.f32 (pow.f32 (+.f32 1 maxCos) 3) maxCos)) (/.f32 2 (pow.f32 (+.f32 1 maxCos) 2))))) ux)))) (-.f32 (/.f32 2 (*.f32 (*.f32 ux ux) (pow.f32 (+.f32 1 maxCos) 3))) (+.f32 (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2)) (+.f32 (/.f32 (/.f32 (/.f32 1 ux) ux) (pow.f32 (+.f32 1 maxCos) 4)) (/.f32 1 (*.f32 (*.f32 ux ux) (pow.f32 (+.f32 1 maxCos) 2)))))))
(+.f32 (/.f32 2 (*.f32 (*.f32 ux ux) (pow.f32 (+.f32 1 maxCos) 3))) (+.f32 (+.f32 (+.f32 (*.f32 (/.f32 (fma.f32 maxCos maxCos -1) (+.f32 1 maxCos)) ux) (/.f32 2 (+.f32 1 maxCos))) (-.f32 (+.f32 (*.f32 (/.f32 maxCos (pow.f32 (+.f32 1 maxCos) 2)) maxCos) (*.f32 (/.f32 maxCos (*.f32 ux ux)) (/.f32 maxCos (pow.f32 (+.f32 1 maxCos) 4)))) (/.f32 (+.f32 (/.f32 1 (+.f32 1 maxCos)) (+.f32 (/.f32 1 (pow.f32 (+.f32 1 maxCos) 3)) (-.f32 (/.f32 -2 (pow.f32 (+.f32 1 maxCos) 2)) (*.f32 (/.f32 maxCos (pow.f32 (+.f32 1 maxCos) 3)) maxCos)))) ux))) (+.f32 (+.f32 (/.f32 -1 (pow.f32 (+.f32 1 maxCos) 2)) (/.f32 -1 (*.f32 ux (*.f32 ux (pow.f32 (+.f32 1 maxCos) 2))))) (/.f32 (/.f32 -1 (pow.f32 (+.f32 1 maxCos) 4)) (*.f32 ux ux)))))
(-.f32 1 ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (-.f32 (*.f32 ux maxCos) ux))
(-.f32 (fma.f32 ux maxCos 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (-.f32 (*.f32 ux maxCos) ux))
(-.f32 (fma.f32 ux maxCos 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (-.f32 (*.f32 ux maxCos) ux))
(-.f32 (fma.f32 ux maxCos 1) ux)
(*.f32 maxCos ux)
(*.f32 ux maxCos)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (-.f32 (*.f32 ux maxCos) ux))
(-.f32 (fma.f32 ux maxCos 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (-.f32 (*.f32 ux maxCos) ux))
(-.f32 (fma.f32 ux maxCos 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (-.f32 (*.f32 ux maxCos) ux))
(-.f32 (fma.f32 ux maxCos 1) ux)
(*.f32 maxCos ux)
(*.f32 ux maxCos)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (-.f32 (*.f32 ux maxCos) ux))
(-.f32 (fma.f32 ux maxCos 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (-.f32 (*.f32 ux maxCos) ux))
(-.f32 (fma.f32 ux maxCos 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (-.f32 (*.f32 ux maxCos) ux))
(-.f32 (fma.f32 ux maxCos 1) ux)
1
(+.f32 1 (*.f32 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))) ux))
(+.f32 1 (*.f32 ux (+.f32 2 (neg.f32 (+.f32 1 maxCos)))))
(fma.f32 ux (+.f32 1 (neg.f32 maxCos)) 1)
(fma.f32 ux (-.f32 1 maxCos) 1)
(+.f32 1 (+.f32 (*.f32 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))) ux) (*.f32 (pow.f32 ux 2) (-.f32 (pow.f32 maxCos 2) (+.f32 1 (*.f32 -2 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos)))))))))
(+.f32 1 (fma.f32 (+.f32 2 (neg.f32 (+.f32 1 maxCos))) ux (*.f32 (*.f32 ux ux) (-.f32 (*.f32 maxCos maxCos) (+.f32 1 (+.f32 -4 (*.f32 (neg.f32 (+.f32 1 maxCos)) -2)))))))
(+.f32 1 (fma.f32 ux (+.f32 1 (neg.f32 maxCos)) (*.f32 (*.f32 ux ux) (+.f32 (fma.f32 maxCos maxCos -1) (*.f32 2 (+.f32 1 (neg.f32 maxCos)))))))
(+.f32 1 (*.f32 ux (+.f32 (-.f32 1 maxCos) (*.f32 ux (+.f32 (fma.f32 maxCos maxCos -1) (*.f32 -2 (+.f32 -1 maxCos)))))))
(+.f32 (*.f32 -1 (*.f32 (+.f32 (*.f32 -2 (-.f32 (pow.f32 maxCos 2) (+.f32 1 (*.f32 -2 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))))))) (*.f32 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))) (-.f32 1 (pow.f32 maxCos 2)))) (pow.f32 ux 3))) (+.f32 1 (+.f32 (*.f32 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))) ux) (*.f32 (pow.f32 ux 2) (-.f32 (pow.f32 maxCos 2) (+.f32 1 (*.f32 -2 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))))))))))
(fma.f32 -1 (*.f32 (pow.f32 ux 3) (fma.f32 -2 (-.f32 (*.f32 maxCos maxCos) (+.f32 1 (+.f32 -4 (*.f32 (neg.f32 (+.f32 1 maxCos)) -2)))) (*.f32 (+.f32 2 (neg.f32 (+.f32 1 maxCos))) (-.f32 1 (*.f32 maxCos maxCos))))) (+.f32 1 (fma.f32 (+.f32 2 (neg.f32 (+.f32 1 maxCos))) ux (*.f32 (*.f32 ux ux) (-.f32 (*.f32 maxCos maxCos) (+.f32 1 (+.f32 -4 (*.f32 (neg.f32 (+.f32 1 maxCos)) -2))))))))
(+.f32 (fma.f32 ux (+.f32 1 (neg.f32 maxCos)) (*.f32 (*.f32 ux ux) (+.f32 (fma.f32 maxCos maxCos -1) (*.f32 2 (+.f32 1 (neg.f32 maxCos)))))) (fma.f32 (neg.f32 (fma.f32 -2 (+.f32 (fma.f32 maxCos maxCos -1) (*.f32 2 (+.f32 1 (neg.f32 maxCos)))) (*.f32 (+.f32 1 (neg.f32 maxCos)) (-.f32 1 (*.f32 maxCos maxCos))))) (pow.f32 ux 3) 1))
(+.f32 (*.f32 ux (+.f32 (-.f32 1 maxCos) (*.f32 ux (+.f32 (fma.f32 maxCos maxCos -1) (*.f32 -2 (+.f32 -1 maxCos)))))) (fma.f32 (neg.f32 (fma.f32 (-.f32 1 maxCos) (-.f32 1 (*.f32 maxCos maxCos)) (*.f32 -2 (+.f32 (fma.f32 maxCos maxCos -1) (*.f32 -2 (+.f32 -1 maxCos)))))) (pow.f32 ux 3) 1))
(*.f32 -1 (/.f32 (+.f32 1 maxCos) (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux)))
(/.f32 (neg.f32 (+.f32 1 maxCos)) (*.f32 ux (-.f32 1 (*.f32 maxCos maxCos))))
(/.f32 (-.f32 -1 maxCos) (*.f32 ux (-.f32 1 (*.f32 maxCos maxCos))))
(-.f32 (+.f32 (*.f32 -1 (/.f32 (+.f32 1 maxCos) (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux))) (/.f32 1 (*.f32 (pow.f32 ux 2) (-.f32 1 (pow.f32 maxCos 2))))) (*.f32 2 (/.f32 (+.f32 1 maxCos) (*.f32 (pow.f32 ux 2) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))))
(-.f32 (fma.f32 -1 (/.f32 (+.f32 1 maxCos) (*.f32 ux (-.f32 1 (*.f32 maxCos maxCos)))) (/.f32 1 (*.f32 (*.f32 ux ux) (-.f32 1 (*.f32 maxCos maxCos))))) (*.f32 2 (/.f32 (+.f32 1 maxCos) (*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))))
(+.f32 (+.f32 (/.f32 (-.f32 -1 maxCos) (*.f32 ux (-.f32 1 (*.f32 maxCos maxCos)))) (/.f32 1 (*.f32 (*.f32 ux ux) (-.f32 1 (*.f32 maxCos maxCos))))) (*.f32 -2 (/.f32 (+.f32 1 maxCos) (*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))))
(+.f32 (-.f32 (/.f32 (/.f32 1 (-.f32 1 (*.f32 maxCos maxCos))) (*.f32 ux ux)) (/.f32 (/.f32 (+.f32 1 maxCos) ux) (-.f32 1 (*.f32 maxCos maxCos)))) (/.f32 -2 (/.f32 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2) (/.f32 (+.f32 1 maxCos) (*.f32 ux ux)))))
(-.f32 (+.f32 (/.f32 1 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) (pow.f32 ux 2))) (+.f32 (*.f32 -1 (/.f32 (+.f32 1 maxCos) (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux))) (*.f32 -1 (/.f32 (+.f32 (*.f32 -2 (/.f32 (-.f32 (/.f32 1 (-.f32 1 (pow.f32 maxCos 2))) (*.f32 2 (/.f32 (+.f32 1 maxCos) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (-.f32 1 (pow.f32 maxCos 2)))) (*.f32 -1 (/.f32 (+.f32 1 maxCos) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (pow.f32 ux 3))))) (*.f32 2 (/.f32 (+.f32 1 maxCos) (*.f32 (pow.f32 ux 2) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))))
(+.f32 (/.f32 1 (*.f32 (*.f32 ux ux) (-.f32 1 (*.f32 maxCos maxCos)))) (-.f32 (fma.f32 -1 (/.f32 (+.f32 1 maxCos) (*.f32 ux (-.f32 1 (*.f32 maxCos maxCos)))) (neg.f32 (/.f32 (fma.f32 -2 (/.f32 (-.f32 (/.f32 1 (-.f32 1 (*.f32 maxCos maxCos))) (*.f32 2 (/.f32 (+.f32 1 maxCos) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))) (-.f32 1 (*.f32 maxCos maxCos))) (/.f32 (neg.f32 (+.f32 1 maxCos)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))) (pow.f32 ux 3)))) (*.f32 2 (/.f32 (+.f32 1 maxCos) (*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))))))
(+.f32 (/.f32 1 (*.f32 (*.f32 ux ux) (-.f32 1 (*.f32 maxCos maxCos)))) (+.f32 (-.f32 (/.f32 (-.f32 -1 maxCos) (*.f32 ux (-.f32 1 (*.f32 maxCos maxCos)))) (/.f32 (fma.f32 -2 (-.f32 (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (/.f32 (*.f32 -2 (-.f32 -1 maxCos)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 3))) (/.f32 (-.f32 -1 maxCos) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))) (pow.f32 ux 3))) (*.f32 -2 (/.f32 (+.f32 1 maxCos) (*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))))))
(+.f32 (/.f32 (/.f32 1 (-.f32 1 (*.f32 maxCos maxCos))) (*.f32 ux ux)) (+.f32 (-.f32 (/.f32 (-.f32 -1 maxCos) (*.f32 ux (-.f32 1 (*.f32 maxCos maxCos)))) (/.f32 (fma.f32 -2 (+.f32 (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (/.f32 (+.f32 -2 (*.f32 -2 maxCos)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 3))) (/.f32 (-.f32 -1 maxCos) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))) (pow.f32 ux 3))) (/.f32 -2 (/.f32 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2) (/.f32 (+.f32 1 maxCos) (*.f32 ux ux))))))
(-.f32 (+.f32 (/.f32 1 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) (pow.f32 ux 2))) (+.f32 (*.f32 -1 (/.f32 (+.f32 1 maxCos) (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux))) (+.f32 (*.f32 2 (/.f32 (+.f32 1 maxCos) (*.f32 (pow.f32 ux 4) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 3)))) (*.f32 -1 (/.f32 (+.f32 (*.f32 -2 (/.f32 (-.f32 (/.f32 1 (-.f32 1 (pow.f32 maxCos 2))) (*.f32 2 (/.f32 (+.f32 1 maxCos) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (-.f32 1 (pow.f32 maxCos 2)))) (*.f32 -1 (/.f32 (+.f32 1 maxCos) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (pow.f32 ux 3)))))) (+.f32 (*.f32 2 (/.f32 (+.f32 (*.f32 -2 (/.f32 (-.f32 (/.f32 1 (-.f32 1 (pow.f32 maxCos 2))) (*.f32 2 (/.f32 (+.f32 1 maxCos) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (-.f32 1 (pow.f32 maxCos 2)))) (*.f32 -1 (/.f32 (+.f32 1 maxCos) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (*.f32 (pow.f32 ux 4) (-.f32 1 (pow.f32 maxCos 2))))) (+.f32 (/.f32 1 (*.f32 (pow.f32 ux 4) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2))) (*.f32 2 (/.f32 (+.f32 1 maxCos) (*.f32 (pow.f32 ux 2) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))))))
(+.f32 (/.f32 1 (*.f32 (*.f32 ux ux) (-.f32 1 (*.f32 maxCos maxCos)))) (-.f32 (fma.f32 -1 (/.f32 (+.f32 1 maxCos) (*.f32 ux (-.f32 1 (*.f32 maxCos maxCos)))) (fma.f32 2 (/.f32 (+.f32 1 maxCos) (*.f32 (pow.f32 ux 4) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 3))) (neg.f32 (/.f32 (fma.f32 -2 (/.f32 (-.f32 (/.f32 1 (-.f32 1 (*.f32 maxCos maxCos))) (*.f32 2 (/.f32 (+.f32 1 maxCos) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))) (-.f32 1 (*.f32 maxCos maxCos))) (/.f32 (neg.f32 (+.f32 1 maxCos)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))) (pow.f32 ux 3))))) (fma.f32 2 (/.f32 (fma.f32 -2 (/.f32 (-.f32 (/.f32 1 (-.f32 1 (*.f32 maxCos maxCos))) (*.f32 2 (/.f32 (+.f32 1 maxCos) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))) (-.f32 1 (*.f32 maxCos maxCos))) (/.f32 (neg.f32 (+.f32 1 maxCos)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))) (*.f32 (-.f32 1 (*.f32 maxCos maxCos)) (pow.f32 ux 4))) (+.f32 (*.f32 2 (/.f32 (+.f32 1 maxCos) (*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))) (/.f32 1 (*.f32 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2) (pow.f32 ux 4)))))))
(+.f32 (/.f32 1 (*.f32 (*.f32 ux ux) (-.f32 1 (*.f32 maxCos maxCos)))) (-.f32 (-.f32 (fma.f32 2 (/.f32 (+.f32 1 maxCos) (*.f32 (pow.f32 ux 4) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 3))) (/.f32 (-.f32 -1 maxCos) (*.f32 ux (-.f32 1 (*.f32 maxCos maxCos))))) (/.f32 (fma.f32 -2 (-.f32 (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (/.f32 (*.f32 -2 (-.f32 -1 maxCos)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 3))) (/.f32 (-.f32 -1 maxCos) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))) (pow.f32 ux 3))) (fma.f32 2 (/.f32 (fma.f32 -2 (-.f32 (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (/.f32 (*.f32 -2 (-.f32 -1 maxCos)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 3))) (/.f32 (-.f32 -1 maxCos) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))) (*.f32 (-.f32 1 (*.f32 maxCos maxCos)) (pow.f32 ux 4))) (fma.f32 2 (/.f32 (+.f32 1 maxCos) (*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))) (/.f32 1 (*.f32 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2) (pow.f32 ux 4)))))))
(+.f32 (/.f32 (/.f32 1 (-.f32 1 (*.f32 maxCos maxCos))) (*.f32 ux ux)) (-.f32 (-.f32 (fma.f32 2 (/.f32 (/.f32 (+.f32 1 maxCos) (pow.f32 ux 4)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 3)) (/.f32 (-.f32 -1 maxCos) (*.f32 ux (-.f32 1 (*.f32 maxCos maxCos))))) (/.f32 (fma.f32 -2 (+.f32 (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (/.f32 (+.f32 -2 (*.f32 -2 maxCos)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 3))) (/.f32 (-.f32 -1 maxCos) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))) (pow.f32 ux 3))) (fma.f32 2 (/.f32 (fma.f32 -2 (+.f32 (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (/.f32 (+.f32 -2 (*.f32 -2 maxCos)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 3))) (/.f32 (-.f32 -1 maxCos) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))) (*.f32 (-.f32 1 (*.f32 maxCos maxCos)) (pow.f32 ux 4))) (fma.f32 2 (/.f32 (+.f32 1 maxCos) (*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))) (/.f32 (/.f32 1 (pow.f32 ux 4)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))))))
(*.f32 -1 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux)))
(/.f32 (neg.f32 (+.f32 1 maxCos)) (*.f32 ux (-.f32 1 (*.f32 maxCos maxCos))))
(/.f32 (-.f32 -1 maxCos) (*.f32 ux (-.f32 1 (*.f32 maxCos maxCos))))
(-.f32 (+.f32 (/.f32 1 (*.f32 (pow.f32 ux 2) (-.f32 1 (pow.f32 maxCos 2)))) (*.f32 -1 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux)))) (*.f32 2 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (*.f32 (pow.f32 ux 2) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))))
(-.f32 (fma.f32 -1 (/.f32 (+.f32 1 maxCos) (*.f32 ux (-.f32 1 (*.f32 maxCos maxCos)))) (/.f32 1 (*.f32 (*.f32 ux ux) (-.f32 1 (*.f32 maxCos maxCos))))) (*.f32 2 (/.f32 (+.f32 1 maxCos) (*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))))
(+.f32 (+.f32 (/.f32 (-.f32 -1 maxCos) (*.f32 ux (-.f32 1 (*.f32 maxCos maxCos)))) (/.f32 1 (*.f32 (*.f32 ux ux) (-.f32 1 (*.f32 maxCos maxCos))))) (*.f32 -2 (/.f32 (+.f32 1 maxCos) (*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))))
(+.f32 (-.f32 (/.f32 (/.f32 1 (-.f32 1 (*.f32 maxCos maxCos))) (*.f32 ux ux)) (/.f32 (/.f32 (+.f32 1 maxCos) ux) (-.f32 1 (*.f32 maxCos maxCos)))) (/.f32 -2 (/.f32 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2) (/.f32 (+.f32 1 maxCos) (*.f32 ux ux)))))
(-.f32 (+.f32 (/.f32 1 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) (pow.f32 ux 2))) (+.f32 (*.f32 -1 (/.f32 (-.f32 (*.f32 -1 (/.f32 maxCos (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2))) (+.f32 (*.f32 2 (/.f32 (-.f32 (/.f32 1 (-.f32 1 (pow.f32 maxCos 2))) (*.f32 2 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (-.f32 1 (pow.f32 maxCos 2)))) (/.f32 1 (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (pow.f32 ux 3))) (*.f32 -1 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux))))) (*.f32 2 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (*.f32 (pow.f32 ux 2) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))))
(+.f32 (+.f32 (/.f32 1 (*.f32 (*.f32 ux ux) (-.f32 1 (*.f32 maxCos maxCos)))) (fma.f32 -1 (/.f32 (-.f32 (/.f32 (neg.f32 maxCos) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (fma.f32 2 (/.f32 (-.f32 (/.f32 1 (-.f32 1 (*.f32 maxCos maxCos))) (/.f32 (*.f32 2 (-.f32 1 (neg.f32 maxCos))) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))) (-.f32 1 (*.f32 maxCos maxCos))) (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))) (pow.f32 ux 3)) (neg.f32 (/.f32 (-.f32 1 (neg.f32 maxCos)) (*.f32 ux (-.f32 1 (*.f32 maxCos maxCos))))))) (*.f32 -2 (/.f32 (-.f32 1 (neg.f32 maxCos)) (*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))))
(+.f32 (-.f32 (/.f32 1 (*.f32 (*.f32 ux ux) (-.f32 1 (*.f32 maxCos maxCos)))) (/.f32 (-.f32 (/.f32 (neg.f32 maxCos) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (fma.f32 2 (-.f32 (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (/.f32 (*.f32 -2 (-.f32 -1 maxCos)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 3))) (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))) (pow.f32 ux 3))) (+.f32 (/.f32 (-.f32 -1 maxCos) (*.f32 ux (-.f32 1 (*.f32 maxCos maxCos)))) (*.f32 -2 (/.f32 (+.f32 1 maxCos) (*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))))))
(+.f32 (+.f32 (/.f32 (-.f32 -1 maxCos) (*.f32 ux (-.f32 1 (*.f32 maxCos maxCos)))) (/.f32 (+.f32 (/.f32 maxCos (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (fma.f32 2 (+.f32 (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (/.f32 (+.f32 -2 (*.f32 -2 maxCos)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 3))) (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))) (pow.f32 ux 3))) (+.f32 (/.f32 (/.f32 1 (-.f32 1 (*.f32 maxCos maxCos))) (*.f32 ux ux)) (/.f32 -2 (/.f32 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2) (/.f32 (+.f32 1 maxCos) (*.f32 ux ux))))))
(-.f32 (+.f32 (/.f32 1 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) (pow.f32 ux 2))) (+.f32 (*.f32 -1 (/.f32 (-.f32 (*.f32 -1 (/.f32 maxCos (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2))) (+.f32 (*.f32 2 (/.f32 (-.f32 (/.f32 1 (-.f32 1 (pow.f32 maxCos 2))) (*.f32 2 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (-.f32 1 (pow.f32 maxCos 2)))) (/.f32 1 (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (pow.f32 ux 3))) (+.f32 (*.f32 -1 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux))) (*.f32 2 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (*.f32 (pow.f32 ux 4) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 3))))))) (+.f32 (*.f32 2 (/.f32 (-.f32 (*.f32 -1 (/.f32 maxCos (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2))) (+.f32 (*.f32 2 (/.f32 (-.f32 (/.f32 1 (-.f32 1 (pow.f32 maxCos 2))) (*.f32 2 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (-.f32 1 (pow.f32 maxCos 2)))) (/.f32 1 (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (*.f32 (pow.f32 ux 4) (-.f32 1 (pow.f32 maxCos 2))))) (+.f32 (*.f32 2 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (*.f32 (pow.f32 ux 2) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (/.f32 1 (*.f32 (pow.f32 ux 4) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2))))))
(-.f32 (+.f32 (/.f32 1 (*.f32 (*.f32 ux ux) (-.f32 1 (*.f32 maxCos maxCos)))) (fma.f32 -1 (/.f32 (-.f32 (/.f32 (neg.f32 maxCos) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (fma.f32 2 (/.f32 (-.f32 (/.f32 1 (-.f32 1 (*.f32 maxCos maxCos))) (/.f32 (*.f32 2 (-.f32 1 (neg.f32 maxCos))) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))) (-.f32 1 (*.f32 maxCos maxCos))) (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))) (pow.f32 ux 3)) (fma.f32 -1 (/.f32 (-.f32 1 (neg.f32 maxCos)) (*.f32 ux (-.f32 1 (*.f32 maxCos maxCos)))) (*.f32 2 (/.f32 (-.f32 1 (neg.f32 maxCos)) (*.f32 (pow.f32 ux 4) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 3))))))) (fma.f32 2 (/.f32 (-.f32 (/.f32 (neg.f32 maxCos) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (fma.f32 2 (/.f32 (-.f32 (/.f32 1 (-.f32 1 (*.f32 maxCos maxCos))) (/.f32 (*.f32 2 (-.f32 1 (neg.f32 maxCos))) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))) (-.f32 1 (*.f32 maxCos maxCos))) (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))) (*.f32 (-.f32 1 (*.f32 maxCos maxCos)) (pow.f32 ux 4))) (fma.f32 2 (/.f32 (-.f32 1 (neg.f32 maxCos)) (*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))) (/.f32 1 (*.f32 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2) (pow.f32 ux 4))))))
(-.f32 (+.f32 (/.f32 1 (*.f32 (*.f32 ux ux) (-.f32 1 (*.f32 maxCos maxCos)))) (-.f32 (fma.f32 2 (/.f32 (+.f32 1 maxCos) (*.f32 (pow.f32 ux 4) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 3))) (/.f32 (-.f32 -1 maxCos) (*.f32 ux (-.f32 1 (*.f32 maxCos maxCos))))) (/.f32 (-.f32 (/.f32 (neg.f32 maxCos) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (fma.f32 2 (-.f32 (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (/.f32 (*.f32 -2 (-.f32 -1 maxCos)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 3))) (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))) (pow.f32 ux 3)))) (fma.f32 2 (/.f32 (-.f32 (/.f32 (neg.f32 maxCos) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (fma.f32 2 (-.f32 (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (/.f32 (*.f32 -2 (-.f32 -1 maxCos)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 3))) (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))) (*.f32 (-.f32 1 (*.f32 maxCos maxCos)) (pow.f32 ux 4))) (fma.f32 2 (/.f32 (+.f32 1 maxCos) (*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))) (/.f32 1 (*.f32 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2) (pow.f32 ux 4))))))
(+.f32 (/.f32 (/.f32 1 (-.f32 1 (*.f32 maxCos maxCos))) (*.f32 ux ux)) (+.f32 (+.f32 (/.f32 (+.f32 (/.f32 maxCos (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (fma.f32 2 (+.f32 (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (/.f32 (+.f32 -2 (*.f32 -2 maxCos)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 3))) (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))) (pow.f32 ux 3)) (fma.f32 2 (/.f32 (/.f32 (+.f32 1 maxCos) (pow.f32 ux 4)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 3)) (/.f32 (-.f32 -1 maxCos) (*.f32 ux (-.f32 1 (*.f32 maxCos maxCos)))))) (-.f32 (*.f32 2 (/.f32 (+.f32 (/.f32 maxCos (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (fma.f32 2 (+.f32 (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (/.f32 (+.f32 -2 (*.f32 -2 maxCos)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 3))) (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))) (*.f32 (-.f32 1 (*.f32 maxCos maxCos)) (pow.f32 ux 4)))) (fma.f32 2 (/.f32 (+.f32 1 maxCos) (*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))) (/.f32 (/.f32 1 (pow.f32 ux 4)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))))))
(/.f32 1 (-.f32 1 ux))
(+.f32 (/.f32 1 (-.f32 1 ux)) (*.f32 -1 (/.f32 (*.f32 maxCos ux) (pow.f32 (-.f32 1 ux) 2))))
(+.f32 (/.f32 1 (-.f32 1 ux)) (neg.f32 (/.f32 maxCos (/.f32 (pow.f32 (-.f32 1 ux) 2) ux))))
(-.f32 (/.f32 1 (-.f32 1 ux)) (/.f32 ux (/.f32 (pow.f32 (-.f32 1 ux) 2) maxCos)))
(-.f32 (/.f32 1 (-.f32 1 ux)) (*.f32 (/.f32 maxCos (pow.f32 (-.f32 1 ux) 2)) ux))
(+.f32 (/.f32 (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)) (pow.f32 (-.f32 1 ux) 3)) (+.f32 (/.f32 1 (-.f32 1 ux)) (*.f32 -1 (/.f32 (*.f32 maxCos ux) (pow.f32 (-.f32 1 ux) 2)))))
(+.f32 (+.f32 (/.f32 1 (-.f32 1 ux)) (neg.f32 (/.f32 maxCos (/.f32 (pow.f32 (-.f32 1 ux) 2) ux)))) (/.f32 (*.f32 maxCos maxCos) (/.f32 (pow.f32 (-.f32 1 ux) 3) (*.f32 ux ux))))
(+.f32 (-.f32 (/.f32 1 (-.f32 1 ux)) (/.f32 ux (/.f32 (pow.f32 (-.f32 1 ux) 2) maxCos))) (/.f32 (*.f32 ux (*.f32 ux (*.f32 maxCos maxCos))) (pow.f32 (-.f32 1 ux) 3)))
(+.f32 (-.f32 (/.f32 1 (-.f32 1 ux)) (*.f32 (/.f32 maxCos (pow.f32 (-.f32 1 ux) 2)) ux)) (*.f32 (/.f32 maxCos (/.f32 (pow.f32 (-.f32 1 ux) 3) maxCos)) (*.f32 ux ux)))
(+.f32 (/.f32 (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)) (pow.f32 (-.f32 1 ux) 3)) (+.f32 (/.f32 1 (-.f32 1 ux)) (+.f32 (*.f32 -1 (/.f32 (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3)) (pow.f32 (-.f32 1 ux) 4))) (*.f32 -1 (/.f32 (*.f32 maxCos ux) (pow.f32 (-.f32 1 ux) 2))))))
(+.f32 (/.f32 (*.f32 maxCos maxCos) (/.f32 (pow.f32 (-.f32 1 ux) 3) (*.f32 ux ux))) (+.f32 (/.f32 1 (-.f32 1 ux)) (fma.f32 -1 (/.f32 (pow.f32 maxCos 3) (/.f32 (pow.f32 (-.f32 1 ux) 4) (pow.f32 ux 3))) (neg.f32 (/.f32 maxCos (/.f32 (pow.f32 (-.f32 1 ux) 2) ux))))))
(+.f32 (/.f32 (*.f32 ux (*.f32 ux (*.f32 maxCos maxCos))) (pow.f32 (-.f32 1 ux) 3)) (-.f32 (-.f32 (/.f32 1 (-.f32 1 ux)) (/.f32 (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3)) (pow.f32 (-.f32 1 ux) 4))) (/.f32 ux (/.f32 (pow.f32 (-.f32 1 ux) 2) maxCos))))
(-.f32 (+.f32 (-.f32 (/.f32 1 (-.f32 1 ux)) (*.f32 (/.f32 maxCos (pow.f32 (-.f32 1 ux) 2)) ux)) (*.f32 (/.f32 maxCos (/.f32 (pow.f32 (-.f32 1 ux) 3) maxCos)) (*.f32 ux ux))) (*.f32 (/.f32 (pow.f32 ux 3) (pow.f32 (-.f32 1 ux) 4)) (pow.f32 maxCos 3)))
(/.f32 1 (*.f32 maxCos ux))
(/.f32 (/.f32 1 maxCos) ux)
(/.f32 1 (*.f32 ux maxCos))
(+.f32 (/.f32 1 (*.f32 maxCos ux)) (*.f32 -1 (/.f32 (-.f32 1 ux) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))))
(+.f32 (/.f32 (/.f32 1 maxCos) ux) (neg.f32 (/.f32 (-.f32 1 ux) (*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos)))))
(-.f32 (/.f32 (/.f32 1 maxCos) ux) (/.f32 (-.f32 1 ux) (*.f32 ux (*.f32 ux (*.f32 maxCos maxCos)))))
(-.f32 (/.f32 1 (*.f32 ux maxCos)) (/.f32 (-.f32 1 ux) (*.f32 (*.f32 ux maxCos) (*.f32 ux maxCos))))
(+.f32 (/.f32 1 (*.f32 maxCos ux)) (+.f32 (*.f32 -1 (/.f32 (-.f32 1 ux) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))) (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3)))))
(+.f32 (/.f32 (/.f32 1 maxCos) ux) (fma.f32 -1 (/.f32 (-.f32 1 ux) (*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))) (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3)))))
(+.f32 (/.f32 (/.f32 1 maxCos) ux) (-.f32 (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3))) (/.f32 (-.f32 1 ux) (*.f32 ux (*.f32 ux (*.f32 maxCos maxCos))))))
(+.f32 (/.f32 1 (*.f32 ux maxCos)) (-.f32 (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3))) (/.f32 (-.f32 1 ux) (*.f32 (*.f32 ux maxCos) (*.f32 ux maxCos)))))
(+.f32 (*.f32 -1 (/.f32 (pow.f32 (-.f32 1 ux) 3) (*.f32 (pow.f32 maxCos 4) (pow.f32 ux 4)))) (+.f32 (/.f32 1 (*.f32 maxCos ux)) (+.f32 (*.f32 -1 (/.f32 (-.f32 1 ux) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))) (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3))))))
(fma.f32 -1 (/.f32 (pow.f32 (-.f32 1 ux) 3) (*.f32 (pow.f32 ux 4) (pow.f32 maxCos 4))) (+.f32 (/.f32 (/.f32 1 maxCos) ux) (fma.f32 -1 (/.f32 (-.f32 1 ux) (*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))) (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3))))))
(-.f32 (+.f32 (/.f32 (/.f32 1 maxCos) ux) (-.f32 (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3))) (/.f32 (-.f32 1 ux) (*.f32 ux (*.f32 ux (*.f32 maxCos maxCos)))))) (/.f32 (pow.f32 (-.f32 1 ux) 3) (*.f32 (pow.f32 ux 4) (pow.f32 maxCos 4))))
(+.f32 (/.f32 1 (*.f32 ux maxCos)) (-.f32 (-.f32 (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3))) (/.f32 (-.f32 1 ux) (*.f32 (*.f32 ux maxCos) (*.f32 ux maxCos)))) (/.f32 (pow.f32 (-.f32 1 ux) 3) (*.f32 (pow.f32 ux 4) (pow.f32 maxCos 4)))))
(/.f32 1 (*.f32 maxCos ux))
(/.f32 (/.f32 1 maxCos) ux)
(/.f32 1 (*.f32 ux maxCos))
(+.f32 (/.f32 1 (*.f32 maxCos ux)) (*.f32 -1 (/.f32 (-.f32 1 ux) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))))
(+.f32 (/.f32 (/.f32 1 maxCos) ux) (neg.f32 (/.f32 (-.f32 1 ux) (*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos)))))
(-.f32 (/.f32 (/.f32 1 maxCos) ux) (/.f32 (-.f32 1 ux) (*.f32 ux (*.f32 ux (*.f32 maxCos maxCos)))))
(-.f32 (/.f32 1 (*.f32 ux maxCos)) (/.f32 (-.f32 1 ux) (*.f32 (*.f32 ux maxCos) (*.f32 ux maxCos))))
(+.f32 (/.f32 1 (*.f32 maxCos ux)) (+.f32 (*.f32 -1 (/.f32 (-.f32 1 ux) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))) (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3)))))
(+.f32 (/.f32 (/.f32 1 maxCos) ux) (fma.f32 -1 (/.f32 (-.f32 1 ux) (*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))) (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3)))))
(+.f32 (/.f32 (/.f32 1 maxCos) ux) (-.f32 (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3))) (/.f32 (-.f32 1 ux) (*.f32 ux (*.f32 ux (*.f32 maxCos maxCos))))))
(+.f32 (/.f32 1 (*.f32 ux maxCos)) (-.f32 (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3))) (/.f32 (-.f32 1 ux) (*.f32 (*.f32 ux maxCos) (*.f32 ux maxCos)))))
(+.f32 (*.f32 -1 (/.f32 (pow.f32 (-.f32 1 ux) 3) (*.f32 (pow.f32 maxCos 4) (pow.f32 ux 4)))) (+.f32 (/.f32 1 (*.f32 maxCos ux)) (+.f32 (*.f32 -1 (/.f32 (-.f32 1 ux) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))) (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3))))))
(fma.f32 -1 (/.f32 (pow.f32 (-.f32 1 ux) 3) (*.f32 (pow.f32 ux 4) (pow.f32 maxCos 4))) (+.f32 (/.f32 (/.f32 1 maxCos) ux) (fma.f32 -1 (/.f32 (-.f32 1 ux) (*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))) (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3))))))
(-.f32 (+.f32 (/.f32 (/.f32 1 maxCos) ux) (-.f32 (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3))) (/.f32 (-.f32 1 ux) (*.f32 ux (*.f32 ux (*.f32 maxCos maxCos)))))) (/.f32 (pow.f32 (-.f32 1 ux) 3) (*.f32 (pow.f32 ux 4) (pow.f32 maxCos 4))))
(+.f32 (/.f32 1 (*.f32 ux maxCos)) (-.f32 (-.f32 (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3))) (/.f32 (-.f32 1 ux) (*.f32 (*.f32 ux maxCos) (*.f32 ux maxCos)))) (/.f32 (pow.f32 (-.f32 1 ux) 3) (*.f32 (pow.f32 ux 4) (pow.f32 maxCos 4)))))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))
(*.f32 ux (*.f32 ux (*.f32 maxCos maxCos)))
(*.f32 (*.f32 ux maxCos) (*.f32 ux maxCos))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))
(*.f32 ux (*.f32 ux (*.f32 maxCos maxCos)))
(*.f32 (*.f32 ux maxCos) (*.f32 ux maxCos))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))
(*.f32 ux (*.f32 ux (*.f32 maxCos maxCos)))
(*.f32 (*.f32 ux maxCos) (*.f32 ux maxCos))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))
(*.f32 ux (*.f32 ux (*.f32 maxCos maxCos)))
(*.f32 (*.f32 ux maxCos) (*.f32 ux maxCos))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))
(*.f32 ux (*.f32 ux (*.f32 maxCos maxCos)))
(*.f32 (*.f32 ux maxCos) (*.f32 ux maxCos))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))
(*.f32 ux (*.f32 ux (*.f32 maxCos maxCos)))
(*.f32 (*.f32 ux maxCos) (*.f32 ux maxCos))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))
(*.f32 ux (*.f32 ux (*.f32 maxCos maxCos)))
(*.f32 (*.f32 ux maxCos) (*.f32 ux maxCos))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))
(*.f32 ux (*.f32 ux (*.f32 maxCos maxCos)))
(*.f32 (*.f32 ux maxCos) (*.f32 ux maxCos))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))
(*.f32 ux (*.f32 ux (*.f32 maxCos maxCos)))
(*.f32 (*.f32 ux maxCos) (*.f32 ux maxCos))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))
(*.f32 ux (*.f32 ux (*.f32 maxCos maxCos)))
(*.f32 (*.f32 ux maxCos) (*.f32 ux maxCos))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))
(*.f32 ux (*.f32 ux (*.f32 maxCos maxCos)))
(*.f32 (*.f32 ux maxCos) (*.f32 ux maxCos))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))
(*.f32 ux (*.f32 ux (*.f32 maxCos maxCos)))
(*.f32 (*.f32 ux maxCos) (*.f32 ux maxCos))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))
(*.f32 ux (*.f32 ux (*.f32 maxCos maxCos)))
(*.f32 (*.f32 ux maxCos) (*.f32 ux maxCos))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))
(*.f32 ux (*.f32 ux (*.f32 maxCos maxCos)))
(*.f32 (*.f32 ux maxCos) (*.f32 ux maxCos))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))
(*.f32 ux (*.f32 ux (*.f32 maxCos maxCos)))
(*.f32 (*.f32 ux maxCos) (*.f32 ux maxCos))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))
(*.f32 ux (*.f32 ux (*.f32 maxCos maxCos)))
(*.f32 (*.f32 ux maxCos) (*.f32 ux maxCos))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))
(*.f32 ux (*.f32 ux (*.f32 maxCos maxCos)))
(*.f32 (*.f32 ux maxCos) (*.f32 ux maxCos))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))
(*.f32 ux (*.f32 ux (*.f32 maxCos maxCos)))
(*.f32 (*.f32 ux maxCos) (*.f32 ux maxCos))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))
(*.f32 ux (*.f32 ux (*.f32 maxCos maxCos)))
(*.f32 (*.f32 ux maxCos) (*.f32 ux maxCos))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))
(*.f32 ux (*.f32 ux (*.f32 maxCos maxCos)))
(*.f32 (*.f32 ux maxCos) (*.f32 ux maxCos))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))
(*.f32 ux (*.f32 ux (*.f32 maxCos maxCos)))
(*.f32 (*.f32 ux maxCos) (*.f32 ux maxCos))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))
(*.f32 ux (*.f32 ux (*.f32 maxCos maxCos)))
(*.f32 (*.f32 ux maxCos) (*.f32 ux maxCos))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))
(*.f32 ux (*.f32 ux (*.f32 maxCos maxCos)))
(*.f32 (*.f32 ux maxCos) (*.f32 ux maxCos))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))
(*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))
(*.f32 ux (*.f32 ux (*.f32 maxCos maxCos)))
(*.f32 (*.f32 ux maxCos) (*.f32 ux maxCos))

localize33.0ms (0.6%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(fma.f32 ux maxCos (-.f32 1 ux))
0.1b
(cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))
0.5b
(pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 3)
Compiler

Compiled 32 to 20 computations (37.5% saved)

series13.0ms (0.2%)

Counts
3 → 40
Calls

18 calls:

TimeVariablePointExpression
3.0ms
maxCos
@0
(pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 3)
2.0ms
ux
@0
(pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 3)
1.0ms
ux
@inf
(pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 3)
1.0ms
maxCos
@inf
(pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 3)
1.0ms
maxCos
@-inf
(pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 3)

rewrite68.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
790×pow1_binary32
741×add-log-exp_binary32
740×log1p-expm1-u_binary32
740×expm1-log1p-u_binary32
724×add-exp-log_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0926
119026
2200126
Stop Event
node limit
Counts
3 → 77
Calls
Call 1
Inputs
(pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 3)
(cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))
(fma.f32 ux maxCos (-.f32 1 ux))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (-.f32 1 ux) (*.f32 ux maxCos))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 ux maxCos) (-.f32 1 ux))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (*.f32 ux maxCos) 1) (-.f32 1 ux))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (+.f32 (*.f32 ux maxCos) 1) (neg.f32 ux))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (fma.f32 ux maxCos (-.f32 1 ux))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 (*.f32 ux maxCos) 1) ux)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (fma.f32 ux maxCos (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 2) (*.f32 (cbrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/6) (*.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/6) (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 2) 3) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/6) 3) (pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/6) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2) 1) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2) (pow.f32 (cbrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 2)) (cbrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2) (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/6)) (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (*.f32 ux maxCos) 3) (pow.f32 (-.f32 1 ux) 3)) (+.f32 (*.f32 (*.f32 ux maxCos) (*.f32 ux maxCos)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (-.f32 1 ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (*.f32 (*.f32 ux maxCos) (*.f32 ux maxCos)) (pow.f32 (-.f32 1 ux) 2)) (-.f32 (*.f32 ux maxCos) (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 ux maxCos (-.f32 1 ux))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (pow.f32 (cbrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (pow.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 2) (cbrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/6) (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 1 1/3) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2) 1/3) (cbrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 1/3) (pow.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (-.f32 1 ux) (*.f32 ux maxCos))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 ux maxCos) (-.f32 1 ux))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (*.f32 ux maxCos) 1) (-.f32 1 ux))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (+.f32 (*.f32 ux maxCos) 1) (neg.f32 ux))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (fma.f32 ux maxCos (-.f32 1 ux))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 (*.f32 ux maxCos) 1) ux)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (fma.f32 ux maxCos (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 2) (*.f32 (cbrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/6) (*.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/6) (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 2) 3) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/6) 3) (pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/6) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2) 1) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2) (pow.f32 (cbrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 2)) (cbrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2) (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/6)) (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (*.f32 ux maxCos) 3) (pow.f32 (-.f32 1 ux) 3)) (+.f32 (*.f32 (*.f32 ux maxCos) (*.f32 ux maxCos)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (-.f32 1 ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (*.f32 (*.f32 ux maxCos) (*.f32 ux maxCos)) (pow.f32 (-.f32 1 ux) 2)) (-.f32 (*.f32 ux maxCos) (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))))

simplify127.0ms (2.1%)

Algorithm
egg-herbie
Rules
629×associate-+l+_binary32
629×distribute-rgt-in_binary32
617×distribute-lft-in_binary32
558×associate-+r+_binary32
335×times-frac_binary32
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01601345
15741117
223301039
375971039
Stop Event
node limit
Counts
117 → 87
Calls
Call 1
Inputs
1
(+.f32 1 (*.f32 ux (+.f32 (*.f32 2/3 (-.f32 maxCos 1)) (*.f32 1/3 (-.f32 maxCos 1)))))
(+.f32 1 (+.f32 (*.f32 (+.f32 (*.f32 1/9 (pow.f32 (-.f32 maxCos 1) 2)) (+.f32 (*.f32 -1/9 (pow.f32 (-.f32 maxCos 1) 2)) (+.f32 (*.f32 2/9 (pow.f32 (-.f32 maxCos 1) 2)) (*.f32 -2/9 (pow.f32 (-.f32 maxCos 1) 2))))) (pow.f32 ux 2)) (*.f32 ux (+.f32 (*.f32 2/3 (-.f32 maxCos 1)) (*.f32 1/3 (-.f32 maxCos 1))))))
(+.f32 1 (+.f32 (*.f32 (+.f32 (*.f32 1/9 (pow.f32 (-.f32 maxCos 1) 2)) (+.f32 (*.f32 -1/9 (pow.f32 (-.f32 maxCos 1) 2)) (+.f32 (*.f32 2/9 (pow.f32 (-.f32 maxCos 1) 2)) (*.f32 -2/9 (pow.f32 (-.f32 maxCos 1) 2))))) (pow.f32 ux 2)) (+.f32 (*.f32 ux (+.f32 (*.f32 2/3 (-.f32 maxCos 1)) (*.f32 1/3 (-.f32 maxCos 1)))) (*.f32 (pow.f32 ux 3) (+.f32 (*.f32 -2/3 (+.f32 (*.f32 1/27 (pow.f32 (-.f32 maxCos 1) 3)) (*.f32 -2/9 (pow.f32 (-.f32 maxCos 1) 3)))) (+.f32 (*.f32 -4/27 (pow.f32 (-.f32 maxCos 1) 3)) (+.f32 (*.f32 -1/3 (+.f32 (*.f32 1/27 (pow.f32 (-.f32 maxCos 1) 3)) (*.f32 -2/9 (pow.f32 (-.f32 maxCos 1) 3)))) (*.f32 1/3 (*.f32 (-.f32 maxCos 1) (+.f32 (*.f32 1/9 (pow.f32 (-.f32 maxCos 1) 2)) (*.f32 -2/9 (pow.f32 (-.f32 maxCos 1) 2))))))))))))
(*.f32 (pow.f32 1 1/3) (-.f32 1 ux))
(+.f32 (*.f32 (pow.f32 1 1/3) (-.f32 1 ux)) (*.f32 maxCos (+.f32 (*.f32 2/3 (*.f32 (pow.f32 (*.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/9) ux)) (*.f32 1/3 (*.f32 (pow.f32 (*.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/9) ux)))))
(+.f32 (*.f32 (pow.f32 1 1/3) (-.f32 1 ux)) (+.f32 (*.f32 maxCos (+.f32 (*.f32 2/3 (*.f32 (pow.f32 (*.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/9) ux)) (*.f32 1/3 (*.f32 (pow.f32 (*.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/9) ux)))) (*.f32 (pow.f32 maxCos 2) (+.f32 (*.f32 2/9 (*.f32 (pow.f32 (/.f32 1 (-.f32 1 ux)) 1/9) (pow.f32 ux 2))) (+.f32 (*.f32 (pow.f32 (*.f32 1 (-.f32 1 ux)) 1/3) (+.f32 (*.f32 -2/9 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/9) (pow.f32 ux 2))) (*.f32 1/9 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/9) (pow.f32 ux 2))))) (*.f32 -1/9 (*.f32 (pow.f32 (/.f32 1 (-.f32 1 ux)) 1/9) (pow.f32 ux 2))))))))
(+.f32 (*.f32 (pow.f32 1 1/3) (-.f32 1 ux)) (+.f32 (*.f32 maxCos (+.f32 (*.f32 2/3 (*.f32 (pow.f32 (*.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/9) ux)) (*.f32 1/3 (*.f32 (pow.f32 (*.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/9) ux)))) (+.f32 (*.f32 (pow.f32 maxCos 2) (+.f32 (*.f32 2/9 (*.f32 (pow.f32 (/.f32 1 (-.f32 1 ux)) 1/9) (pow.f32 ux 2))) (+.f32 (*.f32 (pow.f32 (*.f32 1 (-.f32 1 ux)) 1/3) (+.f32 (*.f32 -2/9 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/9) (pow.f32 ux 2))) (*.f32 1/9 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/9) (pow.f32 ux 2))))) (*.f32 -1/9 (*.f32 (pow.f32 (/.f32 1 (-.f32 1 ux)) 1/9) (pow.f32 ux 2)))))) (*.f32 (+.f32 (*.f32 1/3 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/9) (*.f32 (+.f32 (*.f32 -2/9 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/9) (pow.f32 ux 2))) (*.f32 1/9 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/9) (pow.f32 ux 2)))) ux))) (+.f32 (*.f32 (+.f32 (*.f32 -2/27 (*.f32 (pow.f32 1 1/9) (/.f32 (pow.f32 ux 3) (-.f32 1 ux)))) (*.f32 -2/3 (*.f32 (pow.f32 (/.f32 1 (-.f32 1 ux)) 1/3) (+.f32 (*.f32 -2/9 (*.f32 (pow.f32 (pow.f32 1 4) 1/9) (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/3) (pow.f32 ux 3)))) (*.f32 1/27 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/3) (pow.f32 ux 3))))))) (pow.f32 (*.f32 1 (-.f32 1 ux)) 1/3)) (+.f32 (*.f32 -2/27 (*.f32 (pow.f32 (pow.f32 1 4) 1/9) (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/3) (pow.f32 ux 3)))) (*.f32 -1/3 (*.f32 (+.f32 (*.f32 1/27 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/3) (pow.f32 ux 3))) (*.f32 -2/9 (*.f32 (pow.f32 (pow.f32 1 4) 1/9) (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/3) (pow.f32 ux 3))))) (pow.f32 1 1/3)))))) (pow.f32 maxCos 3)))))
1
(+.f32 1 (*.f32 1/3 (*.f32 (-.f32 maxCos 1) ux)))
(+.f32 1 (+.f32 (*.f32 1/3 (*.f32 (-.f32 maxCos 1) ux)) (*.f32 -1/9 (*.f32 (pow.f32 (-.f32 maxCos 1) 2) (pow.f32 ux 2)))))
(+.f32 1 (+.f32 (*.f32 1/3 (*.f32 (-.f32 maxCos 1) ux)) (+.f32 (*.f32 -1/3 (*.f32 (pow.f32 ux 3) (+.f32 (*.f32 1/27 (pow.f32 (-.f32 maxCos 1) 3)) (*.f32 -2/9 (pow.f32 (-.f32 maxCos 1) 3))))) (*.f32 -1/9 (*.f32 (pow.f32 (-.f32 maxCos 1) 2) (pow.f32 ux 2))))))
(pow.f32 (-.f32 1 ux) 1/3)
(+.f32 (*.f32 1/3 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/9) (*.f32 maxCos ux))) (pow.f32 (-.f32 1 ux) 1/3))
(+.f32 (*.f32 1/3 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/9) (*.f32 maxCos ux))) (+.f32 (*.f32 -1/9 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 7)) 1/9) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))) (pow.f32 (-.f32 1 ux) 1/3)))
(+.f32 (*.f32 1/3 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/9) (*.f32 maxCos ux))) (+.f32 (*.f32 -1/3 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/3) (*.f32 (pow.f32 maxCos 3) (+.f32 (*.f32 -2/9 (*.f32 (pow.f32 (pow.f32 1 4) 1/9) (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/3) (pow.f32 ux 3)))) (*.f32 1/27 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/3) (pow.f32 ux 3))))))) (+.f32 (*.f32 -1/9 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 7)) 1/9) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))) (pow.f32 (-.f32 1 ux) 1/3))))
1
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(*.f32 (-.f32 maxCos 1) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(*.f32 -1 (*.f32 ux (+.f32 1 (*.f32 -1 maxCos))))
(+.f32 1 (*.f32 -1 (*.f32 ux (+.f32 1 (*.f32 -1 maxCos)))))
(+.f32 1 (*.f32 -1 (*.f32 ux (+.f32 1 (*.f32 -1 maxCos)))))
(+.f32 1 (*.f32 -1 (*.f32 ux (+.f32 1 (*.f32 -1 maxCos)))))
(-.f32 1 ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(*.f32 maxCos ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(*.f32 maxCos ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
Outputs
1
(+.f32 1 (*.f32 ux (+.f32 (*.f32 2/3 (-.f32 maxCos 1)) (*.f32 1/3 (-.f32 maxCos 1)))))
(+.f32 1 (*.f32 ux (*.f32 (-.f32 maxCos 1) 1)))
(-.f32 (fma.f32 ux maxCos 1) ux)
(+.f32 1 (+.f32 (*.f32 (+.f32 (*.f32 1/9 (pow.f32 (-.f32 maxCos 1) 2)) (+.f32 (*.f32 -1/9 (pow.f32 (-.f32 maxCos 1) 2)) (+.f32 (*.f32 2/9 (pow.f32 (-.f32 maxCos 1) 2)) (*.f32 -2/9 (pow.f32 (-.f32 maxCos 1) 2))))) (pow.f32 ux 2)) (*.f32 ux (+.f32 (*.f32 2/3 (-.f32 maxCos 1)) (*.f32 1/3 (-.f32 maxCos 1))))))
(+.f32 1 (*.f32 ux (*.f32 (-.f32 maxCos 1) 1)))
(-.f32 (fma.f32 ux maxCos 1) ux)
(+.f32 1 (+.f32 (*.f32 (+.f32 (*.f32 1/9 (pow.f32 (-.f32 maxCos 1) 2)) (+.f32 (*.f32 -1/9 (pow.f32 (-.f32 maxCos 1) 2)) (+.f32 (*.f32 2/9 (pow.f32 (-.f32 maxCos 1) 2)) (*.f32 -2/9 (pow.f32 (-.f32 maxCos 1) 2))))) (pow.f32 ux 2)) (+.f32 (*.f32 ux (+.f32 (*.f32 2/3 (-.f32 maxCos 1)) (*.f32 1/3 (-.f32 maxCos 1)))) (*.f32 (pow.f32 ux 3) (+.f32 (*.f32 -2/3 (+.f32 (*.f32 1/27 (pow.f32 (-.f32 maxCos 1) 3)) (*.f32 -2/9 (pow.f32 (-.f32 maxCos 1) 3)))) (+.f32 (*.f32 -4/27 (pow.f32 (-.f32 maxCos 1) 3)) (+.f32 (*.f32 -1/3 (+.f32 (*.f32 1/27 (pow.f32 (-.f32 maxCos 1) 3)) (*.f32 -2/9 (pow.f32 (-.f32 maxCos 1) 3)))) (*.f32 1/3 (*.f32 (-.f32 maxCos 1) (+.f32 (*.f32 1/9 (pow.f32 (-.f32 maxCos 1) 2)) (*.f32 -2/9 (pow.f32 (-.f32 maxCos 1) 2))))))))))))
(+.f32 1 (fma.f32 (fma.f32 1/9 (pow.f32 (-.f32 maxCos 1) 2) (fma.f32 -1/9 (pow.f32 (-.f32 maxCos 1) 2) (*.f32 (pow.f32 (-.f32 maxCos 1) 2) 0))) (*.f32 ux ux) (fma.f32 ux (*.f32 (-.f32 maxCos 1) 1) (*.f32 (pow.f32 ux 3) (fma.f32 -2/3 (*.f32 (pow.f32 (-.f32 maxCos 1) 3) -5/27) (fma.f32 -4/27 (pow.f32 (-.f32 maxCos 1) 3) (fma.f32 -1/3 (*.f32 (pow.f32 (-.f32 maxCos 1) 3) -5/27) (*.f32 1/3 (*.f32 (-.f32 maxCos 1) (*.f32 (pow.f32 (-.f32 maxCos 1) 2) -1/9))))))))))
(+.f32 1 (fma.f32 (*.f32 ux ux) 0 (fma.f32 ux (+.f32 maxCos -1) (*.f32 (pow.f32 ux 3) (+.f32 (*.f32 (pow.f32 (+.f32 maxCos -1) 3) 10/81) (fma.f32 (pow.f32 (+.f32 maxCos -1) 3) -4/27 (fma.f32 1/3 (*.f32 -1/9 (pow.f32 (+.f32 maxCos -1) 3)) (*.f32 (pow.f32 (+.f32 maxCos -1) 3) 5/81))))))))
(+.f32 1 (fma.f32 (pow.f32 ux 3) (+.f32 (fma.f32 1/3 (*.f32 -1/9 (pow.f32 (+.f32 maxCos -1) 3)) (*.f32 (pow.f32 (+.f32 maxCos -1) 3) 5/81)) (*.f32 (pow.f32 (+.f32 maxCos -1) 3) -2/81)) (-.f32 (*.f32 ux maxCos) ux)))
(*.f32 (pow.f32 1 1/3) (-.f32 1 ux))
(-.f32 1 ux)
(+.f32 (*.f32 (pow.f32 1 1/3) (-.f32 1 ux)) (*.f32 maxCos (+.f32 (*.f32 2/3 (*.f32 (pow.f32 (*.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/9) ux)) (*.f32 1/3 (*.f32 (pow.f32 (*.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/9) ux)))))
(+.f32 (-.f32 1 ux) (*.f32 maxCos (*.f32 (*.f32 ux (*.f32 (pow.f32 (pow.f32 (-.f32 1 ux) 4) 1/18) (pow.f32 (pow.f32 (-.f32 1 ux) 4) 1/18))) 1)))
(fma.f32 maxCos (*.f32 ux (*.f32 (pow.f32 (pow.f32 (-.f32 1 ux) 4) 1/18) (pow.f32 (pow.f32 (-.f32 1 ux) 4) 1/18))) (-.f32 1 ux))
(+.f32 (*.f32 (pow.f32 1 1/3) (-.f32 1 ux)) (+.f32 (*.f32 maxCos (+.f32 (*.f32 2/3 (*.f32 (pow.f32 (*.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/9) ux)) (*.f32 1/3 (*.f32 (pow.f32 (*.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/9) ux)))) (*.f32 (pow.f32 maxCos 2) (+.f32 (*.f32 2/9 (*.f32 (pow.f32 (/.f32 1 (-.f32 1 ux)) 1/9) (pow.f32 ux 2))) (+.f32 (*.f32 (pow.f32 (*.f32 1 (-.f32 1 ux)) 1/3) (+.f32 (*.f32 -2/9 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/9) (pow.f32 ux 2))) (*.f32 1/9 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/9) (pow.f32 ux 2))))) (*.f32 -1/9 (*.f32 (pow.f32 (/.f32 1 (-.f32 1 ux)) 1/9) (pow.f32 ux 2))))))))
(+.f32 (-.f32 1 ux) (fma.f32 maxCos (*.f32 (*.f32 ux (*.f32 (pow.f32 (pow.f32 (-.f32 1 ux) 4) 1/18) (pow.f32 (pow.f32 (-.f32 1 ux) 4) 1/18))) 1) (*.f32 (*.f32 maxCos maxCos) (fma.f32 2/9 (*.f32 (*.f32 ux ux) (*.f32 (pow.f32 (/.f32 1 (-.f32 1 ux)) 1/18) (pow.f32 (/.f32 1 (-.f32 1 ux)) 1/18))) (fma.f32 (cbrt.f32 (-.f32 1 ux)) (*.f32 (*.f32 (*.f32 ux ux) (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/18) (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/18))) -1/9) (*.f32 -1/9 (*.f32 (*.f32 ux ux) (*.f32 (pow.f32 (/.f32 1 (-.f32 1 ux)) 1/18) (pow.f32 (/.f32 1 (-.f32 1 ux)) 1/18)))))))))
(+.f32 (-.f32 1 ux) (fma.f32 maxCos (*.f32 ux (*.f32 (pow.f32 (pow.f32 (-.f32 1 ux) 4) 1/18) (pow.f32 (pow.f32 (-.f32 1 ux) 4) 1/18))) (*.f32 maxCos (*.f32 maxCos (fma.f32 2/9 (*.f32 (*.f32 ux ux) (*.f32 (pow.f32 (/.f32 1 (-.f32 1 ux)) 1/18) (pow.f32 (/.f32 1 (-.f32 1 ux)) 1/18))) (fma.f32 -1/9 (*.f32 (*.f32 ux ux) (*.f32 (pow.f32 (/.f32 1 (-.f32 1 ux)) 1/18) (pow.f32 (/.f32 1 (-.f32 1 ux)) 1/18))) (*.f32 (cbrt.f32 (-.f32 1 ux)) (*.f32 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/18) (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/18)) (*.f32 (*.f32 ux ux) -1/9)))))))))
(+.f32 (-.f32 1 ux) (*.f32 maxCos (+.f32 (*.f32 ux (*.f32 (pow.f32 (pow.f32 (-.f32 1 ux) 4) 1/18) (pow.f32 (pow.f32 (-.f32 1 ux) 4) 1/18))) (*.f32 (+.f32 (*.f32 (*.f32 (*.f32 ux ux) (cbrt.f32 (-.f32 1 ux))) (*.f32 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/18) (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/18)) -1/9)) (*.f32 (*.f32 ux (*.f32 ux (*.f32 (pow.f32 (/.f32 1 (-.f32 1 ux)) 1/18) (pow.f32 (/.f32 1 (-.f32 1 ux)) 1/18)))) 1/9)) maxCos))))
(+.f32 (*.f32 (pow.f32 1 1/3) (-.f32 1 ux)) (+.f32 (*.f32 maxCos (+.f32 (*.f32 2/3 (*.f32 (pow.f32 (*.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/9) ux)) (*.f32 1/3 (*.f32 (pow.f32 (*.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/9) ux)))) (+.f32 (*.f32 (pow.f32 maxCos 2) (+.f32 (*.f32 2/9 (*.f32 (pow.f32 (/.f32 1 (-.f32 1 ux)) 1/9) (pow.f32 ux 2))) (+.f32 (*.f32 (pow.f32 (*.f32 1 (-.f32 1 ux)) 1/3) (+.f32 (*.f32 -2/9 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/9) (pow.f32 ux 2))) (*.f32 1/9 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/9) (pow.f32 ux 2))))) (*.f32 -1/9 (*.f32 (pow.f32 (/.f32 1 (-.f32 1 ux)) 1/9) (pow.f32 ux 2)))))) (*.f32 (+.f32 (*.f32 1/3 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/9) (*.f32 (+.f32 (*.f32 -2/9 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/9) (pow.f32 ux 2))) (*.f32 1/9 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/9) (pow.f32 ux 2)))) ux))) (+.f32 (*.f32 (+.f32 (*.f32 -2/27 (*.f32 (pow.f32 1 1/9) (/.f32 (pow.f32 ux 3) (-.f32 1 ux)))) (*.f32 -2/3 (*.f32 (pow.f32 (/.f32 1 (-.f32 1 ux)) 1/3) (+.f32 (*.f32 -2/9 (*.f32 (pow.f32 (pow.f32 1 4) 1/9) (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/3) (pow.f32 ux 3)))) (*.f32 1/27 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/3) (pow.f32 ux 3))))))) (pow.f32 (*.f32 1 (-.f32 1 ux)) 1/3)) (+.f32 (*.f32 -2/27 (*.f32 (pow.f32 (pow.f32 1 4) 1/9) (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/3) (pow.f32 ux 3)))) (*.f32 -1/3 (*.f32 (+.f32 (*.f32 1/27 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/3) (pow.f32 ux 3))) (*.f32 -2/9 (*.f32 (pow.f32 (pow.f32 1 4) 1/9) (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/3) (pow.f32 ux 3))))) (pow.f32 1 1/3)))))) (pow.f32 maxCos 3)))))
(+.f32 (-.f32 1 ux) (fma.f32 maxCos (*.f32 (*.f32 ux (*.f32 (pow.f32 (pow.f32 (-.f32 1 ux) 4) 1/18) (pow.f32 (pow.f32 (-.f32 1 ux) 4) 1/18))) 1) (fma.f32 (*.f32 maxCos maxCos) (fma.f32 2/9 (*.f32 (*.f32 ux ux) (*.f32 (pow.f32 (/.f32 1 (-.f32 1 ux)) 1/18) (pow.f32 (/.f32 1 (-.f32 1 ux)) 1/18))) (fma.f32 (cbrt.f32 (-.f32 1 ux)) (*.f32 (*.f32 (*.f32 ux ux) (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/18) (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/18))) -1/9) (*.f32 -1/9 (*.f32 (*.f32 ux ux) (*.f32 (pow.f32 (/.f32 1 (-.f32 1 ux)) 1/18) (pow.f32 (/.f32 1 (-.f32 1 ux)) 1/18)))))) (*.f32 (fma.f32 1/3 (*.f32 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/18) (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/18)) (*.f32 ux (*.f32 (*.f32 (*.f32 ux ux) (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/18) (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/18))) -1/9))) (fma.f32 (+.f32 (*.f32 -2/27 (/.f32 (pow.f32 ux 3) (-.f32 1 ux))) (*.f32 -2/3 (*.f32 (cbrt.f32 (/.f32 1 (-.f32 1 ux))) (fma.f32 1/27 (*.f32 (pow.f32 ux 3) (cbrt.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)))) (*.f32 -2/9 (*.f32 (pow.f32 ux 3) (cbrt.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2))))))))) (cbrt.f32 (-.f32 1 ux)) (+.f32 (*.f32 -2/27 (*.f32 (pow.f32 ux 3) (cbrt.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2))))) (*.f32 -1/3 (*.f32 1 (fma.f32 1/27 (*.f32 (pow.f32 ux 3) (cbrt.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)))) (*.f32 -2/9 (*.f32 (pow.f32 ux 3) (cbrt.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2))))))))))) (pow.f32 maxCos 3)))))
(+.f32 (-.f32 1 ux) (fma.f32 maxCos (*.f32 ux (*.f32 (pow.f32 (pow.f32 (-.f32 1 ux) 4) 1/18) (pow.f32 (pow.f32 (-.f32 1 ux) 4) 1/18))) (fma.f32 (*.f32 maxCos maxCos) (fma.f32 2/9 (*.f32 (*.f32 ux ux) (*.f32 (pow.f32 (/.f32 1 (-.f32 1 ux)) 1/18) (pow.f32 (/.f32 1 (-.f32 1 ux)) 1/18))) (fma.f32 -1/9 (*.f32 (*.f32 ux ux) (*.f32 (pow.f32 (/.f32 1 (-.f32 1 ux)) 1/18) (pow.f32 (/.f32 1 (-.f32 1 ux)) 1/18))) (*.f32 (cbrt.f32 (-.f32 1 ux)) (*.f32 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/18) (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/18)) (*.f32 (*.f32 ux ux) -1/9))))) (*.f32 (fma.f32 1/3 (*.f32 ux (*.f32 (*.f32 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/18) (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/18)) (*.f32 (*.f32 ux ux) -1/9)) (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/18) (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/18)))) (fma.f32 (cbrt.f32 (-.f32 1 ux)) (fma.f32 -2/3 (*.f32 (cbrt.f32 (/.f32 1 (-.f32 1 ux))) (*.f32 (*.f32 (pow.f32 ux 3) (cbrt.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)))) -5/27)) (*.f32 -2/27 (/.f32 (pow.f32 ux 3) (-.f32 1 ux)))) (fma.f32 -1/3 (*.f32 (*.f32 (pow.f32 ux 3) (cbrt.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)))) -5/27) (*.f32 (cbrt.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2))) (*.f32 (pow.f32 ux 3) -2/27))))) (pow.f32 maxCos 3)))))
(+.f32 (fma.f32 maxCos (*.f32 ux (*.f32 (pow.f32 (pow.f32 (-.f32 1 ux) 4) 1/18) (pow.f32 (pow.f32 (-.f32 1 ux) 4) 1/18))) (-.f32 1 ux)) (*.f32 (*.f32 maxCos maxCos) (+.f32 (+.f32 (*.f32 (*.f32 (*.f32 ux ux) (cbrt.f32 (-.f32 1 ux))) (*.f32 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/18) (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/18)) -1/9)) (*.f32 (*.f32 ux (*.f32 ux (*.f32 (pow.f32 (/.f32 1 (-.f32 1 ux)) 1/18) (pow.f32 (/.f32 1 (-.f32 1 ux)) 1/18)))) 1/9)) (*.f32 maxCos (fma.f32 1/3 (*.f32 ux (*.f32 (*.f32 (*.f32 ux ux) (*.f32 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/18) (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 4)) 1/18)) -1/9)) (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/18) (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/18)))) (fma.f32 (cbrt.f32 (-.f32 1 ux)) (fma.f32 -2/3 (*.f32 (cbrt.f32 (/.f32 1 (-.f32 1 ux))) (*.f32 (*.f32 (pow.f32 ux 3) (cbrt.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)))) -5/27)) (*.f32 (pow.f32 ux 3) (/.f32 -2/27 (-.f32 1 ux)))) (fma.f32 -1/3 (*.f32 (*.f32 (pow.f32 ux 3) (cbrt.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)))) -5/27) (*.f32 (cbrt.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2))) (*.f32 (pow.f32 ux 3) -2/27)))))))))
1
(+.f32 1 (*.f32 1/3 (*.f32 (-.f32 maxCos 1) ux)))
(+.f32 1 (*.f32 1/3 (*.f32 ux (-.f32 maxCos 1))))
(fma.f32 1/3 (*.f32 ux (+.f32 maxCos -1)) 1)
(fma.f32 (+.f32 -1/3 (*.f32 1/3 maxCos)) ux 1)
(+.f32 1 (+.f32 (*.f32 1/3 (*.f32 (-.f32 maxCos 1) ux)) (*.f32 -1/9 (*.f32 (pow.f32 (-.f32 maxCos 1) 2) (pow.f32 ux 2)))))
(+.f32 1 (fma.f32 1/3 (*.f32 ux (-.f32 maxCos 1)) (*.f32 -1/9 (*.f32 (pow.f32 (-.f32 maxCos 1) 2) (*.f32 ux ux)))))
(+.f32 1 (fma.f32 1/3 (*.f32 ux (+.f32 maxCos -1)) (*.f32 (pow.f32 (+.f32 maxCos -1) 2) (*.f32 -1/9 (*.f32 ux ux)))))
(+.f32 1 (*.f32 ux (+.f32 (+.f32 -1/3 (*.f32 1/3 maxCos)) (*.f32 (*.f32 (pow.f32 (+.f32 maxCos -1) 2) -1/9) ux))))
(+.f32 1 (+.f32 (*.f32 1/3 (*.f32 (-.f32 maxCos 1) ux)) (+.f32 (*.f32 -1/3 (*.f32 (pow.f32 ux 3) (+.f32 (*.f32 1/27 (pow.f32 (-.f32 maxCos 1) 3)) (*.f32 -2/9 (pow.f32 (-.f32 maxCos 1) 3))))) (*.f32 -1/9 (*.f32 (pow.f32 (-.f32 maxCos 1) 2) (pow.f32 ux 2))))))
(+.f32 1 (fma.f32 1/3 (*.f32 ux (-.f32 maxCos 1)) (fma.f32 -1/3 (*.f32 (pow.f32 ux 3) (*.f32 (pow.f32 (-.f32 maxCos 1) 3) -5/27)) (*.f32 -1/9 (*.f32 (pow.f32 (-.f32 maxCos 1) 2) (*.f32 ux ux))))))
(+.f32 1 (fma.f32 1/3 (*.f32 ux (+.f32 maxCos -1)) (fma.f32 -1/9 (*.f32 ux (*.f32 ux (pow.f32 (+.f32 maxCos -1) 2))) (*.f32 (pow.f32 ux 3) (*.f32 (pow.f32 (+.f32 maxCos -1) 3) 5/81)))))
(+.f32 (fma.f32 (+.f32 -1/3 (*.f32 1/3 maxCos)) ux 1) (fma.f32 -1/9 (*.f32 ux (*.f32 ux (pow.f32 (+.f32 maxCos -1) 2))) (*.f32 (pow.f32 ux 3) (*.f32 (pow.f32 (+.f32 maxCos -1) 3) 5/81))))
(pow.f32 (-.f32 1 ux) 1/3)
(cbrt.f32 (-.f32 1 ux))
(+.f32 (*.f32 1/3 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/9) (*.f32 maxCos ux))) (pow.f32 (-.f32 1 ux) 1/3))
(fma.f32 1/3 (*.f32 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/18) (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/18)) (*.f32 ux maxCos)) (cbrt.f32 (-.f32 1 ux)))
(fma.f32 1/3 (*.f32 maxCos (*.f32 ux (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/18) (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/18)))) (cbrt.f32 (-.f32 1 ux)))
(+.f32 (*.f32 1/3 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/9) (*.f32 maxCos ux))) (+.f32 (*.f32 -1/9 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 7)) 1/9) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))) (pow.f32 (-.f32 1 ux) 1/3)))
(fma.f32 1/3 (*.f32 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/18) (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/18)) (*.f32 ux maxCos)) (fma.f32 -1/9 (*.f32 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 7)) 1/18) (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 7)) 1/18)) (*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))) (cbrt.f32 (-.f32 1 ux))))
(fma.f32 1/3 (*.f32 maxCos (*.f32 ux (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/18) (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/18)))) (fma.f32 -1/9 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 7)) 1/18) (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 7)) 1/18) (*.f32 ux (*.f32 ux (*.f32 maxCos maxCos))))) (cbrt.f32 (-.f32 1 ux))))
(fma.f32 1/3 (*.f32 maxCos (*.f32 ux (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/18) (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/18)))) (fma.f32 -1/9 (*.f32 (*.f32 ux ux) (*.f32 (*.f32 maxCos maxCos) (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 7)) 1/18) (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 7)) 1/18)))) (cbrt.f32 (-.f32 1 ux))))
(+.f32 (*.f32 1/3 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/9) (*.f32 maxCos ux))) (+.f32 (*.f32 -1/3 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/3) (*.f32 (pow.f32 maxCos 3) (+.f32 (*.f32 -2/9 (*.f32 (pow.f32 (pow.f32 1 4) 1/9) (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/3) (pow.f32 ux 3)))) (*.f32 1/27 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/3) (pow.f32 ux 3))))))) (+.f32 (*.f32 -1/9 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 7)) 1/9) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))) (pow.f32 (-.f32 1 ux) 1/3))))
(fma.f32 1/3 (*.f32 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/18) (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/18)) (*.f32 ux maxCos)) (fma.f32 -1/3 (*.f32 (cbrt.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2))) (*.f32 (fma.f32 1/27 (*.f32 (pow.f32 ux 3) (cbrt.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)))) (*.f32 -2/9 (*.f32 (pow.f32 ux 3) (cbrt.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)))))) (pow.f32 maxCos 3))) (fma.f32 -1/9 (*.f32 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 7)) 1/18) (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 7)) 1/18)) (*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))) (cbrt.f32 (-.f32 1 ux)))))
(fma.f32 1/3 (*.f32 maxCos (*.f32 ux (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/18) (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/18)))) (fma.f32 -1/3 (*.f32 (*.f32 (*.f32 (pow.f32 ux 3) (cbrt.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)))) -5/27) (*.f32 (cbrt.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2))) (pow.f32 maxCos 3))) (fma.f32 -1/9 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 7)) 1/18) (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 7)) 1/18) (*.f32 ux (*.f32 ux (*.f32 maxCos maxCos))))) (cbrt.f32 (-.f32 1 ux)))))
(fma.f32 1/3 (*.f32 maxCos (*.f32 ux (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/18) (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)) 1/18)))) (fma.f32 -1/3 (*.f32 (*.f32 (*.f32 (pow.f32 ux 3) (cbrt.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2)))) -5/27) (*.f32 (cbrt.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 2))) (pow.f32 maxCos 3))) (fma.f32 -1/9 (*.f32 (*.f32 ux ux) (*.f32 (*.f32 maxCos maxCos) (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 7)) 1/18) (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 7)) 1/18)))) (cbrt.f32 (-.f32 1 ux)))))
1
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 ux (*.f32 (-.f32 maxCos 1) 1)))
(-.f32 (fma.f32 ux maxCos 1) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 ux (*.f32 (-.f32 maxCos 1) 1)))
(-.f32 (fma.f32 ux maxCos 1) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 ux (*.f32 (-.f32 maxCos 1) 1)))
(-.f32 (fma.f32 ux maxCos 1) ux)
(*.f32 (-.f32 maxCos 1) ux)
(*.f32 ux (-.f32 maxCos 1))
(*.f32 ux (+.f32 maxCos -1))
(-.f32 (*.f32 ux maxCos) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 ux (*.f32 (-.f32 maxCos 1) 1)))
(-.f32 (fma.f32 ux maxCos 1) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 ux (*.f32 (-.f32 maxCos 1) 1)))
(-.f32 (fma.f32 ux maxCos 1) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 ux (*.f32 (-.f32 maxCos 1) 1)))
(-.f32 (fma.f32 ux maxCos 1) ux)
(*.f32 -1 (*.f32 ux (+.f32 1 (*.f32 -1 maxCos))))
(*.f32 ux (-.f32 maxCos 1))
(*.f32 ux (+.f32 maxCos -1))
(-.f32 (*.f32 ux maxCos) ux)
(+.f32 1 (*.f32 -1 (*.f32 ux (+.f32 1 (*.f32 -1 maxCos)))))
(+.f32 1 (*.f32 ux (*.f32 (-.f32 maxCos 1) 1)))
(-.f32 (fma.f32 ux maxCos 1) ux)
(+.f32 1 (*.f32 -1 (*.f32 ux (+.f32 1 (*.f32 -1 maxCos)))))
(+.f32 1 (*.f32 ux (*.f32 (-.f32 maxCos 1) 1)))
(-.f32 (fma.f32 ux maxCos 1) ux)
(+.f32 1 (*.f32 -1 (*.f32 ux (+.f32 1 (*.f32 -1 maxCos)))))
(+.f32 1 (*.f32 ux (*.f32 (-.f32 maxCos 1) 1)))
(-.f32 (fma.f32 ux maxCos 1) ux)
(-.f32 1 ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 ux (*.f32 (-.f32 maxCos 1) 1)))
(-.f32 (fma.f32 ux maxCos 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 ux (*.f32 (-.f32 maxCos 1) 1)))
(-.f32 (fma.f32 ux maxCos 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 ux (*.f32 (-.f32 maxCos 1) 1)))
(-.f32 (fma.f32 ux maxCos 1) ux)
(*.f32 maxCos ux)
(*.f32 ux maxCos)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 ux (*.f32 (-.f32 maxCos 1) 1)))
(-.f32 (fma.f32 ux maxCos 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 ux (*.f32 (-.f32 maxCos 1) 1)))
(-.f32 (fma.f32 ux maxCos 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 ux (*.f32 (-.f32 maxCos 1) 1)))
(-.f32 (fma.f32 ux maxCos 1) ux)
(*.f32 maxCos ux)
(*.f32 ux maxCos)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 ux (*.f32 (-.f32 maxCos 1) 1)))
(-.f32 (fma.f32 ux maxCos 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 ux (*.f32 (-.f32 maxCos 1) 1)))
(-.f32 (fma.f32 ux maxCos 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 ux (*.f32 (-.f32 maxCos 1) 1)))
(-.f32 (fma.f32 ux maxCos 1) ux)

eval455.0ms (7.7%)

Compiler

Compiled 20834 to 14837 computations (28.8% saved)

prune139.0ms (2.3%)

Pruning

6 alts after pruning (4 fresh and 2 done)

PrunedKeptTotal
New6194623
Fresh101
Picked101
Done224
Total6236629
Error
0b
Counts
629 → 6
Alt Table
Click to see full alt table
StatusErrorProgram
0.5b
(-.f32 1 ux)
0.4b
(/.f32 1 (/.f32 (-.f32 1 (+.f32 ux (*.f32 ux maxCos))) (-.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 (*.f32 ux ux) maxCos) maxCos))))
9.3b
1
0.4b
(/.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 (-.f32 1 maxCos) (*.f32 ux ux))) (-.f32 1 maxCos))) (+.f32 1 (+.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 ux (-.f32 1 maxCos))) (*.f32 ux (-.f32 1 maxCos)))))
0.0b
(-.f32 1 (*.f32 ux (-.f32 1 maxCos)))
1.0b
(pow.f32 (cbrt.f32 (-.f32 1 ux)) 3)
Compiler

Compiled 97 to 73 computations (24.7% saved)

localize96.0ms (1.6%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f32 (*.f32 ux ux) maxCos)
0.2b
(/.f32 (-.f32 1 (+.f32 ux (*.f32 ux maxCos))) (-.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 (*.f32 ux ux) maxCos) maxCos)))
0.4b
(/.f32 1 (/.f32 (-.f32 1 (+.f32 ux (*.f32 ux maxCos))) (-.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 (*.f32 ux ux) maxCos) maxCos))))
0.5b
(pow.f32 (-.f32 1 ux) 2)
Compiler

Compiled 102 to 41 computations (59.8% saved)

series18.0ms (0.3%)

Counts
3 → 72
Calls

18 calls:

TimeVariablePointExpression
9.0ms
maxCos
@0
(/.f32 (-.f32 1 (+.f32 ux (*.f32 ux maxCos))) (-.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 (*.f32 ux ux) maxCos) maxCos)))
1.0ms
ux
@0
(/.f32 1 (/.f32 (-.f32 1 (+.f32 ux (*.f32 ux maxCos))) (-.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 (*.f32 ux ux) maxCos) maxCos))))
1.0ms
maxCos
@inf
(/.f32 1 (/.f32 (-.f32 1 (+.f32 ux (*.f32 ux maxCos))) (-.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 (*.f32 ux ux) maxCos) maxCos))))
1.0ms
ux
@inf
(/.f32 1 (/.f32 (-.f32 1 (+.f32 ux (*.f32 ux maxCos))) (-.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 (*.f32 ux ux) maxCos) maxCos))))
1.0ms
ux
@-inf
(/.f32 1 (/.f32 (-.f32 1 (+.f32 ux (*.f32 ux maxCos))) (-.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 (*.f32 ux ux) maxCos) maxCos))))

rewrite90.0ms (1.5%)

Algorithm
batch-egg-rewrite
Rules
428×fma-neg_binary32
315×expm1-udef_binary32
313×log1p-udef_binary32
261×log-pow_binary32
240×log-div_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01672
137659
2560659
Stop Event
node limit
Counts
3 → 104
Calls
Call 1
Inputs
(/.f32 1 (/.f32 (-.f32 1 (+.f32 ux (*.f32 ux maxCos))) (-.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 (*.f32 ux ux) maxCos) maxCos))))
(/.f32 (-.f32 1 (+.f32 ux (*.f32 ux maxCos))) (-.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 (*.f32 ux ux) maxCos) maxCos)))
(*.f32 (*.f32 ux ux) maxCos)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (pow.f32 (-.f32 1 ux) 2) (/.f32 1 (-.f32 1 (fma.f32 ux maxCos ux)))) (*.f32 (neg.f32 (pow.f32 (*.f32 ux maxCos) 2)) (/.f32 1 (-.f32 1 (fma.f32 ux maxCos ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (/.f32 1 (-.f32 1 (fma.f32 ux maxCos ux))) (pow.f32 (-.f32 1 ux) 2)) (*.f32 (/.f32 1 (-.f32 1 (fma.f32 ux maxCos ux))) (neg.f32 (pow.f32 (*.f32 ux maxCos) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 (pow.f32 (-.f32 1 ux) 2) (-.f32 1 (fma.f32 ux maxCos ux))) (/.f32 (pow.f32 (*.f32 ux maxCos) 2) (-.f32 1 (fma.f32 ux maxCos ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (/.f32 1 (-.f32 1 (fma.f32 ux maxCos ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux)))) (pow.f32 (cbrt.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux)))) 2) (cbrt.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux)))) (sqrt.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 -1 (/.f32 1 (/.f32 (neg.f32 (-.f32 1 (fma.f32 ux maxCos ux))) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (-.f32 1 (fma.f32 ux maxCos ux))) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (-.f32 1 (fma.f32 ux maxCos ux))) (pow.f32 (/.f32 1 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (pow.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) 2)) -1) (pow.f32 (cbrt.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (sqrt.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) -1) (pow.f32 (sqrt.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (cbrt.f32 (pow.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) 2)) 1) (/.f32 (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) (-.f32 1 (fma.f32 ux maxCos ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (hypot.f32 (-.f32 1 ux) (sqrt.f32 (neg.f32 (pow.f32 (*.f32 ux maxCos) 2)))) 1) (/.f32 (hypot.f32 (-.f32 1 ux) (sqrt.f32 (neg.f32 (pow.f32 (*.f32 ux maxCos) 2)))) (-.f32 1 (fma.f32 ux maxCos ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (pow.f32 (cbrt.f32 (-.f32 1 (fma.f32 ux maxCos ux))) 2)) (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (cbrt.f32 (-.f32 1 (fma.f32 ux maxCos ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (cbrt.f32 (pow.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) 2)) (pow.f32 (cbrt.f32 (-.f32 1 (fma.f32 ux maxCos ux))) 2)) (/.f32 (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) (cbrt.f32 (-.f32 1 (fma.f32 ux maxCos ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (hypot.f32 (-.f32 1 ux) (sqrt.f32 (neg.f32 (pow.f32 (*.f32 ux maxCos) 2)))) (pow.f32 (cbrt.f32 (-.f32 1 (fma.f32 ux maxCos ux))) 2)) (/.f32 (hypot.f32 (-.f32 1 ux) (sqrt.f32 (neg.f32 (pow.f32 (*.f32 ux maxCos) 2)))) (cbrt.f32 (-.f32 1 (fma.f32 ux maxCos ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (sqrt.f32 (-.f32 1 (fma.f32 ux maxCos ux)))) (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (sqrt.f32 (-.f32 1 (fma.f32 ux maxCos ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (cbrt.f32 (pow.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) 2)) (sqrt.f32 (-.f32 1 (fma.f32 ux maxCos ux)))) (/.f32 (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) (sqrt.f32 (-.f32 1 (fma.f32 ux maxCos ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (hypot.f32 (-.f32 1 ux) (sqrt.f32 (neg.f32 (pow.f32 (*.f32 ux maxCos) 2)))) (sqrt.f32 (-.f32 1 (fma.f32 ux maxCos ux)))) (/.f32 (hypot.f32 (-.f32 1 ux) (sqrt.f32 (neg.f32 (pow.f32 (*.f32 ux maxCos) 2)))) (sqrt.f32 (-.f32 1 (fma.f32 ux maxCos ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (pow.f32 (fma.f32 ux maxCos ux) 3))) (+.f32 1 (+.f32 (fma.f32 ux maxCos ux) (pow.f32 (fma.f32 ux maxCos ux) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (pow.f32 (fma.f32 ux maxCos ux) 2))) (+.f32 1 (fma.f32 ux maxCos ux)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (neg.f32 (-.f32 1 (fma.f32 ux maxCos ux)))) (neg.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (/.f32 1 (-.f32 1 (fma.f32 ux maxCos ux))) 1) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (/.f32 1 (-.f32 1 (fma.f32 ux maxCos ux))) (cbrt.f32 (pow.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) 2))) (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (/.f32 1 (-.f32 1 (fma.f32 ux maxCos ux))) (hypot.f32 (-.f32 1 ux) (sqrt.f32 (neg.f32 (pow.f32 (*.f32 ux maxCos) 2))))) (hypot.f32 (-.f32 1 ux) (sqrt.f32 (neg.f32 (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (/.f32 (pow.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) 3) (pow.f32 (-.f32 1 (fma.f32 ux maxCos ux)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux)))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (/.f32 1 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) (neg.f32 (/.f32 (fma.f32 ux maxCos ux) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 1 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) (/.f32 (fma.f32 ux maxCos ux) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 (-.f32 1 ux) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) (/.f32 (*.f32 ux maxCos) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 (/.f32 1 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) 1) (/.f32 (/.f32 (fma.f32 ux maxCos ux) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (/.f32 1 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) (cbrt.f32 (pow.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (pow.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) 2)) (cbrt.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (-.f32 1 (fma.f32 ux maxCos ux))) 2) (*.f32 (cbrt.f32 (-.f32 1 (fma.f32 ux maxCos ux))) (/.f32 1 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) (sqrt.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (-.f32 1 (fma.f32 ux maxCos ux))) (*.f32 (sqrt.f32 (-.f32 1 (fma.f32 ux maxCos ux))) (/.f32 1 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (neg.f32 (-.f32 1 (fma.f32 ux maxCos ux))) (/.f32 1 (neg.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) (-.f32 1 (fma.f32 ux maxCos ux)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (-.f32 1 (fma.f32 ux maxCos ux))) 2) 1) (/.f32 (cbrt.f32 (-.f32 1 (fma.f32 ux maxCos ux))) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sqrt.f32 (-.f32 1 (fma.f32 ux maxCos ux))) 1) (/.f32 (sqrt.f32 (-.f32 1 (fma.f32 ux maxCos ux))) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (cbrt.f32 (pow.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) 2))) (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (-.f32 1 (fma.f32 ux maxCos ux))) 2) (cbrt.f32 (pow.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) 2))) (cbrt.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sqrt.f32 (-.f32 1 (fma.f32 ux maxCos ux))) (cbrt.f32 (pow.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) 2))) (/.f32 (sqrt.f32 (-.f32 1 (fma.f32 ux maxCos ux))) (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (hypot.f32 (-.f32 1 ux) (sqrt.f32 (neg.f32 (pow.f32 (*.f32 ux maxCos) 2))))) (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (hypot.f32 (-.f32 1 ux) (sqrt.f32 (neg.f32 (pow.f32 (*.f32 ux maxCos) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (-.f32 1 (fma.f32 ux maxCos ux))) 2) (hypot.f32 (-.f32 1 ux) (sqrt.f32 (neg.f32 (pow.f32 (*.f32 ux maxCos) 2))))) (/.f32 (cbrt.f32 (-.f32 1 (fma.f32 ux maxCos ux))) (hypot.f32 (-.f32 1 ux) (sqrt.f32 (neg.f32 (pow.f32 (*.f32 ux maxCos) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 6) (pow.f32 (pow.f32 (*.f32 ux maxCos) 2) 3))) (+.f32 (pow.f32 (-.f32 1 ux) 4) (*.f32 (pow.f32 (*.f32 ux maxCos) 2) (+.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 4) (pow.f32 (pow.f32 (*.f32 ux maxCos) 2) 2))) (+.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (fma.f32 ux maxCos ux))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (neg.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (/.f32 (pow.f32 (-.f32 1 (fma.f32 ux maxCos ux)) 3) (pow.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (/.f32 (-.f32 1 (fma.f32 ux maxCos ux)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (/.f32 1 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) (neg.f32 (/.f32 (fma.f32 ux maxCos ux) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (cbrt.f32 (/.f32 1 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) (cbrt.f32 (/.f32 1 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))))) (cbrt.f32 (/.f32 1 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) (neg.f32 (/.f32 (fma.f32 ux maxCos ux) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (/.f32 1 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) (sqrt.f32 (/.f32 1 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) (neg.f32 (/.f32 (fma.f32 ux maxCos ux) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (/.f32 1 (-.f32 (pow.f32 (-.f32 1 ux) 6) (pow.f32 (pow.f32 (*.f32 ux maxCos) 2) 3))) (+.f32 (pow.f32 (-.f32 1 ux) 4) (*.f32 (pow.f32 (*.f32 ux maxCos) 2) (+.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) (neg.f32 (/.f32 (fma.f32 ux maxCos ux) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (/.f32 1 (-.f32 (pow.f32 (-.f32 1 ux) 4) (pow.f32 (pow.f32 (*.f32 ux maxCos) 2) 2))) (+.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (neg.f32 (/.f32 (fma.f32 ux maxCos ux) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 maxCos (*.f32 ux ux)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 maxCos (*.f32 ux ux)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 maxCos (*.f32 ux ux)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 maxCos (*.f32 ux ux))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 ux (sqrt.f32 maxCos)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (*.f32 (pow.f32 ux 4) (*.f32 maxCos maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 (*.f32 ux ux)) maxCos))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 maxCos (*.f32 ux ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 maxCos (*.f32 ux ux)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 ux 3) (pow.f32 (*.f32 ux maxCos) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 maxCos 3) (pow.f32 (*.f32 ux ux) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (*.f32 ux ux) 3) (pow.f32 maxCos 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 maxCos (*.f32 ux ux))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 maxCos (*.f32 ux ux))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 maxCos (*.f32 ux ux))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 maxCos (*.f32 ux ux))) 1))))))

simplify109.0ms (1.8%)

Algorithm
egg-herbie
Rules
895×associate-/r*_binary32
726×associate-/l*_binary32
419×distribute-rgt-in_binary32
377×distribute-lft-in_binary32
245×cancel-sign-sub-inv_binary32
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02202757
17802527
233072459
Stop Event
node limit
Counts
176 → 167
Calls
Call 1
Inputs
1
(+.f32 (*.f32 -1 (*.f32 ux (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))))) 1)
(+.f32 (*.f32 -1 (*.f32 ux (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))))) (+.f32 1 (*.f32 (pow.f32 ux 2) (-.f32 1 (+.f32 (*.f32 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))) (+.f32 1 maxCos)) (pow.f32 maxCos 2))))))
(+.f32 (*.f32 -1 (*.f32 ux (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))))) (+.f32 (*.f32 (pow.f32 ux 3) (*.f32 (-.f32 1 (+.f32 (*.f32 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))) (+.f32 1 maxCos)) (pow.f32 maxCos 2))) (+.f32 1 maxCos))) (+.f32 1 (*.f32 (pow.f32 ux 2) (-.f32 1 (+.f32 (*.f32 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))) (+.f32 1 maxCos)) (pow.f32 maxCos 2)))))))
(*.f32 -1 (/.f32 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux) (+.f32 1 maxCos)))
(-.f32 (+.f32 (*.f32 2 (/.f32 1 (+.f32 1 maxCos))) (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (+.f32 1 maxCos) 2)) (*.f32 -1 (/.f32 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux) (+.f32 1 maxCos))))) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2)))
(-.f32 (+.f32 (*.f32 -1 (/.f32 (+.f32 (/.f32 1 (+.f32 1 maxCos)) (*.f32 -1 (/.f32 (-.f32 (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (+.f32 1 maxCos) 2)) (*.f32 2 (/.f32 1 (+.f32 1 maxCos)))) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2))) (+.f32 1 maxCos)))) ux)) (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (+.f32 1 maxCos) 2)) (+.f32 (*.f32 2 (/.f32 1 (+.f32 1 maxCos))) (*.f32 -1 (/.f32 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux) (+.f32 1 maxCos)))))) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2)))
(-.f32 (+.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 -1 (/.f32 (-.f32 (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (+.f32 1 maxCos) 2)) (*.f32 2 (/.f32 1 (+.f32 1 maxCos)))) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2))) (pow.f32 (+.f32 1 maxCos) 2))) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2))) (pow.f32 ux 2))) (+.f32 (*.f32 -1 (/.f32 (+.f32 (/.f32 1 (+.f32 1 maxCos)) (*.f32 -1 (/.f32 (-.f32 (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (+.f32 1 maxCos) 2)) (*.f32 2 (/.f32 1 (+.f32 1 maxCos)))) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2))) (+.f32 1 maxCos)))) ux)) (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (+.f32 1 maxCos) 2)) (+.f32 (*.f32 2 (/.f32 1 (+.f32 1 maxCos))) (*.f32 -1 (/.f32 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux) (+.f32 1 maxCos))))))) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2)))
(*.f32 -1 (/.f32 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux) (-.f32 1 (*.f32 -1 maxCos))))
(-.f32 (+.f32 (*.f32 2 (/.f32 1 (-.f32 1 (*.f32 -1 maxCos)))) (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 2)) (*.f32 -1 (/.f32 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux) (-.f32 1 (*.f32 -1 maxCos)))))) (/.f32 1 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 2)))
(-.f32 (+.f32 (*.f32 2 (/.f32 1 (-.f32 1 (*.f32 -1 maxCos)))) (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 2)) (+.f32 (*.f32 -1 (/.f32 (-.f32 (+.f32 (/.f32 1 (-.f32 1 (*.f32 -1 maxCos))) (/.f32 1 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 3))) (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 3)) (*.f32 2 (/.f32 1 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 2))))) ux)) (*.f32 -1 (/.f32 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux) (-.f32 1 (*.f32 -1 maxCos))))))) (/.f32 1 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 2)))
(-.f32 (+.f32 (*.f32 2 (/.f32 1 (*.f32 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 3) (pow.f32 ux 2)))) (+.f32 (*.f32 2 (/.f32 1 (-.f32 1 (*.f32 -1 maxCos)))) (+.f32 (*.f32 -1 (/.f32 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux) (-.f32 1 (*.f32 -1 maxCos)))) (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 2)) (+.f32 (*.f32 -1 (/.f32 (-.f32 (+.f32 (/.f32 1 (-.f32 1 (*.f32 -1 maxCos))) (/.f32 1 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 3))) (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 3)) (*.f32 2 (/.f32 1 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 2))))) ux)) (/.f32 (pow.f32 maxCos 2) (*.f32 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 4) (pow.f32 ux 2)))))))) (+.f32 (/.f32 1 (*.f32 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 2) (pow.f32 ux 2))) (+.f32 (/.f32 1 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 2)) (/.f32 1 (*.f32 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 4) (pow.f32 ux 2))))))
(-.f32 1 ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(*.f32 maxCos ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(*.f32 maxCos ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
1
(+.f32 1 (*.f32 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))) ux))
(+.f32 1 (+.f32 (*.f32 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))) ux) (*.f32 (pow.f32 ux 2) (-.f32 (pow.f32 maxCos 2) (+.f32 1 (*.f32 -2 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos)))))))))
(+.f32 (*.f32 -1 (*.f32 (+.f32 (*.f32 -2 (-.f32 (pow.f32 maxCos 2) (+.f32 1 (*.f32 -2 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))))))) (*.f32 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))) (-.f32 1 (pow.f32 maxCos 2)))) (pow.f32 ux 3))) (+.f32 1 (+.f32 (*.f32 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))) ux) (*.f32 (pow.f32 ux 2) (-.f32 (pow.f32 maxCos 2) (+.f32 1 (*.f32 -2 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))))))))))
(*.f32 -1 (/.f32 (+.f32 1 maxCos) (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux)))
(-.f32 (+.f32 (*.f32 -1 (/.f32 (+.f32 1 maxCos) (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux))) (/.f32 1 (*.f32 (pow.f32 ux 2) (-.f32 1 (pow.f32 maxCos 2))))) (*.f32 2 (/.f32 (+.f32 1 maxCos) (*.f32 (pow.f32 ux 2) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))))
(-.f32 (+.f32 (/.f32 1 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) (pow.f32 ux 2))) (+.f32 (*.f32 -1 (/.f32 (+.f32 1 maxCos) (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux))) (*.f32 -1 (/.f32 (+.f32 (*.f32 -2 (/.f32 (-.f32 (/.f32 1 (-.f32 1 (pow.f32 maxCos 2))) (*.f32 2 (/.f32 (+.f32 1 maxCos) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (-.f32 1 (pow.f32 maxCos 2)))) (*.f32 -1 (/.f32 (+.f32 1 maxCos) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (pow.f32 ux 3))))) (*.f32 2 (/.f32 (+.f32 1 maxCos) (*.f32 (pow.f32 ux 2) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))))
(-.f32 (+.f32 (/.f32 1 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) (pow.f32 ux 2))) (+.f32 (*.f32 -1 (/.f32 (+.f32 1 maxCos) (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux))) (+.f32 (*.f32 2 (/.f32 (+.f32 1 maxCos) (*.f32 (pow.f32 ux 4) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 3)))) (*.f32 -1 (/.f32 (+.f32 (*.f32 -2 (/.f32 (-.f32 (/.f32 1 (-.f32 1 (pow.f32 maxCos 2))) (*.f32 2 (/.f32 (+.f32 1 maxCos) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (-.f32 1 (pow.f32 maxCos 2)))) (*.f32 -1 (/.f32 (+.f32 1 maxCos) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (pow.f32 ux 3)))))) (+.f32 (*.f32 2 (/.f32 (+.f32 (*.f32 -2 (/.f32 (-.f32 (/.f32 1 (-.f32 1 (pow.f32 maxCos 2))) (*.f32 2 (/.f32 (+.f32 1 maxCos) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (-.f32 1 (pow.f32 maxCos 2)))) (*.f32 -1 (/.f32 (+.f32 1 maxCos) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (*.f32 (pow.f32 ux 4) (-.f32 1 (pow.f32 maxCos 2))))) (+.f32 (/.f32 1 (*.f32 (pow.f32 ux 4) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2))) (*.f32 2 (/.f32 (+.f32 1 maxCos) (*.f32 (pow.f32 ux 2) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))))))
(*.f32 -1 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux)))
(-.f32 (+.f32 (/.f32 1 (*.f32 (pow.f32 ux 2) (-.f32 1 (pow.f32 maxCos 2)))) (*.f32 -1 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux)))) (*.f32 2 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (*.f32 (pow.f32 ux 2) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))))
(-.f32 (+.f32 (/.f32 1 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) (pow.f32 ux 2))) (+.f32 (*.f32 -1 (/.f32 (-.f32 (*.f32 -1 (/.f32 maxCos (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2))) (+.f32 (*.f32 2 (/.f32 (-.f32 (/.f32 1 (-.f32 1 (pow.f32 maxCos 2))) (*.f32 2 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (-.f32 1 (pow.f32 maxCos 2)))) (/.f32 1 (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (pow.f32 ux 3))) (*.f32 -1 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux))))) (*.f32 2 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (*.f32 (pow.f32 ux 2) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))))
(-.f32 (+.f32 (/.f32 1 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) (pow.f32 ux 2))) (+.f32 (*.f32 -1 (/.f32 (-.f32 (*.f32 -1 (/.f32 maxCos (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2))) (+.f32 (*.f32 2 (/.f32 (-.f32 (/.f32 1 (-.f32 1 (pow.f32 maxCos 2))) (*.f32 2 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (-.f32 1 (pow.f32 maxCos 2)))) (/.f32 1 (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (pow.f32 ux 3))) (+.f32 (*.f32 -1 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux))) (*.f32 2 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (*.f32 (pow.f32 ux 4) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 3))))))) (+.f32 (*.f32 2 (/.f32 (-.f32 (*.f32 -1 (/.f32 maxCos (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2))) (+.f32 (*.f32 2 (/.f32 (-.f32 (/.f32 1 (-.f32 1 (pow.f32 maxCos 2))) (*.f32 2 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (-.f32 1 (pow.f32 maxCos 2)))) (/.f32 1 (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (*.f32 (pow.f32 ux 4) (-.f32 1 (pow.f32 maxCos 2))))) (+.f32 (*.f32 2 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (*.f32 (pow.f32 ux 2) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (/.f32 1 (*.f32 (pow.f32 ux 4) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2))))))
(/.f32 1 (-.f32 1 ux))
(+.f32 (/.f32 1 (-.f32 1 ux)) (*.f32 -1 (/.f32 (*.f32 maxCos ux) (pow.f32 (-.f32 1 ux) 2))))
(+.f32 (/.f32 (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)) (pow.f32 (-.f32 1 ux) 3)) (+.f32 (/.f32 1 (-.f32 1 ux)) (*.f32 -1 (/.f32 (*.f32 maxCos ux) (pow.f32 (-.f32 1 ux) 2)))))
(+.f32 (/.f32 (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)) (pow.f32 (-.f32 1 ux) 3)) (+.f32 (/.f32 1 (-.f32 1 ux)) (+.f32 (*.f32 -1 (/.f32 (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3)) (pow.f32 (-.f32 1 ux) 4))) (*.f32 -1 (/.f32 (*.f32 maxCos ux) (pow.f32 (-.f32 1 ux) 2))))))
(/.f32 1 (*.f32 maxCos ux))
(+.f32 (/.f32 1 (*.f32 maxCos ux)) (*.f32 -1 (/.f32 (-.f32 1 ux) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))))
(+.f32 (/.f32 1 (*.f32 maxCos ux)) (+.f32 (*.f32 -1 (/.f32 (-.f32 1 ux) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))) (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3)))))
(+.f32 (*.f32 -1 (/.f32 (pow.f32 (-.f32 1 ux) 3) (*.f32 (pow.f32 maxCos 4) (pow.f32 ux 4)))) (+.f32 (/.f32 1 (*.f32 maxCos ux)) (+.f32 (*.f32 -1 (/.f32 (-.f32 1 ux) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))) (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3))))))
(/.f32 1 (*.f32 maxCos ux))
(+.f32 (/.f32 1 (*.f32 maxCos ux)) (*.f32 -1 (/.f32 (-.f32 1 ux) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))))
(+.f32 (/.f32 1 (*.f32 maxCos ux)) (+.f32 (*.f32 -1 (/.f32 (-.f32 1 ux) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))) (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3)))))
(+.f32 (*.f32 -1 (/.f32 (pow.f32 (-.f32 1 ux) 3) (*.f32 (pow.f32 maxCos 4) (pow.f32 ux 4)))) (+.f32 (/.f32 1 (*.f32 maxCos ux)) (+.f32 (*.f32 -1 (/.f32 (-.f32 1 ux) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))) (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3))))))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (pow.f32 ux 2))
Outputs
1
(+.f32 (*.f32 -1 (*.f32 ux (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))))) 1)
(fma.f32 -1 (*.f32 ux (+.f32 2 (neg.f32 (+.f32 1 maxCos)))) 1)
(-.f32 1 (*.f32 ux (+.f32 1 (neg.f32 maxCos))))
(+.f32 1 (*.f32 ux (+.f32 -1 maxCos)))
(+.f32 (*.f32 -1 (*.f32 ux (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))))) (+.f32 1 (*.f32 (pow.f32 ux 2) (-.f32 1 (+.f32 (*.f32 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))) (+.f32 1 maxCos)) (pow.f32 maxCos 2))))))
(+.f32 (fma.f32 -1 (*.f32 ux (+.f32 2 (neg.f32 (+.f32 1 maxCos)))) 1) (*.f32 (*.f32 ux ux) (-.f32 1 (fma.f32 (+.f32 2 (neg.f32 (+.f32 1 maxCos))) (+.f32 1 maxCos) (*.f32 maxCos maxCos)))))
(-.f32 (fma.f32 (*.f32 ux ux) (-.f32 1 (fma.f32 (+.f32 1 maxCos) (+.f32 1 (neg.f32 maxCos)) (*.f32 maxCos maxCos))) 1) (*.f32 ux (+.f32 1 (neg.f32 maxCos))))
(+.f32 1 (*.f32 ux (+.f32 (+.f32 -1 maxCos) (*.f32 (-.f32 1 (fma.f32 maxCos maxCos (*.f32 (+.f32 1 maxCos) (-.f32 1 maxCos)))) ux))))
(+.f32 (*.f32 -1 (*.f32 ux (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))))) (+.f32 (*.f32 (pow.f32 ux 3) (*.f32 (-.f32 1 (+.f32 (*.f32 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))) (+.f32 1 maxCos)) (pow.f32 maxCos 2))) (+.f32 1 maxCos))) (+.f32 1 (*.f32 (pow.f32 ux 2) (-.f32 1 (+.f32 (*.f32 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))) (+.f32 1 maxCos)) (pow.f32 maxCos 2)))))))
(fma.f32 -1 (*.f32 ux (+.f32 2 (neg.f32 (+.f32 1 maxCos)))) (fma.f32 (pow.f32 ux 3) (*.f32 (+.f32 1 maxCos) (-.f32 1 (fma.f32 (+.f32 2 (neg.f32 (+.f32 1 maxCos))) (+.f32 1 maxCos) (*.f32 maxCos maxCos)))) (+.f32 1 (*.f32 (*.f32 ux ux) (-.f32 1 (fma.f32 (+.f32 2 (neg.f32 (+.f32 1 maxCos))) (+.f32 1 maxCos) (*.f32 maxCos maxCos)))))))
(-.f32 (fma.f32 (pow.f32 ux 3) (*.f32 (+.f32 1 maxCos) (-.f32 1 (fma.f32 (+.f32 1 maxCos) (+.f32 1 (neg.f32 maxCos)) (*.f32 maxCos maxCos)))) (fma.f32 (*.f32 ux ux) (-.f32 1 (fma.f32 (+.f32 1 maxCos) (+.f32 1 (neg.f32 maxCos)) (*.f32 maxCos maxCos))) 1)) (*.f32 ux (+.f32 1 (neg.f32 maxCos))))
(+.f32 (*.f32 ux (+.f32 -1 maxCos)) (+.f32 1 (*.f32 (-.f32 1 (fma.f32 maxCos maxCos (*.f32 (+.f32 1 maxCos) (-.f32 1 maxCos)))) (+.f32 (*.f32 ux ux) (*.f32 (pow.f32 ux 3) (+.f32 1 maxCos))))))
(*.f32 -1 (/.f32 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux) (+.f32 1 maxCos)))
(neg.f32 (/.f32 (-.f32 1 (*.f32 maxCos maxCos)) (/.f32 (+.f32 1 maxCos) ux)))
(/.f32 (*.f32 (neg.f32 ux) (-.f32 1 (*.f32 maxCos maxCos))) (+.f32 1 maxCos))
(*.f32 (/.f32 (fma.f32 maxCos maxCos -1) (+.f32 1 maxCos)) ux)
(-.f32 (+.f32 (*.f32 2 (/.f32 1 (+.f32 1 maxCos))) (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (+.f32 1 maxCos) 2)) (*.f32 -1 (/.f32 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux) (+.f32 1 maxCos))))) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2)))
(+.f32 (/.f32 2 (+.f32 1 maxCos)) (-.f32 (+.f32 (neg.f32 (/.f32 (-.f32 1 (*.f32 maxCos maxCos)) (/.f32 (+.f32 1 maxCos) ux))) (/.f32 (*.f32 maxCos maxCos) (pow.f32 (+.f32 1 maxCos) 2))) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2))))
(+.f32 (-.f32 (+.f32 (/.f32 2 (+.f32 1 maxCos)) (/.f32 maxCos (/.f32 (pow.f32 (+.f32 1 maxCos) 2) maxCos))) (/.f32 ux (/.f32 (+.f32 1 maxCos) (-.f32 1 (*.f32 maxCos maxCos))))) (/.f32 -1 (pow.f32 (+.f32 1 maxCos) 2)))
(+.f32 (+.f32 (+.f32 (/.f32 2 (+.f32 1 maxCos)) (/.f32 maxCos (/.f32 (pow.f32 (+.f32 1 maxCos) 2) maxCos))) (*.f32 (/.f32 (fma.f32 maxCos maxCos -1) (+.f32 1 maxCos)) ux)) (/.f32 -1 (pow.f32 (+.f32 1 maxCos) 2)))
(-.f32 (+.f32 (*.f32 -1 (/.f32 (+.f32 (/.f32 1 (+.f32 1 maxCos)) (*.f32 -1 (/.f32 (-.f32 (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (+.f32 1 maxCos) 2)) (*.f32 2 (/.f32 1 (+.f32 1 maxCos)))) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2))) (+.f32 1 maxCos)))) ux)) (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (+.f32 1 maxCos) 2)) (+.f32 (*.f32 2 (/.f32 1 (+.f32 1 maxCos))) (*.f32 -1 (/.f32 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux) (+.f32 1 maxCos)))))) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2)))
(-.f32 (fma.f32 -1 (/.f32 (+.f32 (/.f32 1 (+.f32 1 maxCos)) (neg.f32 (/.f32 (+.f32 (/.f32 (*.f32 maxCos maxCos) (pow.f32 (+.f32 1 maxCos) 2)) (-.f32 (/.f32 2 (+.f32 1 maxCos)) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2)))) (+.f32 1 maxCos)))) ux) (+.f32 (/.f32 2 (+.f32 1 maxCos)) (+.f32 (neg.f32 (/.f32 (-.f32 1 (*.f32 maxCos maxCos)) (/.f32 (+.f32 1 maxCos) ux))) (/.f32 (*.f32 maxCos maxCos) (pow.f32 (+.f32 1 maxCos) 2))))) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2)))
(+.f32 (-.f32 (-.f32 (+.f32 (/.f32 2 (+.f32 1 maxCos)) (/.f32 maxCos (/.f32 (pow.f32 (+.f32 1 maxCos) 2) maxCos))) (/.f32 ux (/.f32 (+.f32 1 maxCos) (-.f32 1 (*.f32 maxCos maxCos))))) (/.f32 (-.f32 (/.f32 1 (+.f32 1 maxCos)) (-.f32 (/.f32 (+.f32 (/.f32 2 (+.f32 1 maxCos)) (/.f32 maxCos (/.f32 (pow.f32 (+.f32 1 maxCos) 2) maxCos))) (+.f32 1 maxCos)) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 3)))) ux)) (/.f32 -1 (pow.f32 (+.f32 1 maxCos) 2)))
(-.f32 (+.f32 (+.f32 (+.f32 (/.f32 2 (+.f32 1 maxCos)) (/.f32 maxCos (/.f32 (pow.f32 (+.f32 1 maxCos) 2) maxCos))) (*.f32 (/.f32 (fma.f32 maxCos maxCos -1) (+.f32 1 maxCos)) ux)) (/.f32 -1 (pow.f32 (+.f32 1 maxCos) 2))) (/.f32 (-.f32 (/.f32 1 (+.f32 1 maxCos)) (+.f32 (/.f32 (+.f32 (/.f32 2 (+.f32 1 maxCos)) (/.f32 maxCos (/.f32 (pow.f32 (+.f32 1 maxCos) 2) maxCos))) (+.f32 1 maxCos)) (/.f32 -1 (pow.f32 (+.f32 1 maxCos) 3)))) ux))
(-.f32 (+.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 -1 (/.f32 (-.f32 (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (+.f32 1 maxCos) 2)) (*.f32 2 (/.f32 1 (+.f32 1 maxCos)))) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2))) (pow.f32 (+.f32 1 maxCos) 2))) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2))) (pow.f32 ux 2))) (+.f32 (*.f32 -1 (/.f32 (+.f32 (/.f32 1 (+.f32 1 maxCos)) (*.f32 -1 (/.f32 (-.f32 (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (+.f32 1 maxCos) 2)) (*.f32 2 (/.f32 1 (+.f32 1 maxCos)))) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2))) (+.f32 1 maxCos)))) ux)) (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (+.f32 1 maxCos) 2)) (+.f32 (*.f32 2 (/.f32 1 (+.f32 1 maxCos))) (*.f32 -1 (/.f32 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux) (+.f32 1 maxCos))))))) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2)))
(-.f32 (fma.f32 -1 (/.f32 (fma.f32 -1 (/.f32 (+.f32 (/.f32 (*.f32 maxCos maxCos) (pow.f32 (+.f32 1 maxCos) 2)) (-.f32 (/.f32 2 (+.f32 1 maxCos)) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2)))) (pow.f32 (+.f32 1 maxCos) 2)) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2))) (*.f32 ux ux)) (fma.f32 -1 (/.f32 (+.f32 (/.f32 1 (+.f32 1 maxCos)) (neg.f32 (/.f32 (+.f32 (/.f32 (*.f32 maxCos maxCos) (pow.f32 (+.f32 1 maxCos) 2)) (-.f32 (/.f32 2 (+.f32 1 maxCos)) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2)))) (+.f32 1 maxCos)))) ux) (+.f32 (/.f32 2 (+.f32 1 maxCos)) (+.f32 (neg.f32 (/.f32 (-.f32 1 (*.f32 maxCos maxCos)) (/.f32 (+.f32 1 maxCos) ux))) (/.f32 (*.f32 maxCos maxCos) (pow.f32 (+.f32 1 maxCos) 2)))))) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2)))
(+.f32 (-.f32 (-.f32 (-.f32 (+.f32 (/.f32 2 (+.f32 1 maxCos)) (/.f32 maxCos (/.f32 (pow.f32 (+.f32 1 maxCos) 2) maxCos))) (/.f32 ux (/.f32 (+.f32 1 maxCos) (-.f32 1 (*.f32 maxCos maxCos))))) (/.f32 (-.f32 (/.f32 1 (+.f32 1 maxCos)) (-.f32 (/.f32 (+.f32 (/.f32 2 (+.f32 1 maxCos)) (/.f32 maxCos (/.f32 (pow.f32 (+.f32 1 maxCos) 2) maxCos))) (+.f32 1 maxCos)) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 3)))) ux)) (/.f32 (-.f32 (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2)) (-.f32 (/.f32 (+.f32 (/.f32 2 (+.f32 1 maxCos)) (/.f32 maxCos (/.f32 (pow.f32 (+.f32 1 maxCos) 2) maxCos))) (pow.f32 (+.f32 1 maxCos) 2)) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 4)))) (*.f32 ux ux))) (/.f32 -1 (pow.f32 (+.f32 1 maxCos) 2)))
(-.f32 (-.f32 (+.f32 (+.f32 (+.f32 (/.f32 2 (+.f32 1 maxCos)) (/.f32 maxCos (/.f32 (pow.f32 (+.f32 1 maxCos) 2) maxCos))) (*.f32 (/.f32 (fma.f32 maxCos maxCos -1) (+.f32 1 maxCos)) ux)) (/.f32 -1 (pow.f32 (+.f32 1 maxCos) 2))) (/.f32 (-.f32 (/.f32 1 (+.f32 1 maxCos)) (+.f32 (/.f32 (+.f32 (/.f32 2 (+.f32 1 maxCos)) (/.f32 maxCos (/.f32 (pow.f32 (+.f32 1 maxCos) 2) maxCos))) (+.f32 1 maxCos)) (/.f32 -1 (pow.f32 (+.f32 1 maxCos) 3)))) ux)) (/.f32 (-.f32 (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2)) (+.f32 (/.f32 (+.f32 (/.f32 2 (+.f32 1 maxCos)) (/.f32 maxCos (/.f32 (pow.f32 (+.f32 1 maxCos) 2) maxCos))) (pow.f32 (+.f32 1 maxCos) 2)) (/.f32 -1 (pow.f32 (+.f32 1 maxCos) 4)))) (*.f32 ux ux)))
(*.f32 -1 (/.f32 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux) (-.f32 1 (*.f32 -1 maxCos))))
(neg.f32 (/.f32 (-.f32 1 (*.f32 maxCos maxCos)) (/.f32 (+.f32 1 maxCos) ux)))
(/.f32 (*.f32 (neg.f32 ux) (-.f32 1 (*.f32 maxCos maxCos))) (+.f32 1 maxCos))
(*.f32 (/.f32 (fma.f32 maxCos maxCos -1) (+.f32 1 maxCos)) ux)
(-.f32 (+.f32 (*.f32 2 (/.f32 1 (-.f32 1 (*.f32 -1 maxCos)))) (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 2)) (*.f32 -1 (/.f32 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux) (-.f32 1 (*.f32 -1 maxCos)))))) (/.f32 1 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 2)))
(+.f32 (/.f32 2 (+.f32 1 maxCos)) (-.f32 (+.f32 (neg.f32 (/.f32 (-.f32 1 (*.f32 maxCos maxCos)) (/.f32 (+.f32 1 maxCos) ux))) (/.f32 (*.f32 maxCos maxCos) (pow.f32 (+.f32 1 maxCos) 2))) (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2))))
(+.f32 (-.f32 (+.f32 (/.f32 2 (+.f32 1 maxCos)) (/.f32 maxCos (/.f32 (pow.f32 (+.f32 1 maxCos) 2) maxCos))) (/.f32 ux (/.f32 (+.f32 1 maxCos) (-.f32 1 (*.f32 maxCos maxCos))))) (/.f32 -1 (pow.f32 (+.f32 1 maxCos) 2)))
(+.f32 (+.f32 (+.f32 (/.f32 2 (+.f32 1 maxCos)) (/.f32 maxCos (/.f32 (pow.f32 (+.f32 1 maxCos) 2) maxCos))) (*.f32 (/.f32 (fma.f32 maxCos maxCos -1) (+.f32 1 maxCos)) ux)) (/.f32 -1 (pow.f32 (+.f32 1 maxCos) 2)))
(-.f32 (+.f32 (*.f32 2 (/.f32 1 (-.f32 1 (*.f32 -1 maxCos)))) (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 2)) (+.f32 (*.f32 -1 (/.f32 (-.f32 (+.f32 (/.f32 1 (-.f32 1 (*.f32 -1 maxCos))) (/.f32 1 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 3))) (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 3)) (*.f32 2 (/.f32 1 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 2))))) ux)) (*.f32 -1 (/.f32 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux) (-.f32 1 (*.f32 -1 maxCos))))))) (/.f32 1 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 2)))
(-.f32 (+.f32 (/.f32 2 (-.f32 1 (neg.f32 maxCos))) (+.f32 (/.f32 (*.f32 maxCos maxCos) (pow.f32 (-.f32 1 (neg.f32 maxCos)) 2)) (*.f32 -1 (+.f32 (/.f32 (-.f32 (+.f32 (/.f32 1 (-.f32 1 (neg.f32 maxCos))) (/.f32 1 (pow.f32 (-.f32 1 (neg.f32 maxCos)) 3))) (+.f32 (/.f32 (*.f32 maxCos maxCos) (pow.f32 (-.f32 1 (neg.f32 maxCos)) 3)) (/.f32 2 (pow.f32 (-.f32 1 (neg.f32 maxCos)) 2)))) ux) (/.f32 (-.f32 1 (*.f32 maxCos maxCos)) (/.f32 (-.f32 1 (neg.f32 maxCos)) ux)))))) (/.f32 1 (pow.f32 (-.f32 1 (neg.f32 maxCos)) 2)))
(+.f32 (/.f32 2 (+.f32 1 maxCos)) (+.f32 (-.f32 (-.f32 (/.f32 maxCos (/.f32 (pow.f32 (+.f32 1 maxCos) 2) maxCos)) (/.f32 (+.f32 (/.f32 1 (+.f32 1 maxCos)) (-.f32 (-.f32 (/.f32 1 (pow.f32 (+.f32 1 maxCos) 3)) (/.f32 maxCos (/.f32 (pow.f32 (+.f32 1 maxCos) 3) maxCos))) (/.f32 2 (pow.f32 (+.f32 1 maxCos) 2)))) ux)) (/.f32 ux (/.f32 (+.f32 1 maxCos) (-.f32 1 (*.f32 maxCos maxCos))))) (/.f32 -1 (pow.f32 (+.f32 1 maxCos) 2))))
(+.f32 (+.f32 (/.f32 2 (+.f32 1 maxCos)) (/.f32 maxCos (/.f32 (pow.f32 (+.f32 1 maxCos) 2) maxCos))) (+.f32 (-.f32 (*.f32 (/.f32 (fma.f32 maxCos maxCos -1) (+.f32 1 maxCos)) ux) (/.f32 (+.f32 (/.f32 1 (+.f32 1 maxCos)) (+.f32 (/.f32 1 (pow.f32 (+.f32 1 maxCos) 3)) (-.f32 (/.f32 -2 (pow.f32 (+.f32 1 maxCos) 2)) (*.f32 (/.f32 maxCos (pow.f32 (+.f32 1 maxCos) 3)) maxCos)))) ux)) (/.f32 -1 (pow.f32 (+.f32 1 maxCos) 2))))
(-.f32 (+.f32 (*.f32 2 (/.f32 1 (*.f32 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 3) (pow.f32 ux 2)))) (+.f32 (*.f32 2 (/.f32 1 (-.f32 1 (*.f32 -1 maxCos)))) (+.f32 (*.f32 -1 (/.f32 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux) (-.f32 1 (*.f32 -1 maxCos)))) (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 2)) (+.f32 (*.f32 -1 (/.f32 (-.f32 (+.f32 (/.f32 1 (-.f32 1 (*.f32 -1 maxCos))) (/.f32 1 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 3))) (+.f32 (/.f32 (pow.f32 maxCos 2) (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 3)) (*.f32 2 (/.f32 1 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 2))))) ux)) (/.f32 (pow.f32 maxCos 2) (*.f32 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 4) (pow.f32 ux 2)))))))) (+.f32 (/.f32 1 (*.f32 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 2) (pow.f32 ux 2))) (+.f32 (/.f32 1 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 2)) (/.f32 1 (*.f32 (pow.f32 (-.f32 1 (*.f32 -1 maxCos)) 4) (pow.f32 ux 2))))))
(+.f32 (/.f32 2 (*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 (neg.f32 maxCos)) 3))) (-.f32 (+.f32 (/.f32 2 (-.f32 1 (neg.f32 maxCos))) (fma.f32 -1 (/.f32 (-.f32 1 (*.f32 maxCos maxCos)) (/.f32 (-.f32 1 (neg.f32 maxCos)) ux)) (+.f32 (/.f32 (*.f32 maxCos maxCos) (pow.f32 (-.f32 1 (neg.f32 maxCos)) 2)) (fma.f32 -1 (/.f32 (-.f32 (+.f32 (/.f32 1 (-.f32 1 (neg.f32 maxCos))) (/.f32 1 (pow.f32 (-.f32 1 (neg.f32 maxCos)) 3))) (+.f32 (/.f32 (*.f32 maxCos maxCos) (pow.f32 (-.f32 1 (neg.f32 maxCos)) 3)) (/.f32 2 (pow.f32 (-.f32 1 (neg.f32 maxCos)) 2)))) ux) (/.f32 (*.f32 maxCos maxCos) (*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 (neg.f32 maxCos)) 4))))))) (+.f32 (/.f32 1 (*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 (neg.f32 maxCos)) 2))) (+.f32 (/.f32 1 (pow.f32 (-.f32 1 (neg.f32 maxCos)) 2)) (/.f32 1 (*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 (neg.f32 maxCos)) 4)))))))
(+.f32 (/.f32 2 (*.f32 ux (*.f32 ux (pow.f32 (+.f32 1 maxCos) 3)))) (+.f32 (+.f32 (-.f32 (/.f32 maxCos (/.f32 (pow.f32 (+.f32 1 maxCos) 2) maxCos)) (/.f32 ux (/.f32 (+.f32 1 maxCos) (-.f32 1 (*.f32 maxCos maxCos))))) (-.f32 (/.f32 maxCos (/.f32 (*.f32 ux (*.f32 ux (pow.f32 (+.f32 1 maxCos) 4))) maxCos)) (/.f32 (+.f32 (/.f32 1 (+.f32 1 maxCos)) (-.f32 (-.f32 (/.f32 1 (pow.f32 (+.f32 1 maxCos) 3)) (/.f32 maxCos (/.f32 (pow.f32 (+.f32 1 maxCos) 3) maxCos))) (/.f32 2 (pow.f32 (+.f32 1 maxCos) 2)))) ux))) (-.f32 (/.f32 2 (+.f32 1 maxCos)) (+.f32 (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2)) (+.f32 (/.f32 1 (*.f32 ux (*.f32 ux (pow.f32 (+.f32 1 maxCos) 4)))) (/.f32 1 (*.f32 ux (*.f32 ux (pow.f32 (+.f32 1 maxCos) 2)))))))))
(+.f32 (+.f32 (+.f32 (*.f32 (/.f32 (fma.f32 maxCos maxCos -1) (+.f32 1 maxCos)) ux) (/.f32 2 (+.f32 1 maxCos))) (-.f32 (+.f32 (/.f32 maxCos (/.f32 (pow.f32 (+.f32 1 maxCos) 2) maxCos)) (/.f32 maxCos (/.f32 ux (/.f32 maxCos (*.f32 ux (pow.f32 (+.f32 1 maxCos) 4)))))) (/.f32 (+.f32 (/.f32 1 (+.f32 1 maxCos)) (+.f32 (/.f32 1 (pow.f32 (+.f32 1 maxCos) 3)) (-.f32 (/.f32 -2 (pow.f32 (+.f32 1 maxCos) 2)) (*.f32 (/.f32 maxCos (pow.f32 (+.f32 1 maxCos) 3)) maxCos)))) ux))) (-.f32 (/.f32 2 (*.f32 ux (*.f32 ux (pow.f32 (+.f32 1 maxCos) 3)))) (+.f32 (/.f32 1 (*.f32 ux (*.f32 ux (pow.f32 (+.f32 1 maxCos) 4)))) (+.f32 (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2)) (/.f32 (/.f32 1 (pow.f32 (+.f32 1 maxCos) 2)) (*.f32 ux ux))))))
(-.f32 1 ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 ux maxCos)) ux)
(-.f32 (fma.f32 ux maxCos 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 ux maxCos)) ux)
(-.f32 (fma.f32 ux maxCos 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 ux maxCos)) ux)
(-.f32 (fma.f32 ux maxCos 1) ux)
(*.f32 maxCos ux)
(*.f32 ux maxCos)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 ux maxCos)) ux)
(-.f32 (fma.f32 ux maxCos 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 ux maxCos)) ux)
(-.f32 (fma.f32 ux maxCos 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 ux maxCos)) ux)
(-.f32 (fma.f32 ux maxCos 1) ux)
(*.f32 maxCos ux)
(*.f32 ux maxCos)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 ux maxCos)) ux)
(-.f32 (fma.f32 ux maxCos 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 ux maxCos)) ux)
(-.f32 (fma.f32 ux maxCos 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 1 (*.f32 ux maxCos)) ux)
(-.f32 (fma.f32 ux maxCos 1) ux)
1
(+.f32 1 (*.f32 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))) ux))
(+.f32 1 (*.f32 ux (+.f32 2 (neg.f32 (+.f32 1 maxCos)))))
(fma.f32 ux (+.f32 1 (neg.f32 maxCos)) 1)
(fma.f32 ux (-.f32 1 maxCos) 1)
(+.f32 1 (+.f32 (*.f32 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))) ux) (*.f32 (pow.f32 ux 2) (-.f32 (pow.f32 maxCos 2) (+.f32 1 (*.f32 -2 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos)))))))))
(+.f32 1 (fma.f32 (+.f32 2 (neg.f32 (+.f32 1 maxCos))) ux (*.f32 (*.f32 ux ux) (-.f32 (*.f32 maxCos maxCos) (+.f32 1 (+.f32 -4 (*.f32 (neg.f32 (+.f32 1 maxCos)) -2)))))))
(+.f32 1 (fma.f32 ux (+.f32 1 (neg.f32 maxCos)) (*.f32 ux (*.f32 ux (+.f32 (fma.f32 maxCos maxCos -1) (*.f32 2 (+.f32 1 (neg.f32 maxCos))))))))
(+.f32 1 (*.f32 ux (+.f32 (-.f32 1 maxCos) (*.f32 (+.f32 (fma.f32 maxCos maxCos -1) (*.f32 2 (-.f32 1 maxCos))) ux))))
(+.f32 (*.f32 -1 (*.f32 (+.f32 (*.f32 -2 (-.f32 (pow.f32 maxCos 2) (+.f32 1 (*.f32 -2 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))))))) (*.f32 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))) (-.f32 1 (pow.f32 maxCos 2)))) (pow.f32 ux 3))) (+.f32 1 (+.f32 (*.f32 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))) ux) (*.f32 (pow.f32 ux 2) (-.f32 (pow.f32 maxCos 2) (+.f32 1 (*.f32 -2 (+.f32 2 (*.f32 -1 (+.f32 1 maxCos))))))))))
(fma.f32 -1 (*.f32 (pow.f32 ux 3) (fma.f32 -2 (-.f32 (*.f32 maxCos maxCos) (+.f32 1 (+.f32 -4 (*.f32 (neg.f32 (+.f32 1 maxCos)) -2)))) (*.f32 (+.f32 2 (neg.f32 (+.f32 1 maxCos))) (-.f32 1 (*.f32 maxCos maxCos))))) (+.f32 1 (fma.f32 (+.f32 2 (neg.f32 (+.f32 1 maxCos))) ux (*.f32 (*.f32 ux ux) (-.f32 (*.f32 maxCos maxCos) (+.f32 1 (+.f32 -4 (*.f32 (neg.f32 (+.f32 1 maxCos)) -2))))))))
(+.f32 (fma.f32 ux (+.f32 1 (neg.f32 maxCos)) (*.f32 ux (*.f32 ux (+.f32 (fma.f32 maxCos maxCos -1) (*.f32 2 (+.f32 1 (neg.f32 maxCos))))))) (fma.f32 (neg.f32 (fma.f32 (+.f32 1 (neg.f32 maxCos)) (-.f32 1 (*.f32 maxCos maxCos)) (*.f32 -2 (+.f32 (fma.f32 maxCos maxCos -1) (*.f32 2 (+.f32 1 (neg.f32 maxCos))))))) (pow.f32 ux 3) 1))
(+.f32 (*.f32 ux (+.f32 (-.f32 1 maxCos) (*.f32 (+.f32 (fma.f32 maxCos maxCos -1) (*.f32 2 (-.f32 1 maxCos))) ux))) (fma.f32 (neg.f32 (fma.f32 (-.f32 1 maxCos) (-.f32 1 (*.f32 maxCos maxCos)) (*.f32 -2 (+.f32 (fma.f32 maxCos maxCos -1) (*.f32 2 (-.f32 1 maxCos)))))) (pow.f32 ux 3) 1))
(*.f32 -1 (/.f32 (+.f32 1 maxCos) (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux)))
(/.f32 (neg.f32 (+.f32 1 maxCos)) (*.f32 ux (-.f32 1 (*.f32 maxCos maxCos))))
(/.f32 (/.f32 (-.f32 -1 maxCos) ux) (-.f32 1 (*.f32 maxCos maxCos)))
(-.f32 (+.f32 (*.f32 -1 (/.f32 (+.f32 1 maxCos) (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux))) (/.f32 1 (*.f32 (pow.f32 ux 2) (-.f32 1 (pow.f32 maxCos 2))))) (*.f32 2 (/.f32 (+.f32 1 maxCos) (*.f32 (pow.f32 ux 2) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))))
(+.f32 (fma.f32 -1 (/.f32 (+.f32 1 maxCos) (*.f32 ux (-.f32 1 (*.f32 maxCos maxCos)))) (/.f32 1 (*.f32 (*.f32 ux ux) (-.f32 1 (*.f32 maxCos maxCos))))) (*.f32 -2 (/.f32 (+.f32 1 maxCos) (*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))))
(+.f32 (+.f32 (/.f32 (/.f32 (-.f32 -1 maxCos) ux) (-.f32 1 (*.f32 maxCos maxCos))) (/.f32 (/.f32 (/.f32 1 ux) (-.f32 1 (*.f32 maxCos maxCos))) ux)) (*.f32 -2 (/.f32 (+.f32 1 maxCos) (*.f32 ux (*.f32 ux (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))))))
(+.f32 (/.f32 (/.f32 (-.f32 -1 maxCos) ux) (-.f32 1 (*.f32 maxCos maxCos))) (+.f32 (/.f32 (/.f32 1 (*.f32 ux ux)) (-.f32 1 (*.f32 maxCos maxCos))) (*.f32 -2 (/.f32 (+.f32 1 maxCos) (*.f32 ux (*.f32 ux (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))))))
(-.f32 (+.f32 (/.f32 1 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) (pow.f32 ux 2))) (+.f32 (*.f32 -1 (/.f32 (+.f32 1 maxCos) (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux))) (*.f32 -1 (/.f32 (+.f32 (*.f32 -2 (/.f32 (-.f32 (/.f32 1 (-.f32 1 (pow.f32 maxCos 2))) (*.f32 2 (/.f32 (+.f32 1 maxCos) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (-.f32 1 (pow.f32 maxCos 2)))) (*.f32 -1 (/.f32 (+.f32 1 maxCos) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (pow.f32 ux 3))))) (*.f32 2 (/.f32 (+.f32 1 maxCos) (*.f32 (pow.f32 ux 2) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))))
(+.f32 (+.f32 (fma.f32 -1 (/.f32 (+.f32 1 maxCos) (*.f32 ux (-.f32 1 (*.f32 maxCos maxCos)))) (/.f32 1 (*.f32 (*.f32 ux ux) (-.f32 1 (*.f32 maxCos maxCos))))) (neg.f32 (/.f32 (fma.f32 -2 (/.f32 (-.f32 (/.f32 1 (-.f32 1 (*.f32 maxCos maxCos))) (*.f32 2 (/.f32 (+.f32 1 maxCos) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))) (-.f32 1 (*.f32 maxCos maxCos))) (/.f32 (neg.f32 (+.f32 1 maxCos)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))) (pow.f32 ux 3)))) (*.f32 -2 (/.f32 (+.f32 1 maxCos) (*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))))
(+.f32 (/.f32 (/.f32 (/.f32 1 ux) (-.f32 1 (*.f32 maxCos maxCos))) ux) (+.f32 (-.f32 (/.f32 (/.f32 (-.f32 -1 maxCos) ux) (-.f32 1 (*.f32 maxCos maxCos))) (/.f32 (fma.f32 -2 (-.f32 (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (/.f32 (*.f32 2 (+.f32 1 maxCos)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 3))) (/.f32 (-.f32 -1 maxCos) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))) (pow.f32 ux 3))) (*.f32 -2 (/.f32 (+.f32 1 maxCos) (*.f32 ux (*.f32 ux (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))))))
(+.f32 (/.f32 (/.f32 1 (*.f32 ux ux)) (-.f32 1 (*.f32 maxCos maxCos))) (+.f32 (-.f32 (/.f32 (/.f32 (-.f32 -1 maxCos) ux) (-.f32 1 (*.f32 maxCos maxCos))) (/.f32 (fma.f32 -2 (+.f32 (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (/.f32 (+.f32 -2 (*.f32 -2 maxCos)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 3))) (/.f32 (-.f32 -1 maxCos) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))) (pow.f32 ux 3))) (*.f32 -2 (/.f32 (+.f32 1 maxCos) (*.f32 ux (*.f32 ux (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))))))
(-.f32 (+.f32 (/.f32 1 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) (pow.f32 ux 2))) (+.f32 (*.f32 -1 (/.f32 (+.f32 1 maxCos) (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux))) (+.f32 (*.f32 2 (/.f32 (+.f32 1 maxCos) (*.f32 (pow.f32 ux 4) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 3)))) (*.f32 -1 (/.f32 (+.f32 (*.f32 -2 (/.f32 (-.f32 (/.f32 1 (-.f32 1 (pow.f32 maxCos 2))) (*.f32 2 (/.f32 (+.f32 1 maxCos) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (-.f32 1 (pow.f32 maxCos 2)))) (*.f32 -1 (/.f32 (+.f32 1 maxCos) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (pow.f32 ux 3)))))) (+.f32 (*.f32 2 (/.f32 (+.f32 (*.f32 -2 (/.f32 (-.f32 (/.f32 1 (-.f32 1 (pow.f32 maxCos 2))) (*.f32 2 (/.f32 (+.f32 1 maxCos) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (-.f32 1 (pow.f32 maxCos 2)))) (*.f32 -1 (/.f32 (+.f32 1 maxCos) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (*.f32 (pow.f32 ux 4) (-.f32 1 (pow.f32 maxCos 2))))) (+.f32 (/.f32 1 (*.f32 (pow.f32 ux 4) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2))) (*.f32 2 (/.f32 (+.f32 1 maxCos) (*.f32 (pow.f32 ux 2) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))))))
(+.f32 (/.f32 1 (*.f32 (*.f32 ux ux) (-.f32 1 (*.f32 maxCos maxCos)))) (-.f32 (fma.f32 -1 (/.f32 (+.f32 1 maxCos) (*.f32 ux (-.f32 1 (*.f32 maxCos maxCos)))) (fma.f32 2 (/.f32 (+.f32 1 maxCos) (*.f32 (pow.f32 ux 4) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 3))) (neg.f32 (/.f32 (fma.f32 -2 (/.f32 (-.f32 (/.f32 1 (-.f32 1 (*.f32 maxCos maxCos))) (*.f32 2 (/.f32 (+.f32 1 maxCos) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))) (-.f32 1 (*.f32 maxCos maxCos))) (/.f32 (neg.f32 (+.f32 1 maxCos)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))) (pow.f32 ux 3))))) (fma.f32 2 (/.f32 (fma.f32 -2 (/.f32 (-.f32 (/.f32 1 (-.f32 1 (*.f32 maxCos maxCos))) (*.f32 2 (/.f32 (+.f32 1 maxCos) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))) (-.f32 1 (*.f32 maxCos maxCos))) (/.f32 (neg.f32 (+.f32 1 maxCos)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))) (*.f32 (-.f32 1 (*.f32 maxCos maxCos)) (pow.f32 ux 4))) (+.f32 (*.f32 2 (/.f32 (+.f32 1 maxCos) (*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))) (/.f32 1 (*.f32 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2) (pow.f32 ux 4)))))))
(+.f32 (/.f32 (/.f32 (/.f32 1 ux) (-.f32 1 (*.f32 maxCos maxCos))) ux) (-.f32 (-.f32 (fma.f32 2 (/.f32 (+.f32 1 maxCos) (*.f32 (pow.f32 ux 4) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 3))) (/.f32 (/.f32 (-.f32 -1 maxCos) ux) (-.f32 1 (*.f32 maxCos maxCos)))) (/.f32 (fma.f32 -2 (-.f32 (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (/.f32 (*.f32 2 (+.f32 1 maxCos)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 3))) (/.f32 (-.f32 -1 maxCos) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))) (pow.f32 ux 3))) (fma.f32 2 (/.f32 (fma.f32 -2 (-.f32 (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (/.f32 (*.f32 2 (+.f32 1 maxCos)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 3))) (/.f32 (-.f32 -1 maxCos) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))) (*.f32 (-.f32 1 (*.f32 maxCos maxCos)) (pow.f32 ux 4))) (fma.f32 2 (/.f32 (+.f32 1 maxCos) (*.f32 ux (*.f32 ux (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))) (/.f32 1 (*.f32 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2) (pow.f32 ux 4)))))))
(+.f32 (/.f32 (/.f32 1 (*.f32 ux ux)) (-.f32 1 (*.f32 maxCos maxCos))) (-.f32 (-.f32 (fma.f32 2 (/.f32 (/.f32 (+.f32 1 maxCos) (pow.f32 ux 4)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 3)) (/.f32 (/.f32 (-.f32 -1 maxCos) ux) (-.f32 1 (*.f32 maxCos maxCos)))) (/.f32 (fma.f32 -2 (+.f32 (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (/.f32 (+.f32 -2 (*.f32 -2 maxCos)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 3))) (/.f32 (-.f32 -1 maxCos) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))) (pow.f32 ux 3))) (fma.f32 2 (/.f32 (fma.f32 -2 (+.f32 (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (/.f32 (+.f32 -2 (*.f32 -2 maxCos)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 3))) (/.f32 (-.f32 -1 maxCos) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))) (*.f32 (-.f32 1 (*.f32 maxCos maxCos)) (pow.f32 ux 4))) (fma.f32 2 (/.f32 (+.f32 1 maxCos) (*.f32 ux (*.f32 ux (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))) (/.f32 (/.f32 1 (pow.f32 ux 4)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))))))
(*.f32 -1 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux)))
(/.f32 (neg.f32 (+.f32 1 maxCos)) (*.f32 ux (-.f32 1 (*.f32 maxCos maxCos))))
(/.f32 (/.f32 (-.f32 -1 maxCos) ux) (-.f32 1 (*.f32 maxCos maxCos)))
(-.f32 (+.f32 (/.f32 1 (*.f32 (pow.f32 ux 2) (-.f32 1 (pow.f32 maxCos 2)))) (*.f32 -1 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux)))) (*.f32 2 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (*.f32 (pow.f32 ux 2) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))))
(+.f32 (fma.f32 -1 (/.f32 (+.f32 1 maxCos) (*.f32 ux (-.f32 1 (*.f32 maxCos maxCos)))) (/.f32 1 (*.f32 (*.f32 ux ux) (-.f32 1 (*.f32 maxCos maxCos))))) (*.f32 -2 (/.f32 (+.f32 1 maxCos) (*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))))
(+.f32 (+.f32 (/.f32 (/.f32 (-.f32 -1 maxCos) ux) (-.f32 1 (*.f32 maxCos maxCos))) (/.f32 (/.f32 (/.f32 1 ux) (-.f32 1 (*.f32 maxCos maxCos))) ux)) (*.f32 -2 (/.f32 (+.f32 1 maxCos) (*.f32 ux (*.f32 ux (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))))))
(+.f32 (/.f32 (/.f32 (-.f32 -1 maxCos) ux) (-.f32 1 (*.f32 maxCos maxCos))) (+.f32 (/.f32 (/.f32 1 (*.f32 ux ux)) (-.f32 1 (*.f32 maxCos maxCos))) (*.f32 -2 (/.f32 (+.f32 1 maxCos) (*.f32 ux (*.f32 ux (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))))))
(-.f32 (+.f32 (/.f32 1 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) (pow.f32 ux 2))) (+.f32 (*.f32 -1 (/.f32 (-.f32 (*.f32 -1 (/.f32 maxCos (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2))) (+.f32 (*.f32 2 (/.f32 (-.f32 (/.f32 1 (-.f32 1 (pow.f32 maxCos 2))) (*.f32 2 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (-.f32 1 (pow.f32 maxCos 2)))) (/.f32 1 (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (pow.f32 ux 3))) (*.f32 -1 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux))))) (*.f32 2 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (*.f32 (pow.f32 ux 2) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))))
(+.f32 (/.f32 1 (*.f32 (*.f32 ux ux) (-.f32 1 (*.f32 maxCos maxCos)))) (-.f32 (*.f32 -1 (+.f32 (/.f32 (-.f32 (/.f32 (neg.f32 maxCos) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (fma.f32 2 (/.f32 (-.f32 (/.f32 1 (-.f32 1 (*.f32 maxCos maxCos))) (*.f32 2 (/.f32 (-.f32 1 (neg.f32 maxCos)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))) (-.f32 1 (*.f32 maxCos maxCos))) (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))) (pow.f32 ux 3)) (/.f32 (-.f32 1 (neg.f32 maxCos)) (*.f32 ux (-.f32 1 (*.f32 maxCos maxCos)))))) (*.f32 2 (/.f32 (-.f32 1 (neg.f32 maxCos)) (*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))))))
(+.f32 (-.f32 (/.f32 (/.f32 (-.f32 -1 maxCos) ux) (-.f32 1 (*.f32 maxCos maxCos))) (/.f32 (-.f32 (/.f32 (neg.f32 maxCos) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (fma.f32 2 (-.f32 (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (/.f32 (*.f32 2 (+.f32 1 maxCos)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 3))) (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))) (pow.f32 ux 3))) (+.f32 (/.f32 (/.f32 (/.f32 1 ux) (-.f32 1 (*.f32 maxCos maxCos))) ux) (*.f32 -2 (/.f32 (+.f32 1 maxCos) (*.f32 ux (*.f32 ux (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))))))
(+.f32 (/.f32 (/.f32 1 (*.f32 ux ux)) (-.f32 1 (*.f32 maxCos maxCos))) (+.f32 (/.f32 (+.f32 (/.f32 maxCos (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (fma.f32 2 (+.f32 (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (/.f32 (+.f32 -2 (*.f32 -2 maxCos)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 3))) (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))) (pow.f32 ux 3)) (+.f32 (/.f32 (/.f32 (-.f32 -1 maxCos) ux) (-.f32 1 (*.f32 maxCos maxCos))) (*.f32 -2 (/.f32 (+.f32 1 maxCos) (*.f32 ux (*.f32 ux (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))))))))
(-.f32 (+.f32 (/.f32 1 (*.f32 (-.f32 1 (pow.f32 maxCos 2)) (pow.f32 ux 2))) (+.f32 (*.f32 -1 (/.f32 (-.f32 (*.f32 -1 (/.f32 maxCos (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2))) (+.f32 (*.f32 2 (/.f32 (-.f32 (/.f32 1 (-.f32 1 (pow.f32 maxCos 2))) (*.f32 2 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (-.f32 1 (pow.f32 maxCos 2)))) (/.f32 1 (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (pow.f32 ux 3))) (+.f32 (*.f32 -1 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (*.f32 (-.f32 1 (pow.f32 maxCos 2)) ux))) (*.f32 2 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (*.f32 (pow.f32 ux 4) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 3))))))) (+.f32 (*.f32 2 (/.f32 (-.f32 (*.f32 -1 (/.f32 maxCos (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2))) (+.f32 (*.f32 2 (/.f32 (-.f32 (/.f32 1 (-.f32 1 (pow.f32 maxCos 2))) (*.f32 2 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (-.f32 1 (pow.f32 maxCos 2)))) (/.f32 1 (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (*.f32 (pow.f32 ux 4) (-.f32 1 (pow.f32 maxCos 2))))) (+.f32 (*.f32 2 (/.f32 (-.f32 1 (*.f32 -1 maxCos)) (*.f32 (pow.f32 ux 2) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2)))) (/.f32 1 (*.f32 (pow.f32 ux 4) (pow.f32 (-.f32 1 (pow.f32 maxCos 2)) 2))))))
(+.f32 (/.f32 1 (*.f32 (*.f32 ux ux) (-.f32 1 (*.f32 maxCos maxCos)))) (-.f32 (fma.f32 -1 (/.f32 (-.f32 (/.f32 (neg.f32 maxCos) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (fma.f32 2 (/.f32 (-.f32 (/.f32 1 (-.f32 1 (*.f32 maxCos maxCos))) (*.f32 2 (/.f32 (-.f32 1 (neg.f32 maxCos)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))) (-.f32 1 (*.f32 maxCos maxCos))) (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))) (pow.f32 ux 3)) (fma.f32 -1 (/.f32 (-.f32 1 (neg.f32 maxCos)) (*.f32 ux (-.f32 1 (*.f32 maxCos maxCos)))) (*.f32 2 (/.f32 (-.f32 1 (neg.f32 maxCos)) (*.f32 (pow.f32 ux 4) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 3)))))) (fma.f32 2 (/.f32 (-.f32 (/.f32 (neg.f32 maxCos) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (fma.f32 2 (/.f32 (-.f32 (/.f32 1 (-.f32 1 (*.f32 maxCos maxCos))) (*.f32 2 (/.f32 (-.f32 1 (neg.f32 maxCos)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))) (-.f32 1 (*.f32 maxCos maxCos))) (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))) (*.f32 (-.f32 1 (*.f32 maxCos maxCos)) (pow.f32 ux 4))) (fma.f32 2 (/.f32 (-.f32 1 (neg.f32 maxCos)) (*.f32 (*.f32 ux ux) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))) (/.f32 1 (*.f32 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2) (pow.f32 ux 4)))))))
(+.f32 (-.f32 (fma.f32 2 (/.f32 (+.f32 1 maxCos) (*.f32 (pow.f32 ux 4) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 3))) (/.f32 (/.f32 (-.f32 -1 maxCos) ux) (-.f32 1 (*.f32 maxCos maxCos)))) (/.f32 (-.f32 (/.f32 (neg.f32 maxCos) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (fma.f32 2 (-.f32 (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (/.f32 (*.f32 2 (+.f32 1 maxCos)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 3))) (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))) (pow.f32 ux 3))) (-.f32 (/.f32 (/.f32 (/.f32 1 ux) (-.f32 1 (*.f32 maxCos maxCos))) ux) (fma.f32 2 (/.f32 (-.f32 (/.f32 (neg.f32 maxCos) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (fma.f32 2 (-.f32 (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (/.f32 (*.f32 2 (+.f32 1 maxCos)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 3))) (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))) (*.f32 (-.f32 1 (*.f32 maxCos maxCos)) (pow.f32 ux 4))) (fma.f32 2 (/.f32 (+.f32 1 maxCos) (*.f32 ux (*.f32 ux (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))) (/.f32 1 (*.f32 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2) (pow.f32 ux 4)))))))
(+.f32 (/.f32 (/.f32 1 (*.f32 ux ux)) (-.f32 1 (*.f32 maxCos maxCos))) (+.f32 (+.f32 (/.f32 (+.f32 (/.f32 maxCos (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (fma.f32 2 (+.f32 (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (/.f32 (+.f32 -2 (*.f32 -2 maxCos)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 3))) (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))) (pow.f32 ux 3)) (fma.f32 2 (/.f32 (/.f32 (+.f32 1 maxCos) (pow.f32 ux 4)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 3)) (/.f32 (/.f32 (-.f32 -1 maxCos) ux) (-.f32 1 (*.f32 maxCos maxCos))))) (-.f32 (*.f32 2 (/.f32 (+.f32 (/.f32 maxCos (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (fma.f32 2 (+.f32 (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)) (/.f32 (+.f32 -2 (*.f32 -2 maxCos)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 3))) (/.f32 1 (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))) (*.f32 (-.f32 1 (*.f32 maxCos maxCos)) (pow.f32 ux 4)))) (fma.f32 2 (/.f32 (+.f32 1 maxCos) (*.f32 ux (*.f32 ux (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2)))) (/.f32 (/.f32 1 (pow.f32 ux 4)) (pow.f32 (-.f32 1 (*.f32 maxCos maxCos)) 2))))))
(/.f32 1 (-.f32 1 ux))
(+.f32 (/.f32 1 (-.f32 1 ux)) (*.f32 -1 (/.f32 (*.f32 maxCos ux) (pow.f32 (-.f32 1 ux) 2))))
(+.f32 (/.f32 1 (-.f32 1 ux)) (neg.f32 (/.f32 (*.f32 ux maxCos) (pow.f32 (-.f32 1 ux) 2))))
(-.f32 (/.f32 1 (-.f32 1 ux)) (/.f32 (*.f32 ux maxCos) (pow.f32 (-.f32 1 ux) 2)))
(-.f32 (/.f32 1 (-.f32 1 ux)) (*.f32 (/.f32 maxCos (pow.f32 (-.f32 1 ux) 2)) ux))
(+.f32 (/.f32 (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)) (pow.f32 (-.f32 1 ux) 3)) (+.f32 (/.f32 1 (-.f32 1 ux)) (*.f32 -1 (/.f32 (*.f32 maxCos ux) (pow.f32 (-.f32 1 ux) 2)))))
(+.f32 (+.f32 (/.f32 1 (-.f32 1 ux)) (neg.f32 (/.f32 (*.f32 ux maxCos) (pow.f32 (-.f32 1 ux) 2)))) (/.f32 (*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos)) (pow.f32 (-.f32 1 ux) 3)))
(+.f32 (-.f32 (/.f32 1 (-.f32 1 ux)) (/.f32 (*.f32 ux maxCos) (pow.f32 (-.f32 1 ux) 2))) (*.f32 (/.f32 (*.f32 maxCos maxCos) (pow.f32 (-.f32 1 ux) 3)) (*.f32 ux ux)))
(+.f32 (-.f32 (/.f32 1 (-.f32 1 ux)) (*.f32 (/.f32 maxCos (pow.f32 (-.f32 1 ux) 2)) ux)) (*.f32 (/.f32 maxCos (/.f32 (pow.f32 (-.f32 1 ux) 3) maxCos)) (*.f32 ux ux)))
(+.f32 (/.f32 (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)) (pow.f32 (-.f32 1 ux) 3)) (+.f32 (/.f32 1 (-.f32 1 ux)) (+.f32 (*.f32 -1 (/.f32 (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3)) (pow.f32 (-.f32 1 ux) 4))) (*.f32 -1 (/.f32 (*.f32 maxCos ux) (pow.f32 (-.f32 1 ux) 2))))))
(+.f32 (/.f32 (*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos)) (pow.f32 (-.f32 1 ux) 3)) (+.f32 (/.f32 1 (-.f32 1 ux)) (fma.f32 -1 (/.f32 (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3)) (pow.f32 (-.f32 1 ux) 4)) (neg.f32 (/.f32 (*.f32 ux maxCos) (pow.f32 (-.f32 1 ux) 2))))))
(+.f32 (*.f32 (/.f32 (*.f32 maxCos maxCos) (pow.f32 (-.f32 1 ux) 3)) (*.f32 ux ux)) (-.f32 (-.f32 (/.f32 1 (-.f32 1 ux)) (/.f32 (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3)) (pow.f32 (-.f32 1 ux) 4))) (/.f32 (*.f32 ux maxCos) (pow.f32 (-.f32 1 ux) 2))))
(-.f32 (-.f32 (+.f32 (/.f32 1 (-.f32 1 ux)) (*.f32 (/.f32 maxCos (/.f32 (pow.f32 (-.f32 1 ux) 3) maxCos)) (*.f32 ux ux))) (/.f32 (pow.f32 ux 3) (/.f32 (pow.f32 (-.f32 1 ux) 4) (pow.f32 maxCos 3)))) (*.f32 (/.f32 maxCos (pow.f32 (-.f32 1 ux) 2)) ux))
(/.f32 1 (*.f32 maxCos ux))
(/.f32 1 (*.f32 ux maxCos))
(+.f32 (/.f32 1 (*.f32 maxCos ux)) (*.f32 -1 (/.f32 (-.f32 1 ux) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))))
(+.f32 (/.f32 1 (*.f32 ux maxCos)) (neg.f32 (/.f32 (-.f32 1 ux) (*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos)))))
(-.f32 (/.f32 1 (*.f32 ux maxCos)) (/.f32 (-.f32 1 ux) (*.f32 maxCos (*.f32 ux (*.f32 ux maxCos)))))
(-.f32 (/.f32 1 (*.f32 ux maxCos)) (/.f32 (-.f32 1 ux) (*.f32 ux (*.f32 ux (*.f32 maxCos maxCos)))))
(+.f32 (/.f32 1 (*.f32 maxCos ux)) (+.f32 (*.f32 -1 (/.f32 (-.f32 1 ux) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))) (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3)))))
(+.f32 (/.f32 1 (*.f32 ux maxCos)) (fma.f32 -1 (/.f32 (-.f32 1 ux) (*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))) (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3)))))
(+.f32 (/.f32 1 (*.f32 ux maxCos)) (-.f32 (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3))) (/.f32 (-.f32 1 ux) (*.f32 maxCos (*.f32 ux (*.f32 ux maxCos))))))
(+.f32 (/.f32 1 (*.f32 ux maxCos)) (-.f32 (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3))) (/.f32 (-.f32 1 ux) (*.f32 ux (*.f32 ux (*.f32 maxCos maxCos))))))
(+.f32 (*.f32 -1 (/.f32 (pow.f32 (-.f32 1 ux) 3) (*.f32 (pow.f32 maxCos 4) (pow.f32 ux 4)))) (+.f32 (/.f32 1 (*.f32 maxCos ux)) (+.f32 (*.f32 -1 (/.f32 (-.f32 1 ux) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))) (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3))))))
(fma.f32 -1 (/.f32 (pow.f32 (-.f32 1 ux) 3) (*.f32 (pow.f32 ux 4) (pow.f32 maxCos 4))) (+.f32 (/.f32 1 (*.f32 ux maxCos)) (fma.f32 -1 (/.f32 (-.f32 1 ux) (*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))) (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3))))))
(-.f32 (+.f32 (/.f32 1 (*.f32 ux maxCos)) (-.f32 (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3))) (/.f32 (-.f32 1 ux) (*.f32 maxCos (*.f32 ux (*.f32 ux maxCos)))))) (/.f32 (pow.f32 (-.f32 1 ux) 3) (*.f32 (pow.f32 ux 4) (pow.f32 maxCos 4))))
(+.f32 (/.f32 1 (*.f32 ux maxCos)) (-.f32 (-.f32 (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3))) (/.f32 (-.f32 1 ux) (*.f32 ux (*.f32 ux (*.f32 maxCos maxCos))))) (/.f32 (pow.f32 (-.f32 1 ux) 3) (*.f32 (pow.f32 ux 4) (pow.f32 maxCos 4)))))
(/.f32 1 (*.f32 maxCos ux))
(/.f32 1 (*.f32 ux maxCos))
(+.f32 (/.f32 1 (*.f32 maxCos ux)) (*.f32 -1 (/.f32 (-.f32 1 ux) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))))
(+.f32 (/.f32 1 (*.f32 ux maxCos)) (neg.f32 (/.f32 (-.f32 1 ux) (*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos)))))
(-.f32 (/.f32 1 (*.f32 ux maxCos)) (/.f32 (-.f32 1 ux) (*.f32 maxCos (*.f32 ux (*.f32 ux maxCos)))))
(-.f32 (/.f32 1 (*.f32 ux maxCos)) (/.f32 (-.f32 1 ux) (*.f32 ux (*.f32 ux (*.f32 maxCos maxCos)))))
(+.f32 (/.f32 1 (*.f32 maxCos ux)) (+.f32 (*.f32 -1 (/.f32 (-.f32 1 ux) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))) (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3)))))
(+.f32 (/.f32 1 (*.f32 ux maxCos)) (fma.f32 -1 (/.f32 (-.f32 1 ux) (*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))) (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3)))))
(+.f32 (/.f32 1 (*.f32 ux maxCos)) (-.f32 (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3))) (/.f32 (-.f32 1 ux) (*.f32 maxCos (*.f32 ux (*.f32 ux maxCos))))))
(+.f32 (/.f32 1 (*.f32 ux maxCos)) (-.f32 (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3))) (/.f32 (-.f32 1 ux) (*.f32 ux (*.f32 ux (*.f32 maxCos maxCos))))))
(+.f32 (*.f32 -1 (/.f32 (pow.f32 (-.f32 1 ux) 3) (*.f32 (pow.f32 maxCos 4) (pow.f32 ux 4)))) (+.f32 (/.f32 1 (*.f32 maxCos ux)) (+.f32 (*.f32 -1 (/.f32 (-.f32 1 ux) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))) (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3))))))
(fma.f32 -1 (/.f32 (pow.f32 (-.f32 1 ux) 3) (*.f32 (pow.f32 ux 4) (pow.f32 maxCos 4))) (+.f32 (/.f32 1 (*.f32 ux maxCos)) (fma.f32 -1 (/.f32 (-.f32 1 ux) (*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))) (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3))))))
(-.f32 (+.f32 (/.f32 1 (*.f32 ux maxCos)) (-.f32 (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3))) (/.f32 (-.f32 1 ux) (*.f32 maxCos (*.f32 ux (*.f32 ux maxCos)))))) (/.f32 (pow.f32 (-.f32 1 ux) 3) (*.f32 (pow.f32 ux 4) (pow.f32 maxCos 4))))
(+.f32 (/.f32 1 (*.f32 ux maxCos)) (-.f32 (-.f32 (/.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (pow.f32 ux 3) (pow.f32 maxCos 3))) (/.f32 (-.f32 1 ux) (*.f32 ux (*.f32 ux (*.f32 maxCos maxCos))))) (/.f32 (pow.f32 (-.f32 1 ux) 3) (*.f32 (pow.f32 ux 4) (pow.f32 maxCos 4)))))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (*.f32 ux ux))
(*.f32 ux (*.f32 ux maxCos))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (*.f32 ux ux))
(*.f32 ux (*.f32 ux maxCos))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (*.f32 ux ux))
(*.f32 ux (*.f32 ux maxCos))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (*.f32 ux ux))
(*.f32 ux (*.f32 ux maxCos))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (*.f32 ux ux))
(*.f32 ux (*.f32 ux maxCos))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (*.f32 ux ux))
(*.f32 ux (*.f32 ux maxCos))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (*.f32 ux ux))
(*.f32 ux (*.f32 ux maxCos))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (*.f32 ux ux))
(*.f32 ux (*.f32 ux maxCos))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (*.f32 ux ux))
(*.f32 ux (*.f32 ux maxCos))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (*.f32 ux ux))
(*.f32 ux (*.f32 ux maxCos))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (*.f32 ux ux))
(*.f32 ux (*.f32 ux maxCos))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (*.f32 ux ux))
(*.f32 ux (*.f32 ux maxCos))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (*.f32 ux ux))
(*.f32 ux (*.f32 ux maxCos))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (*.f32 ux ux))
(*.f32 ux (*.f32 ux maxCos))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (*.f32 ux ux))
(*.f32 ux (*.f32 ux maxCos))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (*.f32 ux ux))
(*.f32 ux (*.f32 ux maxCos))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (*.f32 ux ux))
(*.f32 ux (*.f32 ux maxCos))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (*.f32 ux ux))
(*.f32 ux (*.f32 ux maxCos))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (*.f32 ux ux))
(*.f32 ux (*.f32 ux maxCos))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (*.f32 ux ux))
(*.f32 ux (*.f32 ux maxCos))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (*.f32 ux ux))
(*.f32 ux (*.f32 ux maxCos))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (*.f32 ux ux))
(*.f32 ux (*.f32 ux maxCos))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (*.f32 ux ux))
(*.f32 ux (*.f32 ux maxCos))
(*.f32 maxCos (pow.f32 ux 2))
(*.f32 maxCos (*.f32 ux ux))
(*.f32 ux (*.f32 ux maxCos))

localize178.0ms (3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(+.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 ux (-.f32 1 maxCos))) (*.f32 ux (-.f32 1 maxCos)))
0.1b
(*.f32 (-.f32 1 maxCos) (*.f32 ux ux))
0.3b
(*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 (-.f32 1 maxCos) (*.f32 ux ux)))
0.4b
(/.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 (-.f32 1 maxCos) (*.f32 ux ux))) (-.f32 1 maxCos))) (+.f32 1 (+.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 ux (-.f32 1 maxCos))) (*.f32 ux (-.f32 1 maxCos)))))
Compiler

Compiled 159 to 99 computations (37.7% saved)

series12.0ms (0.2%)

Counts
3 → 72
Calls

18 calls:

TimeVariablePointExpression
2.0ms
maxCos
@0
(/.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 (-.f32 1 maxCos) (*.f32 ux ux))) (-.f32 1 maxCos))) (+.f32 1 (+.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 ux (-.f32 1 maxCos))) (*.f32 ux (-.f32 1 maxCos)))))
1.0ms
maxCos
@-inf
(/.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 (-.f32 1 maxCos) (*.f32 ux ux))) (-.f32 1 maxCos))) (+.f32 1 (+.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 ux (-.f32 1 maxCos))) (*.f32 ux (-.f32 1 maxCos)))))
1.0ms
maxCos
@inf
(/.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 (-.f32 1 maxCos) (*.f32 ux ux))) (-.f32 1 maxCos))) (+.f32 1 (+.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 ux (-.f32 1 maxCos))) (*.f32 ux (-.f32 1 maxCos)))))
1.0ms
ux
@inf
(/.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 (-.f32 1 maxCos) (*.f32 ux ux))) (-.f32 1 maxCos))) (+.f32 1 (+.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 ux (-.f32 1 maxCos))) (*.f32 ux (-.f32 1 maxCos)))))
1.0ms
ux
@0
(*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 (-.f32 1 maxCos) (*.f32 ux ux)))

rewrite99.0ms (1.7%)

Algorithm
batch-egg-rewrite
Rules
532×fma-neg_binary32
296×expm1-udef_binary32
294×log1p-udef_binary32
241×log-pow_binary32
228×log-div_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01575
135656
2566356
Stop Event
node limit
Counts
3 → 79
Calls
Call 1
Inputs
(/.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 (-.f32 1 maxCos) (*.f32 ux ux))) (-.f32 1 maxCos))) (+.f32 1 (+.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 ux (-.f32 1 maxCos))) (*.f32 ux (-.f32 1 maxCos)))))
(*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 (-.f32 1 maxCos) (*.f32 ux ux)))
(*.f32 (-.f32 1 maxCos) (*.f32 ux ux))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (/.f32 1 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)) (neg.f32 (/.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 1 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)) (/.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (/.f32 1 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))) (pow.f32 (cbrt.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))) 2) (cbrt.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) 2) (*.f32 (cbrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) (/.f32 1 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))) (sqrt.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) (*.f32 (sqrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) (/.f32 1 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (neg.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) (/.f32 1 (neg.f32 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)) (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (pow.f32 (cbrt.f32 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)) 2)) (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (cbrt.f32 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (hypot.f32 (*.f32 ux (-.f32 1 maxCos)) (sqrt.f32 (fma.f32 ux (-.f32 1 maxCos) 1)))) (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (hypot.f32 (*.f32 ux (-.f32 1 maxCos)) (sqrt.f32 (fma.f32 ux (-.f32 1 maxCos) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) 2) 1) (/.f32 (cbrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sqrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) 1) (/.f32 (sqrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) 2) (pow.f32 (cbrt.f32 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)) 2)) (cbrt.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sqrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) (pow.f32 (cbrt.f32 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)) 2)) (/.f32 (sqrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) (cbrt.f32 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) 2) (hypot.f32 (*.f32 ux (-.f32 1 maxCos)) (sqrt.f32 (fma.f32 ux (-.f32 1 maxCos) 1)))) (/.f32 (cbrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) (hypot.f32 (*.f32 ux (-.f32 1 maxCos)) (sqrt.f32 (fma.f32 ux (-.f32 1 maxCos) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (+.f32 1 (pow.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1)) 3))) (+.f32 1 (*.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1)) (fma.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (-.f32 1 (pow.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1)) 2))) (-.f32 1 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1) (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (neg.f32 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (/.f32 (pow.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) 3) (pow.f32 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (-.f32 (log1p.f32 (neg.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) (log1p.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (-.f32 (log1p.f32 (neg.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) (log1p.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (/.f32 1 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)) (neg.f32 (/.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (cbrt.f32 (/.f32 1 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))) (cbrt.f32 (/.f32 1 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1)))) (cbrt.f32 (/.f32 1 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))) (neg.f32 (/.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (/.f32 1 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))) (sqrt.f32 (/.f32 1 (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))) (neg.f32 (/.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (/.f32 1 (+.f32 1 (pow.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1)) 3))) (+.f32 1 (*.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1)) (fma.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1) -1))) (neg.f32 (/.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (/.f32 1 (-.f32 1 (pow.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1)) 2))) (-.f32 1 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (fma.f32 ux (-.f32 1 maxCos) 1))) (neg.f32 (/.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3) (fma.f32 (fma.f32 ux (-.f32 1 maxCos) 1) (*.f32 ux (-.f32 1 maxCos)) 1))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 ux (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 ux (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 ux (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 ux (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (sqrt.f32 ux) (*.f32 ux (-.f32 1 maxCos))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (*.f32 (*.f32 ux ux) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 ux) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 ux (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 ux (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3) (pow.f32 (*.f32 ux (*.f32 ux (-.f32 1 maxCos))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (*.f32 ux (*.f32 ux (-.f32 1 maxCos))) 3) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 ux (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 ux (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 ux (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 ux (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 ux ux) (*.f32 (neg.f32 maxCos) (*.f32 ux ux)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 ux ux) (*.f32 (*.f32 ux ux) (neg.f32 maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 ux (*.f32 ux (-.f32 1 maxCos))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 1 (pow.f32 maxCos 3)) (*.f32 ux ux)) (+.f32 1 (fma.f32 maxCos maxCos maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 1 (*.f32 maxCos maxCos)) (*.f32 ux ux)) (+.f32 1 maxCos))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (*.f32 ux ux) (-.f32 1 (pow.f32 maxCos 3))) (+.f32 1 (fma.f32 maxCos maxCos maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (*.f32 ux ux) (-.f32 1 (*.f32 maxCos maxCos))) (+.f32 1 maxCos))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 ux (*.f32 ux (-.f32 1 maxCos))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 ux (*.f32 ux (-.f32 1 maxCos))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 ux (*.f32 ux (-.f32 1 maxCos)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 ux (sqrt.f32 (-.f32 1 maxCos))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (pow.f32 (exp.f32 ux) (-.f32 1 maxCos)) ux))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 ux (*.f32 ux (-.f32 1 maxCos))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 ux (*.f32 ux (-.f32 1 maxCos))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (-.f32 1 maxCos) 3) (pow.f32 (*.f32 ux ux) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3) (pow.f32 ux 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (*.f32 ux ux) 3) (pow.f32 (-.f32 1 maxCos) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 ux (*.f32 ux (-.f32 1 maxCos)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 ux (*.f32 ux (-.f32 1 maxCos)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 ux (*.f32 ux (-.f32 1 maxCos)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 ux (*.f32 ux (-.f32 1 maxCos)))) 1))))))

simplify94.0ms (1.6%)

Algorithm
egg-herbie
Rules
846×fma-def_binary32
571×distribute-rgt-in_binary32
531×distribute-lft-in_binary32
445×associate-*l*_binary32
244×associate-/l*_binary32
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01582410
15382039
221321930
Stop Event
node limit
Counts
151 → 126
Calls
Call 1
Inputs
1
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (+.f32 (*.f32 -1 (*.f32 (pow.f32 ux 2) (+.f32 (*.f32 (-.f32 maxCos 1) (-.f32 1 maxCos)) (pow.f32 (-.f32 1 maxCos) 2)))) (*.f32 (-.f32 maxCos 1) ux)))
(+.f32 1 (+.f32 (*.f32 (-.f32 (*.f32 -1 (pow.f32 (-.f32 1 maxCos) 3)) (+.f32 (*.f32 (-.f32 maxCos 1) (pow.f32 (-.f32 1 maxCos) 2)) (*.f32 -1 (*.f32 (-.f32 1 maxCos) (+.f32 (*.f32 (-.f32 1 maxCos) (-.f32 maxCos 1)) (pow.f32 (-.f32 1 maxCos) 2)))))) (pow.f32 ux 3)) (+.f32 (*.f32 -1 (*.f32 (pow.f32 ux 2) (+.f32 (*.f32 (-.f32 maxCos 1) (-.f32 1 maxCos)) (pow.f32 (-.f32 1 maxCos) 2)))) (*.f32 (-.f32 maxCos 1) ux))))
(*.f32 -1 (*.f32 (-.f32 1 maxCos) ux))
(+.f32 1 (*.f32 -1 (*.f32 (-.f32 1 maxCos) ux)))
(+.f32 1 (*.f32 -1 (*.f32 (-.f32 1 maxCos) ux)))
(+.f32 1 (*.f32 -1 (*.f32 (-.f32 1 maxCos) ux)))
(*.f32 -1 (*.f32 (-.f32 1 maxCos) ux))
(+.f32 1 (*.f32 -1 (*.f32 (-.f32 1 maxCos) ux)))
(+.f32 1 (*.f32 -1 (*.f32 (-.f32 1 maxCos) ux)))
(+.f32 1 (*.f32 -1 (*.f32 (-.f32 1 maxCos) ux)))
(/.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))
(-.f32 (+.f32 (*.f32 maxCos (-.f32 (*.f32 3 (/.f32 (pow.f32 ux 3) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2)))) (/.f32 1 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (/.f32 (pow.f32 ux 3) (+.f32 (pow.f32 ux 2) (+.f32 1 ux))))
(-.f32 (+.f32 (*.f32 (pow.f32 maxCos 2) (-.f32 (*.f32 -3 (/.f32 (pow.f32 ux 3) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (+.f32 (/.f32 (*.f32 (pow.f32 ux 2) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2)) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 (*.f32 3 (/.f32 (pow.f32 ux 3) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2)))) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))))) (+.f32 (*.f32 maxCos (-.f32 (*.f32 3 (/.f32 (pow.f32 ux 3) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2)))) (/.f32 1 (+.f32 (pow.f32 ux 2) (+.f32 1 ux))))) (/.f32 (pow.f32 ux 3) (+.f32 (pow.f32 ux 2) (+.f32 1 ux))))
(-.f32 (+.f32 (*.f32 (-.f32 (/.f32 (pow.f32 ux 3) (+.f32 (pow.f32 ux 2) (+.f32 1 ux))) (+.f32 (/.f32 (*.f32 (pow.f32 ux 2) (-.f32 (*.f32 3 (/.f32 (pow.f32 ux 3) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2)))) (+.f32 (pow.f32 ux 2) (+.f32 1 ux))) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 (*.f32 -3 (/.f32 (pow.f32 ux 3) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (+.f32 (/.f32 (*.f32 (pow.f32 ux 2) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2)) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 (*.f32 3 (/.f32 (pow.f32 ux 3) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2)))) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))))) (+.f32 (pow.f32 ux 2) (+.f32 1 ux))))) (pow.f32 maxCos 3)) (+.f32 (*.f32 (pow.f32 maxCos 2) (-.f32 (*.f32 -3 (/.f32 (pow.f32 ux 3) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (+.f32 (/.f32 (*.f32 (pow.f32 ux 2) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2)) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 (*.f32 3 (/.f32 (pow.f32 ux 3) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2)))) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))))) (+.f32 (*.f32 maxCos (-.f32 (*.f32 3 (/.f32 (pow.f32 ux 3) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2)))) (/.f32 1 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))))) (/.f32 (pow.f32 ux 3) (+.f32 (pow.f32 ux 2) (+.f32 1 ux))))
(*.f32 maxCos ux)
(-.f32 (+.f32 1 (+.f32 (*.f32 maxCos ux) (*.f32 -3 ux))) (*.f32 -2 ux))
(-.f32 (+.f32 1 (+.f32 (*.f32 3 (/.f32 ux maxCos)) (+.f32 (*.f32 maxCos ux) (*.f32 -3 ux)))) (+.f32 (/.f32 ux maxCos) (+.f32 (/.f32 1 (*.f32 maxCos ux)) (+.f32 (/.f32 1 maxCos) (+.f32 (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 (+.f32 1 (*.f32 -3 ux)) (*.f32 -2 ux))) (*.f32 maxCos (pow.f32 ux 2))) (*.f32 -2 ux))))))
(-.f32 (+.f32 1 (+.f32 (*.f32 3 (/.f32 ux maxCos)) (+.f32 (/.f32 1 (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))) (+.f32 (*.f32 maxCos ux) (*.f32 -3 ux))))) (+.f32 (/.f32 ux maxCos) (+.f32 (/.f32 (*.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) (-.f32 (+.f32 1 (*.f32 -3 ux)) (*.f32 -2 ux))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))) (+.f32 (/.f32 1 (*.f32 maxCos ux)) (+.f32 (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 (*.f32 3 ux) (+.f32 1 (+.f32 (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 (+.f32 1 (*.f32 -3 ux)) (*.f32 -2 ux))) (pow.f32 ux 2)) (+.f32 ux (/.f32 1 ux)))))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))) (+.f32 (/.f32 1 maxCos) (+.f32 (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 (+.f32 1 (*.f32 -3 ux)) (*.f32 -2 ux))) (*.f32 maxCos (pow.f32 ux 2))) (+.f32 (/.f32 ux (pow.f32 maxCos 2)) (*.f32 -2 ux)))))))))
(*.f32 maxCos ux)
(-.f32 (+.f32 (*.f32 maxCos ux) (*.f32 -3 ux)) (*.f32 -1 (/.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) ux)))
(-.f32 (+.f32 (*.f32 -1 (/.f32 (-.f32 (*.f32 -3 ux) (+.f32 (/.f32 (*.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) (-.f32 (*.f32 -3 ux) (*.f32 -1 (/.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) ux)))) (pow.f32 ux 2)) (*.f32 -1 (/.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) ux)))) maxCos)) (+.f32 (*.f32 maxCos ux) (*.f32 -3 ux))) (*.f32 -1 (/.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) ux)))
(-.f32 (+.f32 (*.f32 -1 (/.f32 (-.f32 (*.f32 -3 ux) (+.f32 (/.f32 (*.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) (-.f32 (*.f32 -3 ux) (*.f32 -1 (/.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) ux)))) (pow.f32 ux 2)) (*.f32 -1 (/.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) ux)))) maxCos)) (+.f32 (/.f32 1 (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))) (+.f32 (*.f32 maxCos ux) (*.f32 -3 ux)))) (+.f32 (/.f32 (*.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) (-.f32 (*.f32 -3 ux) (*.f32 -1 (/.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) ux)))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))) (+.f32 (/.f32 (*.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) (-.f32 (*.f32 -3 ux) (+.f32 (/.f32 (*.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) (-.f32 (*.f32 -3 ux) (*.f32 -1 (/.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) ux)))) (pow.f32 ux 2)) (*.f32 -1 (/.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) ux))))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))) (+.f32 (/.f32 ux (pow.f32 maxCos 2)) (*.f32 -1 (/.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) ux))))))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 3))
(pow.f32 ux 3)
(+.f32 (*.f32 -2 (*.f32 maxCos (pow.f32 ux 3))) (pow.f32 ux 3))
(+.f32 (*.f32 -2 (*.f32 maxCos (pow.f32 ux 3))) (+.f32 (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 3)) (pow.f32 ux 3)))
(+.f32 (*.f32 -2 (*.f32 maxCos (pow.f32 ux 3))) (+.f32 (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 3)) (pow.f32 ux 3)))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 3))
(+.f32 (*.f32 -2 (*.f32 maxCos (pow.f32 ux 3))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 3)))
(+.f32 (*.f32 -2 (*.f32 maxCos (pow.f32 ux 3))) (+.f32 (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 3)) (pow.f32 ux 3)))
(+.f32 (*.f32 -2 (*.f32 maxCos (pow.f32 ux 3))) (+.f32 (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 3)) (pow.f32 ux 3)))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 3))
(+.f32 (*.f32 -2 (*.f32 maxCos (pow.f32 ux 3))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 3)))
(+.f32 (*.f32 -2 (*.f32 maxCos (pow.f32 ux 3))) (+.f32 (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 3)) (pow.f32 ux 3)))
(+.f32 (*.f32 -2 (*.f32 maxCos (pow.f32 ux 3))) (+.f32 (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 3)) (pow.f32 ux 3)))
(pow.f32 ux 2)
(+.f32 (pow.f32 ux 2) (*.f32 -1 (*.f32 maxCos (pow.f32 ux 2))))
(+.f32 (pow.f32 ux 2) (*.f32 -1 (*.f32 maxCos (pow.f32 ux 2))))
(+.f32 (pow.f32 ux 2) (*.f32 -1 (*.f32 maxCos (pow.f32 ux 2))))
(*.f32 -1 (*.f32 maxCos (pow.f32 ux 2)))
(+.f32 (pow.f32 ux 2) (*.f32 -1 (*.f32 maxCos (pow.f32 ux 2))))
(+.f32 (pow.f32 ux 2) (*.f32 -1 (*.f32 maxCos (pow.f32 ux 2))))
(+.f32 (pow.f32 ux 2) (*.f32 -1 (*.f32 maxCos (pow.f32 ux 2))))
(*.f32 -1 (*.f32 maxCos (pow.f32 ux 2)))
(+.f32 (pow.f32 ux 2) (*.f32 -1 (*.f32 maxCos (pow.f32 ux 2))))
(+.f32 (pow.f32 ux 2) (*.f32 -1 (*.f32 maxCos (pow.f32 ux 2))))
(+.f32 (pow.f32 ux 2) (*.f32 -1 (*.f32 maxCos (pow.f32 ux 2))))
(*.f32 (-.f32 1 maxCos) (pow.f32 ux 2))
(*.f32 (-.f32 1 maxCos) (pow.f32 ux 2))
(*.f32 (-.f32 1 maxCos) (pow.f32 ux 2))
(*.f32 (-.f32 1 maxCos) (pow.f32 ux 2))
(*.f32 (-.f32 1 maxCos) (pow.f32 ux 2))
(*.f32 (-.f32 1 maxCos) (pow.f32 ux 2))
(*.f32 (-.f32 1 maxCos) (pow.f32 ux 2))
(*.f32 (-.f32 1 maxCos) (pow.f32 ux 2))
(*.f32 (-.f32 1 maxCos) (pow.f32 ux 2))
(*.f32 (-.f32 1 maxCos) (pow.f32 ux 2))
(*.f32 (-.f32 1 maxCos) (pow.f32 ux 2))
(*.f32 (-.f32 1 maxCos) (pow.f32 ux 2))
Outputs
1
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(fma.f32 ux (+.f32 maxCos -1) 1)
(+.f32 1 (+.f32 (*.f32 -1 (*.f32 (pow.f32 ux 2) (+.f32 (*.f32 (-.f32 maxCos 1) (-.f32 1 maxCos)) (pow.f32 (-.f32 1 maxCos) 2)))) (*.f32 (-.f32 maxCos 1) ux)))
(+.f32 1 (fma.f32 -1 (*.f32 (*.f32 ux ux) (fma.f32 (+.f32 maxCos -1) (-.f32 1 maxCos) (pow.f32 (-.f32 1 maxCos) 2))) (*.f32 (+.f32 maxCos -1) ux)))
(+.f32 1 (-.f32 (*.f32 (+.f32 maxCos -1) ux) (*.f32 (*.f32 ux ux) (*.f32 (-.f32 1 maxCos) (+.f32 (-.f32 1 maxCos) (+.f32 maxCos -1))))))
(fma.f32 (*.f32 ux ux) (*.f32 (+.f32 maxCos -1) (+.f32 (-.f32 1 maxCos) (+.f32 maxCos -1))) (fma.f32 ux (+.f32 maxCos -1) 1))
(+.f32 1 (+.f32 (*.f32 (-.f32 (*.f32 -1 (pow.f32 (-.f32 1 maxCos) 3)) (+.f32 (*.f32 (-.f32 maxCos 1) (pow.f32 (-.f32 1 maxCos) 2)) (*.f32 -1 (*.f32 (-.f32 1 maxCos) (+.f32 (*.f32 (-.f32 1 maxCos) (-.f32 maxCos 1)) (pow.f32 (-.f32 1 maxCos) 2)))))) (pow.f32 ux 3)) (+.f32 (*.f32 -1 (*.f32 (pow.f32 ux 2) (+.f32 (*.f32 (-.f32 maxCos 1) (-.f32 1 maxCos)) (pow.f32 (-.f32 1 maxCos) 2)))) (*.f32 (-.f32 maxCos 1) ux))))
(+.f32 1 (fma.f32 (-.f32 (neg.f32 (pow.f32 (-.f32 1 maxCos) 3)) (fma.f32 (+.f32 maxCos -1) (pow.f32 (-.f32 1 maxCos) 2) (neg.f32 (*.f32 (-.f32 1 maxCos) (fma.f32 (+.f32 maxCos -1) (-.f32 1 maxCos) (pow.f32 (-.f32 1 maxCos) 2)))))) (pow.f32 ux 3) (fma.f32 -1 (*.f32 (*.f32 ux ux) (fma.f32 (+.f32 maxCos -1) (-.f32 1 maxCos) (pow.f32 (-.f32 1 maxCos) 2))) (*.f32 (+.f32 maxCos -1) ux))))
(+.f32 (fma.f32 (-.f32 (neg.f32 (pow.f32 (-.f32 1 maxCos) 3)) (-.f32 (*.f32 (+.f32 maxCos -1) (pow.f32 (-.f32 1 maxCos) 2)) (*.f32 (-.f32 1 maxCos) (*.f32 (-.f32 1 maxCos) (+.f32 (-.f32 1 maxCos) (+.f32 maxCos -1)))))) (pow.f32 ux 3) (*.f32 (*.f32 ux ux) (neg.f32 (*.f32 (-.f32 1 maxCos) (+.f32 (-.f32 1 maxCos) (+.f32 maxCos -1)))))) (fma.f32 (+.f32 maxCos -1) ux 1))
(fma.f32 (+.f32 (-.f32 (pow.f32 (-.f32 1 maxCos) 3) (pow.f32 (-.f32 1 maxCos) 3)) (-.f32 (pow.f32 (-.f32 1 maxCos) 3) (pow.f32 (-.f32 1 maxCos) 3))) (pow.f32 ux 3) (fma.f32 (*.f32 ux ux) (*.f32 (+.f32 maxCos -1) (+.f32 (-.f32 1 maxCos) (+.f32 maxCos -1))) (fma.f32 ux (+.f32 maxCos -1) 1)))
(*.f32 -1 (*.f32 (-.f32 1 maxCos) ux))
(neg.f32 (*.f32 ux (-.f32 1 maxCos)))
(*.f32 (-.f32 1 maxCos) (neg.f32 ux))
(*.f32 ux (+.f32 maxCos -1))
(+.f32 1 (*.f32 -1 (*.f32 (-.f32 1 maxCos) ux)))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(fma.f32 ux (+.f32 maxCos -1) 1)
(+.f32 1 (*.f32 -1 (*.f32 (-.f32 1 maxCos) ux)))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(fma.f32 ux (+.f32 maxCos -1) 1)
(+.f32 1 (*.f32 -1 (*.f32 (-.f32 1 maxCos) ux)))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(fma.f32 ux (+.f32 maxCos -1) 1)
(*.f32 -1 (*.f32 (-.f32 1 maxCos) ux))
(neg.f32 (*.f32 ux (-.f32 1 maxCos)))
(*.f32 (-.f32 1 maxCos) (neg.f32 ux))
(*.f32 ux (+.f32 maxCos -1))
(+.f32 1 (*.f32 -1 (*.f32 (-.f32 1 maxCos) ux)))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(fma.f32 ux (+.f32 maxCos -1) 1)
(+.f32 1 (*.f32 -1 (*.f32 (-.f32 1 maxCos) ux)))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(fma.f32 ux (+.f32 maxCos -1) 1)
(+.f32 1 (*.f32 -1 (*.f32 (-.f32 1 maxCos) ux)))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(fma.f32 ux (+.f32 maxCos -1) 1)
(/.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))
(/.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 (*.f32 ux ux) (+.f32 1 ux)))
(/.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 ux (fma.f32 ux ux 1)))
(/.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 1 (fma.f32 ux ux ux)))
(-.f32 (+.f32 (*.f32 maxCos (-.f32 (*.f32 3 (/.f32 (pow.f32 ux 3) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2)))) (/.f32 1 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (/.f32 (pow.f32 ux 3) (+.f32 (pow.f32 ux 2) (+.f32 1 ux))))
(+.f32 (*.f32 maxCos (-.f32 (*.f32 3 (/.f32 (pow.f32 ux 3) (+.f32 (*.f32 ux ux) (+.f32 1 ux)))) (/.f32 (fma.f32 -1 ux (*.f32 (*.f32 ux ux) -2)) (/.f32 (pow.f32 (+.f32 (*.f32 ux ux) (+.f32 1 ux)) 2) (-.f32 1 (pow.f32 ux 3)))))) (/.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 (*.f32 ux ux) (+.f32 1 ux))))
(fma.f32 maxCos (-.f32 (*.f32 3 (/.f32 (pow.f32 ux 3) (+.f32 ux (fma.f32 ux ux 1)))) (*.f32 (/.f32 (-.f32 (*.f32 ux (*.f32 ux -2)) ux) (pow.f32 (+.f32 ux (fma.f32 ux ux 1)) 2)) (-.f32 1 (pow.f32 ux 3)))) (/.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 ux (fma.f32 ux ux 1))))
(fma.f32 maxCos (fma.f32 3 (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux))) (*.f32 (/.f32 (fma.f32 ux (*.f32 ux 2) ux) (pow.f32 (+.f32 1 (fma.f32 ux ux ux)) 2)) (-.f32 1 (pow.f32 ux 3)))) (/.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 1 (fma.f32 ux ux ux))))
(-.f32 (+.f32 (*.f32 (pow.f32 maxCos 2) (-.f32 (*.f32 -3 (/.f32 (pow.f32 ux 3) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (+.f32 (/.f32 (*.f32 (pow.f32 ux 2) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2)) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 (*.f32 3 (/.f32 (pow.f32 ux 3) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2)))) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))))) (+.f32 (*.f32 maxCos (-.f32 (*.f32 3 (/.f32 (pow.f32 ux 3) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2)))) (/.f32 1 (+.f32 (pow.f32 ux 2) (+.f32 1 ux))))) (/.f32 (pow.f32 ux 3) (+.f32 (pow.f32 ux 2) (+.f32 1 ux))))
(+.f32 (*.f32 (*.f32 maxCos maxCos) (-.f32 (*.f32 (/.f32 (pow.f32 ux 3) (+.f32 (*.f32 ux ux) (+.f32 1 ux))) -3) (+.f32 (/.f32 (*.f32 (*.f32 ux ux) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (*.f32 ux ux) (+.f32 1 ux)) 2)) (/.f32 (fma.f32 -1 ux (*.f32 (*.f32 ux ux) -2)) (/.f32 (+.f32 (*.f32 ux ux) (+.f32 1 ux)) (-.f32 (*.f32 3 (/.f32 (pow.f32 ux 3) (+.f32 (*.f32 ux ux) (+.f32 1 ux)))) (/.f32 (fma.f32 -1 ux (*.f32 (*.f32 ux ux) -2)) (/.f32 (pow.f32 (+.f32 (*.f32 ux ux) (+.f32 1 ux)) 2) (-.f32 1 (pow.f32 ux 3)))))))))) (+.f32 (*.f32 maxCos (-.f32 (*.f32 3 (/.f32 (pow.f32 ux 3) (+.f32 (*.f32 ux ux) (+.f32 1 ux)))) (/.f32 (fma.f32 -1 ux (*.f32 (*.f32 ux ux) -2)) (/.f32 (pow.f32 (+.f32 (*.f32 ux ux) (+.f32 1 ux)) 2) (-.f32 1 (pow.f32 ux 3)))))) (/.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 (*.f32 ux ux) (+.f32 1 ux)))))
(fma.f32 (*.f32 maxCos maxCos) (-.f32 (-.f32 (*.f32 (/.f32 (pow.f32 ux 3) (+.f32 ux (fma.f32 ux ux 1))) -3) (*.f32 (/.f32 (*.f32 ux ux) (pow.f32 (+.f32 ux (fma.f32 ux ux 1)) 2)) (-.f32 1 (pow.f32 ux 3)))) (*.f32 (/.f32 (-.f32 (*.f32 ux (*.f32 ux -2)) ux) (+.f32 ux (fma.f32 ux ux 1))) (-.f32 (*.f32 3 (/.f32 (pow.f32 ux 3) (+.f32 ux (fma.f32 ux ux 1)))) (*.f32 (/.f32 (-.f32 (*.f32 ux (*.f32 ux -2)) ux) (pow.f32 (+.f32 ux (fma.f32 ux ux 1)) 2)) (-.f32 1 (pow.f32 ux 3)))))) (fma.f32 maxCos (-.f32 (*.f32 3 (/.f32 (pow.f32 ux 3) (+.f32 ux (fma.f32 ux ux 1)))) (*.f32 (/.f32 (-.f32 (*.f32 ux (*.f32 ux -2)) ux) (pow.f32 (+.f32 ux (fma.f32 ux ux 1)) 2)) (-.f32 1 (pow.f32 ux 3)))) (/.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 ux (fma.f32 ux ux 1)))))
(fma.f32 maxCos (*.f32 maxCos (-.f32 (fma.f32 (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux))) -3 (/.f32 (fma.f32 ux (*.f32 ux 2) ux) (/.f32 (+.f32 1 (fma.f32 ux ux ux)) (fma.f32 3 (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux))) (*.f32 (/.f32 (fma.f32 ux (*.f32 ux 2) ux) (pow.f32 (+.f32 1 (fma.f32 ux ux ux)) 2)) (-.f32 1 (pow.f32 ux 3))))))) (*.f32 (/.f32 (-.f32 1 (pow.f32 ux 3)) (pow.f32 (+.f32 1 (fma.f32 ux ux ux)) 2)) (*.f32 ux ux)))) (fma.f32 maxCos (fma.f32 3 (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux))) (*.f32 (/.f32 (fma.f32 ux (*.f32 ux 2) ux) (pow.f32 (+.f32 1 (fma.f32 ux ux ux)) 2)) (-.f32 1 (pow.f32 ux 3)))) (/.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 1 (fma.f32 ux ux ux)))))
(-.f32 (+.f32 (*.f32 (-.f32 (/.f32 (pow.f32 ux 3) (+.f32 (pow.f32 ux 2) (+.f32 1 ux))) (+.f32 (/.f32 (*.f32 (pow.f32 ux 2) (-.f32 (*.f32 3 (/.f32 (pow.f32 ux 3) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2)))) (+.f32 (pow.f32 ux 2) (+.f32 1 ux))) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 (*.f32 -3 (/.f32 (pow.f32 ux 3) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (+.f32 (/.f32 (*.f32 (pow.f32 ux 2) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2)) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 (*.f32 3 (/.f32 (pow.f32 ux 3) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2)))) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))))) (+.f32 (pow.f32 ux 2) (+.f32 1 ux))))) (pow.f32 maxCos 3)) (+.f32 (*.f32 (pow.f32 maxCos 2) (-.f32 (*.f32 -3 (/.f32 (pow.f32 ux 3) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (+.f32 (/.f32 (*.f32 (pow.f32 ux 2) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2)) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 (*.f32 3 (/.f32 (pow.f32 ux 3) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2)))) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))))) (+.f32 (*.f32 maxCos (-.f32 (*.f32 3 (/.f32 (pow.f32 ux 3) (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))) (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) 2)))) (/.f32 1 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)))))) (/.f32 (pow.f32 ux 3) (+.f32 (pow.f32 ux 2) (+.f32 1 ux))))
(+.f32 (*.f32 (-.f32 (/.f32 (pow.f32 ux 3) (+.f32 (*.f32 ux ux) (+.f32 1 ux))) (+.f32 (/.f32 (*.f32 ux ux) (/.f32 (+.f32 (*.f32 ux ux) (+.f32 1 ux)) (-.f32 (*.f32 3 (/.f32 (pow.f32 ux 3) (+.f32 (*.f32 ux ux) (+.f32 1 ux)))) (/.f32 (fma.f32 -1 ux (*.f32 (*.f32 ux ux) -2)) (/.f32 (pow.f32 (+.f32 (*.f32 ux ux) (+.f32 1 ux)) 2) (-.f32 1 (pow.f32 ux 3))))))) (/.f32 (fma.f32 -1 ux (*.f32 (*.f32 ux ux) -2)) (/.f32 (+.f32 (*.f32 ux ux) (+.f32 1 ux)) (-.f32 (*.f32 (/.f32 (pow.f32 ux 3) (+.f32 (*.f32 ux ux) (+.f32 1 ux))) -3) (+.f32 (/.f32 (*.f32 (*.f32 ux ux) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (*.f32 ux ux) (+.f32 1 ux)) 2)) (/.f32 (fma.f32 -1 ux (*.f32 (*.f32 ux ux) -2)) (/.f32 (+.f32 (*.f32 ux ux) (+.f32 1 ux)) (-.f32 (*.f32 3 (/.f32 (pow.f32 ux 3) (+.f32 (*.f32 ux ux) (+.f32 1 ux)))) (/.f32 (fma.f32 -1 ux (*.f32 (*.f32 ux ux) -2)) (/.f32 (pow.f32 (+.f32 (*.f32 ux ux) (+.f32 1 ux)) 2) (-.f32 1 (pow.f32 ux 3))))))))))))) (pow.f32 maxCos 3)) (+.f32 (*.f32 (*.f32 maxCos maxCos) (-.f32 (*.f32 (/.f32 (pow.f32 ux 3) (+.f32 (*.f32 ux ux) (+.f32 1 ux))) -3) (+.f32 (/.f32 (*.f32 (*.f32 ux ux) (-.f32 1 (pow.f32 ux 3))) (pow.f32 (+.f32 (*.f32 ux ux) (+.f32 1 ux)) 2)) (/.f32 (fma.f32 -1 ux (*.f32 (*.f32 ux ux) -2)) (/.f32 (+.f32 (*.f32 ux ux) (+.f32 1 ux)) (-.f32 (*.f32 3 (/.f32 (pow.f32 ux 3) (+.f32 (*.f32 ux ux) (+.f32 1 ux)))) (/.f32 (fma.f32 -1 ux (*.f32 (*.f32 ux ux) -2)) (/.f32 (pow.f32 (+.f32 (*.f32 ux ux) (+.f32 1 ux)) 2) (-.f32 1 (pow.f32 ux 3)))))))))) (+.f32 (*.f32 maxCos (-.f32 (*.f32 3 (/.f32 (pow.f32 ux 3) (+.f32 (*.f32 ux ux) (+.f32 1 ux)))) (/.f32 (fma.f32 -1 ux (*.f32 (*.f32 ux ux) -2)) (/.f32 (pow.f32 (+.f32 (*.f32 ux ux) (+.f32 1 ux)) 2) (-.f32 1 (pow.f32 ux 3)))))) (/.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 (*.f32 ux ux) (+.f32 1 ux))))))
(fma.f32 (-.f32 (-.f32 (/.f32 (pow.f32 ux 3) (+.f32 ux (fma.f32 ux ux 1))) (*.f32 (/.f32 (*.f32 ux ux) (+.f32 ux (fma.f32 ux ux 1))) (-.f32 (*.f32 3 (/.f32 (pow.f32 ux 3) (+.f32 ux (fma.f32 ux ux 1)))) (*.f32 (/.f32 (-.f32 (*.f32 ux (*.f32 ux -2)) ux) (pow.f32 (+.f32 ux (fma.f32 ux ux 1)) 2)) (-.f32 1 (pow.f32 ux 3)))))) (*.f32 (/.f32 (-.f32 (*.f32 ux (*.f32 ux -2)) ux) (+.f32 ux (fma.f32 ux ux 1))) (-.f32 (-.f32 (*.f32 (/.f32 (pow.f32 ux 3) (+.f32 ux (fma.f32 ux ux 1))) -3) (*.f32 (/.f32 (*.f32 ux ux) (pow.f32 (+.f32 ux (fma.f32 ux ux 1)) 2)) (-.f32 1 (pow.f32 ux 3)))) (*.f32 (/.f32 (-.f32 (*.f32 ux (*.f32 ux -2)) ux) (+.f32 ux (fma.f32 ux ux 1))) (-.f32 (*.f32 3 (/.f32 (pow.f32 ux 3) (+.f32 ux (fma.f32 ux ux 1)))) (*.f32 (/.f32 (-.f32 (*.f32 ux (*.f32 ux -2)) ux) (pow.f32 (+.f32 ux (fma.f32 ux ux 1)) 2)) (-.f32 1 (pow.f32 ux 3)))))))) (pow.f32 maxCos 3) (fma.f32 (*.f32 maxCos maxCos) (-.f32 (-.f32 (*.f32 (/.f32 (pow.f32 ux 3) (+.f32 ux (fma.f32 ux ux 1))) -3) (*.f32 (/.f32 (*.f32 ux ux) (pow.f32 (+.f32 ux (fma.f32 ux ux 1)) 2)) (-.f32 1 (pow.f32 ux 3)))) (*.f32 (/.f32 (-.f32 (*.f32 ux (*.f32 ux -2)) ux) (+.f32 ux (fma.f32 ux ux 1))) (-.f32 (*.f32 3 (/.f32 (pow.f32 ux 3) (+.f32 ux (fma.f32 ux ux 1)))) (*.f32 (/.f32 (-.f32 (*.f32 ux (*.f32 ux -2)) ux) (pow.f32 (+.f32 ux (fma.f32 ux ux 1)) 2)) (-.f32 1 (pow.f32 ux 3)))))) (fma.f32 maxCos (-.f32 (*.f32 3 (/.f32 (pow.f32 ux 3) (+.f32 ux (fma.f32 ux ux 1)))) (*.f32 (/.f32 (-.f32 (*.f32 ux (*.f32 ux -2)) ux) (pow.f32 (+.f32 ux (fma.f32 ux ux 1)) 2)) (-.f32 1 (pow.f32 ux 3)))) (/.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 ux (fma.f32 ux ux 1))))))
(fma.f32 (+.f32 (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux))) (-.f32 (/.f32 (fma.f32 ux (*.f32 ux 2) ux) (/.f32 (+.f32 1 (fma.f32 ux ux ux)) (-.f32 (fma.f32 (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux))) -3 (/.f32 (fma.f32 ux (*.f32 ux 2) ux) (/.f32 (+.f32 1 (fma.f32 ux ux ux)) (fma.f32 3 (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux))) (*.f32 (/.f32 (fma.f32 ux (*.f32 ux 2) ux) (pow.f32 (+.f32 1 (fma.f32 ux ux ux)) 2)) (-.f32 1 (pow.f32 ux 3))))))) (*.f32 (/.f32 (-.f32 1 (pow.f32 ux 3)) (pow.f32 (+.f32 1 (fma.f32 ux ux ux)) 2)) (*.f32 ux ux))))) (*.f32 (/.f32 ux (/.f32 (+.f32 1 (fma.f32 ux ux ux)) ux)) (fma.f32 3 (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux))) (*.f32 (/.f32 (fma.f32 ux (*.f32 ux 2) ux) (pow.f32 (+.f32 1 (fma.f32 ux ux ux)) 2)) (-.f32 1 (pow.f32 ux 3))))))) (pow.f32 maxCos 3) (fma.f32 maxCos (*.f32 maxCos (-.f32 (fma.f32 (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux))) -3 (/.f32 (fma.f32 ux (*.f32 ux 2) ux) (/.f32 (+.f32 1 (fma.f32 ux ux ux)) (fma.f32 3 (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux))) (*.f32 (/.f32 (fma.f32 ux (*.f32 ux 2) ux) (pow.f32 (+.f32 1 (fma.f32 ux ux ux)) 2)) (-.f32 1 (pow.f32 ux 3))))))) (*.f32 (/.f32 (-.f32 1 (pow.f32 ux 3)) (pow.f32 (+.f32 1 (fma.f32 ux ux ux)) 2)) (*.f32 ux ux)))) (fma.f32 maxCos (fma.f32 3 (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux))) (*.f32 (/.f32 (fma.f32 ux (*.f32 ux 2) ux) (pow.f32 (+.f32 1 (fma.f32 ux ux ux)) 2)) (-.f32 1 (pow.f32 ux 3)))) (/.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 1 (fma.f32 ux ux ux))))))
(*.f32 maxCos ux)
(-.f32 (+.f32 1 (+.f32 (*.f32 maxCos ux) (*.f32 -3 ux))) (*.f32 -2 ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(fma.f32 ux (+.f32 maxCos -1) 1)
(-.f32 (+.f32 1 (+.f32 (*.f32 3 (/.f32 ux maxCos)) (+.f32 (*.f32 maxCos ux) (*.f32 -3 ux)))) (+.f32 (/.f32 ux maxCos) (+.f32 (/.f32 1 (*.f32 maxCos ux)) (+.f32 (/.f32 1 maxCos) (+.f32 (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 (+.f32 1 (*.f32 -3 ux)) (*.f32 -2 ux))) (*.f32 maxCos (pow.f32 ux 2))) (*.f32 -2 ux))))))
(+.f32 1 (-.f32 (fma.f32 3 (/.f32 ux maxCos) (*.f32 ux (+.f32 maxCos -3))) (+.f32 (/.f32 ux maxCos) (+.f32 (/.f32 1 (*.f32 maxCos ux)) (+.f32 (/.f32 1 maxCos) (+.f32 (*.f32 ux -2) (*.f32 (/.f32 (fma.f32 -1 ux (*.f32 (*.f32 ux ux) -2)) maxCos) (/.f32 (+.f32 1 (-.f32 (*.f32 ux -3) (*.f32 ux -2))) (*.f32 ux ux)))))))))
(+.f32 1 (-.f32 (-.f32 (fma.f32 ux (+.f32 maxCos -3) (/.f32 3 (/.f32 maxCos ux))) (/.f32 ux maxCos)) (+.f32 (fma.f32 ux -2 (/.f32 (-.f32 (*.f32 ux (*.f32 ux -2)) ux) (/.f32 (*.f32 ux ux) (/.f32 (+.f32 1 (neg.f32 ux)) maxCos)))) (+.f32 (/.f32 1 (*.f32 maxCos ux)) (/.f32 1 maxCos)))))
(-.f32 (fma.f32 ux (+.f32 maxCos -3) (fma.f32 3 (/.f32 ux maxCos) 1)) (+.f32 (/.f32 (/.f32 1 maxCos) ux) (+.f32 (fma.f32 (/.f32 (-.f32 1 ux) (*.f32 ux ux)) (/.f32 (-.f32 (*.f32 ux (*.f32 ux -2)) ux) maxCos) (fma.f32 ux -2 (/.f32 1 maxCos))) (/.f32 ux maxCos))))
(-.f32 (+.f32 1 (+.f32 (*.f32 3 (/.f32 ux maxCos)) (+.f32 (/.f32 1 (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))) (+.f32 (*.f32 maxCos ux) (*.f32 -3 ux))))) (+.f32 (/.f32 ux maxCos) (+.f32 (/.f32 (*.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) (-.f32 (+.f32 1 (*.f32 -3 ux)) (*.f32 -2 ux))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))) (+.f32 (/.f32 1 (*.f32 maxCos ux)) (+.f32 (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 (*.f32 3 ux) (+.f32 1 (+.f32 (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 (+.f32 1 (*.f32 -3 ux)) (*.f32 -2 ux))) (pow.f32 ux 2)) (+.f32 ux (/.f32 1 ux)))))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))) (+.f32 (/.f32 1 maxCos) (+.f32 (/.f32 (*.f32 (+.f32 (*.f32 -1 ux) (*.f32 -2 (pow.f32 ux 2))) (-.f32 (+.f32 1 (*.f32 -3 ux)) (*.f32 -2 ux))) (*.f32 maxCos (pow.f32 ux 2))) (+.f32 (/.f32 ux (pow.f32 maxCos 2)) (*.f32 -2 ux)))))))))
(-.f32 (+.f32 1 (fma.f32 3 (/.f32 ux maxCos) (+.f32 (*.f32 ux (+.f32 maxCos -3)) (/.f32 1 (*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos)))))) (+.f32 (/.f32 ux maxCos) (+.f32 (*.f32 (/.f32 (+.f32 (*.f32 ux ux) (+.f32 1 ux)) (*.f32 maxCos maxCos)) (/.f32 (+.f32 1 (-.f32 (*.f32 ux -3) (*.f32 ux -2))) (*.f32 ux ux))) (+.f32 (/.f32 1 (*.f32 maxCos ux)) (+.f32 (*.f32 (/.f32 (fma.f32 -1 ux (*.f32 (*.f32 ux ux) -2)) (*.f32 maxCos maxCos)) (/.f32 (-.f32 (*.f32 ux 3) (+.f32 1 (+.f32 (/.f32 (fma.f32 -1 ux (*.f32 (*.f32 ux ux) -2)) (/.f32 (*.f32 ux ux) (+.f32 1 (-.f32 (*.f32 ux -3) (*.f32 ux -2))))) (+.f32 ux (/.f32 1 ux))))) (*.f32 ux ux))) (+.f32 (/.f32 1 maxCos) (+.f32 (*.f32 (/.f32 (fma.f32 -1 ux (*.f32 (*.f32 ux ux) -2)) maxCos) (/.f32 (+.f32 1 (-.f32 (*.f32 ux -3) (*.f32 ux -2))) (*.f32 ux ux))) (+.f32 (*.f32 ux -2) (/.f32 ux (*.f32 maxCos maxCos))))))))))
(-.f32 (+.f32 1 (-.f32 (fma.f32 3 (/.f32 ux maxCos) (fma.f32 ux (+.f32 maxCos -3) (/.f32 (/.f32 1 (*.f32 ux ux)) (*.f32 maxCos maxCos)))) (/.f32 ux maxCos))) (+.f32 (+.f32 (fma.f32 (/.f32 (-.f32 (*.f32 ux (*.f32 ux -2)) ux) maxCos) (/.f32 (+.f32 1 (neg.f32 ux)) (*.f32 ux ux)) (fma.f32 ux -2 (/.f32 ux (*.f32 maxCos maxCos)))) (fma.f32 (/.f32 (-.f32 (*.f32 ux (*.f32 ux -2)) ux) (*.f32 maxCos maxCos)) (/.f32 (-.f32 (-.f32 (fma.f32 ux 3 -1) (/.f32 (-.f32 (*.f32 ux (*.f32 ux -2)) ux) (/.f32 ux (/.f32 (+.f32 1 (neg.f32 ux)) ux)))) (+.f32 ux (/.f32 1 ux))) (*.f32 ux ux)) (/.f32 1 maxCos))) (fma.f32 (/.f32 (+.f32 ux (fma.f32 ux ux 1)) (*.f32 maxCos maxCos)) (/.f32 (+.f32 1 (neg.f32 ux)) (*.f32 ux ux)) (/.f32 1 (*.f32 maxCos ux)))))
(-.f32 (+.f32 1 (-.f32 (fma.f32 ux (+.f32 maxCos -3) (fma.f32 3 (/.f32 ux maxCos) (/.f32 1 (*.f32 ux (*.f32 ux (*.f32 maxCos maxCos)))))) (/.f32 ux maxCos))) (+.f32 (+.f32 (fma.f32 ux -2 (fma.f32 (/.f32 (-.f32 1 ux) (*.f32 ux ux)) (/.f32 (-.f32 (*.f32 ux (*.f32 ux -2)) ux) maxCos) (/.f32 ux (*.f32 maxCos maxCos)))) (fma.f32 (/.f32 (-.f32 (*.f32 ux (*.f32 ux -2)) ux) (*.f32 ux (*.f32 ux (*.f32 maxCos maxCos)))) (+.f32 (-.f32 (fma.f32 ux 3 -1) (+.f32 ux (/.f32 1 ux))) (*.f32 (/.f32 (fma.f32 ux (*.f32 ux 2) ux) ux) (/.f32 (-.f32 1 ux) ux))) (/.f32 1 maxCos))) (fma.f32 (/.f32 (+.f32 1 (fma.f32 ux ux ux)) (*.f32 maxCos maxCos)) (/.f32 (-.f32 1 ux) (*.f32 ux ux)) (/.f32 (/.f32 1 maxCos) ux))))
(*.f32 maxCos ux)
(-.f32 (+.f32 (*.f32 maxCos ux) (*.f32 -3 ux)) (*.f32 -1 (/.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) ux)))
(-.f32 (*.f32 ux (+.f32 maxCos -3)) (neg.f32 (/.f32 (+.f32 ux (*.f32 2 (*.f32 ux ux))) ux)))
(fma.f32 ux (+.f32 maxCos -3) (/.f32 (fma.f32 2 (*.f32 ux ux) ux) ux))
(fma.f32 ux (+.f32 maxCos -3) (/.f32 (fma.f32 ux (*.f32 ux 2) ux) ux))
(-.f32 (+.f32 (*.f32 -1 (/.f32 (-.f32 (*.f32 -3 ux) (+.f32 (/.f32 (*.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) (-.f32 (*.f32 -3 ux) (*.f32 -1 (/.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) ux)))) (pow.f32 ux 2)) (*.f32 -1 (/.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) ux)))) maxCos)) (+.f32 (*.f32 maxCos ux) (*.f32 -3 ux))) (*.f32 -1 (/.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) ux)))
(-.f32 (fma.f32 -1 (/.f32 (-.f32 (-.f32 (*.f32 ux -3) (/.f32 (+.f32 ux (*.f32 2 (*.f32 ux ux))) (/.f32 (*.f32 ux ux) (-.f32 (*.f32 ux -3) (neg.f32 (/.f32 (+.f32 ux (*.f32 2 (*.f32 ux ux))) ux)))))) (neg.f32 (/.f32 (+.f32 (*.f32 ux ux) (+.f32 1 ux)) ux))) maxCos) (*.f32 ux (+.f32 maxCos -3))) (neg.f32 (/.f32 (+.f32 ux (*.f32 2 (*.f32 ux ux))) ux)))
(fma.f32 -1 (/.f32 (-.f32 (*.f32 ux -3) (-.f32 (*.f32 (/.f32 (fma.f32 2 (*.f32 ux ux) ux) (*.f32 ux ux)) (fma.f32 ux -3 (/.f32 (fma.f32 2 (*.f32 ux ux) ux) ux))) (/.f32 (+.f32 ux (fma.f32 ux ux 1)) ux))) maxCos) (fma.f32 ux (+.f32 maxCos -3) (/.f32 (fma.f32 2 (*.f32 ux ux) ux) ux)))
(-.f32 (fma.f32 ux (+.f32 maxCos -3) (/.f32 (fma.f32 ux (*.f32 ux 2) ux) ux)) (/.f32 (-.f32 (fma.f32 ux -3 (/.f32 (+.f32 1 (fma.f32 ux ux ux)) ux)) (*.f32 (/.f32 (fma.f32 ux (*.f32 ux 2) ux) ux) (/.f32 (fma.f32 ux -3 (/.f32 (fma.f32 ux (*.f32 ux 2) ux) ux)) ux))) maxCos))
(-.f32 (+.f32 (*.f32 -1 (/.f32 (-.f32 (*.f32 -3 ux) (+.f32 (/.f32 (*.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) (-.f32 (*.f32 -3 ux) (*.f32 -1 (/.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) ux)))) (pow.f32 ux 2)) (*.f32 -1 (/.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) ux)))) maxCos)) (+.f32 (/.f32 1 (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))) (+.f32 (*.f32 maxCos ux) (*.f32 -3 ux)))) (+.f32 (/.f32 (*.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) (-.f32 (*.f32 -3 ux) (*.f32 -1 (/.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) ux)))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))) (+.f32 (/.f32 (*.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) (-.f32 (*.f32 -3 ux) (+.f32 (/.f32 (*.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) (-.f32 (*.f32 -3 ux) (*.f32 -1 (/.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) ux)))) (pow.f32 ux 2)) (*.f32 -1 (/.f32 (+.f32 (pow.f32 ux 2) (+.f32 1 ux)) ux))))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2))) (+.f32 (/.f32 ux (pow.f32 maxCos 2)) (*.f32 -1 (/.f32 (+.f32 ux (*.f32 2 (pow.f32 ux 2))) ux))))))
(-.f32 (fma.f32 -1 (/.f32 (-.f32 (-.f32 (*.f32 ux -3) (/.f32 (+.f32 ux (*.f32 2 (*.f32 ux ux))) (/.f32 (*.f32 ux ux) (-.f32 (*.f32 ux -3) (neg.f32 (/.f32 (+.f32 ux (*.f32 2 (*.f32 ux ux))) ux)))))) (neg.f32 (/.f32 (+.f32 (*.f32 ux ux) (+.f32 1 ux)) ux))) maxCos) (+.f32 (*.f32 ux (+.f32 maxCos -3)) (/.f32 1 (*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))))) (+.f32 (*.f32 (/.f32 (+.f32 (*.f32 ux ux) (+.f32 1 ux)) (*.f32 maxCos maxCos)) (/.f32 (-.f32 (*.f32 ux -3) (neg.f32 (/.f32 (+.f32 ux (*.f32 2 (*.f32 ux ux))) ux))) (*.f32 ux ux))) (+.f32 (/.f32 (*.f32 (+.f32 ux (*.f32 2 (*.f32 ux ux))) (-.f32 (-.f32 (*.f32 ux -3) (/.f32 (+.f32 ux (*.f32 2 (*.f32 ux ux))) (/.f32 (*.f32 ux ux) (-.f32 (*.f32 ux -3) (neg.f32 (/.f32 (+.f32 ux (*.f32 2 (*.f32 ux ux))) ux)))))) (neg.f32 (/.f32 (+.f32 (*.f32 ux ux) (+.f32 1 ux)) ux)))) (*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))) (+.f32 (/.f32 ux (*.f32 maxCos maxCos)) (neg.f32 (/.f32 (+.f32 ux (*.f32 2 (*.f32 ux ux))) ux))))))
(-.f32 (-.f32 (fma.f32 ux (+.f32 maxCos -3) (/.f32 (/.f32 1 (*.f32 ux ux)) (*.f32 maxCos maxCos))) (/.f32 (-.f32 (*.f32 ux -3) (-.f32 (*.f32 (/.f32 (fma.f32 2 (*.f32 ux ux) ux) (*.f32 ux ux)) (fma.f32 ux -3 (/.f32 (fma.f32 2 (*.f32 ux ux) ux) ux))) (/.f32 (+.f32 ux (fma.f32 ux ux 1)) ux))) maxCos)) (fma.f32 (/.f32 (+.f32 ux (fma.f32 ux ux 1)) (*.f32 maxCos maxCos)) (/.f32 (fma.f32 ux -3 (/.f32 (fma.f32 2 (*.f32 ux ux) ux) ux)) (*.f32 ux ux)) (fma.f32 (/.f32 (fma.f32 2 (*.f32 ux ux) ux) (*.f32 maxCos maxCos)) (/.f32 (-.f32 (*.f32 ux -3) (-.f32 (*.f32 (/.f32 (fma.f32 2 (*.f32 ux ux) ux) (*.f32 ux ux)) (fma.f32 ux -3 (/.f32 (fma.f32 2 (*.f32 ux ux) ux) ux))) (/.f32 (+.f32 ux (fma.f32 ux ux 1)) ux))) (*.f32 ux ux)) (-.f32 (/.f32 ux (*.f32 maxCos maxCos)) (/.f32 (fma.f32 2 (*.f32 ux ux) ux) ux)))))
(-.f32 (-.f32 (fma.f32 ux (+.f32 maxCos -3) (/.f32 1 (*.f32 ux (*.f32 ux (*.f32 maxCos maxCos))))) (/.f32 (-.f32 (fma.f32 ux -3 (/.f32 (+.f32 1 (fma.f32 ux ux ux)) ux)) (*.f32 (/.f32 (fma.f32 ux (*.f32 ux 2) ux) ux) (/.f32 (fma.f32 ux -3 (/.f32 (fma.f32 ux (*.f32 ux 2) ux) ux)) ux))) maxCos)) (fma.f32 (/.f32 (+.f32 1 (fma.f32 ux ux ux)) (*.f32 maxCos maxCos)) (/.f32 (fma.f32 ux -3 (/.f32 (fma.f32 ux (*.f32 ux 2) ux) ux)) (*.f32 ux ux)) (fma.f32 (/.f32 (fma.f32 ux (*.f32 ux 2) ux) (*.f32 ux (*.f32 ux (*.f32 maxCos maxCos)))) (-.f32 (fma.f32 ux -3 (/.f32 (+.f32 1 (fma.f32 ux ux ux)) ux)) (*.f32 (/.f32 (fma.f32 ux (*.f32 ux 2) ux) ux) (/.f32 (fma.f32 ux -3 (/.f32 (fma.f32 ux (*.f32 ux 2) ux) ux)) ux))) (-.f32 (/.f32 ux (*.f32 maxCos maxCos)) (/.f32 (fma.f32 ux (*.f32 ux 2) ux) ux)))))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 3))
(*.f32 (pow.f32 (-.f32 1 maxCos) 2) (pow.f32 ux 3))
(pow.f32 ux 3)
(+.f32 (*.f32 -2 (*.f32 maxCos (pow.f32 ux 3))) (pow.f32 ux 3))
(fma.f32 -2 (*.f32 maxCos (pow.f32 ux 3)) (pow.f32 ux 3))
(*.f32 (+.f32 (*.f32 maxCos -2) 1) (pow.f32 ux 3))
(*.f32 (fma.f32 maxCos -2 1) (pow.f32 ux 3))
(+.f32 (*.f32 -2 (*.f32 maxCos (pow.f32 ux 3))) (+.f32 (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 3)) (pow.f32 ux 3)))
(fma.f32 -2 (*.f32 maxCos (pow.f32 ux 3)) (*.f32 (+.f32 (*.f32 maxCos maxCos) 1) (pow.f32 ux 3)))
(*.f32 (pow.f32 ux 3) (+.f32 (*.f32 maxCos -2) (fma.f32 maxCos maxCos 1)))
(*.f32 (pow.f32 ux 3) (fma.f32 maxCos -2 (fma.f32 maxCos maxCos 1)))
(+.f32 (*.f32 -2 (*.f32 maxCos (pow.f32 ux 3))) (+.f32 (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 3)) (pow.f32 ux 3)))
(fma.f32 -2 (*.f32 maxCos (pow.f32 ux 3)) (*.f32 (+.f32 (*.f32 maxCos maxCos) 1) (pow.f32 ux 3)))
(*.f32 (pow.f32 ux 3) (+.f32 (*.f32 maxCos -2) (fma.f32 maxCos maxCos 1)))
(*.f32 (pow.f32 ux 3) (fma.f32 maxCos -2 (fma.f32 maxCos maxCos 1)))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 3))
(*.f32 (pow.f32 ux 3) (*.f32 maxCos maxCos))
(+.f32 (*.f32 -2 (*.f32 maxCos (pow.f32 ux 3))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 3)))
(fma.f32 -2 (*.f32 maxCos (pow.f32 ux 3)) (*.f32 (pow.f32 ux 3) (*.f32 maxCos maxCos)))
(*.f32 (pow.f32 ux 3) (+.f32 (*.f32 maxCos -2) (*.f32 maxCos maxCos)))
(*.f32 (pow.f32 ux 3) (*.f32 maxCos (+.f32 -2 maxCos)))
(+.f32 (*.f32 -2 (*.f32 maxCos (pow.f32 ux 3))) (+.f32 (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 3)) (pow.f32 ux 3)))
(fma.f32 -2 (*.f32 maxCos (pow.f32 ux 3)) (*.f32 (+.f32 (*.f32 maxCos maxCos) 1) (pow.f32 ux 3)))
(*.f32 (pow.f32 ux 3) (+.f32 (*.f32 maxCos -2) (fma.f32 maxCos maxCos 1)))
(*.f32 (pow.f32 ux 3) (fma.f32 maxCos -2 (fma.f32 maxCos maxCos 1)))
(+.f32 (*.f32 -2 (*.f32 maxCos (pow.f32 ux 3))) (+.f32 (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 3)) (pow.f32 ux 3)))
(fma.f32 -2 (*.f32 maxCos (pow.f32 ux 3)) (*.f32 (+.f32 (*.f32 maxCos maxCos) 1) (pow.f32 ux 3)))
(*.f32 (pow.f32 ux 3) (+.f32 (*.f32 maxCos -2) (fma.f32 maxCos maxCos 1)))
(*.f32 (pow.f32 ux 3) (fma.f32 maxCos -2 (fma.f32 maxCos maxCos 1)))
(*.f32 (pow.f32 maxCos 2) (pow.f32 ux 3))
(*.f32 (pow.f32 ux 3) (*.f32 maxCos maxCos))
(+.f32 (*.f32 -2 (*.f32 maxCos (pow.f32 ux 3))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 3)))
(fma.f32 -2 (*.f32 maxCos (pow.f32 ux 3)) (*.f32 (pow.f32 ux 3) (*.f32 maxCos maxCos)))
(*.f32 (pow.f32 ux 3) (+.f32 (*.f32 maxCos -2) (*.f32 maxCos maxCos)))
(*.f32 (pow.f32 ux 3) (*.f32 maxCos (+.f32 -2 maxCos)))
(+.f32 (*.f32 -2 (*.f32 maxCos (pow.f32 ux 3))) (+.f32 (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 3)) (pow.f32 ux 3)))
(fma.f32 -2 (*.f32 maxCos (pow.f32 ux 3)) (*.f32 (+.f32 (*.f32 maxCos maxCos) 1) (pow.f32 ux 3)))
(*.f32 (pow.f32 ux 3) (+.f32 (*.f32 maxCos -2) (fma.f32 maxCos maxCos 1)))
(*.f32 (pow.f32 ux 3) (fma.f32 maxCos -2 (fma.f32 maxCos maxCos 1)))
(+.f32 (*.f32 -2 (*.f32 maxCos (pow.f32 ux 3))) (+.f32 (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 3)) (pow.f32 ux 3)))
(fma.f32 -2 (*.f32 maxCos (pow.f32 ux 3)) (*.f32 (+.f32 (*.f32 maxCos maxCos) 1) (pow.f32 ux 3)))
(*.f32 (pow.f32 ux 3) (+.f32 (*.f32 maxCos -2) (fma.f32 maxCos maxCos 1)))
(*.f32 (pow.f32 ux 3) (fma.f32 maxCos -2 (fma.f32 maxCos maxCos 1)))
(pow.f32 ux 2)
(*.f32 ux ux)
(+.f32 (pow.f32 ux 2) (*.f32 -1 (*.f32 maxCos (pow.f32 ux 2))))
(+.f32 (*.f32 ux ux) (neg.f32 (*.f32 maxCos (*.f32 ux ux))))
(*.f32 ux (*.f32 ux (-.f32 1 maxCos)))
(*.f32 (*.f32 ux ux) (-.f32 1 maxCos))
(+.f32 (pow.f32 ux 2) (*.f32 -1 (*.f32 maxCos (pow.f32 ux 2))))
(+.f32 (*.f32 ux ux) (neg.f32 (*.f32 maxCos (*.f32 ux ux))))
(*.f32 ux (*.f32 ux (-.f32 1 maxCos)))
(*.f32 (*.f32 ux ux) (-.f32 1 maxCos))
(+.f32 (pow.f32 ux 2) (*.f32 -1 (*.f32 maxCos (pow.f32 ux 2))))
(+.f32 (*.f32 ux ux) (neg.f32 (*.f32 maxCos (*.f32 ux ux))))
(*.f32 ux (*.f32 ux (-.f32 1 maxCos)))
(*.f32 (*.f32 ux ux) (-.f32 1 maxCos))
(*.f32 -1 (*.f32 maxCos (pow.f32 ux 2)))
(neg.f32 (*.f32 maxCos (*.f32 ux ux)))
(*.f32 maxCos (neg.f32 (*.f32 ux ux)))
(*.f32 maxCos (*.f32 ux (neg.f32 ux)))
(+.f32 (pow.f32 ux 2) (*.f32 -1 (*.f32 maxCos (pow.f32 ux 2))))
(+.f32 (*.f32 ux ux) (neg.f32 (*.f32 maxCos (*.f32 ux ux))))
(*.f32 ux (*.f32 ux (-.f32 1 maxCos)))
(*.f32 (*.f32 ux ux) (-.f32 1 maxCos))
(+.f32 (pow.f32 ux 2) (*.f32 -1 (*.f32 maxCos (pow.f32 ux 2))))
(+.f32 (*.f32 ux ux) (neg.f32 (*.f32 maxCos (*.f32 ux ux))))
(*.f32 ux (*.f32 ux (-.f32 1 maxCos)))
(*.f32 (*.f32 ux ux) (-.f32 1 maxCos))
(+.f32 (pow.f32 ux 2) (*.f32 -1 (*.f32 maxCos (pow.f32 ux 2))))
(+.f32 (*.f32 ux ux) (neg.f32 (*.f32 maxCos (*.f32 ux ux))))
(*.f32 ux (*.f32 ux (-.f32 1 maxCos)))
(*.f32 (*.f32 ux ux) (-.f32 1 maxCos))
(*.f32 -1 (*.f32 maxCos (pow.f32 ux 2)))
(neg.f32 (*.f32 maxCos (*.f32 ux ux)))
(*.f32 maxCos (neg.f32 (*.f32 ux ux)))
(*.f32 maxCos (*.f32 ux (neg.f32 ux)))
(+.f32 (pow.f32 ux 2) (*.f32 -1 (*.f32 maxCos (pow.f32 ux 2))))
(+.f32 (*.f32 ux ux) (neg.f32 (*.f32 maxCos (*.f32 ux ux))))
(*.f32 ux (*.f32 ux (-.f32 1 maxCos)))
(*.f32 (*.f32 ux ux) (-.f32 1 maxCos))
(+.f32 (pow.f32 ux 2) (*.f32 -1 (*.f32 maxCos (pow.f32 ux 2))))
(+.f32 (*.f32 ux ux) (neg.f32 (*.f32 maxCos (*.f32 ux ux))))
(*.f32 ux (*.f32 ux (-.f32 1 maxCos)))
(*.f32 (*.f32 ux ux) (-.f32 1 maxCos))
(+.f32 (pow.f32 ux 2) (*.f32 -1 (*.f32 maxCos (pow.f32 ux 2))))
(+.f32 (*.f32 ux ux) (neg.f32 (*.f32 maxCos (*.f32 ux ux))))
(*.f32 ux (*.f32 ux (-.f32 1 maxCos)))
(*.f32 (*.f32 ux ux) (-.f32 1 maxCos))
(*.f32 (-.f32 1 maxCos) (pow.f32 ux 2))
(+.f32 (*.f32 ux ux) (neg.f32 (*.f32 maxCos (*.f32 ux ux))))
(*.f32 ux (*.f32 ux (-.f32 1 maxCos)))
(*.f32 (*.f32 ux ux) (-.f32 1 maxCos))
(*.f32 (-.f32 1 maxCos) (pow.f32 ux 2))
(+.f32 (*.f32 ux ux) (neg.f32 (*.f32 maxCos (*.f32 ux ux))))
(*.f32 ux (*.f32 ux (-.f32 1 maxCos)))
(*.f32 (*.f32 ux ux) (-.f32 1 maxCos))
(*.f32 (-.f32 1 maxCos) (pow.f32 ux 2))
(+.f32 (*.f32 ux ux) (neg.f32 (*.f32 maxCos (*.f32 ux ux))))
(*.f32 ux (*.f32 ux (-.f32 1 maxCos)))
(*.f32 (*.f32 ux ux) (-.f32 1 maxCos))
(*.f32 (-.f32 1 maxCos) (pow.f32 ux 2))
(+.f32 (*.f32 ux ux) (neg.f32 (*.f32 maxCos (*.f32 ux ux))))
(*.f32 ux (*.f32 ux (-.f32 1 maxCos)))
(*.f32 (*.f32 ux ux) (-.f32 1 maxCos))
(*.f32 (-.f32 1 maxCos) (pow.f32 ux 2))
(+.f32 (*.f32 ux ux) (neg.f32 (*.f32 maxCos (*.f32 ux ux))))
(*.f32 ux (*.f32 ux (-.f32 1 maxCos)))
(*.f32 (*.f32 ux ux) (-.f32 1 maxCos))
(*.f32 (-.f32 1 maxCos) (pow.f32 ux 2))
(+.f32 (*.f32 ux ux) (neg.f32 (*.f32 maxCos (*.f32 ux ux))))
(*.f32 ux (*.f32 ux (-.f32 1 maxCos)))
(*.f32 (*.f32 ux ux) (-.f32 1 maxCos))
(*.f32 (-.f32 1 maxCos) (pow.f32 ux 2))
(+.f32 (*.f32 ux ux) (neg.f32 (*.f32 maxCos (*.f32 ux ux))))
(*.f32 ux (*.f32 ux (-.f32 1 maxCos)))
(*.f32 (*.f32 ux ux) (-.f32 1 maxCos))
(*.f32 (-.f32 1 maxCos) (pow.f32 ux 2))
(+.f32 (*.f32 ux ux) (neg.f32 (*.f32 maxCos (*.f32 ux ux))))
(*.f32 ux (*.f32 ux (-.f32 1 maxCos)))
(*.f32 (*.f32 ux ux) (-.f32 1 maxCos))
(*.f32 (-.f32 1 maxCos) (pow.f32 ux 2))
(+.f32 (*.f32 ux ux) (neg.f32 (*.f32 maxCos (*.f32 ux ux))))
(*.f32 ux (*.f32 ux (-.f32 1 maxCos)))
(*.f32 (*.f32 ux ux) (-.f32 1 maxCos))
(*.f32 (-.f32 1 maxCos) (pow.f32 ux 2))
(+.f32 (*.f32 ux ux) (neg.f32 (*.f32 maxCos (*.f32 ux ux))))
(*.f32 ux (*.f32 ux (-.f32 1 maxCos)))
(*.f32 (*.f32 ux ux) (-.f32 1 maxCos))
(*.f32 (-.f32 1 maxCos) (pow.f32 ux 2))
(+.f32 (*.f32 ux ux) (neg.f32 (*.f32 maxCos (*.f32 ux ux))))
(*.f32 ux (*.f32 ux (-.f32 1 maxCos)))
(*.f32 (*.f32 ux ux) (-.f32 1 maxCos))
(*.f32 (-.f32 1 maxCos) (pow.f32 ux 2))
(+.f32 (*.f32 ux ux) (neg.f32 (*.f32 maxCos (*.f32 ux ux))))
(*.f32 ux (*.f32 ux (-.f32 1 maxCos)))
(*.f32 (*.f32 ux ux) (-.f32 1 maxCos))

localize86.0ms (1.5%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(cbrt.f32 (-.f32 1 ux))
0.6b
(pow.f32 (cbrt.f32 (-.f32 1 ux)) 3)
Compiler

Compiled 19 to 15 computations (21.1% saved)

series17.0ms (0.3%)

Counts
2 → 8
Calls

6 calls:

TimeVariablePointExpression
13.0ms
ux
@0
(pow.f32 (cbrt.f32 (-.f32 1 ux)) 3)
1.0ms
ux
@inf
(pow.f32 (cbrt.f32 (-.f32 1 ux)) 3)
1.0ms
ux
@-inf
(pow.f32 (cbrt.f32 (-.f32 1 ux)) 3)
1.0ms
ux
@0
(cbrt.f32 (-.f32 1 ux))
1.0ms
ux
@-inf
(cbrt.f32 (-.f32 1 ux))

rewrite116.0ms (2%)

Algorithm
batch-egg-rewrite
Rules
582×pow1_binary32
552×add-log-exp_binary32
551×log1p-expm1-u_binary32
551×expm1-log1p-u_binary32
540×add-exp-log_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0710
115010
2150710
Stop Event
node limit
Counts
2 → 56
Calls
Call 1
Inputs
(pow.f32 (cbrt.f32 (-.f32 1 ux)) 3)
(cbrt.f32 (-.f32 1 ux))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f32 1 (neg.f32 ux))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 1 (*.f32 (neg.f32 ux) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (neg.f32 ux) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 1 ux)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (-.f32 1 ux)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 1 (+.f32 1 (fma.f32 ux ux ux))) (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 1 (+.f32 1 ux)) (/.f32 (*.f32 ux ux) (+.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (-.f32 1 ux))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 1 ux) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (-.f32 1 ux)) (pow.f32 (cbrt.f32 (-.f32 1 ux)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (-.f32 1 ux)) 2) (cbrt.f32 (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (-.f32 1 ux))) 2) (*.f32 (cbrt.f32 (cbrt.f32 (-.f32 1 ux))) (pow.f32 (cbrt.f32 (-.f32 1 ux)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (-.f32 1 ux) 1/6) (*.f32 (pow.f32 (-.f32 1 ux) 1/6) (pow.f32 (cbrt.f32 (-.f32 1 ux)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (-.f32 1 ux)) (sqrt.f32 (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 1 (pow.f32 ux 3)) (/.f32 1 (+.f32 1 (fma.f32 ux ux ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 1 (*.f32 ux ux)) (/.f32 1 (+.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (-.f32 1 ux))) 2) 3) (cbrt.f32 (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (pow.f32 (-.f32 1 ux) 1/6) 3) (pow.f32 (pow.f32 (-.f32 1 ux) 1/6) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (pow.f32 (cbrt.f32 (-.f32 1 ux)) 2) 1) (cbrt.f32 (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (pow.f32 (cbrt.f32 (-.f32 1 ux)) 2) (pow.f32 (cbrt.f32 (cbrt.f32 (-.f32 1 ux))) 2)) (cbrt.f32 (cbrt.f32 (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (pow.f32 (cbrt.f32 (-.f32 1 ux)) 2) (pow.f32 (-.f32 1 ux) 1/6)) (pow.f32 (-.f32 1 ux) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (+.f32 1 (fma.f32 ux ux ux)) (-.f32 1 (pow.f32 ux 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (+.f32 1 ux) (-.f32 1 (*.f32 ux ux))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 1 (fma.f32 ux ux ux)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 1 (*.f32 ux ux)) (+.f32 1 ux))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (-.f32 1 (pow.f32 ux 3))) (neg.f32 (+.f32 1 (fma.f32 ux ux ux))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (-.f32 1 (*.f32 ux ux))) (neg.f32 (+.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 1 (pow.f32 (neg.f32 ux) 3)) (+.f32 1 (-.f32 (*.f32 (neg.f32 ux) (neg.f32 ux)) (neg.f32 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 1 (*.f32 (neg.f32 ux) (neg.f32 ux))) (-.f32 1 (neg.f32 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (-.f32 1 ux) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (-.f32 1 ux) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log1p.f32 (neg.f32 ux)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (cbrt.f32 (-.f32 1 ux))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (cbrt.f32 (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (-.f32 1 ux)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (cbrt.f32 (-.f32 1 ux))) (pow.f32 (cbrt.f32 (cbrt.f32 (-.f32 1 ux))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (cbrt.f32 (-.f32 1 ux))) (pow.f32 (pow.f32 (cbrt.f32 (-.f32 1 ux)) 2) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (-.f32 1 ux))) 2) (cbrt.f32 (cbrt.f32 (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (-.f32 1 ux) 1/6) (pow.f32 (-.f32 1 ux) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 1 1/3) (cbrt.f32 (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (pow.f32 (cbrt.f32 (-.f32 1 ux)) 2) 1/3) (cbrt.f32 (cbrt.f32 (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (sqrt.f32 (-.f32 1 ux)) 1/3) (pow.f32 (sqrt.f32 (-.f32 1 ux)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (cbrt.f32 (-.f32 1 (pow.f32 ux 3))) (cbrt.f32 (+.f32 1 (fma.f32 ux ux ux))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (cbrt.f32 (-.f32 1 (*.f32 ux ux))) (cbrt.f32 (+.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (-.f32 1 ux) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (-.f32 1 ux)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (cbrt.f32 (-.f32 1 ux))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (-.f32 1 ux) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (cbrt.f32 (-.f32 1 ux)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (cbrt.f32 (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (cbrt.f32 (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (cbrt.f32 (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (cbrt.f32 (-.f32 1 ux))))))))

simplify97.0ms (1.6%)

Algorithm
egg-herbie
Rules
544×fma-neg_binary32
536×unswap-sqr_binary32
510×associate-*l*_binary32
471×fma-def_binary32
389×associate-+r+_binary32
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
02259
15554
211651
332844
483441
5250541
6402541
7512241
8655641
Stop Event
node limit
Counts
64 → 64
Calls
Call 1
Inputs
1
(+.f32 (*.f32 -1 ux) 1)
(+.f32 (*.f32 -1 ux) 1)
(+.f32 (*.f32 -1 ux) 1)
1
(+.f32 1 (*.f32 -1/3 ux))
(+.f32 1 (+.f32 (*.f32 -1/9 (pow.f32 ux 2)) (*.f32 -1/3 ux)))
(+.f32 1 (+.f32 (*.f32 -1/9 (pow.f32 ux 2)) (+.f32 (*.f32 -1/3 ux) (*.f32 -5/81 (pow.f32 ux 3)))))
Outputs
1
(+.f32 (*.f32 -1 ux) 1)
(fma.f32 -1 ux 1)
(-.f32 1 ux)
(+.f32 (*.f32 -1 ux) 1)
(fma.f32 -1 ux 1)
(-.f32 1 ux)
(+.f32 (*.f32 -1 ux) 1)
(fma.f32 -1 ux 1)
(-.f32 1 ux)
1
(+.f32 1 (*.f32 -1/3 ux))
(+.f32 1 (*.f32 ux -1/3))
(fma.f32 ux -1/3 1)
(+.f32 1 (+.f32 (*.f32 -1/9 (pow.f32 ux 2)) (*.f32 -1/3 ux)))
(+.f32 1 (fma.f32 -1/9 (*.f32 ux ux) (*.f32 ux -1/3)))
(+.f32 1 (fma.f32 ux -1/3 (*.f32 ux (*.f32 ux -1/9))))
(fma.f32 ux -1/3 (fma.f32 ux (*.f32 ux -1/9) 1))
(fma.f32 ux (fma.f32 ux -1/9 -1/3) 1)
(+.f32 1 (+.f32 (*.f32 -1/9 (pow.f32 ux 2)) (+.f32 (*.f32 -1/3 ux) (*.f32 -5/81 (pow.f32 ux 3)))))
(+.f32 1 (fma.f32 -1/9 (*.f32 ux ux) (fma.f32 -1/3 ux (*.f32 -5/81 (pow.f32 ux 3)))))
(+.f32 1 (fma.f32 -1/9 (*.f32 ux ux) (fma.f32 ux -1/3 (*.f32 -5/81 (pow.f32 ux 3)))))
(+.f32 1 (fma.f32 -5/81 (pow.f32 ux 3) (*.f32 ux (+.f32 (*.f32 ux -1/9) -1/3))))
(fma.f32 ux (fma.f32 ux -1/9 -1/3) (fma.f32 -5/81 (pow.f32 ux 3) 1))
(fma.f32 ux (fma.f32 ux (fma.f32 ux -5/81 -1/9) -1/3) 1)

eval576.0ms (9.7%)

Compiler

Compiled 17737 to 12081 computations (31.9% saved)

prune80.0ms (1.3%)

Pruning

5 alts after pruning (3 fresh and 2 done)

PrunedKeptTotal
New4923495
Fresh101
Picked101
Done224
Total4965501
Error
0b
Counts
501 → 5
Alt Table
Click to see full alt table
StatusErrorProgram
0.2b
(-.f32 (+.f32 1 (+.f32 (*.f32 maxCos ux) (*.f32 -3 ux))) (*.f32 -2 ux))
0.9b
(*.f32 (-.f32 1 (*.f32 ux ux)) (/.f32 1 (+.f32 1 ux)))
0.0b
(-.f32 1 (*.f32 ux (-.f32 1 maxCos)))
9.3b
1
0.5b
(-.f32 1 ux)
Compiler

Compiled 50 to 40 computations (20% saved)

localize76.0ms (1.3%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(-.f32 1 (*.f32 ux ux))
0.1b
(*.f32 (-.f32 1 (*.f32 ux ux)) (/.f32 1 (+.f32 1 ux)))
0.4b
(/.f32 1 (+.f32 1 ux))
Compiler

Compiled 32 to 20 computations (37.5% saved)

series4.0ms (0.1%)

Counts
3 → 36
Calls

9 calls:

TimeVariablePointExpression
1.0ms
ux
@inf
(*.f32 (-.f32 1 (*.f32 ux ux)) (/.f32 1 (+.f32 1 ux)))
0.0ms
ux
@0
(*.f32 (-.f32 1 (*.f32 ux ux)) (/.f32 1 (+.f32 1 ux)))
0.0ms
ux
@inf
(/.f32 1 (+.f32 1 ux))
0.0ms
ux
@0
(/.f32 1 (+.f32 1 ux))
0.0ms
ux
@-inf
(*.f32 (-.f32 1 (*.f32 ux ux)) (/.f32 1 (+.f32 1 ux)))

rewrite68.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
937×pow1_binary32
877×add-log-exp_binary32
876×log1p-expm1-u_binary32
876×expm1-log1p-u_binary32
93×add-sqr-sqrt_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0827
118218
2257218
Stop Event
node limit
Counts
3 → 99
Calls
Call 1
Inputs
(/.f32 1 (+.f32 1 ux))
(*.f32 (-.f32 1 (*.f32 ux ux)) (/.f32 1 (+.f32 1 ux)))
(-.f32 1 (*.f32 ux ux))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (/.f32 1 (+.f32 1 ux)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (/.f32 1 (+.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (+.f32 1 ux)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (cbrt.f32 (+.f32 1 ux))) (cbrt.f32 (pow.f32 (+.f32 1 ux) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (pow.f32 (+.f32 1 ux) -2)) (/.f32 1 (cbrt.f32 (+.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (+.f32 1 ux) -1/2) (pow.f32 (+.f32 1 ux) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 -1 (/.f32 1 (+.f32 -1 (neg.f32 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (pow.f32 (cbrt.f32 (+.f32 1 ux)) 2) -1) (pow.f32 (cbrt.f32 (+.f32 1 ux)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (sqrt.f32 (+.f32 1 ux)) -1) (pow.f32 (sqrt.f32 (+.f32 1 ux)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (-.f32 1 (*.f32 ux ux))) (-.f32 1 ux))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (+.f32 1 (pow.f32 ux 3))) (+.f32 1 (fma.f32 ux ux (neg.f32 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (+.f32 1 ux) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 1 (+.f32 1 ux)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (/.f32 1 (+.f32 1 ux)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 1 (cbrt.f32 (+.f32 1 ux))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (+.f32 1 ux) -1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (+.f32 1 ux) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (/.f32 1 (+.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (/.f32 1 (+.f32 1 ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (/.f32 1 (+.f32 1 ux)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (/.f32 1 (+.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (/.f32 1 (+.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (neg.f32 (log1p.f32 ux)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 1 (neg.f32 ux))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (/.f32 1 (+.f32 1 ux)) (*.f32 (*.f32 ux (neg.f32 ux)) (/.f32 1 (+.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (/.f32 1 (+.f32 1 ux)) (*.f32 (/.f32 1 (+.f32 1 ux)) (*.f32 ux (neg.f32 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 1 ux)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 1 (+.f32 1 ux)) (/.f32 (*.f32 ux ux) (+.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (-.f32 1 ux))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (+.f32 1 ux) (-.f32 1 (*.f32 ux ux))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 1 (*.f32 ux ux)) (+.f32 1 ux))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (pow.f32 (cbrt.f32 (-.f32 1 (*.f32 ux ux))) 2) (/.f32 (+.f32 1 ux) (cbrt.f32 (-.f32 1 (*.f32 ux ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (sqrt.f32 (-.f32 1 (*.f32 ux ux))) (/.f32 (+.f32 1 ux) (sqrt.f32 (-.f32 1 (*.f32 ux ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 1 (pow.f32 ux 6)) (*.f32 (+.f32 1 ux) (+.f32 (+.f32 1 (pow.f32 ux 4)) (*.f32 ux ux))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 1 (pow.f32 ux 4)) (*.f32 (+.f32 1 ux) (+.f32 1 (*.f32 ux ux))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (-.f32 1 (*.f32 ux ux))) (+.f32 -1 (neg.f32 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 -1 (-.f32 1 (pow.f32 ux 6))) (*.f32 (+.f32 -1 (neg.f32 ux)) (+.f32 (+.f32 1 (pow.f32 ux 4)) (*.f32 ux ux))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 -1 (-.f32 1 (pow.f32 ux 4))) (*.f32 (+.f32 -1 (neg.f32 ux)) (+.f32 1 (*.f32 ux ux))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 1 (pow.f32 ux 6)) 1) (*.f32 (+.f32 (+.f32 1 (pow.f32 ux 4)) (*.f32 ux ux)) (+.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 1 (pow.f32 ux 4)) 1) (*.f32 (+.f32 1 (*.f32 ux ux)) (+.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 1 (pow.f32 ux 6)) -1) (*.f32 (+.f32 (+.f32 1 (pow.f32 ux 4)) (*.f32 ux ux)) (+.f32 -1 (neg.f32 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 1 (pow.f32 ux 4)) -1) (*.f32 (+.f32 1 (*.f32 ux ux)) (+.f32 -1 (neg.f32 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (/.f32 (-.f32 1 (*.f32 ux ux)) (sqrt.f32 (+.f32 1 ux))) (sqrt.f32 (+.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (/.f32 (-.f32 1 (*.f32 ux ux)) 1) (+.f32 1 ux))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (/.f32 (-.f32 1 (*.f32 ux ux)) (pow.f32 (cbrt.f32 (+.f32 1 ux)) 2)) (cbrt.f32 (+.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 1 (+.f32 (*.f32 ux ux) ux)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 -1 (-.f32 1 (*.f32 ux ux))) (+.f32 -1 (neg.f32 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 1 (pow.f32 ux 6)) (/.f32 1 (+.f32 1 ux))) (+.f32 (+.f32 1 (pow.f32 ux 4)) (*.f32 ux ux)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 1 (pow.f32 ux 4)) (/.f32 1 (+.f32 1 ux))) (+.f32 1 (*.f32 ux ux)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (/.f32 1 (+.f32 1 ux)) (-.f32 1 (pow.f32 ux 6))) (+.f32 (+.f32 1 (pow.f32 ux 4)) (*.f32 ux ux)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (/.f32 1 (+.f32 1 ux)) (-.f32 1 (pow.f32 ux 4))) (+.f32 1 (*.f32 ux ux)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 1 (*.f32 ux ux)) -1) (+.f32 -1 (neg.f32 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (-.f32 1 ux) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (-.f32 1 ux) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (-.f32 1 ux)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (-.f32 1 ux)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (-.f32 1 ux) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (-.f32 1 ux) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (/.f32 (pow.f32 (-.f32 1 (*.f32 ux ux)) 3) (pow.f32 (+.f32 1 ux) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (/.f32 1 (+.f32 1 ux)) 3) (pow.f32 (-.f32 1 (*.f32 ux ux)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (-.f32 1 (*.f32 ux ux)) 3) (pow.f32 (/.f32 1 (+.f32 1 ux)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (-.f32 1 ux)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 1 (*.f32 ux (neg.f32 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 1 (*.f32 (*.f32 ux (neg.f32 ux)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 ux (neg.f32 ux)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (-.f32 1 (*.f32 ux ux)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 1 (*.f32 ux ux)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (-.f32 1 (*.f32 ux ux))) (pow.f32 (cbrt.f32 (-.f32 1 (*.f32 ux ux))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (-.f32 1 (*.f32 ux ux))) 2) (cbrt.f32 (-.f32 1 (*.f32 ux ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (-.f32 1 (*.f32 ux ux))) 2) (*.f32 (cbrt.f32 (-.f32 1 (*.f32 ux ux))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (-.f32 1 (*.f32 ux ux))) (sqrt.f32 (-.f32 1 (*.f32 ux ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (-.f32 1 (*.f32 ux ux))) (*.f32 (sqrt.f32 (-.f32 1 (*.f32 ux ux))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 1 (pow.f32 ux 6)) (/.f32 1 (+.f32 (+.f32 1 (pow.f32 ux 4)) (*.f32 ux ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 1 (pow.f32 ux 4)) (/.f32 1 (+.f32 1 (*.f32 ux ux))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (+.f32 (+.f32 1 (pow.f32 ux 4)) (*.f32 ux ux)) (-.f32 1 (pow.f32 ux 6))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (+.f32 1 (*.f32 ux ux)) (-.f32 1 (pow.f32 ux 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 1 (pow.f32 ux 6)) (+.f32 (+.f32 1 (pow.f32 ux 4)) (*.f32 ux ux)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 1 (pow.f32 ux 4)) (+.f32 1 (*.f32 ux ux)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (-.f32 1 (pow.f32 ux 6))) (neg.f32 (+.f32 (+.f32 1 (pow.f32 ux 4)) (*.f32 ux ux))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (-.f32 1 (pow.f32 ux 4))) (neg.f32 (+.f32 1 (*.f32 ux ux))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 1 (pow.f32 ux 6)) 1) (+.f32 (+.f32 1 (pow.f32 ux 4)) (*.f32 ux ux)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 1 (pow.f32 ux 4)) 1) (+.f32 1 (*.f32 ux ux)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 1 (pow.f32 (*.f32 ux (neg.f32 ux)) 3)) (+.f32 1 (-.f32 (*.f32 (*.f32 ux (neg.f32 ux)) (*.f32 ux (neg.f32 ux))) (*.f32 ux (neg.f32 ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 1 (*.f32 (*.f32 ux (neg.f32 ux)) (*.f32 ux (neg.f32 ux)))) (-.f32 1 (*.f32 ux (neg.f32 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (-.f32 1 (*.f32 ux ux)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (-.f32 1 (*.f32 ux ux)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (-.f32 1 (*.f32 ux ux))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (-.f32 1 (*.f32 ux ux))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (-.f32 1 (*.f32 ux ux)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (-.f32 1 (*.f32 ux ux))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (-.f32 1 (*.f32 ux ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (-.f32 1 (*.f32 ux ux)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (-.f32 1 (*.f32 ux ux))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (-.f32 1 (*.f32 ux ux))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log1p.f32 (*.f32 ux (neg.f32 ux))))))))

simplify62.0ms (1%)

Algorithm
egg-herbie
Rules
706×fma-def_binary32
473×fma-neg_binary32
460×difference-of-squares_binary32
424×cancel-sign-sub-inv_binary32
346×associate-/r*_binary32
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
029322
175286
2186286
3505284
41859283
56267283
Stop Event
node limit
Counts
135 → 118
Calls
Call 1
Inputs
1
(+.f32 (*.f32 -1 ux) 1)
(+.f32 (*.f32 -1 ux) (+.f32 (pow.f32 ux 2) 1))
(+.f32 (*.f32 -1 ux) (+.f32 (pow.f32 ux 2) (+.f32 1 (*.f32 -1 (pow.f32 ux 3)))))
(/.f32 1 ux)
(-.f32 (/.f32 1 ux) (/.f32 1 (pow.f32 ux 2)))
(-.f32 (+.f32 (/.f32 1 (pow.f32 ux 3)) (/.f32 1 ux)) (/.f32 1 (pow.f32 ux 2)))
(-.f32 (+.f32 (/.f32 1 (pow.f32 ux 3)) (/.f32 1 ux)) (+.f32 (/.f32 1 (pow.f32 ux 2)) (/.f32 1 (pow.f32 ux 4))))
(/.f32 1 ux)
(-.f32 (/.f32 1 ux) (/.f32 1 (pow.f32 ux 2)))
(-.f32 (+.f32 (/.f32 1 (pow.f32 ux 3)) (/.f32 1 ux)) (/.f32 1 (pow.f32 ux 2)))
(-.f32 (+.f32 (/.f32 1 (pow.f32 ux 3)) (/.f32 1 ux)) (+.f32 (/.f32 1 (pow.f32 ux 2)) (/.f32 1 (pow.f32 ux 4))))
1
(+.f32 (*.f32 -1 ux) 1)
(+.f32 (*.f32 -1 ux) 1)
(+.f32 (*.f32 -1 ux) 1)
(*.f32 -1 ux)
(+.f32 (*.f32 -1 ux) 1)
(+.f32 (*.f32 -1 ux) 1)
(+.f32 (*.f32 -1 ux) 1)
(*.f32 -1 ux)
(+.f32 (*.f32 -1 ux) 1)
(+.f32 (*.f32 -1 ux) 1)
(+.f32 (*.f32 -1 ux) 1)
1
(+.f32 1 (*.f32 -1 (pow.f32 ux 2)))
(+.f32 1 (*.f32 -1 (pow.f32 ux 2)))
(+.f32 1 (*.f32 -1 (pow.f32 ux 2)))
(*.f32 -1 (pow.f32 ux 2))
(+.f32 1 (*.f32 -1 (pow.f32 ux 2)))
(+.f32 1 (*.f32 -1 (pow.f32 ux 2)))
(+.f32 1 (*.f32 -1 (pow.f32 ux 2)))
(*.f32 -1 (pow.f32 ux 2))
(+.f32 1 (*.f32 -1 (pow.f32 ux 2)))
(+.f32 1 (*.f32 -1 (pow.f32 ux 2)))
(+.f32 1 (*.f32 -1 (pow.f32 ux 2)))
Outputs
1
(+.f32 (*.f32 -1 ux) 1)
(fma.f32 -1 ux 1)
(-.f32 1 ux)
(+.f32 (*.f32 -1 ux) (+.f32 (pow.f32 ux 2) 1))
(fma.f32 -1 ux (+.f32 1 (*.f32 ux ux)))
(-.f32 (fma.f32 ux ux 1) ux)
(fma.f32 ux ux (-.f32 1 ux))
(+.f32 (*.f32 -1 ux) (+.f32 (pow.f32 ux 2) (+.f32 1 (*.f32 -1 (pow.f32 ux 3)))))
(fma.f32 -1 ux (+.f32 (*.f32 ux ux) (+.f32 1 (neg.f32 (pow.f32 ux 3)))))
(-.f32 (fma.f32 ux ux (-.f32 1 (pow.f32 ux 3))) ux)
(-.f32 (fma.f32 ux ux (-.f32 1 ux)) (pow.f32 ux 3))
(fma.f32 ux (-.f32 ux (fma.f32 ux ux 1)) 1)
(*.f32 (-.f32 1 ux) (fma.f32 ux ux 1))
(/.f32 1 ux)
(-.f32 (/.f32 1 ux) (/.f32 1 (pow.f32 ux 2)))
(-.f32 (/.f32 1 ux) (/.f32 1 (*.f32 ux ux)))
(-.f32 (/.f32 1 ux) (/.f32 (/.f32 1 ux) ux))
(+.f32 (/.f32 1 ux) (/.f32 -1 (*.f32 ux ux)))
(-.f32 (+.f32 (/.f32 1 (pow.f32 ux 3)) (/.f32 1 ux)) (/.f32 1 (pow.f32 ux 2)))
(+.f32 (/.f32 1 (pow.f32 ux 3)) (-.f32 (/.f32 1 ux) (/.f32 1 (*.f32 ux ux))))
(+.f32 (-.f32 (/.f32 1 ux) (/.f32 (/.f32 1 ux) ux)) (/.f32 1 (pow.f32 ux 3)))
(+.f32 (/.f32 1 ux) (+.f32 (/.f32 1 (pow.f32 ux 3)) (/.f32 -1 (*.f32 ux ux))))
(-.f32 (+.f32 (/.f32 1 (pow.f32 ux 3)) (/.f32 1 ux)) (+.f32 (/.f32 1 (pow.f32 ux 2)) (/.f32 1 (pow.f32 ux 4))))
(+.f32 (/.f32 1 (pow.f32 ux 3)) (-.f32 (/.f32 1 ux) (+.f32 (/.f32 1 (*.f32 ux ux)) (/.f32 1 (pow.f32 ux 4)))))
(+.f32 (/.f32 1 (pow.f32 ux 3)) (-.f32 (/.f32 1 ux) (+.f32 (/.f32 (/.f32 1 ux) ux) (/.f32 1 (pow.f32 ux 4)))))
(+.f32 (/.f32 1 ux) (-.f32 (-.f32 (/.f32 1 (pow.f32 ux 3)) (/.f32 1 (pow.f32 ux 4))) (/.f32 1 (*.f32 ux ux))))
(-.f32 (/.f32 1 ux) (-.f32 (/.f32 1 (*.f32 ux ux)) (-.f32 (/.f32 1 (pow.f32 ux 3)) (/.f32 1 (pow.f32 ux 4)))))
(+.f32 (/.f32 1 ux) (+.f32 (/.f32 1 (pow.f32 ux 3)) (+.f32 (/.f32 -1 (*.f32 ux ux)) (/.f32 -1 (pow.f32 ux 4)))))
(/.f32 1 ux)
(-.f32 (/.f32 1 ux) (/.f32 1 (pow.f32 ux 2)))
(-.f32 (/.f32 1 ux) (/.f32 1 (*.f32 ux ux)))
(-.f32 (/.f32 1 ux) (/.f32 (/.f32 1 ux) ux))
(+.f32 (/.f32 1 ux) (/.f32 -1 (*.f32 ux ux)))
(-.f32 (+.f32 (/.f32 1 (pow.f32 ux 3)) (/.f32 1 ux)) (/.f32 1 (pow.f32 ux 2)))
(+.f32 (/.f32 1 (pow.f32 ux 3)) (-.f32 (/.f32 1 ux) (/.f32 1 (*.f32 ux ux))))
(+.f32 (-.f32 (/.f32 1 ux) (/.f32 (/.f32 1 ux) ux)) (/.f32 1 (pow.f32 ux 3)))
(+.f32 (/.f32 1 ux) (+.f32 (/.f32 1 (pow.f32 ux 3)) (/.f32 -1 (*.f32 ux ux))))
(-.f32 (+.f32 (/.f32 1 (pow.f32 ux 3)) (/.f32 1 ux)) (+.f32 (/.f32 1 (pow.f32 ux 2)) (/.f32 1 (pow.f32 ux 4))))
(+.f32 (/.f32 1 (pow.f32 ux 3)) (-.f32 (/.f32 1 ux) (+.f32 (/.f32 1 (*.f32 ux ux)) (/.f32 1 (pow.f32 ux 4)))))
(+.f32 (/.f32 1 (pow.f32 ux 3)) (-.f32 (/.f32 1 ux) (+.f32 (/.f32 (/.f32 1 ux) ux) (/.f32 1 (pow.f32 ux 4)))))
(+.f32 (/.f32 1 ux) (-.f32 (-.f32 (/.f32 1 (pow.f32 ux 3)) (/.f32 1 (pow.f32 ux 4))) (/.f32 1 (*.f32 ux ux))))
(-.f32 (/.f32 1 ux) (-.f32 (/.f32 1 (*.f32 ux ux)) (-.f32 (/.f32 1 (pow.f32 ux 3)) (/.f32 1 (pow.f32 ux 4)))))
(+.f32 (/.f32 1 ux) (+.f32 (/.f32 1 (pow.f32 ux 3)) (+.f32 (/.f32 -1 (*.f32 ux ux)) (/.f32 -1 (pow.f32 ux 4)))))
1
(+.f32 (*.f32 -1 ux) 1)
(fma.f32 -1 ux 1)
(-.f32 1 ux)
(+.f32 (*.f32 -1 ux) 1)
(fma.f32 -1 ux 1)
(-.f32 1 ux)
(+.f32 (*.f32 -1 ux) 1)
(fma.f32 -1 ux 1)
(-.f32 1 ux)
(*.f32 -1 ux)
(neg.f32 ux)
(+.f32 (*.f32 -1 ux) 1)
(fma.f32 -1 ux 1)
(-.f32 1 ux)
(+.f32 (*.f32 -1 ux) 1)
(fma.f32 -1 ux 1)
(-.f32 1 ux)
(+.f32 (*.f32 -1 ux) 1)
(fma.f32 -1 ux 1)
(-.f32 1 ux)
(*.f32 -1 ux)
(neg.f32 ux)
(+.f32 (*.f32 -1 ux) 1)
(fma.f32 -1 ux 1)
(-.f32 1 ux)
(+.f32 (*.f32 -1 ux) 1)
(fma.f32 -1 ux 1)
(-.f32 1 ux)
(+.f32 (*.f32 -1 ux) 1)
(fma.f32 -1 ux 1)
(-.f32 1 ux)
1
(+.f32 1 (*.f32 -1 (pow.f32 ux 2)))
(+.f32 1 (neg.f32 (*.f32 ux ux)))
(-.f32 1 (*.f32 ux ux))
(+.f32 1 (*.f32 -1 (pow.f32 ux 2)))
(+.f32 1 (neg.f32 (*.f32 ux ux)))
(-.f32 1 (*.f32 ux ux))
(+.f32 1 (*.f32 -1 (pow.f32 ux 2)))
(+.f32 1 (neg.f32 (*.f32 ux ux)))
(-.f32 1 (*.f32 ux ux))
(*.f32 -1 (pow.f32 ux 2))
(neg.f32 (*.f32 ux ux))
(*.f32 ux (neg.f32 ux))
(+.f32 1 (*.f32 -1 (pow.f32 ux 2)))
(+.f32 1 (neg.f32 (*.f32 ux ux)))
(-.f32 1 (*.f32 ux ux))
(+.f32 1 (*.f32 -1 (pow.f32 ux 2)))
(+.f32 1 (neg.f32 (*.f32 ux ux)))
(-.f32 1 (*.f32 ux ux))
(+.f32 1 (*.f32 -1 (pow.f32 ux 2)))
(+.f32 1 (neg.f32 (*.f32 ux ux)))
(-.f32 1 (*.f32 ux ux))
(*.f32 -1 (pow.f32 ux 2))
(neg.f32 (*.f32 ux ux))
(*.f32 ux (neg.f32 ux))
(+.f32 1 (*.f32 -1 (pow.f32 ux 2)))
(+.f32 1 (neg.f32 (*.f32 ux ux)))
(-.f32 1 (*.f32 ux ux))
(+.f32 1 (*.f32 -1 (pow.f32 ux 2)))
(+.f32 1 (neg.f32 (*.f32 ux ux)))
(-.f32 1 (*.f32 ux ux))
(+.f32 1 (*.f32 -1 (pow.f32 ux 2)))
(+.f32 1 (neg.f32 (*.f32 ux ux)))
(-.f32 1 (*.f32 ux ux))

localize42.0ms (0.7%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(+.f32 1 (+.f32 (*.f32 maxCos ux) (*.f32 -3 ux)))
0.2b
(+.f32 (*.f32 maxCos ux) (*.f32 -3 ux))
0.2b
(-.f32 (+.f32 1 (+.f32 (*.f32 maxCos ux) (*.f32 -3 ux))) (*.f32 -2 ux))
Compiler

Compiled 46 to 27 computations (41.3% saved)

series25.0ms (0.4%)

Counts
3 → 45
Calls

18 calls:

TimeVariablePointExpression
19.0ms
maxCos
@-inf
(-.f32 (+.f32 1 (+.f32 (*.f32 maxCos ux) (*.f32 -3 ux))) (*.f32 -2 ux))
1.0ms
maxCos
@0
(-.f32 (+.f32 1 (+.f32 (*.f32 maxCos ux) (*.f32 -3 ux))) (*.f32 -2 ux))
1.0ms
ux
@inf
(-.f32 (+.f32 1 (+.f32 (*.f32 maxCos ux) (*.f32 -3 ux))) (*.f32 -2 ux))
0.0ms
ux
@0
(-.f32 (+.f32 1 (+.f32 (*.f32 maxCos ux) (*.f32 -3 ux))) (*.f32 -2 ux))
0.0ms
ux
@inf
(+.f32 (*.f32 maxCos ux) (*.f32 -3 ux))

rewrite81.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
635×log-prod_binary32
417×fma-neg_binary32
349×pow2_binary32
238×pow1/3_binary32
237×expm1-udef_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01233
127528
2393828
Stop Event
node limit
Counts
3 → 167
Calls
Call 1
Inputs
(-.f32 (+.f32 1 (+.f32 (*.f32 maxCos ux) (*.f32 -3 ux))) (*.f32 -2 ux))
(+.f32 (*.f32 maxCos ux) (*.f32 -3 ux))
(+.f32 1 (+.f32 (*.f32 maxCos ux) (*.f32 -3 ux)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f32 1 (*.f32 ux (-.f32 (+.f32 maxCos -3) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 1 (*.f32 (*.f32 ux (-.f32 (+.f32 maxCos -3) -2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 ux (+.f32 maxCos -3)) (-.f32 1 (*.f32 ux -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 ux (+.f32 maxCos -3)) (+.f32 1 (*.f32 ux 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 ux (+.f32 maxCos -3) 1) (*.f32 ux 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 ux (+.f32 maxCos -3) 1) (*.f32 (*.f32 ux 2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (+.f32 1 (*.f32 ux (-.f32 (+.f32 maxCos -3) -2))) (fma.f32 (*.f32 ux 2) 1 (*.f32 ux -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (+.f32 1 (*.f32 ux (-.f32 (+.f32 maxCos -3) -2))) (fma.f32 2 ux (*.f32 ux -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (+.f32 1 (*.f32 ux (-.f32 (+.f32 maxCos -3) -2))) (fma.f32 (neg.f32 (cbrt.f32 (*.f32 ux -2))) (cbrt.f32 (*.f32 4 (*.f32 ux ux))) (*.f32 ux -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (+.f32 1 (*.f32 ux (-.f32 (+.f32 maxCos -3) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 ux 2) (fma.f32 ux (+.f32 maxCos -3) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 ux (-.f32 (+.f32 maxCos -3) -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (+.f32 1 (*.f32 maxCos ux)) (fma.f32 ux -3 (*.f32 ux 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (+.f32 1 (*.f32 maxCos ux)) (+.f32 (*.f32 ux -3) (*.f32 ux 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (pow.f32 (cbrt.f32 (exp.f32 (+.f32 1 (*.f32 ux (-.f32 (+.f32 maxCos -3) -2))))) 2)) (log.f32 (cbrt.f32 (exp.f32 (+.f32 1 (*.f32 ux (-.f32 (+.f32 maxCos -3) -2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (exp.f32 (+.f32 1 (*.f32 ux (-.f32 (+.f32 maxCos -3) -2)))))) (log.f32 (sqrt.f32 (exp.f32 (+.f32 1 (*.f32 ux (-.f32 (+.f32 maxCos -3) -2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (+.f32 1 (*.f32 ux (-.f32 (+.f32 maxCos -3) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 1 (*.f32 ux (-.f32 (+.f32 maxCos -3) -2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (+.f32 1 (*.f32 ux (-.f32 (+.f32 maxCos -3) -2)))) (pow.f32 (cbrt.f32 (+.f32 1 (*.f32 ux (-.f32 (+.f32 maxCos -3) -2)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (+.f32 1 (*.f32 ux (-.f32 (+.f32 maxCos -3) -2)))) 2) (cbrt.f32 (+.f32 1 (*.f32 ux (-.f32 (+.f32 maxCos -3) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (+.f32 1 (*.f32 ux (-.f32 (+.f32 maxCos -3) -2)))) (sqrt.f32 (+.f32 1 (*.f32 ux (-.f32 (+.f32 maxCos -3) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 (pow.f32 (fma.f32 ux (+.f32 maxCos -3) 1) 3) (*.f32 -8 (pow.f32 ux 3))) (/.f32 1 (+.f32 (pow.f32 (fma.f32 ux (+.f32 maxCos -3) 1) 2) (*.f32 (*.f32 ux -2) (+.f32 (fma.f32 ux (+.f32 maxCos -3) 1) (*.f32 ux -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 (pow.f32 (fma.f32 ux (+.f32 maxCos -3) 1) 2) (*.f32 4 (*.f32 ux ux))) (/.f32 1 (+.f32 (fma.f32 ux (+.f32 maxCos -3) 1) (*.f32 ux -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 (sqrt.f32 (fma.f32 ux (+.f32 maxCos -3) 1)) (sqrt.f32 (*.f32 ux -2))) (-.f32 (sqrt.f32 (fma.f32 ux (+.f32 maxCos -3) 1)) (sqrt.f32 (*.f32 ux -2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (+.f32 (pow.f32 (fma.f32 ux (+.f32 maxCos -3) 1) 2) (*.f32 (*.f32 ux -2) (+.f32 (fma.f32 ux (+.f32 maxCos -3) 1) (*.f32 ux -2)))) (-.f32 (pow.f32 (fma.f32 ux (+.f32 maxCos -3) 1) 3) (*.f32 -8 (pow.f32 ux 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (+.f32 (fma.f32 ux (+.f32 maxCos -3) 1) (*.f32 ux -2)) (-.f32 (pow.f32 (fma.f32 ux (+.f32 maxCos -3) 1) 2) (*.f32 4 (*.f32 ux ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (fma.f32 ux (+.f32 maxCos -3) 1) 3) (*.f32 -8 (pow.f32 ux 3))) (+.f32 (pow.f32 (fma.f32 ux (+.f32 maxCos -3) 1) 2) (*.f32 (*.f32 ux -2) (+.f32 (fma.f32 ux (+.f32 maxCos -3) 1) (*.f32 ux -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (fma.f32 ux (+.f32 maxCos -3) 1) 2) (*.f32 4 (*.f32 ux ux))) (+.f32 (fma.f32 ux (+.f32 maxCos -3) 1) (*.f32 ux -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (-.f32 (pow.f32 (fma.f32 ux (+.f32 maxCos -3) 1) 3) (*.f32 -8 (pow.f32 ux 3)))) (neg.f32 (+.f32 (pow.f32 (fma.f32 ux (+.f32 maxCos -3) 1) 2) (*.f32 (*.f32 ux -2) (+.f32 (fma.f32 ux (+.f32 maxCos -3) 1) (*.f32 ux -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (-.f32 (pow.f32 (fma.f32 ux (+.f32 maxCos -3) 1) 2) (*.f32 4 (*.f32 ux ux)))) (neg.f32 (+.f32 (fma.f32 ux (+.f32 maxCos -3) 1) (*.f32 ux -2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 1 (pow.f32 (*.f32 ux (-.f32 (+.f32 maxCos -3) -2)) 3)) (+.f32 1 (-.f32 (pow.f32 (*.f32 ux (-.f32 (+.f32 maxCos -3) -2)) 2) (*.f32 ux (-.f32 (+.f32 maxCos -3) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (fma.f32 ux (+.f32 maxCos -3) 1) 3) (pow.f32 (*.f32 ux 2) 3)) (+.f32 (pow.f32 (fma.f32 ux (+.f32 maxCos -3) 1) 2) (-.f32 (pow.f32 (*.f32 ux 2) 2) (*.f32 (fma.f32 ux (+.f32 maxCos -3) 1) (*.f32 ux 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 (+.f32 maxCos -3) -2)) 2)) (-.f32 1 (*.f32 ux (-.f32 (+.f32 maxCos -3) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (fma.f32 ux (+.f32 maxCos -3) 1) 2) (pow.f32 (*.f32 ux 2) 2)) (-.f32 (fma.f32 ux (+.f32 maxCos -3) 1) (*.f32 ux 2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (+.f32 1 (*.f32 ux (-.f32 (+.f32 maxCos -3) -2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (+.f32 1 (*.f32 ux (-.f32 (+.f32 maxCos -3) -2))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (+.f32 1 (*.f32 ux (-.f32 (+.f32 maxCos -3) -2))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (+.f32 1 (*.f32 ux (-.f32 (+.f32 maxCos -3) -2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (+.f32 1 (*.f32 ux (-.f32 (+.f32 maxCos -3) -2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (+.f32 (pow.f32 (fma.f32 ux (+.f32 maxCos -3) 1) 2) (*.f32 (*.f32 ux -2) (+.f32 (fma.f32 ux (+.f32 maxCos -3) 1) (*.f32 ux -2)))) (-.f32 (pow.f32 (fma.f32 ux (+.f32 maxCos -3) 1) 3) (*.f32 -8 (pow.f32 ux 3)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (+.f32 (fma.f32 ux (+.f32 maxCos -3) 1) (*.f32 ux -2)) (-.f32 (pow.f32 (fma.f32 ux (+.f32 maxCos -3) 1) 2) (*.f32 4 (*.f32 ux ux)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (+.f32 1 (*.f32 ux (-.f32 (+.f32 maxCos -3) -2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (+.f32 1 (*.f32 ux (-.f32 (+.f32 maxCos -3) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (+.f32 1 (*.f32 ux (-.f32 (+.f32 maxCos -3) -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (/.f32 (+.f32 1 (expm1.f32 (fma.f32 ux (+.f32 maxCos -3) 1))) (pow.f32 (exp.f32 -2) ux)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (/.f32 (exp.f32 (fma.f32 ux (+.f32 maxCos -3) 1)) (+.f32 1 (expm1.f32 (*.f32 ux -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (/.f32 (+.f32 1 (expm1.f32 (fma.f32 ux (+.f32 maxCos -3) 1))) (+.f32 1 (expm1.f32 (*.f32 ux -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (+.f32 1 (expm1.f32 (fma.f32 ux (+.f32 maxCos -3) 1))) (exp.f32 (*.f32 ux 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (exp.f32 (fma.f32 ux (+.f32 maxCos -3) 1)) (/.f32 1 (pow.f32 (exp.f32 -2) ux))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (+.f32 1 (expm1.f32 (fma.f32 ux (+.f32 maxCos -3) 1))) (/.f32 1 (pow.f32 (exp.f32 -2) ux))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (exp.f32 (*.f32 ux 2)) (exp.f32 (fma.f32 ux (+.f32 maxCos -3) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (/.f32 1 (pow.f32 (exp.f32 -2) ux)) (exp.f32 (fma.f32 ux (+.f32 maxCos -3) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (exp.f32 (*.f32 ux 2)) (+.f32 1 (expm1.f32 (fma.f32 ux (+.f32 maxCos -3) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (/.f32 1 (pow.f32 (exp.f32 -2) ux)) (+.f32 1 (expm1.f32 (fma.f32 ux (+.f32 maxCos -3) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (+.f32 1 (*.f32 ux (-.f32 (+.f32 maxCos -3) -2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (+.f32 1 (*.f32 ux (-.f32 (+.f32 maxCos -3) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (+.f32 1 (*.f32 ux (-.f32 (+.f32 maxCos -3) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log1p.f32 (*.f32 ux (-.f32 (+.f32 maxCos -3) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log1p.f32 (*.f32 ux (-.f32 (+.f32 maxCos -3) -2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (fma.f32 ux (+.f32 maxCos -3) 1) (*.f32 ux 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (fma.f32 ux (+.f32 maxCos -3) 1) 1 (*.f32 ux 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (fma.f32 ux (+.f32 maxCos -3) 1)) (pow.f32 (cbrt.f32 (fma.f32 ux (+.f32 maxCos -3) 1)) 2) (*.f32 ux 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (fma.f32 ux (+.f32 maxCos -3) 1)) 2) (cbrt.f32 (fma.f32 ux (+.f32 maxCos -3) 1)) (*.f32 ux 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (fma.f32 ux (+.f32 maxCos -3) 1)) (sqrt.f32 (fma.f32 ux (+.f32 maxCos -3) 1)) (*.f32 ux 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (+.f32 1 (pow.f32 (*.f32 ux (+.f32 maxCos -3)) 3)) (/.f32 1 (+.f32 1 (*.f32 (*.f32 ux (+.f32 maxCos -3)) (fma.f32 ux (+.f32 maxCos -3) -1)))) (*.f32 ux 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (-.f32 1 (pow.f32 (*.f32 ux (+.f32 maxCos -3)) 2)) (/.f32 1 (-.f32 1 (*.f32 ux (+.f32 maxCos -3)))) (*.f32 ux 2))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (fma.f32 ux (+.f32 maxCos -3) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 (pow.f32 (*.f32 maxCos ux) 2) (*.f32 ux (-.f32 maxCos -3))) (/.f32 (*.f32 9 (*.f32 ux ux)) (*.f32 ux (-.f32 maxCos -3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (*.f32 ux (+.f32 maxCos -3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 ux (+.f32 maxCos -3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 ux (+.f32 maxCos -3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (*.f32 ux (+.f32 maxCos -3))) (cbrt.f32 (pow.f32 (*.f32 ux (+.f32 maxCos -3)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (pow.f32 (*.f32 ux (+.f32 maxCos -3)) 2)) (cbrt.f32 (*.f32 ux (+.f32 maxCos -3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 ux) 2) (*.f32 (cbrt.f32 ux) (+.f32 maxCos -3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (*.f32 ux (+.f32 maxCos -3))) (sqrt.f32 (*.f32 ux (+.f32 maxCos -3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 ux) (*.f32 (sqrt.f32 ux) (+.f32 maxCos -3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 (pow.f32 (*.f32 maxCos ux) 3) (*.f32 -27 (pow.f32 ux 3))) (/.f32 1 (+.f32 (pow.f32 (*.f32 maxCos ux) 2) (*.f32 (*.f32 ux -3) (-.f32 (*.f32 ux -3) (*.f32 maxCos ux))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 (pow.f32 (*.f32 maxCos ux) 2) (*.f32 9 (*.f32 ux ux))) (/.f32 1 (*.f32 ux (-.f32 maxCos -3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 maxCos -3) ux)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (+.f32 (pow.f32 (*.f32 maxCos ux) 2) (*.f32 (*.f32 ux -3) (-.f32 (*.f32 ux -3) (*.f32 maxCos ux)))) (+.f32 (pow.f32 (*.f32 maxCos ux) 3) (*.f32 -27 (pow.f32 ux 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (*.f32 ux (-.f32 maxCos -3)) (-.f32 (pow.f32 (*.f32 maxCos ux) 2) (*.f32 9 (*.f32 ux ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (*.f32 maxCos ux) 3) (*.f32 -27 (pow.f32 ux 3))) (+.f32 (pow.f32 (*.f32 maxCos ux) 2) (*.f32 (*.f32 ux -3) (-.f32 (*.f32 ux -3) (*.f32 maxCos ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (*.f32 maxCos ux) 3) (*.f32 -27 (pow.f32 ux 3))) (+.f32 (*.f32 9 (*.f32 ux ux)) (-.f32 (pow.f32 (*.f32 maxCos ux) 2) (*.f32 (*.f32 maxCos ux) (*.f32 ux -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (*.f32 maxCos ux) 2) (*.f32 9 (*.f32 ux ux))) (*.f32 ux (-.f32 maxCos -3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (+.f32 (pow.f32 (*.f32 maxCos ux) 3) (*.f32 -27 (pow.f32 ux 3)))) (neg.f32 (+.f32 (pow.f32 (*.f32 maxCos ux) 2) (*.f32 (*.f32 ux -3) (-.f32 (*.f32 ux -3) (*.f32 maxCos ux))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (-.f32 (pow.f32 (*.f32 maxCos ux) 2) (*.f32 9 (*.f32 ux ux)))) (neg.f32 (*.f32 ux (-.f32 maxCos -3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (*.f32 9 (*.f32 ux ux)) (pow.f32 (*.f32 maxCos ux) 2)) (-.f32 (*.f32 ux -3) (*.f32 maxCos ux)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 ux (+.f32 maxCos -3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 ux (+.f32 maxCos -3)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 ux (+.f32 maxCos -3))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 ux (+.f32 maxCos -3))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 ux (+.f32 maxCos -3)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (+.f32 (pow.f32 (*.f32 maxCos ux) 2) (*.f32 (*.f32 ux -3) (-.f32 (*.f32 ux -3) (*.f32 maxCos ux)))) (+.f32 (pow.f32 (*.f32 maxCos ux) 3) (*.f32 -27 (pow.f32 ux 3)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (*.f32 ux (-.f32 maxCos -3)) (-.f32 (pow.f32 (*.f32 maxCos ux) 2) (*.f32 9 (*.f32 ux ux)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 ux (+.f32 maxCos -3)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 ux) (+.f32 maxCos -3)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 ux (+.f32 maxCos -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (+.f32 1 (expm1.f32 (*.f32 maxCos ux))) (pow.f32 (exp.f32 -3) ux)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (pow.f32 (exp.f32 maxCos) ux) (+.f32 1 (expm1.f32 (*.f32 ux -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (+.f32 1 (expm1.f32 (*.f32 maxCos ux))) (+.f32 1 (expm1.f32 (*.f32 ux -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (+.f32 1 (expm1.f32 (*.f32 ux -3))) (pow.f32 (exp.f32 maxCos) ux)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (pow.f32 (exp.f32 -3) ux) (+.f32 1 (expm1.f32 (*.f32 maxCos ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (+.f32 1 (expm1.f32 (*.f32 ux -3))) (+.f32 1 (expm1.f32 (*.f32 maxCos ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 ux (+.f32 maxCos -3)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 ux (+.f32 maxCos -3))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (*.f32 (log1p.f32 (*.f32 ux (+.f32 maxCos -3))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 ux (+.f32 maxCos -3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 ux (+.f32 maxCos -3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 ux (+.f32 maxCos -3))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 maxCos ux) (*.f32 ux -3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 ux -3) (*.f32 maxCos ux))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (fma.f32 ux (+.f32 maxCos -3) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 maxCos ux (*.f32 ux -3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 ux maxCos (*.f32 ux -3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 ux -3 (*.f32 maxCos ux))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 -3 ux (*.f32 maxCos ux))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (fma.f32 ux (+.f32 maxCos -3) 1) 1 -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (pow.f32 (*.f32 maxCos ux) 2)) (cbrt.f32 (*.f32 maxCos ux)) (*.f32 ux -3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (fma.f32 ux (+.f32 maxCos -3) 1)) (pow.f32 (cbrt.f32 (fma.f32 ux (+.f32 maxCos -3) 1)) 2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (fma.f32 ux (+.f32 maxCos -3) 1)) 2) (cbrt.f32 (fma.f32 ux (+.f32 maxCos -3) 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (*.f32 9 (*.f32 ux ux))) (cbrt.f32 (*.f32 ux -3)) (*.f32 maxCos ux))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 maxCos ux)) (sqrt.f32 (*.f32 maxCos ux)) (*.f32 ux -3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (fma.f32 ux (+.f32 maxCos -3) 1)) (sqrt.f32 (fma.f32 ux (+.f32 maxCos -3) 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 ux -3)) (sqrt.f32 (*.f32 ux -3)) (*.f32 maxCos ux))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (+.f32 1 (pow.f32 (*.f32 ux (+.f32 maxCos -3)) 3)) (/.f32 1 (+.f32 1 (*.f32 (*.f32 ux (+.f32 maxCos -3)) (fma.f32 ux (+.f32 maxCos -3) -1)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (-.f32 1 (pow.f32 (*.f32 ux (+.f32 maxCos -3)) 2)) (/.f32 1 (-.f32 1 (*.f32 ux (+.f32 maxCos -3)))) -1)))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (fma.f32 ux (+.f32 maxCos -3) 1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 1 (-.f32 1 (*.f32 ux (+.f32 maxCos -3)))) (/.f32 (pow.f32 (*.f32 ux (+.f32 maxCos -3)) 2) (-.f32 1 (*.f32 ux (+.f32 maxCos -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (fma.f32 ux (+.f32 maxCos -3) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (fma.f32 ux (+.f32 maxCos -3) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (fma.f32 ux (+.f32 maxCos -3) 1)) (pow.f32 (cbrt.f32 (fma.f32 ux (+.f32 maxCos -3) 1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (fma.f32 ux (+.f32 maxCos -3) 1)) 2) (cbrt.f32 (fma.f32 ux (+.f32 maxCos -3) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (fma.f32 ux (+.f32 maxCos -3) 1)) (sqrt.f32 (fma.f32 ux (+.f32 maxCos -3) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 1 (pow.f32 (*.f32 ux (+.f32 maxCos -3)) 3)) (/.f32 1 (+.f32 1 (*.f32 (*.f32 ux (+.f32 maxCos -3)) (fma.f32 ux (+.f32 maxCos -3) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 1 (pow.f32 (*.f32 ux (+.f32 maxCos -3)) 2)) (/.f32 1 (-.f32 1 (*.f32 ux (+.f32 maxCos -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (+.f32 1 (*.f32 (*.f32 ux (+.f32 maxCos -3)) (fma.f32 ux (+.f32 maxCos -3) -1))) (+.f32 1 (pow.f32 (*.f32 ux (+.f32 maxCos -3)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (-.f32 1 (*.f32 ux (+.f32 maxCos -3))) (-.f32 1 (pow.f32 (*.f32 ux (+.f32 maxCos -3)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 1 (pow.f32 (*.f32 ux (+.f32 maxCos -3)) 3)) (+.f32 1 (*.f32 (*.f32 ux (+.f32 maxCos -3)) (fma.f32 ux (+.f32 maxCos -3) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 1 (pow.f32 (*.f32 ux (+.f32 maxCos -3)) 3)) (+.f32 (pow.f32 (*.f32 ux (+.f32 maxCos -3)) 2) (-.f32 1 (*.f32 ux (+.f32 maxCos -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 1 (pow.f32 (*.f32 ux (+.f32 maxCos -3)) 2)) (-.f32 1 (*.f32 ux (+.f32 maxCos -3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (+.f32 1 (pow.f32 (*.f32 ux (+.f32 maxCos -3)) 3))) (neg.f32 (+.f32 1 (*.f32 (*.f32 ux (+.f32 maxCos -3)) (fma.f32 ux (+.f32 maxCos -3) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (-.f32 1 (pow.f32 (*.f32 ux (+.f32 maxCos -3)) 2))) (neg.f32 (-.f32 1 (*.f32 ux (+.f32 maxCos -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (+.f32 1 (*.f32 maxCos ux)) 3) (*.f32 -27 (pow.f32 ux 3))) (+.f32 (pow.f32 (+.f32 1 (*.f32 maxCos ux)) 2) (-.f32 (*.f32 9 (*.f32 ux ux)) (*.f32 (+.f32 1 (*.f32 maxCos ux)) (*.f32 ux -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (*.f32 ux (+.f32 maxCos -3)) 2) 1) (fma.f32 ux (+.f32 maxCos -3) -1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (+.f32 1 (*.f32 maxCos ux)) 2) (*.f32 9 (*.f32 ux ux))) (-.f32 (+.f32 1 (*.f32 maxCos ux)) (*.f32 ux -3)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (fma.f32 ux (+.f32 maxCos -3) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (fma.f32 ux (+.f32 maxCos -3) 1) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (fma.f32 ux (+.f32 maxCos -3) 1)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (fma.f32 ux (+.f32 maxCos -3) 1)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (fma.f32 ux (+.f32 maxCos -3) 1) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (+.f32 1 (*.f32 (*.f32 ux (+.f32 maxCos -3)) (fma.f32 ux (+.f32 maxCos -3) -1))) (+.f32 1 (pow.f32 (*.f32 ux (+.f32 maxCos -3)) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (-.f32 1 (*.f32 ux (+.f32 maxCos -3))) (-.f32 1 (pow.f32 (*.f32 ux (+.f32 maxCos -3)) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (fma.f32 ux (+.f32 maxCos -3) 1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (fma.f32 ux (+.f32 maxCos -3) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (fma.f32 ux (+.f32 maxCos -3) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (pow.f32 (exp.f32 -3) ux) (exp.f32 (+.f32 1 (*.f32 maxCos ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (+.f32 1 (expm1.f32 (*.f32 ux -3))) (exp.f32 (+.f32 1 (*.f32 maxCos ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (exp.f32 (+.f32 1 (*.f32 maxCos ux))) (+.f32 1 (expm1.f32 (*.f32 ux -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (fma.f32 ux (+.f32 maxCos -3) 1) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (fma.f32 ux (+.f32 maxCos -3) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (fma.f32 ux (+.f32 maxCos -3) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log1p.f32 (*.f32 ux (+.f32 maxCos -3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log1p.f32 (*.f32 ux (+.f32 maxCos -3))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 ux (+.f32 maxCos -3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 ux (+.f32 maxCos -3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (pow.f32 (*.f32 ux (+.f32 maxCos -3)) 2)) (cbrt.f32 (*.f32 ux (+.f32 maxCos -3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 ux (+.f32 maxCos -3))) (sqrt.f32 (*.f32 ux (+.f32 maxCos -3))) 1)))))

simplify62.0ms (1.1%)

Algorithm
egg-herbie
Rules
523×distribute-rgt-in_binary32
487×fma-neg_binary32
475×distribute-lft-in_binary32
397×associate-+l+_binary32
366×associate-+r+_binary32
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
028342
175297
2199295
3491295
41863295
57820295
Stop Event
node limit
Counts
212 → 187
Calls
Call 1
Inputs
(-.f32 (+.f32 1 (*.f32 -3 ux)) (*.f32 -2 ux))
(*.f32 maxCos ux)
(*.f32 maxCos ux)
1
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(*.f32 (-.f32 maxCos 1) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(*.f32 -1 (*.f32 ux (+.f32 1 (*.f32 -1 maxCos))))
(+.f32 1 (*.f32 -1 (*.f32 ux (+.f32 1 (*.f32 -1 maxCos)))))
(+.f32 1 (*.f32 -1 (*.f32 ux (+.f32 1 (*.f32 -1 maxCos)))))
(+.f32 1 (*.f32 -1 (*.f32 ux (+.f32 1 (*.f32 -1 maxCos)))))
(*.f32 -3 ux)
(*.f32 maxCos ux)
(*.f32 maxCos ux)
(*.f32 ux (-.f32 maxCos 3))
(*.f32 ux (-.f32 maxCos 3))
(*.f32 ux (-.f32 maxCos 3))
(*.f32 ux (-.f32 maxCos 3))
(*.f32 ux (-.f32 maxCos 3))
(*.f32 ux (-.f32 maxCos 3))
(*.f32 ux (-.f32 maxCos 3))
(*.f32 ux (-.f32 maxCos 3))
(*.f32 -1 (*.f32 ux (+.f32 3 (*.f32 -1 maxCos))))
(*.f32 -1 (*.f32 ux (+.f32 3 (*.f32 -1 maxCos))))
(*.f32 -1 (*.f32 ux (+.f32 3 (*.f32 -1 maxCos))))
(*.f32 -1 (*.f32 ux (+.f32 3 (*.f32 -1 maxCos))))
(+.f32 1 (*.f32 -3 ux))
(*.f32 maxCos ux)
(*.f32 maxCos ux)
1
(+.f32 1 (*.f32 ux (-.f32 maxCos 3)))
(+.f32 1 (*.f32 ux (-.f32 maxCos 3)))
(+.f32 1 (*.f32 ux (-.f32 maxCos 3)))
(*.f32 ux (-.f32 maxCos 3))
(+.f32 1 (*.f32 ux (-.f32 maxCos 3)))
(+.f32 1 (*.f32 ux (-.f32 maxCos 3)))
(+.f32 1 (*.f32 ux (-.f32 maxCos 3)))
(*.f32 -1 (*.f32 ux (+.f32 3 (*.f32 -1 maxCos))))
(+.f32 1 (*.f32 -1 (*.f32 ux (+.f32 3 (*.f32 -1 maxCos)))))
(+.f32 1 (*.f32 -1 (*.f32 ux (+.f32 3 (*.f32 -1 maxCos)))))
(+.f32 1 (*.f32 -1 (*.f32 ux (+.f32 3 (*.f32 -1 maxCos)))))
Outputs
(-.f32 (+.f32 1 (*.f32 -3 ux)) (*.f32 -2 ux))
(+.f32 1 (-.f32 (*.f32 -3 ux) (*.f32 ux -2)))
(+.f32 1 (neg.f32 ux))
(-.f32 1 ux)
(*.f32 maxCos ux)
(*.f32 ux maxCos)
(*.f32 maxCos ux)
(*.f32 ux maxCos)
1
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(fma.f32 ux (+.f32 maxCos -1) 1)
(-.f32 (fma.f32 ux maxCos 1) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(fma.f32 ux (+.f32 maxCos -1) 1)
(-.f32 (fma.f32 ux maxCos 1) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(fma.f32 ux (+.f32 maxCos -1) 1)
(-.f32 (fma.f32 ux maxCos 1) ux)
(*.f32 (-.f32 maxCos 1) ux)
(*.f32 ux (+.f32 maxCos -1))
(-.f32 (*.f32 ux maxCos) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(fma.f32 ux (+.f32 maxCos -1) 1)
(-.f32 (fma.f32 ux maxCos 1) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(fma.f32 ux (+.f32 maxCos -1) 1)
(-.f32 (fma.f32 ux maxCos 1) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(fma.f32 ux (+.f32 maxCos -1) 1)
(-.f32 (fma.f32 ux maxCos 1) ux)
(*.f32 -1 (*.f32 ux (+.f32 1 (*.f32 -1 maxCos))))
(*.f32 ux (+.f32 maxCos -1))
(-.f32 (*.f32 ux maxCos) ux)
(+.f32 1 (*.f32 -1 (*.f32 ux (+.f32 1 (*.f32 -1 maxCos)))))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(fma.f32 ux (+.f32 maxCos -1) 1)
(-.f32 (fma.f32 ux maxCos 1) ux)
(+.f32 1 (*.f32 -1 (*.f32 ux (+.f32 1 (*.f32 -1 maxCos)))))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(fma.f32 ux (+.f32 maxCos -1) 1)
(-.f32 (fma.f32 ux maxCos 1) ux)
(+.f32 1 (*.f32 -1 (*.f32 ux (+.f32 1 (*.f32 -1 maxCos)))))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(fma.f32 ux (+.f32 maxCos -1) 1)
(-.f32 (fma.f32 ux maxCos 1) ux)
(*.f32 -3 ux)
(*.f32 maxCos ux)
(*.f32 ux maxCos)
(*.f32 maxCos ux)
(*.f32 ux maxCos)
(*.f32 ux (-.f32 maxCos 3))
(*.f32 ux (+.f32 maxCos -3))
(*.f32 ux (+.f32 -3 maxCos))
(*.f32 ux (-.f32 maxCos 3))
(*.f32 ux (+.f32 maxCos -3))
(*.f32 ux (+.f32 -3 maxCos))
(*.f32 ux (-.f32 maxCos 3))
(*.f32 ux (+.f32 maxCos -3))
(*.f32 ux (+.f32 -3 maxCos))
(*.f32 ux (-.f32 maxCos 3))
(*.f32 ux (+.f32 maxCos -3))
(*.f32 ux (+.f32 -3 maxCos))
(*.f32 ux (-.f32 maxCos 3))
(*.f32 ux (+.f32 maxCos -3))
(*.f32 ux (+.f32 -3 maxCos))
(*.f32 ux (-.f32 maxCos 3))
(*.f32 ux (+.f32 maxCos -3))
(*.f32 ux (+.f32 -3 maxCos))
(*.f32 ux (-.f32 maxCos 3))
(*.f32 ux (+.f32 maxCos -3))
(*.f32 ux (+.f32 -3 maxCos))
(*.f32 ux (-.f32 maxCos 3))
(*.f32 ux (+.f32 maxCos -3))
(*.f32 ux (+.f32 -3 maxCos))
(*.f32 -1 (*.f32 ux (+.f32 3 (*.f32 -1 maxCos))))
(*.f32 ux (+.f32 maxCos -3))
(*.f32 ux (+.f32 -3 maxCos))
(*.f32 -1 (*.f32 ux (+.f32 3 (*.f32 -1 maxCos))))
(*.f32 ux (+.f32 maxCos -3))
(*.f32 ux (+.f32 -3 maxCos))
(*.f32 -1 (*.f32 ux (+.f32 3 (*.f32 -1 maxCos))))
(*.f32 ux (+.f32 maxCos -3))
(*.f32 ux (+.f32 -3 maxCos))
(*.f32 -1 (*.f32 ux (+.f32 3 (*.f32 -1 maxCos))))
(*.f32 ux (+.f32 maxCos -3))
(*.f32 ux (+.f32 -3 maxCos))
(+.f32 1 (*.f32 -3 ux))
(fma.f32 -3 ux 1)
(*.f32 maxCos ux)
(*.f32 ux maxCos)
(*.f32 maxCos ux)
(*.f32 ux maxCos)
1
(+.f32 1 (*.f32 ux (-.f32 maxCos 3)))
(+.f32 1 (*.f32 ux (+.f32 maxCos -3)))
(fma.f32 ux (+.f32 -3 maxCos) 1)
(+.f32 1 (*.f32 ux (-.f32 maxCos 3)))
(+.f32 1 (*.f32 ux (+.f32 maxCos -3)))
(fma.f32 ux (+.f32 -3 maxCos) 1)
(+.f32 1 (*.f32 ux (-.f32 maxCos 3)))
(+.f32 1 (*.f32 ux (+.f32 maxCos -3)))
(fma.f32 ux (+.f32 -3 maxCos) 1)
(*.f32 ux (-.f32 maxCos 3))
(*.f32 ux (+.f32 maxCos -3))
(*.f32 ux (+.f32 -3 maxCos))
(+.f32 1 (*.f32 ux (-.f32 maxCos 3)))
(+.f32 1 (*.f32 ux (+.f32 maxCos -3)))
(fma.f32 ux (+.f32 -3 maxCos) 1)
(+.f32 1 (*.f32 ux (-.f32 maxCos 3)))
(+.f32 1 (*.f32 ux (+.f32 maxCos -3)))
(fma.f32 ux (+.f32 -3 maxCos) 1)
(+.f32 1 (*.f32 ux (-.f32 maxCos 3)))
(+.f32 1 (*.f32 ux (+.f32 maxCos -3)))
(fma.f32 ux (+.f32 -3 maxCos) 1)
(*.f32 -1 (*.f32 ux (+.f32 3 (*.f32 -1 maxCos))))
(*.f32 ux (+.f32 maxCos -3))
(*.f32 ux (+.f32 -3 maxCos))
(+.f32 1 (*.f32 -1 (*.f32 ux (+.f32 3 (*.f32 -1 maxCos)))))
(+.f32 1 (*.f32 ux (+.f32 maxCos -3)))
(fma.f32 ux (+.f32 -3 maxCos) 1)
(+.f32 1 (*.f32 -1 (*.f32 ux (+.f32 3 (*.f32 -1 maxCos)))))
(+.f32 1 (*.f32 ux (+.f32 maxCos -3)))
(fma.f32 ux (+.f32 -3 maxCos) 1)
(+.f32 1 (*.f32 -1 (*.f32 ux (+.f32 3 (*.f32 -1 maxCos)))))
(+.f32 1 (*.f32 ux (+.f32 maxCos -3)))
(fma.f32 ux (+.f32 -3 maxCos) 1)

eval164.0ms (2.8%)

Compiler

Compiled 5085 to 3653 computations (28.2% saved)

prune89.0ms (1.5%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New3032305
Fresh101
Picked101
Done123
Total3064310
Error
0b
Counts
310 → 4
Alt Table
Click to see full alt table
StatusErrorProgram
9.3b
1
0.0b
(-.f32 1 (*.f32 ux (-.f32 1 maxCos)))
0.7b
(-.f32 (+.f32 1 (*.f32 -3 ux)) (*.f32 -2 ux))
0.5b
(-.f32 1 ux)
Compiler

Compiled 32 to 27 computations (15.6% saved)

regimes119.0ms (2%)

Counts
17 → 1
Calls
Call 1
Inputs
1
1
1
1
(-.f32 1 ux)
(-.f32 1 (*.f32 ux (-.f32 1 maxCos)))
(+.f32 (-.f32 1 ux) (*.f32 ux maxCos))
(-.f32 (+.f32 1 (*.f32 -3 ux)) (*.f32 -2 ux))
(*.f32 (-.f32 1 (*.f32 ux ux)) (/.f32 1 (+.f32 1 ux)))
(-.f32 (+.f32 1 (+.f32 (*.f32 maxCos ux) (*.f32 -3 ux))) (*.f32 -2 ux))
(/.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 (-.f32 1 maxCos) (*.f32 ux ux))) (-.f32 1 maxCos))) (+.f32 1 (+.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 ux (-.f32 1 maxCos))) (*.f32 ux (-.f32 1 maxCos)))))
(-.f32 (fma.f32 ux maxCos 1) ux)
(/.f32 1 (/.f32 (-.f32 1 (+.f32 ux (*.f32 ux maxCos))) (-.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 (*.f32 ux ux) maxCos) maxCos))))
(/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (+.f32 1 (+.f32 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 ux (-.f32 1 maxCos))) (*.f32 ux (-.f32 1 maxCos)))))
(pow.f32 (cbrt.f32 (-.f32 1 ux)) 3)
(/.f32 1 (/.f32 (-.f32 1 (+.f32 ux (*.f32 ux maxCos))) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))))
(pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 3)
Outputs
(-.f32 1 (*.f32 ux (-.f32 1 maxCos)))
Calls

5 calls:

55.0ms
uy
28.0ms
(+.f32 (-.f32 1 ux) (*.f32 ux maxCos))
10.0ms
ux
9.0ms
maxCos
9.0ms
(+.f32 (-.f32 1 ux) (*.f32 ux maxCos))
Results
ErrorSegmentsBranch
0.0b1ux
0.0b1uy
0.0b1maxCos
0.0b1(+.f32 (-.f32 1 ux) (*.f32 ux maxCos))
0.0b1(+.f32 (-.f32 1 ux) (*.f32 ux maxCos))
Compiler

Compiled 222 to 151 computations (32% saved)

regimes19.0ms (0.3%)

Counts
5 → 1
Calls
Call 1
Inputs
1
1
1
1
(-.f32 1 ux)
Outputs
(-.f32 1 ux)
Calls

3 calls:

9.0ms
maxCos
4.0ms
uy
4.0ms
ux
Results
ErrorSegmentsBranch
0.5b1ux
0.5b1uy
0.5b1maxCos
Compiler

Compiled 22 to 18 computations (18.2% saved)

regimes27.0ms (0.4%)

Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0.0b (-0%)

Counts
4 → 1
Calls
Call 1
Inputs
1
1
1
1
Outputs
1
Calls

3 calls:

18.0ms
maxCos
4.0ms
ux
4.0ms
uy
Results
ErrorSegmentsBranch
9.3b1ux
9.3b1uy
9.3b1maxCos
Compiler

Compiled 19 to 16 computations (15.8% saved)

simplify4.0ms (0.1%)

Algorithm
egg-herbie
Rules
+-commutative_binary32
sub-neg_binary32
distribute-neg-in_binary32
cancel-sign-sub-inv_binary32
*-commutative_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0815
11915
23415
34615
46215
57215
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(-.f32 1 (*.f32 ux (-.f32 1 maxCos)))
(-.f32 1 ux)
1
Outputs
(-.f32 1 (*.f32 ux (-.f32 1 maxCos)))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 1 ux)
1
Compiler

Compiled 20 to 17 computations (15% saved)

soundness0.0ms (0%)

end25.0ms (0.4%)

Compiler

Compiled 14 to 11 computations (21.4% saved)

Profiling

Loading profile data...