Details

Time bar (total: 9.3s)

analyze407.0ms (4.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 (23.7%)

Results
2.2s8256×body128valid
2.0msbody128invalid

preprocess34.0ms (0.4%)

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)

simplify39.0ms (0.4%)

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

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))))
14.1b
(*.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)

localize42.0ms (0.4%)

Local error

Found 4 expressions with local error:

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

series46.0ms (0.5%)

Counts
4 → 52
Calls

15 calls:

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

rewrite57.0ms (0.6%)

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 log1p.f32 (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 (*.f32 (PI.f32) u2)) 1))))))
((#(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 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 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 +.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (fma.f32 (neg.f32 (sin.f32 (*.f32 (PI.f32) u2))) (sin.f32 (*.f32 (PI.f32) u2)) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (fma.f32 (neg.f32 (sqrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (sqrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (*.f32 (neg.f32 (sin.f32 (*.f32 (PI.f32) u2))) (sin.f32 (*.f32 (PI.f32) u2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 1 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (neg.f32 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1))) (fma.f32 (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) 1 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 (cos.f32 (*.f32 (PI.f32) u2)) (cos.f32 (*.f32 (PI.f32) u2)) (neg.f32 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1))) (fma.f32 (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) 1 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 (*.f32 (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2))) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1))) (fma.f32 (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) 1 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 (sqrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (sqrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1))) (fma.f32 (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) 1 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 1 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (fma.f32 (neg.f32 (sin.f32 (*.f32 (PI.f32) u2))) (sin.f32 (*.f32 (PI.f32) u2)) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 1 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (fma.f32 (neg.f32 (sqrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (sqrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 (*.f32 (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2))) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (fma.f32 (neg.f32 (sin.f32 (*.f32 (PI.f32) u2))) (sin.f32 (*.f32 (PI.f32) u2)) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 (*.f32 (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2))) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (fma.f32 (neg.f32 (sqrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (sqrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 (sqrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (sqrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (fma.f32 (neg.f32 (sin.f32 (*.f32 (PI.f32) u2))) (sin.f32 (*.f32 (PI.f32) u2)) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 (sqrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (sqrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (fma.f32 (neg.f32 (sqrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (sqrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 1 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (neg.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (fma.f32 (neg.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 (cos.f32 (*.f32 (PI.f32) u2)) (cos.f32 (*.f32 (PI.f32) u2)) (neg.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (fma.f32 (neg.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 (*.f32 (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2))) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (fma.f32 (neg.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 (sqrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (sqrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (fma.f32 (neg.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) (pow.f32 (cbrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) 2) (cbrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) (sqrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 (cos.f32 (*.f32 (PI.f32) u2)) (sin.f32 (*.f32 (PI.f32) u2))) (-.f32 (cos.f32 (*.f32 (PI.f32) u2)) (sin.f32 (*.f32 (PI.f32) u2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) 3) (pow.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 3)) (+.f32 (*.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (+.f32 (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (*.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (+.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cos.f32 (*.f32 (PI.f32) u2)) (cos.f32 (*.f32 (PI.f32) u2)) (neg.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x -.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 log1p.f32 (expm1.f32 (sqrt.f32 (log1p.f32 u1))))))) (#(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))))))

simplify44.0ms (0.5%)

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

Useful iterations: 2 (0.0ms)

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

prune305.0ms (3.3%)

Pruning

17 alts after pruning (17 fresh and 0 done)

PrunedKeptTotal
New13116147
Fresh011
Picked101
Done000
Total13217149
Error
0.1b
Counts
149 → 17
Alt Table
StatusErrorProgram
7.6b
(*.f32 (cbrt.f32 (pow.f32 (log1p.f32 u1) 3/2)) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
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 (exp.f32 (log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))) 1))
9.0b
(pow.f32 (sqrt.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))) 2)
14.1b
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
7.7b
(pow.f32 (cbrt.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))) 3)
7.6b
(*.f32 (pow.f32 (log1p.f32 u1) 1/2) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
2.4b
(+.f32 (*.f32 (fma.f32 -2 (*.f32 u2 (*.f32 (pow.f32 (PI.f32) 2) u2)) 1) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))) (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (fma.f32 -4/45 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6)) (*.f32 2/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))))))
0.5b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.f32 (fma.f32 (*.f32 (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2))) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (fma.f32 (neg.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))))
0.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.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.f32 (fma.f32 1 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (neg.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (fma.f32 (neg.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (/.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.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))))))
2.1b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (sqrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) (sqrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (log.f32 (pow.f32 (exp.f32 u2) (PI.f32))))))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (pow.f32 (sqrt.f32 (*.f32 (PI.f32) u2)) 2))))
7.7b
(*.f32 (*.f32 (pow.f32 (log1p.f32 u1) 1/4) (pow.f32 (log1p.f32 u1) 1/4)) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
Compiler

Compiled 5259 to 3324 computations (36.8% saved)

localize49.0ms (0.5%)

Local error

Found 4 expressions with local error:

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

series9.0ms (0.1%)

Counts
4 → 44
Calls

12 calls:

TimeVariablePointExpression
2.0ms
u2
@-inf
(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
u2
@inf
(*.f32 (pow.f32 (PI.f32) 3) (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 (pow.f32 (PI.f32) 3) (pow.f32 u2 3))))))

rewrite55.0ms (0.6%)

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
2408935
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))
(cbrt.f32 (*.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))))))
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 log1p.f32 (expm1.f32 (pow.f32 (PI.f32) 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 -.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 log1p.f32 (expm1.f32 (pow.f32 (*.f32 (PI.f32) u2) 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 exp.f32 (*.f32 (log.f32 (*.f32 (PI.f32) u2)) 3))))))
((#(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 log1p.f32 (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 -.f32 (exp.f32 (log1p.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (*.f32 (log1p.f32 u1) (pow.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))) (sqrt.f32 (log1p.f32 u1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (log1p.f32 u1) 3/2) (pow.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) 3) (pow.f32 (log1p.f32 u1) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))) 1))))))

simplify56.0ms (0.6%)

Algorithm
egg-herbie
Rules
514×associate-*l*_binary32
465×associate-*r*_binary32
410×fma-def_binary32
258×times-frac_binary32
205×associate-/r*_binary32
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01131386
13311276
210841157
349851157
Stop Event
node limit
Counts
123 → 110
Calls
Call 1
Inputs
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 -1 (*.f32 u2 (*.f32 (cbrt.f32 -1) (PI.f32))))
(*.f32 -1 (*.f32 u2 (*.f32 (cbrt.f32 -1) (PI.f32))))
(*.f32 -1 (*.f32 u2 (*.f32 (cbrt.f32 -1) (PI.f32))))
(*.f32 -1 (*.f32 u2 (*.f32 (cbrt.f32 -1) (PI.f32))))
(*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(+.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (*.f32 1/2 (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) u1))))
(+.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (+.f32 (*.f32 1/2 (/.f32 (*.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1))))))) 2)) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (pow.f32 u1 2)))) (*.f32 1/2 (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) u1)))))
(+.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (+.f32 (*.f32 1/2 (/.f32 (*.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (-.f32 1/3 (*.f32 1/2 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1))))))) 2)) (pow.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) 2))))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (pow.f32 u1 3)))) (+.f32 (*.f32 1/2 (/.f32 (*.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1))))))) 2)) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (pow.f32 u1 2)))) (*.f32 1/2 (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) u1))))))
(*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))))
(+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (*.f32 (-.f32 1/2 (pow.f32 (*.f32 -1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) 2)) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (pow.f32 u1 2)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))))
(+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (*.f32 (+.f32 (*.f32 -1/2 (/.f32 (-.f32 1/2 (pow.f32 (*.f32 -1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) 2)) (log.f32 (/.f32 -1 u1)))) 1/3) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (pow.f32 u1 3)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (*.f32 (-.f32 1/2 (pow.f32 (*.f32 -1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) 2)) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (pow.f32 u1 2)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))))))
(sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))
(+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 2)))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 4)))) (+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 2)))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))
(+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 4)))) (+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 2)))) (+.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (*.f32 -4/45 (*.f32 (pow.f32 u2 6) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 6)))))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (cos.f32 (*.f32 -2 (*.f32 u2 (*.f32 (cbrt.f32 -1) (PI.f32))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 -2 (*.f32 u2 (*.f32 (cbrt.f32 -1) (PI.f32))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 -2 (*.f32 u2 (*.f32 (cbrt.f32 -1) (PI.f32))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 -2 (*.f32 u2 (*.f32 (cbrt.f32 -1) (PI.f32))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
Outputs
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(*.f32 (pow.f32 u2 3) (pow.f32 (PI.f32) 3))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 u2 (PI.f32))
(*.f32 -1 (*.f32 u2 (*.f32 (cbrt.f32 -1) (PI.f32))))
(neg.f32 (*.f32 u2 (*.f32 (PI.f32) (cbrt.f32 -1))))
(*.f32 u2 (neg.f32 (*.f32 (PI.f32) (cbrt.f32 -1))))
(*.f32 (cbrt.f32 -1) (*.f32 u2 (neg.f32 (PI.f32))))
(*.f32 -1 (*.f32 u2 (*.f32 (cbrt.f32 -1) (PI.f32))))
(neg.f32 (*.f32 u2 (*.f32 (PI.f32) (cbrt.f32 -1))))
(*.f32 u2 (neg.f32 (*.f32 (PI.f32) (cbrt.f32 -1))))
(*.f32 (cbrt.f32 -1) (*.f32 u2 (neg.f32 (PI.f32))))
(*.f32 -1 (*.f32 u2 (*.f32 (cbrt.f32 -1) (PI.f32))))
(neg.f32 (*.f32 u2 (*.f32 (PI.f32) (cbrt.f32 -1))))
(*.f32 u2 (neg.f32 (*.f32 (PI.f32) (cbrt.f32 -1))))
(*.f32 (cbrt.f32 -1) (*.f32 u2 (neg.f32 (PI.f32))))
(*.f32 -1 (*.f32 u2 (*.f32 (cbrt.f32 -1) (PI.f32))))
(neg.f32 (*.f32 u2 (*.f32 (PI.f32) (cbrt.f32 -1))))
(*.f32 u2 (neg.f32 (*.f32 (PI.f32) (cbrt.f32 -1))))
(*.f32 (cbrt.f32 -1) (*.f32 u2 (neg.f32 (PI.f32))))
(*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)))
(*.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (cos.f32 (*.f32 (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 u2 (PI.f32))))) (*.f32 1/2 (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) u1))))
(fma.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (/.f32 (*.f32 1/2 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2))) (*.f32 u1 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))))))
(fma.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (*.f32 (/.f32 1/2 u1) (/.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))))))
(fma.f32 1/2 (/.f32 (/.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) u1) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) (*.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (cos.f32 (*.f32 (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 u2 (PI.f32))))) (+.f32 (*.f32 1/2 (/.f32 (*.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1))))))) 2)) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (pow.f32 u1 2)))) (*.f32 1/2 (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) u1)))))
(fma.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (*.f32 1/2 (+.f32 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1))))))) 2)) (/.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) (*.f32 u1 u1)) (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)))) (/.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (*.f32 u1 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))))))))
(fma.f32 1/2 (fma.f32 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) 2)) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) (/.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (*.f32 u1 u1)) (/.f32 (/.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) u1) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))))) (*.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))))
(fma.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (*.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) (+.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 u1)) (log.f32 -1)))) 2)) (/.f32 (/.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) u1) u1)))))
(+.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (+.f32 (*.f32 1/2 (/.f32 (*.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (-.f32 1/3 (*.f32 1/2 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1))))))) 2)) (pow.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) 2))))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (pow.f32 u1 3)))) (+.f32 (*.f32 1/2 (/.f32 (*.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1))))))) 2)) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) (pow.f32 u1 2)))) (*.f32 1/2 (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (*.f32 -1 (log.f32 (/.f32 1 u1)))))) u1))))))
(fma.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (fma.f32 1/2 (*.f32 (/.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1))))))) (/.f32 (+.f32 1/3 (*.f32 -1/2 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1))))))) 2)) (pow.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) 2)))) (pow.f32 u1 3))) (*.f32 1/2 (+.f32 (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1))))))) 2)) (/.f32 (*.f32 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1)))))) (*.f32 u1 u1)) (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)))) (/.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (*.f32 u1 (sqrt.f32 (neg.f32 (+.f32 (log.f32 -1) (neg.f32 (neg.f32 (log.f32 u1))))))))))))
(fma.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (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 u1)) (log.f32 -1)))) 2)) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) (/.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (*.f32 u1 u1)) (/.f32 (/.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) u1) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))))) (*.f32 (/.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) (/.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)) (pow.f32 u1 3))))))
(fma.f32 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1))) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (*.f32 1/2 (+.f32 (/.f32 (/.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) u1) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) (*.f32 (/.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) (+.f32 (/.f32 (-.f32 1/3 (*.f32 (/.f32 -1/2 (+.f32 (log.f32 -1) (log.f32 u1))) (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) 2)))) (pow.f32 u1 3)) (/.f32 (-.f32 1/2 (pow.f32 (/.f32 1/2 (sqrt.f32 (-.f32 (neg.f32 (log.f32 u1)) (log.f32 -1)))) 2)) (*.f32 u1 u1)))))))
(*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (log.f32 (/.f32 -1 u1))))
(*.f32 (cos.f32 (*.f32 (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 u2 (PI.f32)))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))))
(fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) u1)) (*.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (log.f32 (/.f32 -1 u1)))))
(fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) u1)) (*.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (sqrt.f32 (log.f32 (/.f32 -1 u1)))))
(fma.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (sqrt.f32 (log.f32 (/.f32 -1 u1))) (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) u1))))
(+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (*.f32 (-.f32 1/2 (pow.f32 (*.f32 -1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) 2)) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (pow.f32 u1 2)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))))
(fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (-.f32 1/2 (pow.f32 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) -1/2) 2)) (/.f32 (*.f32 u1 u1) (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2))))) (fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) u1)) (*.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (log.f32 (/.f32 -1 u1))))))
(+.f32 (*.f32 (cos.f32 (*.f32 (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 1/2 (pow.f32 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) -1/2) 2)) (/.f32 (*.f32 u1 u1) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))) (/.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) u1))))
(fma.f32 (*.f32 1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) (*.f32 (+.f32 (/.f32 (+.f32 1/2 (*.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))) -1/4)) u1) 1) (/.f32 (cos.f32 (*.f32 (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 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (*.f32 (+.f32 (*.f32 -1/2 (/.f32 (-.f32 1/2 (pow.f32 (*.f32 -1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) 2)) (log.f32 (/.f32 -1 u1)))) 1/3) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (pow.f32 u1 3)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (*.f32 (-.f32 1/2 (pow.f32 (*.f32 -1/2 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) 2)) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))) (pow.f32 u1 2)))) (+.f32 (*.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))) u1))) (*.f32 (sqrt.f32 (log.f32 (/.f32 -1 u1))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32))))))))
(fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (fma.f32 -1/2 (/.f32 (-.f32 1/2 (pow.f32 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) -1/2) 2)) (log.f32 (/.f32 -1 u1))) 1/3) (/.f32 (pow.f32 u1 3) (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2))))) (fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (-.f32 1/2 (pow.f32 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) -1/2) 2)) (/.f32 (*.f32 u1 u1) (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2))))) (fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) u1)) (*.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (log.f32 (/.f32 -1 u1)))))))
(+.f32 (fma.f32 1/2 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) (/.f32 (cos.f32 (*.f32 (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 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1))))) (+.f32 (/.f32 (fma.f32 -1/2 (/.f32 (-.f32 1/2 (pow.f32 (*.f32 (sqrt.f32 (/.f32 1 (log.f32 (/.f32 -1 u1)))) -1/2) 2)) (log.f32 (/.f32 -1 u1))) 1/3) (/.f32 (pow.f32 u1 3) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))) (/.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 (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 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (/.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 (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 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 2)))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(fma.f32 -2 (*.f32 (*.f32 (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 -2 (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2))) 1) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(+.f32 (*.f32 2/3 (*.f32 (pow.f32 u2 4) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 4)))) (+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 2)))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))))
(fma.f32 2/3 (*.f32 (*.f32 (pow.f32 u2 4) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))) (pow.f32 (PI.f32) 4)) (fma.f32 -2 (*.f32 (*.f32 (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/3 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 u2 4))) (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 (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/3 (*.f32 (pow.f32 u2 4) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 4)))) (+.f32 (*.f32 -2 (*.f32 (pow.f32 u2 2) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 2)))) (+.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (*.f32 -4/45 (*.f32 (pow.f32 u2 6) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 6)))))))
(fma.f32 2/3 (*.f32 (*.f32 (pow.f32 u2 4) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))) (pow.f32 (PI.f32) 4)) (+.f32 (fma.f32 -2 (*.f32 (*.f32 (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))))) (*.f32 (*.f32 -4/45 (pow.f32 u2 6)) (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (pow.f32 (PI.f32) 6)))))
(fma.f32 2/3 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 u2 4))) (fma.f32 -2 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (pow.f32 (PI.f32) 2) (*.f32 u2 u2))) (fma.f32 -4/45 (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 u2 6))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))))
(+.f32 (*.f32 (+.f32 (*.f32 -2 (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2))) 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/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 u2 (PI.f32)))))
(*.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 (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 u2 (PI.f32)))))
(*.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 (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 u2 (PI.f32)))))
(*.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 (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 u2 (PI.f32)))))
(*.f32 (cos.f32 (*.f32 (*.f32 u2 (PI.f32)) 2)) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))))
(*.f32 (cos.f32 (*.f32 -2 (*.f32 u2 (*.f32 (cbrt.f32 -1) (PI.f32))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 -2 u2) (*.f32 (PI.f32) (cbrt.f32 -1)))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 u2 (*.f32 (*.f32 (PI.f32) (cbrt.f32 -1)) -2))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (PI.f32) (*.f32 (cbrt.f32 -1) (*.f32 u2 -2)))))
(*.f32 (cos.f32 (*.f32 -2 (*.f32 u2 (*.f32 (cbrt.f32 -1) (PI.f32))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 -2 u2) (*.f32 (PI.f32) (cbrt.f32 -1)))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 u2 (*.f32 (*.f32 (PI.f32) (cbrt.f32 -1)) -2))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (PI.f32) (*.f32 (cbrt.f32 -1) (*.f32 u2 -2)))))
(*.f32 (cos.f32 (*.f32 -2 (*.f32 u2 (*.f32 (cbrt.f32 -1) (PI.f32))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 -2 u2) (*.f32 (PI.f32) (cbrt.f32 -1)))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 u2 (*.f32 (*.f32 (PI.f32) (cbrt.f32 -1)) -2))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (PI.f32) (*.f32 (cbrt.f32 -1) (*.f32 u2 -2)))))
(*.f32 (cos.f32 (*.f32 -2 (*.f32 u2 (*.f32 (cbrt.f32 -1) (PI.f32))))) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 -2 u2) (*.f32 (PI.f32) (cbrt.f32 -1)))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 u2 (*.f32 (*.f32 (PI.f32) (cbrt.f32 -1)) -2))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (PI.f32) (*.f32 (cbrt.f32 -1) (*.f32 u2 -2)))))

prune262.0ms (2.8%)

Pruning

17 alts after pruning (16 fresh and 1 done)

PrunedKeptTotal
New1100110
Fresh01616
Picked011
Done000
Total11017127
Error
0.1b
Counts
127 → 17
Alt Table
StatusErrorProgram
7.6b
(*.f32 (cbrt.f32 (pow.f32 (log1p.f32 u1) 3/2)) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
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 (exp.f32 (log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))) 1))
9.0b
(pow.f32 (sqrt.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))) 2)
14.1b
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
7.7b
(pow.f32 (cbrt.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))) 3)
7.6b
(*.f32 (pow.f32 (log1p.f32 u1) 1/2) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
2.4b
(+.f32 (*.f32 (fma.f32 -2 (*.f32 u2 (*.f32 (pow.f32 (PI.f32) 2) u2)) 1) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))) (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (fma.f32 -4/45 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6)) (*.f32 2/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))))))
0.5b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.f32 (fma.f32 (*.f32 (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2))) (cbrt.f32 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2)) (neg.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (fma.f32 (neg.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))))
0.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.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.f32 (fma.f32 1 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (neg.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (fma.f32 (neg.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (/.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.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))))))
2.1b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (sqrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) (sqrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (log.f32 (pow.f32 (exp.f32 u2) (PI.f32))))))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (pow.f32 (sqrt.f32 (*.f32 (PI.f32) u2)) 2))))
7.7b
(*.f32 (*.f32 (pow.f32 (log1p.f32 u1) 1/4) (pow.f32 (log1p.f32 u1) 1/4)) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
Compiler

Compiled 3564 to 2366 computations (33.6% saved)

localize83.0ms (0.9%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.4b
(*.f32 (PI.f32) u2)
0.5b
(pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)
0.5b
(*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))
29.1b
(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)))))

series15.0ms (0.2%)

Counts
3 → 30
Calls

9 calls:

TimeVariablePointExpression
5.0ms
u2
@inf
(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)))))
4.0ms
u2
@-inf
(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)))))
2.0ms
u2
@0
(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)))))
1.0ms
u2
@0
(*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))
0.0ms
u2
@0
(pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)

rewrite49.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
787×log1p-expm1-u_binary32
787×expm1-log1p-u_binary32
109×add-sqr-sqrt_binary32
105×pow1_binary32
103×*-un-lft-identity_binary32
Iterations

Useful iterations: 1 (0.0ms)

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

simplify45.0ms (0.5%)

Algorithm
egg-herbie
Rules
466×*-commutative_binary32
319×distribute-rgt-out_binary32
317×+-commutative_binary32
258×associate-+l+_binary32
255×unswap-sqr_binary32
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
044444
1122348
2355348
31726348
44049330
54511327
Stop Event
node limit
Counts
97 → 80
Calls
Call 1
Inputs
(*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2))
(+.f32 (*.f32 -1/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))) (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2)))
(+.f32 (*.f32 -1 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2)) (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2))
(+.f32 (*.f32 -1 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2)) (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2))
(+.f32 (*.f32 -1 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2)) (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2))
(+.f32 (*.f32 -1 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2)) (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2))
(+.f32 (*.f32 -1 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2)) (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2))
(+.f32 (*.f32 -1 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2)) (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2))
(+.f32 (*.f32 -1 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2)) (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2))
(+.f32 (*.f32 -1 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2)) (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2))
(pow.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4) 1/3)
(pow.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4) 1/3)
(pow.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4) 1/3)
(pow.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4) 1/3)
(pow.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4) 1/3)
(pow.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4) 1/3)
(pow.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4) 1/3)
(pow.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4) 1/3)
(*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2))
(+.f32 (*.f32 -1/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))) (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2)))
(+.f32 (*.f32 (pow.f32 u2 6) (+.f32 (*.f32 1/60 (pow.f32 (PI.f32) 6)) (*.f32 1/36 (pow.f32 (PI.f32) 6)))) (+.f32 (*.f32 -1/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))) (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2))))
(+.f32 (*.f32 (pow.f32 u2 6) (+.f32 (*.f32 1/60 (pow.f32 (PI.f32) 6)) (*.f32 1/36 (pow.f32 (PI.f32) 6)))) (+.f32 (*.f32 (+.f32 (*.f32 -1/2520 (pow.f32 (PI.f32) 8)) (*.f32 -1/360 (pow.f32 (PI.f32) 8))) (pow.f32 u2 8)) (+.f32 (*.f32 -1/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))) (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2)))))
(pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2)
(pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2)
(pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2)
(pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2)
(pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2)
(pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2)
(pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2)
(pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2)
Outputs
(*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2))
(*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2))
(*.f32 u2 (*.f32 u2 (pow.f32 (PI.f32) 2)))
(+.f32 (*.f32 -1/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))) (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2)))
(fma.f32 -1/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4)) (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2)))
(fma.f32 u2 (*.f32 u2 (pow.f32 (PI.f32) 2)) (*.f32 (pow.f32 u2 4) (*.f32 -1/3 (pow.f32 (PI.f32) 4))))
(fma.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2) (*.f32 -1/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))))
(fma.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2) (*.f32 -1/3 (pow.f32 (*.f32 u2 (PI.f32)) 4)))
(+.f32 (*.f32 -1 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2)) (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2))
(*.f32 0 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2))
0
(+.f32 (*.f32 -1 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2)) (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2))
(*.f32 0 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2))
0
(+.f32 (*.f32 -1 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2)) (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2))
(*.f32 0 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2))
0
(+.f32 (*.f32 -1 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2)) (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2))
(*.f32 0 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2))
0
(+.f32 (*.f32 -1 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2)) (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2))
(*.f32 0 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2))
0
(+.f32 (*.f32 -1 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2)) (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2))
(*.f32 0 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2))
0
(+.f32 (*.f32 -1 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2)) (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2))
(*.f32 0 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2))
0
(+.f32 (*.f32 -1 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2)) (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2))
(*.f32 0 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2))
0
(pow.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4) 1/3)
(cbrt.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4))
(pow.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4) 1/3)
(cbrt.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4))
(pow.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4) 1/3)
(cbrt.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4))
(pow.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4) 1/3)
(cbrt.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4))
(pow.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4) 1/3)
(cbrt.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4))
(pow.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4) 1/3)
(cbrt.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4))
(pow.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4) 1/3)
(cbrt.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4))
(pow.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4) 1/3)
(cbrt.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4))
(*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2))
(*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2))
(*.f32 u2 (*.f32 u2 (pow.f32 (PI.f32) 2)))
(+.f32 (*.f32 -1/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))) (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2)))
(fma.f32 -1/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4)) (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2)))
(fma.f32 u2 (*.f32 u2 (pow.f32 (PI.f32) 2)) (*.f32 (pow.f32 u2 4) (*.f32 -1/3 (pow.f32 (PI.f32) 4))))
(fma.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2) (*.f32 -1/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))))
(fma.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2) (*.f32 -1/3 (pow.f32 (*.f32 u2 (PI.f32)) 4)))
(+.f32 (*.f32 (pow.f32 u2 6) (+.f32 (*.f32 1/60 (pow.f32 (PI.f32) 6)) (*.f32 1/36 (pow.f32 (PI.f32) 6)))) (+.f32 (*.f32 -1/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))) (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2))))
(fma.f32 (pow.f32 u2 6) (*.f32 (pow.f32 (PI.f32) 6) 2/45) (fma.f32 -1/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4)) (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2))))
(fma.f32 u2 (*.f32 u2 (pow.f32 (PI.f32) 2)) (fma.f32 (pow.f32 u2 6) (*.f32 (pow.f32 (PI.f32) 6) 2/45) (*.f32 (pow.f32 u2 4) (*.f32 -1/3 (pow.f32 (PI.f32) 4)))))
(fma.f32 u2 (*.f32 u2 (pow.f32 (PI.f32) 2)) (fma.f32 -1/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4)) (*.f32 (pow.f32 u2 6) (*.f32 (pow.f32 (PI.f32) 6) 2/45))))
(fma.f32 u2 (*.f32 u2 (pow.f32 (PI.f32) 2)) (fma.f32 -1/3 (pow.f32 (*.f32 u2 (PI.f32)) 4) (*.f32 2/45 (pow.f32 (*.f32 u2 (PI.f32)) 6))))
(+.f32 (*.f32 (pow.f32 u2 6) (+.f32 (*.f32 1/60 (pow.f32 (PI.f32) 6)) (*.f32 1/36 (pow.f32 (PI.f32) 6)))) (+.f32 (*.f32 (+.f32 (*.f32 -1/2520 (pow.f32 (PI.f32) 8)) (*.f32 -1/360 (pow.f32 (PI.f32) 8))) (pow.f32 u2 8)) (+.f32 (*.f32 -1/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))) (*.f32 (pow.f32 u2 2) (pow.f32 (PI.f32) 2)))))
(fma.f32 (pow.f32 u2 6) (*.f32 (pow.f32 (PI.f32) 6) 2/45) (fma.f32 (*.f32 (pow.f32 (PI.f32) 8) -1/315) (pow.f32 u2 8) (fma.f32 -1/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4)) (*.f32 (*.f32 u2 u2) (pow.f32 (PI.f32) 2)))))
(fma.f32 (pow.f32 u2 6) (*.f32 (pow.f32 (PI.f32) 6) 2/45) (fma.f32 u2 (*.f32 u2 (pow.f32 (PI.f32) 2)) (fma.f32 -1/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4)) (*.f32 (pow.f32 (PI.f32) 8) (*.f32 (pow.f32 u2 8) -1/315)))))
(fma.f32 (pow.f32 u2 6) (*.f32 (pow.f32 (PI.f32) 6) 2/45) (fma.f32 u2 (*.f32 u2 (pow.f32 (PI.f32) 2)) (fma.f32 (*.f32 (pow.f32 (PI.f32) 8) -1/315) (pow.f32 u2 8) (*.f32 -1/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))))))
(fma.f32 (pow.f32 (PI.f32) 8) (*.f32 (pow.f32 u2 8) -1/315) (fma.f32 u2 (*.f32 u2 (pow.f32 (PI.f32) 2)) (fma.f32 -1/3 (pow.f32 (*.f32 u2 (PI.f32)) 4) (*.f32 2/45 (pow.f32 (*.f32 u2 (PI.f32)) 6)))))
(fma.f32 (pow.f32 (*.f32 u2 (PI.f32)) 6) 2/45 (fma.f32 u2 (*.f32 u2 (pow.f32 (PI.f32) 2)) (fma.f32 (pow.f32 (*.f32 u2 (PI.f32)) 8) -1/315 (*.f32 -1/3 (pow.f32 (*.f32 u2 (PI.f32)) 4)))))
(pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2)
(pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2)
(pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2)
(pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2)
(pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2)
(pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2)
(pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2)
(pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 2)

prune3.8s (41%)

Pruning

18 alts after pruning (17 fresh and 1 done)

PrunedKeptTotal
New5453548
Fresh11415
Picked101
Done011
Total54718565
Error
0.1b
Counts
565 → 18
Alt Table
StatusErrorProgram
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)))) (+.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 (expm1.f32 (log1p.f32 (*.f32 (PI.f32) u2)))) 2)))))))
7.6b
(*.f32 (cbrt.f32 (pow.f32 (log1p.f32 u1) 3/2)) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
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 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 (exp.f32 (log1p.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)))) 1)))) (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 (exp.f32 (log1p.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))) 1))
9.0b
(pow.f32 (sqrt.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))) 2)
14.1b
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
7.7b
(pow.f32 (cbrt.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))) 3)
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.f32 (fma.f32 1 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (neg.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (fma.f32 (neg.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (-.f32 (exp.f32 (log1p.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)))) 1)))))
7.6b
(*.f32 (pow.f32 (log1p.f32 u1) 1/2) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
2.4b
(+.f32 (*.f32 (fma.f32 -2 (*.f32 u2 (*.f32 (pow.f32 (PI.f32) 2) u2)) 1) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))) (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (fma.f32 -4/45 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6)) (*.f32 2/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))))))
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))))))
2.1b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (sqrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) (sqrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (log.f32 (pow.f32 (exp.f32 u2) (PI.f32))))))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (pow.f32 (sqrt.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))
7.7b
(*.f32 (*.f32 (pow.f32 (log1p.f32 u1) 1/4) (pow.f32 (log1p.f32 u1) 1/4)) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
Compiler

Compiled 50585 to 24914 computations (50.7% saved)

localize98.0ms (1.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))
1.0b
(pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)
17.0b
(-.f32 (exp.f32 (log1p.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)))) 1)
29.1b
(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)))))

series37.0ms (0.4%)

Counts
2 → 20
Calls

6 calls:

TimeVariablePointExpression
13.0ms
u2
@-inf
(-.f32 (exp.f32 (log1p.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)))) 1)
13.0ms
u2
@inf
(-.f32 (exp.f32 (log1p.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)))) 1)
9.0ms
u2
@0
(-.f32 (exp.f32 (log1p.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)))) 1)
1.0ms
u2
@0
(pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)
0.0ms
u2
@inf
(pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)

rewrite48.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
893×expm1-log1p-u_binary32
892×log1p-expm1-u_binary32
106×add-sqr-sqrt_binary32
103×pow1_binary32
102×add-log-exp_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01222
124322
2257622
Stop Event
node limit
Counts
2 → 61
Calls
Call 1
Inputs
(-.f32 (exp.f32 (log1p.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)))) 1)
(pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 -1 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4))) (cbrt.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 8))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 8))) (cbrt.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 (PI.f32) u2))) 2) (pow.f32 (cbrt.f32 (sin.f32 (*.f32 (PI.f32) u2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 (pow.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1) 3) -1) (/.f32 1 (+.f32 (pow.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1) 2) (+.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 (pow.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1) 2) -1) (/.f32 1 (+.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 1 1/3) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 8)) 1/3) (cbrt.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1/3) (pow.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 (sqrt.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1)) 1) (-.f32 (sqrt.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (+.f32 (pow.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1) 2) (+.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1) 1)) (+.f32 (pow.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1) 3) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (+.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1) 1) (+.f32 (pow.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1) 2) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1) 3) -1) (+.f32 (pow.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1) 2) (+.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1) 3) -1) (+.f32 (pow.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1) 2) (-.f32 1 (*.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1) 2) -1) (+.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1) 2) -1) (-.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1) -1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (+.f32 (pow.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1) 3) -1)) (neg.f32 (+.f32 (pow.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1) 2) (+.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (+.f32 (pow.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1) 2) -1)) (neg.f32 (+.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 (PI.f32) u2))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 8)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1)) 2) (cbrt.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1)) (sqrt.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 8))) (*.f32 -1 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 8))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 8)) (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 8)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 8)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.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 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 (PI.f32) u2))) 2) 4) (pow.f32 (cbrt.f32 (sin.f32 (*.f32 (PI.f32) u2))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (sqrt.f32 (sin.f32 (*.f32 (PI.f32) u2))) 4) (pow.f32 (sqrt.f32 (sin.f32 (*.f32 (PI.f32) u2))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 8)) 1) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 8)) (cbrt.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 8)))) (cbrt.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 8)) (pow.f32 (cbrt.f32 (sin.f32 (*.f32 (PI.f32) u2))) 2)) (pow.f32 (cbrt.f32 (sin.f32 (*.f32 (PI.f32) u2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 8)) (+.f32 (pow.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1) 3) -1)) (+.f32 (pow.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1) 2) (+.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 8)) (+.f32 (pow.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1) 2) -1)) (+.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 8))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1))))))

simplify27.0ms (0.3%)

Algorithm
egg-herbie
Rules
387×associate-*l*_binary32
376×associate-*r*_binary32
351×associate-+l+_binary32
316×distribute-lft-in_binary32
316×distribute-rgt-in_binary32
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
052368
1141368
2476340
32575311
Stop Event
node limit
Counts
81 → 71
Calls
Call 1
Inputs
(pow.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4) 1/3)
(pow.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4) 1/3)
(pow.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4) 1/3)
(pow.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4) 1/3)
(pow.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4) 1/3)
(pow.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4) 1/3)
(pow.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4) 1/3)
(pow.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4) 1/3)
(*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))
(+.f32 (*.f32 -2/3 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6))) (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4)))
(+.f32 (*.f32 -2/3 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6))) (+.f32 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4)) (*.f32 (pow.f32 u2 8) (+.f32 (*.f32 2 (*.f32 (+.f32 (*.f32 1/60 (pow.f32 (PI.f32) 6)) (*.f32 1/36 (pow.f32 (PI.f32) 6))) (pow.f32 (PI.f32) 2))) (*.f32 1/9 (pow.f32 (PI.f32) 8))))))
(+.f32 (*.f32 -2/3 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6))) (+.f32 (*.f32 (+.f32 (*.f32 2 (*.f32 (+.f32 (*.f32 -1/2520 (pow.f32 (PI.f32) 8)) (*.f32 -1/360 (pow.f32 (PI.f32) 8))) (pow.f32 (PI.f32) 2))) (*.f32 -2/3 (*.f32 (+.f32 (*.f32 1/60 (pow.f32 (PI.f32) 6)) (*.f32 1/36 (pow.f32 (PI.f32) 6))) (pow.f32 (PI.f32) 4)))) (pow.f32 u2 10)) (+.f32 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4)) (*.f32 (pow.f32 u2 8) (+.f32 (*.f32 2 (*.f32 (+.f32 (*.f32 1/60 (pow.f32 (PI.f32) 6)) (*.f32 1/36 (pow.f32 (PI.f32) 6))) (pow.f32 (PI.f32) 2))) (*.f32 1/9 (pow.f32 (PI.f32) 8)))))))
(pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4)
(pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4)
(pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4)
(pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4)
(pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4)
(pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4)
(pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4)
(pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4)
Outputs
(pow.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4) 1/3)
(cbrt.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4))
(pow.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4) 1/3)
(cbrt.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4))
(pow.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4) 1/3)
(cbrt.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4))
(pow.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4) 1/3)
(cbrt.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4))
(pow.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4) 1/3)
(cbrt.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4))
(pow.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4) 1/3)
(cbrt.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4))
(pow.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4) 1/3)
(cbrt.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4))
(pow.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4) 1/3)
(cbrt.f32 (pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4))
(*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))
(+.f32 (*.f32 -2/3 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6))) (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4)))
(fma.f32 -2/3 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6)) (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4)))
(fma.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4) (*.f32 -2/3 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6))))
(fma.f32 (pow.f32 u2 6) (*.f32 -2/3 (pow.f32 (PI.f32) 6)) (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4)))
(+.f32 (*.f32 -2/3 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6))) (+.f32 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4)) (*.f32 (pow.f32 u2 8) (+.f32 (*.f32 2 (*.f32 (+.f32 (*.f32 1/60 (pow.f32 (PI.f32) 6)) (*.f32 1/36 (pow.f32 (PI.f32) 6))) (pow.f32 (PI.f32) 2))) (*.f32 1/9 (pow.f32 (PI.f32) 8))))))
(fma.f32 -2/3 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6)) (fma.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4) (*.f32 (pow.f32 u2 8) (fma.f32 2 (*.f32 (*.f32 (pow.f32 (PI.f32) 6) 2/45) (pow.f32 (PI.f32) 2)) (*.f32 1/9 (pow.f32 (PI.f32) 8))))))
(fma.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4) (fma.f32 (pow.f32 u2 8) (fma.f32 1/9 (pow.f32 (PI.f32) 8) (*.f32 (pow.f32 (PI.f32) 8) 4/45)) (*.f32 -2/3 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6)))))
(fma.f32 (pow.f32 u2 8) (*.f32 (pow.f32 (PI.f32) 8) 1/5) (fma.f32 (pow.f32 u2 6) (*.f32 -2/3 (pow.f32 (PI.f32) 6)) (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))))
(+.f32 (*.f32 -2/3 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6))) (+.f32 (*.f32 (+.f32 (*.f32 2 (*.f32 (+.f32 (*.f32 -1/2520 (pow.f32 (PI.f32) 8)) (*.f32 -1/360 (pow.f32 (PI.f32) 8))) (pow.f32 (PI.f32) 2))) (*.f32 -2/3 (*.f32 (+.f32 (*.f32 1/60 (pow.f32 (PI.f32) 6)) (*.f32 1/36 (pow.f32 (PI.f32) 6))) (pow.f32 (PI.f32) 4)))) (pow.f32 u2 10)) (+.f32 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4)) (*.f32 (pow.f32 u2 8) (+.f32 (*.f32 2 (*.f32 (+.f32 (*.f32 1/60 (pow.f32 (PI.f32) 6)) (*.f32 1/36 (pow.f32 (PI.f32) 6))) (pow.f32 (PI.f32) 2))) (*.f32 1/9 (pow.f32 (PI.f32) 8)))))))
(fma.f32 -2/3 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6)) (fma.f32 (fma.f32 2 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (pow.f32 (PI.f32) 8) -1/315)) (*.f32 -2/3 (*.f32 (pow.f32 (PI.f32) 4) (*.f32 (pow.f32 (PI.f32) 6) 2/45)))) (pow.f32 u2 10) (fma.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4) (*.f32 (pow.f32 u2 8) (fma.f32 2 (*.f32 (*.f32 (pow.f32 (PI.f32) 6) 2/45) (pow.f32 (PI.f32) 2)) (*.f32 1/9 (pow.f32 (PI.f32) 8)))))))
(fma.f32 -2/3 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6)) (fma.f32 (fma.f32 -2/3 (*.f32 (pow.f32 (PI.f32) 4) (*.f32 (pow.f32 (PI.f32) 6) 2/45)) (*.f32 2 (*.f32 (pow.f32 (PI.f32) 8) (*.f32 -1/315 (pow.f32 (PI.f32) 2))))) (pow.f32 u2 10) (fma.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4) (*.f32 (pow.f32 u2 8) (fma.f32 2 (*.f32 (*.f32 (pow.f32 (PI.f32) 6) 2/45) (pow.f32 (PI.f32) 2)) (*.f32 1/9 (pow.f32 (PI.f32) 8)))))))
(fma.f32 -2/3 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6)) (fma.f32 (*.f32 (pow.f32 (PI.f32) 2) (+.f32 (*.f32 (pow.f32 (PI.f32) 8) -2/315) (*.f32 -2/3 (*.f32 (pow.f32 (PI.f32) 8) 2/45)))) (pow.f32 u2 10) (fma.f32 (pow.f32 u2 8) (fma.f32 1/9 (pow.f32 (PI.f32) 8) (*.f32 (pow.f32 (PI.f32) 8) 4/45)) (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4)))))
(fma.f32 (*.f32 (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 (PI.f32) 6)) -34/945) (pow.f32 u2 10) (fma.f32 (pow.f32 u2 8) (*.f32 (pow.f32 (PI.f32) 8) 1/5) (fma.f32 (pow.f32 u2 6) (*.f32 -2/3 (pow.f32 (PI.f32) 6)) (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4)))))
(pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4)
(pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4)
(pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4)
(pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4)
(pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4)
(pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4)
(pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4)
(pow.f32 (sin.f32 (*.f32 u2 (PI.f32))) 4)

prune733.0ms (7.9%)

Pruning

17 alts after pruning (16 fresh and 1 done)

PrunedKeptTotal
New1332135
Fresh21416
Picked011
Done101
Total13617153
Error
0.0b
Counts
153 → 17
Alt Table
StatusErrorProgram
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)))) (+.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 (expm1.f32 (log1p.f32 (*.f32 (PI.f32) u2)))) 2)))))))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (pow.f32 (sqrt.f32 (*.f32 (PI.f32) u2)) 2))))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.f32 (fma.f32 1 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (neg.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (fma.f32 (sqrt.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1)) (sqrt.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1)) -1)))) (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)))))))
7.6b
(*.f32 (cbrt.f32 (pow.f32 (log1p.f32 u1) 3/2)) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
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 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 (exp.f32 (log1p.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)))) 1)))) (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)))))))
14.1b
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
7.7b
(pow.f32 (cbrt.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))) 3)
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.f32 (fma.f32 1 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (neg.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)))))) (fma.f32 (neg.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2))) (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (-.f32 (exp.f32 (log1p.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)))) 1)))))
7.6b
(*.f32 (pow.f32 (log1p.f32 u1) 1/2) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
2.4b
(+.f32 (*.f32 (fma.f32 -2 (*.f32 u2 (*.f32 (pow.f32 (PI.f32) 2) u2)) 1) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))) (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (fma.f32 -4/45 (*.f32 (pow.f32 u2 6) (pow.f32 (PI.f32) 6)) (*.f32 2/3 (*.f32 (pow.f32 u2 4) (pow.f32 (PI.f32) 4))))))
2.1b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (*.f32 (sqrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2)))) (sqrt.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))))
0.4b
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (+.f32 (fma.f32 1 (pow.f32 (cos.f32 (*.f32 (PI.f32) u2)) 2) (neg.f32 (*.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 2)) (fma.f32 (pow.f32 (cbrt.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1)) 2) (cbrt.f32 (+.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 (PI.f32) u2)) 4)) 1)) -1)))) (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)))))))
9.0b
(pow.f32 (sqrt.f32 (*.f32 (sqrt.f32 (log1p.f32 u1)) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 2))))) 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))
7.7b
(*.f32 (*.f32 (pow.f32 (log1p.f32 u1) 1/4) (pow.f32 (log1p.f32 u1) 1/4)) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
Compiler

Compiled 11418 to 6024 computations (47.2% saved)

regimes460.0ms (4.9%)

Accuracy

Total -19.2b remaining (-6229.4%)

Threshold costs -19.2b (-6229.4%)

Counts
67 → 1
Compiler

Compiled 2563 to 1316 computations (48.7% 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
01729
12629
23029
33229
Stop Event
saturated
Calls
Call 1
Inputs
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (cbrt.f32 (*.f32 (pow.f32 (PI.f32) 3) (pow.f32 u2 3))))))
Outputs
(*.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))))))

end286.0ms (3.1%)

Stop Event
fuel
Compiler

Compiled 711 to 389 computations (45.3% saved)

Profiling

Loading profile data...