Details

Time bar (total: 4.7s)

analyze490.0ms (10.4%)

Algorithm
search
Search
TrueOtherFalseIter
0%0%100%0
0%0%100%1
0%0%100%2
0%0%100%3
0%0%100%4
0%0%100%5
0%0%100%6
0%0%100%7
0%0%100%8
0%0%100%9
0%0%100%10
0%0%100%11
0%0%100%12
0%0%100%13
0%0%100%14
Compiler

Compiled 39 to 31 computations (20.5% saved)

sample2.2s (46.6%)

Results
2.2s8256×body128valid
4.0msbody128invalid

preprocess34.0ms (0.7%)

Algorithm
egg-herbie
Rules
104×fma-neg_binary32
95×fma-def_binary32
60×sub-neg_binary32
45×cancel-sign-sub-inv_binary32
30×distribute-rgt-in_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03088
15984
29884
312484
415584
519184
623184
731984
849084
953184
1058584
1163584
1272684
1377384
1479184
1579484
033
Stop Event
saturated
saturated
Calls
Call 1
Inputs
0
1
2
Outputs
0
1
2
Call 2
Inputs
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 cosTheta_i)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) cosTheta_i)))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u2)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u1)))
Outputs
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 cosTheta_i)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
(*.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 cosTheta_i)))))
(*.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 cosTheta_i)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) cosTheta_i)))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) cosTheta_i))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) cosTheta_i))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u2)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u1)))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u2)))) (cos.f32 (*.f32 u1 (*.f32 2 (PI.f32)))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u2)))) (cos.f32 (*.f32 2 (*.f32 u1 (PI.f32)))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u2)))) (cos.f32 (*.f32 u1 (*.f32 2 (PI.f32)))))
Compiler

Compiled 16 to 14 computations (12.5% saved)

simplify12.0ms (0.3%)

Algorithm
egg-herbie
Rules
40×fma-neg_binary32
22×sub-neg_binary32
17×cancel-sign-sub-inv_binary32
13×fma-def_binary32
10×*-commutative_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01422
12621
23921
34921
46021
57421
69221
711921
814921
916221
1018421
1120621
1224521
1326221
1426821
1526921
Stop Event
saturated
Counts
1 → 2
Calls
Call 1
Inputs
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
Outputs
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (PI.f32) (*.f32 2 u2))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))

prune3.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.3b
Counts
3 → 2
Alt Table
StatusErrorProgram
13.1b
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
Compiler

Compiled 90 to 77 computations (14.4% saved)

localize47.0ms (1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))
0.1b
(cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))
0.1b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
0.3b
(*.f32 (PI.f32) u2)

series40.0ms (0.8%)

Counts
4 → 52
Calls

15 calls:

TimeVariablePointExpression
26.0ms
u2
@inf
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
3.0ms
u1
@-inf
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
2.0ms
u1
@inf
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
2.0ms
u1
@0
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
1.0ms
u2
@0
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))

rewrite54.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
679×prod-diff_binary32
204×expm1-udef_binary32
204×log1p-udef_binary32
133×add-sqr-sqrt_binary32
129×pow1_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01345
126637
2325037
Stop Event
node limit
Counts
4 → 96
Calls
Call 1
Inputs
(*.f32 (PI.f32) u2)
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))
(sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 (PI.f32) u2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (PI.f32) u2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 (PI.f32) u2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 (PI.f32) u2)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 (PI.f32) u2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 (PI.f32) u2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 u2) (PI.f32)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 (PI.f32) u2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 (PI.f32) u2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (PI.f32) 3) (pow.f32 u2 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 (PI.f32) u2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 (PI.f32) u2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 (PI.f32) u2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 (PI.f32) u2)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (*.f32 (log1p.f32 u1) (pow.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) (sqrt.f32 (log1p.f32 u1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (log1p.f32 u1) 3/2) (pow.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 3) (pow.f32 (log1p.f32 u1) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (fma.f32 (neg.f32 (sin.f32 (*.f32 (PI.f32) u2))) (sin.f32 (*.f32 (PI.f32) u2)) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (fma.f32 (neg.f32 (sqrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (sqrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (*.f32 (neg.f32 (sin.f32 (*.f32 (PI.f32) u2))) (sin.f32 (*.f32 (PI.f32) u2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 1 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (neg.f32 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1))) (fma.f32 (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) 1 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 (cos.f32 (*.f32 (PI.f32) u2)) (cos.f32 (*.f32 (PI.f32) u2)) (neg.f32 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1))) (fma.f32 (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) 1 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 (*.f32 (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2))) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1))) (fma.f32 (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) 1 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 (sqrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (sqrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1))) (fma.f32 (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) 1 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 1 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (fma.f32 (neg.f32 (sin.f32 (*.f32 (PI.f32) u2))) (sin.f32 (*.f32 (PI.f32) u2)) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 1 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (fma.f32 (neg.f32 (sqrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (sqrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 (*.f32 (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2))) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (fma.f32 (neg.f32 (sin.f32 (*.f32 (PI.f32) u2))) (sin.f32 (*.f32 (PI.f32) u2)) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 (*.f32 (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2))) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (fma.f32 (neg.f32 (sqrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (sqrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 (sqrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (sqrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (fma.f32 (neg.f32 (sin.f32 (*.f32 (PI.f32) u2))) (sin.f32 (*.f32 (PI.f32) u2)) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 (sqrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (sqrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (fma.f32 (neg.f32 (sqrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (sqrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 1 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (neg.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (fma.f32 (neg.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 (cos.f32 (*.f32 (PI.f32) u2)) (cos.f32 (*.f32 (PI.f32) u2)) (neg.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (fma.f32 (neg.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 (*.f32 (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2))) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (fma.f32 (neg.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 (sqrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (sqrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (fma.f32 (neg.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) (pow.f32 (cbrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) 2) (cbrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) (sqrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 (cos.f32 (*.f32 (PI.f32) u2)) (sin.f32 (*.f32 (PI.f32) u2))) (-.f32 (cos.f32 (*.f32 (PI.f32) u2)) (sin.f32 (*.f32 (PI.f32) u2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) 3) (pow.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 3)) (+.f32 (*.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (+.f32 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (*.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (+.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cos.f32 (*.f32 (PI.f32) u2)) (cos.f32 (*.f32 (PI.f32) u2)) (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (sqrt.f32 (log1p.f32 u1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (log1p.f32 u1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (sqrt.f32 (log1p.f32 u1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (log1p.f32 u1)) (cbrt.f32 (sqrt.f32 (log1p.f32 u1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (sqrt.f32 (log1p.f32 u1))) (cbrt.f32 (log1p.f32 u1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (log1p.f32 u1) 1/4) (pow.f32 (log1p.f32 u1) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (log1p.f32 u1)) 2)) (sqrt.f32 (cbrt.f32 (log1p.f32 u1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 -1) (sqrt.f32 (log1p.f32 u1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 1 1/2) (sqrt.f32 (log1p.f32 u1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (pow.f32 (cbrt.f32 (log1p.f32 u1)) 2) 1/2) (pow.f32 (cbrt.f32 (log1p.f32 u1)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 -1 1/2) (sqrt.f32 (log1p.f32 u1)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (log1p.f32 u1) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (log1p.f32 u1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (log1p.f32 u1) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (sqrt.f32 (log1p.f32 u1))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (log1p.f32 u1) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f32 (sqrt.f32 (log1p.f32 u1)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (sqrt.f32 (log1p.f32 u1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (sqrt.f32 (log1p.f32 u1)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (log1p.f32 u1) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (sqrt.f32 (log1p.f32 u1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (sqrt.f32 (log1p.f32 u1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (log1p.f32 u1)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (sqrt.f32 (log1p.f32 u1))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (sqrt.f32 (log1p.f32 u1))))))))

simplify46.0ms (1%)

Algorithm
egg-herbie
Rules
677×fma-def_binary32
560×associate-*l*_binary32
399×times-frac_binary32
346×associate-/r*_binary32
306×associate-/l*_binary32
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01391936
14211724
214071554
Stop Event
node limit
Counts
148 → 147
Calls
Call 1
Inputs
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(+.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (*.f32 1/2 (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) u1))))
(+.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (+.f32 (*.f32 1/2 (/.f32 (*.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1))))))) 2)) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (pow.f32 u1 2)))) (*.f32 1/2 (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) u1)))))
(+.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (+.f32 (*.f32 1/2 (/.f32 (*.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (-.f32 1/3 (*.f32 1/2 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1))))))) 2)) (pow.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) 2))))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (pow.f32 u1 3)))) (+.f32 (*.f32 1/2 (/.f32 (*.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1))))))) 2)) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (pow.f32 u1 2)))) (*.f32 1/2 (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) u1))))))
(*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))))
(+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (*.f32 (-.f32 1/2 (pow.f32 (*.f32 -1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) 2)) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (pow.f32 u1 2)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))))
(+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (*.f32 (+.f32 (*.f32 -1/2 (/.f32 (-.f32 1/2 (pow.f32 (*.f32 -1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) 2)) (log.f32 (/.f32 -1 u1)))) 1/3) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (pow.f32 u1 3)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (*.f32 (-.f32 1/2 (pow.f32 (*.f32 -1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) 2)) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (pow.f32 u1 2)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))))))
(sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))
(+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 2)))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 4)))) (+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 2)))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))
(+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 4)))) (+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 2)))) (+.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (*.f32 -4/45 (*.f32 (pow.f32 u2 6) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 6)))))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
1
(+.f32 1 (*.f32 -2 (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2))))
(+.f32 1 (+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))) (*.f32 -2 (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2)))))
(+.f32 1 (+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))) (+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2))) (*.f32 -4/45 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6))))))
(cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))
(cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))
(cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))
(cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))
(cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))
(cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))
(cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))
(cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))
(sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1))))))
(+.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (*.f32 1/2 (/.f32 1 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) u1))))
(+.f32 (*.f32 1/2 (/.f32 1 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) u1))) (+.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (*.f32 1/2 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1))))))) 2)) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (pow.f32 u1 2))))))
(+.f32 (*.f32 1/2 (/.f32 1 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) u1))) (+.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (+.f32 (*.f32 1/2 (/.f32 (-.f32 1/3 (*.f32 1/2 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1))))))) 2)) (pow.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) 2)))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (pow.f32 u1 3)))) (*.f32 1/2 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1))))))) 2)) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (pow.f32 u1 2)))))))
(sqrt.f32 (log.f32 (/.f32 -1 u1)))
(+.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 1 u1))))
(+.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 1 u1))) (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (-.f32 1/2 (pow.f32 (*.f32 -1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) 2)) (pow.f32 u1 2))))))
(+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (+.f32 (*.f32 -1/2 (/.f32 (-.f32 1/2 (pow.f32 (*.f32 -1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) 2)) (log.f32 (/.f32 -1 u1)))) 1/3) (pow.f32 u1 3)))) (+.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 1 u1))) (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (-.f32 1/2 (pow.f32 (*.f32 -1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) 2)) (pow.f32 u1 2)))))))
Outputs
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)))
(*.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
(*.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))))
(+.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (*.f32 1/2 (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) u1))))
(fma.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (*.f32 1/2 (/.f32 (/.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1))))))) u1)))
(fma.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) (/.f32 (/.f32 (*.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) 1/2) u1) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))))
(fma.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (*.f32 1/2 (/.f32 (/.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) u1)))
(+.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (+.f32 (*.f32 1/2 (/.f32 (*.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1))))))) 2)) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (pow.f32 u1 2)))) (*.f32 1/2 (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) u1)))))
(fma.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (*.f32 1/2 (+.f32 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1))))))) 2)) (/.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) (*.f32 u1 u1)) (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)))) (/.f32 (/.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1))))))) u1))))
(fma.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) (*.f32 1/2 (fma.f32 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) 2)) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) (/.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) (*.f32 u1 u1)) (/.f32 (/.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) u1) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))))))
(fma.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (*.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) (+.f32 (/.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) u1) (*.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) 2)) (/.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (*.f32 u1 u1))))))
(+.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (+.f32 (*.f32 1/2 (/.f32 (*.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (-.f32 1/3 (*.f32 1/2 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1))))))) 2)) (pow.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) 2))))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (pow.f32 u1 3)))) (+.f32 (*.f32 1/2 (/.f32 (*.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1))))))) 2)) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (pow.f32 u1 2)))) (*.f32 1/2 (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) u1))))))
(fma.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (fma.f32 1/2 (*.f32 (/.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1))))))) (/.f32 (+.f32 1/3 (*.f32 -1/2 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1))))))) 2)) (pow.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) 2)))) (pow.f32 u1 3))) (*.f32 1/2 (+.f32 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1))))))) 2)) (/.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) (*.f32 u1 u1)) (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)))) (/.f32 (/.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1))))))) u1)))))
(fma.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) (*.f32 1/2 (+.f32 (*.f32 (/.f32 (+.f32 1/3 (*.f32 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) 2)) (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) -1/2)) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) (/.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) (pow.f32 u1 3))) (fma.f32 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) 2)) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) (/.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) (*.f32 u1 u1)) (/.f32 (/.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) u1) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))))))))
(fma.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (*.f32 1/2 (+.f32 (/.f32 (/.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) u1) (*.f32 (/.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) (+.f32 (/.f32 (+.f32 1/3 (*.f32 1/2 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) 2)) (+.f32 (log.f32 -1) (log.f32 u1))))) (pow.f32 u1 3)) (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) 2)) (*.f32 u1 u1)))))))
(*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (log.f32 (/.f32 -1 u1))))
(*.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) (sqrt.f32 (log.f32 (/.f32 -1 u1))))
(*.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (sqrt.f32 (log.f32 (/.f32 -1 u1))))
(+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))))
(fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) u1)) (*.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (log.f32 (/.f32 -1 u1)))))
(fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) u1)) (*.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) (sqrt.f32 (log.f32 (/.f32 -1 u1)))))
(fma.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (sqrt.f32 (log.f32 (/.f32 -1 u1))) (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (/.f32 u1 1/2))))
(+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (*.f32 (-.f32 1/2 (pow.f32 (*.f32 -1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) 2)) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (pow.f32 u1 2)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))))
(fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (-.f32 1/2 (pow.f32 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) -1/2) 2)) (/.f32 (*.f32 u1 u1) (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2))))) (fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) u1)) (*.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (log.f32 (/.f32 -1 u1))))))
(+.f32 (*.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) (sqrt.f32 (log.f32 (/.f32 -1 u1)))) (*.f32 (*.f32 1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) (+.f32 (/.f32 (-.f32 1/2 (pow.f32 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) -1/2) 2)) (/.f32 u1 (/.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) u1))) (/.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) u1))))
(fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (*.f32 (+.f32 (/.f32 (-.f32 1/2 (*.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))) 1/4)) u1) 1) (/.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) u1))) (*.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (sqrt.f32 (log.f32 (/.f32 -1 u1)))))
(+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (*.f32 (+.f32 (*.f32 -1/2 (/.f32 (-.f32 1/2 (pow.f32 (*.f32 -1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) 2)) (log.f32 (/.f32 -1 u1)))) 1/3) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (pow.f32 u1 3)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (*.f32 (-.f32 1/2 (pow.f32 (*.f32 -1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) 2)) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (pow.f32 u1 2)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))))))
(fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (fma.f32 -1/2 (/.f32 (-.f32 1/2 (pow.f32 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) -1/2) 2)) (log.f32 (/.f32 -1 u1))) 1/3) (/.f32 (pow.f32 u1 3) (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2))))) (fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (-.f32 1/2 (pow.f32 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) -1/2) 2)) (/.f32 (*.f32 u1 u1) (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2))))) (fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) u1)) (*.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (log.f32 (/.f32 -1 u1)))))))
(+.f32 (fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) u1)) (*.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) (sqrt.f32 (log.f32 (/.f32 -1 u1))))) (*.f32 (*.f32 1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) (+.f32 (/.f32 (fma.f32 -1/2 (/.f32 (-.f32 1/2 (pow.f32 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) -1/2) 2)) (log.f32 (/.f32 -1 u1))) 1/3) (/.f32 (pow.f32 u1 3) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))) (/.f32 (-.f32 1/2 (pow.f32 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) -1/2) 2)) (/.f32 u1 (/.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) u1))))))
(+.f32 (*.f32 (*.f32 1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) (+.f32 (*.f32 (/.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (pow.f32 u1 3)) (fma.f32 -1/2 (/.f32 (-.f32 1/2 (*.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))) 1/4)) (log.f32 (/.f32 -1 u1))) 1/3)) (*.f32 (+.f32 (/.f32 (-.f32 1/2 (*.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))) 1/4)) u1) 1) (/.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) u1)))) (*.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (sqrt.f32 (log.f32 (/.f32 -1 u1)))))
(sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))
(sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))
(+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 2)))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(fma.f32 -2 (*.f32 (*.f32 u2 u2) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 2))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(fma.f32 -2 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (fma.f32 -2 (*.f32 u2 (*.f32 (pow.f32 (PI.f32) 2) u2)) 1) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 4)))) (+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 2)))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))
(fma.f32 2/3 (*.f32 (pow.f32 u2 4) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 4))) (fma.f32 -2 (*.f32 (*.f32 u2 u2) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 2))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))
(fma.f32 2/3 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))) (fma.f32 -2 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))))
(+.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (fma.f32 (*.f32 u2 u2) (*.f32 (pow.f32 (PI.f32) 2) -2) (*.f32 2/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))))))
(+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 4)))) (+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 2)))) (+.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (*.f32 -4/45 (*.f32 (pow.f32 u2 6) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 6)))))))
(fma.f32 2/3 (*.f32 (pow.f32 u2 4) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 4))) (+.f32 (fma.f32 -2 (*.f32 (*.f32 u2 u2) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 2))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))) (*.f32 -4/45 (*.f32 (pow.f32 u2 6) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 6))))))
(fma.f32 2/3 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))) (fma.f32 -2 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2))) (fma.f32 -4/45 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))))
(+.f32 (*.f32 (fma.f32 -2 (*.f32 u2 (*.f32 (pow.f32 (PI.f32) 2) u2)) 1) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))) (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (fma.f32 -4/45 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6)) (*.f32 2/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
1
(+.f32 1 (*.f32 -2 (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2))))
(+.f32 1 (*.f32 (*.f32 -2 (*.f32 u2 u2)) (pow.f32 (PI.f32) 2)))
(fma.f32 -2 (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2)) 1)
(fma.f32 -2 (*.f32 u2 (*.f32 (pow.f32 (PI.f32) 2) u2)) 1)
(+.f32 1 (+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))) (*.f32 -2 (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2)))))
(+.f32 1 (fma.f32 2/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4)) (*.f32 (*.f32 -2 (*.f32 u2 u2)) (pow.f32 (PI.f32) 2))))
(+.f32 (*.f32 (pow.f32 u2 4) (*.f32 (pow.f32 (PI.f32) 4) 2/3)) (fma.f32 -2 (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2)) 1))
(fma.f32 (*.f32 u2 u2) (*.f32 (pow.f32 (PI.f32) 2) -2) (fma.f32 2/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4)) 1))
(+.f32 1 (+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))) (+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2))) (*.f32 -4/45 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6))))))
(+.f32 1 (fma.f32 2/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4)) (fma.f32 -2 (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2)) (*.f32 -4/45 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6))))))
(+.f32 (fma.f32 (*.f32 u2 u2) (*.f32 (pow.f32 (PI.f32) 2) -2) (*.f32 2/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4)))) (fma.f32 (pow.f32 u2 6) (*.f32 (pow.f32 (PI.f32) 6) -4/45) 1))
(cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))
(cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2))
(cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))
(cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2)))
(cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))
(cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2))
(cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))
(cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2)))
(cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))
(cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2))
(cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))
(cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2)))
(cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))
(cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2))
(cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))
(cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2)))
(cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))
(cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2))
(cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))
(cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2)))
(cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))
(cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2))
(cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))
(cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2)))
(cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))
(cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2))
(cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))
(cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2)))
(cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))
(cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2))
(cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))
(cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2)))
(sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1))))))
(sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1))))))
(sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))
(+.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (*.f32 1/2 (/.f32 1 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) u1))))
(+.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) (/.f32 1/2 (*.f32 u1 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))))))
(+.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (/.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) u1))
(+.f32 (*.f32 1/2 (/.f32 1 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) u1))) (+.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (*.f32 1/2 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1))))))) 2)) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (pow.f32 u1 2))))))
(+.f32 (+.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) (/.f32 1/2 (*.f32 u1 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1))))))))) (*.f32 1/2 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1))))))) 2)) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) (*.f32 u1 u1)))))
(+.f32 (/.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) u1) (fma.f32 1/2 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) 2)) (*.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (*.f32 u1 u1))) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))))
(fma.f32 1/2 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) 2)) (*.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (*.f32 u1 u1))) (+.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (/.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) u1)))
(+.f32 (*.f32 1/2 (/.f32 1 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) u1))) (+.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (+.f32 (*.f32 1/2 (/.f32 (-.f32 1/3 (*.f32 1/2 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1))))))) 2)) (pow.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) 2)))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (pow.f32 u1 3)))) (*.f32 1/2 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1))))))) 2)) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (pow.f32 u1 2)))))))
(+.f32 (/.f32 1/2 (*.f32 u1 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))))) (+.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) (*.f32 1/2 (+.f32 (/.f32 (+.f32 1/3 (*.f32 -1/2 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1))))))) 2)) (pow.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) 2)))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) (pow.f32 u1 3))) (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1))))))) 2)) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) (*.f32 u1 u1)))))))
(+.f32 (/.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) u1) (fma.f32 1/2 (+.f32 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) 2)) (*.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (*.f32 u1 u1))) (/.f32 (+.f32 1/3 (*.f32 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) 2)) (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) -1/2)) (*.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (pow.f32 u1 3)))) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))))
(+.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (+.f32 (*.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) (+.f32 (/.f32 (+.f32 1/3 (*.f32 1/2 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) 2)) (+.f32 (log.f32 -1) (log.f32 u1))))) (pow.f32 u1 3)) (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) 2)) (*.f32 u1 u1)))) (/.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) u1)))
(sqrt.f32 (log.f32 (/.f32 -1 u1)))
(+.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 1 u1))))
(+.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (*.f32 1/2 (*.f32 (/.f32 1 u1) (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))))))
(fma.f32 1/2 (/.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) u1) (sqrt.f32 (log.f32 (/.f32 -1 u1))))
(+.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 1 u1))) (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (-.f32 1/2 (pow.f32 (*.f32 -1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) 2)) (pow.f32 u1 2))))))
(+.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (*.f32 1/2 (+.f32 (*.f32 (/.f32 1 u1) (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (-.f32 1/2 (pow.f32 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) -1/2) 2)) (*.f32 u1 u1))))))
(fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (+.f32 (/.f32 1 u1) (/.f32 (-.f32 1/2 (pow.f32 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) -1/2) 2)) (*.f32 u1 u1)))) (sqrt.f32 (log.f32 (/.f32 -1 u1))))
(fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (+.f32 (/.f32 1 u1) (/.f32 (-.f32 1/2 (*.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))) 1/4)) (*.f32 u1 u1)))) (sqrt.f32 (log.f32 (/.f32 -1 u1))))
(+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (+.f32 (*.f32 -1/2 (/.f32 (-.f32 1/2 (pow.f32 (*.f32 -1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) 2)) (log.f32 (/.f32 -1 u1)))) 1/3) (pow.f32 u1 3)))) (+.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 1 u1))) (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (-.f32 1/2 (pow.f32 (*.f32 -1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) 2)) (pow.f32 u1 2)))))))
(fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (fma.f32 -1/2 (/.f32 (-.f32 1/2 (pow.f32 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) -1/2) 2)) (log.f32 (/.f32 -1 u1))) 1/3) (pow.f32 u1 3))) (+.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (*.f32 1/2 (+.f32 (*.f32 (/.f32 1 u1) (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (-.f32 1/2 (pow.f32 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) -1/2) 2)) (*.f32 u1 u1)))))))
(fma.f32 (*.f32 1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) (/.f32 (fma.f32 -1/2 (/.f32 (-.f32 1/2 (pow.f32 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) -1/2) 2)) (log.f32 (/.f32 -1 u1))) 1/3) (pow.f32 u1 3)) (fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (+.f32 (/.f32 1 u1) (/.f32 (-.f32 1/2 (pow.f32 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) -1/2) 2)) (*.f32 u1 u1)))) (sqrt.f32 (log.f32 (/.f32 -1 u1)))))
(+.f32 (*.f32 (*.f32 1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) (+.f32 (/.f32 (fma.f32 -1/2 (/.f32 (-.f32 1/2 (*.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))) 1/4)) (log.f32 (/.f32 -1 u1))) 1/3) (pow.f32 u1 3)) (+.f32 (/.f32 1 u1) (/.f32 (-.f32 1/2 (*.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))) 1/4)) (*.f32 u1 u1))))) (sqrt.f32 (log.f32 (/.f32 -1 u1))))

prune257.0ms (5.5%)

Pruning

14 alts after pruning (14 fresh and 0 done)

PrunedKeptTotal
New13314147
Fresh101
Picked101
Done000
Total13514149
Error
0.1b
Counts
149 → 14
Alt Table
StatusErrorProgram
8.9b
(sqrt.f32 (*.f32 (log1p.f32 u1) (pow.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 2)))
0.8b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (log.f32 (exp.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))))
8.2b
(*.f32 (*.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (log1p.f32 u1)) 2)) (sqrt.f32 (cbrt.f32 (log1p.f32 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
1.2b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (pow.f32 (sqrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) 2))
0.5b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.f32 (fma.f32 (*.f32 (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2))) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1))) (fma.f32 (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) 1 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1))))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (-.f32 (exp.f32 (log1p.f32 (*.f32 (PI.f32) u2))) 1))))
0.5b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (pow.f32 (cbrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) 2) (cbrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.f32 (fma.f32 1 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (fma.f32 (neg.f32 (sin.f32 (*.f32 (PI.f32) u2))) (sin.f32 (*.f32 (PI.f32) u2)) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))))
0.5b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (log.f32 (pow.f32 (exp.f32 u2) (PI.f32))))))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (cbrt.f32 (*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))))))
0.5b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.f32 (fma.f32 (*.f32 (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2))) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (fma.f32 (neg.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))))
0.6b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (+.f32 (cos.f32 (*.f32 (PI.f32) u2)) (sin.f32 (*.f32 (PI.f32) u2))) (-.f32 (cos.f32 (*.f32 (PI.f32) u2)) (sin.f32 (*.f32 (PI.f32) u2)))))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.f32 (fma.f32 1 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (neg.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (fma.f32 (neg.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (log.f32 (+.f32 1 (expm1.f32 (*.f32 (PI.f32) u2)))))))
Compiler

Compiled 5213 to 3256 computations (37.5% saved)

localize48.0ms (1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(cos.f32 (*.f32 2 (cbrt.f32 (*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3)))))
0.1b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (cbrt.f32 (*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))))))
0.3b
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
1.0b
(pow.f32 (PI.f32) 3)

series9.0ms (0.2%)

Counts
4 → 32
Calls

12 calls:

TimeVariablePointExpression
2.0ms
u2
@-inf
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
1.0ms
u2
@0
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
1.0ms
u2
@-inf
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (cbrt.f32 (*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))))))
1.0ms
u2
@inf
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
0.0ms
u1
@inf
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (cbrt.f32 (*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))))))

rewrite61.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
495×prod-diff_binary32
253×log1p-udef_binary32
166×add-sqr-sqrt_binary32
160×pow1_binary32
157×*-un-lft-identity_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01744
136040
2408840
Stop Event
node limit
Counts
4 → 93
Calls
Call 1
Inputs
(pow.f32 (PI.f32) 3)
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (cbrt.f32 (*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))))))
(cos.f32 (*.f32 2 (cbrt.f32 (*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3)))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (pow.f32 (PI.f32) 3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (PI.f32) (pow.f32 (PI.f32) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (PI.f32) 3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (pow.f32 (PI.f32) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (PI.f32) 2) (PI.f32))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2) (*.f32 (cbrt.f32 (PI.f32)) (pow.f32 (PI.f32) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (PI.f32)) (*.f32 (sqrt.f32 (PI.f32)) (pow.f32 (PI.f32) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (PI.f32) 3/2) (pow.f32 (PI.f32) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2) 3) (PI.f32))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (sqrt.f32 (PI.f32)) 3) (pow.f32 (sqrt.f32 (PI.f32)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (pow.f32 (PI.f32) 2) 1) (PI.f32))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 (cbrt.f32 (PI.f32)) 2)) (cbrt.f32 (PI.f32)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (pow.f32 (PI.f32) 2) (sqrt.f32 (PI.f32))) (sqrt.f32 (PI.f32)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (PI.f32) 6))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (pow.f32 (PI.f32) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (pow.f32 (PI.f32) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (pow.f32 (PI.f32) 3) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (pow.f32 (PI.f32) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 3 (log.f32 (PI.f32))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 3 (log.f32 (PI.f32))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (pow.f32 (PI.f32) 3)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (pow.f32 (*.f32 (PI.f32) u2) 3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 (PI.f32) u2) 3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (PI.f32) u2) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (pow.f32 (*.f32 (PI.f32) u2) 3) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 (PI.f32) u2) 3/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 (PI.f32) u2) 6))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (pow.f32 (*.f32 (PI.f32) u2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (pow.f32 (*.f32 (PI.f32) u2) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (pow.f32 (*.f32 (PI.f32) u2) 3) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (pow.f32 (PI.f32) 3) 3) (pow.f32 (pow.f32 u2 3) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (pow.f32 u2 3) 3) (pow.f32 (pow.f32 (PI.f32) 3) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (pow.f32 (*.f32 (PI.f32) u2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 3 (log.f32 (*.f32 (PI.f32) u2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 3 (log.f32 (*.f32 (PI.f32) u2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 (PI.f32) u2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (pow.f32 (*.f32 (PI.f32) u2) 3)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (*.f32 (log1p.f32 u1) (pow.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 (sqrt.f32 (log1p.f32 u1))) (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (log1p.f32 u1) 3/2) (pow.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) 3) (pow.f32 (log1p.f32 u1) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (fma.f32 (neg.f32 (sin.f32 (*.f32 (PI.f32) u2))) (sin.f32 (*.f32 (PI.f32) u2)) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (fma.f32 (neg.f32 (sqrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (sqrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (*.f32 (neg.f32 (sin.f32 (*.f32 (PI.f32) u2))) (sin.f32 (*.f32 (PI.f32) u2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 1 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (neg.f32 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1))) (fma.f32 (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) 1 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 (cos.f32 (*.f32 (PI.f32) u2)) (cos.f32 (*.f32 (PI.f32) u2)) (neg.f32 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1))) (fma.f32 (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) 1 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 (*.f32 (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2))) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1))) (fma.f32 (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) 1 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 (sqrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (sqrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1))) (fma.f32 (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) 1 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 1 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (fma.f32 (neg.f32 (sin.f32 (*.f32 (PI.f32) u2))) (sin.f32 (*.f32 (PI.f32) u2)) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 1 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (fma.f32 (neg.f32 (sqrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (sqrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 (*.f32 (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2))) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (fma.f32 (neg.f32 (sin.f32 (*.f32 (PI.f32) u2))) (sin.f32 (*.f32 (PI.f32) u2)) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 (*.f32 (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2))) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (fma.f32 (neg.f32 (sqrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (sqrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 (sqrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (sqrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (fma.f32 (neg.f32 (sin.f32 (*.f32 (PI.f32) u2))) (sin.f32 (*.f32 (PI.f32) u2)) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 (sqrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (sqrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (fma.f32 (neg.f32 (sqrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (sqrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 1 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (neg.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (fma.f32 (neg.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 (cos.f32 (*.f32 (PI.f32) u2)) (cos.f32 (*.f32 (PI.f32) u2)) (neg.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (fma.f32 (neg.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 (*.f32 (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2))) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (fma.f32 (neg.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 (sqrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (sqrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (fma.f32 (neg.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2)))) (pow.f32 (cbrt.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2)))) 2) (cbrt.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2)))) (sqrt.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 (cos.f32 (*.f32 (PI.f32) u2)) (sin.f32 (*.f32 (PI.f32) u2))) (-.f32 (cos.f32 (*.f32 (PI.f32) u2)) (sin.f32 (*.f32 (PI.f32) u2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) 3) (pow.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 3)) (+.f32 (*.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (+.f32 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (*.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (+.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cos.f32 (*.f32 (PI.f32) u2)) (cos.f32 (*.f32 (PI.f32) u2)) (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2)))))))))

simplify54.0ms (1.1%)

Algorithm
egg-herbie
Rules
522×fma-def_binary32
491×associate-*l*_binary32
416×associate-*r*_binary32
258×times-frac_binary32
205×associate-/r*_binary32
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01211360
13481248
211121119
349991119
Stop Event
node limit
Counts
125 → 131
Calls
Call 1
Inputs
(*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(+.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (*.f32 1/2 (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) u1))))
(+.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (+.f32 (*.f32 1/2 (/.f32 (*.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1))))))) 2)) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (pow.f32 u1 2)))) (*.f32 1/2 (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) u1)))))
(+.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (+.f32 (*.f32 1/2 (/.f32 (*.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (-.f32 1/3 (*.f32 1/2 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1))))))) 2)) (pow.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) 2))))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (pow.f32 u1 3)))) (+.f32 (*.f32 1/2 (/.f32 (*.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1))))))) 2)) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (pow.f32 u1 2)))) (*.f32 1/2 (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) u1))))))
(*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))))
(+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (*.f32 (-.f32 1/2 (pow.f32 (*.f32 -1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) 2)) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (pow.f32 u1 2)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))))
(+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (*.f32 (+.f32 (*.f32 -1/2 (/.f32 (-.f32 1/2 (pow.f32 (*.f32 -1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) 2)) (log.f32 (/.f32 -1 u1)))) 1/3) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (pow.f32 u1 3)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (*.f32 (-.f32 1/2 (pow.f32 (*.f32 -1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) 2)) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (pow.f32 u1 2)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))))))
(sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))
(+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 2)))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 4)))) (+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 2)))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))
(+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 4)))) (+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 2)))) (+.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (*.f32 -4/45 (*.f32 (pow.f32 u2 6) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 6)))))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (cos.f32 (*.f32 -2 (*.f32 u2 (*.f32 (cbrt.f32 -1) (PI.f32))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 -2 (*.f32 u2 (*.f32 (cbrt.f32 -1) (PI.f32))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 -2 (*.f32 u2 (*.f32 (cbrt.f32 -1) (PI.f32))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 -2 (*.f32 u2 (*.f32 (cbrt.f32 -1) (PI.f32))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
1
(+.f32 1 (*.f32 -2 (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2))))
(+.f32 1 (+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))) (*.f32 -2 (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2)))))
(+.f32 1 (+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))) (+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2))) (*.f32 -4/45 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6))))))
(cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))
(cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))
(cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))
(cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))
(cos.f32 (*.f32 -2 (*.f32 u2 (*.f32 (cbrt.f32 -1) (PI.f32)))))
(cos.f32 (*.f32 -2 (*.f32 u2 (*.f32 (cbrt.f32 -1) (PI.f32)))))
(cos.f32 (*.f32 -2 (*.f32 u2 (*.f32 (cbrt.f32 -1) (PI.f32)))))
(cos.f32 (*.f32 -2 (*.f32 u2 (*.f32 (cbrt.f32 -1) (PI.f32)))))
Outputs
(*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(+.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (*.f32 1/2 (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) u1))))
(fma.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (/.f32 (*.f32 1/2 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (*.f32 u1 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))))))
(fma.f32 1/2 (/.f32 (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) (*.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))))
(fma.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (/.f32 (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (/.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) 1/2)) u1))
(+.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (+.f32 (*.f32 1/2 (/.f32 (*.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1))))))) 2)) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (pow.f32 u1 2)))) (*.f32 1/2 (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) u1)))))
(fma.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (*.f32 1/2 (+.f32 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1))))))) 2)) (/.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) (*.f32 u1 u1)) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (*.f32 u1 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))))))))
(fma.f32 1/2 (fma.f32 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) 2)) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (*.f32 u1 u1)) (/.f32 (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))))) (*.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))))
(fma.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (*.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) (+.f32 (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1) (*.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) 2)) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (*.f32 u1 u1))))))
(+.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (+.f32 (*.f32 1/2 (/.f32 (*.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (-.f32 1/3 (*.f32 1/2 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1))))))) 2)) (pow.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) 2))))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (pow.f32 u1 3)))) (+.f32 (*.f32 1/2 (/.f32 (*.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1))))))) 2)) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (pow.f32 u1 2)))) (*.f32 1/2 (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) u1))))))
(fma.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (fma.f32 1/2 (*.f32 (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1))))))) (/.f32 (+.f32 1/3 (*.f32 -1/2 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1))))))) 2)) (pow.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) 2)))) (pow.f32 u1 3))) (*.f32 1/2 (+.f32 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1))))))) 2)) (/.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) (*.f32 u1 u1)) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (*.f32 u1 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1))))))))))))
(fma.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (*.f32 1/2 (+.f32 (fma.f32 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) 2)) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (*.f32 u1 u1)) (/.f32 (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))))) (*.f32 (/.f32 (+.f32 1/3 (*.f32 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) 2)) (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) -1/2)) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (pow.f32 u1 3))))))
(fma.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (*.f32 1/2 (+.f32 (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (*.f32 u1 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))))) (*.f32 (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) (+.f32 (/.f32 (+.f32 1/3 (*.f32 1/2 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) 2)) (+.f32 (log.f32 -1) (log.f32 u1))))) (pow.f32 u1 3)) (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) 2)) (*.f32 u1 u1)))))))
(*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (sqrt.f32 (log.f32 (/.f32 -1 u1))))
(+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))))
(fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1)) (*.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (sqrt.f32 (log.f32 (/.f32 -1 u1)))))
(fma.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (sqrt.f32 (log.f32 (/.f32 -1 u1))) (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1))))
(+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (*.f32 (-.f32 1/2 (pow.f32 (*.f32 -1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) 2)) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (pow.f32 u1 2)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))))
(fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (-.f32 1/2 (pow.f32 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) -1/2) 2)) (/.f32 (*.f32 u1 u1) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))))) (fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1)) (*.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (sqrt.f32 (log.f32 (/.f32 -1 u1))))))
(+.f32 (*.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (sqrt.f32 (log.f32 (/.f32 -1 u1)))) (*.f32 (*.f32 1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) (+.f32 (*.f32 (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1) (/.f32 (-.f32 1/2 (pow.f32 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) -1/2) 2)) u1)) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1))))
(fma.f32 (*.f32 1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) (*.f32 (+.f32 (/.f32 (+.f32 1/2 (*.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))) -1/4)) u1) 1) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1)) (*.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (sqrt.f32 (log.f32 (/.f32 -1 u1)))))
(+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (*.f32 (+.f32 (*.f32 -1/2 (/.f32 (-.f32 1/2 (pow.f32 (*.f32 -1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) 2)) (log.f32 (/.f32 -1 u1)))) 1/3) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (pow.f32 u1 3)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (*.f32 (-.f32 1/2 (pow.f32 (*.f32 -1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) 2)) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (pow.f32 u1 2)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))))))
(fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (fma.f32 -1/2 (/.f32 (-.f32 1/2 (pow.f32 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) -1/2) 2)) (log.f32 (/.f32 -1 u1))) 1/3) (/.f32 (pow.f32 u1 3) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))))) (fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (-.f32 1/2 (pow.f32 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) -1/2) 2)) (/.f32 (*.f32 u1 u1) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))))) (fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1)) (*.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (sqrt.f32 (log.f32 (/.f32 -1 u1)))))))
(+.f32 (fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1)) (*.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (sqrt.f32 (log.f32 (/.f32 -1 u1))))) (*.f32 (*.f32 1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) (+.f32 (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (/.f32 (pow.f32 u1 3) (fma.f32 -1/2 (/.f32 (-.f32 1/2 (pow.f32 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) -1/2) 2)) (log.f32 (/.f32 -1 u1))) 1/3))) (*.f32 (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1) (/.f32 (-.f32 1/2 (pow.f32 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) -1/2) 2)) u1)))))
(+.f32 (*.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (sqrt.f32 (log.f32 (/.f32 -1 u1)))) (*.f32 (*.f32 1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) (+.f32 (*.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (/.f32 (fma.f32 -1/2 (/.f32 (+.f32 1/2 (*.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))) -1/4)) (log.f32 (/.f32 -1 u1))) 1/3) (pow.f32 u1 3))) (*.f32 (+.f32 (/.f32 (+.f32 1/2 (*.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))) -1/4)) u1) 1) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1)))))
(sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))
(sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))
(+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 2)))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(fma.f32 -2 (*.f32 (*.f32 u2 u2) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 2))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(fma.f32 -2 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (fma.f32 (pow.f32 (PI.f32) 2) (*.f32 u2 (*.f32 u2 -2)) 1) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 4)))) (+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 2)))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))
(fma.f32 2/3 (*.f32 (*.f32 (pow.f32 u2 4) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))) (pow.f32 (PI.f32) 4)) (fma.f32 -2 (*.f32 (*.f32 u2 u2) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 2))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))
(fma.f32 2/3 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))) (fma.f32 -2 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))))
(+.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (fma.f32 (pow.f32 u2 4) (*.f32 2/3 (pow.f32 (PI.f32) 4)) (*.f32 (pow.f32 (PI.f32) 2) (*.f32 u2 (*.f32 u2 -2))))))
(+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 4)))) (+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 2)))) (+.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (*.f32 -4/45 (*.f32 (pow.f32 u2 6) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 6)))))))
(fma.f32 2/3 (*.f32 (*.f32 (pow.f32 u2 4) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))) (pow.f32 (PI.f32) 4)) (+.f32 (fma.f32 -2 (*.f32 (*.f32 u2 u2) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 2))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))) (*.f32 (*.f32 -4/45 (pow.f32 u2 6)) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 6)))))
(fma.f32 2/3 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))) (fma.f32 -2 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2))) (fma.f32 -4/45 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))))
(+.f32 (*.f32 (fma.f32 -4/45 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6)) 1) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))) (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (fma.f32 (pow.f32 u2 4) (*.f32 2/3 (pow.f32 (PI.f32) 4)) (*.f32 (pow.f32 (PI.f32) 2) (*.f32 u2 (*.f32 u2 -2))))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (cos.f32 (*.f32 -2 (*.f32 u2 (*.f32 (cbrt.f32 -1) (PI.f32))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 -2 u2) (*.f32 (PI.f32) (cbrt.f32 -1)))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 u2 (*.f32 (*.f32 (PI.f32) (cbrt.f32 -1)) -2))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 u2 (*.f32 (PI.f32) (*.f32 (cbrt.f32 -1) -2)))))
(*.f32 (cos.f32 (*.f32 -2 (*.f32 u2 (*.f32 (cbrt.f32 -1) (PI.f32))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 -2 u2) (*.f32 (PI.f32) (cbrt.f32 -1)))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 u2 (*.f32 (*.f32 (PI.f32) (cbrt.f32 -1)) -2))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 u2 (*.f32 (PI.f32) (*.f32 (cbrt.f32 -1) -2)))))
(*.f32 (cos.f32 (*.f32 -2 (*.f32 u2 (*.f32 (cbrt.f32 -1) (PI.f32))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 -2 u2) (*.f32 (PI.f32) (cbrt.f32 -1)))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 u2 (*.f32 (*.f32 (PI.f32) (cbrt.f32 -1)) -2))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 u2 (*.f32 (PI.f32) (*.f32 (cbrt.f32 -1) -2)))))
(*.f32 (cos.f32 (*.f32 -2 (*.f32 u2 (*.f32 (cbrt.f32 -1) (PI.f32))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 -2 u2) (*.f32 (PI.f32) (cbrt.f32 -1)))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 u2 (*.f32 (*.f32 (PI.f32) (cbrt.f32 -1)) -2))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 u2 (*.f32 (PI.f32) (*.f32 (cbrt.f32 -1) -2)))))
1
(+.f32 1 (*.f32 -2 (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2))))
(+.f32 1 (*.f32 -2 (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2))))
(fma.f32 -2 (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2)) 1)
(fma.f32 (pow.f32 (PI.f32) 2) (*.f32 u2 (*.f32 u2 -2)) 1)
(+.f32 1 (+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))) (*.f32 -2 (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2)))))
(+.f32 1 (fma.f32 2/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4)) (*.f32 -2 (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2)))))
(+.f32 1 (fma.f32 -2 (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2)) (*.f32 (pow.f32 u2 4) (*.f32 (pow.f32 (PI.f32) 4) 2/3))))
(fma.f32 (pow.f32 (PI.f32) 2) (*.f32 u2 (*.f32 u2 -2)) (fma.f32 (pow.f32 u2 4) (*.f32 2/3 (pow.f32 (PI.f32) 4)) 1))
(+.f32 1 (+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))) (+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2))) (*.f32 -4/45 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6))))))
(+.f32 1 (fma.f32 2/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4)) (fma.f32 -2 (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2)) (*.f32 -4/45 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6))))))
(+.f32 1 (fma.f32 2/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4)) (fma.f32 -4/45 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6)) (*.f32 -2 (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2))))))
(+.f32 1 (fma.f32 -2 (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2)) (fma.f32 (pow.f32 u2 4) (*.f32 2/3 (pow.f32 (PI.f32) 4)) (*.f32 -4/45 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6))))))
(cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))
(cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))
(cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))
(cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))
(cos.f32 (*.f32 -2 (*.f32 u2 (*.f32 (cbrt.f32 -1) (PI.f32)))))
(cos.f32 (*.f32 (*.f32 -2 u2) (*.f32 (PI.f32) (cbrt.f32 -1))))
(cos.f32 (*.f32 u2 (*.f32 (*.f32 (PI.f32) (cbrt.f32 -1)) -2)))
(cos.f32 (*.f32 u2 (*.f32 (PI.f32) (*.f32 (cbrt.f32 -1) -2))))
(cos.f32 (*.f32 -2 (*.f32 u2 (*.f32 (cbrt.f32 -1) (PI.f32)))))
(cos.f32 (*.f32 (*.f32 -2 u2) (*.f32 (PI.f32) (cbrt.f32 -1))))
(cos.f32 (*.f32 u2 (*.f32 (*.f32 (PI.f32) (cbrt.f32 -1)) -2)))
(cos.f32 (*.f32 u2 (*.f32 (PI.f32) (*.f32 (cbrt.f32 -1) -2))))
(cos.f32 (*.f32 -2 (*.f32 u2 (*.f32 (cbrt.f32 -1) (PI.f32)))))
(cos.f32 (*.f32 (*.f32 -2 u2) (*.f32 (PI.f32) (cbrt.f32 -1))))
(cos.f32 (*.f32 u2 (*.f32 (*.f32 (PI.f32) (cbrt.f32 -1)) -2)))
(cos.f32 (*.f32 u2 (*.f32 (PI.f32) (*.f32 (cbrt.f32 -1) -2))))
(cos.f32 (*.f32 -2 (*.f32 u2 (*.f32 (cbrt.f32 -1) (PI.f32)))))
(cos.f32 (*.f32 (*.f32 -2 u2) (*.f32 (PI.f32) (cbrt.f32 -1))))
(cos.f32 (*.f32 u2 (*.f32 (*.f32 (PI.f32) (cbrt.f32 -1)) -2)))
(cos.f32 (*.f32 u2 (*.f32 (PI.f32) (*.f32 (cbrt.f32 -1) -2))))

prune344.0ms (7.3%)

Pruning

13 alts after pruning (13 fresh and 0 done)

PrunedKeptTotal
New1238131
Fresh8513
Picked101
Done000
Total13213145
Error
0.1b
Counts
145 → 13
Alt Table
StatusErrorProgram
8.2b
(*.f32 (*.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (log1p.f32 u1)) 2)) (sqrt.f32 (cbrt.f32 (log1p.f32 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
1.2b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (pow.f32 (sqrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) 2))
2.0b
(+.f32 (*.f32 (fma.f32 -4/45 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6)) 1) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))) (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (fma.f32 (pow.f32 u2 4) (*.f32 2/3 (pow.f32 (PI.f32) 4)) (*.f32 (pow.f32 (PI.f32) 2) (*.f32 u2 (*.f32 u2 -2))))))
0.5b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.f32 (fma.f32 (*.f32 (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2))) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1))) (fma.f32 (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) 1 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1))))
0.3b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (cbrt.f32 (*.f32 (pow.f32 u2 3) (*.f32 (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 (cbrt.f32 (PI.f32)) 2)) (cbrt.f32 (PI.f32))))))))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (log.f32 (+.f32 1 (expm1.f32 (*.f32 (PI.f32) u2)))))))
0.5b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.f32 (fma.f32 (*.f32 (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2))) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (fma.f32 (neg.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))))
8.9b
(sqrt.f32 (*.f32 (log1p.f32 u1) (pow.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 2)))
0.8b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (log.f32 (exp.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))))))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.f32 (fma.f32 1 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (fma.f32 (neg.f32 (sin.f32 (*.f32 (PI.f32) u2))) (sin.f32 (*.f32 (PI.f32) u2)) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))))
0.6b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (+.f32 (cos.f32 (*.f32 (PI.f32) u2)) (sin.f32 (*.f32 (PI.f32) u2))) (-.f32 (cos.f32 (*.f32 (PI.f32) u2)) (sin.f32 (*.f32 (PI.f32) u2)))))
0.5b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (pow.f32 (cbrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) 2) (cbrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.f32 (fma.f32 1 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (neg.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (fma.f32 (neg.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))))
Compiler

Compiled 4704 to 2836 computations (39.7% saved)

localize66.0ms (1.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f32 (pow.f32 u2 3) (*.f32 (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 (cbrt.f32 (PI.f32)) 2)) (cbrt.f32 (PI.f32))))
1.0b
(*.f32 (pow.f32 (PI.f32) 2) (pow.f32 (cbrt.f32 (PI.f32)) 2))
1.0b
(*.f32 (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 (cbrt.f32 (PI.f32)) 2)) (cbrt.f32 (PI.f32)))
1.0b
(pow.f32 (PI.f32) 2)

series1.0ms (0%)

Counts
4 → 12
Calls

3 calls:

TimeVariablePointExpression
0.0ms
u2
@0
(*.f32 (pow.f32 u2 3) (*.f32 (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 (cbrt.f32 (PI.f32)) 2)) (cbrt.f32 (PI.f32))))
0.0ms
u2
@inf
(*.f32 (pow.f32 u2 3) (*.f32 (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 (cbrt.f32 (PI.f32)) 2)) (cbrt.f32 (PI.f32))))
0.0ms
u2
@-inf
(*.f32 (pow.f32 u2 3) (*.f32 (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 (cbrt.f32 (PI.f32)) 2)) (cbrt.f32 (PI.f32))))

rewrite47.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
875×log1p-expm1-u_binary32
875×expm1-log1p-u_binary32
112×add-sqr-sqrt_binary32
109×pow1_binary32
106×associate-*r*_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01240
125628
2269828
Stop Event
node limit
Counts
4 → 64
Calls
Call 1
Inputs
(pow.f32 (PI.f32) 2)
(*.f32 (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 (cbrt.f32 (PI.f32)) 2)) (cbrt.f32 (PI.f32)))
(*.f32 (pow.f32 (PI.f32) 2) (pow.f32 (cbrt.f32 (PI.f32)) 2))
(*.f32 (pow.f32 u2 3) (*.f32 (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 (cbrt.f32 (PI.f32)) 2)) (cbrt.f32 (PI.f32))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (pow.f32 (PI.f32) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (PI.f32) (PI.f32))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (PI.f32) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (pow.f32 (PI.f32) 2)) (pow.f32 (cbrt.f32 (PI.f32)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (pow.f32 (PI.f32) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (pow.f32 (PI.f32) 3)) (sqrt.f32 (PI.f32)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (PI.f32)) (*.f32 (sqrt.f32 (PI.f32)) (PI.f32)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4) (cbrt.f32 (pow.f32 (PI.f32) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4) (cbrt.f32 (PI.f32))) (cbrt.f32 (PI.f32)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (PI.f32) (cbrt.f32 (pow.f32 (PI.f32) 2))) (cbrt.f32 (PI.f32)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4) 1) (cbrt.f32 (pow.f32 (PI.f32) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4) (cbrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4))) (cbrt.f32 (cbrt.f32 (pow.f32 (PI.f32) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (PI.f32) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (pow.f32 (PI.f32) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (pow.f32 (PI.f32) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (pow.f32 (PI.f32) 2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (pow.f32 (PI.f32) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 2 (log.f32 (PI.f32))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 2 (log.f32 (PI.f32))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (pow.f32 (PI.f32) 2)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (pow.f32 (PI.f32) 3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (PI.f32) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (PI.f32) 3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (pow.f32 (PI.f32) 3) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (pow.f32 (PI.f32) 3)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (pow.f32 (PI.f32) 2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (pow.f32 (PI.f32) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (pow.f32 (PI.f32) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (pow.f32 (PI.f32) 3) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (PI.f32) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 (PI.f32) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (pow.f32 (PI.f32) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (pow.f32 (PI.f32) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (pow.f32 (PI.f32) 3)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (pow.f32 (PI.f32) 3)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (pow.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 (PI.f32) 4)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (pow.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4) 2)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (pow.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (pow.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 (PI.f32) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 (pow.f32 (PI.f32) 2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (pow.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 2 (log.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 2 (log.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (pow.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4) 2)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (pow.f32 (*.f32 (PI.f32) u2) 3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 (PI.f32) u2) 3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (pow.f32 (*.f32 (PI.f32) u2) 3) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (PI.f32) u2) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (pow.f32 (*.f32 (PI.f32) u2) 3)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (pow.f32 (*.f32 (PI.f32) u2) 3) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (pow.f32 (*.f32 (PI.f32) u2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (pow.f32 (*.f32 (PI.f32) u2) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (pow.f32 (*.f32 (PI.f32) u2) 3) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (pow.f32 (PI.f32) 3) 3) (pow.f32 (pow.f32 u2 3) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (pow.f32 u2 3) 3) (pow.f32 (pow.f32 (PI.f32) 3) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (pow.f32 (*.f32 (PI.f32) u2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (pow.f32 (*.f32 (PI.f32) u2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (pow.f32 (*.f32 (PI.f32) u2) 3)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (pow.f32 (*.f32 (PI.f32) u2) 3)))))))

simplify67.0ms (1.4%)

Algorithm
egg-herbie
Rules
974×unswap-sqr_binary32
626×sqr-pow_binary32
403×*-commutative_binary32
237×pow-sqr_binary32
219×cube-prod_binary32
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
07132
121132
256132
3189132
471596
5127996
6270396
7279296
8293496
9309396
10326496
11349496
12379096
13414296
14456696
Stop Event
node limit
Counts
76 → 66
Calls
Call 1
Inputs
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
Outputs
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(pow.f32 (*.f32 u2 (PI.f32)) 3)
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(pow.f32 (*.f32 u2 (PI.f32)) 3)
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(pow.f32 (*.f32 u2 (PI.f32)) 3)
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(pow.f32 (*.f32 u2 (PI.f32)) 3)
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(pow.f32 (*.f32 u2 (PI.f32)) 3)
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(pow.f32 (*.f32 u2 (PI.f32)) 3)
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(pow.f32 (*.f32 u2 (PI.f32)) 3)
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(pow.f32 (*.f32 u2 (PI.f32)) 3)
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(pow.f32 (*.f32 u2 (PI.f32)) 3)
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(pow.f32 (*.f32 u2 (PI.f32)) 3)
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(pow.f32 (*.f32 u2 (PI.f32)) 3)
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(pow.f32 (*.f32 u2 (PI.f32)) 3)

prune173.0ms (3.7%)

Pruning

13 alts after pruning (12 fresh and 1 done)

PrunedKeptTotal
New66066
Fresh01212
Picked011
Done000
Total661379
Error
0.1b
Counts
79 → 13
Alt Table
StatusErrorProgram
8.2b
(*.f32 (*.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (log1p.f32 u1)) 2)) (sqrt.f32 (cbrt.f32 (log1p.f32 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
1.2b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (pow.f32 (sqrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) 2))
2.0b
(+.f32 (*.f32 (fma.f32 -4/45 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6)) 1) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))) (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (fma.f32 (pow.f32 u2 4) (*.f32 2/3 (pow.f32 (PI.f32) 4)) (*.f32 (pow.f32 (PI.f32) 2) (*.f32 u2 (*.f32 u2 -2))))))
0.5b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.f32 (fma.f32 (*.f32 (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2))) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1))) (fma.f32 (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) 1 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1))))
0.3b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (cbrt.f32 (*.f32 (pow.f32 u2 3) (*.f32 (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 (cbrt.f32 (PI.f32)) 2)) (cbrt.f32 (PI.f32))))))))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (log.f32 (+.f32 1 (expm1.f32 (*.f32 (PI.f32) u2)))))))
0.5b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.f32 (fma.f32 (*.f32 (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2))) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (fma.f32 (neg.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))))
8.9b
(sqrt.f32 (*.f32 (log1p.f32 u1) (pow.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 2)))
0.8b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (log.f32 (exp.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))))))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.f32 (fma.f32 1 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (fma.f32 (neg.f32 (sin.f32 (*.f32 (PI.f32) u2))) (sin.f32 (*.f32 (PI.f32) u2)) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))))
0.6b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (+.f32 (cos.f32 (*.f32 (PI.f32) u2)) (sin.f32 (*.f32 (PI.f32) u2))) (-.f32 (cos.f32 (*.f32 (PI.f32) u2)) (sin.f32 (*.f32 (PI.f32) u2)))))
0.5b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (pow.f32 (cbrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) 2) (cbrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.f32 (fma.f32 1 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (neg.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (fma.f32 (neg.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))))
Compiler

Compiled 2543 to 1594 computations (37.3% saved)

localize52.0ms (1.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (log.f32 (+.f32 1 (expm1.f32 (*.f32 (PI.f32) u2)))))))
0.3b
(expm1.f32 (*.f32 (PI.f32) u2))
0.3b
(*.f32 (PI.f32) u2)
13.0b
(log.f32 (+.f32 1 (expm1.f32 (*.f32 (PI.f32) u2))))

series43.0ms (0.9%)

Counts
3 → 44
Calls

12 calls:

TimeVariablePointExpression
22.0ms
u2
@inf
(log.f32 (+.f32 1 (expm1.f32 (*.f32 (PI.f32) u2))))
13.0ms
u2
@-inf
(log.f32 (+.f32 1 (expm1.f32 (*.f32 (PI.f32) u2))))
1.0ms
u2
@0
(log.f32 (+.f32 1 (expm1.f32 (*.f32 (PI.f32) u2))))
1.0ms
u2
@0
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (log.f32 (+.f32 1 (expm1.f32 (*.f32 (PI.f32) u2)))))))
1.0ms
u2
@inf
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (log.f32 (+.f32 1 (expm1.f32 (*.f32 (PI.f32) u2)))))))

rewrite56.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
718×prod-diff_binary32
159×add-sqr-sqrt_binary32
154×pow1_binary32
153×*-un-lft-identity_binary32
148×expm1-log1p-u_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01733
134529
2395629
Stop Event
node limit
Counts
3 → 74
Calls
Call 1
Inputs
(log.f32 (+.f32 1 (expm1.f32 (*.f32 (PI.f32) u2))))
(expm1.f32 (*.f32 (PI.f32) u2))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (log.f32 (+.f32 1 (expm1.f32 (*.f32 (PI.f32) u2)))))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (*.f32 (PI.f32) u2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (pow.f32 (exp.f32 (PI.f32)) u2))) (log.f32 (sqrt.f32 (pow.f32 (exp.f32 (PI.f32)) u2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (cbrt.f32 (pow.f32 (exp.f32 2) (*.f32 (PI.f32) u2)))) (log.f32 (cbrt.f32 (pow.f32 (exp.f32 (PI.f32)) u2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 (PI.f32) u2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (log.f32 (+.f32 1 (pow.f32 (expm1.f32 (*.f32 (PI.f32) u2)) 3))) (log.f32 (+.f32 1 (-.f32 (pow.f32 (expm1.f32 (*.f32 (PI.f32) u2)) 2) (expm1.f32 (*.f32 (PI.f32) u2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (log.f32 (-.f32 1 (pow.f32 (expm1.f32 (*.f32 (PI.f32) u2)) 2))) (log.f32 (-.f32 1 (expm1.f32 (*.f32 (PI.f32) u2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (*.f32 (PI.f32) u2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (PI.f32) u2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 u2 (PI.f32))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (PI.f32) u2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2) (*.f32 (cbrt.f32 (PI.f32)) u2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (*.f32 (PI.f32) u2)) (pow.f32 (cbrt.f32 (*.f32 (PI.f32) u2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (*.f32 (PI.f32) u2)) 2) (cbrt.f32 (*.f32 (PI.f32) u2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 u2) 2) (*.f32 (cbrt.f32 u2) (PI.f32)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (PI.f32)) (*.f32 (sqrt.f32 (PI.f32)) u2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (*.f32 (PI.f32) u2)) (sqrt.f32 (*.f32 (PI.f32) u2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 u2) (*.f32 (sqrt.f32 u2) (PI.f32)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (PI.f32) (pow.f32 (cbrt.f32 u2) 2)) (cbrt.f32 u2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (PI.f32) (sqrt.f32 u2)) (sqrt.f32 u2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 u2 (pow.f32 (cbrt.f32 (PI.f32)) 2)) (cbrt.f32 (PI.f32)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 u2 (sqrt.f32 (PI.f32))) (sqrt.f32 (PI.f32)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (PI.f32) u2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 (PI.f32) u2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 (PI.f32) u2)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 (PI.f32) u2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 (PI.f32) u2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 (PI.f32) u2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (PI.f32) 3) (pow.f32 u2 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 (PI.f32) u2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 (PI.f32) u2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 (PI.f32) u2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 (PI.f32) u2)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 1 (-.f32 (expm1.f32 (*.f32 (PI.f32) u2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (expm1.f32 (*.f32 (PI.f32) u2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (pow.f32 (exp.f32 (PI.f32)) u2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (pow.f32 (exp.f32 (PI.f32)) u2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (expm1.f32 (*.f32 (PI.f32) u2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (expm1.f32 (*.f32 (PI.f32) u2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (expm1.f32 (*.f32 (PI.f32) u2))) (cbrt.f32 (pow.f32 (expm1.f32 (*.f32 (PI.f32) u2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (pow.f32 (expm1.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (expm1.f32 (*.f32 (PI.f32) u2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (expm1.f32 (*.f32 (PI.f32) u2))) (sqrt.f32 (expm1.f32 (*.f32 (PI.f32) u2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 (sqrt.f32 (pow.f32 (exp.f32 (PI.f32)) u2)) 1) (-.f32 (sqrt.f32 (pow.f32 (exp.f32 (PI.f32)) u2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (expm1.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) (+.f32 (pow.f32 (exp.f32 (PI.f32)) u2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (pow.f32 (exp.f32 (PI.f32)) u2) 3) 1) (+.f32 (pow.f32 (exp.f32 2) (*.f32 (PI.f32) u2)) (+.f32 1 (pow.f32 (exp.f32 (PI.f32)) u2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (expm1.f32 (*.f32 (PI.f32) u2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (expm1.f32 (*.f32 (PI.f32) u2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (expm1.f32 (*.f32 (PI.f32) u2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (expm1.f32 (*.f32 (PI.f32) u2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (expm1.f32 (*.f32 (PI.f32) u2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (expm1.f32 (*.f32 (PI.f32) u2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (expm1.f32 (*.f32 (PI.f32) u2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (expm1.f32 (*.f32 (PI.f32) u2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (pow.f32 (exp.f32 (PI.f32)) u2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (pow.f32 (exp.f32 2) (*.f32 (PI.f32) u2))) (cbrt.f32 (pow.f32 (exp.f32 (PI.f32)) u2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (pow.f32 (exp.f32 (PI.f32)) u2)) (sqrt.f32 (pow.f32 (exp.f32 (PI.f32)) u2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (expm1.f32 (*.f32 (PI.f32) u2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (expm1.f32 (*.f32 (PI.f32) u2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (expm1.f32 (*.f32 (PI.f32) u2))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (*.f32 (log1p.f32 u1) (pow.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))) (sqrt.f32 (log1p.f32 u1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (log1p.f32 u1) 3/2) (pow.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) 3) (pow.f32 (log1p.f32 u1) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))))))))

simplify42.0ms (0.9%)

Algorithm
egg-herbie
Rules
331×distribute-rgt-in_binary32
319×distribute-lft-in_binary32
296×associate-+l+_binary32
258×times-frac_binary32
205×associate-/r*_binary32
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01551531
14881339
218391124
Stop Event
node limit
Counts
118 → 113
Calls
Call 1
Inputs
(*.f32 u2 (PI.f32))
(+.f32 (*.f32 1/2 (*.f32 (pow.f32 u2 2) (+.f32 (*.f32 -1 (pow.f32 (PI.f32) 2)) (pow.f32 (PI.f32) 2)))) (*.f32 u2 (PI.f32)))
(+.f32 (*.f32 1/2 (*.f32 (pow.f32 u2 2) (+.f32 (*.f32 -1 (pow.f32 (PI.f32) 2)) (pow.f32 (PI.f32) 2)))) (+.f32 (*.f32 1/6 (*.f32 (pow.f32 u2 3) (+.f32 (*.f32 2 (pow.f32 (PI.f32) 3)) (+.f32 (pow.f32 (PI.f32) 3) (*.f32 -3 (pow.f32 (PI.f32) 3)))))) (*.f32 u2 (PI.f32))))
(+.f32 (*.f32 1/2 (*.f32 (pow.f32 u2 2) (+.f32 (*.f32 -1 (pow.f32 (PI.f32) 2)) (pow.f32 (PI.f32) 2)))) (+.f32 (*.f32 1/6 (*.f32 (pow.f32 u2 3) (+.f32 (*.f32 2 (pow.f32 (PI.f32) 3)) (+.f32 (pow.f32 (PI.f32) 3) (*.f32 -3 (pow.f32 (PI.f32) 3)))))) (+.f32 (*.f32 1/24 (*.f32 (+.f32 (*.f32 12 (pow.f32 (PI.f32) 4)) (+.f32 (*.f32 -3 (pow.f32 (PI.f32) 4)) (+.f32 (*.f32 -4 (pow.f32 (PI.f32) 4)) (+.f32 (pow.f32 (PI.f32) 4) (*.f32 -6 (pow.f32 (PI.f32) 4)))))) (pow.f32 u2 4))) (*.f32 u2 (PI.f32)))))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(+.f32 (*.f32 1/2 (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2))) (*.f32 u2 (PI.f32)))
(+.f32 (*.f32 1/2 (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2))) (+.f32 (*.f32 u2 (PI.f32)) (*.f32 1/6 (*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3)))))
(+.f32 (*.f32 1/2 (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2))) (+.f32 (*.f32 u2 (PI.f32)) (+.f32 (*.f32 1/24 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))) (*.f32 1/6 (*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))))))
(-.f32 (exp.f32 (*.f32 u2 (PI.f32))) 1)
(-.f32 (exp.f32 (*.f32 u2 (PI.f32))) 1)
(-.f32 (exp.f32 (*.f32 u2 (PI.f32))) 1)
(-.f32 (exp.f32 (*.f32 u2 (PI.f32))) 1)
(-.f32 (exp.f32 (*.f32 u2 (PI.f32))) 1)
(-.f32 (exp.f32 (*.f32 u2 (PI.f32))) 1)
(-.f32 (exp.f32 (*.f32 u2 (PI.f32))) 1)
(-.f32 (exp.f32 (*.f32 u2 (PI.f32))) 1)
(*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(+.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (*.f32 1/2 (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) u1))))
(+.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (+.f32 (*.f32 1/2 (/.f32 (*.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1))))))) 2)) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (pow.f32 u1 2)))) (*.f32 1/2 (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) u1)))))
(+.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (+.f32 (*.f32 1/2 (/.f32 (*.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (-.f32 1/3 (*.f32 1/2 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1))))))) 2)) (pow.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) 2))))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (pow.f32 u1 3)))) (+.f32 (*.f32 1/2 (/.f32 (*.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1))))))) 2)) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (pow.f32 u1 2)))) (*.f32 1/2 (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) u1))))))
(*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))))
(+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (*.f32 (-.f32 1/2 (pow.f32 (*.f32 -1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) 2)) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (pow.f32 u1 2)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))))
(+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (*.f32 (+.f32 (*.f32 -1/2 (/.f32 (-.f32 1/2 (pow.f32 (*.f32 -1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) 2)) (log.f32 (/.f32 -1 u1)))) 1/3) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (pow.f32 u1 3)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (*.f32 (-.f32 1/2 (pow.f32 (*.f32 -1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) 2)) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (pow.f32 u1 2)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))))))
(sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))
(+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 2)))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 3) (*.f32 (+.f32 (*.f32 -1 (pow.f32 (PI.f32) 2)) (pow.f32 (PI.f32) 2)) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (PI.f32))))) (+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 2)))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))
(+.f32 (*.f32 (pow.f32 u2 4) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (+.f32 (*.f32 2/3 (pow.f32 (PI.f32) 4)) (+.f32 (*.f32 -1/2 (pow.f32 (+.f32 (*.f32 -1 (pow.f32 (PI.f32) 2)) (pow.f32 (PI.f32) 2)) 2)) (*.f32 -2/3 (*.f32 (+.f32 (pow.f32 (PI.f32) 3) (+.f32 (*.f32 2 (pow.f32 (PI.f32) 3)) (*.f32 -3 (pow.f32 (PI.f32) 3)))) (PI.f32))))))) (+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 3) (*.f32 (+.f32 (*.f32 -1 (pow.f32 (PI.f32) 2)) (pow.f32 (PI.f32) 2)) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (PI.f32))))) (+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 2)))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
Outputs
(*.f32 u2 (PI.f32))
(+.f32 (*.f32 1/2 (*.f32 (pow.f32 u2 2) (+.f32 (*.f32 -1 (pow.f32 (PI.f32) 2)) (pow.f32 (PI.f32) 2)))) (*.f32 u2 (PI.f32)))
(fma.f32 1/2 (*.f32 (*.f32 u2 u2) (*.f32 0 (pow.f32 (PI.f32) 2))) (*.f32 u2 (PI.f32)))
(fma.f32 u2 (PI.f32) (*.f32 (*.f32 u2 u2) 0))
(fma.f32 u2 (PI.f32) 0)
(+.f32 (*.f32 1/2 (*.f32 (pow.f32 u2 2) (+.f32 (*.f32 -1 (pow.f32 (PI.f32) 2)) (pow.f32 (PI.f32) 2)))) (+.f32 (*.f32 1/6 (*.f32 (pow.f32 u2 3) (+.f32 (*.f32 2 (pow.f32 (PI.f32) 3)) (+.f32 (pow.f32 (PI.f32) 3) (*.f32 -3 (pow.f32 (PI.f32) 3)))))) (*.f32 u2 (PI.f32))))
(fma.f32 1/2 (*.f32 (*.f32 u2 u2) (*.f32 0 (pow.f32 (PI.f32) 2))) (*.f32 u2 (PI.f32)))
(fma.f32 u2 (PI.f32) (*.f32 (*.f32 u2 u2) 0))
(fma.f32 u2 (PI.f32) 0)
(+.f32 (*.f32 1/2 (*.f32 (pow.f32 u2 2) (+.f32 (*.f32 -1 (pow.f32 (PI.f32) 2)) (pow.f32 (PI.f32) 2)))) (+.f32 (*.f32 1/6 (*.f32 (pow.f32 u2 3) (+.f32 (*.f32 2 (pow.f32 (PI.f32) 3)) (+.f32 (pow.f32 (PI.f32) 3) (*.f32 -3 (pow.f32 (PI.f32) 3)))))) (+.f32 (*.f32 1/24 (*.f32 (+.f32 (*.f32 12 (pow.f32 (PI.f32) 4)) (+.f32 (*.f32 -3 (pow.f32 (PI.f32) 4)) (+.f32 (*.f32 -4 (pow.f32 (PI.f32) 4)) (+.f32 (pow.f32 (PI.f32) 4) (*.f32 -6 (pow.f32 (PI.f32) 4)))))) (pow.f32 u2 4))) (*.f32 u2 (PI.f32)))))
(fma.f32 1/2 (*.f32 (*.f32 u2 u2) (*.f32 0 (pow.f32 (PI.f32) 2))) (fma.f32 1/6 (*.f32 (pow.f32 u2 3) (fma.f32 2 (pow.f32 (PI.f32) 3) (*.f32 -2 (pow.f32 (PI.f32) 3)))) (fma.f32 1/24 (*.f32 (fma.f32 12 (pow.f32 (PI.f32) 4) (fma.f32 -3 (pow.f32 (PI.f32) 4) (fma.f32 -4 (pow.f32 (PI.f32) 4) (*.f32 -5 (pow.f32 (PI.f32) 4))))) (pow.f32 u2 4)) (*.f32 u2 (PI.f32)))))
(+.f32 (*.f32 (*.f32 u2 u2) 0) (fma.f32 1/6 (*.f32 (pow.f32 u2 3) (*.f32 (pow.f32 (PI.f32) 3) 0)) (fma.f32 1/24 (*.f32 (+.f32 (*.f32 (pow.f32 (PI.f32) 4) -9) (*.f32 (pow.f32 (PI.f32) 4) 9)) (pow.f32 u2 4)) (*.f32 u2 (PI.f32)))))
(+.f32 0 (fma.f32 1/24 (*.f32 (*.f32 (pow.f32 (PI.f32) 4) 0) (pow.f32 u2 4)) (*.f32 u2 (PI.f32))))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(+.f32 (*.f32 1/2 (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2))) (*.f32 u2 (PI.f32)))
(fma.f32 1/2 (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2)) (*.f32 u2 (PI.f32)))
(fma.f32 u2 (PI.f32) (*.f32 1/2 (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2))))
(*.f32 (PI.f32) (+.f32 u2 (*.f32 (*.f32 1/2 (*.f32 u2 u2)) (PI.f32))))
(+.f32 (*.f32 1/2 (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2))) (+.f32 (*.f32 u2 (PI.f32)) (*.f32 1/6 (*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3)))))
(fma.f32 1/2 (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2)) (fma.f32 u2 (PI.f32) (*.f32 1/6 (*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3)))))
(fma.f32 1/2 (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2)) (fma.f32 u2 (PI.f32) (*.f32 (pow.f32 u2 3) (*.f32 (pow.f32 (PI.f32) 3) 1/6))))
(fma.f32 1/2 (*.f32 u2 (*.f32 u2 (pow.f32 (PI.f32) 2))) (fma.f32 u2 (PI.f32) (*.f32 (pow.f32 u2 3) (*.f32 (pow.f32 (PI.f32) 3) 1/6))))
(+.f32 (*.f32 1/2 (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2))) (+.f32 (*.f32 u2 (PI.f32)) (+.f32 (*.f32 1/24 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))) (*.f32 1/6 (*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))))))
(fma.f32 1/2 (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2)) (fma.f32 u2 (PI.f32) (fma.f32 1/24 (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 u2 4)) (*.f32 1/6 (*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))))))
(fma.f32 1/2 (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2)) (fma.f32 u2 (PI.f32) (fma.f32 1/24 (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 u2 4)) (*.f32 (pow.f32 u2 3) (*.f32 (pow.f32 (PI.f32) 3) 1/6)))))
(fma.f32 1/2 (*.f32 u2 (*.f32 u2 (pow.f32 (PI.f32) 2))) (fma.f32 u2 (PI.f32) (fma.f32 1/24 (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 u2 4)) (*.f32 (pow.f32 u2 3) (*.f32 (pow.f32 (PI.f32) 3) 1/6)))))
(-.f32 (exp.f32 (*.f32 u2 (PI.f32))) 1)
(expm1.f32 (*.f32 u2 (PI.f32)))
(-.f32 (exp.f32 (*.f32 u2 (PI.f32))) 1)
(expm1.f32 (*.f32 u2 (PI.f32)))
(-.f32 (exp.f32 (*.f32 u2 (PI.f32))) 1)
(expm1.f32 (*.f32 u2 (PI.f32)))
(-.f32 (exp.f32 (*.f32 u2 (PI.f32))) 1)
(expm1.f32 (*.f32 u2 (PI.f32)))
(-.f32 (exp.f32 (*.f32 u2 (PI.f32))) 1)
(expm1.f32 (*.f32 u2 (PI.f32)))
(-.f32 (exp.f32 (*.f32 u2 (PI.f32))) 1)
(expm1.f32 (*.f32 u2 (PI.f32)))
(-.f32 (exp.f32 (*.f32 u2 (PI.f32))) 1)
(expm1.f32 (*.f32 u2 (PI.f32)))
(-.f32 (exp.f32 (*.f32 u2 (PI.f32))) 1)
(expm1.f32 (*.f32 u2 (PI.f32)))
(*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)))
(*.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1))) (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))))
(*.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))))
(+.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (*.f32 1/2 (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) u1))))
(fma.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (*.f32 1/2 (/.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (*.f32 u1 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1))))))))))
(fma.f32 1/2 (/.f32 (/.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1)))) u1) (*.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1))) (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2)))))
(fma.f32 1/2 (/.f32 (/.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) u1) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) (*.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2)))))
(+.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (+.f32 (*.f32 1/2 (/.f32 (*.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1))))))) 2)) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (pow.f32 u1 2)))) (*.f32 1/2 (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) u1)))))
(fma.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (*.f32 1/2 (+.f32 (*.f32 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1))))))) 2)) (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1))))))) (/.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (*.f32 u1 u1))) (/.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (*.f32 u1 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))))))))
(fma.f32 1/2 (fma.f32 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1)))) 2)) (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1)))) (/.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (*.f32 u1 u1)) (/.f32 (/.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1)))) u1)) (*.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1))) (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2)))))
(fma.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (*.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) (+.f32 (/.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) u1) (*.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) 2)) (/.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (*.f32 u1 u1))))))
(+.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (+.f32 (*.f32 1/2 (/.f32 (*.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (-.f32 1/3 (*.f32 1/2 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1))))))) 2)) (pow.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) 2))))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (pow.f32 u1 3)))) (+.f32 (*.f32 1/2 (/.f32 (*.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1))))))) 2)) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (pow.f32 u1 2)))) (*.f32 1/2 (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) u1))))))
(fma.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (fma.f32 1/2 (*.f32 (/.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1))))))) (/.f32 (+.f32 1/3 (*.f32 -1/2 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1))))))) 2)) (pow.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) 2)))) (pow.f32 u1 3))) (*.f32 1/2 (+.f32 (*.f32 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1))))))) 2)) (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1))))))) (/.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (*.f32 u1 u1))) (/.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (*.f32 u1 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1))))))))))))
(fma.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1))) (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (*.f32 1/2 (+.f32 (fma.f32 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1)))) 2)) (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1)))) (/.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (*.f32 u1 u1)) (/.f32 (/.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1)))) u1)) (*.f32 (/.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1)))) (/.f32 (+.f32 1/3 (*.f32 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1)))) 2)) (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1))) -1/2)) (pow.f32 u1 3))))))
(fma.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (*.f32 1/2 (+.f32 (*.f32 (/.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) (+.f32 (/.f32 (-.f32 1/3 (*.f32 (/.f32 -1/2 (+.f32 (log.f32 -1) (log.f32 u1))) (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) 2)))) (pow.f32 u1 3)) (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) 2)) (*.f32 u1 u1)))) (/.f32 (/.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) u1) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))))))
(*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (log.f32 (/.f32 -1 u1))))
(*.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (sqrt.f32 (log.f32 (/.f32 -1 u1))))
(+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))))
(fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) u1)) (*.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (log.f32 (/.f32 -1 u1)))))
(fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) u1)) (*.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (sqrt.f32 (log.f32 (/.f32 -1 u1)))))
(+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (*.f32 (-.f32 1/2 (pow.f32 (*.f32 -1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) 2)) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (pow.f32 u1 2)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))))
(fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (-.f32 1/2 (pow.f32 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) -1/2) 2)) (/.f32 (*.f32 u1 u1) (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2))))) (fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) u1)) (*.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (log.f32 (/.f32 -1 u1))))))
(+.f32 (*.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (sqrt.f32 (log.f32 (/.f32 -1 u1)))) (*.f32 (*.f32 1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) (+.f32 (*.f32 (/.f32 (-.f32 1/2 (pow.f32 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) -1/2) 2)) (*.f32 u1 u1)) (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2)))) (/.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) u1))))
(+.f32 (*.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (sqrt.f32 (log.f32 (/.f32 -1 u1)))) (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (*.f32 (+.f32 (/.f32 (+.f32 1/2 (*.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))) -1/4)) u1) 1) (/.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) u1)))))
(+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (*.f32 (+.f32 (*.f32 -1/2 (/.f32 (-.f32 1/2 (pow.f32 (*.f32 -1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) 2)) (log.f32 (/.f32 -1 u1)))) 1/3) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (pow.f32 u1 3)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (*.f32 (-.f32 1/2 (pow.f32 (*.f32 -1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) 2)) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (pow.f32 u1 2)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))))))
(fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (fma.f32 -1/2 (/.f32 (-.f32 1/2 (pow.f32 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) -1/2) 2)) (log.f32 (/.f32 -1 u1))) 1/3) (/.f32 (pow.f32 u1 3) (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2))))) (fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (-.f32 1/2 (pow.f32 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) -1/2) 2)) (/.f32 (*.f32 u1 u1) (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2))))) (fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) u1)) (*.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (log.f32 (/.f32 -1 u1)))))))
(fma.f32 (*.f32 1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) (*.f32 (/.f32 (fma.f32 -1/2 (/.f32 (-.f32 1/2 (pow.f32 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) -1/2) 2)) (log.f32 (/.f32 -1 u1))) 1/3) (pow.f32 u1 3)) (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2)))) (+.f32 (*.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (sqrt.f32 (log.f32 (/.f32 -1 u1)))) (*.f32 (*.f32 1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) (+.f32 (*.f32 (/.f32 (-.f32 1/2 (pow.f32 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) -1/2) 2)) (*.f32 u1 u1)) (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2)))) (/.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) u1)))))
(+.f32 (*.f32 (*.f32 1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) (+.f32 (*.f32 (/.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (pow.f32 u1 3)) (fma.f32 -1/2 (/.f32 (+.f32 1/2 (*.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))) -1/4)) (log.f32 (/.f32 -1 u1))) 1/3)) (*.f32 (+.f32 (/.f32 (+.f32 1/2 (*.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))) -1/4)) u1) 1) (/.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) u1)))) (*.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (sqrt.f32 (log.f32 (/.f32 -1 u1)))))
(sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))
(sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))
(+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 2)))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(fma.f32 -2 (*.f32 (*.f32 u2 u2) (*.f32 (pow.f32 (PI.f32) 2) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(fma.f32 -2 (*.f32 u2 (*.f32 u2 (*.f32 (pow.f32 (PI.f32) 2) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (+.f32 (*.f32 (*.f32 (*.f32 u2 u2) -2) (pow.f32 (PI.f32) 2)) 1) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 3) (*.f32 (+.f32 (*.f32 -1 (pow.f32 (PI.f32) 2)) (pow.f32 (PI.f32) 2)) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (PI.f32))))) (+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 2)))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))
(fma.f32 -2 (*.f32 (pow.f32 u2 3) (*.f32 (*.f32 0 (pow.f32 (PI.f32) 2)) (*.f32 (PI.f32) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (fma.f32 -2 (*.f32 (*.f32 u2 u2) (*.f32 (pow.f32 (PI.f32) 2) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))
(fma.f32 -2 (*.f32 (*.f32 (*.f32 0 (pow.f32 u2 3)) (PI.f32)) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))) (fma.f32 -2 (*.f32 u2 (*.f32 u2 (*.f32 (pow.f32 (PI.f32) 2) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))))
(+.f32 0 (*.f32 (+.f32 (*.f32 (*.f32 (*.f32 u2 u2) -2) (pow.f32 (PI.f32) 2)) 1) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))))
(+.f32 (*.f32 (pow.f32 u2 4) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (+.f32 (*.f32 2/3 (pow.f32 (PI.f32) 4)) (+.f32 (*.f32 -1/2 (pow.f32 (+.f32 (*.f32 -1 (pow.f32 (PI.f32) 2)) (pow.f32 (PI.f32) 2)) 2)) (*.f32 -2/3 (*.f32 (+.f32 (pow.f32 (PI.f32) 3) (+.f32 (*.f32 2 (pow.f32 (PI.f32) 3)) (*.f32 -3 (pow.f32 (PI.f32) 3)))) (PI.f32))))))) (+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 3) (*.f32 (+.f32 (*.f32 -1 (pow.f32 (PI.f32) 2)) (pow.f32 (PI.f32) 2)) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (PI.f32))))) (+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 2)))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))))
(fma.f32 (pow.f32 u2 4) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (fma.f32 2/3 (pow.f32 (PI.f32) 4) (fma.f32 -1/2 (pow.f32 (*.f32 0 (pow.f32 (PI.f32) 2)) 2) (*.f32 -2/3 (*.f32 (PI.f32) (+.f32 (pow.f32 (PI.f32) 3) (*.f32 (pow.f32 (PI.f32) 3) -1))))))) (fma.f32 -2 (*.f32 (pow.f32 u2 3) (*.f32 (*.f32 0 (pow.f32 (PI.f32) 2)) (*.f32 (PI.f32) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (fma.f32 -2 (*.f32 (*.f32 u2 u2) (*.f32 (pow.f32 (PI.f32) 2) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))))
(fma.f32 (pow.f32 u2 4) (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (fma.f32 (pow.f32 (PI.f32) 4) 2/3 (fma.f32 -2/3 (*.f32 (PI.f32) (*.f32 (pow.f32 (PI.f32) 3) 0)) 0))) (fma.f32 -2 (*.f32 (*.f32 (*.f32 0 (pow.f32 u2 3)) (PI.f32)) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))) (fma.f32 -2 (*.f32 u2 (*.f32 u2 (*.f32 (pow.f32 (PI.f32) 2) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))))
(+.f32 (*.f32 (+.f32 (*.f32 (*.f32 (*.f32 u2 u2) -2) (pow.f32 (PI.f32) 2)) 1) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))) (fma.f32 (pow.f32 u2 4) (*.f32 (pow.f32 (PI.f32) 4) (*.f32 2/3 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))) 0))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))

prune302.0ms (6.4%)

Pruning

13 alts after pruning (11 fresh and 2 done)

PrunedKeptTotal
New1281129
Fresh11011
Picked011
Done011
Total12913142
Error
0.1b
Counts
142 → 13
Alt Table
StatusErrorProgram
8.2b
(*.f32 (*.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (log1p.f32 u1)) 2)) (sqrt.f32 (cbrt.f32 (log1p.f32 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
1.2b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (pow.f32 (sqrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) 2))
2.0b
(+.f32 (*.f32 (fma.f32 -4/45 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6)) 1) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))) (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (fma.f32 (pow.f32 u2 4) (*.f32 2/3 (pow.f32 (PI.f32) 4)) (*.f32 (pow.f32 (PI.f32) 2) (*.f32 u2 (*.f32 u2 -2))))))
0.5b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.f32 (fma.f32 (*.f32 (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2))) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1))) (fma.f32 (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) 1 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1))))
0.3b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (cbrt.f32 (*.f32 (pow.f32 u2 3) (*.f32 (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 (cbrt.f32 (PI.f32)) 2)) (cbrt.f32 (PI.f32))))))))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (log.f32 (+.f32 1 (expm1.f32 (*.f32 (PI.f32) u2)))))))
0.5b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.f32 (fma.f32 (*.f32 (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2))) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (fma.f32 (neg.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))))
8.9b
(sqrt.f32 (*.f32 (log1p.f32 u1) (pow.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) 2)))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.f32 (fma.f32 1 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (neg.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (fma.f32 (neg.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))))
0.8b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (log.f32 (exp.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))))))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.f32 (fma.f32 1 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (fma.f32 (neg.f32 (sin.f32 (*.f32 (PI.f32) u2))) (sin.f32 (*.f32 (PI.f32) u2)) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))))
0.6b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (+.f32 (cos.f32 (*.f32 (PI.f32) u2)) (sin.f32 (*.f32 (PI.f32) u2))) (-.f32 (cos.f32 (*.f32 (PI.f32) u2)) (sin.f32 (*.f32 (PI.f32) u2)))))
0.5b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (pow.f32 (cbrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) 2) (cbrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))))
Compiler

Compiled 3700 to 2314 computations (37.5% saved)

regimes139.0ms (3%)

Accuracy

Total -18.7b remaining (-5428.2%)

Threshold costs -18.7b (-5428.2%)

Counts
25 → 1
Calls
Call 1
Inputs
(sqrt.f32 (*.f32 (log1p.f32 u1) (pow.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) 2)))
(+.f32 (*.f32 (fma.f32 -4/45 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6)) 1) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))) (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (fma.f32 (pow.f32 u2 4) (*.f32 2/3 (pow.f32 (PI.f32) 4)) (*.f32 (pow.f32 (PI.f32) 2) (*.f32 u2 (*.f32 u2 -2))))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.f32 (fma.f32 (*.f32 (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2))) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1))) (fma.f32 (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) 1 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (cbrt.f32 (*.f32 (pow.f32 u2 3) (*.f32 (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 (cbrt.f32 (PI.f32)) 2)) (cbrt.f32 (PI.f32))))))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.f32 (fma.f32 (*.f32 (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2))) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (fma.f32 (neg.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (log.f32 (exp.f32 (cos.f32 (*.f32 u2 (*.f32 (PI.f32) 2))))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.f32 (fma.f32 1 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (fma.f32 (neg.f32 (sin.f32 (*.f32 (PI.f32) u2))) (sin.f32 (*.f32 (PI.f32) u2)) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (+.f32 (cos.f32 (*.f32 (PI.f32) u2)) (sin.f32 (*.f32 (PI.f32) u2))) (-.f32 (cos.f32 (*.f32 (PI.f32) u2)) (sin.f32 (*.f32 (PI.f32) u2)))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.f32 (fma.f32 1 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (neg.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (fma.f32 (neg.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))))
(sqrt.f32 (*.f32 (log1p.f32 u1) (pow.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 2)))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (log.f32 (exp.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))))
(*.f32 (*.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (log1p.f32 u1)) 2)) (sqrt.f32 (cbrt.f32 (log1p.f32 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (pow.f32 (sqrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) 2))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.f32 (fma.f32 (*.f32 (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2))) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1))) (fma.f32 (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) 1 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (-.f32 (exp.f32 (log1p.f32 (*.f32 (PI.f32) u2))) 1))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (pow.f32 (cbrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) 2) (cbrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.f32 (fma.f32 1 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (fma.f32 (neg.f32 (sin.f32 (*.f32 (PI.f32) u2))) (sin.f32 (*.f32 (PI.f32) u2)) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (log.f32 (pow.f32 (exp.f32 u2) (PI.f32))))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (cbrt.f32 (*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.f32 (fma.f32 (*.f32 (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2))) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (fma.f32 (neg.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (+.f32 (cos.f32 (*.f32 (PI.f32) u2)) (sin.f32 (*.f32 (PI.f32) u2))) (-.f32 (cos.f32 (*.f32 (PI.f32) u2)) (sin.f32 (*.f32 (PI.f32) u2)))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.f32 (fma.f32 1 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (neg.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (fma.f32 (neg.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (log.f32 (+.f32 1 (expm1.f32 (*.f32 (PI.f32) u2)))))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
Outputs
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (cbrt.f32 (*.f32 (pow.f32 u2 3) (*.f32 (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 (cbrt.f32 (PI.f32)) 2)) (cbrt.f32 (PI.f32))))))))
Results
10.0ms0.3bcosTheta_i
11.0ms0.3bu1
11.0ms0.3bu2
9.0ms0.3b(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
7.0ms0.3b(sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))
7.0ms0.3b(neg.f32 (log.f32 (-.f32 1 u1)))
11.0ms0.3b(log.f32 (-.f32 1 u1))
10.0ms0.3b(-.f32 1 u1)
9.0ms0.3b(cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))
8.0ms0.3b(cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))
11.0ms0.3b(*.f32 (*.f32 2 (PI.f32)) u2)
12.0ms0.3b(*.f32 (*.f32 2 (PI.f32)) u2)
Compiler

Compiled 969 to 500 computations (48.4% saved)

simplify3.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
02144
13244
23644
33844
Stop Event
saturated
Calls
Call 1
Inputs
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (cbrt.f32 (*.f32 (pow.f32 u2 3) (*.f32 (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 (cbrt.f32 (PI.f32)) 2)) (cbrt.f32 (PI.f32))))))))
Outputs
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (cbrt.f32 (*.f32 (pow.f32 u2 3) (*.f32 (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 (cbrt.f32 (PI.f32)) 2)) (cbrt.f32 (PI.f32))))))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (cbrt.f32 (*.f32 (pow.f32 u2 3) (*.f32 (cbrt.f32 (PI.f32)) (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 (cbrt.f32 (PI.f32)) 2))))))))

end21.0ms (0.4%)

Stop Event
fuel
Compiler

Compiled 56 to 46 computations (17.9% saved)

Profiling

Loading profile data...