Details

Time bar (total: 2.9s)

analyze1.0ms (0%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%0.1%99.9%0%0%0%0
100%0.1%0%99.9%0%0%0%1
Compiler

Compiled 33 to 24 computations (27.3% saved)

sample1.3s (45%)

Results
1.3s8256×body256valid
Bogosity

preprocess84.0ms (2.9%)

Algorithm
egg-herbie
Rules
1238×fma-def
528×associate--r+
478×associate-+r+
390×associate-+l+
340×associate-+l-
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01776
14260
210960
322360
454160
5147160
6282360
7305260
8311460
9312560
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 (fma.f32 ux maxCos 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 1 maxCos) (*.f32 ux maxCos))
(fma.f32 ux maxCos (-.f32 1 maxCos))
(-.f32 (fma.f32 ux maxCos 1) maxCos)
(+.f32 (-.f32 1 ux) (*.f32 ux uy))
(fma.f32 ux uy (-.f32 1 ux))
(-.f32 (fma.f32 ux uy 1) ux)
Compiler

Compiled 13 to 10 computations (23.1% saved)

simplify34.0ms (1.2%)

Algorithm
egg-herbie
Rules
392×fma-def
162×associate--r+
148×associate-+r+
134×associate-+l+
130×associate-+l-
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0819
11715
23815
37415
416715
544215
689115
7108815
8111415
9111915
Stop Event
saturated
Counts
1 → 3
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 22 to 13 computations (40.9% saved)

prune1.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

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

Compiled 19 to 13 computations (31.6% saved)

localize18.0ms (0.6%)

Local error

Found 1 expressions with local error:

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

Compiled 19 to 10 computations (47.4% saved)

series2.0ms (0.1%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
0.0ms
ux
@inf
(+.f32 (-.f32 1 ux) (*.f32 ux maxCos))
0.0ms
ux
@-inf
(+.f32 (-.f32 1 ux) (*.f32 ux maxCos))
0.0ms
ux
@0
(+.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))

rewrite71.0ms (2.5%)

Algorithm
batch-egg-rewrite
Rules
816×associate-*r/
814×*-commutative
732×associate-*l/
662×distribute-lft-in
648×distribute-rgt-in
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0819
117415
2240515
Stop Event
node limit
Counts
1 → 97
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 ux) (*.f32 ux (neg.f32 maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (fma.f32 ux maxCos (-.f32 1 ux)) (fma.f32 (*.f32 ux (neg.f32 maxCos)) 1 (*.f32 ux maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (fma.f32 ux maxCos (-.f32 1 ux)) (fma.f32 (neg.f32 maxCos) ux (*.f32 ux maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (fma.f32 ux maxCos (-.f32 1 ux)) (fma.f32 (neg.f32 ux) maxCos (*.f32 ux maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (fma.f32 ux maxCos (-.f32 1 ux)) (fma.f32 (neg.f32 (sqrt.f32 (*.f32 ux maxCos))) (sqrt.f32 (*.f32 ux maxCos)) (*.f32 ux maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (fma.f32 ux maxCos (-.f32 1 ux)) (fma.f32 (neg.f32 (cbrt.f32 (*.f32 ux maxCos))) (pow.f32 (cbrt.f32 (*.f32 ux maxCos)) 2) (*.f32 ux maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log.f32 (-.f32 2 ux))) (-.f32 1 (*.f32 ux maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 ux maxCos))) (-.f32 1 (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (*.f32 ux maxCos)) ux)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 1 (+.f32 1 ux)) (-.f32 (/.f32 ux (/.f32 (+.f32 1 ux) ux)) (*.f32 ux maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 1 (+.f32 1 (fma.f32 ux ux ux))) (-.f32 (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux))) (*.f32 ux maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 (pow.f32 (-.f32 1 ux) 2) (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))) (/.f32 (pow.f32 (*.f32 ux maxCos) 2) (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 (-.f32 1 ux) (exp.f32 (log1p.f32 (*.f32 ux maxCos)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 (*.f32 ux maxCos) (exp.f32 (log.f32 (-.f32 2 ux)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 (*.f32 ux maxCos) (/.f32 1 (+.f32 1 ux))) (/.f32 ux (/.f32 (+.f32 1 ux) ux)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 (*.f32 ux maxCos) (/.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 (+.f32 1 (*.f32 ux maxCos)) 0) 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 (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 (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 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (/.f32 1 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))))))) (#(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 (*.f32 ux maxCos) 1) ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))) (-.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) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)))) (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) (fma.f32 ux maxCos (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3))) (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (fma.f32 ux maxCos (-.f32 1 ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)) (-.f32 (*.f32 (-.f32 1 ux) (pow.f32 (-.f32 1 ux) 3)) (*.f32 (pow.f32 (*.f32 ux maxCos) 2) (*.f32 (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))))) (-.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)) (+.f32 (pow.f32 (pow.f32 (-.f32 1 ux) 2) 3) (pow.f32 (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)) 3))) (+.f32 (*.f32 (-.f32 1 ux) (pow.f32 (-.f32 1 ux) 3)) (*.f32 (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)) (-.f32 (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)) (pow.f32 (-.f32 1 ux) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 1 (fma.f32 ux maxCos (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (fma.f32 ux maxCos (-.f32 1 ux)) (/.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos))) (-.f32 1 (*.f32 ux (+.f32 1 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 1 maxCos))))))) (#(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 (*.f32 ux maxCos) 1) ux))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))) (/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))) (fma.f32 ux maxCos (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (sqrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3))) (/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))) (sqrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (sqrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) (/.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos))) (sqrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3))) (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)))) (/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))) (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) (/.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos))) (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 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (-.f32 1 ux) 3)) (*.f32 (pow.f32 (*.f32 ux maxCos) 3) (pow.f32 (*.f32 ux maxCos) 3))) (*.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))) (-.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (pow.f32 (-.f32 1 ux) 2)) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (*.f32 (-.f32 1 ux) (pow.f32 (-.f32 1 ux) 3)) (*.f32 (*.f32 ux maxCos) (pow.f32 (*.f32 ux maxCos) 3))) (*.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos))) (+.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))))))) (#(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 (pow.f32 (-.f32 1 ux) 3) 3) (pow.f32 (pow.f32 (*.f32 ux maxCos) 3) 3)) (*.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))) (+.f32 (*.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (-.f32 1 ux) 3)) (*.f32 (pow.f32 (*.f32 ux maxCos) 3) (-.f32 (pow.f32 (*.f32 ux maxCos) 3) (pow.f32 (-.f32 1 ux) 3))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (pow.f32 (-.f32 1 ux) 2) 3) (pow.f32 (pow.f32 (*.f32 ux maxCos) 2) 3)) (*.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos))) (+.f32 (*.f32 (-.f32 1 ux) (pow.f32 (-.f32 1 ux) 3)) (*.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 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 (neg.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) (neg.f32 (-.f32 1 (*.f32 ux (+.f32 1 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 (*.f32 ux maxCos) 1) ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 1 (-.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 1 (-.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 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (sqrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)))) (sqrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (sqrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) (sqrt.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2) (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)))) (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2) (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) (cbrt.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (pow.f32 (-.f32 1 ux) 2)) 1) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 1 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 ux (-.f32 1 maxCos)))) 1) (+.f32 1 (*.f32 ux (-.f32 1 maxCos))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) 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 (neg.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) 1) (neg.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (neg.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3))) 1) (neg.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (sqrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3))) (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (sqrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (sqrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (sqrt.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3))) (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)) (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)) (cbrt.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 (*.f32 (-.f32 1 ux) (pow.f32 (-.f32 1 ux) 3)) (*.f32 (*.f32 ux maxCos) (pow.f32 (*.f32 ux maxCos) 3))) (/.f32 1 (-.f32 1 (*.f32 ux (+.f32 1 maxCos))))) (+.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 (pow.f32 (-.f32 1 ux) 2) 3) (pow.f32 (pow.f32 (*.f32 ux maxCos) 2) 3)) (/.f32 1 (-.f32 1 (*.f32 ux (+.f32 1 maxCos))))) (+.f32 (*.f32 (-.f32 1 ux) (pow.f32 (-.f32 1 ux) 3)) (*.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 (*.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (-.f32 1 ux) 3)) (*.f32 (pow.f32 (*.f32 ux maxCos) 3) (pow.f32 (*.f32 ux maxCos) 3))) (/.f32 1 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))))) (-.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (+.f32 (pow.f32 (pow.f32 (-.f32 1 ux) 3) 3) (pow.f32 (pow.f32 (*.f32 ux maxCos) 3) 3)) (/.f32 1 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))))) (+.f32 (*.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (-.f32 1 ux) 3)) (*.f32 (pow.f32 (*.f32 ux maxCos) 3) (-.f32 (pow.f32 (*.f32 ux maxCos) 3) (pow.f32 (-.f32 1 ux) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) 1) (-.f32 1 (*.f32 ux (+.f32 1 maxCos))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (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 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (*.f32 (cbrt.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))) (cbrt.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))))) (cbrt.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (+.f32 (sqrt.f32 (-.f32 1 ux)) (sqrt.f32 (*.f32 ux maxCos)))) (-.f32 (sqrt.f32 (-.f32 1 ux)) (sqrt.f32 (*.f32 ux maxCos))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)) 1) (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)) (sqrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))))) (sqrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)) (*.f32 (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)))) (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)))))) (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 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 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)))) (#(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 neg.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (neg.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos))))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f32 (/.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 (*.f32 ux maxCos) 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 log.f32 (+.f32 1 (expm1.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 exp.f32 (log.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 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 (sqrt.f32 (-.f32 1 ux)) (sqrt.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 (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 (pow.f32 (cbrt.f32 (*.f32 ux maxCos)) 2) (cbrt.f32 (*.f32 ux maxCos)) (-.f32 1 ux))))))

simplify86.0ms (3%)

Algorithm
egg-herbie
Rules
1626×associate-*r/
1312×associate-*l/
652×+-commutative
628×associate-+l+
598×associate-+r+
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02916003
18605349
238675349
Stop Event
node limit
Counts
121 → 177
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)
(-.f32 1 (*.f32 ux (-.f32 1 maxCos)))
(-.f32 (-.f32 1 ux) (*.f32 ux (neg.f32 maxCos)))
(-.f32 (fma.f32 ux maxCos (-.f32 1 ux)) (fma.f32 (*.f32 ux (neg.f32 maxCos)) 1 (*.f32 ux maxCos)))
(-.f32 (fma.f32 ux maxCos (-.f32 1 ux)) (fma.f32 (neg.f32 maxCos) ux (*.f32 ux maxCos)))
(-.f32 (fma.f32 ux maxCos (-.f32 1 ux)) (fma.f32 (neg.f32 ux) maxCos (*.f32 ux maxCos)))
(-.f32 (fma.f32 ux maxCos (-.f32 1 ux)) (fma.f32 (neg.f32 (sqrt.f32 (*.f32 ux maxCos))) (sqrt.f32 (*.f32 ux maxCos)) (*.f32 ux maxCos)))
(-.f32 (fma.f32 ux maxCos (-.f32 1 ux)) (fma.f32 (neg.f32 (cbrt.f32 (*.f32 ux maxCos))) (pow.f32 (cbrt.f32 (*.f32 ux maxCos)) 2) (*.f32 ux maxCos)))
(-.f32 (exp.f32 (log.f32 (-.f32 2 ux))) (-.f32 1 (*.f32 ux maxCos)))
(-.f32 (exp.f32 (log1p.f32 (*.f32 ux maxCos))) (-.f32 1 (-.f32 1 ux)))
(-.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 1)
(-.f32 (+.f32 1 (*.f32 ux maxCos)) ux)
(-.f32 (/.f32 1 (+.f32 1 ux)) (-.f32 (/.f32 ux (/.f32 (+.f32 1 ux) ux)) (*.f32 ux maxCos)))
(-.f32 (/.f32 1 (+.f32 1 (fma.f32 ux ux ux))) (-.f32 (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux))) (*.f32 ux maxCos)))
(-.f32 (/.f32 (pow.f32 (-.f32 1 ux) 2) (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))) (/.f32 (pow.f32 (*.f32 ux maxCos) 2) (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))))
(-.f32 (+.f32 (-.f32 1 ux) (exp.f32 (log1p.f32 (*.f32 ux maxCos)))) 1)
(-.f32 (+.f32 (*.f32 ux maxCos) (exp.f32 (log.f32 (-.f32 2 ux)))) 1)
(-.f32 (+.f32 (*.f32 ux maxCos) (/.f32 1 (+.f32 1 ux))) (/.f32 ux (/.f32 (+.f32 1 ux) ux)))
(-.f32 (+.f32 (*.f32 ux maxCos) (/.f32 1 (+.f32 1 (fma.f32 ux ux ux)))) (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux))))
(-.f32 (+.f32 (+.f32 1 (*.f32 ux maxCos)) 0) ux)
(*.f32 1 (fma.f32 ux maxCos (-.f32 1 ux)))
(*.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1)
(*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(*.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2))
(*.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(*.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (/.f32 1 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))))
(*.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 (*.f32 ux maxCos) 1) ux)))))
(*.f32 (/.f32 1 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))
(*.f32 (/.f32 1 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)))) (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)))
(*.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) (fma.f32 ux maxCos (-.f32 1 ux)))
(*.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3))) (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (fma.f32 ux maxCos (-.f32 1 ux)))))
(*.f32 (/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)) (-.f32 (*.f32 (-.f32 1 ux) (pow.f32 (-.f32 1 ux) 3)) (*.f32 (pow.f32 (*.f32 ux maxCos) 2) (*.f32 (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))))) (-.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))))
(*.f32 (/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)) (+.f32 (pow.f32 (pow.f32 (-.f32 1 ux) 2) 3) (pow.f32 (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)) 3))) (+.f32 (*.f32 (-.f32 1 ux) (pow.f32 (-.f32 1 ux) 3)) (*.f32 (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)) (-.f32 (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)) (pow.f32 (-.f32 1 ux) 2)))))
(/.f32 1 (/.f32 1 (fma.f32 ux maxCos (-.f32 1 ux))))
(/.f32 (fma.f32 ux maxCos (-.f32 1 ux)) (/.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos))) (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))))
(/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (*.f32 ux (+.f32 1 maxCos))))
(/.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 (*.f32 ux maxCos) 1) ux))))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))) (/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))) (fma.f32 ux maxCos (-.f32 1 ux))))
(/.f32 (sqrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3))) (/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))) (sqrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)))))
(/.f32 (sqrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) (/.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos))) (sqrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))
(/.f32 (*.f32 (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3))) (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)))) (/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))) (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)))))
(/.f32 (*.f32 (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) (/.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos))) (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))
(/.f32 (-.f32 (*.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (-.f32 1 ux) 3)) (*.f32 (pow.f32 (*.f32 ux maxCos) 3) (pow.f32 (*.f32 ux maxCos) 3))) (*.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))) (-.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3))))
(/.f32 (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (pow.f32 (-.f32 1 ux) 2)) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))
(/.f32 (-.f32 (*.f32 (-.f32 1 ux) (pow.f32 (-.f32 1 ux) 3)) (*.f32 (*.f32 ux maxCos) (pow.f32 (*.f32 ux maxCos) 3))) (*.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos))) (+.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))))
(/.f32 (-.f32 1 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 ux (-.f32 1 maxCos)))) (+.f32 1 (*.f32 ux (-.f32 1 maxCos))))
(/.f32 (+.f32 (pow.f32 (pow.f32 (-.f32 1 ux) 3) 3) (pow.f32 (pow.f32 (*.f32 ux maxCos) 3) 3)) (*.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))) (+.f32 (*.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (-.f32 1 ux) 3)) (*.f32 (pow.f32 (*.f32 ux maxCos) 3) (-.f32 (pow.f32 (*.f32 ux maxCos) 3) (pow.f32 (-.f32 1 ux) 3))))))
(/.f32 (-.f32 (pow.f32 (pow.f32 (-.f32 1 ux) 2) 3) (pow.f32 (pow.f32 (*.f32 ux maxCos) 2) 3)) (*.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos))) (+.f32 (*.f32 (-.f32 1 ux) (pow.f32 (-.f32 1 ux) 3)) (*.f32 (pow.f32 (*.f32 ux maxCos) 2) (+.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))))))
(/.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))))))
(/.f32 (neg.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) (neg.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))))
(/.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 (*.f32 ux maxCos) 1) ux)))))
(/.f32 (*.f32 1 (-.f32 1 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 ux (-.f32 1 maxCos))))) (+.f32 1 (*.f32 ux (-.f32 1 maxCos))))
(/.f32 (*.f32 1 (-.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))))))
(/.f32 (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (sqrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)))) (sqrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)))))
(/.f32 (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (sqrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) (sqrt.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))))
(/.f32 (*.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2) (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)))) (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)))))
(/.f32 (*.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2) (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) (cbrt.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))))
(/.f32 (*.f32 (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (pow.f32 (-.f32 1 ux) 2)) 1) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))
(/.f32 (*.f32 (-.f32 1 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 ux (-.f32 1 maxCos)))) 1) (+.f32 1 (*.f32 ux (-.f32 1 maxCos))))
(/.f32 (*.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) 1) (+.f32 1 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (+.f32 1 (*.f32 ux (-.f32 1 maxCos))))))
(/.f32 (*.f32 (neg.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) 1) (neg.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))))
(/.f32 (*.f32 (neg.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3))) 1) (neg.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)))))
(/.f32 (*.f32 (sqrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3))) (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (sqrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)))))
(/.f32 (*.f32 (sqrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (sqrt.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))))
(/.f32 (*.f32 (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3))) (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)) (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)))))
(/.f32 (*.f32 (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)) (cbrt.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))))
(/.f32 (*.f32 (-.f32 (*.f32 (-.f32 1 ux) (pow.f32 (-.f32 1 ux) 3)) (*.f32 (*.f32 ux maxCos) (pow.f32 (*.f32 ux maxCos) 3))) (/.f32 1 (-.f32 1 (*.f32 ux (+.f32 1 maxCos))))) (+.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))
(/.f32 (*.f32 (-.f32 (pow.f32 (pow.f32 (-.f32 1 ux) 2) 3) (pow.f32 (pow.f32 (*.f32 ux maxCos) 2) 3)) (/.f32 1 (-.f32 1 (*.f32 ux (+.f32 1 maxCos))))) (+.f32 (*.f32 (-.f32 1 ux) (pow.f32 (-.f32 1 ux) 3)) (*.f32 (pow.f32 (*.f32 ux maxCos) 2) (+.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))
(/.f32 (*.f32 (-.f32 (*.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (-.f32 1 ux) 3)) (*.f32 (pow.f32 (*.f32 ux maxCos) 3) (pow.f32 (*.f32 ux maxCos) 3))) (/.f32 1 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))))) (-.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)))
(/.f32 (*.f32 (+.f32 (pow.f32 (pow.f32 (-.f32 1 ux) 3) 3) (pow.f32 (pow.f32 (*.f32 ux maxCos) 3) 3)) (/.f32 1 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))))) (+.f32 (*.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (-.f32 1 ux) 3)) (*.f32 (pow.f32 (*.f32 ux maxCos) 3) (-.f32 (pow.f32 (*.f32 ux maxCos) 3) (pow.f32 (-.f32 1 ux) 3)))))
(/.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) 1) (-.f32 1 (*.f32 ux (+.f32 1 maxCos))))
(/.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (sqrt.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos))))) (sqrt.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))))
(/.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (*.f32 (cbrt.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))) (cbrt.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))))) (cbrt.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))))
(/.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (+.f32 (sqrt.f32 (-.f32 1 ux)) (sqrt.f32 (*.f32 ux maxCos)))) (-.f32 (sqrt.f32 (-.f32 1 ux)) (sqrt.f32 (*.f32 ux maxCos))))
(/.f32 (/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)) 1) (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))))
(/.f32 (/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)) (sqrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))))) (sqrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)))))
(/.f32 (/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)) (*.f32 (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)))) (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)))))) (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)))))
(pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1)
(pow.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)
(pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 3)
(pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3) 1/3)
(neg.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (neg.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos))))))
(neg.f32 (/.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 (*.f32 ux maxCos) 1) ux))))))
(sqrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2))
(log.f32 (exp.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(log.f32 (+.f32 1 (expm1.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))
(cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3))
(expm1.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(exp.f32 (log.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(log1p.f32 (expm1.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(fma.f32 1 (-.f32 1 ux) (*.f32 ux maxCos))
(fma.f32 1 (*.f32 ux maxCos) (-.f32 1 ux))
(fma.f32 ux maxCos (-.f32 1 ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(fma.f32 (sqrt.f32 (-.f32 1 ux)) (sqrt.f32 (-.f32 1 ux)) (*.f32 ux maxCos))
(fma.f32 (sqrt.f32 (*.f32 ux maxCos)) (sqrt.f32 (*.f32 ux maxCos)) (-.f32 1 ux))
(fma.f32 (pow.f32 (cbrt.f32 (-.f32 1 ux)) 2) (cbrt.f32 (-.f32 1 ux)) (*.f32 ux maxCos))
(fma.f32 (pow.f32 (cbrt.f32 (*.f32 ux maxCos)) 2) (cbrt.f32 (*.f32 ux maxCos)) (-.f32 1 ux))
Outputs
1
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (-.f32 maxCos 1) ux)
(*.f32 (+.f32 maxCos -1) ux)
(-.f32 (*.f32 maxCos ux) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.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 1 (*.f32 -1 (*.f32 ux (+.f32 1 (*.f32 -1 maxCos)))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.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))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.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))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 1 ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 maxCos ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 maxCos ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 1 (*.f32 ux (-.f32 1 maxCos)))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (-.f32 1 ux) (*.f32 ux (neg.f32 maxCos)))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (fma.f32 ux maxCos (-.f32 1 ux)) (fma.f32 (*.f32 ux (neg.f32 maxCos)) 1 (*.f32 ux maxCos)))
(-.f32 (fma.f32 maxCos ux (-.f32 1 ux)) (fma.f32 (*.f32 ux (neg.f32 maxCos)) 1 (*.f32 maxCos ux)))
(+.f32 (fma.f32 (+.f32 maxCos -1) ux 1) (*.f32 maxCos (+.f32 (neg.f32 ux) ux)))
(+.f32 (-.f32 (fma.f32 maxCos ux 1) ux) (*.f32 maxCos (+.f32 ux (neg.f32 ux))))
(-.f32 (fma.f32 ux maxCos (-.f32 1 ux)) (fma.f32 (neg.f32 maxCos) ux (*.f32 ux maxCos)))
(-.f32 (fma.f32 maxCos ux (-.f32 1 ux)) (fma.f32 (*.f32 ux (neg.f32 maxCos)) 1 (*.f32 maxCos ux)))
(+.f32 (fma.f32 (+.f32 maxCos -1) ux 1) (*.f32 maxCos (+.f32 (neg.f32 ux) ux)))
(+.f32 (-.f32 (fma.f32 maxCos ux 1) ux) (*.f32 maxCos (+.f32 ux (neg.f32 ux))))
(-.f32 (fma.f32 ux maxCos (-.f32 1 ux)) (fma.f32 (neg.f32 ux) maxCos (*.f32 ux maxCos)))
(-.f32 (fma.f32 maxCos ux (-.f32 1 ux)) (fma.f32 (*.f32 ux (neg.f32 maxCos)) 1 (*.f32 maxCos ux)))
(+.f32 (fma.f32 (+.f32 maxCos -1) ux 1) (*.f32 maxCos (+.f32 (neg.f32 ux) ux)))
(+.f32 (-.f32 (fma.f32 maxCos ux 1) ux) (*.f32 maxCos (+.f32 ux (neg.f32 ux))))
(-.f32 (fma.f32 ux maxCos (-.f32 1 ux)) (fma.f32 (neg.f32 (sqrt.f32 (*.f32 ux maxCos))) (sqrt.f32 (*.f32 ux maxCos)) (*.f32 ux maxCos)))
(-.f32 (fma.f32 maxCos ux (-.f32 1 ux)) (fma.f32 (*.f32 ux (neg.f32 maxCos)) 1 (*.f32 maxCos ux)))
(+.f32 (fma.f32 (+.f32 maxCos -1) ux 1) (*.f32 maxCos (+.f32 (neg.f32 ux) ux)))
(+.f32 (-.f32 (fma.f32 maxCos ux 1) ux) (*.f32 maxCos (+.f32 ux (neg.f32 ux))))
(-.f32 (fma.f32 ux maxCos (-.f32 1 ux)) (fma.f32 (neg.f32 (cbrt.f32 (*.f32 ux maxCos))) (pow.f32 (cbrt.f32 (*.f32 ux maxCos)) 2) (*.f32 ux maxCos)))
(-.f32 (fma.f32 maxCos ux (-.f32 1 ux)) (fma.f32 (*.f32 ux (neg.f32 maxCos)) 1 (*.f32 maxCos ux)))
(+.f32 (fma.f32 (+.f32 maxCos -1) ux 1) (*.f32 maxCos (+.f32 (neg.f32 ux) ux)))
(+.f32 (-.f32 (fma.f32 maxCos ux 1) ux) (*.f32 maxCos (+.f32 ux (neg.f32 ux))))
(-.f32 (exp.f32 (log.f32 (-.f32 2 ux))) (-.f32 1 (*.f32 ux maxCos)))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (exp.f32 (log1p.f32 (*.f32 ux maxCos))) (-.f32 1 (-.f32 1 ux)))
(-.f32 (exp.f32 (log1p.f32 (*.f32 maxCos ux))) (+.f32 0 ux))
(-.f32 (exp.f32 (log1p.f32 (*.f32 maxCos ux))) ux)
(-.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 1)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 ux maxCos)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (/.f32 1 (+.f32 1 ux)) (-.f32 (/.f32 ux (/.f32 (+.f32 1 ux) ux)) (*.f32 ux maxCos)))
(+.f32 (-.f32 (/.f32 1 (+.f32 1 ux)) (*.f32 (/.f32 ux (+.f32 1 ux)) ux)) (*.f32 maxCos ux))
(-.f32 (/.f32 1 (+.f32 1 ux)) (*.f32 ux (-.f32 (/.f32 ux (+.f32 1 ux)) maxCos)))
(-.f32 (/.f32 1 (+.f32 1 (fma.f32 ux ux ux))) (-.f32 (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux))) (*.f32 ux maxCos)))
(+.f32 (-.f32 (/.f32 1 (+.f32 1 (fma.f32 ux ux ux))) (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux)))) (*.f32 maxCos ux))
(-.f32 (fma.f32 maxCos ux (/.f32 1 (+.f32 1 (fma.f32 ux ux ux)))) (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux))))
(-.f32 (/.f32 (pow.f32 (-.f32 1 ux) 2) (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))) (/.f32 (pow.f32 (*.f32 ux maxCos) 2) (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 (-.f32 1 ux) (exp.f32 (log1p.f32 (*.f32 ux maxCos)))) 1)
(-.f32 (exp.f32 (log1p.f32 (*.f32 maxCos ux))) (+.f32 0 ux))
(-.f32 (exp.f32 (log1p.f32 (*.f32 maxCos ux))) ux)
(-.f32 (+.f32 (*.f32 ux maxCos) (exp.f32 (log.f32 (-.f32 2 ux)))) 1)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 (*.f32 ux maxCos) (/.f32 1 (+.f32 1 ux))) (/.f32 ux (/.f32 (+.f32 1 ux) ux)))
(+.f32 (-.f32 (/.f32 1 (+.f32 1 ux)) (*.f32 (/.f32 ux (+.f32 1 ux)) ux)) (*.f32 maxCos ux))
(-.f32 (/.f32 1 (+.f32 1 ux)) (*.f32 ux (-.f32 (/.f32 ux (+.f32 1 ux)) maxCos)))
(-.f32 (+.f32 (*.f32 ux maxCos) (/.f32 1 (+.f32 1 (fma.f32 ux ux ux)))) (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux))))
(+.f32 (-.f32 (/.f32 1 (+.f32 1 (fma.f32 ux ux ux))) (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux)))) (*.f32 maxCos ux))
(-.f32 (fma.f32 maxCos ux (/.f32 1 (+.f32 1 (fma.f32 ux ux ux)))) (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux))))
(-.f32 (+.f32 (+.f32 1 (*.f32 ux maxCos)) 0) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 1 (fma.f32 ux maxCos (-.f32 1 ux)))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (/.f32 1 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.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 (*.f32 ux maxCos) 1) ux)))))
(/.f32 (*.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) 1) (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 ux maxCos -1))))))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (fma.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 maxCos ux -1))) (pow.f32 (-.f32 1 ux) 2)))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (fma.f32 (*.f32 maxCos ux) (+.f32 ux (fma.f32 maxCos ux -1)) (pow.f32 (-.f32 1 ux) 2)))
(*.f32 (/.f32 1 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (/.f32 1 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)))) (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)))
(/.f32 (*.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) 1) (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 ux maxCos -1))))))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (fma.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 maxCos ux -1))) (pow.f32 (-.f32 1 ux) 2)))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (fma.f32 (*.f32 maxCos ux) (+.f32 ux (fma.f32 maxCos ux -1)) (pow.f32 (-.f32 1 ux) 2)))
(*.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) (fma.f32 ux maxCos (-.f32 1 ux)))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3))) (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (fma.f32 ux maxCos (-.f32 1 ux)))))
(*.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2)) (-.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3))) (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 ux (*.f32 maxCos (fma.f32 maxCos ux (-.f32 1 ux))))))
(/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2)) (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (fma.f32 ux (*.f32 maxCos (fma.f32 (+.f32 maxCos -1) ux 1)) (pow.f32 (-.f32 1 ux) 2))))
(/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2)) (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (fma.f32 (-.f32 (fma.f32 maxCos ux 1) ux) (*.f32 maxCos ux) (pow.f32 (-.f32 1 ux) 2))))
(*.f32 (/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)) (-.f32 (*.f32 (-.f32 1 ux) (pow.f32 (-.f32 1 ux) 3)) (*.f32 (pow.f32 (*.f32 ux maxCos) 2) (*.f32 (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))))) (-.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))))
(*.f32 (/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (-.f32 (*.f32 (-.f32 1 ux) (pow.f32 (-.f32 1 ux) 3)) (*.f32 (pow.f32 (*.f32 maxCos ux) 2) (*.f32 (+.f32 ux (fma.f32 ux maxCos -1)) (+.f32 ux (fma.f32 ux maxCos -1)))))) (-.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 ux maxCos -1))))))
(*.f32 (/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (-.f32 (pow.f32 (-.f32 1 ux) 4) (*.f32 (pow.f32 (*.f32 maxCos ux) 2) (*.f32 (+.f32 ux (fma.f32 maxCos ux -1)) (+.f32 ux (fma.f32 maxCos ux -1)))))) (-.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 maxCos (*.f32 ux (+.f32 ux (fma.f32 maxCos ux -1))))))
(*.f32 (/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (-.f32 (pow.f32 (-.f32 1 ux) 4) (*.f32 (+.f32 ux (fma.f32 maxCos ux -1)) (*.f32 (pow.f32 (*.f32 maxCos ux) 2) (+.f32 ux (fma.f32 maxCos ux -1)))))) (-.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 maxCos (*.f32 ux (+.f32 ux (fma.f32 maxCos ux -1))))))
(*.f32 (/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)) (+.f32 (pow.f32 (pow.f32 (-.f32 1 ux) 2) 3) (pow.f32 (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)) 3))) (+.f32 (*.f32 (-.f32 1 ux) (pow.f32 (-.f32 1 ux) 3)) (*.f32 (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)) (-.f32 (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)) (pow.f32 (-.f32 1 ux) 2)))))
(*.f32 (/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (+.f32 (pow.f32 (pow.f32 (-.f32 1 ux) 2) 3) (pow.f32 (*.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 ux maxCos -1)))) 3))) (fma.f32 (-.f32 1 ux) (pow.f32 (-.f32 1 ux) 3) (*.f32 (*.f32 maxCos ux) (*.f32 (+.f32 ux (fma.f32 ux maxCos -1)) (-.f32 (*.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 ux maxCos -1)))) (pow.f32 (-.f32 1 ux) 2))))))
(*.f32 (/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (+.f32 (pow.f32 (*.f32 maxCos (*.f32 ux (+.f32 ux (fma.f32 maxCos ux -1)))) 3) (pow.f32 (-.f32 1 ux) 6))) (fma.f32 (*.f32 maxCos ux) (*.f32 (+.f32 ux (fma.f32 maxCos ux -1)) (-.f32 (*.f32 maxCos (*.f32 ux (+.f32 ux (fma.f32 maxCos ux -1)))) (pow.f32 (-.f32 1 ux) 2))) (pow.f32 (-.f32 1 ux) 4)))
(/.f32 (*.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (fma.f32 (*.f32 maxCos ux) (*.f32 (+.f32 ux (fma.f32 maxCos ux -1)) (fma.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 maxCos ux -1))) (neg.f32 (pow.f32 (-.f32 1 ux) 2)))) (pow.f32 (-.f32 1 ux) 4))) (+.f32 (pow.f32 (*.f32 maxCos (*.f32 ux (+.f32 ux (fma.f32 maxCos ux -1)))) 3) (pow.f32 (-.f32 1 ux) 6)))
(/.f32 1 (/.f32 1 (fma.f32 ux maxCos (-.f32 1 ux))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(/.f32 (fma.f32 ux maxCos (-.f32 1 ux)) (/.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos))) (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 1 (*.f32 ux (+.f32 1 maxCos))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(/.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 (*.f32 ux maxCos) 1) ux))))
(/.f32 (*.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) 1) (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 ux maxCos -1))))))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (fma.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 maxCos ux -1))) (pow.f32 (-.f32 1 ux) 2)))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (fma.f32 (*.f32 maxCos ux) (+.f32 ux (fma.f32 maxCos ux -1)) (pow.f32 (-.f32 1 ux) 2)))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))) (/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))) (fma.f32 ux maxCos (-.f32 1 ux))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(/.f32 (sqrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3))) (/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))) (sqrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)))))
(*.f32 (/.f32 (sqrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3))) (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 ux maxCos -1)))))) (sqrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3))))
(/.f32 (hypot.f32 (pow.f32 (*.f32 maxCos ux) 3/2) (pow.f32 (-.f32 1 ux) 3/2)) (/.f32 (fma.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 maxCos ux -1))) (pow.f32 (-.f32 1 ux) 2)) (hypot.f32 (pow.f32 (*.f32 maxCos ux) 3/2) (pow.f32 (-.f32 1 ux) 3/2))))
(/.f32 (*.f32 (hypot.f32 (pow.f32 (*.f32 maxCos ux) 3/2) (pow.f32 (-.f32 1 ux) 3/2)) (hypot.f32 (pow.f32 (*.f32 maxCos ux) 3/2) (pow.f32 (-.f32 1 ux) 3/2))) (fma.f32 (*.f32 maxCos ux) (+.f32 ux (fma.f32 maxCos ux -1)) (pow.f32 (-.f32 1 ux) 2)))
(/.f32 (sqrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) (/.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos))) (sqrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))
(*.f32 (/.f32 (sqrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2))) (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))) (sqrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2))))
(*.f32 (sqrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2))) (/.f32 (sqrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2))) (-.f32 1 (+.f32 ux (*.f32 maxCos ux)))))
(*.f32 (sqrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2))) (/.f32 (sqrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2))) (-.f32 (-.f32 1 ux) (*.f32 maxCos ux))))
(/.f32 (*.f32 (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3))) (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)))) (/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))) (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)))))
(*.f32 (/.f32 (*.f32 (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3))) (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)))) (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 ux maxCos -1)))))) (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3))))
(/.f32 (*.f32 (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3))) (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)))) (/.f32 (fma.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 maxCos ux -1))) (pow.f32 (-.f32 1 ux) 2)) (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)))))
(*.f32 (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3))) (/.f32 (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3))) (/.f32 (fma.f32 (*.f32 maxCos ux) (+.f32 ux (fma.f32 maxCos ux -1)) (pow.f32 (-.f32 1 ux) 2)) (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3))))))
(/.f32 (*.f32 (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) (/.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos))) (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))
(/.f32 (*.f32 (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2))) (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2)))) (/.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos))) (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2)))))
(/.f32 (*.f32 (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2))) (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2)))) (/.f32 (-.f32 1 (+.f32 ux (*.f32 maxCos ux))) (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2)))))
(*.f32 (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2))) (*.f32 (/.f32 (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2))) (-.f32 (-.f32 1 ux) (*.f32 maxCos ux))) (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2)))))
(/.f32 (-.f32 (*.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (-.f32 1 ux) 3)) (*.f32 (pow.f32 (*.f32 ux maxCos) 3) (pow.f32 (*.f32 ux maxCos) 3))) (*.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))) (-.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3))))
(/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 6) (pow.f32 (*.f32 maxCos ux) 6)) (*.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 ux maxCos -1))))) (-.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3))))
(/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 6) (pow.f32 (*.f32 maxCos ux) 6)) (*.f32 (fma.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 maxCos ux -1))) (pow.f32 (-.f32 1 ux) 2)) (-.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3))))
(/.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 6) (pow.f32 (*.f32 maxCos ux) 6)) (fma.f32 (*.f32 maxCos ux) (+.f32 ux (fma.f32 maxCos ux -1)) (pow.f32 (-.f32 1 ux) 2))) (-.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)))
(/.f32 (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (pow.f32 (-.f32 1 ux) 2)) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(/.f32 (-.f32 (*.f32 (-.f32 1 ux) (pow.f32 (-.f32 1 ux) 3)) (*.f32 (*.f32 ux maxCos) (pow.f32 (*.f32 ux maxCos) 3))) (*.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos))) (+.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))))
(/.f32 (-.f32 (*.f32 (-.f32 1 ux) (pow.f32 (-.f32 1 ux) 3)) (*.f32 ux (*.f32 maxCos (pow.f32 (*.f32 maxCos ux) 3)))) (*.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos))) (+.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2))))
(/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 4) (pow.f32 (*.f32 maxCos ux) 4)) (*.f32 (-.f32 1 (+.f32 ux (*.f32 maxCos ux))) (+.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2))))
(/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 4) (pow.f32 (*.f32 maxCos ux) 4)) (*.f32 (-.f32 (-.f32 1 ux) (*.f32 maxCos ux)) (+.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2))))
(/.f32 (-.f32 1 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 ux (-.f32 1 maxCos)))) (+.f32 1 (*.f32 ux (-.f32 1 maxCos))))
(/.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 ux ux) (-.f32 1 maxCos)) (-.f32 1 maxCos))) (fma.f32 ux (-.f32 1 maxCos) 1))
(/.f32 (+.f32 1 (*.f32 (-.f32 (*.f32 maxCos ux) ux) (-.f32 ux (*.f32 maxCos ux)))) (-.f32 ux (fma.f32 maxCos ux -1)))
(/.f32 (+.f32 (pow.f32 (pow.f32 (-.f32 1 ux) 3) 3) (pow.f32 (pow.f32 (*.f32 ux maxCos) 3) 3)) (*.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))) (+.f32 (*.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (-.f32 1 ux) 3)) (*.f32 (pow.f32 (*.f32 ux maxCos) 3) (-.f32 (pow.f32 (*.f32 ux maxCos) 3) (pow.f32 (-.f32 1 ux) 3))))))
(/.f32 (/.f32 (+.f32 (pow.f32 (pow.f32 (-.f32 1 ux) 3) 3) (pow.f32 (pow.f32 (*.f32 maxCos ux) 3) 3)) (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 ux maxCos -1)))))) (+.f32 (pow.f32 (-.f32 1 ux) 6) (*.f32 (pow.f32 (*.f32 maxCos ux) 3) (-.f32 (pow.f32 (*.f32 maxCos ux) 3) (pow.f32 (-.f32 1 ux) 3)))))
(/.f32 (+.f32 (pow.f32 (pow.f32 (-.f32 1 ux) 3) 3) (pow.f32 (pow.f32 (*.f32 maxCos ux) 3) 3)) (*.f32 (fma.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 maxCos ux -1))) (pow.f32 (-.f32 1 ux) 2)) (fma.f32 (pow.f32 (*.f32 maxCos ux) 3) (-.f32 (pow.f32 (*.f32 maxCos ux) 3) (pow.f32 (-.f32 1 ux) 3)) (pow.f32 (-.f32 1 ux) 6))))
(/.f32 (/.f32 (+.f32 (pow.f32 (pow.f32 (-.f32 1 ux) 3) 3) (pow.f32 (pow.f32 (*.f32 maxCos ux) 3) 3)) (fma.f32 (*.f32 maxCos ux) (+.f32 ux (fma.f32 maxCos ux -1)) (pow.f32 (-.f32 1 ux) 2))) (fma.f32 (pow.f32 (*.f32 maxCos ux) 3) (-.f32 (pow.f32 (*.f32 maxCos ux) 3) (pow.f32 (-.f32 1 ux) 3)) (pow.f32 (-.f32 1 ux) 6)))
(/.f32 (-.f32 (pow.f32 (pow.f32 (-.f32 1 ux) 2) 3) (pow.f32 (pow.f32 (*.f32 ux maxCos) 2) 3)) (*.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos))) (+.f32 (*.f32 (-.f32 1 ux) (pow.f32 (-.f32 1 ux) 3)) (*.f32 (pow.f32 (*.f32 ux maxCos) 2) (+.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))))))
(/.f32 (/.f32 (-.f32 (pow.f32 (pow.f32 (-.f32 1 ux) 2) 3) (pow.f32 (pow.f32 (*.f32 maxCos ux) 2) 3)) (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))) (fma.f32 (-.f32 1 ux) (pow.f32 (-.f32 1 ux) 3) (*.f32 (pow.f32 (*.f32 maxCos ux) 2) (+.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2)))))
(/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 6) (pow.f32 (*.f32 maxCos ux) 6)) (*.f32 (-.f32 1 (+.f32 ux (*.f32 maxCos ux))) (+.f32 (pow.f32 (-.f32 1 ux) 4) (fma.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2) (pow.f32 (*.f32 maxCos ux) 4)))))
(/.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 6) (pow.f32 (*.f32 maxCos ux) 6)) (-.f32 (-.f32 1 ux) (*.f32 maxCos ux))) (+.f32 (pow.f32 (-.f32 1 ux) 4) (fma.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2) (pow.f32 (*.f32 maxCos ux) 4))))
(/.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))))))
(/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (+.f32 1 (*.f32 ux (*.f32 (-.f32 1 maxCos) (+.f32 1 (*.f32 ux (-.f32 1 maxCos)))))))
(/.f32 (-.f32 1 (pow.f32 (-.f32 ux (*.f32 maxCos ux)) 3)) (fma.f32 (-.f32 ux (*.f32 maxCos ux)) (fma.f32 ux (-.f32 1 maxCos) 1) 1))
(/.f32 (-.f32 1 (pow.f32 (-.f32 ux (*.f32 maxCos ux)) 3)) (fma.f32 (-.f32 ux (*.f32 maxCos ux)) (-.f32 ux (fma.f32 maxCos ux -1)) 1))
(/.f32 (neg.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) (neg.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(/.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 (*.f32 ux maxCos) 1) ux)))))
(/.f32 (*.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) 1) (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 ux maxCos -1))))))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (fma.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 maxCos ux -1))) (pow.f32 (-.f32 1 ux) 2)))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (fma.f32 (*.f32 maxCos ux) (+.f32 ux (fma.f32 maxCos ux -1)) (pow.f32 (-.f32 1 ux) 2)))
(/.f32 (*.f32 1 (-.f32 1 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 ux (-.f32 1 maxCos))))) (+.f32 1 (*.f32 ux (-.f32 1 maxCos))))
(/.f32 (-.f32 1 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 ux (-.f32 1 maxCos)))) (+.f32 1 (*.f32 ux (-.f32 1 maxCos))))
(/.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 ux ux) (-.f32 1 maxCos)) (-.f32 1 maxCos))) (fma.f32 ux (-.f32 1 maxCos) 1))
(/.f32 (+.f32 1 (*.f32 (-.f32 (*.f32 maxCos ux) ux) (-.f32 ux (*.f32 maxCos ux)))) (-.f32 ux (fma.f32 maxCos ux -1)))
(/.f32 (*.f32 1 (-.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))))))
(/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (+.f32 1 (*.f32 ux (*.f32 (-.f32 1 maxCos) (+.f32 1 (*.f32 ux (-.f32 1 maxCos)))))))
(/.f32 (-.f32 1 (pow.f32 (-.f32 ux (*.f32 maxCos ux)) 3)) (fma.f32 (-.f32 ux (*.f32 maxCos ux)) (fma.f32 ux (-.f32 1 maxCos) 1) 1))
(/.f32 (-.f32 1 (pow.f32 (-.f32 ux (*.f32 maxCos ux)) 3)) (fma.f32 (-.f32 ux (*.f32 maxCos ux)) (-.f32 ux (fma.f32 maxCos ux -1)) 1))
(/.f32 (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (sqrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)))) (sqrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)))))
(/.f32 (sqrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3))) (/.f32 (sqrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 ux maxCos -1)))))) (sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))))
(*.f32 (/.f32 (hypot.f32 (pow.f32 (*.f32 maxCos ux) 3/2) (pow.f32 (-.f32 1 ux) 3/2)) (sqrt.f32 (fma.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 maxCos ux -1))) (pow.f32 (-.f32 1 ux) 2)))) (sqrt.f32 (fma.f32 (+.f32 maxCos -1) ux 1)))
(*.f32 (/.f32 (sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux)) (sqrt.f32 (fma.f32 (*.f32 maxCos ux) (+.f32 ux (fma.f32 maxCos ux -1)) (pow.f32 (-.f32 1 ux) 2)))) (hypot.f32 (pow.f32 (*.f32 maxCos ux) 3/2) (pow.f32 (-.f32 1 ux) 3/2)))
(/.f32 (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (sqrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) (sqrt.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))))
(/.f32 (sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux))) (/.f32 (sqrt.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))) (sqrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2)))))
(*.f32 (/.f32 (sqrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2))) (sqrt.f32 (-.f32 1 (+.f32 ux (*.f32 maxCos ux))))) (sqrt.f32 (fma.f32 (+.f32 maxCos -1) ux 1)))
(*.f32 (/.f32 (sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux)) (sqrt.f32 (-.f32 (-.f32 1 ux) (*.f32 maxCos ux)))) (sqrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2))))
(/.f32 (*.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2) (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)))) (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)))))
(/.f32 (pow.f32 (cbrt.f32 (fma.f32 maxCos ux (-.f32 1 ux))) 2) (/.f32 (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 ux maxCos -1)))))) (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)))))
(*.f32 (/.f32 (pow.f32 (cbrt.f32 (fma.f32 (+.f32 maxCos -1) ux 1)) 2) (cbrt.f32 (fma.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 maxCos ux -1))) (pow.f32 (-.f32 1 ux) 2)))) (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3))))
(*.f32 (/.f32 (pow.f32 (cbrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux)) 2) (cbrt.f32 (fma.f32 (*.f32 maxCos ux) (+.f32 ux (fma.f32 maxCos ux -1)) (pow.f32 (-.f32 1 ux) 2)))) (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3))))
(/.f32 (*.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2) (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))) (cbrt.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))))
(/.f32 (pow.f32 (cbrt.f32 (fma.f32 maxCos ux (-.f32 1 ux))) 2) (/.f32 (cbrt.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))) (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2)))))
(*.f32 (/.f32 (pow.f32 (cbrt.f32 (fma.f32 (+.f32 maxCos -1) ux 1)) 2) (cbrt.f32 (-.f32 1 (+.f32 ux (*.f32 maxCos ux))))) (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2))))
(*.f32 (/.f32 (pow.f32 (cbrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux)) 2) (cbrt.f32 (-.f32 (-.f32 1 ux) (*.f32 maxCos ux)))) (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2))))
(/.f32 (*.f32 (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (pow.f32 (-.f32 1 ux) 2)) 1) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(/.f32 (*.f32 (-.f32 1 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 ux (-.f32 1 maxCos)))) 1) (+.f32 1 (*.f32 ux (-.f32 1 maxCos))))
(/.f32 (-.f32 1 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (*.f32 ux (-.f32 1 maxCos)))) (+.f32 1 (*.f32 ux (-.f32 1 maxCos))))
(/.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 ux ux) (-.f32 1 maxCos)) (-.f32 1 maxCos))) (fma.f32 ux (-.f32 1 maxCos) 1))
(/.f32 (+.f32 1 (*.f32 (-.f32 (*.f32 maxCos ux) ux) (-.f32 ux (*.f32 maxCos ux)))) (-.f32 ux (fma.f32 maxCos ux -1)))
(/.f32 (*.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) 1) (+.f32 1 (*.f32 (*.f32 ux (-.f32 1 maxCos)) (+.f32 1 (*.f32 ux (-.f32 1 maxCos))))))
(/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (+.f32 1 (*.f32 ux (*.f32 (-.f32 1 maxCos) (+.f32 1 (*.f32 ux (-.f32 1 maxCos)))))))
(/.f32 (-.f32 1 (pow.f32 (-.f32 ux (*.f32 maxCos ux)) 3)) (fma.f32 (-.f32 ux (*.f32 maxCos ux)) (fma.f32 ux (-.f32 1 maxCos) 1) 1))
(/.f32 (-.f32 1 (pow.f32 (-.f32 ux (*.f32 maxCos ux)) 3)) (fma.f32 (-.f32 ux (*.f32 maxCos ux)) (-.f32 ux (fma.f32 maxCos ux -1)) 1))
(/.f32 (*.f32 (neg.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) 1) (neg.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(/.f32 (*.f32 (neg.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3))) 1) (neg.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)))))
(/.f32 (*.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) 1) (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 ux maxCos -1))))))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (fma.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 maxCos ux -1))) (pow.f32 (-.f32 1 ux) 2)))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (fma.f32 (*.f32 maxCos ux) (+.f32 ux (fma.f32 maxCos ux -1)) (pow.f32 (-.f32 1 ux) 2)))
(/.f32 (*.f32 (sqrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3))) (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (sqrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)))))
(/.f32 (sqrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3))) (/.f32 (sqrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 ux maxCos -1)))))) (sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))))
(*.f32 (/.f32 (hypot.f32 (pow.f32 (*.f32 maxCos ux) 3/2) (pow.f32 (-.f32 1 ux) 3/2)) (sqrt.f32 (fma.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 maxCos ux -1))) (pow.f32 (-.f32 1 ux) 2)))) (sqrt.f32 (fma.f32 (+.f32 maxCos -1) ux 1)))
(*.f32 (/.f32 (sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux)) (sqrt.f32 (fma.f32 (*.f32 maxCos ux) (+.f32 ux (fma.f32 maxCos ux -1)) (pow.f32 (-.f32 1 ux) 2)))) (hypot.f32 (pow.f32 (*.f32 maxCos ux) 3/2) (pow.f32 (-.f32 1 ux) 3/2)))
(/.f32 (*.f32 (sqrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (sqrt.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))))
(/.f32 (sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux))) (/.f32 (sqrt.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))) (sqrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2)))))
(*.f32 (/.f32 (sqrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2))) (sqrt.f32 (-.f32 1 (+.f32 ux (*.f32 maxCos ux))))) (sqrt.f32 (fma.f32 (+.f32 maxCos -1) ux 1)))
(*.f32 (/.f32 (sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux)) (sqrt.f32 (-.f32 (-.f32 1 ux) (*.f32 maxCos ux)))) (sqrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2))))
(/.f32 (*.f32 (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3))) (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)) (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)))))
(/.f32 (pow.f32 (cbrt.f32 (fma.f32 maxCos ux (-.f32 1 ux))) 2) (/.f32 (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 ux maxCos -1)))))) (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)))))
(*.f32 (/.f32 (pow.f32 (cbrt.f32 (fma.f32 (+.f32 maxCos -1) ux 1)) 2) (cbrt.f32 (fma.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 maxCos ux -1))) (pow.f32 (-.f32 1 ux) 2)))) (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3))))
(*.f32 (/.f32 (pow.f32 (cbrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux)) 2) (cbrt.f32 (fma.f32 (*.f32 maxCos ux) (+.f32 ux (fma.f32 maxCos ux -1)) (pow.f32 (-.f32 1 ux) 2)))) (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3))))
(/.f32 (*.f32 (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2))) (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)) (cbrt.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))))
(/.f32 (pow.f32 (cbrt.f32 (fma.f32 maxCos ux (-.f32 1 ux))) 2) (/.f32 (cbrt.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))) (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2)))))
(*.f32 (/.f32 (pow.f32 (cbrt.f32 (fma.f32 (+.f32 maxCos -1) ux 1)) 2) (cbrt.f32 (-.f32 1 (+.f32 ux (*.f32 maxCos ux))))) (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2))))
(*.f32 (/.f32 (pow.f32 (cbrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux)) 2) (cbrt.f32 (-.f32 (-.f32 1 ux) (*.f32 maxCos ux)))) (cbrt.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2))))
(/.f32 (*.f32 (-.f32 (*.f32 (-.f32 1 ux) (pow.f32 (-.f32 1 ux) 3)) (*.f32 (*.f32 ux maxCos) (pow.f32 (*.f32 ux maxCos) 3))) (/.f32 1 (-.f32 1 (*.f32 ux (+.f32 1 maxCos))))) (+.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))
(/.f32 (-.f32 (*.f32 (-.f32 1 ux) (pow.f32 (-.f32 1 ux) 3)) (*.f32 ux (*.f32 maxCos (pow.f32 (*.f32 maxCos ux) 3)))) (*.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos))) (+.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2))))
(/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 4) (pow.f32 (*.f32 maxCos ux) 4)) (*.f32 (-.f32 1 (+.f32 ux (*.f32 maxCos ux))) (+.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2))))
(/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 4) (pow.f32 (*.f32 maxCos ux) 4)) (*.f32 (-.f32 (-.f32 1 ux) (*.f32 maxCos ux)) (+.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2))))
(/.f32 (*.f32 (-.f32 (pow.f32 (pow.f32 (-.f32 1 ux) 2) 3) (pow.f32 (pow.f32 (*.f32 ux maxCos) 2) 3)) (/.f32 1 (-.f32 1 (*.f32 ux (+.f32 1 maxCos))))) (+.f32 (*.f32 (-.f32 1 ux) (pow.f32 (-.f32 1 ux) 3)) (*.f32 (pow.f32 (*.f32 ux maxCos) 2) (+.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)))))
(/.f32 (/.f32 (-.f32 (pow.f32 (pow.f32 (-.f32 1 ux) 2) 3) (pow.f32 (pow.f32 (*.f32 maxCos ux) 2) 3)) (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))) (fma.f32 (-.f32 1 ux) (pow.f32 (-.f32 1 ux) 3) (*.f32 (pow.f32 (*.f32 maxCos ux) 2) (+.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2)))))
(/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 6) (pow.f32 (*.f32 maxCos ux) 6)) (*.f32 (-.f32 1 (+.f32 ux (*.f32 maxCos ux))) (+.f32 (pow.f32 (-.f32 1 ux) 4) (fma.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2) (pow.f32 (*.f32 maxCos ux) 4)))))
(/.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 6) (pow.f32 (*.f32 maxCos ux) 6)) (-.f32 (-.f32 1 ux) (*.f32 maxCos ux))) (+.f32 (pow.f32 (-.f32 1 ux) 4) (fma.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2) (pow.f32 (*.f32 maxCos ux) 4))))
(/.f32 (*.f32 (-.f32 (*.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (-.f32 1 ux) 3)) (*.f32 (pow.f32 (*.f32 ux maxCos) 3) (pow.f32 (*.f32 ux maxCos) 3))) (/.f32 1 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))))) (-.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)))
(/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 6) (pow.f32 (*.f32 maxCos ux) 6)) (*.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 ux maxCos -1))))) (-.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3))))
(/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 6) (pow.f32 (*.f32 maxCos ux) 6)) (*.f32 (fma.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 maxCos ux -1))) (pow.f32 (-.f32 1 ux) 2)) (-.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3))))
(/.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 6) (pow.f32 (*.f32 maxCos ux) 6)) (fma.f32 (*.f32 maxCos ux) (+.f32 ux (fma.f32 maxCos ux -1)) (pow.f32 (-.f32 1 ux) 2))) (-.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)))
(/.f32 (*.f32 (+.f32 (pow.f32 (pow.f32 (-.f32 1 ux) 3) 3) (pow.f32 (pow.f32 (*.f32 ux maxCos) 3) 3)) (/.f32 1 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))))) (+.f32 (*.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (-.f32 1 ux) 3)) (*.f32 (pow.f32 (*.f32 ux maxCos) 3) (-.f32 (pow.f32 (*.f32 ux maxCos) 3) (pow.f32 (-.f32 1 ux) 3)))))
(/.f32 (/.f32 (+.f32 (pow.f32 (pow.f32 (-.f32 1 ux) 3) 3) (pow.f32 (pow.f32 (*.f32 maxCos ux) 3) 3)) (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 ux maxCos -1)))))) (+.f32 (pow.f32 (-.f32 1 ux) 6) (*.f32 (pow.f32 (*.f32 maxCos ux) 3) (-.f32 (pow.f32 (*.f32 maxCos ux) 3) (pow.f32 (-.f32 1 ux) 3)))))
(/.f32 (+.f32 (pow.f32 (pow.f32 (-.f32 1 ux) 3) 3) (pow.f32 (pow.f32 (*.f32 maxCos ux) 3) 3)) (*.f32 (fma.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 maxCos ux -1))) (pow.f32 (-.f32 1 ux) 2)) (fma.f32 (pow.f32 (*.f32 maxCos ux) 3) (-.f32 (pow.f32 (*.f32 maxCos ux) 3) (pow.f32 (-.f32 1 ux) 3)) (pow.f32 (-.f32 1 ux) 6))))
(/.f32 (/.f32 (+.f32 (pow.f32 (pow.f32 (-.f32 1 ux) 3) 3) (pow.f32 (pow.f32 (*.f32 maxCos ux) 3) 3)) (fma.f32 (*.f32 maxCos ux) (+.f32 ux (fma.f32 maxCos ux -1)) (pow.f32 (-.f32 1 ux) 2))) (fma.f32 (pow.f32 (*.f32 maxCos ux) 3) (-.f32 (pow.f32 (*.f32 maxCos ux) 3) (pow.f32 (-.f32 1 ux) 3)) (pow.f32 (-.f32 1 ux) 6)))
(/.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) 1) (-.f32 1 (*.f32 ux (+.f32 1 maxCos))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(/.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (sqrt.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos))))) (sqrt.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(/.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (*.f32 (cbrt.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))) (cbrt.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))))) (cbrt.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos)))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(/.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (+.f32 (sqrt.f32 (-.f32 1 ux)) (sqrt.f32 (*.f32 ux maxCos)))) (-.f32 (sqrt.f32 (-.f32 1 ux)) (sqrt.f32 (*.f32 ux maxCos))))
(/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2)) (*.f32 (-.f32 (sqrt.f32 (-.f32 1 ux)) (sqrt.f32 (*.f32 maxCos ux))) (+.f32 (sqrt.f32 (*.f32 maxCos ux)) (sqrt.f32 (-.f32 1 ux)))))
(/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2)) (*.f32 (+.f32 (sqrt.f32 (*.f32 maxCos ux)) (sqrt.f32 (-.f32 1 ux))) (-.f32 (sqrt.f32 (-.f32 1 ux)) (sqrt.f32 (*.f32 maxCos ux)))))
(/.f32 (/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)) 1) (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))))
(/.f32 (*.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) 1) (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 ux maxCos -1))))))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (fma.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 maxCos ux -1))) (pow.f32 (-.f32 1 ux) 2)))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (fma.f32 (*.f32 maxCos ux) (+.f32 ux (fma.f32 maxCos ux -1)) (pow.f32 (-.f32 1 ux) 2)))
(/.f32 (/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)) (sqrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))))) (sqrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)))))
(/.f32 (*.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) 1) (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 ux maxCos -1))))))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (fma.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 maxCos ux -1))) (pow.f32 (-.f32 1 ux) 2)))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (fma.f32 (*.f32 maxCos ux) (+.f32 ux (fma.f32 maxCos ux -1)) (pow.f32 (-.f32 1 ux) 2)))
(/.f32 (/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)) (*.f32 (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)))) (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)))))) (cbrt.f32 (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 (*.f32 ux maxCos) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)))))
(/.f32 (*.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) 1) (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 ux maxCos -1))))))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (fma.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 maxCos ux -1))) (pow.f32 (-.f32 1 ux) 2)))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (fma.f32 (*.f32 maxCos ux) (+.f32 ux (fma.f32 maxCos ux -1)) (pow.f32 (-.f32 1 ux) 2)))
(pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(pow.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 3)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3) 1/3)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(neg.f32 (/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (neg.f32 (-.f32 1 (*.f32 ux (+.f32 1 maxCos))))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(neg.f32 (/.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 (*.f32 ux maxCos) 1) ux))))))
(/.f32 (*.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) 1) (+.f32 (pow.f32 (-.f32 1 ux) 2) (*.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 ux maxCos -1))))))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (fma.f32 ux (*.f32 maxCos (+.f32 ux (fma.f32 maxCos ux -1))) (pow.f32 (-.f32 1 ux) 2)))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (fma.f32 (*.f32 maxCos ux) (+.f32 ux (fma.f32 maxCos ux -1)) (pow.f32 (-.f32 1 ux) 2)))
(sqrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2))
(sqrt.f32 (pow.f32 (fma.f32 maxCos ux (-.f32 1 ux)) 2))
(fabs.f32 (fma.f32 (+.f32 maxCos -1) ux 1))
(fabs.f32 (-.f32 (fma.f32 maxCos ux 1) ux))
(log.f32 (exp.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(log.f32 (+.f32 1 (expm1.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(expm1.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(exp.f32 (log.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(log1p.f32 (expm1.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(fma.f32 1 (-.f32 1 ux) (*.f32 ux maxCos))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(fma.f32 1 (*.f32 ux maxCos) (-.f32 1 ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(fma.f32 ux maxCos (-.f32 1 ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(fma.f32 maxCos ux (-.f32 1 ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(fma.f32 (sqrt.f32 (-.f32 1 ux)) (sqrt.f32 (-.f32 1 ux)) (*.f32 ux maxCos))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(fma.f32 (sqrt.f32 (*.f32 ux maxCos)) (sqrt.f32 (*.f32 ux maxCos)) (-.f32 1 ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(fma.f32 (pow.f32 (cbrt.f32 (-.f32 1 ux)) 2) (cbrt.f32 (-.f32 1 ux)) (*.f32 ux maxCos))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)
(fma.f32 (pow.f32 (cbrt.f32 (*.f32 ux maxCos)) 2) (cbrt.f32 (*.f32 ux maxCos)) (-.f32 1 ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 (+.f32 maxCos -1) ux 1)
(-.f32 (fma.f32 maxCos ux 1) ux)

localize15.0ms (0.5%)

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)

series1.0ms (0.1%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
0.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
maxCos
@0
(-.f32 (fma.f32 ux maxCos 1) ux)

rewrite59.0ms (2%)

Algorithm
batch-egg-rewrite
Rules
1730×add-sqr-sqrt
1714×*-un-lft-identity
1594×add-cube-cbrt
1576×add-cbrt-cube
168×pow1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0815
116315
2206715
Stop Event
node limit
Counts
1 → 39
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 (sqrt.f32 ux)) (sqrt.f32 ux) 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 (neg.f32 ux) (fma.f32 ux maxCos 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 ux maxCos) (+.f32 1 (neg.f32 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 ux maxCos) (-.f32 1 ux))))) (#(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 (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 (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 (-.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 (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 (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 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 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 (-.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 (-.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 (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) 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 (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 (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 pow.f32 (-.f32 (fma.f32 ux maxCos 1) ux) 1)))) (#(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 pow.f32 (cbrt.f32 (-.f32 (fma.f32 ux maxCos 1) ux)) 3)))) (#(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 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 log.f32 (+.f32 1 (expm1.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 exp.f32 (log.f32 (-.f32 (fma.f32 ux maxCos 1) ux)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (-.f32 (fma.f32 ux maxCos 1) ux)) 1))))) (#(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 fma.f32 1 (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))))) (#(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))))))

simplify66.0ms (2.3%)

Algorithm
egg-herbie
Rules
1156×associate-+l-
1078×associate-+r-
832×associate--l+
826×fma-def
756×+-commutative
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01171633
13101369
213051369
354491369
Stop Event
node limit
Counts
63 → 57
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)
(+.f32 (fma.f32 ux maxCos 1) (neg.f32 ux))
(+.f32 (fma.f32 ux maxCos 1) (*.f32 (neg.f32 ux) 1))
(+.f32 (-.f32 (fma.f32 ux maxCos 1) ux) (fma.f32 (neg.f32 ux) 1 ux))
(+.f32 (-.f32 (fma.f32 ux maxCos 1) ux) (fma.f32 (neg.f32 (sqrt.f32 ux)) (sqrt.f32 ux) ux))
(+.f32 (-.f32 (fma.f32 ux maxCos 1) ux) (fma.f32 (neg.f32 (cbrt.f32 ux)) (pow.f32 (cbrt.f32 ux) 2) ux))
(+.f32 (neg.f32 ux) (fma.f32 ux maxCos 1))
(+.f32 (*.f32 ux maxCos) (+.f32 1 (neg.f32 ux)))
(+.f32 (*.f32 ux maxCos) (-.f32 1 ux))
(*.f32 1 (-.f32 (fma.f32 ux maxCos 1) ux))
(*.f32 (-.f32 (fma.f32 ux maxCos 1) ux) 1)
(*.f32 (sqrt.f32 (-.f32 (fma.f32 ux maxCos 1) ux)) (sqrt.f32 (-.f32 (fma.f32 ux maxCos 1) ux)))
(*.f32 (cbrt.f32 (-.f32 (fma.f32 ux maxCos 1) ux)) (pow.f32 (cbrt.f32 (-.f32 (fma.f32 ux maxCos 1) ux)) 2))
(*.f32 (pow.f32 (cbrt.f32 (-.f32 (fma.f32 ux maxCos 1) ux)) 2) (cbrt.f32 (-.f32 (fma.f32 ux maxCos 1) ux)))
(*.f32 (-.f32 (pow.f32 (fma.f32 ux maxCos 1) 2) (*.f32 ux ux)) (/.f32 1 (+.f32 ux (fma.f32 ux maxCos 1))))
(*.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))))))
(*.f32 (+.f32 (sqrt.f32 (fma.f32 ux maxCos 1)) (sqrt.f32 ux)) (-.f32 (sqrt.f32 (fma.f32 ux maxCos 1)) (sqrt.f32 ux)))
(/.f32 1 (/.f32 (+.f32 ux (fma.f32 ux maxCos 1)) (-.f32 (pow.f32 (fma.f32 ux maxCos 1) 2) (*.f32 ux ux))))
(/.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))))
(/.f32 (-.f32 (pow.f32 (fma.f32 ux maxCos 1) 2) (*.f32 ux ux)) (+.f32 ux (fma.f32 ux maxCos 1)))
(/.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)))))
(/.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)))
(/.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)))))
(/.f32 (neg.f32 (-.f32 (pow.f32 (fma.f32 ux maxCos 1) 2) (*.f32 ux ux))) (neg.f32 (+.f32 ux (fma.f32 ux maxCos 1))))
(/.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))))))
(pow.f32 (-.f32 (fma.f32 ux maxCos 1) ux) 1)
(pow.f32 (sqrt.f32 (-.f32 (fma.f32 ux maxCos 1) ux)) 2)
(pow.f32 (cbrt.f32 (-.f32 (fma.f32 ux maxCos 1) ux)) 3)
(pow.f32 (pow.f32 (-.f32 (fma.f32 ux maxCos 1) ux) 3) 1/3)
(sqrt.f32 (pow.f32 (-.f32 (fma.f32 ux maxCos 1) ux) 2))
(log.f32 (exp.f32 (-.f32 (fma.f32 ux maxCos 1) ux)))
(log.f32 (+.f32 1 (expm1.f32 (-.f32 (fma.f32 ux maxCos 1) ux))))
(cbrt.f32 (pow.f32 (-.f32 (fma.f32 ux maxCos 1) ux) 3))
(expm1.f32 (log1p.f32 (-.f32 (fma.f32 ux maxCos 1) ux)))
(exp.f32 (log.f32 (-.f32 (fma.f32 ux maxCos 1) ux)))
(exp.f32 (*.f32 (log.f32 (-.f32 (fma.f32 ux maxCos 1) ux)) 1))
(log1p.f32 (expm1.f32 (-.f32 (fma.f32 ux maxCos 1) ux)))
(fma.f32 1 (fma.f32 ux maxCos 1) (neg.f32 ux))
(fma.f32 (sqrt.f32 (fma.f32 ux maxCos 1)) (sqrt.f32 (fma.f32 ux maxCos 1)) (neg.f32 ux))
(fma.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos 1)) 2) (cbrt.f32 (fma.f32 ux maxCos 1)) (neg.f32 ux))
Outputs
1
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (-.f32 maxCos 1) ux)
(*.f32 (+.f32 maxCos -1) ux)
(fma.f32 maxCos ux (neg.f32 ux))
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 -1 (*.f32 ux (+.f32 1 (*.f32 -1 maxCos))))
(*.f32 (+.f32 maxCos -1) ux)
(fma.f32 maxCos ux (neg.f32 ux))
(+.f32 1 (*.f32 -1 (*.f32 ux (+.f32 1 (*.f32 -1 maxCos)))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 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))
(fma.f32 maxCos ux (-.f32 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))
(fma.f32 maxCos ux (-.f32 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))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 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))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 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))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 (fma.f32 ux maxCos 1) (neg.f32 ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 (fma.f32 ux maxCos 1) (*.f32 (neg.f32 ux) 1))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 (-.f32 (fma.f32 ux maxCos 1) ux) (fma.f32 (neg.f32 ux) 1 ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 (-.f32 (fma.f32 ux maxCos 1) ux) (fma.f32 (neg.f32 (sqrt.f32 ux)) (sqrt.f32 ux) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 (-.f32 (fma.f32 ux maxCos 1) ux) (fma.f32 (neg.f32 (cbrt.f32 ux)) (pow.f32 (cbrt.f32 ux) 2) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 (neg.f32 ux) (fma.f32 ux maxCos 1))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 (*.f32 ux maxCos) (+.f32 1 (neg.f32 ux)))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 (*.f32 ux maxCos) (-.f32 1 ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 1 (-.f32 (fma.f32 ux maxCos 1) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (-.f32 (fma.f32 ux maxCos 1) ux) 1)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (sqrt.f32 (-.f32 (fma.f32 ux maxCos 1) ux)) (sqrt.f32 (-.f32 (fma.f32 ux maxCos 1) ux)))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (cbrt.f32 (-.f32 (fma.f32 ux maxCos 1) ux)) (pow.f32 (cbrt.f32 (-.f32 (fma.f32 ux maxCos 1) ux)) 2))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (pow.f32 (cbrt.f32 (-.f32 (fma.f32 ux maxCos 1) ux)) 2) (cbrt.f32 (-.f32 (fma.f32 ux maxCos 1) ux)))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (-.f32 (pow.f32 (fma.f32 ux maxCos 1) 2) (*.f32 ux ux)) (/.f32 1 (+.f32 ux (fma.f32 ux maxCos 1))))
(/.f32 (-.f32 (pow.f32 (fma.f32 maxCos ux 1) 2) (*.f32 ux ux)) (+.f32 ux (fma.f32 maxCos ux 1)))
(*.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))))))
(/.f32 (-.f32 (pow.f32 (fma.f32 maxCos ux 1) 3) (pow.f32 ux 3)) (fma.f32 ux (+.f32 ux (fma.f32 maxCos ux 1)) (pow.f32 (fma.f32 maxCos ux 1) 2)))
(/.f32 (-.f32 (pow.f32 (fma.f32 maxCos ux 1) 3) (pow.f32 ux 3)) (fma.f32 ux ux (*.f32 (fma.f32 maxCos ux 1) (+.f32 ux (fma.f32 maxCos ux 1)))))
(*.f32 (+.f32 (sqrt.f32 (fma.f32 ux maxCos 1)) (sqrt.f32 ux)) (-.f32 (sqrt.f32 (fma.f32 ux maxCos 1)) (sqrt.f32 ux)))
(*.f32 (+.f32 (sqrt.f32 ux) (sqrt.f32 (fma.f32 ux maxCos 1))) (-.f32 (sqrt.f32 (fma.f32 ux maxCos 1)) (sqrt.f32 ux)))
(*.f32 (+.f32 (sqrt.f32 ux) (sqrt.f32 (fma.f32 maxCos ux 1))) (-.f32 (sqrt.f32 (fma.f32 maxCos ux 1)) (sqrt.f32 ux)))
(/.f32 1 (/.f32 (+.f32 ux (fma.f32 ux maxCos 1)) (-.f32 (pow.f32 (fma.f32 ux maxCos 1) 2) (*.f32 ux ux))))
(*.f32 (-.f32 (pow.f32 (fma.f32 ux maxCos 1) 2) (*.f32 ux ux)) (/.f32 1 (+.f32 ux (fma.f32 ux maxCos 1))))
(/.f32 (-.f32 (pow.f32 (fma.f32 maxCos ux 1) 2) (*.f32 ux ux)) (+.f32 ux (fma.f32 maxCos ux 1)))
(/.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))))
(*.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))))))
(/.f32 (-.f32 (pow.f32 (fma.f32 maxCos ux 1) 3) (pow.f32 ux 3)) (fma.f32 ux (+.f32 ux (fma.f32 maxCos ux 1)) (pow.f32 (fma.f32 maxCos ux 1) 2)))
(/.f32 (-.f32 (pow.f32 (fma.f32 maxCos ux 1) 3) (pow.f32 ux 3)) (fma.f32 ux ux (*.f32 (fma.f32 maxCos ux 1) (+.f32 ux (fma.f32 maxCos ux 1)))))
(/.f32 (-.f32 (pow.f32 (fma.f32 ux maxCos 1) 2) (*.f32 ux ux)) (+.f32 ux (fma.f32 ux maxCos 1)))
(*.f32 (-.f32 (pow.f32 (fma.f32 ux maxCos 1) 2) (*.f32 ux ux)) (/.f32 1 (+.f32 ux (fma.f32 ux maxCos 1))))
(/.f32 (-.f32 (pow.f32 (fma.f32 maxCos ux 1) 2) (*.f32 ux ux)) (+.f32 ux (fma.f32 maxCos ux 1)))
(/.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)))))
(*.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))))))
(/.f32 (-.f32 (pow.f32 (fma.f32 maxCos ux 1) 3) (pow.f32 ux 3)) (fma.f32 ux (+.f32 ux (fma.f32 maxCos ux 1)) (pow.f32 (fma.f32 maxCos ux 1) 2)))
(/.f32 (-.f32 (pow.f32 (fma.f32 maxCos ux 1) 3) (pow.f32 ux 3)) (fma.f32 ux ux (*.f32 (fma.f32 maxCos ux 1) (+.f32 ux (fma.f32 maxCos ux 1)))))
(/.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)))
(*.f32 (-.f32 (pow.f32 (fma.f32 ux maxCos 1) 2) (*.f32 ux ux)) (/.f32 1 (+.f32 ux (fma.f32 ux maxCos 1))))
(/.f32 (-.f32 (pow.f32 (fma.f32 maxCos ux 1) 2) (*.f32 ux ux)) (+.f32 ux (fma.f32 maxCos ux 1)))
(/.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)))))
(*.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))))))
(/.f32 (-.f32 (pow.f32 (fma.f32 maxCos ux 1) 3) (pow.f32 ux 3)) (fma.f32 ux (+.f32 ux (fma.f32 maxCos ux 1)) (pow.f32 (fma.f32 maxCos ux 1) 2)))
(/.f32 (-.f32 (pow.f32 (fma.f32 maxCos ux 1) 3) (pow.f32 ux 3)) (fma.f32 ux ux (*.f32 (fma.f32 maxCos ux 1) (+.f32 ux (fma.f32 maxCos ux 1)))))
(/.f32 (neg.f32 (-.f32 (pow.f32 (fma.f32 ux maxCos 1) 2) (*.f32 ux ux))) (neg.f32 (+.f32 ux (fma.f32 ux maxCos 1))))
(*.f32 (-.f32 (pow.f32 (fma.f32 ux maxCos 1) 2) (*.f32 ux ux)) (/.f32 1 (+.f32 ux (fma.f32 ux maxCos 1))))
(/.f32 (-.f32 (pow.f32 (fma.f32 maxCos ux 1) 2) (*.f32 ux ux)) (+.f32 ux (fma.f32 maxCos ux 1)))
(/.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))))))
(*.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))))))
(/.f32 (-.f32 (pow.f32 (fma.f32 maxCos ux 1) 3) (pow.f32 ux 3)) (fma.f32 ux (+.f32 ux (fma.f32 maxCos ux 1)) (pow.f32 (fma.f32 maxCos ux 1) 2)))
(/.f32 (-.f32 (pow.f32 (fma.f32 maxCos ux 1) 3) (pow.f32 ux 3)) (fma.f32 ux ux (*.f32 (fma.f32 maxCos ux 1) (+.f32 ux (fma.f32 maxCos ux 1)))))
(pow.f32 (-.f32 (fma.f32 ux maxCos 1) ux) 1)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(pow.f32 (sqrt.f32 (-.f32 (fma.f32 ux maxCos 1) ux)) 2)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(pow.f32 (cbrt.f32 (-.f32 (fma.f32 ux maxCos 1) ux)) 3)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(pow.f32 (pow.f32 (-.f32 (fma.f32 ux maxCos 1) ux) 3) 1/3)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(sqrt.f32 (pow.f32 (-.f32 (fma.f32 ux maxCos 1) ux) 2))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(log.f32 (exp.f32 (-.f32 (fma.f32 ux maxCos 1) ux)))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(log.f32 (+.f32 1 (expm1.f32 (-.f32 (fma.f32 ux maxCos 1) ux))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(cbrt.f32 (pow.f32 (-.f32 (fma.f32 ux maxCos 1) ux) 3))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(expm1.f32 (log1p.f32 (-.f32 (fma.f32 ux maxCos 1) ux)))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(exp.f32 (log.f32 (-.f32 (fma.f32 ux maxCos 1) ux)))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(exp.f32 (*.f32 (log.f32 (-.f32 (fma.f32 ux maxCos 1) ux)) 1))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(log1p.f32 (expm1.f32 (-.f32 (fma.f32 ux maxCos 1) ux)))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(fma.f32 1 (fma.f32 ux maxCos 1) (neg.f32 ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(fma.f32 (sqrt.f32 (fma.f32 ux maxCos 1)) (sqrt.f32 (fma.f32 ux maxCos 1)) (neg.f32 ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(fma.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos 1)) 2) (cbrt.f32 (fma.f32 ux maxCos 1)) (neg.f32 ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)

eval89.0ms (3.1%)

Compiler

Compiled 5573 to 3502 computations (37.2% saved)

prune34.0ms (1.2%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New2304234
Fresh000
Picked101
Done011
Total2315236
Error
0b
Counts
236 → 5
Alt Table
Click to see full alt table
StatusErrorProgram
0.4b
(pow.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)
0.0b
(-.f32 1 (*.f32 ux (-.f32 1 maxCos)))
0.6b
(-.f32 1 ux)
0.0b
(+.f32 (-.f32 1 ux) (*.f32 ux maxCos))
9.6b
1
Compiler

Compiled 42 to 33 computations (21.4% saved)

localize7.0ms (0.2%)

Compiler

Compiled 8 to 6 computations (25% saved)

localize20.0ms (0.7%)

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)

series2.0ms (0.1%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
maxCos
@0
(*.f32 ux (-.f32 1 maxCos))
0.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))

rewrite61.0ms (2.1%)

Algorithm
batch-egg-rewrite
Rules
1908×add-sqr-sqrt
1892×*-un-lft-identity
1762×add-cube-cbrt
1748×add-cbrt-cube
180×pow1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0832
117432
2232032
Stop Event
node limit
Counts
2 → 49
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 ux (neg.f32 maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 ux (*.f32 (neg.f32 maxCos) ux))))) (#(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 ux (-.f32 1 (*.f32 maxCos maxCos))) (+.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 (-.f32 1 (*.f32 maxCos maxCos)) ux) (+.f32 1 maxCos))))) (#(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 pow.f32 (*.f32 ux (-.f32 1 maxCos)) 1)))) (#(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 (cbrt.f32 (*.f32 ux (-.f32 1 maxCos))) 3)))) (#(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 (-.f32 1 maxCos)) ux))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.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 exp.f32 (log.f32 (*.f32 ux (-.f32 1 maxCos))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 ux (-.f32 1 maxCos))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 ux (-.f32 1 maxCos))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 1 (*.f32 ux (neg.f32 (-.f32 1 maxCos))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 1 (*.f32 (*.f32 ux (neg.f32 (-.f32 1 maxCos))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 ux (neg.f32 (-.f32 1 maxCos))) 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 (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 (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 (-.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 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (/.f32 1 (+.f32 1 (+.f32 (*.f32 ux (-.f32 1 maxCos)) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)))))))) (#(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 1 (/.f32 (+.f32 1 (+.f32 (*.f32 ux (-.f32 1 maxCos)) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2))) (-.f32 1 (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)) 2)) (+.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 (*.f32 ux (-.f32 1 maxCos)) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 1 (*.f32 (*.f32 ux (neg.f32 (-.f32 1 maxCos))) (*.f32 ux (neg.f32 (-.f32 1 maxCos))))) (-.f32 1 (*.f32 ux (neg.f32 (-.f32 1 maxCos)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 1 (pow.f32 (*.f32 ux (neg.f32 (-.f32 1 maxCos))) 3)) (+.f32 1 (-.f32 (*.f32 (*.f32 ux (neg.f32 (-.f32 1 maxCos))) (*.f32 ux (neg.f32 (-.f32 1 maxCos)))) (*.f32 ux (neg.f32 (-.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 (neg.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) (neg.f32 (+.f32 1 (+.f32 (*.f32 ux (-.f32 1 maxCos)) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)))))))) (#(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 (sqrt.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos)))) 2)))) (#(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 (pow.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos))) 3) 1/3)))) (#(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 log.f32 (+.f32 1 (expm1.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 exp.f32 (log1p.f32 (*.f32 ux (neg.f32 (-.f32 1 maxCos)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log1p.f32 (*.f32 ux (neg.f32 (-.f32 1 maxCos)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos)))))))))

simplify71.0ms (2.5%)

Algorithm
egg-herbie
Rules
1144×associate-+r-
954×associate-+l-
674×fma-def
650×+-commutative
604×distribute-lft-in
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01342063
13321831
212971811
363461811
Stop Event
node limit
Counts
97 → 80
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)
(+.f32 ux (*.f32 ux (neg.f32 maxCos)))
(+.f32 ux (*.f32 (neg.f32 maxCos) ux))
(-.f32 (+.f32 1 (*.f32 ux (-.f32 1 maxCos))) 1)
(/.f32 (*.f32 ux (-.f32 1 (*.f32 maxCos maxCos))) (+.f32 1 maxCos))
(/.f32 (*.f32 ux (-.f32 1 (pow.f32 maxCos 3))) (+.f32 1 (fma.f32 maxCos maxCos maxCos)))
(/.f32 (*.f32 (-.f32 1 (*.f32 maxCos maxCos)) ux) (+.f32 1 maxCos))
(/.f32 (*.f32 (-.f32 1 (pow.f32 maxCos 3)) ux) (+.f32 1 (fma.f32 maxCos maxCos maxCos)))
(pow.f32 (*.f32 ux (-.f32 1 maxCos)) 1)
(pow.f32 (sqrt.f32 (*.f32 ux (-.f32 1 maxCos))) 2)
(pow.f32 (cbrt.f32 (*.f32 ux (-.f32 1 maxCos))) 3)
(pow.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3) 1/3)
(sqrt.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2))
(log.f32 (pow.f32 (exp.f32 (-.f32 1 maxCos)) ux))
(log.f32 (+.f32 1 (expm1.f32 (*.f32 ux (-.f32 1 maxCos)))))
(cbrt.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))
(expm1.f32 (log1p.f32 (*.f32 ux (-.f32 1 maxCos))))
(exp.f32 (log.f32 (*.f32 ux (-.f32 1 maxCos))))
(exp.f32 (*.f32 (log.f32 (*.f32 ux (-.f32 1 maxCos))) 1))
(log1p.f32 (expm1.f32 (*.f32 ux (-.f32 1 maxCos))))
(+.f32 1 (*.f32 ux (neg.f32 (-.f32 1 maxCos))))
(+.f32 1 (*.f32 (*.f32 ux (neg.f32 (-.f32 1 maxCos))) 1))
(+.f32 (*.f32 ux (neg.f32 (-.f32 1 maxCos))) 1)
(*.f32 1 (-.f32 1 (*.f32 ux (-.f32 1 maxCos))))
(*.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos))) 1)
(*.f32 (sqrt.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos)))) (sqrt.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos)))))
(*.f32 (cbrt.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos)))) (pow.f32 (cbrt.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos)))) 2))
(*.f32 (pow.f32 (cbrt.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos)))) 2) (cbrt.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos)))))
(*.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)) (/.f32 1 (+.f32 1 (*.f32 ux (-.f32 1 maxCos)))))
(*.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (/.f32 1 (+.f32 1 (+.f32 (*.f32 ux (-.f32 1 maxCos)) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)))))
(/.f32 1 (/.f32 (+.f32 1 (*.f32 ux (-.f32 1 maxCos))) (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2))))
(/.f32 1 (/.f32 (+.f32 1 (+.f32 (*.f32 ux (-.f32 1 maxCos)) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2))) (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))))
(/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)) (+.f32 1 (*.f32 ux (-.f32 1 maxCos))))
(/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (+.f32 1 (+.f32 (*.f32 ux (-.f32 1 maxCos)) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2))))
(/.f32 (-.f32 1 (*.f32 (*.f32 ux (neg.f32 (-.f32 1 maxCos))) (*.f32 ux (neg.f32 (-.f32 1 maxCos))))) (-.f32 1 (*.f32 ux (neg.f32 (-.f32 1 maxCos)))))
(/.f32 (+.f32 1 (pow.f32 (*.f32 ux (neg.f32 (-.f32 1 maxCos))) 3)) (+.f32 1 (-.f32 (*.f32 (*.f32 ux (neg.f32 (-.f32 1 maxCos))) (*.f32 ux (neg.f32 (-.f32 1 maxCos)))) (*.f32 ux (neg.f32 (-.f32 1 maxCos))))))
(/.f32 (neg.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2))) (neg.f32 (+.f32 1 (*.f32 ux (-.f32 1 maxCos)))))
(/.f32 (neg.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) (neg.f32 (+.f32 1 (+.f32 (*.f32 ux (-.f32 1 maxCos)) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)))))
(pow.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos))) 1)
(pow.f32 (sqrt.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos)))) 2)
(pow.f32 (cbrt.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos)))) 3)
(pow.f32 (pow.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos))) 3) 1/3)
(sqrt.f32 (pow.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos))) 2))
(log.f32 (exp.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos)))))
(log.f32 (+.f32 1 (expm1.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos))))))
(cbrt.f32 (pow.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos))) 3))
(expm1.f32 (log1p.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos)))))
(exp.f32 (log1p.f32 (*.f32 ux (neg.f32 (-.f32 1 maxCos)))))
(exp.f32 (*.f32 (log1p.f32 (*.f32 ux (neg.f32 (-.f32 1 maxCos)))) 1))
(log1p.f32 (expm1.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos)))))
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))
(*.f32 ux (neg.f32 maxCos))
(*.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))
(*.f32 ux (neg.f32 maxCos))
(*.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)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (-.f32 maxCos 1) ux)
(*.f32 ux (+.f32 maxCos -1))
(-.f32 (*.f32 maxCos ux) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 -1 (*.f32 (-.f32 1 maxCos) ux))
(*.f32 ux (+.f32 maxCos -1))
(-.f32 (*.f32 maxCos ux) ux)
(+.f32 1 (*.f32 -1 (*.f32 (-.f32 1 maxCos) ux)))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 1 (*.f32 -1 (*.f32 (-.f32 1 maxCos) ux)))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 1 (*.f32 -1 (*.f32 (-.f32 1 maxCos) ux)))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 1 ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 maxCos ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 maxCos ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 ux (*.f32 ux (neg.f32 maxCos)))
(*.f32 (-.f32 1 maxCos) ux)
(-.f32 ux (*.f32 maxCos ux))
(+.f32 ux (*.f32 (neg.f32 maxCos) ux))
(*.f32 (-.f32 1 maxCos) ux)
(-.f32 ux (*.f32 maxCos ux))
(-.f32 (+.f32 1 (*.f32 ux (-.f32 1 maxCos))) 1)
(*.f32 (-.f32 1 maxCos) ux)
(-.f32 ux (*.f32 maxCos ux))
(/.f32 (*.f32 ux (-.f32 1 (*.f32 maxCos maxCos))) (+.f32 1 maxCos))
(/.f32 ux (/.f32 (+.f32 1 maxCos) (-.f32 1 (*.f32 maxCos maxCos))))
(*.f32 (/.f32 ux (+.f32 1 maxCos)) (-.f32 1 (*.f32 maxCos maxCos)))
(*.f32 ux (/.f32 (-.f32 1 (*.f32 maxCos maxCos)) (+.f32 1 maxCos)))
(/.f32 (*.f32 ux (-.f32 1 (pow.f32 maxCos 3))) (+.f32 1 (fma.f32 maxCos maxCos maxCos)))
(/.f32 ux (/.f32 (+.f32 1 (fma.f32 maxCos maxCos maxCos)) (-.f32 1 (pow.f32 maxCos 3))))
(*.f32 (/.f32 ux (+.f32 1 (fma.f32 maxCos maxCos maxCos))) (-.f32 1 (pow.f32 maxCos 3)))
(*.f32 ux (/.f32 (-.f32 1 (pow.f32 maxCos 3)) (+.f32 1 (fma.f32 maxCos maxCos maxCos))))
(/.f32 (*.f32 (-.f32 1 (*.f32 maxCos maxCos)) ux) (+.f32 1 maxCos))
(/.f32 ux (/.f32 (+.f32 1 maxCos) (-.f32 1 (*.f32 maxCos maxCos))))
(*.f32 (/.f32 ux (+.f32 1 maxCos)) (-.f32 1 (*.f32 maxCos maxCos)))
(*.f32 ux (/.f32 (-.f32 1 (*.f32 maxCos maxCos)) (+.f32 1 maxCos)))
(/.f32 (*.f32 (-.f32 1 (pow.f32 maxCos 3)) ux) (+.f32 1 (fma.f32 maxCos maxCos maxCos)))
(/.f32 ux (/.f32 (+.f32 1 (fma.f32 maxCos maxCos maxCos)) (-.f32 1 (pow.f32 maxCos 3))))
(*.f32 (/.f32 ux (+.f32 1 (fma.f32 maxCos maxCos maxCos))) (-.f32 1 (pow.f32 maxCos 3)))
(*.f32 ux (/.f32 (-.f32 1 (pow.f32 maxCos 3)) (+.f32 1 (fma.f32 maxCos maxCos maxCos))))
(pow.f32 (*.f32 ux (-.f32 1 maxCos)) 1)
(*.f32 (-.f32 1 maxCos) ux)
(-.f32 ux (*.f32 maxCos ux))
(pow.f32 (sqrt.f32 (*.f32 ux (-.f32 1 maxCos))) 2)
(*.f32 (-.f32 1 maxCos) ux)
(-.f32 ux (*.f32 maxCos ux))
(pow.f32 (cbrt.f32 (*.f32 ux (-.f32 1 maxCos))) 3)
(*.f32 (-.f32 1 maxCos) ux)
(-.f32 ux (*.f32 maxCos ux))
(pow.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3) 1/3)
(*.f32 (-.f32 1 maxCos) ux)
(-.f32 ux (*.f32 maxCos ux))
(sqrt.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2))
(*.f32 (-.f32 1 maxCos) ux)
(-.f32 ux (*.f32 maxCos ux))
(log.f32 (pow.f32 (exp.f32 (-.f32 1 maxCos)) ux))
(*.f32 (-.f32 1 maxCos) ux)
(-.f32 ux (*.f32 maxCos ux))
(log.f32 (+.f32 1 (expm1.f32 (*.f32 ux (-.f32 1 maxCos)))))
(*.f32 (-.f32 1 maxCos) ux)
(-.f32 ux (*.f32 maxCos ux))
(cbrt.f32 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))
(*.f32 (-.f32 1 maxCos) ux)
(-.f32 ux (*.f32 maxCos ux))
(expm1.f32 (log1p.f32 (*.f32 ux (-.f32 1 maxCos))))
(*.f32 (-.f32 1 maxCos) ux)
(-.f32 ux (*.f32 maxCos ux))
(exp.f32 (log.f32 (*.f32 ux (-.f32 1 maxCos))))
(*.f32 (-.f32 1 maxCos) ux)
(-.f32 ux (*.f32 maxCos ux))
(exp.f32 (*.f32 (log.f32 (*.f32 ux (-.f32 1 maxCos))) 1))
(*.f32 (-.f32 1 maxCos) ux)
(-.f32 ux (*.f32 maxCos ux))
(log1p.f32 (expm1.f32 (*.f32 ux (-.f32 1 maxCos))))
(*.f32 (-.f32 1 maxCos) ux)
(-.f32 ux (*.f32 maxCos ux))
(+.f32 1 (*.f32 ux (neg.f32 (-.f32 1 maxCos))))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 1 (*.f32 (*.f32 ux (neg.f32 (-.f32 1 maxCos))) 1))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 (*.f32 ux (neg.f32 (-.f32 1 maxCos))) 1)
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 1 (-.f32 1 (*.f32 ux (-.f32 1 maxCos))))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos))) 1)
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (sqrt.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos)))) (sqrt.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos)))))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (cbrt.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos)))) (pow.f32 (cbrt.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos)))) 2))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (pow.f32 (cbrt.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos)))) 2) (cbrt.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos)))))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)) (/.f32 1 (+.f32 1 (*.f32 ux (-.f32 1 maxCos)))))
(/.f32 (*.f32 (-.f32 1 (pow.f32 (*.f32 (-.f32 1 maxCos) ux) 2)) 1) (+.f32 1 (*.f32 (-.f32 1 maxCos) ux)))
(/.f32 (-.f32 1 (pow.f32 (-.f32 ux (*.f32 maxCos ux)) 2)) (fma.f32 (-.f32 1 maxCos) ux 1))
(*.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (/.f32 1 (+.f32 1 (+.f32 (*.f32 ux (-.f32 1 maxCos)) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)))))
(/.f32 (*.f32 (-.f32 1 (pow.f32 (*.f32 (-.f32 1 maxCos) ux) 3)) 1) (+.f32 1 (fma.f32 ux (-.f32 1 maxCos) (pow.f32 (*.f32 (-.f32 1 maxCos) ux) 2))))
(/.f32 (+.f32 1 (pow.f32 (-.f32 (*.f32 maxCos ux) ux) 3)) (+.f32 1 (*.f32 (fma.f32 (-.f32 1 maxCos) ux 1) (-.f32 ux (*.f32 maxCos ux)))))
(/.f32 (-.f32 1 (pow.f32 (-.f32 ux (*.f32 maxCos ux)) 3)) (fma.f32 ux (*.f32 (+.f32 maxCos -1) (fma.f32 ux (+.f32 maxCos -1) -1)) 1))
(/.f32 1 (/.f32 (+.f32 1 (*.f32 ux (-.f32 1 maxCos))) (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2))))
(/.f32 (*.f32 (-.f32 1 (pow.f32 (*.f32 (-.f32 1 maxCos) ux) 2)) 1) (+.f32 1 (*.f32 (-.f32 1 maxCos) ux)))
(/.f32 (-.f32 1 (pow.f32 (-.f32 ux (*.f32 maxCos ux)) 2)) (fma.f32 (-.f32 1 maxCos) ux 1))
(/.f32 1 (/.f32 (+.f32 1 (+.f32 (*.f32 ux (-.f32 1 maxCos)) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2))) (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))))
(/.f32 (*.f32 (-.f32 1 (pow.f32 (*.f32 (-.f32 1 maxCos) ux) 3)) 1) (+.f32 1 (fma.f32 ux (-.f32 1 maxCos) (pow.f32 (*.f32 (-.f32 1 maxCos) ux) 2))))
(/.f32 (+.f32 1 (pow.f32 (-.f32 (*.f32 maxCos ux) ux) 3)) (+.f32 1 (*.f32 (fma.f32 (-.f32 1 maxCos) ux 1) (-.f32 ux (*.f32 maxCos ux)))))
(/.f32 (-.f32 1 (pow.f32 (-.f32 ux (*.f32 maxCos ux)) 3)) (fma.f32 ux (*.f32 (+.f32 maxCos -1) (fma.f32 ux (+.f32 maxCos -1) -1)) 1))
(/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)) (+.f32 1 (*.f32 ux (-.f32 1 maxCos))))
(/.f32 (*.f32 (-.f32 1 (pow.f32 (*.f32 (-.f32 1 maxCos) ux) 2)) 1) (+.f32 1 (*.f32 (-.f32 1 maxCos) ux)))
(/.f32 (-.f32 1 (pow.f32 (-.f32 ux (*.f32 maxCos ux)) 2)) (fma.f32 (-.f32 1 maxCos) ux 1))
(/.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3)) (+.f32 1 (+.f32 (*.f32 ux (-.f32 1 maxCos)) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2))))
(/.f32 (*.f32 (-.f32 1 (pow.f32 (*.f32 (-.f32 1 maxCos) ux) 3)) 1) (+.f32 1 (fma.f32 ux (-.f32 1 maxCos) (pow.f32 (*.f32 (-.f32 1 maxCos) ux) 2))))
(/.f32 (+.f32 1 (pow.f32 (-.f32 (*.f32 maxCos ux) ux) 3)) (+.f32 1 (*.f32 (fma.f32 (-.f32 1 maxCos) ux 1) (-.f32 ux (*.f32 maxCos ux)))))
(/.f32 (-.f32 1 (pow.f32 (-.f32 ux (*.f32 maxCos ux)) 3)) (fma.f32 ux (*.f32 (+.f32 maxCos -1) (fma.f32 ux (+.f32 maxCos -1) -1)) 1))
(/.f32 (-.f32 1 (*.f32 (*.f32 ux (neg.f32 (-.f32 1 maxCos))) (*.f32 ux (neg.f32 (-.f32 1 maxCos))))) (-.f32 1 (*.f32 ux (neg.f32 (-.f32 1 maxCos)))))
(/.f32 (*.f32 (-.f32 1 (pow.f32 (*.f32 (-.f32 1 maxCos) ux) 2)) 1) (+.f32 1 (*.f32 (-.f32 1 maxCos) ux)))
(/.f32 (-.f32 1 (pow.f32 (-.f32 ux (*.f32 maxCos ux)) 2)) (fma.f32 (-.f32 1 maxCos) ux 1))
(/.f32 (+.f32 1 (pow.f32 (*.f32 ux (neg.f32 (-.f32 1 maxCos))) 3)) (+.f32 1 (-.f32 (*.f32 (*.f32 ux (neg.f32 (-.f32 1 maxCos))) (*.f32 ux (neg.f32 (-.f32 1 maxCos)))) (*.f32 ux (neg.f32 (-.f32 1 maxCos))))))
(/.f32 (*.f32 (-.f32 1 (pow.f32 (*.f32 (-.f32 1 maxCos) ux) 3)) 1) (+.f32 1 (fma.f32 ux (-.f32 1 maxCos) (pow.f32 (*.f32 (-.f32 1 maxCos) ux) 2))))
(/.f32 (+.f32 1 (pow.f32 (-.f32 (*.f32 maxCos ux) ux) 3)) (+.f32 1 (*.f32 (fma.f32 (-.f32 1 maxCos) ux 1) (-.f32 ux (*.f32 maxCos ux)))))
(/.f32 (-.f32 1 (pow.f32 (-.f32 ux (*.f32 maxCos ux)) 3)) (fma.f32 ux (*.f32 (+.f32 maxCos -1) (fma.f32 ux (+.f32 maxCos -1) -1)) 1))
(/.f32 (neg.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2))) (neg.f32 (+.f32 1 (*.f32 ux (-.f32 1 maxCos)))))
(/.f32 (*.f32 (-.f32 1 (pow.f32 (*.f32 (-.f32 1 maxCos) ux) 2)) 1) (+.f32 1 (*.f32 (-.f32 1 maxCos) ux)))
(/.f32 (-.f32 1 (pow.f32 (-.f32 ux (*.f32 maxCos ux)) 2)) (fma.f32 (-.f32 1 maxCos) ux 1))
(/.f32 (neg.f32 (-.f32 1 (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 3))) (neg.f32 (+.f32 1 (+.f32 (*.f32 ux (-.f32 1 maxCos)) (pow.f32 (*.f32 ux (-.f32 1 maxCos)) 2)))))
(/.f32 (*.f32 (-.f32 1 (pow.f32 (*.f32 (-.f32 1 maxCos) ux) 3)) 1) (+.f32 1 (fma.f32 ux (-.f32 1 maxCos) (pow.f32 (*.f32 (-.f32 1 maxCos) ux) 2))))
(/.f32 (+.f32 1 (pow.f32 (-.f32 (*.f32 maxCos ux) ux) 3)) (+.f32 1 (*.f32 (fma.f32 (-.f32 1 maxCos) ux 1) (-.f32 ux (*.f32 maxCos ux)))))
(/.f32 (-.f32 1 (pow.f32 (-.f32 ux (*.f32 maxCos ux)) 3)) (fma.f32 ux (*.f32 (+.f32 maxCos -1) (fma.f32 ux (+.f32 maxCos -1) -1)) 1))
(pow.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos))) 1)
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(pow.f32 (sqrt.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos)))) 2)
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(pow.f32 (cbrt.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos)))) 3)
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(pow.f32 (pow.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos))) 3) 1/3)
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(sqrt.f32 (pow.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos))) 2))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(log.f32 (exp.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos)))))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(log.f32 (+.f32 1 (expm1.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos))))))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(cbrt.f32 (pow.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos))) 3))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(expm1.f32 (log1p.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos)))))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)
(exp.f32 (log1p.f32 (*.f32 ux (neg.f32 (-.f32 1 maxCos)))))
(exp.f32 (log1p.f32 (-.f32 (*.f32 maxCos ux) ux)))
(exp.f32 (*.f32 (log1p.f32 (*.f32 ux (neg.f32 (-.f32 1 maxCos)))) 1))
(exp.f32 (log1p.f32 (*.f32 ux (neg.f32 (-.f32 1 maxCos)))))
(exp.f32 (log1p.f32 (-.f32 (*.f32 maxCos ux) ux)))
(log1p.f32 (expm1.f32 (-.f32 1 (*.f32 ux (-.f32 1 maxCos)))))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(-.f32 (fma.f32 maxCos ux 1) ux)

localize30.0ms (1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(fma.f32 ux maxCos (-.f32 1 ux))
0.1b
(sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))
0.4b
(pow.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)
Compiler

Compiled 32 to 20 computations (37.5% saved)

series8.0ms (0.3%)

Counts
3 → 40
Calls

18 calls:

TimeVariablePointExpression
1.0ms
ux
@-inf
(pow.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)
1.0ms
maxCos
@0
(sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))
1.0ms
ux
@inf
(pow.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)
1.0ms
maxCos
@inf
(pow.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)
1.0ms
ux
@inf
(sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))

rewrite80.0ms (2.8%)

Algorithm
batch-egg-rewrite
Rules
848×*-commutative
640×unswap-sqr
504×swap-sqr
402×associate-*r/
378×sqr-pow
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01249
124449
2260749
Stop Event
node limit
Counts
3 → 170
Calls
Call 1
Inputs
(pow.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)
(sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))
(fma.f32 ux maxCos (-.f32 1 ux))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f32 1 (+.f32 (neg.f32 ux) (*.f32 ux maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (-.f32 1 ux) (*.f32 ux maxCos))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (neg.f32 ux) (+.f32 1 (*.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 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (+.f32 1 (*.f32 ux maxCos)) (neg.f32 ux))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (+.f32 (*.f32 ux maxCos) (neg.f32 ux)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (-.f32 (+.f32 1 (*.f32 ux maxCos)) (+.f32 ux 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 1 (+.f32 1 (*.f32 ux maxCos))) (neg.f32 ux))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (+.f32 1 (*.f32 ux maxCos)) 1) (neg.f32 ux))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 1 (-.f32 ux (*.f32 ux maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log.f32 (-.f32 2 ux))) (-.f32 1 (*.f32 ux maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (*.f32 ux maxCos)) ux)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 1 (+.f32 ux 1)) (-.f32 (/.f32 (*.f32 ux ux) (+.f32 ux 1)) (*.f32 ux maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 1 (+.f32 1 (fma.f32 ux ux ux))) (-.f32 (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux))) (*.f32 ux maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 (*.f32 ux maxCos) (exp.f32 (log.f32 (-.f32 2 ux)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 (*.f32 ux maxCos) (/.f32 1 (+.f32 ux 1))) (/.f32 (*.f32 ux ux) (+.f32 ux 1)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 (*.f32 ux maxCos) (/.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 (+.f32 1 (*.f32 ux maxCos)) 0) 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 (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/4) (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4)))))) (#(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 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))))) (#(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 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4)) (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (pow.f32 (-.f32 1 ux) 2)) (/.f32 1 (+.f32 (-.f32 (*.f32 ux maxCos) 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 ux maxCos) 2) (*.f32 (-.f32 1 ux) (-.f32 (-.f32 1 ux) (*.f32 ux maxCos))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (pow.f32 1 1/2) (pow.f32 1 1/2)) (fma.f32 ux maxCos (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (*.f32 (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2))) (*.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (*.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (*.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 3/2) (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2) 1/4) (pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3) 1/6) (pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux) (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (pow.f32 (-.f32 1 ux) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (+.f32 (pow.f32 (*.f32 ux maxCos) 2) (*.f32 (-.f32 1 ux) (-.f32 (-.f32 1 ux) (*.f32 ux maxCos)))) (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (pow.f32 (-.f32 1 ux) 2)) (+.f32 (-.f32 (*.f32 ux maxCos) 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 (-.f32 1 ux) (-.f32 (-.f32 1 ux) (*.f32 ux maxCos)))))))) (#(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 (pow.f32 (*.f32 ux maxCos) 2) (*.f32 (-.f32 1 ux) (*.f32 ux maxCos)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 1 (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (pow.f32 (-.f32 1 ux) 2))) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 1 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3))) (+.f32 (pow.f32 (*.f32 ux maxCos) 2) (*.f32 (-.f32 1 ux) (-.f32 (-.f32 1 ux) (*.f32 ux maxCos)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (pow.f32 (-.f32 1 ux) 2)) 1) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)) 1) (+.f32 (pow.f32 (*.f32 ux maxCos) 2) (*.f32 (-.f32 1 ux) (-.f32 (-.f32 1 ux) (*.f32 ux maxCos)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 (-.f32 1 ux) (*.f32 ux maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (*.f32 (+.f32 1 (*.f32 ux maxCos)) (+.f32 1 (*.f32 ux maxCos))) (*.f32 ux ux)) (-.f32 (+.f32 1 (*.f32 ux maxCos)) (neg.f32 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (*.f32 (+.f32 1 (*.f32 ux maxCos)) (+.f32 1 (*.f32 ux maxCos))) (*.f32 ux ux)) (+.f32 (+.f32 1 (*.f32 ux maxCos)) ux))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (*.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) 1) (+.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (+.f32 1 (*.f32 ux maxCos)) 3) (pow.f32 (neg.f32 ux) 3)) (+.f32 (*.f32 (+.f32 1 (*.f32 ux maxCos)) (+.f32 1 (*.f32 ux maxCos))) (-.f32 (*.f32 ux ux) (*.f32 (+.f32 1 (*.f32 ux maxCos)) (neg.f32 ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 3) 1) (+.f32 (*.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (+.f32 1 (*.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (+.f32 1 (*.f32 ux maxCos)) 3) (pow.f32 ux 3)) (+.f32 (*.f32 (+.f32 1 (*.f32 ux maxCos)) (+.f32 1 (*.f32 ux maxCos))) (+.f32 (*.f32 ux ux) (*.f32 (+.f32 1 (*.f32 ux maxCos)) 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 log.f32 (+.f32 1 (expm1.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 exp.f32 (log.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 fma.f32 ux maxCos (-.f32 1 ux))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (exp.f32 (log1p.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (sqrt.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))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (pow.f32 1 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4) (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)) (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 1 1/2) (sqrt.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/2) (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 1/2) (pow.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (sqrt.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))) (*.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (sqrt.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4))) (*.f32 (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (sqrt.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (*.f32 (sqrt.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4)) (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (*.f32 (cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4)) (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 3/2) (pow.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3/2) 1/6) (pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3/2) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (*.f32 (exp.f32 (log1p.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (exp.f32 (log1p.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))) 1) (+.f32 (exp.f32 (log1p.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (exp.f32 (log1p.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) 3) 1) (+.f32 (*.f32 (exp.f32 (log1p.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (exp.f32 (log1p.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))) (+.f32 1 (*.f32 (exp.f32 (log1p.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.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)) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (sqrt.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/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (sqrt.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/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 1 (+.f32 (neg.f32 ux) (*.f32 ux maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (-.f32 1 ux) (*.f32 ux maxCos))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (neg.f32 ux) (+.f32 1 (*.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 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (+.f32 1 (*.f32 ux maxCos)) (neg.f32 ux))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (+.f32 (*.f32 ux maxCos) (neg.f32 ux)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (-.f32 (+.f32 1 (*.f32 ux maxCos)) (+.f32 ux 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 1 (+.f32 1 (*.f32 ux maxCos))) (neg.f32 ux))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (+.f32 1 (*.f32 ux maxCos)) 1) (neg.f32 ux))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 1 (-.f32 ux (*.f32 ux maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log.f32 (-.f32 2 ux))) (-.f32 1 (*.f32 ux maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (*.f32 ux maxCos)) ux)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 1 (+.f32 ux 1)) (-.f32 (/.f32 (*.f32 ux ux) (+.f32 ux 1)) (*.f32 ux maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 1 (+.f32 1 (fma.f32 ux ux ux))) (-.f32 (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux))) (*.f32 ux maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 (*.f32 ux maxCos) (exp.f32 (log.f32 (-.f32 2 ux)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 (*.f32 ux maxCos) (/.f32 1 (+.f32 ux 1))) (/.f32 (*.f32 ux ux) (+.f32 ux 1)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 (*.f32 ux maxCos) (/.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 (+.f32 1 (*.f32 ux maxCos)) 0) 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 (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/4) (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4)))))) (#(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 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))))) (#(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 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4)) (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (pow.f32 (-.f32 1 ux) 2)) (/.f32 1 (+.f32 (-.f32 (*.f32 ux maxCos) 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 ux maxCos) 2) (*.f32 (-.f32 1 ux) (-.f32 (-.f32 1 ux) (*.f32 ux maxCos))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (pow.f32 1 1/2) (pow.f32 1 1/2)) (fma.f32 ux maxCos (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (*.f32 (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2))) (*.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (*.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (*.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 3/2) (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2) 1/4) (pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3) 1/6) (pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux) (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (pow.f32 (-.f32 1 ux) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (+.f32 (pow.f32 (*.f32 ux maxCos) 2) (*.f32 (-.f32 1 ux) (-.f32 (-.f32 1 ux) (*.f32 ux maxCos)))) (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (pow.f32 (-.f32 1 ux) 2)) (+.f32 (-.f32 (*.f32 ux maxCos) 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 (-.f32 1 ux) (-.f32 (-.f32 1 ux) (*.f32 ux maxCos)))))))) (#(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 (pow.f32 (*.f32 ux maxCos) 2) (*.f32 (-.f32 1 ux) (*.f32 ux maxCos)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 1 (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (pow.f32 (-.f32 1 ux) 2))) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 1 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3))) (+.f32 (pow.f32 (*.f32 ux maxCos) 2) (*.f32 (-.f32 1 ux) (-.f32 (-.f32 1 ux) (*.f32 ux maxCos)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (pow.f32 (-.f32 1 ux) 2)) 1) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)) 1) (+.f32 (pow.f32 (*.f32 ux maxCos) 2) (*.f32 (-.f32 1 ux) (-.f32 (-.f32 1 ux) (*.f32 ux maxCos)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 (-.f32 1 ux) (*.f32 ux maxCos)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (*.f32 (+.f32 1 (*.f32 ux maxCos)) (+.f32 1 (*.f32 ux maxCos))) (*.f32 ux ux)) (-.f32 (+.f32 1 (*.f32 ux maxCos)) (neg.f32 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (*.f32 (+.f32 1 (*.f32 ux maxCos)) (+.f32 1 (*.f32 ux maxCos))) (*.f32 ux ux)) (+.f32 (+.f32 1 (*.f32 ux maxCos)) ux))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (*.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) 1) (+.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (+.f32 1 (*.f32 ux maxCos)) 3) (pow.f32 (neg.f32 ux) 3)) (+.f32 (*.f32 (+.f32 1 (*.f32 ux maxCos)) (+.f32 1 (*.f32 ux maxCos))) (-.f32 (*.f32 ux ux) (*.f32 (+.f32 1 (*.f32 ux maxCos)) (neg.f32 ux)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 3) 1) (+.f32 (*.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (+.f32 1 (*.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (+.f32 1 (*.f32 ux maxCos)) 3) (pow.f32 ux 3)) (+.f32 (*.f32 (+.f32 1 (*.f32 ux maxCos)) (+.f32 1 (*.f32 ux maxCos))) (+.f32 (*.f32 ux ux) (*.f32 (+.f32 1 (*.f32 ux maxCos)) 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 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4) 4)))) (#(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 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2) 1/2)))) (#(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 (fma.f32 ux maxCos (-.f32 1 ux)) 3/2) 2/3)))) (#(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 log.f32 (+.f32 1 (expm1.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 exp.f32 (log.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))))))))

simplify102.0ms (3.5%)

Algorithm
egg-herbie
Rules
706×+-commutative
690×associate-/l*
604×associate-*r*
554×associate-/r*
516×times-frac
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03307670
19106524
237516496
Stop Event
node limit
Counts
210 → 188
Calls
Call 1
Inputs
1
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (+.f32 (*.f32 (-.f32 maxCos 1) ux) (*.f32 (pow.f32 ux 2) (+.f32 (*.f32 1/4 (pow.f32 (-.f32 maxCos 1) 2)) (*.f32 -1/4 (pow.f32 (-.f32 maxCos 1) 2))))))
(+.f32 1 (+.f32 (*.f32 (+.f32 (*.f32 -1/8 (pow.f32 (-.f32 maxCos 1) 3)) (*.f32 1/8 (pow.f32 (-.f32 maxCos 1) 3))) (pow.f32 ux 3)) (+.f32 (*.f32 (-.f32 maxCos 1) ux) (*.f32 (pow.f32 ux 2) (+.f32 (*.f32 1/4 (pow.f32 (-.f32 maxCos 1) 2)) (*.f32 -1/4 (pow.f32 (-.f32 maxCos 1) 2)))))))
(-.f32 1 ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(-.f32 (+.f32 (*.f32 (+.f32 (*.f32 1/4 (/.f32 (pow.f32 ux 2) (-.f32 1 ux))) (*.f32 -1/4 (/.f32 (pow.f32 ux 2) (-.f32 1 ux)))) (pow.f32 maxCos 2)) (+.f32 1 (*.f32 maxCos ux))) ux)
(-.f32 (+.f32 (*.f32 (+.f32 (*.f32 1/4 (/.f32 (pow.f32 ux 2) (-.f32 1 ux))) (*.f32 -1/4 (/.f32 (pow.f32 ux 2) (-.f32 1 ux)))) (pow.f32 maxCos 2)) (+.f32 1 (+.f32 (*.f32 (pow.f32 maxCos 3) (+.f32 (*.f32 1/8 (/.f32 (pow.f32 ux 3) (pow.f32 (-.f32 1 ux) 2))) (*.f32 -1/8 (/.f32 (pow.f32 ux 3) (pow.f32 (-.f32 1 ux) 2))))) (*.f32 maxCos ux)))) ux)
1
(+.f32 1 (*.f32 1/2 (*.f32 (-.f32 maxCos 1) ux)))
(+.f32 1 (+.f32 (*.f32 1/2 (*.f32 (-.f32 maxCos 1) ux)) (*.f32 -1/8 (*.f32 (pow.f32 (-.f32 maxCos 1) 2) (pow.f32 ux 2)))))
(+.f32 1 (+.f32 (*.f32 1/2 (*.f32 (-.f32 maxCos 1) ux)) (+.f32 (*.f32 -1/8 (*.f32 (pow.f32 (-.f32 maxCos 1) 2) (pow.f32 ux 2))) (*.f32 1/16 (*.f32 (pow.f32 (-.f32 maxCos 1) 3) (pow.f32 ux 3))))))
(sqrt.f32 (-.f32 1 ux))
(+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (-.f32 1 ux))) (*.f32 maxCos ux))) (sqrt.f32 (-.f32 1 ux)))
(+.f32 (*.f32 -1/8 (*.f32 (sqrt.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 3))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (-.f32 1 ux))) (*.f32 maxCos ux))) (sqrt.f32 (-.f32 1 ux))))
(+.f32 (*.f32 1/16 (*.f32 (sqrt.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 5))) (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3)))) (+.f32 (*.f32 -1/8 (*.f32 (sqrt.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 3))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (-.f32 1 ux))) (*.f32 maxCos ux))) (sqrt.f32 (-.f32 1 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 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)
(+.f32 1 (+.f32 (neg.f32 ux) (*.f32 ux maxCos)))
(+.f32 (-.f32 1 ux) (*.f32 ux maxCos))
(+.f32 (neg.f32 ux) (+.f32 1 (*.f32 ux maxCos)))
(+.f32 (*.f32 ux maxCos) (-.f32 1 ux))
(+.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) -1)
(+.f32 (+.f32 1 (*.f32 ux maxCos)) (neg.f32 ux))
(+.f32 (+.f32 (*.f32 ux maxCos) (neg.f32 ux)) 1)
(+.f32 (-.f32 (+.f32 1 (*.f32 ux maxCos)) (+.f32 ux 1)) 1)
(+.f32 (*.f32 1 (+.f32 1 (*.f32 ux maxCos))) (neg.f32 ux))
(+.f32 (*.f32 (+.f32 1 (*.f32 ux maxCos)) 1) (neg.f32 ux))
(-.f32 1 (-.f32 ux (*.f32 ux maxCos)))
(-.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 1)
(-.f32 (exp.f32 (log.f32 (-.f32 2 ux))) (-.f32 1 (*.f32 ux maxCos)))
(-.f32 (+.f32 1 (*.f32 ux maxCos)) ux)
(-.f32 (/.f32 1 (+.f32 ux 1)) (-.f32 (/.f32 (*.f32 ux ux) (+.f32 ux 1)) (*.f32 ux maxCos)))
(-.f32 (/.f32 1 (+.f32 1 (fma.f32 ux ux ux))) (-.f32 (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux))) (*.f32 ux maxCos)))
(-.f32 (+.f32 (*.f32 ux maxCos) (exp.f32 (log.f32 (-.f32 2 ux)))) 1)
(-.f32 (+.f32 (*.f32 ux maxCos) (/.f32 1 (+.f32 ux 1))) (/.f32 (*.f32 ux ux) (+.f32 ux 1)))
(-.f32 (+.f32 (*.f32 ux maxCos) (/.f32 1 (+.f32 1 (fma.f32 ux ux ux)))) (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux))))
(-.f32 (+.f32 (+.f32 1 (*.f32 ux maxCos)) 0) ux)
(*.f32 1 (fma.f32 ux maxCos (-.f32 1 ux)))
(*.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1)
(*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(*.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4) (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4)))
(*.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2))
(*.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))
(*.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(*.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))
(*.f32 (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4)) (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4))
(*.f32 (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))
(*.f32 (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(*.f32 (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (pow.f32 (-.f32 1 ux) 2)) (/.f32 1 (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)))
(*.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)) (/.f32 1 (+.f32 (pow.f32 (*.f32 ux maxCos) 2) (*.f32 (-.f32 1 ux) (-.f32 (-.f32 1 ux) (*.f32 ux maxCos))))))
(*.f32 (*.f32 (pow.f32 1 1/2) (pow.f32 1 1/2)) (fma.f32 ux maxCos (-.f32 1 ux)))
(*.f32 (*.f32 (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (*.f32 (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))
(*.f32 (*.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2))) (*.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2))))
(*.f32 (*.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (*.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))
(*.f32 (*.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (*.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))
(*.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 3/2) (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 3/2))
(*.f32 (pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2) 1/4) (pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2) 1/4))
(*.f32 (pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3) 1/6) (pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3) 1/6))
(/.f32 1 (/.f32 (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux) (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (pow.f32 (-.f32 1 ux) 2))))
(/.f32 1 (/.f32 (+.f32 (pow.f32 (*.f32 ux maxCos) 2) (*.f32 (-.f32 1 ux) (-.f32 (-.f32 1 ux) (*.f32 ux maxCos)))) (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3))))
(/.f32 (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (pow.f32 (-.f32 1 ux) 2)) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)) (+.f32 (pow.f32 (*.f32 ux maxCos) 2) (*.f32 (-.f32 1 ux) (-.f32 (-.f32 1 ux) (*.f32 ux maxCos)))))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)) (+.f32 (pow.f32 (-.f32 1 ux) 2) (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (*.f32 (-.f32 1 ux) (*.f32 ux maxCos)))))
(/.f32 (*.f32 1 (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (pow.f32 (-.f32 1 ux) 2))) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))
(/.f32 (*.f32 1 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3))) (+.f32 (pow.f32 (*.f32 ux maxCos) 2) (*.f32 (-.f32 1 ux) (-.f32 (-.f32 1 ux) (*.f32 ux maxCos)))))
(/.f32 (*.f32 (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (pow.f32 (-.f32 1 ux) 2)) 1) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))
(/.f32 (*.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)) 1) (+.f32 (pow.f32 (*.f32 ux maxCos) 2) (*.f32 (-.f32 1 ux) (-.f32 (-.f32 1 ux) (*.f32 ux maxCos)))))
(/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 (-.f32 1 ux) (*.f32 ux maxCos)))
(/.f32 (-.f32 (*.f32 (+.f32 1 (*.f32 ux maxCos)) (+.f32 1 (*.f32 ux maxCos))) (*.f32 ux ux)) (-.f32 (+.f32 1 (*.f32 ux maxCos)) (neg.f32 ux)))
(/.f32 (-.f32 (*.f32 (+.f32 1 (*.f32 ux maxCos)) (+.f32 1 (*.f32 ux maxCos))) (*.f32 ux ux)) (+.f32 (+.f32 1 (*.f32 ux maxCos)) ux))
(/.f32 (-.f32 (*.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) 1) (+.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 1))
(/.f32 (+.f32 (pow.f32 (+.f32 1 (*.f32 ux maxCos)) 3) (pow.f32 (neg.f32 ux) 3)) (+.f32 (*.f32 (+.f32 1 (*.f32 ux maxCos)) (+.f32 1 (*.f32 ux maxCos))) (-.f32 (*.f32 ux ux) (*.f32 (+.f32 1 (*.f32 ux maxCos)) (neg.f32 ux)))))
(/.f32 (-.f32 (pow.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 3) 1) (+.f32 (*.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (+.f32 1 (*.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 1))))
(/.f32 (-.f32 (pow.f32 (+.f32 1 (*.f32 ux maxCos)) 3) (pow.f32 ux 3)) (+.f32 (*.f32 (+.f32 1 (*.f32 ux maxCos)) (+.f32 1 (*.f32 ux maxCos))) (+.f32 (*.f32 ux ux) (*.f32 (+.f32 1 (*.f32 ux maxCos)) ux))))
(sqrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2))
(log.f32 (exp.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(log.f32 (+.f32 1 (expm1.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))
(cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3))
(expm1.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(exp.f32 (log.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(log1p.f32 (expm1.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(fma.f32 ux maxCos (-.f32 1 ux))
(+.f32 (exp.f32 (log1p.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) -1)
(-.f32 (exp.f32 (log1p.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) 1)
(*.f32 1 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 1)
(*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (pow.f32 1 1/2))
(*.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4) (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4))
(*.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))
(*.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(*.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)) (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))
(*.f32 (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)))
(*.f32 (pow.f32 1 1/2) (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(*.f32 (pow.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2) 1/2) (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 1/2))
(*.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 1/2) (pow.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2) 1/2))
(*.f32 (*.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (sqrt.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))) (*.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (sqrt.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))))
(*.f32 (*.f32 (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4))) (*.f32 (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4))))
(*.f32 (*.f32 (sqrt.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (*.f32 (sqrt.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))
(*.f32 (*.f32 (cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4)) (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (*.f32 (cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4)) (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))
(*.f32 (pow.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 3/2) (pow.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 3/2))
(*.f32 (pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3/2) 1/6) (pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3/2) 1/6))
(/.f32 (-.f32 (*.f32 (exp.f32 (log1p.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (exp.f32 (log1p.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))) 1) (+.f32 (exp.f32 (log1p.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) 1))
(/.f32 (-.f32 (pow.f32 (exp.f32 (log1p.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) 3) 1) (+.f32 (*.f32 (exp.f32 (log1p.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (exp.f32 (log1p.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))) (+.f32 1 (*.f32 (exp.f32 (log1p.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) 1))))
(pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/2)
(pow.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 1)
(pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4) 2)
(pow.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 3)
(pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3/2) 1/3)
(fabs.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(log.f32 (exp.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))
(log.f32 (+.f32 1 (expm1.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))
(cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3/2))
(expm1.f32 (log1p.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))
(exp.f32 (log.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))
(log1p.f32 (expm1.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))
(+.f32 1 (+.f32 (neg.f32 ux) (*.f32 ux maxCos)))
(+.f32 (-.f32 1 ux) (*.f32 ux maxCos))
(+.f32 (neg.f32 ux) (+.f32 1 (*.f32 ux maxCos)))
(+.f32 (*.f32 ux maxCos) (-.f32 1 ux))
(+.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) -1)
(+.f32 (+.f32 1 (*.f32 ux maxCos)) (neg.f32 ux))
(+.f32 (+.f32 (*.f32 ux maxCos) (neg.f32 ux)) 1)
(+.f32 (-.f32 (+.f32 1 (*.f32 ux maxCos)) (+.f32 ux 1)) 1)
(+.f32 (*.f32 1 (+.f32 1 (*.f32 ux maxCos))) (neg.f32 ux))
(+.f32 (*.f32 (+.f32 1 (*.f32 ux maxCos)) 1) (neg.f32 ux))
(-.f32 1 (-.f32 ux (*.f32 ux maxCos)))
(-.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 1)
(-.f32 (exp.f32 (log.f32 (-.f32 2 ux))) (-.f32 1 (*.f32 ux maxCos)))
(-.f32 (+.f32 1 (*.f32 ux maxCos)) ux)
(-.f32 (/.f32 1 (+.f32 ux 1)) (-.f32 (/.f32 (*.f32 ux ux) (+.f32 ux 1)) (*.f32 ux maxCos)))
(-.f32 (/.f32 1 (+.f32 1 (fma.f32 ux ux ux))) (-.f32 (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux))) (*.f32 ux maxCos)))
(-.f32 (+.f32 (*.f32 ux maxCos) (exp.f32 (log.f32 (-.f32 2 ux)))) 1)
(-.f32 (+.f32 (*.f32 ux maxCos) (/.f32 1 (+.f32 ux 1))) (/.f32 (*.f32 ux ux) (+.f32 ux 1)))
(-.f32 (+.f32 (*.f32 ux maxCos) (/.f32 1 (+.f32 1 (fma.f32 ux ux ux)))) (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux))))
(-.f32 (+.f32 (+.f32 1 (*.f32 ux maxCos)) 0) ux)
(*.f32 1 (fma.f32 ux maxCos (-.f32 1 ux)))
(*.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1)
(*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(*.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4) (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4)))
(*.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2))
(*.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))
(*.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(*.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))
(*.f32 (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4)) (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4))
(*.f32 (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))
(*.f32 (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(*.f32 (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (pow.f32 (-.f32 1 ux) 2)) (/.f32 1 (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)))
(*.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)) (/.f32 1 (+.f32 (pow.f32 (*.f32 ux maxCos) 2) (*.f32 (-.f32 1 ux) (-.f32 (-.f32 1 ux) (*.f32 ux maxCos))))))
(*.f32 (*.f32 (pow.f32 1 1/2) (pow.f32 1 1/2)) (fma.f32 ux maxCos (-.f32 1 ux)))
(*.f32 (*.f32 (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (*.f32 (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))
(*.f32 (*.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2))) (*.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2))))
(*.f32 (*.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (*.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))
(*.f32 (*.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (*.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))
(*.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 3/2) (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 3/2))
(*.f32 (pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2) 1/4) (pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2) 1/4))
(*.f32 (pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3) 1/6) (pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3) 1/6))
(/.f32 1 (/.f32 (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux) (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (pow.f32 (-.f32 1 ux) 2))))
(/.f32 1 (/.f32 (+.f32 (pow.f32 (*.f32 ux maxCos) 2) (*.f32 (-.f32 1 ux) (-.f32 (-.f32 1 ux) (*.f32 ux maxCos)))) (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3))))
(/.f32 (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (pow.f32 (-.f32 1 ux) 2)) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)) (+.f32 (pow.f32 (*.f32 ux maxCos) 2) (*.f32 (-.f32 1 ux) (-.f32 (-.f32 1 ux) (*.f32 ux maxCos)))))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)) (+.f32 (pow.f32 (-.f32 1 ux) 2) (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (*.f32 (-.f32 1 ux) (*.f32 ux maxCos)))))
(/.f32 (*.f32 1 (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (pow.f32 (-.f32 1 ux) 2))) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))
(/.f32 (*.f32 1 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3))) (+.f32 (pow.f32 (*.f32 ux maxCos) 2) (*.f32 (-.f32 1 ux) (-.f32 (-.f32 1 ux) (*.f32 ux maxCos)))))
(/.f32 (*.f32 (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (pow.f32 (-.f32 1 ux) 2)) 1) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))
(/.f32 (*.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)) 1) (+.f32 (pow.f32 (*.f32 ux maxCos) 2) (*.f32 (-.f32 1 ux) (-.f32 (-.f32 1 ux) (*.f32 ux maxCos)))))
(/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 (-.f32 1 ux) (*.f32 ux maxCos)))
(/.f32 (-.f32 (*.f32 (+.f32 1 (*.f32 ux maxCos)) (+.f32 1 (*.f32 ux maxCos))) (*.f32 ux ux)) (-.f32 (+.f32 1 (*.f32 ux maxCos)) (neg.f32 ux)))
(/.f32 (-.f32 (*.f32 (+.f32 1 (*.f32 ux maxCos)) (+.f32 1 (*.f32 ux maxCos))) (*.f32 ux ux)) (+.f32 (+.f32 1 (*.f32 ux maxCos)) ux))
(/.f32 (-.f32 (*.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) 1) (+.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 1))
(/.f32 (+.f32 (pow.f32 (+.f32 1 (*.f32 ux maxCos)) 3) (pow.f32 (neg.f32 ux) 3)) (+.f32 (*.f32 (+.f32 1 (*.f32 ux maxCos)) (+.f32 1 (*.f32 ux maxCos))) (-.f32 (*.f32 ux ux) (*.f32 (+.f32 1 (*.f32 ux maxCos)) (neg.f32 ux)))))
(/.f32 (-.f32 (pow.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 3) 1) (+.f32 (*.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (+.f32 1 (*.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 1))))
(/.f32 (-.f32 (pow.f32 (+.f32 1 (*.f32 ux maxCos)) 3) (pow.f32 ux 3)) (+.f32 (*.f32 (+.f32 1 (*.f32 ux maxCos)) (+.f32 1 (*.f32 ux maxCos))) (+.f32 (*.f32 ux ux) (*.f32 (+.f32 1 (*.f32 ux maxCos)) ux))))
(pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1)
(pow.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)
(pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4) 4)
(pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 3)
(pow.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 6)
(pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2) 1/2)
(pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3) 1/3)
(pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3/2) 2/3)
(sqrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2))
(log.f32 (exp.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(log.f32 (+.f32 1 (expm1.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))
(cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3))
(expm1.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(exp.f32 (log.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(log1p.f32 (expm1.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
Outputs
1
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 1 (+.f32 (*.f32 (-.f32 maxCos 1) ux) (*.f32 (pow.f32 ux 2) (+.f32 (*.f32 1/4 (pow.f32 (-.f32 maxCos 1) 2)) (*.f32 -1/4 (pow.f32 (-.f32 maxCos 1) 2))))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 1 (+.f32 (*.f32 (+.f32 (*.f32 -1/8 (pow.f32 (-.f32 maxCos 1) 3)) (*.f32 1/8 (pow.f32 (-.f32 maxCos 1) 3))) (pow.f32 ux 3)) (+.f32 (*.f32 (-.f32 maxCos 1) ux) (*.f32 (pow.f32 ux 2) (+.f32 (*.f32 1/4 (pow.f32 (-.f32 maxCos 1) 2)) (*.f32 -1/4 (pow.f32 (-.f32 maxCos 1) 2)))))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 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))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 (*.f32 (+.f32 (*.f32 1/4 (/.f32 (pow.f32 ux 2) (-.f32 1 ux))) (*.f32 -1/4 (/.f32 (pow.f32 ux 2) (-.f32 1 ux)))) (pow.f32 maxCos 2)) (+.f32 1 (*.f32 maxCos ux))) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 (*.f32 (+.f32 (*.f32 1/4 (/.f32 (pow.f32 ux 2) (-.f32 1 ux))) (*.f32 -1/4 (/.f32 (pow.f32 ux 2) (-.f32 1 ux)))) (pow.f32 maxCos 2)) (+.f32 1 (+.f32 (*.f32 (pow.f32 maxCos 3) (+.f32 (*.f32 1/8 (/.f32 (pow.f32 ux 3) (pow.f32 (-.f32 1 ux) 2))) (*.f32 -1/8 (/.f32 (pow.f32 ux 3) (pow.f32 (-.f32 1 ux) 2))))) (*.f32 maxCos ux)))) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
1
(+.f32 1 (*.f32 1/2 (*.f32 (-.f32 maxCos 1) ux)))
(+.f32 1 (*.f32 (*.f32 (+.f32 maxCos -1) ux) 1/2))
(fma.f32 (+.f32 (*.f32 maxCos 1/2) -1/2) ux 1)
(fma.f32 (-.f32 (*.f32 maxCos ux) ux) 1/2 1)
(+.f32 1 (+.f32 (*.f32 1/2 (*.f32 (-.f32 maxCos 1) ux)) (*.f32 -1/8 (*.f32 (pow.f32 (-.f32 maxCos 1) 2) (pow.f32 ux 2)))))
(+.f32 1 (fma.f32 1/2 (*.f32 (+.f32 maxCos -1) ux) (*.f32 -1/8 (*.f32 (*.f32 ux ux) (pow.f32 (+.f32 maxCos -1) 2)))))
(+.f32 1 (fma.f32 (-.f32 (*.f32 maxCos ux) ux) 1/2 (*.f32 (*.f32 ux ux) (*.f32 (pow.f32 (+.f32 maxCos -1) 2) -1/8))))
(+.f32 1 (*.f32 ux (+.f32 (+.f32 (*.f32 1/2 maxCos) -1/2) (*.f32 (*.f32 (pow.f32 (+.f32 maxCos -1) 2) -1/8) ux))))
(+.f32 1 (+.f32 (*.f32 1/2 (*.f32 (-.f32 maxCos 1) ux)) (+.f32 (*.f32 -1/8 (*.f32 (pow.f32 (-.f32 maxCos 1) 2) (pow.f32 ux 2))) (*.f32 1/16 (*.f32 (pow.f32 (-.f32 maxCos 1) 3) (pow.f32 ux 3))))))
(+.f32 1 (fma.f32 1/2 (*.f32 (+.f32 maxCos -1) ux) (fma.f32 -1/8 (*.f32 (*.f32 ux ux) (pow.f32 (+.f32 maxCos -1) 2)) (*.f32 1/16 (*.f32 (pow.f32 (+.f32 maxCos -1) 3) (pow.f32 ux 3))))))
(+.f32 1 (fma.f32 (-.f32 (*.f32 maxCos ux) ux) 1/2 (fma.f32 -1/8 (*.f32 ux (*.f32 ux (pow.f32 (+.f32 maxCos -1) 2))) (*.f32 (pow.f32 (+.f32 maxCos -1) 3) (*.f32 (pow.f32 ux 3) 1/16)))))
(+.f32 (fma.f32 (-.f32 (*.f32 maxCos ux) ux) 1/2 1) (*.f32 (*.f32 ux ux) (+.f32 (*.f32 (pow.f32 (+.f32 maxCos -1) 2) -1/8) (*.f32 (*.f32 (pow.f32 (+.f32 maxCos -1) 3) 1/16) ux))))
(sqrt.f32 (-.f32 1 ux))
(+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (-.f32 1 ux))) (*.f32 maxCos ux))) (sqrt.f32 (-.f32 1 ux)))
(fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (-.f32 1 ux))) (*.f32 maxCos ux)) (sqrt.f32 (-.f32 1 ux)))
(fma.f32 1/2 (*.f32 maxCos (*.f32 ux (sqrt.f32 (/.f32 1 (-.f32 1 ux))))) (sqrt.f32 (-.f32 1 ux)))
(+.f32 (*.f32 -1/8 (*.f32 (sqrt.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 3))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (-.f32 1 ux))) (*.f32 maxCos ux))) (sqrt.f32 (-.f32 1 ux))))
(fma.f32 -1/8 (*.f32 (sqrt.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 3))) (*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))) (fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (-.f32 1 ux))) (*.f32 maxCos ux)) (sqrt.f32 (-.f32 1 ux))))
(fma.f32 -1/8 (*.f32 (sqrt.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 3))) (pow.f32 (*.f32 maxCos ux) 2)) (fma.f32 1/2 (*.f32 maxCos (*.f32 ux (sqrt.f32 (/.f32 1 (-.f32 1 ux))))) (sqrt.f32 (-.f32 1 ux))))
(+.f32 (*.f32 1/16 (*.f32 (sqrt.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 5))) (*.f32 (pow.f32 maxCos 3) (pow.f32 ux 3)))) (+.f32 (*.f32 -1/8 (*.f32 (sqrt.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 3))) (*.f32 (pow.f32 maxCos 2) (pow.f32 ux 2)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (-.f32 1 ux))) (*.f32 maxCos ux))) (sqrt.f32 (-.f32 1 ux)))))
(fma.f32 1/16 (*.f32 (sqrt.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 5))) (pow.f32 (*.f32 maxCos ux) 3)) (fma.f32 -1/8 (*.f32 (sqrt.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 3))) (*.f32 (*.f32 ux ux) (*.f32 maxCos maxCos))) (fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (-.f32 1 ux))) (*.f32 maxCos ux)) (sqrt.f32 (-.f32 1 ux)))))
(fma.f32 1/16 (*.f32 (sqrt.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 5))) (pow.f32 (*.f32 maxCos ux) 3)) (fma.f32 -1/8 (*.f32 (sqrt.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 3))) (pow.f32 (*.f32 maxCos ux) 2)) (fma.f32 1/2 (*.f32 maxCos (*.f32 ux (sqrt.f32 (/.f32 1 (-.f32 1 ux))))) (sqrt.f32 (-.f32 1 ux)))))
1
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 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 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 1 (*.f32 (-.f32 maxCos 1) ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 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 1 (*.f32 -1 (*.f32 ux (+.f32 1 (*.f32 -1 maxCos)))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 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))
(fma.f32 maxCos ux (-.f32 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))
(fma.f32 maxCos ux (-.f32 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))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 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))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 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))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 maxCos ux)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 1 (+.f32 (neg.f32 ux) (*.f32 ux maxCos)))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 (-.f32 1 ux) (*.f32 ux maxCos))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 (neg.f32 ux) (+.f32 1 (*.f32 ux maxCos)))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 (*.f32 ux maxCos) (-.f32 1 ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) -1)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 (+.f32 1 (*.f32 ux maxCos)) (neg.f32 ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 (+.f32 (*.f32 ux maxCos) (neg.f32 ux)) 1)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 (-.f32 (+.f32 1 (*.f32 ux maxCos)) (+.f32 ux 1)) 1)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 (*.f32 1 (+.f32 1 (*.f32 ux maxCos))) (neg.f32 ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 (*.f32 (+.f32 1 (*.f32 ux maxCos)) 1) (neg.f32 ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 1 (-.f32 ux (*.f32 ux maxCos)))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 1)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (exp.f32 (log.f32 (-.f32 2 ux))) (-.f32 1 (*.f32 ux maxCos)))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 ux maxCos)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (/.f32 1 (+.f32 ux 1)) (-.f32 (/.f32 (*.f32 ux ux) (+.f32 ux 1)) (*.f32 ux maxCos)))
(+.f32 (-.f32 (/.f32 1 (+.f32 1 ux)) (/.f32 ux (/.f32 (+.f32 1 ux) ux))) (*.f32 maxCos ux))
(-.f32 (fma.f32 maxCos ux (/.f32 1 (+.f32 1 ux))) (*.f32 (/.f32 ux (+.f32 1 ux)) ux))
(-.f32 (/.f32 1 (+.f32 1 ux)) (*.f32 ux (-.f32 (/.f32 ux (+.f32 1 ux)) maxCos)))
(-.f32 (/.f32 1 (+.f32 1 (fma.f32 ux ux ux))) (-.f32 (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux))) (*.f32 ux maxCos)))
(+.f32 (-.f32 (/.f32 1 (+.f32 1 (fma.f32 ux ux ux))) (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux)))) (*.f32 maxCos ux))
(-.f32 (fma.f32 maxCos ux (/.f32 1 (+.f32 1 (fma.f32 ux ux ux)))) (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux))))
(-.f32 (+.f32 (*.f32 ux maxCos) (exp.f32 (log.f32 (-.f32 2 ux)))) 1)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 (*.f32 ux maxCos) (/.f32 1 (+.f32 ux 1))) (/.f32 (*.f32 ux ux) (+.f32 ux 1)))
(+.f32 (-.f32 (/.f32 1 (+.f32 1 ux)) (/.f32 ux (/.f32 (+.f32 1 ux) ux))) (*.f32 maxCos ux))
(-.f32 (fma.f32 maxCos ux (/.f32 1 (+.f32 1 ux))) (*.f32 (/.f32 ux (+.f32 1 ux)) ux))
(-.f32 (/.f32 1 (+.f32 1 ux)) (*.f32 ux (-.f32 (/.f32 ux (+.f32 1 ux)) maxCos)))
(-.f32 (+.f32 (*.f32 ux maxCos) (/.f32 1 (+.f32 1 (fma.f32 ux ux ux)))) (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux))))
(+.f32 (-.f32 (/.f32 1 (+.f32 1 (fma.f32 ux ux ux))) (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux)))) (*.f32 maxCos ux))
(-.f32 (fma.f32 maxCos ux (/.f32 1 (+.f32 1 (fma.f32 ux ux ux)))) (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux))))
(-.f32 (+.f32 (+.f32 1 (*.f32 ux maxCos)) 0) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 1 (fma.f32 ux maxCos (-.f32 1 ux)))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4) (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4)))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))
(*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (*.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))
(*.f32 (cbrt.f32 (fma.f32 maxCos ux (-.f32 1 ux))) (pow.f32 (cbrt.f32 (sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))) 4))
(*.f32 (cbrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux)) (pow.f32 (cbrt.f32 (sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))) 4))
(*.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))
(*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (*.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))
(*.f32 (cbrt.f32 (fma.f32 maxCos ux (-.f32 1 ux))) (pow.f32 (cbrt.f32 (sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))) 4))
(*.f32 (cbrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux)) (pow.f32 (cbrt.f32 (sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))) 4))
(*.f32 (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4)) (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))
(*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (*.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))
(*.f32 (cbrt.f32 (fma.f32 maxCos ux (-.f32 1 ux))) (pow.f32 (cbrt.f32 (sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))) 4))
(*.f32 (cbrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux)) (pow.f32 (cbrt.f32 (sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))) 4))
(*.f32 (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (*.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))
(*.f32 (cbrt.f32 (fma.f32 maxCos ux (-.f32 1 ux))) (pow.f32 (cbrt.f32 (sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))) 4))
(*.f32 (cbrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux)) (pow.f32 (cbrt.f32 (sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))) 4))
(*.f32 (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (pow.f32 (-.f32 1 ux) 2)) (/.f32 1 (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)))
(/.f32 (-.f32 (pow.f32 (*.f32 maxCos ux) 2) (pow.f32 (-.f32 1 ux) 2)) (+.f32 ux (fma.f32 ux maxCos -1)))
(/.f32 (-.f32 (pow.f32 (*.f32 maxCos ux) 2) (pow.f32 (-.f32 1 ux) 2)) (+.f32 ux (fma.f32 maxCos ux -1)))
(/.f32 (-.f32 (pow.f32 (*.f32 maxCos ux) 2) (pow.f32 (-.f32 1 ux) 2)) (fma.f32 maxCos ux (+.f32 ux -1)))
(*.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)) (/.f32 1 (+.f32 (pow.f32 (*.f32 ux maxCos) 2) (*.f32 (-.f32 1 ux) (-.f32 (-.f32 1 ux) (*.f32 ux maxCos))))))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (+.f32 (pow.f32 (*.f32 maxCos ux) 2) (*.f32 (-.f32 1 ux) (-.f32 1 (+.f32 ux (*.f32 maxCos ux))))))
(/.f32 (+.f32 (pow.f32 (*.f32 maxCos ux) 3) (pow.f32 (-.f32 1 ux) 3)) (fma.f32 (-.f32 1 ux) (-.f32 1 (fma.f32 maxCos ux ux)) (pow.f32 (*.f32 maxCos ux) 2)))
(*.f32 (*.f32 (pow.f32 1 1/2) (pow.f32 1 1/2)) (fma.f32 ux maxCos (-.f32 1 ux)))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (*.f32 (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (*.f32 (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (*.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2))) (*.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2))))
(*.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (*.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)) (*.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)))))
(*.f32 (pow.f32 (cbrt.f32 (fma.f32 maxCos ux (-.f32 1 ux))) 2) (*.f32 (cbrt.f32 (sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))) (cbrt.f32 (sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux))))))
(*.f32 (pow.f32 (cbrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux)) 2) (*.f32 (cbrt.f32 (sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))) (cbrt.f32 (sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux)))))
(*.f32 (*.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (*.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))
(*.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (*.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)) (*.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)))))
(*.f32 (pow.f32 (cbrt.f32 (fma.f32 maxCos ux (-.f32 1 ux))) 2) (*.f32 (cbrt.f32 (sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))) (cbrt.f32 (sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux))))))
(*.f32 (pow.f32 (cbrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux)) 2) (*.f32 (cbrt.f32 (sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))) (cbrt.f32 (sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux)))))
(*.f32 (*.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (*.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 3/2) (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 3/2))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2) 1/4) (pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2) 1/4))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3) 1/6) (pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3) 1/6))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(/.f32 1 (/.f32 (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux) (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (pow.f32 (-.f32 1 ux) 2))))
(/.f32 (-.f32 (pow.f32 (*.f32 maxCos ux) 2) (pow.f32 (-.f32 1 ux) 2)) (+.f32 ux (fma.f32 ux maxCos -1)))
(/.f32 (-.f32 (pow.f32 (*.f32 maxCos ux) 2) (pow.f32 (-.f32 1 ux) 2)) (+.f32 ux (fma.f32 maxCos ux -1)))
(/.f32 (-.f32 (pow.f32 (*.f32 maxCos ux) 2) (pow.f32 (-.f32 1 ux) 2)) (fma.f32 maxCos ux (+.f32 ux -1)))
(/.f32 1 (/.f32 (+.f32 (pow.f32 (*.f32 ux maxCos) 2) (*.f32 (-.f32 1 ux) (-.f32 (-.f32 1 ux) (*.f32 ux maxCos)))) (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3))))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (+.f32 (pow.f32 (*.f32 maxCos ux) 2) (*.f32 (-.f32 1 ux) (-.f32 1 (+.f32 ux (*.f32 maxCos ux))))))
(/.f32 (+.f32 (pow.f32 (*.f32 maxCos ux) 3) (pow.f32 (-.f32 1 ux) 3)) (fma.f32 (-.f32 1 ux) (-.f32 1 (fma.f32 maxCos ux ux)) (pow.f32 (*.f32 maxCos ux) 2)))
(/.f32 (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (pow.f32 (-.f32 1 ux) 2)) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))
(/.f32 (-.f32 (pow.f32 (*.f32 maxCos ux) 2) (pow.f32 (-.f32 1 ux) 2)) (+.f32 ux (fma.f32 ux maxCos -1)))
(/.f32 (-.f32 (pow.f32 (*.f32 maxCos ux) 2) (pow.f32 (-.f32 1 ux) 2)) (+.f32 ux (fma.f32 maxCos ux -1)))
(/.f32 (-.f32 (pow.f32 (*.f32 maxCos ux) 2) (pow.f32 (-.f32 1 ux) 2)) (fma.f32 maxCos ux (+.f32 ux -1)))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)) (+.f32 (pow.f32 (*.f32 ux maxCos) 2) (*.f32 (-.f32 1 ux) (-.f32 (-.f32 1 ux) (*.f32 ux maxCos)))))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (+.f32 (pow.f32 (*.f32 maxCos ux) 2) (*.f32 (-.f32 1 ux) (-.f32 1 (+.f32 ux (*.f32 maxCos ux))))))
(/.f32 (+.f32 (pow.f32 (*.f32 maxCos ux) 3) (pow.f32 (-.f32 1 ux) 3)) (fma.f32 (-.f32 1 ux) (-.f32 1 (fma.f32 maxCos ux ux)) (pow.f32 (*.f32 maxCos ux) 2)))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)) (+.f32 (pow.f32 (-.f32 1 ux) 2) (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (*.f32 (-.f32 1 ux) (*.f32 ux maxCos)))))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (+.f32 (pow.f32 (*.f32 maxCos ux) 2) (*.f32 (-.f32 1 ux) (-.f32 1 (+.f32 ux (*.f32 maxCos ux))))))
(/.f32 (+.f32 (pow.f32 (*.f32 maxCos ux) 3) (pow.f32 (-.f32 1 ux) 3)) (fma.f32 (-.f32 1 ux) (-.f32 1 (fma.f32 maxCos ux ux)) (pow.f32 (*.f32 maxCos ux) 2)))
(/.f32 (*.f32 1 (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (pow.f32 (-.f32 1 ux) 2))) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))
(/.f32 (-.f32 (pow.f32 (*.f32 maxCos ux) 2) (pow.f32 (-.f32 1 ux) 2)) (+.f32 ux (fma.f32 ux maxCos -1)))
(/.f32 (-.f32 (pow.f32 (*.f32 maxCos ux) 2) (pow.f32 (-.f32 1 ux) 2)) (+.f32 ux (fma.f32 maxCos ux -1)))
(/.f32 (-.f32 (pow.f32 (*.f32 maxCos ux) 2) (pow.f32 (-.f32 1 ux) 2)) (fma.f32 maxCos ux (+.f32 ux -1)))
(/.f32 (*.f32 1 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3))) (+.f32 (pow.f32 (*.f32 ux maxCos) 2) (*.f32 (-.f32 1 ux) (-.f32 (-.f32 1 ux) (*.f32 ux maxCos)))))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (+.f32 (pow.f32 (*.f32 maxCos ux) 2) (*.f32 (-.f32 1 ux) (-.f32 1 (+.f32 ux (*.f32 maxCos ux))))))
(/.f32 (+.f32 (pow.f32 (*.f32 maxCos ux) 3) (pow.f32 (-.f32 1 ux) 3)) (fma.f32 (-.f32 1 ux) (-.f32 1 (fma.f32 maxCos ux ux)) (pow.f32 (*.f32 maxCos ux) 2)))
(/.f32 (*.f32 (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (pow.f32 (-.f32 1 ux) 2)) 1) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))
(/.f32 (-.f32 (pow.f32 (*.f32 maxCos ux) 2) (pow.f32 (-.f32 1 ux) 2)) (+.f32 ux (fma.f32 ux maxCos -1)))
(/.f32 (-.f32 (pow.f32 (*.f32 maxCos ux) 2) (pow.f32 (-.f32 1 ux) 2)) (+.f32 ux (fma.f32 maxCos ux -1)))
(/.f32 (-.f32 (pow.f32 (*.f32 maxCos ux) 2) (pow.f32 (-.f32 1 ux) 2)) (fma.f32 maxCos ux (+.f32 ux -1)))
(/.f32 (*.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)) 1) (+.f32 (pow.f32 (*.f32 ux maxCos) 2) (*.f32 (-.f32 1 ux) (-.f32 (-.f32 1 ux) (*.f32 ux maxCos)))))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (+.f32 (pow.f32 (*.f32 maxCos ux) 2) (*.f32 (-.f32 1 ux) (-.f32 1 (+.f32 ux (*.f32 maxCos ux))))))
(/.f32 (+.f32 (pow.f32 (*.f32 maxCos ux) 3) (pow.f32 (-.f32 1 ux) 3)) (fma.f32 (-.f32 1 ux) (-.f32 1 (fma.f32 maxCos ux ux)) (pow.f32 (*.f32 maxCos ux) 2)))
(/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 (-.f32 1 ux) (*.f32 ux maxCos)))
(/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2)) (-.f32 1 (+.f32 ux (*.f32 maxCos ux))))
(/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2)) (-.f32 1 (fma.f32 maxCos ux ux)))
(/.f32 (-.f32 (*.f32 (+.f32 1 (*.f32 ux maxCos)) (+.f32 1 (*.f32 ux maxCos))) (*.f32 ux ux)) (-.f32 (+.f32 1 (*.f32 ux maxCos)) (neg.f32 ux)))
(/.f32 (*.f32 (+.f32 1 (+.f32 (*.f32 maxCos ux) ux)) (fma.f32 ux maxCos (-.f32 1 ux))) (-.f32 (+.f32 1 (*.f32 maxCos ux)) (neg.f32 ux)))
(/.f32 (*.f32 (fma.f32 maxCos ux (-.f32 1 ux)) (+.f32 1 (fma.f32 maxCos ux ux))) (+.f32 1 (fma.f32 maxCos ux ux)))
(/.f32 (+.f32 ux (fma.f32 maxCos ux 1)) (/.f32 (+.f32 ux (fma.f32 maxCos ux 1)) (-.f32 (fma.f32 maxCos ux 1) ux)))
(/.f32 (-.f32 (*.f32 (+.f32 1 (*.f32 ux maxCos)) (+.f32 1 (*.f32 ux maxCos))) (*.f32 ux ux)) (+.f32 (+.f32 1 (*.f32 ux maxCos)) ux))
(/.f32 (*.f32 (+.f32 1 (+.f32 (*.f32 maxCos ux) ux)) (fma.f32 ux maxCos (-.f32 1 ux))) (-.f32 (+.f32 1 (*.f32 maxCos ux)) (neg.f32 ux)))
(/.f32 (*.f32 (fma.f32 maxCos ux (-.f32 1 ux)) (+.f32 1 (fma.f32 maxCos ux ux))) (+.f32 1 (fma.f32 maxCos ux ux)))
(/.f32 (+.f32 ux (fma.f32 maxCos ux 1)) (/.f32 (+.f32 ux (fma.f32 maxCos ux 1)) (-.f32 (fma.f32 maxCos ux 1) ux)))
(/.f32 (-.f32 (*.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) 1) (+.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 1))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(/.f32 (+.f32 (pow.f32 (+.f32 1 (*.f32 ux maxCos)) 3) (pow.f32 (neg.f32 ux) 3)) (+.f32 (*.f32 (+.f32 1 (*.f32 ux maxCos)) (+.f32 1 (*.f32 ux maxCos))) (-.f32 (*.f32 ux ux) (*.f32 (+.f32 1 (*.f32 ux maxCos)) (neg.f32 ux)))))
(/.f32 (-.f32 (pow.f32 (+.f32 1 (*.f32 maxCos ux)) 3) (pow.f32 ux 3)) (fma.f32 (+.f32 1 (*.f32 maxCos ux)) (+.f32 1 (*.f32 maxCos ux)) (-.f32 (*.f32 ux ux) (*.f32 (neg.f32 ux) (+.f32 1 (*.f32 maxCos ux))))))
(/.f32 (-.f32 (pow.f32 (fma.f32 maxCos ux 1) 3) (pow.f32 ux 3)) (fma.f32 ux (+.f32 1 (fma.f32 maxCos ux ux)) (*.f32 (fma.f32 maxCos ux 1) (fma.f32 maxCos ux 1))))
(/.f32 (-.f32 (pow.f32 (fma.f32 maxCos ux 1) 3) (pow.f32 ux 3)) (+.f32 (*.f32 ux ux) (*.f32 (fma.f32 maxCos ux 1) (+.f32 ux (fma.f32 maxCos ux 1)))))
(/.f32 (-.f32 (pow.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 3) 1) (+.f32 (*.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (+.f32 1 (*.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 1))))
(/.f32 (+.f32 (pow.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 3) -1) (+.f32 (exp.f32 (+.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (+.f32 1 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))))
(/.f32 (+.f32 -1 (pow.f32 (exp.f32 (log1p.f32 (fma.f32 maxCos ux (-.f32 1 ux)))) 3)) (+.f32 (exp.f32 (log1p.f32 (fma.f32 maxCos ux (-.f32 1 ux)))) (+.f32 1 (exp.f32 (*.f32 2 (log1p.f32 (fma.f32 maxCos ux (-.f32 1 ux))))))))
(/.f32 (+.f32 -1 (exp.f32 (*.f32 3 (log1p.f32 (-.f32 (fma.f32 maxCos ux 1) ux))))) (+.f32 1 (+.f32 (exp.f32 (log1p.f32 (-.f32 (fma.f32 maxCos ux 1) ux))) (exp.f32 (*.f32 2 (log1p.f32 (-.f32 (fma.f32 maxCos ux 1) ux)))))))
(/.f32 (-.f32 (pow.f32 (+.f32 1 (*.f32 ux maxCos)) 3) (pow.f32 ux 3)) (+.f32 (*.f32 (+.f32 1 (*.f32 ux maxCos)) (+.f32 1 (*.f32 ux maxCos))) (+.f32 (*.f32 ux ux) (*.f32 (+.f32 1 (*.f32 ux maxCos)) ux))))
(/.f32 (-.f32 (pow.f32 (+.f32 1 (*.f32 maxCos ux)) 3) (pow.f32 ux 3)) (fma.f32 (+.f32 1 (*.f32 maxCos ux)) (+.f32 1 (*.f32 maxCos ux)) (-.f32 (*.f32 ux ux) (*.f32 (neg.f32 ux) (+.f32 1 (*.f32 maxCos ux))))))
(/.f32 (-.f32 (pow.f32 (fma.f32 maxCos ux 1) 3) (pow.f32 ux 3)) (fma.f32 ux (+.f32 1 (fma.f32 maxCos ux ux)) (*.f32 (fma.f32 maxCos ux 1) (fma.f32 maxCos ux 1))))
(/.f32 (-.f32 (pow.f32 (fma.f32 maxCos ux 1) 3) (pow.f32 ux 3)) (+.f32 (*.f32 ux ux) (*.f32 (fma.f32 maxCos ux 1) (+.f32 ux (fma.f32 maxCos ux 1)))))
(sqrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(log.f32 (exp.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(log.f32 (+.f32 1 (expm1.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(expm1.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(exp.f32 (log.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(log1p.f32 (expm1.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(fma.f32 ux maxCos (-.f32 1 ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 (exp.f32 (log1p.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) -1)
(sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))
(sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))
(sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))
(-.f32 (exp.f32 (log1p.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) 1)
(sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))
(sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))
(sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))
(*.f32 1 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))
(sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))
(sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))
(*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 1)
(sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))
(sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))
(sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))
(*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (pow.f32 1 1/2))
(sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))
(sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))
(sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))
(*.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4) (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4))
(sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))
(sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))
(sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))
(*.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))
(*.f32 (cbrt.f32 (fma.f32 maxCos ux (-.f32 1 ux))) (cbrt.f32 (sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))))
(*.f32 (cbrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux)) (cbrt.f32 (sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))))
(*.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(*.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))
(*.f32 (cbrt.f32 (fma.f32 maxCos ux (-.f32 1 ux))) (cbrt.f32 (sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))))
(*.f32 (cbrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux)) (cbrt.f32 (sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))))
(*.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)) (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))
(sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))
(sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))
(sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))
(*.f32 (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)))
(sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))
(sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))
(sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))
(*.f32 (pow.f32 1 1/2) (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))
(sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))
(sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))
(*.f32 (pow.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2) 1/2) (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 1/2))
(sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))
(sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))
(sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))
(*.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 1/2) (pow.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2) 1/2))
(sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))
(sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))
(sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))
(*.f32 (*.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (sqrt.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))) (*.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (sqrt.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))))
(sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))
(sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))
(sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))
(*.f32 (*.f32 (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4))) (*.f32 (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4))))
(*.f32 (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (*.f32 (cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4)) (*.f32 (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4)))))
(*.f32 (cbrt.f32 (fma.f32 maxCos ux (-.f32 1 ux))) (*.f32 (cbrt.f32 (pow.f32 (fma.f32 maxCos ux (-.f32 1 ux)) 1/4)) (cbrt.f32 (pow.f32 (fma.f32 maxCos ux (-.f32 1 ux)) 1/4))))
(*.f32 (cbrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux)) (*.f32 (cbrt.f32 (pow.f32 (-.f32 (fma.f32 maxCos ux 1) ux) 1/4)) (cbrt.f32 (pow.f32 (-.f32 (fma.f32 maxCos ux 1) ux) 1/4))))
(*.f32 (*.f32 (sqrt.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (*.f32 (sqrt.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))
(sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))
(sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))
(sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))
(*.f32 (*.f32 (cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4)) (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (*.f32 (cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4)) (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))
(*.f32 (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (*.f32 (cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4)) (*.f32 (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4)))))
(*.f32 (cbrt.f32 (fma.f32 maxCos ux (-.f32 1 ux))) (*.f32 (cbrt.f32 (pow.f32 (fma.f32 maxCos ux (-.f32 1 ux)) 1/4)) (cbrt.f32 (pow.f32 (fma.f32 maxCos ux (-.f32 1 ux)) 1/4))))
(*.f32 (cbrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux)) (*.f32 (cbrt.f32 (pow.f32 (-.f32 (fma.f32 maxCos ux 1) ux) 1/4)) (cbrt.f32 (pow.f32 (-.f32 (fma.f32 maxCos ux 1) ux) 1/4))))
(*.f32 (pow.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 3/2) (pow.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 3/2))
(sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))
(sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))
(sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))
(*.f32 (pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3/2) 1/6) (pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3/2) 1/6))
(cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3/2))
(cbrt.f32 (pow.f32 (fma.f32 maxCos ux (-.f32 1 ux)) 3/2))
(cbrt.f32 (pow.f32 (-.f32 (fma.f32 maxCos ux 1) ux) 3/2))
(/.f32 (-.f32 (*.f32 (exp.f32 (log1p.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (exp.f32 (log1p.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))) 1) (+.f32 (exp.f32 (log1p.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) 1))
(sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))
(sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))
(sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))
(/.f32 (-.f32 (pow.f32 (exp.f32 (log1p.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) 3) 1) (+.f32 (*.f32 (exp.f32 (log1p.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (exp.f32 (log1p.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))) (+.f32 1 (*.f32 (exp.f32 (log1p.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) 1))))
(/.f32 (+.f32 (pow.f32 (exp.f32 (log1p.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) 3) -1) (+.f32 (exp.f32 (+.f32 (log1p.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (log1p.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))) (+.f32 1 (exp.f32 (log1p.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))))
(/.f32 (+.f32 -1 (pow.f32 (exp.f32 (log1p.f32 (sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux))))) 3)) (+.f32 1 (+.f32 (exp.f32 (log1p.f32 (sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux))))) (exp.f32 (*.f32 2 (log1p.f32 (sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))))))))
(/.f32 (+.f32 -1 (pow.f32 (exp.f32 (log1p.f32 (sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux)))) 3)) (+.f32 1 (+.f32 (exp.f32 (log1p.f32 (sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux)))) (exp.f32 (*.f32 2 (log1p.f32 (sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))))))))
(pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/2)
(sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))
(sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))
(sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))
(pow.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 1)
(sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))
(sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))
(sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))
(pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4) 2)
(sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))
(sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))
(sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))
(pow.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 3)
(sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))
(sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))
(sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))
(pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3/2) 1/3)
(cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3/2))
(cbrt.f32 (pow.f32 (fma.f32 maxCos ux (-.f32 1 ux)) 3/2))
(cbrt.f32 (pow.f32 (-.f32 (fma.f32 maxCos ux 1) ux) 3/2))
(fabs.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))
(sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))
(sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))
(log.f32 (exp.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))
(sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))
(sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))
(sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))
(log.f32 (+.f32 1 (expm1.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))
(sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))
(sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))
(sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))
(cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3/2))
(cbrt.f32 (pow.f32 (fma.f32 maxCos ux (-.f32 1 ux)) 3/2))
(cbrt.f32 (pow.f32 (-.f32 (fma.f32 maxCos ux 1) ux) 3/2))
(expm1.f32 (log1p.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))
(sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))
(sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))
(sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))
(exp.f32 (log.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))
(sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))
(sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))
(sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))
(log1p.f32 (expm1.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))
(sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))
(sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))
(sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))
(+.f32 1 (+.f32 (neg.f32 ux) (*.f32 ux maxCos)))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 (-.f32 1 ux) (*.f32 ux maxCos))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 (neg.f32 ux) (+.f32 1 (*.f32 ux maxCos)))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 (*.f32 ux maxCos) (-.f32 1 ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) -1)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 (+.f32 1 (*.f32 ux maxCos)) (neg.f32 ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 (+.f32 (*.f32 ux maxCos) (neg.f32 ux)) 1)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 (-.f32 (+.f32 1 (*.f32 ux maxCos)) (+.f32 ux 1)) 1)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 (*.f32 1 (+.f32 1 (*.f32 ux maxCos))) (neg.f32 ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(+.f32 (*.f32 (+.f32 1 (*.f32 ux maxCos)) 1) (neg.f32 ux))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 1 (-.f32 ux (*.f32 ux maxCos)))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 1)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (exp.f32 (log.f32 (-.f32 2 ux))) (-.f32 1 (*.f32 ux maxCos)))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 1 (*.f32 ux maxCos)) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (/.f32 1 (+.f32 ux 1)) (-.f32 (/.f32 (*.f32 ux ux) (+.f32 ux 1)) (*.f32 ux maxCos)))
(+.f32 (-.f32 (/.f32 1 (+.f32 1 ux)) (/.f32 ux (/.f32 (+.f32 1 ux) ux))) (*.f32 maxCos ux))
(-.f32 (fma.f32 maxCos ux (/.f32 1 (+.f32 1 ux))) (*.f32 (/.f32 ux (+.f32 1 ux)) ux))
(-.f32 (/.f32 1 (+.f32 1 ux)) (*.f32 ux (-.f32 (/.f32 ux (+.f32 1 ux)) maxCos)))
(-.f32 (/.f32 1 (+.f32 1 (fma.f32 ux ux ux))) (-.f32 (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux))) (*.f32 ux maxCos)))
(+.f32 (-.f32 (/.f32 1 (+.f32 1 (fma.f32 ux ux ux))) (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux)))) (*.f32 maxCos ux))
(-.f32 (fma.f32 maxCos ux (/.f32 1 (+.f32 1 (fma.f32 ux ux ux)))) (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux))))
(-.f32 (+.f32 (*.f32 ux maxCos) (exp.f32 (log.f32 (-.f32 2 ux)))) 1)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(-.f32 (+.f32 (*.f32 ux maxCos) (/.f32 1 (+.f32 ux 1))) (/.f32 (*.f32 ux ux) (+.f32 ux 1)))
(+.f32 (-.f32 (/.f32 1 (+.f32 1 ux)) (/.f32 ux (/.f32 (+.f32 1 ux) ux))) (*.f32 maxCos ux))
(-.f32 (fma.f32 maxCos ux (/.f32 1 (+.f32 1 ux))) (*.f32 (/.f32 ux (+.f32 1 ux)) ux))
(-.f32 (/.f32 1 (+.f32 1 ux)) (*.f32 ux (-.f32 (/.f32 ux (+.f32 1 ux)) maxCos)))
(-.f32 (+.f32 (*.f32 ux maxCos) (/.f32 1 (+.f32 1 (fma.f32 ux ux ux)))) (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux))))
(+.f32 (-.f32 (/.f32 1 (+.f32 1 (fma.f32 ux ux ux))) (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux)))) (*.f32 maxCos ux))
(-.f32 (fma.f32 maxCos ux (/.f32 1 (+.f32 1 (fma.f32 ux ux ux)))) (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux))))
(-.f32 (+.f32 (+.f32 1 (*.f32 ux maxCos)) 0) ux)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 1 (fma.f32 ux maxCos (-.f32 1 ux)))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4) (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4)))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))
(*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (*.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))
(*.f32 (cbrt.f32 (fma.f32 maxCos ux (-.f32 1 ux))) (pow.f32 (cbrt.f32 (sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))) 4))
(*.f32 (cbrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux)) (pow.f32 (cbrt.f32 (sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))) 4))
(*.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))
(*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (*.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))
(*.f32 (cbrt.f32 (fma.f32 maxCos ux (-.f32 1 ux))) (pow.f32 (cbrt.f32 (sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))) 4))
(*.f32 (cbrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux)) (pow.f32 (cbrt.f32 (sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))) 4))
(*.f32 (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4)) (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))
(*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (*.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))
(*.f32 (cbrt.f32 (fma.f32 maxCos ux (-.f32 1 ux))) (pow.f32 (cbrt.f32 (sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))) 4))
(*.f32 (cbrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux)) (pow.f32 (cbrt.f32 (sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))) 4))
(*.f32 (*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(*.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (*.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))
(*.f32 (cbrt.f32 (fma.f32 maxCos ux (-.f32 1 ux))) (pow.f32 (cbrt.f32 (sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))) 4))
(*.f32 (cbrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux)) (pow.f32 (cbrt.f32 (sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))) 4))
(*.f32 (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (pow.f32 (-.f32 1 ux) 2)) (/.f32 1 (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux)))
(/.f32 (-.f32 (pow.f32 (*.f32 maxCos ux) 2) (pow.f32 (-.f32 1 ux) 2)) (+.f32 ux (fma.f32 ux maxCos -1)))
(/.f32 (-.f32 (pow.f32 (*.f32 maxCos ux) 2) (pow.f32 (-.f32 1 ux) 2)) (+.f32 ux (fma.f32 maxCos ux -1)))
(/.f32 (-.f32 (pow.f32 (*.f32 maxCos ux) 2) (pow.f32 (-.f32 1 ux) 2)) (fma.f32 maxCos ux (+.f32 ux -1)))
(*.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)) (/.f32 1 (+.f32 (pow.f32 (*.f32 ux maxCos) 2) (*.f32 (-.f32 1 ux) (-.f32 (-.f32 1 ux) (*.f32 ux maxCos))))))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (+.f32 (pow.f32 (*.f32 maxCos ux) 2) (*.f32 (-.f32 1 ux) (-.f32 1 (+.f32 ux (*.f32 maxCos ux))))))
(/.f32 (+.f32 (pow.f32 (*.f32 maxCos ux) 3) (pow.f32 (-.f32 1 ux) 3)) (fma.f32 (-.f32 1 ux) (-.f32 1 (fma.f32 maxCos ux ux)) (pow.f32 (*.f32 maxCos ux) 2)))
(*.f32 (*.f32 (pow.f32 1 1/2) (pow.f32 1 1/2)) (fma.f32 ux maxCos (-.f32 1 ux)))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (*.f32 (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (*.f32 (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (*.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2))) (*.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2))))
(*.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (*.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)) (*.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)))))
(*.f32 (pow.f32 (cbrt.f32 (fma.f32 maxCos ux (-.f32 1 ux))) 2) (*.f32 (cbrt.f32 (sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))) (cbrt.f32 (sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux))))))
(*.f32 (pow.f32 (cbrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux)) 2) (*.f32 (cbrt.f32 (sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))) (cbrt.f32 (sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux)))))
(*.f32 (*.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (*.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)) (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))
(*.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (*.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)) (*.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (sqrt.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)))))
(*.f32 (pow.f32 (cbrt.f32 (fma.f32 maxCos ux (-.f32 1 ux))) 2) (*.f32 (cbrt.f32 (sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux)))) (cbrt.f32 (sqrt.f32 (fma.f32 maxCos ux (-.f32 1 ux))))))
(*.f32 (pow.f32 (cbrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux)) 2) (*.f32 (cbrt.f32 (sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux))) (cbrt.f32 (sqrt.f32 (-.f32 (fma.f32 maxCos ux 1) ux)))))
(*.f32 (*.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (*.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (sqrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 3/2) (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 3/2))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2) 1/4) (pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2) 1/4))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(*.f32 (pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3) 1/6) (pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3) 1/6))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(/.f32 1 (/.f32 (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux) (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (pow.f32 (-.f32 1 ux) 2))))
(/.f32 (-.f32 (pow.f32 (*.f32 maxCos ux) 2) (pow.f32 (-.f32 1 ux) 2)) (+.f32 ux (fma.f32 ux maxCos -1)))
(/.f32 (-.f32 (pow.f32 (*.f32 maxCos ux) 2) (pow.f32 (-.f32 1 ux) 2)) (+.f32 ux (fma.f32 maxCos ux -1)))
(/.f32 (-.f32 (pow.f32 (*.f32 maxCos ux) 2) (pow.f32 (-.f32 1 ux) 2)) (fma.f32 maxCos ux (+.f32 ux -1)))
(/.f32 1 (/.f32 (+.f32 (pow.f32 (*.f32 ux maxCos) 2) (*.f32 (-.f32 1 ux) (-.f32 (-.f32 1 ux) (*.f32 ux maxCos)))) (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3))))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (+.f32 (pow.f32 (*.f32 maxCos ux) 2) (*.f32 (-.f32 1 ux) (-.f32 1 (+.f32 ux (*.f32 maxCos ux))))))
(/.f32 (+.f32 (pow.f32 (*.f32 maxCos ux) 3) (pow.f32 (-.f32 1 ux) 3)) (fma.f32 (-.f32 1 ux) (-.f32 1 (fma.f32 maxCos ux ux)) (pow.f32 (*.f32 maxCos ux) 2)))
(/.f32 (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (pow.f32 (-.f32 1 ux) 2)) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))
(/.f32 (-.f32 (pow.f32 (*.f32 maxCos ux) 2) (pow.f32 (-.f32 1 ux) 2)) (+.f32 ux (fma.f32 ux maxCos -1)))
(/.f32 (-.f32 (pow.f32 (*.f32 maxCos ux) 2) (pow.f32 (-.f32 1 ux) 2)) (+.f32 ux (fma.f32 maxCos ux -1)))
(/.f32 (-.f32 (pow.f32 (*.f32 maxCos ux) 2) (pow.f32 (-.f32 1 ux) 2)) (fma.f32 maxCos ux (+.f32 ux -1)))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)) (+.f32 (pow.f32 (*.f32 ux maxCos) 2) (*.f32 (-.f32 1 ux) (-.f32 (-.f32 1 ux) (*.f32 ux maxCos)))))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (+.f32 (pow.f32 (*.f32 maxCos ux) 2) (*.f32 (-.f32 1 ux) (-.f32 1 (+.f32 ux (*.f32 maxCos ux))))))
(/.f32 (+.f32 (pow.f32 (*.f32 maxCos ux) 3) (pow.f32 (-.f32 1 ux) 3)) (fma.f32 (-.f32 1 ux) (-.f32 1 (fma.f32 maxCos ux ux)) (pow.f32 (*.f32 maxCos ux) 2)))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)) (+.f32 (pow.f32 (-.f32 1 ux) 2) (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (*.f32 (-.f32 1 ux) (*.f32 ux maxCos)))))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (+.f32 (pow.f32 (*.f32 maxCos ux) 2) (*.f32 (-.f32 1 ux) (-.f32 1 (+.f32 ux (*.f32 maxCos ux))))))
(/.f32 (+.f32 (pow.f32 (*.f32 maxCos ux) 3) (pow.f32 (-.f32 1 ux) 3)) (fma.f32 (-.f32 1 ux) (-.f32 1 (fma.f32 maxCos ux ux)) (pow.f32 (*.f32 maxCos ux) 2)))
(/.f32 (*.f32 1 (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (pow.f32 (-.f32 1 ux) 2))) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))
(/.f32 (-.f32 (pow.f32 (*.f32 maxCos ux) 2) (pow.f32 (-.f32 1 ux) 2)) (+.f32 ux (fma.f32 ux maxCos -1)))
(/.f32 (-.f32 (pow.f32 (*.f32 maxCos ux) 2) (pow.f32 (-.f32 1 ux) 2)) (+.f32 ux (fma.f32 maxCos ux -1)))
(/.f32 (-.f32 (pow.f32 (*.f32 maxCos ux) 2) (pow.f32 (-.f32 1 ux) 2)) (fma.f32 maxCos ux (+.f32 ux -1)))
(/.f32 (*.f32 1 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3))) (+.f32 (pow.f32 (*.f32 ux maxCos) 2) (*.f32 (-.f32 1 ux) (-.f32 (-.f32 1 ux) (*.f32 ux maxCos)))))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (+.f32 (pow.f32 (*.f32 maxCos ux) 2) (*.f32 (-.f32 1 ux) (-.f32 1 (+.f32 ux (*.f32 maxCos ux))))))
(/.f32 (+.f32 (pow.f32 (*.f32 maxCos ux) 3) (pow.f32 (-.f32 1 ux) 3)) (fma.f32 (-.f32 1 ux) (-.f32 1 (fma.f32 maxCos ux ux)) (pow.f32 (*.f32 maxCos ux) 2)))
(/.f32 (*.f32 (-.f32 (pow.f32 (*.f32 ux maxCos) 2) (pow.f32 (-.f32 1 ux) 2)) 1) (+.f32 (-.f32 (*.f32 ux maxCos) 1) ux))
(/.f32 (-.f32 (pow.f32 (*.f32 maxCos ux) 2) (pow.f32 (-.f32 1 ux) 2)) (+.f32 ux (fma.f32 ux maxCos -1)))
(/.f32 (-.f32 (pow.f32 (*.f32 maxCos ux) 2) (pow.f32 (-.f32 1 ux) 2)) (+.f32 ux (fma.f32 maxCos ux -1)))
(/.f32 (-.f32 (pow.f32 (*.f32 maxCos ux) 2) (pow.f32 (-.f32 1 ux) 2)) (fma.f32 maxCos ux (+.f32 ux -1)))
(/.f32 (*.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 ux maxCos) 3)) 1) (+.f32 (pow.f32 (*.f32 ux maxCos) 2) (*.f32 (-.f32 1 ux) (-.f32 (-.f32 1 ux) (*.f32 ux maxCos)))))
(/.f32 (+.f32 (pow.f32 (-.f32 1 ux) 3) (pow.f32 (*.f32 maxCos ux) 3)) (+.f32 (pow.f32 (*.f32 maxCos ux) 2) (*.f32 (-.f32 1 ux) (-.f32 1 (+.f32 ux (*.f32 maxCos ux))))))
(/.f32 (+.f32 (pow.f32 (*.f32 maxCos ux) 3) (pow.f32 (-.f32 1 ux) 3)) (fma.f32 (-.f32 1 ux) (-.f32 1 (fma.f32 maxCos ux ux)) (pow.f32 (*.f32 maxCos ux) 2)))
(/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 ux maxCos) 2)) (-.f32 (-.f32 1 ux) (*.f32 ux maxCos)))
(/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2)) (-.f32 1 (+.f32 ux (*.f32 maxCos ux))))
(/.f32 (-.f32 (pow.f32 (-.f32 1 ux) 2) (pow.f32 (*.f32 maxCos ux) 2)) (-.f32 1 (fma.f32 maxCos ux ux)))
(/.f32 (-.f32 (*.f32 (+.f32 1 (*.f32 ux maxCos)) (+.f32 1 (*.f32 ux maxCos))) (*.f32 ux ux)) (-.f32 (+.f32 1 (*.f32 ux maxCos)) (neg.f32 ux)))
(/.f32 (*.f32 (+.f32 1 (+.f32 (*.f32 maxCos ux) ux)) (fma.f32 ux maxCos (-.f32 1 ux))) (-.f32 (+.f32 1 (*.f32 maxCos ux)) (neg.f32 ux)))
(/.f32 (*.f32 (fma.f32 maxCos ux (-.f32 1 ux)) (+.f32 1 (fma.f32 maxCos ux ux))) (+.f32 1 (fma.f32 maxCos ux ux)))
(/.f32 (+.f32 ux (fma.f32 maxCos ux 1)) (/.f32 (+.f32 ux (fma.f32 maxCos ux 1)) (-.f32 (fma.f32 maxCos ux 1) ux)))
(/.f32 (-.f32 (*.f32 (+.f32 1 (*.f32 ux maxCos)) (+.f32 1 (*.f32 ux maxCos))) (*.f32 ux ux)) (+.f32 (+.f32 1 (*.f32 ux maxCos)) ux))
(/.f32 (*.f32 (+.f32 1 (+.f32 (*.f32 maxCos ux) ux)) (fma.f32 ux maxCos (-.f32 1 ux))) (-.f32 (+.f32 1 (*.f32 maxCos ux)) (neg.f32 ux)))
(/.f32 (*.f32 (fma.f32 maxCos ux (-.f32 1 ux)) (+.f32 1 (fma.f32 maxCos ux ux))) (+.f32 1 (fma.f32 maxCos ux ux)))
(/.f32 (+.f32 ux (fma.f32 maxCos ux 1)) (/.f32 (+.f32 ux (fma.f32 maxCos ux 1)) (-.f32 (fma.f32 maxCos ux 1) ux)))
(/.f32 (-.f32 (*.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) 1) (+.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 1))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(/.f32 (+.f32 (pow.f32 (+.f32 1 (*.f32 ux maxCos)) 3) (pow.f32 (neg.f32 ux) 3)) (+.f32 (*.f32 (+.f32 1 (*.f32 ux maxCos)) (+.f32 1 (*.f32 ux maxCos))) (-.f32 (*.f32 ux ux) (*.f32 (+.f32 1 (*.f32 ux maxCos)) (neg.f32 ux)))))
(/.f32 (-.f32 (pow.f32 (+.f32 1 (*.f32 maxCos ux)) 3) (pow.f32 ux 3)) (fma.f32 (+.f32 1 (*.f32 maxCos ux)) (+.f32 1 (*.f32 maxCos ux)) (-.f32 (*.f32 ux ux) (*.f32 (neg.f32 ux) (+.f32 1 (*.f32 maxCos ux))))))
(/.f32 (-.f32 (pow.f32 (fma.f32 maxCos ux 1) 3) (pow.f32 ux 3)) (fma.f32 ux (+.f32 1 (fma.f32 maxCos ux ux)) (*.f32 (fma.f32 maxCos ux 1) (fma.f32 maxCos ux 1))))
(/.f32 (-.f32 (pow.f32 (fma.f32 maxCos ux 1) 3) (pow.f32 ux 3)) (+.f32 (*.f32 ux ux) (*.f32 (fma.f32 maxCos ux 1) (+.f32 ux (fma.f32 maxCos ux 1)))))
(/.f32 (-.f32 (pow.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 3) 1) (+.f32 (*.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (+.f32 1 (*.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 1))))
(/.f32 (+.f32 (pow.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 3) -1) (+.f32 (exp.f32 (+.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) (+.f32 1 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))))
(/.f32 (+.f32 -1 (pow.f32 (exp.f32 (log1p.f32 (fma.f32 maxCos ux (-.f32 1 ux)))) 3)) (+.f32 (exp.f32 (log1p.f32 (fma.f32 maxCos ux (-.f32 1 ux)))) (+.f32 1 (exp.f32 (*.f32 2 (log1p.f32 (fma.f32 maxCos ux (-.f32 1 ux))))))))
(/.f32 (+.f32 -1 (exp.f32 (*.f32 3 (log1p.f32 (-.f32 (fma.f32 maxCos ux 1) ux))))) (+.f32 1 (+.f32 (exp.f32 (log1p.f32 (-.f32 (fma.f32 maxCos ux 1) ux))) (exp.f32 (*.f32 2 (log1p.f32 (-.f32 (fma.f32 maxCos ux 1) ux)))))))
(/.f32 (-.f32 (pow.f32 (+.f32 1 (*.f32 ux maxCos)) 3) (pow.f32 ux 3)) (+.f32 (*.f32 (+.f32 1 (*.f32 ux maxCos)) (+.f32 1 (*.f32 ux maxCos))) (+.f32 (*.f32 ux ux) (*.f32 (+.f32 1 (*.f32 ux maxCos)) ux))))
(/.f32 (-.f32 (pow.f32 (+.f32 1 (*.f32 maxCos ux)) 3) (pow.f32 ux 3)) (fma.f32 (+.f32 1 (*.f32 maxCos ux)) (+.f32 1 (*.f32 maxCos ux)) (-.f32 (*.f32 ux ux) (*.f32 (neg.f32 ux) (+.f32 1 (*.f32 maxCos ux))))))
(/.f32 (-.f32 (pow.f32 (fma.f32 maxCos ux 1) 3) (pow.f32 ux 3)) (fma.f32 ux (+.f32 1 (fma.f32 maxCos ux ux)) (*.f32 (fma.f32 maxCos ux 1) (fma.f32 maxCos ux 1))))
(/.f32 (-.f32 (pow.f32 (fma.f32 maxCos ux 1) 3) (pow.f32 ux 3)) (+.f32 (*.f32 ux ux) (*.f32 (fma.f32 maxCos ux 1) (+.f32 ux (fma.f32 maxCos ux 1)))))
(pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(pow.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 1/4) 4)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 3)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(pow.f32 (cbrt.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 6)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2) 1/2)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3) 1/3)
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(pow.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3/2) 2/3)
(*.f32 (cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3/2)) (cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3/2)))
(*.f32 (cbrt.f32 (pow.f32 (fma.f32 maxCos ux (-.f32 1 ux)) 3/2)) (cbrt.f32 (pow.f32 (fma.f32 maxCos ux (-.f32 1 ux)) 3/2)))
(*.f32 (cbrt.f32 (pow.f32 (-.f32 (fma.f32 maxCos ux 1) ux) 3/2)) (cbrt.f32 (pow.f32 (-.f32 (fma.f32 maxCos ux 1) ux) 3/2)))
(sqrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(log.f32 (exp.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(log.f32 (+.f32 1 (expm1.f32 (fma.f32 ux maxCos (-.f32 1 ux)))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 3))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(expm1.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(exp.f32 (log.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)
(log1p.f32 (expm1.f32 (fma.f32 ux maxCos (-.f32 1 ux))))
(+.f32 1 (*.f32 (+.f32 maxCos -1) ux))
(fma.f32 maxCos ux (-.f32 1 ux))
(-.f32 (fma.f32 maxCos ux 1) ux)

eval87.0ms (3%)

Compiler

Compiled 4797 to 3261 computations (32% saved)

prune39.0ms (1.4%)

Pruning

5 alts after pruning (2 fresh and 3 done)

PrunedKeptTotal
New2671268
Fresh011
Picked101
Done033
Total2685273
Error
0b
Counts
273 → 5
Alt Table
Click to see full alt table
StatusErrorProgram
0.9b
(pow.f32 (sqrt.f32 (-.f32 1 ux)) 2)
0.0b
(-.f32 1 (*.f32 ux (-.f32 1 maxCos)))
0.6b
(-.f32 1 ux)
0.0b
(+.f32 (-.f32 1 ux) (*.f32 ux maxCos))
9.6b
1
Compiler

Compiled 39 to 32 computations (17.9% saved)

localize20.0ms (0.7%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(sqrt.f32 (-.f32 1 ux))
0.4b
(pow.f32 (sqrt.f32 (-.f32 1 ux)) 2)
Compiler

Compiled 19 to 15 computations (21.1% saved)

series2.0ms (0.1%)

Counts
2 → 8
Calls

6 calls:

TimeVariablePointExpression
1.0ms
ux
@inf
(pow.f32 (sqrt.f32 (-.f32 1 ux)) 2)
1.0ms
ux
@0
(pow.f32 (sqrt.f32 (-.f32 1 ux)) 2)
0.0ms
ux
@-inf
(pow.f32 (sqrt.f32 (-.f32 1 ux)) 2)
0.0ms
ux
@inf
(sqrt.f32 (-.f32 1 ux))
0.0ms
ux
@-inf
(sqrt.f32 (-.f32 1 ux))

rewrite73.0ms (2.6%)

Algorithm
batch-egg-rewrite
Rules
1490×add-sqr-sqrt
1468×*-un-lft-identity
1372×add-cube-cbrt
1362×add-cbrt-cube
1354×add-exp-log
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0918
118518
2190218
Stop Event
node limit
Counts
2 → 57
Calls
Call 1
Inputs
(pow.f32 (sqrt.f32 (-.f32 1 ux)) 2)
(sqrt.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 ux)) (/.f32 (*.f32 ux ux) (+.f32 1 ux)))))) (#(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 1 (-.f32 1 ux))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 1 ux) 1)))) (#(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 (pow.f32 (-.f32 1 ux) 1/4) (*.f32 (pow.f32 (-.f32 1 ux) 1/4) (sqrt.f32 (-.f32 1 ux))))))) (#(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 (cbrt.f32 (-.f32 1 ux)) (*.f32 (cbrt.f32 (sqrt.f32 (-.f32 1 ux))) (sqrt.f32 (-.f32 1 ux))))))) (#(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 (-.f32 1 (*.f32 ux ux)) (/.f32 1 (+.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 (sqrt.f32 (-.f32 1 ux)) (pow.f32 (-.f32 1 ux) 1/4)) (pow.f32 (-.f32 1 ux) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (sqrt.f32 (-.f32 1 ux)) (cbrt.f32 (-.f32 1 ux))) (cbrt.f32 (sqrt.f32 (-.f32 1 ux))))))) (#(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 1 (/.f32 (+.f32 1 (fma.f32 ux ux ux)) (-.f32 1 (pow.f32 ux 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 1 (*.f32 ux ux)) (+.f32 1 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 (neg.f32 ux) (neg.f32 ux))) (-.f32 1 (neg.f32 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 (neg.f32 (-.f32 1 (*.f32 ux ux))) (neg.f32 (+.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 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 exp.f32 (log1p.f32 (neg.f32 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log1p.f32 (neg.f32 ux)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (-.f32 1 ux)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (sqrt.f32 (-.f32 1 ux))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (sqrt.f32 (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (-.f32 1 ux)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (-.f32 1 ux) 1/4) (pow.f32 (-.f32 1 ux) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (-.f32 1 ux)) (cbrt.f32 (sqrt.f32 (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (sqrt.f32 (-.f32 1 ux))) (cbrt.f32 (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (-.f32 1 ux)) 2)) (sqrt.f32 (cbrt.f32 (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 1 1/2) (sqrt.f32 (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (pow.f32 (cbrt.f32 (-.f32 1 ux)) 2) 1/2) (pow.f32 (cbrt.f32 (-.f32 1 ux)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (sqrt.f32 (-.f32 1 (pow.f32 ux 3))) (sqrt.f32 (+.f32 1 (fma.f32 ux ux ux))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (sqrt.f32 (-.f32 1 (*.f32 ux ux))) (sqrt.f32 (+.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (-.f32 1 ux) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (-.f32 1 ux)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (-.f32 1 ux) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (sqrt.f32 (-.f32 1 ux))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (-.f32 1 ux) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f32 (sqrt.f32 (-.f32 1 ux)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (sqrt.f32 (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (-.f32 1 ux) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (sqrt.f32 (-.f32 1 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 1/2 (log1p.f32 (neg.f32 ux))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log1p.f32 (neg.f32 ux)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 1/2 (log1p.f32 (neg.f32 ux))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (sqrt.f32 (-.f32 1 ux))))))))

simplify59.0ms (2.1%)

Algorithm
egg-herbie
Rules
1352×distribute-lft-in
1176×distribute-rgt-in
1068×associate-/l*
726×unswap-sqr
684×associate-/r*
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01431299
13171179
210781085
334761085
Stop Event
node limit
Counts
65 → 83
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/2 ux))
(+.f32 1 (+.f32 (*.f32 -1/8 (pow.f32 ux 2)) (*.f32 -1/2 ux)))
(+.f32 (*.f32 -1/16 (pow.f32 ux 3)) (+.f32 1 (+.f32 (*.f32 -1/8 (pow.f32 ux 2)) (*.f32 -1/2 ux))))
(+.f32 1 (neg.f32 ux))
(+.f32 1 (*.f32 (neg.f32 ux) 1))
(+.f32 (neg.f32 ux) 1)
(-.f32 1 ux)
(-.f32 (+.f32 1 (-.f32 1 ux)) 1)
(-.f32 (/.f32 1 (+.f32 1 ux)) (/.f32 (*.f32 ux ux) (+.f32 1 ux)))
(-.f32 (/.f32 1 (+.f32 1 (fma.f32 ux ux ux))) (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux))))
(*.f32 1 (-.f32 1 ux))
(*.f32 (-.f32 1 ux) 1)
(*.f32 (sqrt.f32 (-.f32 1 ux)) (sqrt.f32 (-.f32 1 ux)))
(*.f32 (pow.f32 (-.f32 1 ux) 1/4) (*.f32 (pow.f32 (-.f32 1 ux) 1/4) (sqrt.f32 (-.f32 1 ux))))
(*.f32 (cbrt.f32 (-.f32 1 ux)) (pow.f32 (cbrt.f32 (-.f32 1 ux)) 2))
(*.f32 (cbrt.f32 (-.f32 1 ux)) (*.f32 (cbrt.f32 (sqrt.f32 (-.f32 1 ux))) (sqrt.f32 (-.f32 1 ux))))
(*.f32 (pow.f32 (cbrt.f32 (-.f32 1 ux)) 2) (cbrt.f32 (-.f32 1 ux)))
(*.f32 (-.f32 1 (*.f32 ux ux)) (/.f32 1 (+.f32 1 ux)))
(*.f32 (-.f32 1 (pow.f32 ux 3)) (/.f32 1 (+.f32 1 (fma.f32 ux ux ux))))
(*.f32 (*.f32 (sqrt.f32 (-.f32 1 ux)) (pow.f32 (-.f32 1 ux) 1/4)) (pow.f32 (-.f32 1 ux) 1/4))
(*.f32 (*.f32 (sqrt.f32 (-.f32 1 ux)) (cbrt.f32 (-.f32 1 ux))) (cbrt.f32 (sqrt.f32 (-.f32 1 ux))))
(/.f32 1 (/.f32 (+.f32 1 ux) (-.f32 1 (*.f32 ux ux))))
(/.f32 1 (/.f32 (+.f32 1 (fma.f32 ux ux ux)) (-.f32 1 (pow.f32 ux 3))))
(/.f32 (-.f32 1 (*.f32 ux ux)) (+.f32 1 ux))
(/.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 1 (fma.f32 ux ux ux)))
(/.f32 (-.f32 1 (*.f32 (neg.f32 ux) (neg.f32 ux))) (-.f32 1 (neg.f32 ux)))
(/.f32 (+.f32 1 (pow.f32 (neg.f32 ux) 3)) (+.f32 1 (-.f32 (*.f32 (neg.f32 ux) (neg.f32 ux)) (neg.f32 ux))))
(/.f32 (neg.f32 (-.f32 1 (*.f32 ux ux))) (neg.f32 (+.f32 1 ux)))
(/.f32 (neg.f32 (-.f32 1 (pow.f32 ux 3))) (neg.f32 (+.f32 1 (fma.f32 ux ux ux))))
(sqrt.f32 (pow.f32 (-.f32 1 ux) 2))
(log.f32 (exp.f32 (-.f32 1 ux)))
(cbrt.f32 (pow.f32 (-.f32 1 ux) 3))
(expm1.f32 (log1p.f32 (-.f32 1 ux)))
(exp.f32 (log1p.f32 (neg.f32 ux)))
(exp.f32 (*.f32 (log1p.f32 (neg.f32 ux)) 1))
(log1p.f32 (expm1.f32 (-.f32 1 ux)))
(-.f32 (+.f32 1 (sqrt.f32 (-.f32 1 ux))) 1)
(*.f32 1 (sqrt.f32 (-.f32 1 ux)))
(*.f32 (sqrt.f32 (-.f32 1 ux)) 1)
(*.f32 (pow.f32 (-.f32 1 ux) 1/4) (pow.f32 (-.f32 1 ux) 1/4))
(*.f32 (cbrt.f32 (-.f32 1 ux)) (cbrt.f32 (sqrt.f32 (-.f32 1 ux))))
(*.f32 (cbrt.f32 (sqrt.f32 (-.f32 1 ux))) (cbrt.f32 (-.f32 1 ux)))
(*.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (-.f32 1 ux)) 2)) (sqrt.f32 (cbrt.f32 (-.f32 1 ux))))
(*.f32 (pow.f32 1 1/2) (sqrt.f32 (-.f32 1 ux)))
(*.f32 (pow.f32 (pow.f32 (cbrt.f32 (-.f32 1 ux)) 2) 1/2) (pow.f32 (cbrt.f32 (-.f32 1 ux)) 1/2))
(/.f32 (sqrt.f32 (-.f32 1 (pow.f32 ux 3))) (sqrt.f32 (+.f32 1 (fma.f32 ux ux ux))))
(/.f32 (sqrt.f32 (-.f32 1 (*.f32 ux ux))) (sqrt.f32 (+.f32 1 ux)))
(pow.f32 (-.f32 1 ux) 1/2)
(pow.f32 (sqrt.f32 (-.f32 1 ux)) 1)
(pow.f32 (pow.f32 (-.f32 1 ux) 1/4) 2)
(pow.f32 (cbrt.f32 (sqrt.f32 (-.f32 1 ux))) 3)
(pow.f32 (pow.f32 (-.f32 1 ux) 3/2) 1/3)
(fabs.f32 (sqrt.f32 (-.f32 1 ux)))
(log.f32 (exp.f32 (sqrt.f32 (-.f32 1 ux))))
(cbrt.f32 (pow.f32 (-.f32 1 ux) 3/2))
(expm1.f32 (log1p.f32 (sqrt.f32 (-.f32 1 ux))))
(exp.f32 (*.f32 1/2 (log1p.f32 (neg.f32 ux))))
(exp.f32 (*.f32 (log1p.f32 (neg.f32 ux)) 1/2))
(exp.f32 (*.f32 (*.f32 1/2 (log1p.f32 (neg.f32 ux))) 1))
(log1p.f32 (expm1.f32 (sqrt.f32 (-.f32 1 ux))))
Outputs
1
(+.f32 (*.f32 -1 ux) 1)
(-.f32 1 ux)
(+.f32 (*.f32 -1 ux) 1)
(-.f32 1 ux)
(+.f32 (*.f32 -1 ux) 1)
(-.f32 1 ux)
1
(+.f32 1 (*.f32 -1/2 ux))
(+.f32 1 (*.f32 ux -1/2))
(fma.f32 ux -1/2 1)
(+.f32 1 (+.f32 (*.f32 -1/8 (pow.f32 ux 2)) (*.f32 -1/2 ux)))
(+.f32 1 (fma.f32 -1/8 (*.f32 ux ux) (*.f32 ux -1/2)))
(+.f32 1 (fma.f32 ux -1/2 (*.f32 ux (*.f32 ux -1/8))))
(fma.f32 ux -1/2 (fma.f32 ux (*.f32 ux -1/8) 1))
(+.f32 (*.f32 -1/16 (pow.f32 ux 3)) (+.f32 1 (+.f32 (*.f32 -1/8 (pow.f32 ux 2)) (*.f32 -1/2 ux))))
(fma.f32 -1/16 (pow.f32 ux 3) (+.f32 1 (fma.f32 -1/8 (*.f32 ux ux) (*.f32 ux -1/2))))
(+.f32 (fma.f32 ux -1/2 (*.f32 ux (*.f32 ux -1/8))) (fma.f32 -1/16 (pow.f32 ux 3) 1))
(fma.f32 -1/16 (pow.f32 ux 3) (fma.f32 ux -1/2 (fma.f32 ux (*.f32 ux -1/8) 1)))
(+.f32 1 (neg.f32 ux))
(-.f32 1 ux)
(+.f32 1 (*.f32 (neg.f32 ux) 1))
(-.f32 1 ux)
(+.f32 (neg.f32 ux) 1)
(-.f32 1 ux)
(-.f32 1 ux)
(-.f32 (+.f32 1 (-.f32 1 ux)) 1)
(-.f32 1 ux)
(-.f32 (/.f32 1 (+.f32 1 ux)) (/.f32 (*.f32 ux ux) (+.f32 1 ux)))
(/.f32 (-.f32 1 (*.f32 ux ux)) (+.f32 1 ux))
(/.f32 (fma.f32 ux (neg.f32 ux) 1) (+.f32 1 ux))
(-.f32 (/.f32 1 (+.f32 1 (fma.f32 ux ux ux))) (/.f32 (pow.f32 ux 3) (+.f32 1 (fma.f32 ux ux ux))))
(/.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 1 (fma.f32 ux ux ux)))
(/.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 ux (fma.f32 ux ux 1)))
(*.f32 1 (-.f32 1 ux))
(-.f32 1 ux)
(*.f32 (-.f32 1 ux) 1)
(-.f32 1 ux)
(*.f32 (sqrt.f32 (-.f32 1 ux)) (sqrt.f32 (-.f32 1 ux)))
(-.f32 1 ux)
(*.f32 (pow.f32 (-.f32 1 ux) 1/4) (*.f32 (pow.f32 (-.f32 1 ux) 1/4) (sqrt.f32 (-.f32 1 ux))))
(-.f32 1 ux)
(*.f32 (cbrt.f32 (-.f32 1 ux)) (pow.f32 (cbrt.f32 (-.f32 1 ux)) 2))
(-.f32 1 ux)
(*.f32 (cbrt.f32 (-.f32 1 ux)) (*.f32 (cbrt.f32 (sqrt.f32 (-.f32 1 ux))) (sqrt.f32 (-.f32 1 ux))))
(*.f32 (cbrt.f32 (-.f32 1 ux)) (*.f32 (sqrt.f32 (-.f32 1 ux)) (cbrt.f32 (sqrt.f32 (-.f32 1 ux)))))
(*.f32 (cbrt.f32 (-.f32 1 ux)) (pow.f32 (cbrt.f32 (sqrt.f32 (-.f32 1 ux))) 4))
(*.f32 (pow.f32 (cbrt.f32 (-.f32 1 ux)) 2) (cbrt.f32 (-.f32 1 ux)))
(-.f32 1 ux)
(*.f32 (-.f32 1 (*.f32 ux ux)) (/.f32 1 (+.f32 1 ux)))
(/.f32 (-.f32 1 (*.f32 ux ux)) (+.f32 1 ux))
(/.f32 (fma.f32 ux (neg.f32 ux) 1) (+.f32 1 ux))
(*.f32 (-.f32 1 (pow.f32 ux 3)) (/.f32 1 (+.f32 1 (fma.f32 ux ux ux))))
(/.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 1 (fma.f32 ux ux ux)))
(/.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 ux (fma.f32 ux ux 1)))
(*.f32 (*.f32 (sqrt.f32 (-.f32 1 ux)) (pow.f32 (-.f32 1 ux) 1/4)) (pow.f32 (-.f32 1 ux) 1/4))
(-.f32 1 ux)
(*.f32 (*.f32 (sqrt.f32 (-.f32 1 ux)) (cbrt.f32 (-.f32 1 ux))) (cbrt.f32 (sqrt.f32 (-.f32 1 ux))))
(*.f32 (cbrt.f32 (-.f32 1 ux)) (*.f32 (sqrt.f32 (-.f32 1 ux)) (cbrt.f32 (sqrt.f32 (-.f32 1 ux)))))
(*.f32 (cbrt.f32 (-.f32 1 ux)) (pow.f32 (cbrt.f32 (sqrt.f32 (-.f32 1 ux))) 4))
(/.f32 1 (/.f32 (+.f32 1 ux) (-.f32 1 (*.f32 ux ux))))
(/.f32 (-.f32 1 (*.f32 ux ux)) (+.f32 1 ux))
(/.f32 (fma.f32 ux (neg.f32 ux) 1) (+.f32 1 ux))
(/.f32 1 (/.f32 (+.f32 1 (fma.f32 ux ux ux)) (-.f32 1 (pow.f32 ux 3))))
(/.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 1 (fma.f32 ux ux ux)))
(/.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 ux (fma.f32 ux ux 1)))
(/.f32 (-.f32 1 (*.f32 ux ux)) (+.f32 1 ux))
(/.f32 (fma.f32 ux (neg.f32 ux) 1) (+.f32 1 ux))
(/.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 1 (fma.f32 ux ux ux)))
(/.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 ux (fma.f32 ux ux 1)))
(/.f32 (-.f32 1 (*.f32 (neg.f32 ux) (neg.f32 ux))) (-.f32 1 (neg.f32 ux)))
(/.f32 (-.f32 1 (*.f32 ux ux)) (+.f32 1 ux))
(/.f32 (fma.f32 ux (neg.f32 ux) 1) (+.f32 1 ux))
(/.f32 (+.f32 1 (pow.f32 (neg.f32 ux) 3)) (+.f32 1 (-.f32 (*.f32 (neg.f32 ux) (neg.f32 ux)) (neg.f32 ux))))
(/.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 1 (fma.f32 ux ux ux)))
(/.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 ux (fma.f32 ux ux 1)))
(/.f32 (neg.f32 (-.f32 1 (*.f32 ux ux))) (neg.f32 (+.f32 1 ux)))
(/.f32 (-.f32 1 (*.f32 ux ux)) (+.f32 1 ux))
(/.f32 (fma.f32 ux (neg.f32 ux) 1) (+.f32 1 ux))
(/.f32 (neg.f32 (-.f32 1 (pow.f32 ux 3))) (neg.f32 (+.f32 1 (fma.f32 ux ux ux))))
(/.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 1 (fma.f32 ux ux ux)))
(/.f32 (-.f32 1 (pow.f32 ux 3)) (+.f32 ux (fma.f32 ux ux 1)))
(sqrt.f32 (pow.f32 (-.f32 1 ux) 2))
(-.f32 1 ux)
(log.f32 (exp.f32 (-.f32 1 ux)))
(-.f32 1 ux)
(cbrt.f32 (pow.f32 (-.f32 1 ux) 3))
(-.f32 1 ux)
(expm1.f32 (log1p.f32 (-.f32 1 ux)))
(-.f32 1 ux)
(exp.f32 (log1p.f32 (neg.f32 ux)))
(exp.f32 (*.f32 (log1p.f32 (neg.f32 ux)) 1))
(exp.f32 (log1p.f32 (neg.f32 ux)))
(log1p.f32 (expm1.f32 (-.f32 1 ux)))
(-.f32 1 ux)
(-.f32 (+.f32 1 (sqrt.f32 (-.f32 1 ux))) 1)
(+.f32 1 (-.f32 (sqrt.f32 (-.f32 1 ux)) 1))
(+.f32 (sqrt.f32 (-.f32 1 ux)) 0)
(sqrt.f32 (-.f32 1 ux))
(*.f32 1 (sqrt.f32 (-.f32 1 ux)))
(+.f32 1 (-.f32 (sqrt.f32 (-.f32 1 ux)) 1))
(+.f32 (sqrt.f32 (-.f32 1 ux)) 0)
(sqrt.f32 (-.f32 1 ux))
(*.f32 (sqrt.f32 (-.f32 1 ux)) 1)
(+.f32 1 (-.f32 (sqrt.f32 (-.f32 1 ux)) 1))
(+.f32 (sqrt.f32 (-.f32 1 ux)) 0)
(sqrt.f32 (-.f32 1 ux))
(*.f32 (pow.f32 (-.f32 1 ux) 1/4) (pow.f32 (-.f32 1 ux) 1/4))
(+.f32 1 (-.f32 (sqrt.f32 (-.f32 1 ux)) 1))
(+.f32 (sqrt.f32 (-.f32 1 ux)) 0)
(sqrt.f32 (-.f32 1 ux))
(*.f32 (cbrt.f32 (-.f32 1 ux)) (cbrt.f32 (sqrt.f32 (-.f32 1 ux))))
(*.f32 (cbrt.f32 (sqrt.f32 (-.f32 1 ux))) (cbrt.f32 (-.f32 1 ux)))
(*.f32 (cbrt.f32 (-.f32 1 ux)) (cbrt.f32 (sqrt.f32 (-.f32 1 ux))))
(*.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (-.f32 1 ux)) 2)) (sqrt.f32 (cbrt.f32 (-.f32 1 ux))))
(*.f32 (fabs.f32 (cbrt.f32 (-.f32 1 ux))) (sqrt.f32 (cbrt.f32 (-.f32 1 ux))))
(*.f32 (cbrt.f32 (-.f32 1 ux)) (sqrt.f32 (cbrt.f32 (-.f32 1 ux))))
(*.f32 (pow.f32 1 1/2) (sqrt.f32 (-.f32 1 ux)))
(+.f32 1 (-.f32 (sqrt.f32 (-.f32 1 ux)) 1))
(+.f32 (sqrt.f32 (-.f32 1 ux)) 0)
(sqrt.f32 (-.f32 1 ux))
(*.f32 (pow.f32 (pow.f32 (cbrt.f32 (-.f32 1 ux)) 2) 1/2) (pow.f32 (cbrt.f32 (-.f32 1 ux)) 1/2))
(*.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (-.f32 1 ux)) 2)) (sqrt.f32 (cbrt.f32 (-.f32 1 ux))))
(*.f32 (fabs.f32 (cbrt.f32 (-.f32 1 ux))) (sqrt.f32 (cbrt.f32 (-.f32 1 ux))))
(*.f32 (cbrt.f32 (-.f32 1 ux)) (sqrt.f32 (cbrt.f32 (-.f32 1 ux))))
(/.f32 (sqrt.f32 (-.f32 1 (pow.f32 ux 3))) (sqrt.f32 (+.f32 1 (fma.f32 ux ux ux))))
(/.f32 (hypot.f32 1 (pow.f32 (neg.f32 ux) 3/2)) (sqrt.f32 (+.f32 ux (fma.f32 ux ux 1))))
(/.f32 (sqrt.f32 (-.f32 1 (*.f32 ux ux))) (sqrt.f32 (+.f32 1 ux)))
(/.f32 (sqrt.f32 (fma.f32 ux (neg.f32 ux) 1)) (hypot.f32 1 (sqrt.f32 ux)))
(pow.f32 (-.f32 1 ux) 1/2)
(+.f32 1 (-.f32 (sqrt.f32 (-.f32 1 ux)) 1))
(+.f32 (sqrt.f32 (-.f32 1 ux)) 0)
(sqrt.f32 (-.f32 1 ux))
(pow.f32 (sqrt.f32 (-.f32 1 ux)) 1)
(+.f32 1 (-.f32 (sqrt.f32 (-.f32 1 ux)) 1))
(+.f32 (sqrt.f32 (-.f32 1 ux)) 0)
(sqrt.f32 (-.f32 1 ux))
(pow.f32 (pow.f32 (-.f32 1 ux) 1/4) 2)
(+.f32 1 (-.f32 (sqrt.f32 (-.f32 1 ux)) 1))
(+.f32 (sqrt.f32 (-.f32 1 ux)) 0)
(sqrt.f32 (-.f32 1 ux))
(pow.f32 (cbrt.f32 (sqrt.f32 (-.f32 1 ux))) 3)
(+.f32 1 (-.f32 (sqrt.f32 (-.f32 1 ux)) 1))
(+.f32 (sqrt.f32 (-.f32 1 ux)) 0)
(sqrt.f32 (-.f32 1 ux))
(pow.f32 (pow.f32 (-.f32 1 ux) 3/2) 1/3)
(cbrt.f32 (pow.f32 (-.f32 1 ux) 3/2))
(fabs.f32 (sqrt.f32 (-.f32 1 ux)))
(+.f32 1 (-.f32 (sqrt.f32 (-.f32 1 ux)) 1))
(+.f32 (sqrt.f32 (-.f32 1 ux)) 0)
(sqrt.f32 (-.f32 1 ux))
(log.f32 (exp.f32 (sqrt.f32 (-.f32 1 ux))))
(+.f32 1 (-.f32 (sqrt.f32 (-.f32 1 ux)) 1))
(+.f32 (sqrt.f32 (-.f32 1 ux)) 0)
(sqrt.f32 (-.f32 1 ux))
(cbrt.f32 (pow.f32 (-.f32 1 ux) 3/2))
(expm1.f32 (log1p.f32 (sqrt.f32 (-.f32 1 ux))))
(+.f32 1 (-.f32 (sqrt.f32 (-.f32 1 ux)) 1))
(+.f32 (sqrt.f32 (-.f32 1 ux)) 0)
(sqrt.f32 (-.f32 1 ux))
(exp.f32 (*.f32 1/2 (log1p.f32 (neg.f32 ux))))
(pow.f32 (exp.f32 1/2) (log1p.f32 (neg.f32 ux)))
(sqrt.f32 (exp.f32 (log1p.f32 (neg.f32 ux))))
(exp.f32 (*.f32 (log1p.f32 (neg.f32 ux)) 1/2))
(pow.f32 (exp.f32 1/2) (log1p.f32 (neg.f32 ux)))
(sqrt.f32 (exp.f32 (log1p.f32 (neg.f32 ux))))
(exp.f32 (*.f32 (*.f32 1/2 (log1p.f32 (neg.f32 ux))) 1))
(pow.f32 (exp.f32 1/2) (log1p.f32 (neg.f32 ux)))
(sqrt.f32 (exp.f32 (log1p.f32 (neg.f32 ux))))
(log1p.f32 (expm1.f32 (sqrt.f32 (-.f32 1 ux))))
(+.f32 1 (-.f32 (sqrt.f32 (-.f32 1 ux)) 1))
(+.f32 (sqrt.f32 (-.f32 1 ux)) 0)
(sqrt.f32 (-.f32 1 ux))

eval19.0ms (0.6%)

Compiler

Compiled 849 to 639 computations (24.7% saved)

prune12.0ms (0.4%)

Pruning

5 alts after pruning (2 fresh and 3 done)

PrunedKeptTotal
New82183
Fresh011
Picked101
Done033
Total83588
Error
0b
Counts
88 → 5
Alt Table
Click to see full alt table
StatusErrorProgram
0.9b
(/.f32 (fma.f32 ux (neg.f32 ux) 1) (+.f32 1 ux))
0.0b
(-.f32 1 (*.f32 ux (-.f32 1 maxCos)))
0.6b
(-.f32 1 ux)
0.0b
(+.f32 (-.f32 1 ux) (*.f32 ux maxCos))
9.6b
1
Compiler

Compiled 42 to 33 computations (21.4% saved)

localize26.0ms (0.9%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.3b
(/.f32 (fma.f32 ux (neg.f32 ux) 1) (+.f32 1 ux))
Compiler

Compiled 24 to 14 computations (41.7% saved)

series1.0ms (0%)

Counts
1 → 12
Calls

3 calls:

TimeVariablePointExpression
0.0ms
ux
@0
(/.f32 (fma.f32 ux (neg.f32 ux) 1) (+.f32 1 ux))
0.0ms
ux
@inf
(/.f32 (fma.f32 ux (neg.f32 ux) 1) (+.f32 1 ux))
0.0ms
ux
@-inf
(/.f32 (fma.f32 ux (neg.f32 ux) 1) (+.f32 1 ux))

rewrite57.0ms (2%)

Algorithm
batch-egg-rewrite
Rules
1752×add-sqr-sqrt
1736×*-un-lft-identity
1620×add-cube-cbrt
1602×add-cbrt-cube
208×pow1
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01025
12087
228127
Stop Event
node limit
Counts
1 → 42
Calls
Call 1
Inputs
(/.f32 (fma.f32 ux (neg.f32 ux) 1) (+.f32 1 ux))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f32 ux 1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 1 ux)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 1 ux)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 1 (+.f32 ux 1)) (/.f32 (*.f32 ux ux) (+.f32 ux 1)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (+.f32 ux 1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (+.f32 ux 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (fma.f32 ux ux 1) (/.f32 1 (+.f32 ux 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 ux 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (fma.f32 ux ux 1)) (*.f32 (sqrt.f32 (fma.f32 ux ux 1)) (/.f32 1 (+.f32 ux 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (+.f32 ux 1)) (sqrt.f32 (+.f32 ux 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (fma.f32 ux ux 1)) 2) (*.f32 (cbrt.f32 (fma.f32 ux ux 1)) (/.f32 1 (+.f32 ux 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (+.f32 ux 1)) (pow.f32 (cbrt.f32 (+.f32 ux 1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (+.f32 ux 1)) 2) (cbrt.f32 (+.f32 ux 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (+.f32 ux 1)) (fma.f32 ux ux 1))))) (#(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 (*.f32 ux ux) -1) (/.f32 1 (+.f32 ux -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (sqrt.f32 (+.f32 ux 1))) (/.f32 (fma.f32 ux ux 1) (sqrt.f32 (+.f32 ux 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (pow.f32 (cbrt.f32 (+.f32 ux 1)) 2)) (/.f32 (fma.f32 ux ux 1) (cbrt.f32 (+.f32 ux 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (fma.f32 ux ux 1) (fma.f32 ux ux 1)) (+.f32 ux 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (fma.f32 ux ux 1) (+.f32 1 (pow.f32 ux 3))) (+.f32 1 (fma.f32 ux ux ux)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sqrt.f32 (fma.f32 ux ux 1)) 1) (/.f32 (sqrt.f32 (fma.f32 ux ux 1)) (+.f32 ux 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sqrt.f32 (fma.f32 ux ux 1)) (pow.f32 (cbrt.f32 (+.f32 ux 1)) 2)) (/.f32 (sqrt.f32 (fma.f32 ux ux 1)) (cbrt.f32 (+.f32 ux 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (fma.f32 ux ux 1)) 2) 1) (/.f32 (cbrt.f32 (fma.f32 ux ux 1)) (+.f32 ux 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (fma.f32 ux ux 1)) 2) (sqrt.f32 (+.f32 ux 1))) (/.f32 (cbrt.f32 (fma.f32 ux ux 1)) (sqrt.f32 (+.f32 ux 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (fma.f32 ux ux 1)) 2) (pow.f32 (cbrt.f32 (+.f32 ux 1)) 2)) (cbrt.f32 (+.f32 ux 1)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (+.f32 ux 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (+.f32 ux 1)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (+.f32 ux 1)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (+.f32 ux 1) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 1 (+.f32 ux 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f32 (/.f32 (fma.f32 ux ux 1) (+.f32 ux -1)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (+.f32 ux 1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (+.f32 ux 1)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (+.f32 ux 1))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (+.f32 ux 1) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (+.f32 ux 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log1p.f32 ux))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log1p.f32 ux) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (+.f32 ux 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 ux 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 ux) (sqrt.f32 ux) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 ux) 2) (cbrt.f32 ux) 1)))))

simplify74.0ms (2.6%)

Algorithm
egg-herbie
Rules
942×*-commutative
914×associate-/r*
864×associate-/l*
624×associate-+r+
600×associate-+l+
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0102742
1263676
21205654
35122648
Stop Event
node limit
Counts
54 → 64
Calls
Call 1
Inputs
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)
(+.f32 ux 1)
(+.f32 1 ux)
(-.f32 1 ux)
(-.f32 (/.f32 1 (+.f32 ux 1)) (/.f32 (*.f32 ux ux) (+.f32 ux 1)))
(-.f32 (exp.f32 (log1p.f32 (+.f32 ux 1))) 1)
(*.f32 1 (+.f32 ux 1))
(*.f32 (fma.f32 ux ux 1) (/.f32 1 (+.f32 ux 1)))
(*.f32 (+.f32 ux 1) 1)
(*.f32 (sqrt.f32 (fma.f32 ux ux 1)) (*.f32 (sqrt.f32 (fma.f32 ux ux 1)) (/.f32 1 (+.f32 ux 1))))
(*.f32 (sqrt.f32 (+.f32 ux 1)) (sqrt.f32 (+.f32 ux 1)))
(*.f32 (pow.f32 (cbrt.f32 (fma.f32 ux ux 1)) 2) (*.f32 (cbrt.f32 (fma.f32 ux ux 1)) (/.f32 1 (+.f32 ux 1))))
(*.f32 (cbrt.f32 (+.f32 ux 1)) (pow.f32 (cbrt.f32 (+.f32 ux 1)) 2))
(*.f32 (pow.f32 (cbrt.f32 (+.f32 ux 1)) 2) (cbrt.f32 (+.f32 ux 1)))
(*.f32 (/.f32 1 (+.f32 ux 1)) (fma.f32 ux ux 1))
(*.f32 (+.f32 1 (pow.f32 ux 3)) (/.f32 1 (+.f32 1 (fma.f32 ux ux ux))))
(*.f32 (+.f32 (*.f32 ux ux) -1) (/.f32 1 (+.f32 ux -1)))
(*.f32 (/.f32 1 (sqrt.f32 (+.f32 ux 1))) (/.f32 (fma.f32 ux ux 1) (sqrt.f32 (+.f32 ux 1))))
(*.f32 (/.f32 1 (pow.f32 (cbrt.f32 (+.f32 ux 1)) 2)) (/.f32 (fma.f32 ux ux 1) (cbrt.f32 (+.f32 ux 1))))
(*.f32 (/.f32 (fma.f32 ux ux 1) (fma.f32 ux ux 1)) (+.f32 ux 1))
(*.f32 (/.f32 (fma.f32 ux ux 1) (+.f32 1 (pow.f32 ux 3))) (+.f32 1 (fma.f32 ux ux ux)))
(*.f32 (/.f32 (sqrt.f32 (fma.f32 ux ux 1)) 1) (/.f32 (sqrt.f32 (fma.f32 ux ux 1)) (+.f32 ux 1)))
(*.f32 (/.f32 (sqrt.f32 (fma.f32 ux ux 1)) (pow.f32 (cbrt.f32 (+.f32 ux 1)) 2)) (/.f32 (sqrt.f32 (fma.f32 ux ux 1)) (cbrt.f32 (+.f32 ux 1))))
(*.f32 (/.f32 (pow.f32 (cbrt.f32 (fma.f32 ux ux 1)) 2) 1) (/.f32 (cbrt.f32 (fma.f32 ux ux 1)) (+.f32 ux 1)))
(*.f32 (/.f32 (pow.f32 (cbrt.f32 (fma.f32 ux ux 1)) 2) (sqrt.f32 (+.f32 ux 1))) (/.f32 (cbrt.f32 (fma.f32 ux ux 1)) (sqrt.f32 (+.f32 ux 1))))
(*.f32 (/.f32 (pow.f32 (cbrt.f32 (fma.f32 ux ux 1)) 2) (pow.f32 (cbrt.f32 (+.f32 ux 1)) 2)) (cbrt.f32 (+.f32 ux 1)))
(pow.f32 (+.f32 ux 1) 1)
(pow.f32 (sqrt.f32 (+.f32 ux 1)) 2)
(pow.f32 (cbrt.f32 (+.f32 ux 1)) 3)
(pow.f32 (pow.f32 (+.f32 ux 1) 3) 1/3)
(pow.f32 (/.f32 1 (+.f32 ux 1)) -1)
(neg.f32 (/.f32 (fma.f32 ux ux 1) (+.f32 ux -1)))
(sqrt.f32 (pow.f32 (+.f32 ux 1) 2))
(log.f32 (exp.f32 (+.f32 ux 1)))
(log.f32 (+.f32 1 (expm1.f32 (+.f32 ux 1))))
(cbrt.f32 (pow.f32 (+.f32 ux 1) 3))
(expm1.f32 (log1p.f32 (+.f32 ux 1)))
(exp.f32 (log1p.f32 ux))
(exp.f32 (*.f32 (log1p.f32 ux) 1))
(log1p.f32 (expm1.f32 (+.f32 ux 1)))
(fma.f32 1 ux 1)
(fma.f32 (sqrt.f32 ux) (sqrt.f32 ux) 1)
(fma.f32 (pow.f32 (cbrt.f32 ux) 2) (cbrt.f32 ux) 1)
Outputs
1
(+.f32 (*.f32 -1 ux) 1)
(-.f32 1 ux)
(+.f32 (*.f32 -1 ux) 1)
(-.f32 1 ux)
(+.f32 (*.f32 -1 ux) 1)
(-.f32 1 ux)
(*.f32 -1 ux)
(neg.f32 ux)
(+.f32 (*.f32 -1 ux) 1)
(-.f32 1 ux)
(+.f32 (*.f32 -1 ux) 1)
(-.f32 1 ux)
(+.f32 (*.f32 -1 ux) 1)
(-.f32 1 ux)
(*.f32 -1 ux)
(neg.f32 ux)
(+.f32 (*.f32 -1 ux) 1)
(-.f32 1 ux)
(+.f32 (*.f32 -1 ux) 1)
(-.f32 1 ux)
(+.f32 (*.f32 -1 ux) 1)
(-.f32 1 ux)
(+.f32 ux 1)
(+.f32 1 ux)
(+.f32 1 ux)
(-.f32 1 ux)
(-.f32 (/.f32 1 (+.f32 ux 1)) (/.f32 (*.f32 ux ux) (+.f32 ux 1)))
(-.f32 (/.f32 1 (+.f32 1 ux)) (/.f32 ux (/.f32 (+.f32 1 ux) ux)))
(-.f32 (/.f32 1 (+.f32 1 ux)) (*.f32 (/.f32 ux (+.f32 1 ux)) ux))
(-.f32 (/.f32 1 (+.f32 1 ux)) (/.f32 (*.f32 ux ux) (+.f32 1 ux)))
(*.f32 (/.f32 1 (+.f32 1 ux)) (-.f32 1 (*.f32 ux ux)))
(-.f32 (exp.f32 (log1p.f32 (+.f32 ux 1))) 1)
(+.f32 1 ux)
(*.f32 1 (+.f32 ux 1))
(+.f32 1 ux)
(*.f32 (fma.f32 ux ux 1) (/.f32 1 (+.f32 ux 1)))
(/.f32 (*.f32 (fma.f32 ux ux 1) 1) (+.f32 1 ux))
(/.f32 (fma.f32 ux ux 1) (+.f32 1 ux))
(*.f32 (+.f32 ux 1) 1)
(+.f32 1 ux)
(*.f32 (sqrt.f32 (fma.f32 ux ux 1)) (*.f32 (sqrt.f32 (fma.f32 ux ux 1)) (/.f32 1 (+.f32 ux 1))))
(/.f32 (*.f32 (fma.f32 ux ux 1) 1) (+.f32 1 ux))
(/.f32 (fma.f32 ux ux 1) (+.f32 1 ux))
(*.f32 (sqrt.f32 (+.f32 ux 1)) (sqrt.f32 (+.f32 ux 1)))
(+.f32 1 ux)
(*.f32 (pow.f32 (cbrt.f32 (fma.f32 ux ux 1)) 2) (*.f32 (cbrt.f32 (fma.f32 ux ux 1)) (/.f32 1 (+.f32 ux 1))))
(/.f32 (*.f32 (fma.f32 ux ux 1) 1) (+.f32 1 ux))
(/.f32 (fma.f32 ux ux 1) (+.f32 1 ux))
(*.f32 (cbrt.f32 (+.f32 ux 1)) (pow.f32 (cbrt.f32 (+.f32 ux 1)) 2))
(+.f32 1 ux)
(*.f32 (pow.f32 (cbrt.f32 (+.f32 ux 1)) 2) (cbrt.f32 (+.f32 ux 1)))
(+.f32 1 ux)
(*.f32 (/.f32 1 (+.f32 ux 1)) (fma.f32 ux ux 1))
(/.f32 (*.f32 (fma.f32 ux ux 1) 1) (+.f32 1 ux))
(/.f32 (fma.f32 ux ux 1) (+.f32 1 ux))
(*.f32 (+.f32 1 (pow.f32 ux 3)) (/.f32 1 (+.f32 1 (fma.f32 ux ux ux))))
(/.f32 (*.f32 (+.f32 1 (pow.f32 ux 3)) 1) (+.f32 1 (fma.f32 ux ux ux)))
(/.f32 (+.f32 1 (pow.f32 ux 3)) (+.f32 1 (fma.f32 ux ux ux)))
(/.f32 (+.f32 1 (pow.f32 ux 3)) (fma.f32 ux ux (+.f32 1 ux)))
(*.f32 (+.f32 (*.f32 ux ux) -1) (/.f32 1 (+.f32 ux -1)))
(+.f32 1 ux)
(*.f32 (/.f32 1 (sqrt.f32 (+.f32 ux 1))) (/.f32 (fma.f32 ux ux 1) (sqrt.f32 (+.f32 ux 1))))
(/.f32 (*.f32 (fma.f32 ux ux 1) 1) (+.f32 1 ux))
(/.f32 (fma.f32 ux ux 1) (+.f32 1 ux))
(*.f32 (/.f32 1 (pow.f32 (cbrt.f32 (+.f32 ux 1)) 2)) (/.f32 (fma.f32 ux ux 1) (cbrt.f32 (+.f32 ux 1))))
(/.f32 (*.f32 (fma.f32 ux ux 1) 1) (+.f32 1 ux))
(/.f32 (fma.f32 ux ux 1) (+.f32 1 ux))
(*.f32 (/.f32 (fma.f32 ux ux 1) (fma.f32 ux ux 1)) (+.f32 ux 1))
(+.f32 1 ux)
(*.f32 (/.f32 (fma.f32 ux ux 1) (+.f32 1 (pow.f32 ux 3))) (+.f32 1 (fma.f32 ux ux ux)))
(*.f32 (+.f32 1 (fma.f32 ux ux ux)) (/.f32 (fma.f32 ux ux 1) (+.f32 1 (pow.f32 ux 3))))
(/.f32 (fma.f32 ux ux 1) (/.f32 (+.f32 1 (pow.f32 ux 3)) (+.f32 1 (fma.f32 ux ux ux))))
(/.f32 (*.f32 (fma.f32 ux ux 1) (fma.f32 ux ux (+.f32 1 ux))) (+.f32 1 (pow.f32 ux 3)))
(*.f32 (/.f32 (sqrt.f32 (fma.f32 ux ux 1)) 1) (/.f32 (sqrt.f32 (fma.f32 ux ux 1)) (+.f32 ux 1)))
(/.f32 (*.f32 (fma.f32 ux ux 1) 1) (+.f32 1 ux))
(/.f32 (fma.f32 ux ux 1) (+.f32 1 ux))
(*.f32 (/.f32 (sqrt.f32 (fma.f32 ux ux 1)) (pow.f32 (cbrt.f32 (+.f32 ux 1)) 2)) (/.f32 (sqrt.f32 (fma.f32 ux ux 1)) (cbrt.f32 (+.f32 ux 1))))
(/.f32 (*.f32 (fma.f32 ux ux 1) 1) (+.f32 1 ux))
(/.f32 (fma.f32 ux ux 1) (+.f32 1 ux))
(*.f32 (/.f32 (pow.f32 (cbrt.f32 (fma.f32 ux ux 1)) 2) 1) (/.f32 (cbrt.f32 (fma.f32 ux ux 1)) (+.f32 ux 1)))
(/.f32 (*.f32 (fma.f32 ux ux 1) 1) (+.f32 1 ux))
(/.f32 (fma.f32 ux ux 1) (+.f32 1 ux))
(*.f32 (/.f32 (pow.f32 (cbrt.f32 (fma.f32 ux ux 1)) 2) (sqrt.f32 (+.f32 ux 1))) (/.f32 (cbrt.f32 (fma.f32 ux ux 1)) (sqrt.f32 (+.f32 ux 1))))
(/.f32 (*.f32 (fma.f32 ux ux 1) 1) (+.f32 1 ux))
(/.f32 (fma.f32 ux ux 1) (+.f32 1 ux))
(*.f32 (/.f32 (pow.f32 (cbrt.f32 (fma.f32 ux ux 1)) 2) (pow.f32 (cbrt.f32 (+.f32 ux 1)) 2)) (cbrt.f32 (+.f32 ux 1)))
(/.f32 (*.f32 (pow.f32 (cbrt.f32 (fma.f32 ux ux 1)) 2) (cbrt.f32 (+.f32 1 ux))) (pow.f32 (cbrt.f32 (+.f32 1 ux)) 2))
(/.f32 (pow.f32 (cbrt.f32 (fma.f32 ux ux 1)) 2) (/.f32 (pow.f32 (cbrt.f32 (+.f32 1 ux)) 2) (cbrt.f32 (+.f32 1 ux))))
(/.f32 (pow.f32 (cbrt.f32 (fma.f32 ux ux 1)) 2) (cbrt.f32 (+.f32 1 ux)))
(pow.f32 (+.f32 ux 1) 1)
(+.f32 1 ux)
(pow.f32 (sqrt.f32 (+.f32 ux 1)) 2)
(+.f32 1 ux)
(pow.f32 (cbrt.f32 (+.f32 ux 1)) 3)
(+.f32 1 ux)
(pow.f32 (pow.f32 (+.f32 ux 1) 3) 1/3)
(+.f32 1 ux)
(pow.f32 (/.f32 1 (+.f32 ux 1)) -1)
(+.f32 1 ux)
(neg.f32 (/.f32 (fma.f32 ux ux 1) (+.f32 ux -1)))
(/.f32 (neg.f32 (fma.f32 ux ux 1)) (+.f32 -1 ux))
(neg.f32 (/.f32 (fma.f32 ux ux 1) (+.f32 -1 ux)))
(/.f32 (-.f32 -1 (*.f32 ux ux)) (+.f32 -1 ux))
(sqrt.f32 (pow.f32 (+.f32 ux 1) 2))
(+.f32 1 ux)
(log.f32 (exp.f32 (+.f32 ux 1)))
(+.f32 1 ux)
(log.f32 (+.f32 1 (expm1.f32 (+.f32 ux 1))))
(+.f32 1 ux)
(cbrt.f32 (pow.f32 (+.f32 ux 1) 3))
(+.f32 1 ux)
(expm1.f32 (log1p.f32 (+.f32 ux 1)))
(+.f32 1 ux)
(exp.f32 (log1p.f32 ux))
(exp.f32 (*.f32 (log1p.f32 ux) 1))
(exp.f32 (log1p.f32 ux))
(log1p.f32 (expm1.f32 (+.f32 ux 1)))
(+.f32 1 ux)
(fma.f32 1 ux 1)
(+.f32 1 ux)
(fma.f32 (sqrt.f32 ux) (sqrt.f32 ux) 1)
(+.f32 1 ux)
(fma.f32 (pow.f32 (cbrt.f32 ux) 2) (cbrt.f32 ux) 1)
(+.f32 1 ux)

eval13.0ms (0.5%)

Compiler

Compiled 664 to 473 computations (28.8% saved)

prune13.0ms (0.5%)

Pruning

5 alts after pruning (1 fresh and 4 done)

PrunedKeptTotal
New64064
Fresh011
Picked011
Done033
Total64569
Error
0b
Counts
69 → 5
Alt Table
Click to see full alt table
StatusErrorProgram
0.9b
(/.f32 (fma.f32 ux (neg.f32 ux) 1) (+.f32 1 ux))
0.0b
(-.f32 1 (*.f32 ux (-.f32 1 maxCos)))
0.6b
(-.f32 1 ux)
0.0b
(+.f32 (-.f32 1 ux) (*.f32 ux maxCos))
9.6b
1
Compiler

Compiled 42 to 33 computations (21.4% saved)

regimes56.0ms (1.9%)

Counts
8 → 1
Calls
Call 1
Inputs
1
(-.f32 1 ux)
(+.f32 (-.f32 1 ux) (*.f32 ux maxCos))
(-.f32 1 (*.f32 ux (-.f32 1 maxCos)))
(-.f32 (fma.f32 ux maxCos 1) ux)
(/.f32 (fma.f32 ux (neg.f32 ux) 1) (+.f32 1 ux))
(pow.f32 (sqrt.f32 (-.f32 1 ux)) 2)
(pow.f32 (sqrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)
Outputs
(-.f32 1 (*.f32 ux (-.f32 1 maxCos)))
Calls

4 calls:

40.0ms
maxCos
5.0ms
uy
5.0ms
ux
5.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))
Compiler

Compiled 73 to 51 computations (30.1% saved)

regimes47.0ms (1.6%)

Counts
3 → 1
Calls
Call 1
Inputs
1
(-.f32 1 ux)
(+.f32 (-.f32 1 ux) (*.f32 ux maxCos))
Outputs
(+.f32 (-.f32 1 ux) (*.f32 ux maxCos))
Calls

4 calls:

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

Compiled 36 to 26 computations (27.8% saved)

regimes10.0ms (0.3%)

Accuracy

Total -9.0b remaining (-1550.6%)

Threshold costs -9.0b (-1550.6%)

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

3 calls:

4.0ms
ux
3.0ms
maxCos
3.0ms
uy
Results
ErrorSegmentsBranch
0.6b1ux
0.6b1uy
0.6b1maxCos
Compiler

Compiled 19 to 15 computations (21.1% saved)

simplify9.0ms (0.3%)

Algorithm
egg-herbie
Rules
64×distribute-lft-neg-in
34×distribute-rgt-neg-in
26×*-commutative
24×+-commutative
22×distribute-neg-in
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01146
12546
24046
35246
46946
57746
68346
79346
811246
912146
1013346
1114746
1214946
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(-.f32 1 (*.f32 ux (-.f32 1 maxCos)))
(+.f32 (-.f32 1 ux) (*.f32 ux maxCos))
(-.f32 1 ux)
1
Outputs
(-.f32 1 (*.f32 ux (-.f32 1 maxCos)))
(+.f32 1 (*.f32 ux (+.f32 maxCos -1)))
(+.f32 (-.f32 1 ux) (*.f32 ux maxCos))
(-.f32 1 ux)
1
Compiler

Compiled 30 to 24 computations (20% saved)

soundness0.0ms (0%)

end18.0ms (0.6%)

Compiler

Compiled 21 to 15 computations (28.6% saved)

Profiling

Loading profile data...