Details

Time bar (total: 5.5s)

analyze408.0ms (7.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 (40.7%)

Results
2.2s8256×body128valid
1.0msbody128invalid
Compiler

Compiled 78 to 62 computations (20.5% saved)

preprocess39.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)

simplify14.0ms (0.2%)

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))))

prune4.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
0.3b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
13.6b
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
Compiler

Compiled 90 to 77 computations (14.4% saved)

localize33.0ms (0.6%)

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.2b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
0.3b
(*.f32 (PI.f32) u2)

series41.0ms (0.7%)

Counts
4 → 32
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
@0
(*.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
@inf
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
2.0ms
u2
@0
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))

rewrite56.0ms (1%)

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 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 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 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 (0.8%)

Algorithm
egg-herbie
Rules
659×fma-def_binary32
543×associate-*l*_binary32
400×times-frac_binary32
334×associate-/r*_binary32
309×associate-/l*_binary32
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01441797
14371598
213981439
Stop Event
node limit
Counts
128 → 144
Calls
Call 1
Inputs
(*.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 (*.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 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 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 (*.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 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 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 (*.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 (*.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 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) (*.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)))) (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 3)))))))
(*.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 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 (*.f32 1/2 (*.f32 (/.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)) (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 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 (pow.f32 (PI.f32) 2) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (pow.f32 (PI.f32) 2) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (*.f32 (pow.f32 (PI.f32) 4) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))
(+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (pow.f32 (PI.f32) 2) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (*.f32 (pow.f32 (PI.f32) 4) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (+.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (*.f32 -4/45 (*.f32 (pow.f32 u2 6) (*.f32 (pow.f32 (PI.f32) 6) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 (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 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 (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 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 (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 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
1
(+.f32 1 (*.f32 -2 (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2))))
(+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))) (+.f32 1 (*.f32 -2 (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2)))))
(+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))) (+.f32 (*.f32 -4/45 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6))) (+.f32 1 (*.f32 -2 (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2))))))
(sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.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))) (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.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 (*.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 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.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 (*.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 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (*.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)))))))
(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 (*.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 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 1 u1)))))
(+.f32 (*.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 (*.f32 1/2 (*.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) (pow.f32 u1 3)) (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))))) (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 1 u1))))))
Outputs
(*.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 (cos.f32 (*.f32 (*.f32 2 u2) (PI.f32))) (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))))
(*.f32 (cos.f32 (*.f32 u2 (*.f32 2 (PI.f32)))) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))))
(*.f32 (cos.f32 (*.f32 u2 (*.f32 2 (PI.f32)))) (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1))))
(+.f32 (*.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 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 (cos.f32 (*.f32 (*.f32 2 u2) (PI.f32))) (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) (*.f32 1/2 (/.f32 (cos.f32 (*.f32 (*.f32 2 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 u2 (*.f32 2 (PI.f32)))) u1) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) (*.f32 (cos.f32 (*.f32 u2 (*.f32 2 (PI.f32)))) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))))
(fma.f32 (cos.f32 (*.f32 u2 (*.f32 2 (PI.f32)))) (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1))) (*.f32 (/.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1)))) u1) (cos.f32 (*.f32 u2 (*.f32 2 (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 (*.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 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 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 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) (*.f32 u1 u1)) (cos.f32 (*.f32 (*.f32 2 u2) (PI.f32))))) (fma.f32 (cos.f32 (*.f32 (*.f32 2 u2) (PI.f32))) (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) (*.f32 1/2 (/.f32 (cos.f32 (*.f32 (*.f32 2 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 u2 (*.f32 2 (PI.f32)))) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) 2)) (*.f32 u1 u1))) (fma.f32 1/2 (/.f32 (/.f32 (cos.f32 (*.f32 u2 (*.f32 2 (PI.f32)))) u1) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) (*.f32 (cos.f32 (*.f32 u2 (*.f32 2 (PI.f32)))) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))))))
(fma.f32 (cos.f32 (*.f32 u2 (*.f32 2 (PI.f32)))) (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1))) (*.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1)))) (+.f32 (/.f32 (cos.f32 (*.f32 u2 (*.f32 2 (PI.f32)))) u1) (*.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1)))) 2)) (/.f32 (cos.f32 (*.f32 u2 (*.f32 2 (PI.f32)))) (*.f32 u1 u1))))))
(+.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 (*.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 (*.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 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) (*.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)))) (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 3)))))))
(fma.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 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) (*.f32 u1 u1)) (cos.f32 (*.f32 (*.f32 2 u2) (PI.f32))))) (fma.f32 (cos.f32 (*.f32 (*.f32 2 u2) (PI.f32))) (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) (*.f32 1/2 (+.f32 (/.f32 (cos.f32 (*.f32 (*.f32 2 u2) (PI.f32))) (*.f32 u1 (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)))) (/.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) (pow.f32 u1 3)) (cos.f32 (*.f32 (*.f32 2 u2) (PI.f32)))))))))
(fma.f32 1/2 (*.f32 (/.f32 (cos.f32 (*.f32 u2 (*.f32 2 (PI.f32)))) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) 2)) (*.f32 u1 u1))) (fma.f32 1/2 (+.f32 (/.f32 (/.f32 (cos.f32 (*.f32 u2 (*.f32 2 (PI.f32)))) u1) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) (*.f32 (/.f32 (+.f32 1/3 (/.f32 (*.f32 -1/2 (-.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)))) (*.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (pow.f32 u1 3))) (cos.f32 (*.f32 u2 (*.f32 2 (PI.f32)))))) (*.f32 (cos.f32 (*.f32 u2 (*.f32 2 (PI.f32)))) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))))))
(fma.f32 1/2 (*.f32 (/.f32 (cos.f32 (*.f32 u2 (*.f32 2 (PI.f32)))) u1) (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1)))) 2)) (*.f32 u1 (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1)))))) (fma.f32 (cos.f32 (*.f32 u2 (*.f32 2 (PI.f32)))) (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1))) (*.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1)))) (+.f32 (/.f32 (cos.f32 (*.f32 u2 (*.f32 2 (PI.f32)))) u1) (*.f32 (+.f32 1/3 (*.f32 1/2 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1)))) 2)) (+.f32 (log.f32 -1) (log.f32 u1))))) (/.f32 (cos.f32 (*.f32 u2 (*.f32 2 (PI.f32)))) (pow.f32 u1 3)))))))
(*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (cos.f32 (*.f32 (*.f32 2 u2) (PI.f32))) (sqrt.f32 (log.f32 (/.f32 -1 u1))))
(*.f32 (cos.f32 (*.f32 u2 (*.f32 2 (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 (*.f32 2 u2) (PI.f32))) u1)) (*.f32 (cos.f32 (*.f32 (*.f32 2 u2) (PI.f32))) (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 2 (PI.f32)))) u1)) (*.f32 (cos.f32 (*.f32 u2 (*.f32 2 (PI.f32)))) (sqrt.f32 (log.f32 (/.f32 -1 u1)))))
(fma.f32 (cos.f32 (*.f32 u2 (*.f32 2 (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 u2 (*.f32 2 (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 (*.f32 2 u2) (PI.f32)))))) (fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 (*.f32 2 u2) (PI.f32))) u1)) (*.f32 (cos.f32 (*.f32 (*.f32 2 u2) (PI.f32))) (sqrt.f32 (log.f32 (/.f32 -1 u1))))))
(+.f32 (*.f32 (cos.f32 (*.f32 u2 (*.f32 2 (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 u2 (*.f32 2 (PI.f32)))) (/.f32 (*.f32 u1 u1) (-.f32 1/2 (pow.f32 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) -1/2) 2)))) (/.f32 (cos.f32 (*.f32 u2 (*.f32 2 (PI.f32)))) u1))))
(fma.f32 (cos.f32 (*.f32 u2 (*.f32 2 (PI.f32)))) (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 2 (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 (*.f32 1/2 (*.f32 (/.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)) (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 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 2 u2) (PI.f32)))))) (fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 (*.f32 2 u2) (PI.f32))) u1)) (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 2 u2) (PI.f32)))))) (*.f32 (cos.f32 (*.f32 (*.f32 2 u2) (PI.f32))) (sqrt.f32 (log.f32 (/.f32 -1 u1)))))))
(+.f32 (fma.f32 (cos.f32 (*.f32 u2 (*.f32 2 (PI.f32)))) (sqrt.f32 (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 u2 (*.f32 2 (PI.f32)))))) (*.f32 1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))))) (*.f32 (*.f32 1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) (+.f32 (/.f32 (cos.f32 (*.f32 u2 (*.f32 2 (PI.f32)))) (/.f32 (*.f32 u1 u1) (-.f32 1/2 (pow.f32 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) -1/2) 2)))) (/.f32 (cos.f32 (*.f32 u2 (*.f32 2 (PI.f32)))) u1))))
(+.f32 (*.f32 (*.f32 1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) (+.f32 (*.f32 (+.f32 (/.f32 (+.f32 1/2 (*.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))) -1/4)) u1) 1) (/.f32 (cos.f32 (*.f32 u2 (*.f32 2 (PI.f32)))) u1)) (*.f32 (/.f32 (cos.f32 (*.f32 u2 (*.f32 2 (PI.f32)))) (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 (cos.f32 (*.f32 u2 (*.f32 2 (PI.f32)))) (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 (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 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 (*.f32 u2 u2) (pow.f32 (PI.f32) 2)) 1) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (pow.f32 (PI.f32) 2) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (*.f32 (pow.f32 (PI.f32) 4) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (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))) (fma.f32 2/3 (*.f32 (pow.f32 u2 4) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 4))) (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))) (fma.f32 2/3 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))) (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 -2 (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2)) (*.f32 2/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))))))
(+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (pow.f32 (PI.f32) 2) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (*.f32 (pow.f32 (PI.f32) 4) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (+.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (*.f32 -4/45 (*.f32 (pow.f32 u2 6) (*.f32 (pow.f32 (PI.f32) 6) (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))) (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 (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 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2))) (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 -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/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4)) 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 (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2))))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(*.f32 (cos.f32 (*.f32 (*.f32 2 u2) (PI.f32))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 u2 (*.f32 2 (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 (PI.f32) u2))))
(*.f32 (cos.f32 (*.f32 (*.f32 2 u2) (PI.f32))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 u2 (*.f32 2 (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 (PI.f32) u2))))
(*.f32 (cos.f32 (*.f32 (*.f32 2 u2) (PI.f32))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 u2 (*.f32 2 (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 (PI.f32) u2))))
(*.f32 (cos.f32 (*.f32 (*.f32 2 u2) (PI.f32))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 u2 (*.f32 2 (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 (PI.f32) u2))))
(*.f32 (cos.f32 (*.f32 (*.f32 2 u2) (PI.f32))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 u2 (*.f32 2 (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 (PI.f32) u2))))
(*.f32 (cos.f32 (*.f32 (*.f32 2 u2) (PI.f32))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 u2 (*.f32 2 (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 (PI.f32) u2))))
(*.f32 (cos.f32 (*.f32 (*.f32 2 u2) (PI.f32))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 u2 (*.f32 2 (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 (PI.f32) u2))))
(*.f32 (cos.f32 (*.f32 (*.f32 2 u2) (PI.f32))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 u2 (*.f32 2 (PI.f32)))) (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 -2 (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2))))
(fma.f32 -2 (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2)) 1)
(+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))) (+.f32 1 (*.f32 -2 (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2)))))
(fma.f32 2/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4)) (+.f32 1 (*.f32 -2 (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2)))))
(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)) 1))
(+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))) (+.f32 (*.f32 -4/45 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6))) (+.f32 1 (*.f32 -2 (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2))))))
(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 1 (*.f32 -2 (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2))))))
(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)) (fma.f32 -2 (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2)) 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)) (fma.f32 -4/45 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6)) 1)))
(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)))
(sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1)))
(+.f32 (*.f32 1/2 (/.f32 1 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) u1))) (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 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 u1) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))))
(+.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1))) (/.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 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 (*.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 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1))))))))
(+.f32 (/.f32 1/2 (*.f32 u1 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))))) (fma.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))) (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1))))))))
(+.f32 (/.f32 (/.f32 1/2 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))) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))))
(+.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1))) (fma.f32 1/2 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1)))) 2)) (*.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1))) (*.f32 u1 u1))) (/.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 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 (*.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 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (*.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 (/.f32 1/2 (*.f32 u1 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))))) (+.f32 (fma.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))) (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1))))))) (*.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) (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 (/.f32 1/2 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))) (fma.f32 1/2 (/.f32 (+.f32 1/3 (/.f32 (*.f32 -1/2 (-.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)))) (*.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 (/.f32 (/.f32 1/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))) (*.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1)))) (+.f32 (/.f32 (+.f32 1/3 (*.f32 1/2 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1)))) 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 -1)) (log.f32 u1)))) 2)) (*.f32 u1 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))))
(fma.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 1/2 u1) (sqrt.f32 (log.f32 (/.f32 -1 u1))))
(+.f32 (*.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 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 1 u1)))))
(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 u1 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)))) (/.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)))) u1) (sqrt.f32 (log.f32 (/.f32 -1 u1)))))
(+.f32 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (+.f32 (*.f32 1/2 (/.f32 (+.f32 1/2 (*.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))) -1/4)) (*.f32 u1 u1))) (/.f32 1/2 u1))) (sqrt.f32 (log.f32 (/.f32 -1 u1))))
(+.f32 (*.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 (*.f32 1/2 (*.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) (pow.f32 u1 3)) (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))))) (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 1 u1))))))
(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 u1 u1))) (+.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (*.f32 1/2 (+.f32 (*.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 (/.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)))) (/.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 (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 1 u1))) (sqrt.f32 (log.f32 (/.f32 -1 u1)))))
(fma.f32 1/2 (*.f32 (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 1 u1))) (fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.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)))))

prune194.0ms (3.5%)

Pruning

11 alts after pruning (11 fresh and 0 done)

PrunedKeptTotal
New13311144
Fresh101
Picked101
Done000
Total13511146
Error
0.1b
Counts
146 → 11
Alt Table
StatusErrorProgram
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (expm1.f32 (log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.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)))))))
0.8b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (log.f32 (exp.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))))
0.4b
(*.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 (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.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (pow.f32 (cbrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) 3))
0.3b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (cbrt.f32 (*.f32 (pow.f32 (PI.f32) 3) (pow.f32 u2 3))))))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (/.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))))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (pow.f32 (cbrt.f32 (*.f32 (PI.f32) u2)) 3))))
0.5b
(*.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)))))
8.3b
(cbrt.f32 (*.f32 (pow.f32 (log1p.f32 u1) 3/2) (pow.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 3)))
2.0b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (pow.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 3) 1/3))
Compiler

Compiled 4907 to 3074 computations (37.4% saved)

localize45.0ms (0.8%)

Local error

Found 4 expressions with local error:

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

series11.0ms (0.2%)

Counts
4 → 32
Calls

12 calls:

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

rewrite55.0ms (1%)

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
01739
136035
2408835
Stop Event
node limit
Counts
4 → 79
Calls
Call 1
Inputs
(pow.f32 (PI.f32) 3)
(*.f32 (pow.f32 (PI.f32) 3) (pow.f32 u2 3))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (cbrt.f32 (*.f32 (pow.f32 (PI.f32) 3) (pow.f32 u2 3))))))
(cbrt.f32 (*.f32 (pow.f32 (PI.f32) 3) (pow.f32 u2 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 (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 (sqrt.f32 (log1p.f32 u1))) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))))))) (#(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 (exp.f32 (log1p.f32 (*.f32 (PI.f32) u2))) 1)))) (#(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 1 (*.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 (PI.f32)) 2) (*.f32 (cbrt.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 (PI.f32)) (*.f32 (sqrt.f32 (PI.f32)) u2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 1 1/3) (*.f32 (PI.f32) u2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (pow.f32 (*.f32 (PI.f32) u2) 2) 1/3) (cbrt.f32 (*.f32 (PI.f32) u2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (pow.f32 (*.f32 (PI.f32) u2) 3/2) 1/3) (pow.f32 (pow.f32 (*.f32 (PI.f32) u2) 3/2) 1/3))))) (#(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 pow.f32 (pow.f32 (*.f32 (PI.f32) u2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (PI.f32) u2) 1)))) (#(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 (PI.f32)) u2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 (PI.f32) u2))))))) (#(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 (*.f32 3 (log.f32 (*.f32 (PI.f32) u2))) 1/3))))) (#(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)))))))

simplify52.0ms (0.9%)

Algorithm
egg-herbie
Rules
409×associate-*l*_binary32
400×fma-def_binary32
380×associate-*r*_binary32
247×times-frac_binary32
207×associate-/l*_binary32
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01131254
13301144
210621025
346431025
Stop Event
node limit
Counts
111 → 109
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 (PI.f32) u2))))
(+.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))) (*.f32 1/2 (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (*.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 (PI.f32) u2)))) (+.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 (PI.f32) u2)))) (*.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 (PI.f32) u2))) (*.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 (PI.f32) u2)))) (+.f32 (*.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) (*.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)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))) (*.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 (PI.f32) u2)))) (*.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 (PI.f32) u2))) (*.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 (PI.f32) u2))))
(+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))))
(+.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 (PI.f32) u2)))) (pow.f32 u1 2)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))))
(+.f32 (*.f32 1/2 (*.f32 (/.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 (PI.f32) u2)))) (pow.f32 u1 3)) (sqrt.f32 (/.f32 1 (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 (PI.f32) u2)))) (pow.f32 u1 2)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))))))
(sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))
(+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (pow.f32 (PI.f32) 2) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (pow.f32 (PI.f32) 2) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (*.f32 (pow.f32 (PI.f32) 4) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))
(+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (pow.f32 (PI.f32) 2) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (*.f32 (pow.f32 (PI.f32) 4) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (+.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (*.f32 -4/45 (*.f32 (pow.f32 u2 6) (*.f32 (pow.f32 (PI.f32) 6) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 (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 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(*.f32 (cos.f32 (*.f32 -2 (*.f32 (PI.f32) (*.f32 u2 (cbrt.f32 -1))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 -2 (*.f32 (PI.f32) (*.f32 u2 (cbrt.f32 -1))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 -2 (*.f32 (PI.f32) (*.f32 u2 (cbrt.f32 -1))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 -2 (*.f32 (PI.f32) (*.f32 u2 (cbrt.f32 -1))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (PI.f32) u2)
(*.f32 (PI.f32) u2)
(*.f32 (PI.f32) u2)
(*.f32 (PI.f32) u2)
(*.f32 (PI.f32) u2)
(*.f32 (PI.f32) u2)
(*.f32 (PI.f32) u2)
(*.f32 (PI.f32) u2)
(*.f32 -1 (*.f32 u2 (*.f32 (PI.f32) (cbrt.f32 -1))))
(*.f32 -1 (*.f32 u2 (*.f32 (PI.f32) (cbrt.f32 -1))))
(*.f32 -1 (*.f32 u2 (*.f32 (PI.f32) (cbrt.f32 -1))))
(*.f32 -1 (*.f32 u2 (*.f32 (PI.f32) (cbrt.f32 -1))))
Outputs
(*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(*.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(+.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))) (*.f32 1/2 (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (*.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 (PI.f32) u2))) (/.f32 (*.f32 1/2 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))) (*.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 (PI.f32) u2))) (*.f32 1/2 (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (*.f32 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 2 (*.f32 (PI.f32) u2))) (/.f32 (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (/.f32 u1 1/2)) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))))
(+.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))) (+.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 (PI.f32) u2)))) (*.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 (PI.f32) u2))) (*.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 (PI.f32) u2))) (*.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 (PI.f32) u2))))) (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (*.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 (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 2 (*.f32 (PI.f32) u2))) (*.f32 u1 u1)) (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (*.f32 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 2 (*.f32 (PI.f32) u2))) (*.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) (+.f32 (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) 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 (PI.f32) u2))) (*.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 (PI.f32) u2)))) (+.f32 (*.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) (*.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)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))) (*.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 (PI.f32) u2)))) (*.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 (PI.f32) u2))) (*.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 (PI.f32) u2))) (fma.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)))) (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1))))))) (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (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 (PI.f32) u2))))) (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (*.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 (PI.f32) u2))) (*.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 (PI.f32) u2))) (*.f32 u1 u1)) (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (*.f32 u1 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))))) (/.f32 (-.f32 1/3 (/.f32 1/2 (/.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)) (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) 2))))) (/.f32 (*.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (pow.f32 u1 3)) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))))))
(fma.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (*.f32 1/2 (+.f32 (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (*.f32 u1 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))))) (*.f32 (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (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 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(*.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (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 (PI.f32) u2))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))))
(fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) u1)) (*.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (sqrt.f32 (log.f32 (/.f32 -1 u1)))))
(fma.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (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 (PI.f32) u2))) 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 (PI.f32) u2)))) (pow.f32 u1 2)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))))
(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 (PI.f32) u2)))))) (fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) u1)) (*.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (sqrt.f32 (log.f32 (/.f32 -1 u1))))))
(+.f32 (*.f32 (cos.f32 (*.f32 2 (*.f32 (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 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) 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 (PI.f32) u2))) u1))))
(fma.f32 (cos.f32 (*.f32 2 (*.f32 (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 (+.f32 1/2 (*.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))) -1/4)) u1) 1) (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) u1))))
(+.f32 (*.f32 1/2 (*.f32 (/.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 (PI.f32) u2)))) (pow.f32 u1 3)) (sqrt.f32 (/.f32 1 (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 (PI.f32) u2)))) (pow.f32 u1 2)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))))))
(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 (PI.f32) u2)))))) (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 (PI.f32) u2)))))) (fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) u1)) (*.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (sqrt.f32 (log.f32 (/.f32 -1 u1)))))))
(fma.f32 1/2 (*.f32 (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 2 (*.f32 (PI.f32) u2))))) (+.f32 (*.f32 (cos.f32 (*.f32 2 (*.f32 (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 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) 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 (PI.f32) u2))) u1)))))
(+.f32 (*.f32 (cos.f32 (*.f32 2 (*.f32 (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 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (/.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 (PI.f32) u2))) 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 (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 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 u2 (*.f32 u2 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (pow.f32 (PI.f32) 2)))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (+.f32 (*.f32 -2 (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2))) 1) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (pow.f32 (PI.f32) 2) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (*.f32 (pow.f32 (PI.f32) 4) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (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))) (fma.f32 2/3 (*.f32 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4)) (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 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (pow.f32 (PI.f32) 2)))) (fma.f32 2/3 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))) (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)))) (+.f32 (*.f32 -2 (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2))) (*.f32 2/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))))))
(+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (pow.f32 (PI.f32) 2) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (*.f32 (pow.f32 (PI.f32) 4) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (+.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (*.f32 -4/45 (*.f32 (pow.f32 u2 6) (*.f32 (pow.f32 (PI.f32) 6) (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))) (+.f32 (fma.f32 2/3 (*.f32 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4)) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))) (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 (*.f32 u2 (*.f32 u2 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (pow.f32 (PI.f32) 2)))) (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 -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 (+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))) 1) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))) (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.f32 (*.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 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(*.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(*.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(*.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(*.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (cos.f32 (*.f32 -2 (*.f32 (PI.f32) (*.f32 u2 (cbrt.f32 -1))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 -2 (*.f32 (*.f32 (PI.f32) u2) (cbrt.f32 -1)))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (PI.f32) (*.f32 (*.f32 u2 (cbrt.f32 -1)) -2))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (PI.f32) (*.f32 -2 (*.f32 u2 (cbrt.f32 -1))))))
(*.f32 (cos.f32 (*.f32 -2 (*.f32 (PI.f32) (*.f32 u2 (cbrt.f32 -1))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 -2 (*.f32 (*.f32 (PI.f32) u2) (cbrt.f32 -1)))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (PI.f32) (*.f32 (*.f32 u2 (cbrt.f32 -1)) -2))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (PI.f32) (*.f32 -2 (*.f32 u2 (cbrt.f32 -1))))))
(*.f32 (cos.f32 (*.f32 -2 (*.f32 (PI.f32) (*.f32 u2 (cbrt.f32 -1))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 -2 (*.f32 (*.f32 (PI.f32) u2) (cbrt.f32 -1)))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (PI.f32) (*.f32 (*.f32 u2 (cbrt.f32 -1)) -2))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (PI.f32) (*.f32 -2 (*.f32 u2 (cbrt.f32 -1))))))
(*.f32 (cos.f32 (*.f32 -2 (*.f32 (PI.f32) (*.f32 u2 (cbrt.f32 -1))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 -2 (*.f32 (*.f32 (PI.f32) u2) (cbrt.f32 -1)))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (PI.f32) (*.f32 (*.f32 u2 (cbrt.f32 -1)) -2))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (PI.f32) (*.f32 -2 (*.f32 u2 (cbrt.f32 -1))))))
(*.f32 (PI.f32) u2)
(*.f32 (PI.f32) u2)
(*.f32 (PI.f32) u2)
(*.f32 (PI.f32) u2)
(*.f32 (PI.f32) u2)
(*.f32 (PI.f32) u2)
(*.f32 (PI.f32) u2)
(*.f32 (PI.f32) u2)
(*.f32 -1 (*.f32 u2 (*.f32 (PI.f32) (cbrt.f32 -1))))
(neg.f32 (*.f32 (*.f32 (PI.f32) u2) (cbrt.f32 -1)))
(*.f32 (PI.f32) (neg.f32 (*.f32 u2 (cbrt.f32 -1))))
(*.f32 u2 (*.f32 (PI.f32) (neg.f32 (cbrt.f32 -1))))
(*.f32 -1 (*.f32 u2 (*.f32 (PI.f32) (cbrt.f32 -1))))
(neg.f32 (*.f32 (*.f32 (PI.f32) u2) (cbrt.f32 -1)))
(*.f32 (PI.f32) (neg.f32 (*.f32 u2 (cbrt.f32 -1))))
(*.f32 u2 (*.f32 (PI.f32) (neg.f32 (cbrt.f32 -1))))
(*.f32 -1 (*.f32 u2 (*.f32 (PI.f32) (cbrt.f32 -1))))
(neg.f32 (*.f32 (*.f32 (PI.f32) u2) (cbrt.f32 -1)))
(*.f32 (PI.f32) (neg.f32 (*.f32 u2 (cbrt.f32 -1))))
(*.f32 u2 (*.f32 (PI.f32) (neg.f32 (cbrt.f32 -1))))
(*.f32 -1 (*.f32 u2 (*.f32 (PI.f32) (cbrt.f32 -1))))
(neg.f32 (*.f32 (*.f32 (PI.f32) u2) (cbrt.f32 -1)))
(*.f32 (PI.f32) (neg.f32 (*.f32 u2 (cbrt.f32 -1))))
(*.f32 u2 (*.f32 (PI.f32) (neg.f32 (cbrt.f32 -1))))

prune174.0ms (3.2%)

Pruning

10 alts after pruning (10 fresh and 0 done)

PrunedKeptTotal
New1081109
Fresh1910
Picked101
Done000
Total11010120
Error
0.1b
Counts
120 → 10
Alt Table
StatusErrorProgram
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (expm1.f32 (log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.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)))))))
0.8b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (log.f32 (exp.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))))
0.4b
(*.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 (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)))) (*.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)))))
8.3b
(cbrt.f32 (*.f32 (pow.f32 (log1p.f32 u1) 3/2) (pow.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 3)))
0.3b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (cbrt.f32 (*.f32 (*.f32 (pow.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2) 3) (PI.f32)) (pow.f32 u2 3))))))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (pow.f32 (cbrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) 3))
2.0b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (pow.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 3) 1/3))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (/.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))))
Compiler

Compiled 3209 to 2058 computations (35.9% saved)

localize58.0ms (1.1%)

Local error

Found 4 expressions with local error:

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

series4.0ms (0.1%)

Counts
4 → 44
Calls

12 calls:

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

rewrite60.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
495×prod-diff_binary32
194×add-sqr-sqrt_binary32
188×pow1_binary32
184×*-un-lft-identity_binary32
182×expm1-log1p-u_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02072
142235
2479035
Stop Event
node limit
Counts
4 → 83
Calls
Call 1
Inputs
(pow.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2) 3)
(*.f32 (*.f32 (pow.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2) 3) (PI.f32)) (pow.f32 u2 3))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (cbrt.f32 (*.f32 (*.f32 (pow.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2) 3) (PI.f32)) (pow.f32 u2 3))))))
(cbrt.f32 (*.f32 (*.f32 (pow.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2) 3) (PI.f32)) (pow.f32 u2 3)))
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 (cbrt.f32 (PI.f32)) (*.f32 (cbrt.f32 (PI.f32)) (pow.f32 (cbrt.f32 (PI.f32)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2) (pow.f32 (cbrt.f32 (PI.f32)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (PI.f32) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (pow.f32 (PI.f32) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4) (pow.f32 (cbrt.f32 (PI.f32)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4)) (*.f32 (cbrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2)) (pow.f32 (cbrt.f32 (PI.f32)) 4)))))) (#(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)) (sqrt.f32 (pow.f32 (PI.f32) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2)) 6) (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (pow.f32 (PI.f32) 1/6) 6) (pow.f32 (pow.f32 (PI.f32) 1/6) 6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4)) 3) (pow.f32 (cbrt.f32 (PI.f32)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (PI.f32) (pow.f32 (cbrt.f32 (PI.f32)) 2)) (cbrt.f32 (PI.f32)))))) (#(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 (pow.f32 (cbrt.f32 (PI.f32)) 4) 1) (pow.f32 (cbrt.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 (pow.f32 (cbrt.f32 (PI.f32)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 12))))) (#(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) 3) 2))))) (#(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 (log.f32 (pow.f32 (PI.f32) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (cbrt.f32 (PI.f32))) 6))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (pow.f32 (PI.f32) 2)) 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 (*.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 (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)))))))
((#(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 (sqrt.f32 (log1p.f32 u1))) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))))))) (#(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 (exp.f32 (log1p.f32 (*.f32 (PI.f32) u2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (PI.f32) u2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2) (cbrt.f32 (*.f32 (PI.f32) (pow.f32 u2 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2) (pow.f32 (*.f32 (PI.f32) (pow.f32 u2 3)) 1/3))))) (#(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 1 (*.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 (sqrt.f32 (*.f32 (PI.f32) u2)) (sqrt.f32 (*.f32 (PI.f32) u2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 1 1/3) (*.f32 (PI.f32) u2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (pow.f32 (*.f32 (PI.f32) u2) 2) 1/3) (cbrt.f32 (*.f32 (PI.f32) u2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (sqrt.f32 (pow.f32 (*.f32 (PI.f32) u2) 3)) 1/3) (pow.f32 (sqrt.f32 (pow.f32 (*.f32 (PI.f32) u2) 3)) 1/3))))) (#(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 pow.f32 (pow.f32 (*.f32 (PI.f32) u2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (PI.f32) u2) 1)))) (#(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 (PI.f32)) u2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 (PI.f32) u2))))))) (#(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 (pow.f32 (*.f32 (PI.f32) u2) 3)) 1/3))))) (#(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)))))))

simplify38.0ms (0.7%)

Algorithm
egg-herbie
Rules
538×associate-*l*_binary32
519×associate-*r*_binary32
400×fma-def_binary32
247×times-frac_binary32
208×associate-/l*_binary32
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01161386
13421276
211211157
Stop Event
node limit
Counts
127 → 114
Calls
Call 1
Inputs
(*.f32 (pow.f32 (PI.f32) 3) (pow.f32 u2 3))
(*.f32 (pow.f32 (PI.f32) 3) (pow.f32 u2 3))
(*.f32 (pow.f32 (PI.f32) 3) (pow.f32 u2 3))
(*.f32 (pow.f32 (PI.f32) 3) (pow.f32 u2 3))
(*.f32 (pow.f32 (PI.f32) 3) (pow.f32 u2 3))
(*.f32 (pow.f32 (PI.f32) 3) (pow.f32 u2 3))
(*.f32 (pow.f32 (PI.f32) 3) (pow.f32 u2 3))
(*.f32 (pow.f32 (PI.f32) 3) (pow.f32 u2 3))
(*.f32 (pow.f32 (PI.f32) 3) (pow.f32 u2 3))
(*.f32 (pow.f32 (PI.f32) 3) (pow.f32 u2 3))
(*.f32 (pow.f32 (PI.f32) 3) (pow.f32 u2 3))
(*.f32 (pow.f32 (PI.f32) 3) (pow.f32 u2 3))
(*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(+.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))) (*.f32 1/2 (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (*.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 (PI.f32) u2)))) (+.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 (PI.f32) u2)))) (*.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 (PI.f32) u2))) (*.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 (PI.f32) u2)))) (+.f32 (*.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) (*.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)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))) (*.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 (PI.f32) u2)))) (*.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 (PI.f32) u2))) (*.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 (PI.f32) u2))))
(+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))))
(+.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 (PI.f32) u2)))) (pow.f32 u1 2)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))))
(+.f32 (*.f32 1/2 (*.f32 (/.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 (PI.f32) u2)))) (pow.f32 u1 3)) (sqrt.f32 (/.f32 1 (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 (PI.f32) u2)))) (pow.f32 u1 2)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))))))
(sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))
(+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (pow.f32 (PI.f32) 2) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (pow.f32 (PI.f32) 2) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (*.f32 (pow.f32 (PI.f32) 4) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))
(+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (pow.f32 (PI.f32) 2) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (*.f32 (pow.f32 (PI.f32) 4) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (+.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (*.f32 -4/45 (*.f32 (pow.f32 u2 6) (*.f32 (pow.f32 (PI.f32) 6) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 (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 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(*.f32 (cos.f32 (*.f32 -2 (*.f32 (PI.f32) (*.f32 u2 (cbrt.f32 -1))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 -2 (*.f32 (PI.f32) (*.f32 u2 (cbrt.f32 -1))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 -2 (*.f32 (PI.f32) (*.f32 u2 (cbrt.f32 -1))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 -2 (*.f32 (PI.f32) (*.f32 u2 (cbrt.f32 -1))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (PI.f32) u2)
(*.f32 (PI.f32) u2)
(*.f32 (PI.f32) u2)
(*.f32 (PI.f32) u2)
(*.f32 (PI.f32) u2)
(*.f32 (PI.f32) u2)
(*.f32 (PI.f32) u2)
(*.f32 (PI.f32) u2)
(*.f32 -1 (*.f32 u2 (*.f32 (PI.f32) (cbrt.f32 -1))))
(*.f32 -1 (*.f32 u2 (*.f32 (PI.f32) (cbrt.f32 -1))))
(*.f32 -1 (*.f32 u2 (*.f32 (PI.f32) (cbrt.f32 -1))))
(*.f32 -1 (*.f32 u2 (*.f32 (PI.f32) (cbrt.f32 -1))))
Outputs
(*.f32 (pow.f32 (PI.f32) 3) (pow.f32 u2 3))
(*.f32 (pow.f32 (PI.f32) 3) (pow.f32 u2 3))
(*.f32 (pow.f32 (PI.f32) 3) (pow.f32 u2 3))
(*.f32 (pow.f32 (PI.f32) 3) (pow.f32 u2 3))
(*.f32 (pow.f32 (PI.f32) 3) (pow.f32 u2 3))
(*.f32 (pow.f32 (PI.f32) 3) (pow.f32 u2 3))
(*.f32 (pow.f32 (PI.f32) 3) (pow.f32 u2 3))
(*.f32 (pow.f32 (PI.f32) 3) (pow.f32 u2 3))
(*.f32 (pow.f32 (PI.f32) 3) (pow.f32 u2 3))
(*.f32 (pow.f32 (PI.f32) 3) (pow.f32 u2 3))
(*.f32 (pow.f32 (PI.f32) 3) (pow.f32 u2 3))
(*.f32 (pow.f32 (PI.f32) 3) (pow.f32 u2 3))
(*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(*.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1))) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))
(+.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))) (*.f32 1/2 (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (*.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 (PI.f32) u2))) (/.f32 (*.f32 1/2 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))) (*.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 (PI.f32) (*.f32 u2 2))) (*.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1)))) (/.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) u1)))
(fma.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1))) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (*.f32 1/2 (/.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (*.f32 u1 (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1)))))))
(+.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))) (+.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 (PI.f32) u2)))) (*.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 (PI.f32) u2))) (*.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 (PI.f32) u2))) (*.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 (PI.f32) u2))))) (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (*.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 (PI.f32) (*.f32 u2 2))) (*.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 (PI.f32) (*.f32 u2 2))) (*.f32 u1 u1)) (/.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (*.f32 u1 (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1))))))))
(fma.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1))) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (*.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1)))) (+.f32 (/.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) u1) (*.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1)))) 2)) (/.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 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 (PI.f32) u2)))) (+.f32 (*.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) (*.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)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))) (*.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 (PI.f32) u2)))) (*.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 (PI.f32) u2))) (*.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 (PI.f32) u2))) (fma.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) (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 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) (pow.f32 u1 3)) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))) (*.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 (PI.f32) u2))))) (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (*.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 (PI.f32) (*.f32 u2 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 (PI.f32) (*.f32 u2 2))) (*.f32 u1 u1)) (/.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (*.f32 u1 (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1)))))) (*.f32 (/.f32 (+.f32 1/3 (/.f32 (*.f32 -1/2 (-.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)))) (*.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1))) (pow.f32 u1 3))) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))))))
(fma.f32 1/2 (+.f32 (/.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (*.f32 u1 (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1))))) (*.f32 (/.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1)))) (+.f32 (/.f32 (-.f32 1/3 (*.f32 -1/2 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1)))) 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 -1)) (log.f32 u1)))) 2)) (*.f32 u1 u1))))) (*.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 -1)) (log.f32 u1))) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))))
(*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(*.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (sqrt.f32 (log.f32 (/.f32 -1 u1))))
(*.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 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 (PI.f32) u2))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))))
(fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) u1)) (*.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (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 (PI.f32) (*.f32 u2 2))) u1)) (*.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (sqrt.f32 (log.f32 (/.f32 -1 u1)))))
(fma.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (/.f32 u1 1/2)) (*.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 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 (PI.f32) u2)))) (pow.f32 u1 2)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))))
(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 (PI.f32) u2)))))) (fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) u1)) (*.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (sqrt.f32 (log.f32 (/.f32 -1 u1))))))
(+.f32 (*.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 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 (PI.f32) (*.f32 u2 2)))) (/.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 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 (PI.f32) (*.f32 u2 2))) u1))) (*.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (sqrt.f32 (log.f32 (/.f32 -1 u1)))))
(+.f32 (*.f32 1/2 (*.f32 (/.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 (PI.f32) u2)))) (pow.f32 u1 3)) (sqrt.f32 (/.f32 1 (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 (PI.f32) u2)))) (pow.f32 u1 2)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))))))
(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 (PI.f32) u2)))))) (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 (PI.f32) u2)))))) (fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) u1)) (*.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (sqrt.f32 (log.f32 (/.f32 -1 u1)))))))
(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 (PI.f32) (*.f32 u2 2)))))) (+.f32 (*.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 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 (PI.f32) (*.f32 u2 2)))) (/.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) u1)))))
(+.f32 (*.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (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 (PI.f32) (*.f32 u2 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 (PI.f32) (*.f32 u2 2))) 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 (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 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 2)) (*.f32 u2 u2)) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(fma.f32 -2 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (pow.f32 (PI.f32) 2) (*.f32 u2 u2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (+.f32 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 -2 (*.f32 u2 u2))) 1) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (pow.f32 (PI.f32) 2) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (*.f32 (pow.f32 (PI.f32) 4) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))
(fma.f32 -2 (*.f32 (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 2)) (*.f32 u2 u2)) (fma.f32 2/3 (*.f32 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4)) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))
(fma.f32 -2 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (pow.f32 (PI.f32) 2) (*.f32 u2 u2))) (fma.f32 2/3 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))) (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)))) (+.f32 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 -2 (*.f32 u2 u2))) (*.f32 (pow.f32 (PI.f32) 4) (*.f32 2/3 (pow.f32 u2 4))))))
(+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (pow.f32 (PI.f32) 2) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (*.f32 (pow.f32 (PI.f32) 4) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (+.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (*.f32 -4/45 (*.f32 (pow.f32 u2 6) (*.f32 (pow.f32 (PI.f32) 6) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))))))
(fma.f32 -2 (*.f32 (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 2)) (*.f32 u2 u2)) (+.f32 (fma.f32 2/3 (*.f32 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4)) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))) (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 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (pow.f32 (PI.f32) 2) (*.f32 u2 u2))) (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 -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 (+.f32 (*.f32 (pow.f32 (PI.f32) 4) (*.f32 2/3 (pow.f32 u2 4))) 1) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))) (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.f32 (*.f32 -4/45 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6))) (*.f32 (pow.f32 (PI.f32) 2) (*.f32 -2 (*.f32 u2 u2))))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(*.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 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 (PI.f32) u2))))
(*.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 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 (PI.f32) u2))))
(*.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 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 (PI.f32) u2))))
(*.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (cos.f32 (*.f32 -2 (*.f32 (PI.f32) (*.f32 u2 (cbrt.f32 -1))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 -2 (PI.f32)) (*.f32 u2 (cbrt.f32 -1)))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (PI.f32) (*.f32 (*.f32 u2 (cbrt.f32 -1)) -2))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 (*.f32 -2 (cbrt.f32 -1))))))
(*.f32 (cos.f32 (*.f32 -2 (*.f32 (PI.f32) (*.f32 u2 (cbrt.f32 -1))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 -2 (PI.f32)) (*.f32 u2 (cbrt.f32 -1)))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (PI.f32) (*.f32 (*.f32 u2 (cbrt.f32 -1)) -2))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 (*.f32 -2 (cbrt.f32 -1))))))
(*.f32 (cos.f32 (*.f32 -2 (*.f32 (PI.f32) (*.f32 u2 (cbrt.f32 -1))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 -2 (PI.f32)) (*.f32 u2 (cbrt.f32 -1)))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (PI.f32) (*.f32 (*.f32 u2 (cbrt.f32 -1)) -2))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 (*.f32 -2 (cbrt.f32 -1))))))
(*.f32 (cos.f32 (*.f32 -2 (*.f32 (PI.f32) (*.f32 u2 (cbrt.f32 -1))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 -2 (PI.f32)) (*.f32 u2 (cbrt.f32 -1)))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (PI.f32) (*.f32 (*.f32 u2 (cbrt.f32 -1)) -2))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 (*.f32 -2 (cbrt.f32 -1))))))
(*.f32 (PI.f32) u2)
(*.f32 (PI.f32) u2)
(*.f32 (PI.f32) u2)
(*.f32 (PI.f32) u2)
(*.f32 (PI.f32) u2)
(*.f32 (PI.f32) u2)
(*.f32 (PI.f32) u2)
(*.f32 (PI.f32) u2)
(*.f32 -1 (*.f32 u2 (*.f32 (PI.f32) (cbrt.f32 -1))))
(neg.f32 (*.f32 (PI.f32) (*.f32 u2 (cbrt.f32 -1))))
(*.f32 (*.f32 (PI.f32) u2) (neg.f32 (cbrt.f32 -1)))
(*.f32 (PI.f32) (neg.f32 (*.f32 u2 (cbrt.f32 -1))))
(*.f32 -1 (*.f32 u2 (*.f32 (PI.f32) (cbrt.f32 -1))))
(neg.f32 (*.f32 (PI.f32) (*.f32 u2 (cbrt.f32 -1))))
(*.f32 (*.f32 (PI.f32) u2) (neg.f32 (cbrt.f32 -1)))
(*.f32 (PI.f32) (neg.f32 (*.f32 u2 (cbrt.f32 -1))))
(*.f32 -1 (*.f32 u2 (*.f32 (PI.f32) (cbrt.f32 -1))))
(neg.f32 (*.f32 (PI.f32) (*.f32 u2 (cbrt.f32 -1))))
(*.f32 (*.f32 (PI.f32) u2) (neg.f32 (cbrt.f32 -1)))
(*.f32 (PI.f32) (neg.f32 (*.f32 u2 (cbrt.f32 -1))))
(*.f32 -1 (*.f32 u2 (*.f32 (PI.f32) (cbrt.f32 -1))))
(neg.f32 (*.f32 (PI.f32) (*.f32 u2 (cbrt.f32 -1))))
(*.f32 (*.f32 (PI.f32) u2) (neg.f32 (cbrt.f32 -1)))
(*.f32 (PI.f32) (neg.f32 (*.f32 u2 (cbrt.f32 -1))))

prune161.0ms (2.9%)

Pruning

10 alts after pruning (9 fresh and 1 done)

PrunedKeptTotal
New1140114
Fresh099
Picked011
Done000
Total11410124
Error
0.1b
Counts
124 → 10
Alt Table
StatusErrorProgram
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (expm1.f32 (log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.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)))))))
0.8b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (log.f32 (exp.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))))
0.4b
(*.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 (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)))) (*.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)))))
8.3b
(cbrt.f32 (*.f32 (pow.f32 (log1p.f32 u1) 3/2) (pow.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 3)))
0.3b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (cbrt.f32 (*.f32 (*.f32 (pow.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2) 3) (PI.f32)) (pow.f32 u2 3))))))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (pow.f32 (cbrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) 3))
2.0b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (pow.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 3) 1/3))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (/.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))))
Compiler

Compiled 3387 to 2192 computations (35.3% saved)

localize44.0ms (0.8%)

Local error

Found 4 expressions with local error:

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

series46.0ms (0.8%)

Counts
4 → 56
Calls

15 calls:

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

rewrite51.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
500×prod-diff_binary32
211×expm1-udef_binary32
211×log1p-udef_binary32
137×add-sqr-sqrt_binary32
134×pow1_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01551
128247
2335647
Stop Event
node limit
Counts
4 → 70
Calls
Call 1
Inputs
(*.f32 (PI.f32) (*.f32 u2 2))
(expm1.f32 (log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (expm1.f32 (log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))))
(log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (PI.f32) (*.f32 u2 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 (PI.f32) (*.f32 u2 2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 (PI.f32) (*.f32 u2 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 (PI.f32)) (*.f32 u2 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 (PI.f32) (*.f32 u2 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 (PI.f32) (*.f32 u2 2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (PI.f32) 3) (pow.f32 (*.f32 u2 2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (*.f32 u2 2) 3) (pow.f32 (PI.f32) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 (PI.f32) (*.f32 u2 2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 (PI.f32) (*.f32 u2 2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 (PI.f32) (*.f32 u2 2))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (+.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 1) 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 (pow.f32 (+.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 1) 3) 1) (fma.f32 (+.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 1) (+.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 1) (+.f32 1 (*.f32 (+.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 1) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (fma.f32 (+.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 1) (+.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 1) -1) (+.f32 (+.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 1) 1))))) (#(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 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 fma.f32 1 (+.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (cbrt.f32 (+.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 1)) (cbrt.f32 (+.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 1))) (cbrt.f32 (+.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (hypot.f32 1 (sqrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))) (hypot.f32 1 (sqrt.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 cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (sqrt.f32 (log1p.f32 u1))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (sqrt.f32 (log1p.f32 u1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (sqrt.f32 (log1p.f32 u1))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (sqrt.f32 (log1p.f32 u1)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (sqrt.f32 (log1p.f32 u1)))) 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 (sqrt.f32 (log1p.f32 u1))) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (sqrt.f32 (log1p.f32 u1))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (sqrt.f32 (log1p.f32 u1))) 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 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 expm1.f32 (log1p.f32 (*.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (sqrt.f32 (log1p.f32 u1)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (sqrt.f32 (log1p.f32 u1)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (sqrt.f32 (log1p.f32 u1)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (sqrt.f32 (log1p.f32 u1)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))) (pow.f32 (cbrt.f32 (log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))) 2) (cbrt.f32 (log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))) (sqrt.f32 (log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))) 1))))))

simplify45.0ms (0.8%)

Algorithm
egg-herbie
Rules
695×associate-*l*_binary32
665×fma-def_binary32
598×associate-*r*_binary32
247×times-frac_binary32
207×associate-/l*_binary32
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01421625
14121498
213661362
Stop Event
node limit
Counts
126 → 116
Calls
Call 1
Inputs
(*.f32 2 (*.f32 u2 (PI.f32)))
(*.f32 2 (*.f32 u2 (PI.f32)))
(*.f32 2 (*.f32 u2 (PI.f32)))
(*.f32 2 (*.f32 u2 (PI.f32)))
(*.f32 2 (*.f32 u2 (PI.f32)))
(*.f32 2 (*.f32 u2 (PI.f32)))
(*.f32 2 (*.f32 u2 (PI.f32)))
(*.f32 2 (*.f32 u2 (PI.f32)))
(*.f32 2 (*.f32 u2 (PI.f32)))
(*.f32 2 (*.f32 u2 (PI.f32)))
(*.f32 2 (*.f32 u2 (PI.f32)))
(*.f32 2 (*.f32 u2 (PI.f32)))
1
(+.f32 1 (*.f32 -2 (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2))))
(+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))) (+.f32 1 (*.f32 -2 (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2)))))
(+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))) (+.f32 (*.f32 -4/45 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6))) (+.f32 1 (*.f32 -2 (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2))))))
(cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))
(cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))
(cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))
(cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))
(cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))
(cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))
(cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))
(cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))
(*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(+.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))) (*.f32 1/2 (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (*.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 (PI.f32) u2)))) (+.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 (PI.f32) u2)))) (*.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 (PI.f32) u2))) (*.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 (PI.f32) u2)))) (+.f32 (*.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) (*.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)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))) (*.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 (PI.f32) u2)))) (*.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 (PI.f32) u2))) (*.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 (PI.f32) u2))))
(+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))))
(+.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 (PI.f32) u2)))) (pow.f32 u1 2)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))))
(+.f32 (*.f32 1/2 (*.f32 (/.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 (PI.f32) u2)))) (pow.f32 u1 3)) (sqrt.f32 (/.f32 1 (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 (PI.f32) u2)))) (pow.f32 u1 2)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))))))
(sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))
(+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (pow.f32 (PI.f32) 2) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (pow.f32 (PI.f32) 2) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (*.f32 (pow.f32 (PI.f32) 4) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))
(+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (pow.f32 (PI.f32) 2) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (*.f32 (pow.f32 (PI.f32) 4) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (+.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (*.f32 -4/45 (*.f32 (pow.f32 u2 6) (*.f32 (pow.f32 (PI.f32) 6) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 (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 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 (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 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 (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 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(log.f32 2)
(+.f32 (*.f32 -1 (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2))) (log.f32 2))
(+.f32 (*.f32 1/24 (*.f32 (pow.f32 u2 4) (+.f32 (*.f32 8 (pow.f32 (PI.f32) 4)) (*.f32 -12 (pow.f32 (PI.f32) 4))))) (+.f32 (*.f32 -1 (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2))) (log.f32 2)))
(+.f32 (*.f32 1/720 (*.f32 (+.f32 (*.f32 240 (pow.f32 (PI.f32) 6)) (+.f32 (*.f32 -240 (pow.f32 (PI.f32) 6)) (*.f32 -32 (pow.f32 (PI.f32) 6)))) (pow.f32 u2 6))) (+.f32 (*.f32 1/24 (*.f32 (pow.f32 u2 4) (+.f32 (*.f32 8 (pow.f32 (PI.f32) 4)) (*.f32 -12 (pow.f32 (PI.f32) 4))))) (+.f32 (*.f32 -1 (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2))) (log.f32 2))))
(log.f32 (+.f32 1 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))))
(log.f32 (+.f32 1 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))))
(log.f32 (+.f32 1 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))))
(log.f32 (+.f32 1 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))))
(log.f32 (+.f32 1 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))))
(log.f32 (+.f32 1 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))))
(log.f32 (+.f32 1 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))))
(log.f32 (+.f32 1 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))))
Outputs
(*.f32 2 (*.f32 u2 (PI.f32)))
(*.f32 (PI.f32) (*.f32 2 u2))
(*.f32 2 (*.f32 u2 (PI.f32)))
(*.f32 (PI.f32) (*.f32 2 u2))
(*.f32 2 (*.f32 u2 (PI.f32)))
(*.f32 (PI.f32) (*.f32 2 u2))
(*.f32 2 (*.f32 u2 (PI.f32)))
(*.f32 (PI.f32) (*.f32 2 u2))
(*.f32 2 (*.f32 u2 (PI.f32)))
(*.f32 (PI.f32) (*.f32 2 u2))
(*.f32 2 (*.f32 u2 (PI.f32)))
(*.f32 (PI.f32) (*.f32 2 u2))
(*.f32 2 (*.f32 u2 (PI.f32)))
(*.f32 (PI.f32) (*.f32 2 u2))
(*.f32 2 (*.f32 u2 (PI.f32)))
(*.f32 (PI.f32) (*.f32 2 u2))
(*.f32 2 (*.f32 u2 (PI.f32)))
(*.f32 (PI.f32) (*.f32 2 u2))
(*.f32 2 (*.f32 u2 (PI.f32)))
(*.f32 (PI.f32) (*.f32 2 u2))
(*.f32 2 (*.f32 u2 (PI.f32)))
(*.f32 (PI.f32) (*.f32 2 u2))
(*.f32 2 (*.f32 u2 (PI.f32)))
(*.f32 (PI.f32) (*.f32 2 u2))
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 u2 (*.f32 u2 (pow.f32 (PI.f32) 2))) 1)
(fma.f32 -2 (*.f32 u2 (*.f32 (pow.f32 (PI.f32) 2) u2)) 1)
(+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))) (+.f32 1 (*.f32 -2 (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2)))))
(fma.f32 2/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4)) (+.f32 1 (*.f32 -2 (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2)))))
(fma.f32 2/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4)) (fma.f32 -2 (*.f32 u2 (*.f32 u2 (pow.f32 (PI.f32) 2))) 1))
(fma.f32 (pow.f32 (PI.f32) 2) (*.f32 u2 (*.f32 u2 -2)) (fma.f32 (pow.f32 (PI.f32) 4) (*.f32 2/3 (pow.f32 u2 4)) 1))
(+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))) (+.f32 (*.f32 -4/45 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6))) (+.f32 1 (*.f32 -2 (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2))))))
(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 1 (*.f32 -2 (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2))))))
(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)) (fma.f32 -2 (*.f32 u2 (*.f32 u2 (pow.f32 (PI.f32) 2))) 1)))
(fma.f32 -4/45 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6)) (fma.f32 (pow.f32 (PI.f32) 2) (*.f32 u2 (*.f32 u2 -2)) (fma.f32 (pow.f32 (PI.f32) 4) (*.f32 2/3 (pow.f32 u2 4)) 1)))
(cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))
(cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))
(cos.f32 (*.f32 (PI.f32) (*.f32 2 u2)))
(cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))
(cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))
(cos.f32 (*.f32 (PI.f32) (*.f32 2 u2)))
(cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))
(cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))
(cos.f32 (*.f32 (PI.f32) (*.f32 2 u2)))
(cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))
(cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))
(cos.f32 (*.f32 (PI.f32) (*.f32 2 u2)))
(cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))
(cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))
(cos.f32 (*.f32 (PI.f32) (*.f32 2 u2)))
(cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))
(cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))
(cos.f32 (*.f32 (PI.f32) (*.f32 2 u2)))
(cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))
(cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))
(cos.f32 (*.f32 (PI.f32) (*.f32 2 u2)))
(cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))
(cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))
(cos.f32 (*.f32 (PI.f32) (*.f32 2 u2)))
(*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(*.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 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))))
(*.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 2 u2))) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))))
(+.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))) (*.f32 1/2 (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (*.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 (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 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))))
(fma.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 2 u2))) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (/.f32 (/.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 2 u2))) (/.f32 u1 1/2)) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))))
(+.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))) (+.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 (PI.f32) u2)))) (*.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 (PI.f32) u2))) (*.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 (-.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 2 (*.f32 u2 (PI.f32)))) (*.f32 u1 u1))) (/.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 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (*.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)))))))
(fma.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 2 u2))) (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)))) (+.f32 (/.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 2 u2))) 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 (PI.f32) (*.f32 2 u2))) (*.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 (PI.f32) u2)))) (+.f32 (*.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) (*.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)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))) (*.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 (PI.f32) u2)))) (*.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 (PI.f32) u2))) (*.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 (-.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)))) (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1))))))) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (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 2 (*.f32 u2 (PI.f32)))) (*.f32 u1 u1))) (/.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 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (*.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 (cos.f32 (*.f32 (PI.f32) (*.f32 2 u2))) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (*.f32 1/2 (+.f32 (/.f32 (/.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 2 u2))) u1) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) (*.f32 (/.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 2 u2))) (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 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(*.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (sqrt.f32 (log.f32 (/.f32 -1 u1))))
(*.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 2 u2))) (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 (PI.f32) u2))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))))
(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 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 2 u2))) u1)) (*.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 2 u2))) (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 (PI.f32) u2)))) (pow.f32 u1 2)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))))
(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 1/2 (pow.f32 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) -1/2) 2)) (/.f32 u1 (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1))) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1))))
(fma.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 2 u2))) (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 (PI.f32) (*.f32 2 u2))) u1)))))
(+.f32 (*.f32 1/2 (*.f32 (/.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 (PI.f32) u2)))) (pow.f32 u1 3)) (sqrt.f32 (/.f32 1 (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 (PI.f32) u2)))) (pow.f32 u1 2)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))))))
(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)))))))
(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))))))) (+.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 1/2 (pow.f32 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) -1/2) 2)) (/.f32 u1 (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1))) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1)))))
(+.f32 (*.f32 (*.f32 1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) (+.f32 (*.f32 (/.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 2 u2))) (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 (PI.f32) (*.f32 2 u2))) u1)))) (*.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 2 u2))) (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 (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 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 u2 (*.f32 u2 (pow.f32 (PI.f32) 2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))) (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 (*.f32 (pow.f32 u2 2) (*.f32 (pow.f32 (PI.f32) 2) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (*.f32 (pow.f32 (PI.f32) 4) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (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)))))) (fma.f32 2/3 (*.f32 (pow.f32 u2 4) (*.f32 (pow.f32 (PI.f32) 4) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))
(fma.f32 -2 (*.f32 (*.f32 u2 (*.f32 u2 (pow.f32 (PI.f32) 2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))) (fma.f32 2/3 (*.f32 (pow.f32 u2 4) (*.f32 (pow.f32 (PI.f32) 4) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))) (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 (PI.f32) 2) (*.f32 u2 (*.f32 u2 -2)) (*.f32 (pow.f32 (PI.f32) 4) (*.f32 2/3 (pow.f32 u2 4))))))
(+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (pow.f32 (PI.f32) 2) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (*.f32 (pow.f32 (PI.f32) 4) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))) (+.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (*.f32 -4/45 (*.f32 (pow.f32 u2 6) (*.f32 (pow.f32 (PI.f32) 6) (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)))))) (fma.f32 2/3 (*.f32 (pow.f32 u2 4) (*.f32 (pow.f32 (PI.f32) 4) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))) (+.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (*.f32 -4/45 (*.f32 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6)) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))))))
(fma.f32 -2 (*.f32 (*.f32 u2 (*.f32 u2 (pow.f32 (PI.f32) 2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))) (fma.f32 2/3 (*.f32 (pow.f32 u2 4) (*.f32 (pow.f32 (PI.f32) 4) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))) (fma.f32 -4/45 (*.f32 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6)) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))))
(+.f32 (*.f32 (fma.f32 (pow.f32 (PI.f32) 4) (*.f32 2/3 (pow.f32 u2 4)) 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 (*.f32 u2 u2) (*.f32 -2 (pow.f32 (PI.f32) 2))))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(*.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 (PI.f32) (*.f32 2 u2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(*.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 (PI.f32) (*.f32 2 u2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(*.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 (PI.f32) (*.f32 2 u2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(*.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 (PI.f32) (*.f32 2 u2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(*.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 (PI.f32) (*.f32 2 u2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(*.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 (PI.f32) (*.f32 2 u2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(*.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 (PI.f32) (*.f32 2 u2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(*.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 (PI.f32) (*.f32 2 u2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(log.f32 2)
(+.f32 (*.f32 -1 (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2))) (log.f32 2))
(fma.f32 -1 (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2)) (log.f32 2))
(fma.f32 (neg.f32 (*.f32 u2 u2)) (pow.f32 (PI.f32) 2) (log.f32 2))
(fma.f32 (pow.f32 (PI.f32) 2) (*.f32 u2 (neg.f32 u2)) (log.f32 2))
(+.f32 (*.f32 1/24 (*.f32 (pow.f32 u2 4) (+.f32 (*.f32 8 (pow.f32 (PI.f32) 4)) (*.f32 -12 (pow.f32 (PI.f32) 4))))) (+.f32 (*.f32 -1 (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2))) (log.f32 2)))
(fma.f32 1/24 (*.f32 (pow.f32 u2 4) (*.f32 (pow.f32 (PI.f32) 4) -4)) (fma.f32 -1 (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2)) (log.f32 2)))
(fma.f32 1/24 (*.f32 (pow.f32 (PI.f32) 4) (*.f32 -4 (pow.f32 u2 4))) (fma.f32 (neg.f32 (*.f32 u2 u2)) (pow.f32 (PI.f32) 2) (log.f32 2)))
(-.f32 (fma.f32 (pow.f32 u2 4) (*.f32 (pow.f32 (PI.f32) 4) -1/6) (log.f32 2)) (*.f32 u2 (*.f32 (pow.f32 (PI.f32) 2) u2)))
(+.f32 (*.f32 1/720 (*.f32 (+.f32 (*.f32 240 (pow.f32 (PI.f32) 6)) (+.f32 (*.f32 -240 (pow.f32 (PI.f32) 6)) (*.f32 -32 (pow.f32 (PI.f32) 6)))) (pow.f32 u2 6))) (+.f32 (*.f32 1/24 (*.f32 (pow.f32 u2 4) (+.f32 (*.f32 8 (pow.f32 (PI.f32) 4)) (*.f32 -12 (pow.f32 (PI.f32) 4))))) (+.f32 (*.f32 -1 (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2))) (log.f32 2))))
(fma.f32 1/720 (*.f32 (pow.f32 u2 6) (fma.f32 240 (pow.f32 (PI.f32) 6) (*.f32 (pow.f32 (PI.f32) 6) -272))) (fma.f32 1/24 (*.f32 (pow.f32 u2 4) (*.f32 (pow.f32 (PI.f32) 4) -4)) (fma.f32 -1 (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2)) (log.f32 2))))
(fma.f32 (*.f32 1/720 (*.f32 (pow.f32 (PI.f32) 6) -32)) (pow.f32 u2 6) (fma.f32 1/24 (*.f32 (pow.f32 (PI.f32) 4) (*.f32 -4 (pow.f32 u2 4))) (fma.f32 (neg.f32 (*.f32 u2 u2)) (pow.f32 (PI.f32) 2) (log.f32 2))))
(fma.f32 (pow.f32 u2 6) (*.f32 (pow.f32 (PI.f32) 6) -2/45) (-.f32 (fma.f32 (pow.f32 u2 4) (*.f32 (pow.f32 (PI.f32) 4) -1/6) (log.f32 2)) (*.f32 u2 (*.f32 (pow.f32 (PI.f32) 2) u2))))
(log.f32 (+.f32 1 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))))
(log1p.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 2 u2))))
(log.f32 (+.f32 1 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))))
(log1p.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 2 u2))))
(log.f32 (+.f32 1 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))))
(log1p.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 2 u2))))
(log.f32 (+.f32 1 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))))
(log1p.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 2 u2))))
(log.f32 (+.f32 1 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))))
(log1p.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 2 u2))))
(log.f32 (+.f32 1 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))))
(log1p.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 2 u2))))
(log.f32 (+.f32 1 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))))
(log1p.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 2 u2))))
(log.f32 (+.f32 1 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))))
(log1p.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 2 u2))))

prune172.0ms (3.1%)

Pruning

12 alts after pruning (10 fresh and 2 done)

PrunedKeptTotal
New1133116
Fresh178
Picked011
Done011
Total11412126
Error
0.1b
Counts
126 → 12
Alt Table
StatusErrorProgram
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (expm1.f32 (log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.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)))))))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (/.f32 (fma.f32 (+.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 1) (+.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 1) -1) (+.f32 (+.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 1) 1)))
0.4b
(*.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 (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)))) (*.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)))))
8.3b
(cbrt.f32 (*.f32 (pow.f32 (log1p.f32 u1) 3/2) (pow.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 3)))
2.7b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (fma.f32 (hypot.f32 1 (sqrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))) (hypot.f32 1 (sqrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))) -1))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (/.f32 (-.f32 (pow.f32 (+.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 1) 3) 1) (fma.f32 (+.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 1) (+.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 1) (+.f32 1 (*.f32 (+.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 1) 1)))))
0.3b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (cbrt.f32 (*.f32 (*.f32 (pow.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2) 3) (PI.f32)) (pow.f32 u2 3))))))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (pow.f32 (cbrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) 3))
2.0b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (pow.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 3) 1/3))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (/.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))))
Compiler

Compiled 3211 to 2162 computations (32.7% saved)

regimes1.2s (21%)

Accuracy

Total 0.2b remaining (68.1%)

Threshold costs 0.2b (68.1%)

Counts
157 → 1
Compiler

Compiled 3282 to 1786 computations (45.6% saved)

simplify2.0ms (0%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
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 (*.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2) (*.f32 (cbrt.f32 (PI.f32)) (pow.f32 (PI.f32) 2))) (pow.f32 u2 3))))))
Outputs
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (cbrt.f32 (*.f32 (*.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2) (*.f32 (cbrt.f32 (PI.f32)) (pow.f32 (PI.f32) 2))) (pow.f32 u2 3))))))

end255.0ms (4.6%)

Stop Event
fuel
Compiler

Compiled 494 to 355 computations (28.1% saved)

Profiling

Loading profile data...