Details

Time bar (total: 8.9s)

analyze104.0ms (1.2%)

Algorithm
search
Search
TrueOtherFalseIter
0%1.5%98.5%0
0%1.5%98.5%1
0%1.5%98.5%2
0.8%0.8%98.5%3
0.8%0.8%98.5%4
1.2%0.4%98.5%5
1.2%0.4%98.5%6
1.4%0.2%98.5%7
1.4%0.2%98.5%8
1.4%0.1%98.5%9
1.4%0.1%98.5%10
1.5%0%98.5%11
1.5%0%98.5%12
Compiler

Compiled 27 to 21 computations (22.2% saved)

sample1.9s (21.8%)

Results
1.9s8256×body256valid

preprocess231.0ms (2.6%)

Algorithm
egg-herbie
Rules
880×associate--l-_binary32
870×fma-neg_binary32
712×associate--l+_binary32
687×associate-+l-_binary32
600×associate-+l+_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01528
13822
27122
312422
416822
522922
630022
741122
868622
996222
10109922
11129822
12151122
13176122
14182822
15185922
16193822
17235922
18369722
19397222
20412422
21415422
22417422
23417422
24458322
25480922
26484922
27487322
28488922
29488922
30514522
022
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
Outputs
0
1
Call 2
Inputs
(*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4 u)))))
(*.f32 u (log.f32 (/.f32 1 (-.f32 1 (*.f32 4 s)))))
Outputs
(*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4 u)))))
(*.f32 s (neg.f32 (log.f32 (+.f32 1 (*.f32 -4 u)))))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 u (log.f32 (/.f32 1 (-.f32 1 (*.f32 4 s)))))
(*.f32 u (neg.f32 (log.f32 (+.f32 1 (*.f32 -4 s)))))
(*.f32 u (neg.f32 (log1p.f32 (*.f32 s -4))))
(*.f32 (log1p.f32 (*.f32 s -4)) (neg.f32 u))
Compiler

Compiled 14 to 12 computations (14.3% saved)

simplify25.0ms (0.3%)

Algorithm
egg-herbie
Rules
175×fma-neg_binary32
148×fma-def_binary32
47×cancel-sign-sub-inv_binary32
46×sub-neg_binary32
29×distribute-rgt-in_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01014
12411
24111
37011
49611
512611
616611
724011
836311
943311
1051011
1160411
1274311
1385511
1486811
Stop Event
saturated
Counts
1 → 2
Calls
Call 1
Inputs
(*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4 u)))))
Outputs
(*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4 u)))))
(*.f32 s (neg.f32 (log.f32 (+.f32 1 (*.f32 -4 u)))))
(neg.f32 (*.f32 s (log1p.f32 (*.f32 u -4))))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))

eval1.0ms (0%)

Compiler

Compiled 19 to 15 computations (21.1% saved)

prune1.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.2b
Counts
3 → 2
Alt Table
Click to see full alt table
StatusErrorProgram
0.2b
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
11.6b
(*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4 u)))))
Compiler

Compiled 21 to 17 computations (19% saved)

localize39.0ms (0.4%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.2b
(*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4 u)))))
0.2b
(/.f32 1 (-.f32 1 (*.f32 4 u)))
13.7b
(log.f32 (/.f32 1 (-.f32 1 (*.f32 4 u))))
Compiler

Compiled 39 to 31 computations (20.5% saved)

series91.0ms (1%)

Counts
3 → 36
Calls

12 calls:

TimeVariablePointExpression
85.0ms
s
@0
(*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4 u)))))
1.0ms
u
@0
(log.f32 (/.f32 1 (-.f32 1 (*.f32 4 u))))
1.0ms
u
@inf
(log.f32 (/.f32 1 (-.f32 1 (*.f32 4 u))))
1.0ms
u
@-inf
(log.f32 (/.f32 1 (-.f32 1 (*.f32 4 u))))
1.0ms
s
@inf
(*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4 u)))))

rewrite73.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
461×log-prod_binary32
370×prod-diff_binary32
354×exp-prod_binary32
290×prod-exp_binary32
256×pow-prod-down_binary32
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01035
121329
2255127
Stop Event
node limit
Counts
3 → 136
Calls
Call 1
Inputs
(log.f32 (/.f32 1 (-.f32 1 (*.f32 4 u))))
(/.f32 1 (-.f32 1 (*.f32 4 u)))
(*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4 u)))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (neg.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 -1) (log.f32 (/.f32 1 (neg.f32 (fma.f32 u -4 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 -1/2 (log1p.f32 (*.f32 u -4))) (*.f32 -1/2 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 1/3 (neg.f32 (log1p.f32 (*.f32 u -4)))) (log.f32 (cbrt.f32 (pow.f32 (fma.f32 u -4 1) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (cbrt.f32 (pow.f32 (fma.f32 u -4 1) -2))) (*.f32 1/3 (neg.f32 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (pow.f32 (cbrt.f32 (fma.f32 u -4 1)) -2)) (*.f32 1/3 (neg.f32 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (/.f32 1 (-.f32 1 (*.f32 64 (pow.f32 u 3))))) (log1p.f32 (*.f32 (*.f32 4 u) (fma.f32 4 u 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (/.f32 1 (-.f32 1 (*.f32 16 (*.f32 u u))))) (log1p.f32 (*.f32 4 u)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 0 (log1p.f32 (*.f32 u -4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 0 (log.f32 (neg.f32 (neg.f32 (fma.f32 u -4 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (log.f32 -1) (log.f32 (neg.f32 (fma.f32 u -4 1))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (*.f32 -1/2 (log1p.f32 (*.f32 u -4))) (*.f32 1/2 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (log.f32 (pow.f32 (cbrt.f32 (fma.f32 u -4 1)) -2)) (*.f32 1/3 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (neg.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))) (cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2)) (cbrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))) (sqrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 2 (*.f32 -1/2 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 -1 (log1p.f32 (*.f32 u -4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 3 (*.f32 1/3 (neg.f32 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1/3 (log.f32 (pow.f32 (fma.f32 u -4 1) -3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 0 (pow.f32 (log1p.f32 (*.f32 u -4)) 3)) (+.f32 0 (+.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2) (*.f32 0 (log1p.f32 (*.f32 u -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 0 (pow.f32 (log1p.f32 (*.f32 u -4)) 2)) (log1p.f32 (*.f32 u -4)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (E.f32) (log.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (log.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))) 2)) (cbrt.f32 (log.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (exp.f32 (sqrt.f32 (log.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))))) (sqrt.f32 (log.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f32 (log1p.f32 (*.f32 u -4)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f32 (log.f32 (neg.f32 (neg.f32 (fma.f32 u -4 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 3 (log.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (cbrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (sqrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 (log.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (/.f32 1 (fma.f32 u -4 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (pow.f32 (cbrt.f32 (exp.f32 (/.f32 1 (fma.f32 u -4 1)))) 2)) (log.f32 (cbrt.f32 (exp.f32 (/.f32 1 (fma.f32 u -4 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (exp.f32 (/.f32 1 (fma.f32 u -4 1))))) (log.f32 (sqrt.f32 (exp.f32 (/.f32 1 (fma.f32 u -4 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (/.f32 1 (fma.f32 u -4 1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (/.f32 1 (fma.f32 u -4 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (fma.f32 u -4 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (/.f32 1 (fma.f32 u -4 1))) (cbrt.f32 (pow.f32 (fma.f32 u -4 1) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (pow.f32 (fma.f32 u -4 1) -2)) (cbrt.f32 (/.f32 1 (fma.f32 u -4 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (fma.f32 u -4 1) -1/2) (pow.f32 (fma.f32 u -4 1) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 -1 (/.f32 1 (neg.f32 (fma.f32 u -4 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (fma.f32 u -4 1)) -2) (cbrt.f32 (/.f32 1 (fma.f32 u -4 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (-.f32 1 (*.f32 64 (pow.f32 u 3)))) (fma.f32 (*.f32 4 u) (fma.f32 4 u 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (-.f32 1 (*.f32 16 (*.f32 u u)))) (fma.f32 4 u 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (E.f32) (*.f32 -1/2 (log1p.f32 (*.f32 u -4)))) (pow.f32 (E.f32) (*.f32 -1/2 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (E.f32) (log.f32 (cbrt.f32 (pow.f32 (fma.f32 u -4 1) -2)))) (pow.f32 (E.f32) (*.f32 1/3 (neg.f32 (log1p.f32 (*.f32 u -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (fma.f32 u -4 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 1 (fma.f32 u -4 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (E.f32) (neg.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (fma.f32 u -4 1) 2) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (fma.f32 u -4 1) 3) -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (fma.f32 u -4 1) -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (fma.f32 u -4 1) -3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (fma.f32 u -4 1)) -3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (/.f32 1 (fma.f32 u -4 1))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (fma.f32 u -4 1)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (fma.f32 u -4 1) -1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (exp.f32 -1) (log1p.f32 (*.f32 u -4)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (exp.f32 (cbrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))) (cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (exp.f32 (cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2))) (cbrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (exp.f32 (cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2))) (*.f32 (cbrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (exp.f32 (sqrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))) (sqrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (exp.f32 (sqrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))) (*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (+.f32 1 (expm1.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (neg.f32 (neg.f32 (fma.f32 u -4 1))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (E.f32) -1) (log1p.f32 (*.f32 u -4)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (exp.f32 (cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2))) 1) (cbrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (exp.f32 (cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2))) (pow.f32 (cbrt.f32 (cbrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))) 2)) (cbrt.f32 (cbrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (exp.f32 (cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2))) (cbrt.f32 (cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2)))) (cbrt.f32 (cbrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (exp.f32 (cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2))) (cbrt.f32 (sqrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))))) (cbrt.f32 (sqrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (exp.f32 (cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2))) (sqrt.f32 (cbrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))))) (sqrt.f32 (cbrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (exp.f32 (sqrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))) 1) (sqrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (exp.f32 (sqrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))) (cbrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))) (cbrt.f32 (sqrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (exp.f32 (sqrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))) (sqrt.f32 (cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2)))) (sqrt.f32 (cbrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (exp.f32 (sqrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))) (sqrt.f32 (sqrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))))) (sqrt.f32 (sqrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (fma.f32 u -4 1) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (/.f32 1 (fma.f32 u -4 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (/.f32 1 (fma.f32 u -4 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (fma.f32 u -4 1) -3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (/.f32 1 (fma.f32 u -4 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (/.f32 1 (fma.f32 u -4 1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log1p.f32 (*.f32 u -4)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (pow.f32 (fma.f32 u -4 1) -3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 1/3 (neg.f32 (log1p.f32 (*.f32 u -4)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 -1/2 (log1p.f32 (*.f32 u -4))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 (log1p.f32 (*.f32 u -4)) 1) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 (log1p.f32 (*.f32 u -4)) -1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (neg.f32 (*.f32 (log1p.f32 (*.f32 u -4)) 1)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (*.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) s))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (pow.f32 (cbrt.f32 (pow.f32 (fma.f32 u -4 1) (*.f32 -1 s))) 2)) (log.f32 (cbrt.f32 (pow.f32 (fma.f32 u -4 1) (*.f32 -1 s)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (pow.f32 (fma.f32 u -4 1) (*.f32 -1 s)))) (log.f32 (sqrt.f32 (pow.f32 (fma.f32 u -4 1) (*.f32 -1 s)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) s))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) s) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (E.f32) (log.f32 (*.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) s)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) s) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) s) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) s)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) s)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (log.f32 (*.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) s))) 2)) (cbrt.f32 (log.f32 (*.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) s))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (exp.f32 (sqrt.f32 (log.f32 (*.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) s)))) (sqrt.f32 (log.f32 (*.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) s))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f32 (*.f32 s (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) s) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (fma.f32 u -4 1) (*.f32 -1 s)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) s))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) s) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) s)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) s)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) s)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) s)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 3 (log.f32 (*.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) s))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (cbrt.f32 (*.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) s))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (sqrt.f32 (*.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) s))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 (log.f32 (*.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) s)) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (+.f32 (*.f32 (log.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))) 1) (log.f32 s)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (+.f32 (log.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))) (*.f32 (log.f32 s) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (+.f32 (*.f32 (log.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))) 1) (*.f32 (log.f32 s) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (+.f32 (*.f32 (log.f32 s) 1) (log.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (+.f32 (log.f32 s) (*.f32 (log.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (+.f32 (*.f32 (log.f32 s) 1) (*.f32 (log.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))) 1)))))))

simplify72.0ms (0.8%)

Algorithm
egg-herbie
Rules
588×fma-def_binary32
535×associate-*l*_binary32
394×+-commutative_binary32
351×associate-+l+_binary32
314×associate-*r*_binary32
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0107725
1329691
2987661
33115644
47838644
Stop Event
node limit
Counts
172 → 196
Calls
Call 1
Inputs
(*.f32 4 u)
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(+.f32 (*.f32 8 (pow.f32 u 2)) (+.f32 (*.f32 64/3 (pow.f32 u 3)) (*.f32 4 u)))
(+.f32 (*.f32 8 (pow.f32 u 2)) (+.f32 (*.f32 64 (pow.f32 u 4)) (+.f32 (*.f32 64/3 (pow.f32 u 3)) (*.f32 4 u))))
(+.f32 (log.f32 (/.f32 1 u)) (log.f32 -1/4))
(+.f32 (log.f32 -1/4) (+.f32 (log.f32 (/.f32 1 u)) (*.f32 1/4 (/.f32 1 u))))
(+.f32 (*.f32 1/32 (/.f32 1 (pow.f32 u 2))) (+.f32 (log.f32 -1/4) (+.f32 (log.f32 (/.f32 1 u)) (*.f32 1/4 (/.f32 1 u)))))
(+.f32 (*.f32 1/32 (/.f32 1 (pow.f32 u 2))) (+.f32 (log.f32 -1/4) (+.f32 (log.f32 (/.f32 1 u)) (+.f32 (*.f32 1/4 (/.f32 1 u)) (*.f32 1/192 (/.f32 1 (pow.f32 u 3)))))))
(+.f32 (log.f32 (/.f32 -1 u)) (log.f32 1/4))
(+.f32 (*.f32 1/4 (/.f32 1 u)) (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 1/4)))
(+.f32 (*.f32 1/32 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/4 (/.f32 1 u)) (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 1/4))))
(+.f32 (*.f32 1/32 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/4 (/.f32 1 u)) (+.f32 (log.f32 (/.f32 -1 u)) (+.f32 (log.f32 1/4) (*.f32 1/192 (/.f32 1 (pow.f32 u 3)))))))
1
(+.f32 1 (*.f32 4 u))
(+.f32 (*.f32 16 (pow.f32 u 2)) (+.f32 1 (*.f32 4 u)))
(+.f32 (*.f32 16 (pow.f32 u 2)) (+.f32 (*.f32 64 (pow.f32 u 3)) (+.f32 1 (*.f32 4 u))))
(/.f32 -1/4 u)
(neg.f32 (+.f32 (*.f32 1/16 (/.f32 1 (pow.f32 u 2))) (*.f32 1/4 (/.f32 1 u))))
(neg.f32 (+.f32 (*.f32 1/16 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/64 (/.f32 1 (pow.f32 u 3))) (*.f32 1/4 (/.f32 1 u)))))
(neg.f32 (+.f32 (*.f32 1/16 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/64 (/.f32 1 (pow.f32 u 3))) (+.f32 (*.f32 1/256 (/.f32 1 (pow.f32 u 4))) (*.f32 1/4 (/.f32 1 u))))))
(/.f32 -1/4 u)
(neg.f32 (+.f32 (*.f32 1/16 (/.f32 1 (pow.f32 u 2))) (*.f32 1/4 (/.f32 1 u))))
(neg.f32 (+.f32 (*.f32 1/16 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/64 (/.f32 1 (pow.f32 u 3))) (*.f32 1/4 (/.f32 1 u)))))
(neg.f32 (+.f32 (*.f32 1/16 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/64 (/.f32 1 (pow.f32 u 3))) (+.f32 (*.f32 1/256 (/.f32 1 (pow.f32 u 4))) (*.f32 1/4 (/.f32 1 u))))))
(*.f32 4 (*.f32 s u))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (+.f32 (*.f32 8 (*.f32 s (pow.f32 u 2))) (*.f32 64 (*.f32 s (pow.f32 u 4))))))
(*.f32 s (+.f32 (log.f32 (/.f32 1 u)) (log.f32 -1/4)))
(+.f32 (*.f32 s (+.f32 (log.f32 (/.f32 1 u)) (log.f32 -1/4))) (*.f32 1/4 (/.f32 s u)))
(+.f32 (*.f32 1/32 (/.f32 s (pow.f32 u 2))) (+.f32 (*.f32 s (+.f32 (log.f32 (/.f32 1 u)) (log.f32 -1/4))) (*.f32 1/4 (/.f32 s u))))
(+.f32 (*.f32 1/32 (/.f32 s (pow.f32 u 2))) (+.f32 (*.f32 s (+.f32 (log.f32 (/.f32 1 u)) (log.f32 -1/4))) (+.f32 (*.f32 1/192 (/.f32 s (pow.f32 u 3))) (*.f32 1/4 (/.f32 s u)))))
(*.f32 s (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 1/4)))
(+.f32 (*.f32 1/4 (/.f32 s u)) (*.f32 s (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 1/4))))
(+.f32 (*.f32 1/32 (/.f32 s (pow.f32 u 2))) (+.f32 (*.f32 1/4 (/.f32 s u)) (*.f32 s (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 1/4)))))
(+.f32 (*.f32 1/32 (/.f32 s (pow.f32 u 2))) (+.f32 (*.f32 1/192 (/.f32 s (pow.f32 u 3))) (+.f32 (*.f32 1/4 (/.f32 s u)) (*.f32 s (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 1/4))))))
Outputs
(*.f32 4 u)
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(fma.f32 8 (*.f32 u u) (*.f32 4 u))
(fma.f32 4 u (*.f32 8 (*.f32 u u)))
(*.f32 u (+.f32 4 (*.f32 u 8)))
(+.f32 (*.f32 8 (pow.f32 u 2)) (+.f32 (*.f32 64/3 (pow.f32 u 3)) (*.f32 4 u)))
(fma.f32 8 (*.f32 u u) (fma.f32 64/3 (pow.f32 u 3) (*.f32 4 u)))
(fma.f32 8 (*.f32 u u) (fma.f32 4 u (*.f32 64/3 (pow.f32 u 3))))
(fma.f32 4 u (*.f32 (*.f32 u u) (+.f32 8 (*.f32 u 64/3))))
(*.f32 u (+.f32 4 (*.f32 u (+.f32 8 (*.f32 u 64/3)))))
(+.f32 (*.f32 8 (pow.f32 u 2)) (+.f32 (*.f32 64 (pow.f32 u 4)) (+.f32 (*.f32 64/3 (pow.f32 u 3)) (*.f32 4 u))))
(fma.f32 8 (*.f32 u u) (fma.f32 64 (pow.f32 u 4) (fma.f32 64/3 (pow.f32 u 3) (*.f32 4 u))))
(fma.f32 8 (*.f32 u u) (fma.f32 64 (pow.f32 u 4) (fma.f32 4 u (*.f32 64/3 (pow.f32 u 3)))))
(fma.f32 64 (pow.f32 u 4) (fma.f32 4 u (*.f32 (*.f32 u u) (+.f32 8 (*.f32 u 64/3)))))
(fma.f32 64 (pow.f32 u 4) (*.f32 u (+.f32 4 (*.f32 u (+.f32 8 (*.f32 u 64/3))))))
(+.f32 (log.f32 (/.f32 1 u)) (log.f32 -1/4))
(+.f32 (neg.f32 (log.f32 u)) (log.f32 -1/4))
(-.f32 (log.f32 -1/4) (log.f32 u))
(+.f32 (log.f32 -1/4) (+.f32 (log.f32 (/.f32 1 u)) (*.f32 1/4 (/.f32 1 u))))
(+.f32 (log.f32 -1/4) (+.f32 (neg.f32 (log.f32 u)) (/.f32 1/4 u)))
(+.f32 (log.f32 -1/4) (-.f32 (/.f32 1/4 u) (log.f32 u)))
(-.f32 (log.f32 -1/4) (+.f32 (log.f32 u) (/.f32 -1/4 u)))
(+.f32 (*.f32 1/32 (/.f32 1 (pow.f32 u 2))) (+.f32 (log.f32 -1/4) (+.f32 (log.f32 (/.f32 1 u)) (*.f32 1/4 (/.f32 1 u)))))
(+.f32 (+.f32 (log.f32 -1/4) (+.f32 (neg.f32 (log.f32 u)) (/.f32 1/4 u))) (/.f32 1/32 (*.f32 u u)))
(+.f32 (-.f32 (log.f32 -1/4) (log.f32 u)) (+.f32 (/.f32 1/4 u) (/.f32 1/32 (*.f32 u u))))
(+.f32 (log.f32 -1/4) (+.f32 (-.f32 (/.f32 1/4 u) (log.f32 u)) (/.f32 (/.f32 1/32 u) u)))
(+.f32 (*.f32 1/32 (/.f32 1 (pow.f32 u 2))) (+.f32 (log.f32 -1/4) (+.f32 (log.f32 (/.f32 1 u)) (+.f32 (*.f32 1/4 (/.f32 1 u)) (*.f32 1/192 (/.f32 1 (pow.f32 u 3)))))))
(+.f32 (+.f32 (/.f32 1/32 (*.f32 u u)) (log.f32 -1/4)) (+.f32 (+.f32 (neg.f32 (log.f32 u)) (/.f32 1/4 u)) (/.f32 1/192 (pow.f32 u 3))))
(+.f32 (log.f32 -1/4) (+.f32 (-.f32 (+.f32 (/.f32 1/4 u) (/.f32 1/192 (pow.f32 u 3))) (log.f32 u)) (/.f32 1/32 (*.f32 u u))))
(+.f32 (-.f32 (log.f32 -1/4) (+.f32 (log.f32 u) (/.f32 -1/4 u))) (+.f32 (/.f32 1/192 (pow.f32 u 3)) (/.f32 (/.f32 1/32 u) u)))
(+.f32 (log.f32 -1/4) (-.f32 (/.f32 1/192 (pow.f32 u 3)) (-.f32 (+.f32 (log.f32 u) (/.f32 -1/4 u)) (/.f32 1/32 (*.f32 u u)))))
(+.f32 (log.f32 (/.f32 -1 u)) (log.f32 1/4))
(+.f32 (*.f32 1/4 (/.f32 1 u)) (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 1/4)))
(+.f32 (/.f32 1/4 u) (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 1/4)))
(+.f32 (*.f32 1/32 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/4 (/.f32 1 u)) (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 1/4))))
(+.f32 (+.f32 (/.f32 1/32 (*.f32 u u)) (/.f32 1/4 u)) (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 1/4)))
(+.f32 (/.f32 1/4 u) (+.f32 (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 1/4)) (/.f32 1/32 (*.f32 u u))))
(+.f32 (log.f32 (/.f32 -1 u)) (+.f32 (+.f32 (/.f32 1/4 u) (log.f32 1/4)) (/.f32 (/.f32 1/32 u) u)))
(+.f32 (log.f32 (/.f32 -1 u)) (+.f32 (/.f32 1/32 (*.f32 u u)) (+.f32 (/.f32 1/4 u) (log.f32 1/4))))
(+.f32 (*.f32 1/32 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/4 (/.f32 1 u)) (+.f32 (log.f32 (/.f32 -1 u)) (+.f32 (log.f32 1/4) (*.f32 1/192 (/.f32 1 (pow.f32 u 3)))))))
(+.f32 (+.f32 (/.f32 1/32 (*.f32 u u)) (/.f32 1/4 u)) (+.f32 (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 1/4)) (/.f32 1/192 (pow.f32 u 3))))
(+.f32 (/.f32 1/32 (*.f32 u u)) (+.f32 (/.f32 1/4 u) (+.f32 (/.f32 1/192 (pow.f32 u 3)) (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 1/4)))))
(+.f32 (/.f32 1/4 u) (+.f32 (log.f32 (/.f32 -1 u)) (+.f32 (/.f32 (/.f32 1/32 u) u) (+.f32 (/.f32 1/192 (pow.f32 u 3)) (log.f32 1/4)))))
(+.f32 (/.f32 1/4 u) (+.f32 (log.f32 (/.f32 -1 u)) (+.f32 (/.f32 1/192 (pow.f32 u 3)) (+.f32 (/.f32 1/32 (*.f32 u u)) (log.f32 1/4)))))
1
(+.f32 1 (*.f32 4 u))
(+.f32 (*.f32 4 u) 1)
(fma.f32 4 u 1)
(+.f32 (*.f32 16 (pow.f32 u 2)) (+.f32 1 (*.f32 4 u)))
(fma.f32 16 (*.f32 u u) (+.f32 (*.f32 4 u) 1))
(fma.f32 (*.f32 u u) 16 (fma.f32 4 u 1))
(fma.f32 4 u (fma.f32 u (*.f32 u 16) 1))
(+.f32 (*.f32 16 (pow.f32 u 2)) (+.f32 (*.f32 64 (pow.f32 u 3)) (+.f32 1 (*.f32 4 u))))
(fma.f32 16 (*.f32 u u) (fma.f32 64 (pow.f32 u 3) (+.f32 (*.f32 4 u) 1)))
(fma.f32 (*.f32 u u) 16 (fma.f32 (pow.f32 u 3) 64 (fma.f32 4 u 1)))
(fma.f32 u (*.f32 u 16) (fma.f32 4 u (fma.f32 (pow.f32 u 3) 64 1)))
(+.f32 1 (*.f32 u (+.f32 4 (*.f32 u (+.f32 16 (*.f32 u 64))))))
(/.f32 -1/4 u)
(neg.f32 (+.f32 (*.f32 1/16 (/.f32 1 (pow.f32 u 2))) (*.f32 1/4 (/.f32 1 u))))
(neg.f32 (+.f32 (/.f32 1/4 u) (/.f32 1/16 (*.f32 u u))))
(+.f32 (/.f32 -1/16 (*.f32 u u)) (/.f32 -1/4 u))
(-.f32 (/.f32 -1/4 u) (/.f32 1/16 (*.f32 u u)))
(neg.f32 (+.f32 (*.f32 1/16 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/64 (/.f32 1 (pow.f32 u 3))) (*.f32 1/4 (/.f32 1 u)))))
(neg.f32 (+.f32 (/.f32 1/16 (*.f32 u u)) (+.f32 (/.f32 1/4 u) (/.f32 1/64 (pow.f32 u 3)))))
(-.f32 (/.f32 -1/16 (*.f32 u u)) (+.f32 (/.f32 1/4 u) (/.f32 1/64 (pow.f32 u 3))))
(+.f32 (+.f32 (/.f32 -1/16 (*.f32 u u)) (/.f32 -1/4 u)) (/.f32 -1/64 (pow.f32 u 3)))
(+.f32 (-.f32 (/.f32 -1/4 u) (/.f32 1/16 (*.f32 u u))) (/.f32 -1/64 (pow.f32 u 3)))
(neg.f32 (+.f32 (*.f32 1/16 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/64 (/.f32 1 (pow.f32 u 3))) (+.f32 (*.f32 1/256 (/.f32 1 (pow.f32 u 4))) (*.f32 1/4 (/.f32 1 u))))))
(neg.f32 (+.f32 (/.f32 1/16 (*.f32 u u)) (+.f32 (/.f32 1/64 (pow.f32 u 3)) (+.f32 (/.f32 1/4 u) (/.f32 1/256 (pow.f32 u 4))))))
(-.f32 (/.f32 -1/16 (*.f32 u u)) (+.f32 (/.f32 1/64 (pow.f32 u 3)) (+.f32 (/.f32 1/4 u) (/.f32 1/256 (pow.f32 u 4)))))
(+.f32 (/.f32 -1/16 (*.f32 u u)) (-.f32 (/.f32 -1/4 u) (+.f32 (/.f32 1/64 (pow.f32 u 3)) (/.f32 1/256 (pow.f32 u 4)))))
(+.f32 (+.f32 (/.f32 -1/4 u) (/.f32 -1/64 (pow.f32 u 3))) (-.f32 (/.f32 -1/256 (pow.f32 u 4)) (/.f32 1/16 (*.f32 u u))))
(+.f32 (+.f32 (/.f32 -1/4 u) (/.f32 -1/64 (pow.f32 u 3))) (+.f32 (/.f32 -1/16 (*.f32 u u)) (/.f32 -1/256 (pow.f32 u 4))))
(/.f32 -1/4 u)
(neg.f32 (+.f32 (*.f32 1/16 (/.f32 1 (pow.f32 u 2))) (*.f32 1/4 (/.f32 1 u))))
(neg.f32 (+.f32 (/.f32 1/4 u) (/.f32 1/16 (*.f32 u u))))
(+.f32 (/.f32 -1/16 (*.f32 u u)) (/.f32 -1/4 u))
(-.f32 (/.f32 -1/4 u) (/.f32 1/16 (*.f32 u u)))
(neg.f32 (+.f32 (*.f32 1/16 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/64 (/.f32 1 (pow.f32 u 3))) (*.f32 1/4 (/.f32 1 u)))))
(neg.f32 (+.f32 (/.f32 1/16 (*.f32 u u)) (+.f32 (/.f32 1/4 u) (/.f32 1/64 (pow.f32 u 3)))))
(-.f32 (/.f32 -1/16 (*.f32 u u)) (+.f32 (/.f32 1/4 u) (/.f32 1/64 (pow.f32 u 3))))
(+.f32 (+.f32 (/.f32 -1/16 (*.f32 u u)) (/.f32 -1/4 u)) (/.f32 -1/64 (pow.f32 u 3)))
(+.f32 (-.f32 (/.f32 -1/4 u) (/.f32 1/16 (*.f32 u u))) (/.f32 -1/64 (pow.f32 u 3)))
(neg.f32 (+.f32 (*.f32 1/16 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/64 (/.f32 1 (pow.f32 u 3))) (+.f32 (*.f32 1/256 (/.f32 1 (pow.f32 u 4))) (*.f32 1/4 (/.f32 1 u))))))
(neg.f32 (+.f32 (/.f32 1/16 (*.f32 u u)) (+.f32 (/.f32 1/64 (pow.f32 u 3)) (+.f32 (/.f32 1/4 u) (/.f32 1/256 (pow.f32 u 4))))))
(-.f32 (/.f32 -1/16 (*.f32 u u)) (+.f32 (/.f32 1/64 (pow.f32 u 3)) (+.f32 (/.f32 1/4 u) (/.f32 1/256 (pow.f32 u 4)))))
(+.f32 (/.f32 -1/16 (*.f32 u u)) (-.f32 (/.f32 -1/4 u) (+.f32 (/.f32 1/64 (pow.f32 u 3)) (/.f32 1/256 (pow.f32 u 4)))))
(+.f32 (+.f32 (/.f32 -1/4 u) (/.f32 -1/64 (pow.f32 u 3))) (-.f32 (/.f32 -1/256 (pow.f32 u 4)) (/.f32 1/16 (*.f32 u u))))
(+.f32 (+.f32 (/.f32 -1/4 u) (/.f32 -1/64 (pow.f32 u 3))) (+.f32 (/.f32 -1/16 (*.f32 u u)) (/.f32 -1/256 (pow.f32 u 4))))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 u s))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(fma.f32 4 (*.f32 u s) (*.f32 (*.f32 8 s) (*.f32 u u)))
(fma.f32 4 (*.f32 u s) (*.f32 8 (*.f32 (*.f32 u u) s)))
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u 8))))
(*.f32 (*.f32 u s) (+.f32 4 (*.f32 u 8)))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
(fma.f32 64/3 (*.f32 (pow.f32 u 3) s) (fma.f32 4 (*.f32 u s) (*.f32 (*.f32 8 s) (*.f32 u u))))
(fma.f32 64/3 (*.f32 (pow.f32 u 3) s) (fma.f32 4 (*.f32 u s) (*.f32 8 (*.f32 (*.f32 u u) s))))
(fma.f32 4 (*.f32 u s) (*.f32 s (*.f32 (*.f32 u u) (+.f32 8 (*.f32 u 64/3)))))
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u (+.f32 8 (*.f32 u 64/3))))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (+.f32 (*.f32 8 (*.f32 s (pow.f32 u 2))) (*.f32 64 (*.f32 s (pow.f32 u 4))))))
(fma.f32 64/3 (*.f32 (pow.f32 u 3) s) (fma.f32 4 (*.f32 u s) (fma.f32 8 (*.f32 (*.f32 u u) s) (*.f32 64 (*.f32 (pow.f32 u 4) s)))))
(+.f32 (*.f32 s (*.f32 u (+.f32 4 (*.f32 u 8)))) (*.f32 s (fma.f32 64 (pow.f32 u 4) (*.f32 64/3 (pow.f32 u 3)))))
(*.f32 s (fma.f32 64 (pow.f32 u 4) (*.f32 u (+.f32 4 (*.f32 u (+.f32 8 (*.f32 u 64/3)))))))
(*.f32 s (+.f32 (log.f32 (/.f32 1 u)) (log.f32 -1/4)))
(*.f32 (+.f32 (neg.f32 (log.f32 u)) (log.f32 -1/4)) s)
(*.f32 (-.f32 (log.f32 -1/4) (log.f32 u)) s)
(+.f32 (*.f32 s (+.f32 (log.f32 (/.f32 1 u)) (log.f32 -1/4))) (*.f32 1/4 (/.f32 s u)))
(fma.f32 s (+.f32 (neg.f32 (log.f32 u)) (log.f32 -1/4)) (*.f32 1/4 (/.f32 s u)))
(fma.f32 (-.f32 (log.f32 -1/4) (log.f32 u)) s (*.f32 1/4 (/.f32 s u)))
(*.f32 s (-.f32 (log.f32 -1/4) (+.f32 (log.f32 u) (/.f32 -1/4 u))))
(+.f32 (*.f32 1/32 (/.f32 s (pow.f32 u 2))) (+.f32 (*.f32 s (+.f32 (log.f32 (/.f32 1 u)) (log.f32 -1/4))) (*.f32 1/4 (/.f32 s u))))
(fma.f32 1/32 (/.f32 s (*.f32 u u)) (fma.f32 s (+.f32 (neg.f32 (log.f32 u)) (log.f32 -1/4)) (*.f32 1/4 (/.f32 s u))))
(fma.f32 1/32 (/.f32 s (*.f32 u u)) (fma.f32 (-.f32 (log.f32 -1/4) (log.f32 u)) s (*.f32 1/4 (/.f32 s u))))
(fma.f32 (-.f32 (log.f32 -1/4) (log.f32 u)) s (*.f32 (/.f32 s u) (+.f32 1/4 (/.f32 1/32 u))))
(+.f32 (*.f32 1/32 (/.f32 s (pow.f32 u 2))) (+.f32 (*.f32 s (+.f32 (log.f32 (/.f32 1 u)) (log.f32 -1/4))) (+.f32 (*.f32 1/192 (/.f32 s (pow.f32 u 3))) (*.f32 1/4 (/.f32 s u)))))
(fma.f32 1/32 (/.f32 s (*.f32 u u)) (fma.f32 s (+.f32 (neg.f32 (log.f32 u)) (log.f32 -1/4)) (fma.f32 1/192 (/.f32 s (pow.f32 u 3)) (*.f32 1/4 (/.f32 s u)))))
(fma.f32 1/32 (/.f32 s (*.f32 u u)) (fma.f32 (-.f32 (log.f32 -1/4) (log.f32 u)) s (fma.f32 1/4 (/.f32 s u) (*.f32 1/192 (/.f32 s (pow.f32 u 3))))))
(fma.f32 (-.f32 (log.f32 -1/4) (log.f32 u)) s (+.f32 (*.f32 (/.f32 1/192 (pow.f32 u 3)) s) (*.f32 (/.f32 s u) (+.f32 1/4 (/.f32 1/32 u)))))
(fma.f32 (-.f32 (log.f32 -1/4) (log.f32 u)) s (*.f32 (/.f32 s u) (+.f32 1/4 (+.f32 (/.f32 1/192 (*.f32 u u)) (/.f32 1/32 u)))))
(*.f32 s (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 1/4)))
(*.f32 (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 1/4)) s)
(+.f32 (*.f32 1/4 (/.f32 s u)) (*.f32 s (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 1/4))))
(fma.f32 1/4 (/.f32 s u) (*.f32 (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 1/4)) s))
(fma.f32 (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 1/4)) s (*.f32 1/4 (/.f32 s u)))
(*.f32 s (+.f32 (/.f32 1/4 u) (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 1/4))))
(+.f32 (*.f32 1/32 (/.f32 s (pow.f32 u 2))) (+.f32 (*.f32 1/4 (/.f32 s u)) (*.f32 s (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 1/4)))))
(fma.f32 1/32 (/.f32 s (*.f32 u u)) (fma.f32 1/4 (/.f32 s u) (*.f32 (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 1/4)) s)))
(fma.f32 (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 1/4)) s (*.f32 (/.f32 s u) (+.f32 1/4 (/.f32 1/32 u))))
(+.f32 (*.f32 1/32 (/.f32 s (pow.f32 u 2))) (+.f32 (*.f32 1/192 (/.f32 s (pow.f32 u 3))) (+.f32 (*.f32 1/4 (/.f32 s u)) (*.f32 s (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 1/4))))))
(fma.f32 1/32 (/.f32 s (*.f32 u u)) (fma.f32 1/192 (/.f32 s (pow.f32 u 3)) (fma.f32 1/4 (/.f32 s u) (*.f32 (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 1/4)) s))))
(fma.f32 1/192 (/.f32 s (pow.f32 u 3)) (fma.f32 (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 1/4)) s (*.f32 (/.f32 s u) (+.f32 1/4 (/.f32 1/32 u)))))

localize27.0ms (0.3%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(log1p.f32 (*.f32 u -4))
0.2b
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
Compiler

Compiled 24 to 17 computations (29.2% saved)

series26.0ms (0.3%)

Counts
2 → 36
Calls

9 calls:

TimeVariablePointExpression
22.0ms
s
@0
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
1.0ms
s
@inf
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
1.0ms
u
@inf
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
1.0ms
u
@-inf
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
1.0ms
u
@0
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))

rewrite69.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
641×pow1_binary32
592×add-log-exp_binary32
591×expm1-log1p-u_binary32
590×log1p-expm1-u_binary32
580×add-exp-log_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0817
116215
2193915
Stop Event
node limit
Counts
2 → 43
Calls
Call 1
Inputs
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
(log1p.f32 (*.f32 u -4))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f32 0 (*.f32 s (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (*.f32 s (log1p.f32 (*.f32 u -4)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 s (log1p.f32 (*.f32 u -4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 s (log1p.f32 (*.f32 u -4))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 s (log1p.f32 (*.f32 u -4)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 s (log1p.f32 (*.f32 u -4)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f32 (*.f32 s (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 s (log1p.f32 (*.f32 u -4))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (+.f32 (*.f32 u -4) 1) s))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 s (log1p.f32 (*.f32 u -4))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 3) (pow.f32 s 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 s 3) (pow.f32 (log1p.f32 (*.f32 u -4)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 s (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 s (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 s (log1p.f32 (*.f32 u -4)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (log1p.f32 (*.f32 u -4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 0 (log1p.f32 (*.f32 u -4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (log1p.f32 (*.f32 u -4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (log1p.f32 (*.f32 u -4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (log1p.f32 (*.f32 u -4)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (log1p.f32 (*.f32 u -4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) (pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 2) (cbrt.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 2) (neg.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (log1p.f32 (*.f32 u -4))) (sqrt.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (log1p.f32 (*.f32 u -4))) (neg.f32 (sqrt.f32 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 -1 (log1p.f32 (*.f32 u -4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (neg.f32 (pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 2)) (cbrt.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (neg.f32 (sqrt.f32 (log1p.f32 (*.f32 u -4)))) (sqrt.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 -1 (pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 2)) (cbrt.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 -1 (sqrt.f32 (log1p.f32 (*.f32 u -4)))) (sqrt.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 0 (pow.f32 (log1p.f32 (*.f32 u -4)) 3)) (+.f32 0 (+.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2) (*.f32 0 (log1p.f32 (*.f32 u -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 0 (pow.f32 (log1p.f32 (*.f32 u -4)) 2)) (log1p.f32 (*.f32 u -4)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (log1p.f32 (*.f32 u -4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (log1p.f32 (*.f32 u -4))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f32 (log1p.f32 (*.f32 u -4)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 (*.f32 u -4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (log1p.f32 (*.f32 u -4))))))))

simplify55.0ms (0.6%)

Algorithm
egg-herbie
Rules
549×associate-*l*_binary32
510×fma-def_binary32
470×associate-+l-_binary32
400×associate-*r*_binary32
369×fma-neg_binary32
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
095700
1291662
2864642
32825609
Stop Event
node limit
Counts
79 → 93
Calls
Call 1
Inputs
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4 u)))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4 u)))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4 u)))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4 u)))))
(*.f32 4 (*.f32 s u))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (+.f32 (*.f32 8 (*.f32 s (pow.f32 u 2))) (*.f32 64 (*.f32 s (pow.f32 u 4))))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))
(+.f32 (*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (*.f32 1/4 (/.f32 s u)))
(+.f32 (*.f32 1/32 (/.f32 s (pow.f32 u 2))) (+.f32 (*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (*.f32 1/4 (/.f32 s u))))
(+.f32 (*.f32 1/32 (/.f32 s (pow.f32 u 2))) (+.f32 (*.f32 1/192 (/.f32 s (pow.f32 u 3))) (+.f32 (*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (*.f32 1/4 (/.f32 s u)))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))
(+.f32 (*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (*.f32 1/4 (/.f32 s u)))
(+.f32 (*.f32 1/32 (/.f32 s (pow.f32 u 2))) (+.f32 (*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (*.f32 1/4 (/.f32 s u))))
(+.f32 (*.f32 1/32 (/.f32 s (pow.f32 u 2))) (+.f32 (*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (+.f32 (*.f32 1/192 (/.f32 s (pow.f32 u 3))) (*.f32 1/4 (/.f32 s u)))))
(*.f32 -4 u)
(+.f32 (*.f32 -4 u) (*.f32 -8 (pow.f32 u 2)))
(+.f32 (*.f32 -4 u) (+.f32 (*.f32 -8 (pow.f32 u 2)) (*.f32 -64/3 (pow.f32 u 3))))
(+.f32 (*.f32 -4 u) (+.f32 (*.f32 -8 (pow.f32 u 2)) (+.f32 (*.f32 -64 (pow.f32 u 4)) (*.f32 -64/3 (pow.f32 u 3)))))
(+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) (*.f32 1/4 (/.f32 1 u)))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) (+.f32 (*.f32 1/32 (/.f32 1 (pow.f32 u 2))) (*.f32 1/4 (/.f32 1 u))))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) (+.f32 (*.f32 1/32 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/4 (/.f32 1 u)) (*.f32 1/192 (/.f32 1 (pow.f32 u 3))))))
(+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) (*.f32 1/4 (/.f32 1 u)))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) (+.f32 (*.f32 1/32 (/.f32 1 (pow.f32 u 2))) (*.f32 1/4 (/.f32 1 u))))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) (+.f32 (*.f32 1/32 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/4 (/.f32 1 u)) (*.f32 1/192 (/.f32 1 (pow.f32 u 3))))))
Outputs
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(neg.f32 (*.f32 s (log1p.f32 (*.f32 -4 u))))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 -4 u))))
(*.f32 (log1p.f32 (*.f32 -4 u)) (neg.f32 s))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(neg.f32 (*.f32 s (log1p.f32 (*.f32 -4 u))))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 -4 u))))
(*.f32 (log1p.f32 (*.f32 -4 u)) (neg.f32 s))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(neg.f32 (*.f32 s (log1p.f32 (*.f32 -4 u))))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 -4 u))))
(*.f32 (log1p.f32 (*.f32 -4 u)) (neg.f32 s))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(neg.f32 (*.f32 s (log1p.f32 (*.f32 -4 u))))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 -4 u))))
(*.f32 (log1p.f32 (*.f32 -4 u)) (neg.f32 s))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(neg.f32 (*.f32 s (log1p.f32 (*.f32 -4 u))))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 -4 u))))
(*.f32 (log1p.f32 (*.f32 -4 u)) (neg.f32 s))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(neg.f32 (*.f32 s (log1p.f32 (*.f32 -4 u))))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 -4 u))))
(*.f32 (log1p.f32 (*.f32 -4 u)) (neg.f32 s))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(neg.f32 (*.f32 s (log1p.f32 (*.f32 -4 u))))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 -4 u))))
(*.f32 (log1p.f32 (*.f32 -4 u)) (neg.f32 s))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(neg.f32 (*.f32 s (log1p.f32 (*.f32 -4 u))))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 -4 u))))
(*.f32 (log1p.f32 (*.f32 -4 u)) (neg.f32 s))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4 u)))))
(neg.f32 (*.f32 s (log1p.f32 (*.f32 -4 u))))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 -4 u))))
(*.f32 (log1p.f32 (*.f32 -4 u)) (neg.f32 s))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4 u)))))
(neg.f32 (*.f32 s (log1p.f32 (*.f32 -4 u))))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 -4 u))))
(*.f32 (log1p.f32 (*.f32 -4 u)) (neg.f32 s))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4 u)))))
(neg.f32 (*.f32 s (log1p.f32 (*.f32 -4 u))))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 -4 u))))
(*.f32 (log1p.f32 (*.f32 -4 u)) (neg.f32 s))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4 u)))))
(neg.f32 (*.f32 s (log1p.f32 (*.f32 -4 u))))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 -4 u))))
(*.f32 (log1p.f32 (*.f32 -4 u)) (neg.f32 s))
(*.f32 4 (*.f32 s u))
(*.f32 s (*.f32 u 4))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(fma.f32 4 (*.f32 s u) (*.f32 (*.f32 8 s) (*.f32 u u)))
(fma.f32 4 (*.f32 s u) (*.f32 s (*.f32 (*.f32 u u) 8)))
(*.f32 s (+.f32 (*.f32 u 4) (*.f32 u (*.f32 u 8))))
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u 8))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
(fma.f32 64/3 (*.f32 s (pow.f32 u 3)) (fma.f32 4 (*.f32 s u) (*.f32 (*.f32 8 s) (*.f32 u u))))
(fma.f32 64/3 (*.f32 s (pow.f32 u 3)) (fma.f32 4 (*.f32 s u) (*.f32 s (*.f32 (*.f32 u u) 8))))
(fma.f32 s (*.f32 u 4) (*.f32 (*.f32 u u) (+.f32 (*.f32 s 8) (*.f32 s (*.f32 64/3 u)))))
(*.f32 s (+.f32 (*.f32 u 4) (*.f32 (*.f32 u u) (+.f32 (*.f32 64/3 u) 8))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (+.f32 (*.f32 8 (*.f32 s (pow.f32 u 2))) (*.f32 64 (*.f32 s (pow.f32 u 4))))))
(fma.f32 64/3 (*.f32 s (pow.f32 u 3)) (fma.f32 4 (*.f32 s u) (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 64 (*.f32 s (pow.f32 u 4))))))
(fma.f32 s (*.f32 64/3 (pow.f32 u 3)) (fma.f32 s (*.f32 u (*.f32 u 8)) (*.f32 s (+.f32 (*.f32 u 4) (*.f32 64 (pow.f32 u 4))))))
(*.f32 s (+.f32 (*.f32 (pow.f32 u 3) (+.f32 (*.f32 64 u) 64/3)) (*.f32 u (+.f32 4 (*.f32 u 8)))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))
(neg.f32 (*.f32 s (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))))
(*.f32 s (neg.f32 (+.f32 (log.f32 u) (log.f32 -4))))
(*.f32 s (-.f32 (neg.f32 (log.f32 u)) (log.f32 -4)))
(+.f32 (*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (*.f32 1/4 (/.f32 s u)))
(fma.f32 -1 (*.f32 s (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))) (*.f32 1/4 (/.f32 s u)))
(-.f32 (*.f32 1/4 (/.f32 s u)) (*.f32 s (+.f32 (log.f32 u) (log.f32 -4))))
(-.f32 (/.f32 (*.f32 s 1/4) u) (*.f32 s (+.f32 (log.f32 u) (log.f32 -4))))
(*.f32 s (-.f32 (/.f32 1/4 u) (+.f32 (log.f32 u) (log.f32 -4))))
(+.f32 (*.f32 1/32 (/.f32 s (pow.f32 u 2))) (+.f32 (*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (*.f32 1/4 (/.f32 s u))))
(fma.f32 1/32 (/.f32 s (*.f32 u u)) (fma.f32 -1 (*.f32 s (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))) (*.f32 1/4 (/.f32 s u))))
(fma.f32 1/32 (/.f32 s (*.f32 u u)) (-.f32 (*.f32 1/4 (/.f32 s u)) (*.f32 s (+.f32 (log.f32 u) (log.f32 -4)))))
(fma.f32 s (neg.f32 (+.f32 (log.f32 u) (log.f32 -4))) (*.f32 (/.f32 s u) (+.f32 1/4 (/.f32 1/32 u))))
(-.f32 (*.f32 (/.f32 s u) (+.f32 1/4 (/.f32 1/32 u))) (*.f32 s (+.f32 (log.f32 u) (log.f32 -4))))
(+.f32 (*.f32 1/32 (/.f32 s (pow.f32 u 2))) (+.f32 (*.f32 1/192 (/.f32 s (pow.f32 u 3))) (+.f32 (*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (*.f32 1/4 (/.f32 s u)))))
(fma.f32 1/32 (/.f32 s (*.f32 u u)) (fma.f32 1/192 (/.f32 s (pow.f32 u 3)) (fma.f32 -1 (*.f32 s (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))) (*.f32 1/4 (/.f32 s u)))))
(fma.f32 1/32 (/.f32 s (*.f32 u u)) (fma.f32 1/192 (/.f32 s (pow.f32 u 3)) (-.f32 (*.f32 1/4 (/.f32 s u)) (*.f32 s (+.f32 (log.f32 u) (log.f32 -4))))))
(fma.f32 1/192 (/.f32 s (pow.f32 u 3)) (fma.f32 s (neg.f32 (+.f32 (log.f32 u) (log.f32 -4))) (*.f32 (/.f32 s u) (+.f32 1/4 (/.f32 1/32 u)))))
(+.f32 (*.f32 s (-.f32 (/.f32 1/192 (pow.f32 u 3)) (+.f32 (log.f32 u) (log.f32 -4)))) (*.f32 (/.f32 s u) (+.f32 1/4 (/.f32 1/32 u))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))
(neg.f32 (*.f32 s (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))))
(*.f32 s (neg.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))))
(*.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (neg.f32 s))
(*.f32 s (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4)))
(+.f32 (*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (*.f32 1/4 (/.f32 s u)))
(fma.f32 -1 (*.f32 s (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))) (*.f32 1/4 (/.f32 s u)))
(-.f32 (*.f32 1/4 (/.f32 s u)) (*.f32 s (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))))
(-.f32 (/.f32 (*.f32 s 1/4) u) (*.f32 s (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))))
(*.f32 s (+.f32 (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4)) (/.f32 1/4 u)))
(+.f32 (*.f32 1/32 (/.f32 s (pow.f32 u 2))) (+.f32 (*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (*.f32 1/4 (/.f32 s u))))
(fma.f32 1/32 (/.f32 s (*.f32 u u)) (fma.f32 -1 (*.f32 s (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))) (*.f32 1/4 (/.f32 s u))))
(fma.f32 1/32 (/.f32 s (*.f32 u u)) (-.f32 (*.f32 1/4 (/.f32 s u)) (*.f32 s (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))))))
(fma.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (neg.f32 s) (*.f32 (/.f32 s u) (+.f32 1/4 (/.f32 1/32 u))))
(fma.f32 s (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4)) (*.f32 (/.f32 s u) (+.f32 1/4 (/.f32 1/32 u))))
(+.f32 (*.f32 1/32 (/.f32 s (pow.f32 u 2))) (+.f32 (*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (+.f32 (*.f32 1/192 (/.f32 s (pow.f32 u 3))) (*.f32 1/4 (/.f32 s u)))))
(fma.f32 1/32 (/.f32 s (*.f32 u u)) (fma.f32 -1 (*.f32 s (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))) (fma.f32 1/192 (/.f32 s (pow.f32 u 3)) (*.f32 1/4 (/.f32 s u)))))
(fma.f32 1/32 (/.f32 s (*.f32 u u)) (-.f32 (fma.f32 1/4 (/.f32 s u) (/.f32 (*.f32 s 1/192) (pow.f32 u 3))) (*.f32 s (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))))))
(+.f32 (fma.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (neg.f32 s) (*.f32 (/.f32 1/192 (pow.f32 u 3)) s)) (*.f32 (/.f32 s u) (+.f32 1/4 (/.f32 1/32 u))))
(fma.f32 s (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4)) (*.f32 (/.f32 s u) (+.f32 1/4 (+.f32 (/.f32 1/32 u) (/.f32 1/192 (*.f32 u u))))))
(*.f32 -4 u)
(+.f32 (*.f32 -4 u) (*.f32 -8 (pow.f32 u 2)))
(fma.f32 -4 u (*.f32 (*.f32 u u) -8))
(fma.f32 -4 u (*.f32 u (*.f32 u -8)))
(*.f32 u (+.f32 (*.f32 u -8) -4))
(*.f32 u (+.f32 -4 (*.f32 u -8)))
(+.f32 (*.f32 -4 u) (+.f32 (*.f32 -8 (pow.f32 u 2)) (*.f32 -64/3 (pow.f32 u 3))))
(fma.f32 -4 u (fma.f32 -8 (*.f32 u u) (*.f32 (pow.f32 u 3) -64/3)))
(fma.f32 -4 u (fma.f32 (*.f32 u u) -8 (*.f32 (pow.f32 u 3) -64/3)))
(fma.f32 -4 u (*.f32 (*.f32 u u) (+.f32 -8 (*.f32 u -64/3))))
(*.f32 u (+.f32 -4 (*.f32 u (+.f32 -8 (*.f32 u -64/3)))))
(+.f32 (*.f32 -4 u) (+.f32 (*.f32 -8 (pow.f32 u 2)) (+.f32 (*.f32 -64 (pow.f32 u 4)) (*.f32 -64/3 (pow.f32 u 3)))))
(fma.f32 -4 u (fma.f32 -8 (*.f32 u u) (fma.f32 -64 (pow.f32 u 4) (*.f32 (pow.f32 u 3) -64/3))))
(fma.f32 -4 u (fma.f32 (*.f32 u u) -8 (fma.f32 (pow.f32 u 3) -64/3 (*.f32 (pow.f32 u 4) -64))))
(fma.f32 -4 u (fma.f32 (pow.f32 u 4) -64 (*.f32 (*.f32 u u) (+.f32 -8 (*.f32 u -64/3)))))
(fma.f32 -4 u (*.f32 (*.f32 u u) (+.f32 -8 (*.f32 u (+.f32 -64/3 (*.f32 -64 u))))))
(+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))
(fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))
(+.f32 (log.f32 u) (log.f32 -4))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) (*.f32 1/4 (/.f32 1 u)))
(-.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) (/.f32 1/4 u))
(+.f32 (log.f32 u) (+.f32 (log.f32 -4) (/.f32 -1/4 u)))
(+.f32 (log.f32 -4) (+.f32 (log.f32 u) (/.f32 -1/4 u)))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) (+.f32 (*.f32 1/32 (/.f32 1 (pow.f32 u 2))) (*.f32 1/4 (/.f32 1 u))))
(-.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) (+.f32 (/.f32 1/4 u) (/.f32 1/32 (*.f32 u u))))
(+.f32 (+.f32 (log.f32 -4) (-.f32 (log.f32 u) (/.f32 1/32 (*.f32 u u)))) (/.f32 -1/4 u))
(+.f32 (log.f32 u) (+.f32 (log.f32 -4) (+.f32 (/.f32 -1/4 u) (/.f32 -1/32 (*.f32 u u)))))
(-.f32 (log.f32 -4) (+.f32 (/.f32 1/4 u) (-.f32 (/.f32 1/32 (*.f32 u u)) (log.f32 u))))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) (+.f32 (*.f32 1/32 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/4 (/.f32 1 u)) (*.f32 1/192 (/.f32 1 (pow.f32 u 3))))))
(-.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) (+.f32 (/.f32 1/32 (*.f32 u u)) (+.f32 (/.f32 1/4 u) (/.f32 1/192 (pow.f32 u 3)))))
(+.f32 (log.f32 u) (-.f32 (log.f32 -4) (+.f32 (/.f32 1/4 u) (+.f32 (/.f32 1/192 (pow.f32 u 3)) (/.f32 1/32 (*.f32 u u))))))
(+.f32 (log.f32 u) (+.f32 (log.f32 -4) (+.f32 (/.f32 -1/4 u) (+.f32 (/.f32 -1/32 (*.f32 u u)) (/.f32 -1/192 (pow.f32 u 3))))))
(+.f32 (/.f32 -1/4 u) (+.f32 (log.f32 -4) (+.f32 (log.f32 u) (-.f32 (/.f32 -1/32 (*.f32 u u)) (/.f32 1/192 (pow.f32 u 3))))))
(+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))
(fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))
(-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) (*.f32 1/4 (/.f32 1 u)))
(-.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) (/.f32 1/4 u))
(-.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (/.f32 1/4 u))
(+.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (/.f32 -1/4 u))
(-.f32 (log.f32 4) (+.f32 (/.f32 1/4 u) (log.f32 (/.f32 -1 u))))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) (+.f32 (*.f32 1/32 (/.f32 1 (pow.f32 u 2))) (*.f32 1/4 (/.f32 1 u))))
(-.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) (+.f32 (/.f32 1/4 u) (/.f32 1/32 (*.f32 u u))))
(-.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (+.f32 (/.f32 1/4 u) (/.f32 1/32 (*.f32 u u))))
(+.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (+.f32 (/.f32 -1/4 u) (/.f32 -1/32 (*.f32 u u))))
(+.f32 (+.f32 (log.f32 4) (/.f32 -1/4 u)) (-.f32 (/.f32 -1/32 (*.f32 u u)) (log.f32 (/.f32 -1 u))))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) (+.f32 (*.f32 1/32 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/4 (/.f32 1 u)) (*.f32 1/192 (/.f32 1 (pow.f32 u 3))))))
(-.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) (+.f32 (/.f32 1/32 (*.f32 u u)) (+.f32 (/.f32 1/4 u) (/.f32 1/192 (pow.f32 u 3)))))
(-.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (+.f32 (/.f32 1/4 u) (+.f32 (/.f32 1/192 (pow.f32 u 3)) (/.f32 1/32 (*.f32 u u)))))
(-.f32 (-.f32 (-.f32 (log.f32 4) (/.f32 1/32 (*.f32 u u))) (+.f32 (/.f32 1/4 u) (/.f32 1/192 (pow.f32 u 3)))) (log.f32 (/.f32 -1 u)))
(+.f32 (+.f32 (+.f32 (log.f32 4) (/.f32 -1/4 u)) (-.f32 (/.f32 -1/32 (*.f32 u u)) (log.f32 (/.f32 -1 u)))) (/.f32 -1/192 (pow.f32 u 3)))

eval180.0ms (2%)

Compiler

Compiled 4185 to 3245 computations (22.5% saved)

prune102.0ms (1.1%)

Pruning

20 alts after pruning (18 fresh and 2 done)

PrunedKeptTotal
New27118289
Fresh000
Picked011
Done011
Total27120291
Error
0.0b
Counts
291 → 20
Alt Table
Click to see full alt table
StatusErrorProgram
4.9b
(*.f32 (*.f32 u s) (+.f32 4 (*.f32 u 8)))
0.2b
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
11.6b
(*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4 u)))))
2.5b
(*.f32 s (+.f32 (*.f32 (pow.f32 u 3) (+.f32 (*.f32 64 u) 64/3)) (*.f32 u (+.f32 4 (*.f32 u 8)))))
0.3b
(*.f32 s (*.f32 (cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2)) (cbrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))))
3.3b
(*.f32 s (+.f32 (*.f32 u 4) (*.f32 (*.f32 u u) (+.f32 (*.f32 64/3 u) 8))))
0.6b
(pow.f32 (cbrt.f32 (*.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) s)) 3)
4.9b
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
1.6b
(*.f32 s (pow.f32 (pow.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) 3) 1/3))
2.4b
(*.f32 s (neg.f32 (fma.f32 -4 u (*.f32 (*.f32 u u) (+.f32 -8 (*.f32 u (+.f32 -64/3 (*.f32 -64 u))))))))
3.3b
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u (+.f32 8 (*.f32 u 64/3))))))
1.2b
(*.f32 s (exp.f32 (log.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))))
3.7b
(*.f32 s (+.f32 (log.f32 (/.f32 1 (-.f32 1 (*.f32 16 (*.f32 u u))))) (log1p.f32 (*.f32 4 u))))
3.4b
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
0.4b
(*.f32 s (*.f32 3 (*.f32 1/3 (neg.f32 (log1p.f32 (*.f32 u -4))))))
9.0b
(*.f32 4 (*.f32 u s))
0.5b
(pow.f32 (sqrt.f32 (*.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) s)) 2)
0.5b
(*.f32 s (pow.f32 (sqrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))) 2))
4.9b
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u 8))))
8.9b
(*.f32 s (*.f32 u 4))
Compiler

Compiled 537 to 415 computations (22.7% saved)

localize89.0ms (1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f32 s (*.f32 (cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2)) (cbrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))))
0.2b
(cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2))
0.4b
(*.f32 (cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2)) (cbrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))))
0.5b
(pow.f32 (log1p.f32 (*.f32 u -4)) 2)
Compiler

Compiled 67 to 54 computations (19.4% saved)

series21.0ms (0.2%)

Counts
4 → 56
Calls

15 calls:

TimeVariablePointExpression
4.0ms
s
@0
(*.f32 s (*.f32 (cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2)) (cbrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))))
4.0ms
u
@inf
(*.f32 s (*.f32 (cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2)) (cbrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))))
2.0ms
u
@-inf
(cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2))
2.0ms
u
@inf
(cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2))
1.0ms
u
@0
(cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2))

rewrite72.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
927×pow1_binary32
857×add-log-exp_binary32
856×expm1-log1p-u_binary32
855×log1p-expm1-u_binary32
123×add-sqr-sqrt_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01365
126335
2306735
Stop Event
node limit
Counts
4 → 77
Calls
Call 1
Inputs
(pow.f32 (log1p.f32 (*.f32 u -4)) 2)
(*.f32 (cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2)) (cbrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))))
(cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2))
(*.f32 s (*.f32 (cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2)) (cbrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 2) (cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (log1p.f32 (*.f32 u -4)) (log1p.f32 (*.f32 u -4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (pow.f32 (log1p.f32 (*.f32 u -4)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 4)) (pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (log1p.f32 (*.f32 u -4))) (*.f32 (sqrt.f32 (log1p.f32 (*.f32 u -4))) (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) (*.f32 (pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 2) (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 -1 (pow.f32 (log1p.f32 (*.f32 u -4)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (log1p.f32 (*.f32 u -4)) (sqrt.f32 (log1p.f32 (*.f32 u -4)))) (sqrt.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (log1p.f32 (*.f32 u -4)) (pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 2)) (cbrt.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 4)) 1) (pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 4)) (cbrt.f32 (cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 4)))) (pow.f32 (cbrt.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 4)) (cbrt.f32 (log1p.f32 (*.f32 u -4)))) (cbrt.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (log1p.f32 (*.f32 u -4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 0 (log1p.f32 (*.f32 u -4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (log1p.f32 (*.f32 u -4)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 0 (pow.f32 (log1p.f32 (*.f32 u -4)) 3)) (+.f32 0 (+.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2) (*.f32 0 (log1p.f32 (*.f32 u -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 0 (pow.f32 (log1p.f32 (*.f32 u -4)) 2)) (log1p.f32 (*.f32 u -4)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (log1p.f32 (*.f32 u -4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (log1p.f32 (*.f32 u -4))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f32 (log1p.f32 (*.f32 u -4)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f32 (log1p.f32 (*.f32 u -4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 (*.f32 u -4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (*.f32 u -4))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (log1p.f32 (*.f32 u -4))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4)))) 2) (cbrt.f32 (cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4)))) 2) (*.f32 (cbrt.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4)))) (cbrt.f32 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 4))) (pow.f32 (cbrt.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (log1p.f32 (*.f32 u -4))) (pow.f32 (log1p.f32 (*.f32 u -4)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) (cbrt.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 1/6) (sqrt.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 1 1/3) (pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 4)) 1/3) (pow.f32 (cbrt.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) (pow.f32 (cbrt.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4)))) 2)) (cbrt.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (log1p.f32 (*.f32 u -4)) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4)))) 2) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 2)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (+.f32 (*.f32 u -4) 1) s))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 3) (pow.f32 s 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 s 3) (pow.f32 (log1p.f32 (*.f32 u -4)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s)))))))

simplify142.0ms (1.6%)

Algorithm
egg-herbie
Rules
592×associate-*l*_binary32
545×associate-+l+_binary32
521×associate-*r*_binary32
294×associate-/r*_binary32
281×distribute-rgt-in_binary32
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02312579
17232339
224592199
Stop Event
node limit
Counts
133 → 168
Calls
Call 1
Inputs
(*.f32 16 (pow.f32 u 2))
(+.f32 (*.f32 16 (pow.f32 u 2)) (*.f32 64 (pow.f32 u 3)))
(+.f32 (*.f32 16 (pow.f32 u 2)) (+.f32 (*.f32 64 (pow.f32 u 3)) (*.f32 704/3 (pow.f32 u 4))))
(+.f32 (*.f32 2560/3 (pow.f32 u 5)) (+.f32 (*.f32 16 (pow.f32 u 2)) (+.f32 (*.f32 64 (pow.f32 u 3)) (*.f32 704/3 (pow.f32 u 4)))))
(pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 2)
(+.f32 (*.f32 -1/2 (/.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) u)) (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 2))
(+.f32 (*.f32 1/16 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 -1/16 (/.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) (pow.f32 u 2))) (+.f32 (*.f32 -1/2 (/.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) u)) (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 2))))
(+.f32 (*.f32 -1/16 (/.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) (pow.f32 u 2))) (+.f32 (*.f32 1/16 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/64 (/.f32 1 (pow.f32 u 3))) (+.f32 (*.f32 -1/2 (/.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) u)) (+.f32 (*.f32 -1/96 (/.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) (pow.f32 u 3))) (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 2))))))
(pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 2)
(+.f32 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 2) (*.f32 -1/2 (/.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) u)))
(+.f32 (*.f32 1/16 (/.f32 1 (pow.f32 u 2))) (+.f32 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 2) (+.f32 (*.f32 -1/16 (/.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) (pow.f32 u 2))) (*.f32 -1/2 (/.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) u)))))
(+.f32 (*.f32 -1 (/.f32 (-.f32 (*.f32 1/96 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))) 1/64) (pow.f32 u 3))) (+.f32 (*.f32 1/16 (/.f32 1 (pow.f32 u 2))) (+.f32 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 2) (+.f32 (*.f32 -1/16 (/.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) (pow.f32 u 2))) (*.f32 -1/2 (/.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) u))))))
(*.f32 -4 (*.f32 (cbrt.f32 -1) u))
(+.f32 (*.f32 -8 (*.f32 (cbrt.f32 -1) (pow.f32 u 2))) (*.f32 -4 (*.f32 (cbrt.f32 -1) u)))
(+.f32 (*.f32 -8 (*.f32 (cbrt.f32 -1) (pow.f32 u 2))) (+.f32 (*.f32 -4 (*.f32 (cbrt.f32 -1) u)) (*.f32 -64/3 (*.f32 (cbrt.f32 -1) (pow.f32 u 3)))))
(+.f32 (*.f32 -8 (*.f32 (cbrt.f32 -1) (pow.f32 u 2))) (+.f32 (*.f32 -64 (*.f32 (cbrt.f32 -1) (pow.f32 u 4))) (+.f32 (*.f32 -4 (*.f32 (cbrt.f32 -1) u)) (*.f32 -64/3 (*.f32 (cbrt.f32 -1) (pow.f32 u 3))))))
(*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) (cbrt.f32 -1))
(+.f32 (*.f32 -1/4 (/.f32 (cbrt.f32 -1) u)) (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) (cbrt.f32 -1)))
(+.f32 (*.f32 -1/4 (/.f32 (cbrt.f32 -1) u)) (+.f32 (*.f32 -1/32 (/.f32 (cbrt.f32 -1) (pow.f32 u 2))) (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) (cbrt.f32 -1))))
(+.f32 (*.f32 -1/4 (/.f32 (cbrt.f32 -1) u)) (+.f32 (*.f32 -1/32 (/.f32 (cbrt.f32 -1) (pow.f32 u 2))) (+.f32 (*.f32 -1/192 (/.f32 (cbrt.f32 -1) (pow.f32 u 3))) (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) (cbrt.f32 -1)))))
(*.f32 (cbrt.f32 -1) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))
(+.f32 (*.f32 -1/4 (/.f32 (cbrt.f32 -1) u)) (*.f32 (cbrt.f32 -1) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))
(+.f32 (*.f32 -1/4 (/.f32 (cbrt.f32 -1) u)) (+.f32 (*.f32 -1/32 (/.f32 (cbrt.f32 -1) (pow.f32 u 2))) (*.f32 (cbrt.f32 -1) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))))
(+.f32 (*.f32 -1/4 (/.f32 (cbrt.f32 -1) u)) (+.f32 (*.f32 -1/32 (/.f32 (cbrt.f32 -1) (pow.f32 u 2))) (+.f32 (*.f32 -1/192 (/.f32 (cbrt.f32 -1) (pow.f32 u 3))) (*.f32 (cbrt.f32 -1) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))))
(pow.f32 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 2) 1/3)
(+.f32 (pow.f32 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 2) 1/3) (*.f32 -1/6 (*.f32 (pow.f32 (*.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 5)) 1/9) (/.f32 1 u))))
(+.f32 (*.f32 1/3 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 4)) 1/3) (/.f32 (-.f32 (+.f32 1/16 (*.f32 -1/16 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (*.f32 1/12 (pow.f32 (*.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 16)) 1/9))) (pow.f32 u 2)))) (+.f32 (pow.f32 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 2) 1/3) (*.f32 -1/6 (*.f32 (pow.f32 (*.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 5)) 1/9) (/.f32 1 u)))))
(+.f32 (*.f32 1/3 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 4)) 1/3) (/.f32 (-.f32 (+.f32 1/16 (*.f32 -1/16 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (*.f32 1/12 (pow.f32 (*.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 16)) 1/9))) (pow.f32 u 2)))) (+.f32 (*.f32 1/3 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 4)) 1/3) (/.f32 (-.f32 (+.f32 1/64 (*.f32 -1/96 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (+.f32 (*.f32 -1/3 (*.f32 (pow.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))) 1/9) (-.f32 (+.f32 1/16 (*.f32 -1/16 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (*.f32 1/12 (pow.f32 (*.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 16)) 1/9))))) (*.f32 -1/216 (pow.f32 (*.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 5)) 1/3)))) (pow.f32 u 3)))) (+.f32 (pow.f32 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 2) 1/3) (*.f32 -1/6 (*.f32 (pow.f32 (*.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 5)) 1/9) (/.f32 1 u))))))
(pow.f32 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 2) 1/3)
(+.f32 (pow.f32 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 2) 1/3) (*.f32 -1/6 (*.f32 (pow.f32 (*.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 5)) 1/9) (/.f32 1 u))))
(+.f32 (*.f32 1/3 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 4)) 1/3) (/.f32 (-.f32 (+.f32 1/16 (*.f32 -1/16 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (*.f32 1/12 (pow.f32 (*.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 16)) 1/9))) (pow.f32 u 2)))) (+.f32 (pow.f32 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 2) 1/3) (*.f32 -1/6 (*.f32 (pow.f32 (*.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 5)) 1/9) (/.f32 1 u)))))
(+.f32 (*.f32 -1/3 (*.f32 (/.f32 (-.f32 (*.f32 1/96 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))) (+.f32 1/64 (+.f32 (*.f32 1/216 (pow.f32 (*.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 5)) 1/3)) (*.f32 1/3 (*.f32 (pow.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))) 1/9) (-.f32 (+.f32 1/16 (*.f32 -1/16 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (*.f32 1/12 (pow.f32 (*.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 16)) 1/9)))))))) (pow.f32 u 3)) (pow.f32 (/.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 4)) 1/3))) (+.f32 (*.f32 1/3 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 4)) 1/3) (/.f32 (-.f32 (+.f32 1/16 (*.f32 -1/16 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (*.f32 1/12 (pow.f32 (*.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 16)) 1/9))) (pow.f32 u 2)))) (+.f32 (pow.f32 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 2) 1/3) (*.f32 -1/6 (*.f32 (pow.f32 (*.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 5)) 1/9) (/.f32 1 u))))))
(*.f32 s (*.f32 (log.f32 (+.f32 1 (*.f32 -4 u))) (cbrt.f32 -1)))
(*.f32 s (*.f32 (log.f32 (+.f32 1 (*.f32 -4 u))) (cbrt.f32 -1)))
(*.f32 s (*.f32 (log.f32 (+.f32 1 (*.f32 -4 u))) (cbrt.f32 -1)))
(*.f32 s (*.f32 (log.f32 (+.f32 1 (*.f32 -4 u))) (cbrt.f32 -1)))
(*.f32 s (*.f32 (log.f32 (+.f32 1 (*.f32 -4 u))) (cbrt.f32 -1)))
(*.f32 s (*.f32 (log.f32 (+.f32 1 (*.f32 -4 u))) (cbrt.f32 -1)))
(*.f32 s (*.f32 (log.f32 (+.f32 1 (*.f32 -4 u))) (cbrt.f32 -1)))
(*.f32 s (*.f32 (log.f32 (+.f32 1 (*.f32 -4 u))) (cbrt.f32 -1)))
(*.f32 s (*.f32 (log.f32 (+.f32 (*.f32 -4 u) 1)) (cbrt.f32 -1)))
(*.f32 s (*.f32 (log.f32 (+.f32 (*.f32 -4 u) 1)) (cbrt.f32 -1)))
(*.f32 s (*.f32 (log.f32 (+.f32 (*.f32 -4 u) 1)) (cbrt.f32 -1)))
(*.f32 s (*.f32 (log.f32 (+.f32 (*.f32 -4 u) 1)) (cbrt.f32 -1)))
(*.f32 -4 (*.f32 s (*.f32 (cbrt.f32 -1) u)))
(+.f32 (*.f32 -8 (*.f32 s (*.f32 (cbrt.f32 -1) (pow.f32 u 2)))) (*.f32 -4 (*.f32 s (*.f32 (cbrt.f32 -1) u))))
(+.f32 (*.f32 -64/3 (*.f32 s (*.f32 (cbrt.f32 -1) (pow.f32 u 3)))) (+.f32 (*.f32 -8 (*.f32 s (*.f32 (cbrt.f32 -1) (pow.f32 u 2)))) (*.f32 -4 (*.f32 s (*.f32 (cbrt.f32 -1) u)))))
(+.f32 (*.f32 -64 (*.f32 s (*.f32 (cbrt.f32 -1) (pow.f32 u 4)))) (+.f32 (*.f32 -64/3 (*.f32 s (*.f32 (cbrt.f32 -1) (pow.f32 u 3)))) (+.f32 (*.f32 -8 (*.f32 s (*.f32 (cbrt.f32 -1) (pow.f32 u 2)))) (*.f32 -4 (*.f32 s (*.f32 (cbrt.f32 -1) u))))))
(*.f32 s (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) (cbrt.f32 -1)))
(+.f32 (*.f32 -1/4 (/.f32 (*.f32 s (cbrt.f32 -1)) u)) (*.f32 s (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) (cbrt.f32 -1))))
(+.f32 (*.f32 -1/4 (/.f32 (*.f32 s (cbrt.f32 -1)) u)) (+.f32 (*.f32 s (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) (cbrt.f32 -1))) (*.f32 -1/32 (/.f32 (*.f32 s (cbrt.f32 -1)) (pow.f32 u 2)))))
(+.f32 (*.f32 -1/4 (/.f32 (*.f32 s (cbrt.f32 -1)) u)) (+.f32 (*.f32 -1/192 (/.f32 (*.f32 s (cbrt.f32 -1)) (pow.f32 u 3))) (+.f32 (*.f32 s (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) (cbrt.f32 -1))) (*.f32 -1/32 (/.f32 (*.f32 s (cbrt.f32 -1)) (pow.f32 u 2))))))
(*.f32 s (*.f32 (cbrt.f32 -1) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))
(+.f32 (*.f32 -1/4 (/.f32 (*.f32 s (cbrt.f32 -1)) u)) (*.f32 s (*.f32 (cbrt.f32 -1) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))))
(+.f32 (*.f32 -1/4 (/.f32 (*.f32 s (cbrt.f32 -1)) u)) (+.f32 (*.f32 s (*.f32 (cbrt.f32 -1) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (*.f32 -1/32 (/.f32 (*.f32 s (cbrt.f32 -1)) (pow.f32 u 2)))))
(+.f32 (*.f32 -1/4 (/.f32 (*.f32 s (cbrt.f32 -1)) u)) (+.f32 (*.f32 -1/192 (/.f32 (*.f32 s (cbrt.f32 -1)) (pow.f32 u 3))) (+.f32 (*.f32 s (*.f32 (cbrt.f32 -1) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (*.f32 -1/32 (/.f32 (*.f32 s (cbrt.f32 -1)) (pow.f32 u 2))))))
Outputs
(*.f32 16 (pow.f32 u 2))
(*.f32 16 (*.f32 u u))
(+.f32 (*.f32 16 (pow.f32 u 2)) (*.f32 64 (pow.f32 u 3)))
(fma.f32 16 (*.f32 u u) (*.f32 64 (pow.f32 u 3)))
(*.f32 (*.f32 u u) (+.f32 16 (*.f32 64 u)))
(+.f32 (*.f32 16 (pow.f32 u 2)) (+.f32 (*.f32 64 (pow.f32 u 3)) (*.f32 704/3 (pow.f32 u 4))))
(fma.f32 16 (*.f32 u u) (fma.f32 64 (pow.f32 u 3) (*.f32 704/3 (pow.f32 u 4))))
(+.f32 (*.f32 2560/3 (pow.f32 u 5)) (+.f32 (*.f32 16 (pow.f32 u 2)) (+.f32 (*.f32 64 (pow.f32 u 3)) (*.f32 704/3 (pow.f32 u 4)))))
(fma.f32 2560/3 (pow.f32 u 5) (fma.f32 16 (*.f32 u u) (fma.f32 64 (pow.f32 u 3) (*.f32 704/3 (pow.f32 u 4)))))
(pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 2)
(pow.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) 2)
(pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 2)
(+.f32 (*.f32 -1/2 (/.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) u)) (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 2))
(fma.f32 -1/2 (/.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) u) (pow.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) 2))
(fma.f32 -1/2 (/.f32 (+.f32 (log.f32 u) (log.f32 -4)) u) (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 2))
(+.f32 (*.f32 1/16 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 -1/16 (/.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) (pow.f32 u 2))) (+.f32 (*.f32 -1/2 (/.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) u)) (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 2))))
(+.f32 (/.f32 1/16 (*.f32 u u)) (fma.f32 -1/16 (/.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) (*.f32 u u)) (fma.f32 -1/2 (/.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) u) (pow.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) 2))))
(+.f32 (fma.f32 -1/2 (/.f32 (+.f32 (log.f32 u) (log.f32 -4)) u) (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 2)) (fma.f32 -1/16 (/.f32 (+.f32 (log.f32 u) (log.f32 -4)) (*.f32 u u)) (/.f32 1/16 (*.f32 u u))))
(+.f32 (/.f32 1/16 (*.f32 u u)) (+.f32 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 2) (*.f32 (/.f32 (+.f32 (log.f32 u) (log.f32 -4)) u) (+.f32 -1/2 (/.f32 -1/16 u)))))
(+.f32 (*.f32 -1/16 (/.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) (pow.f32 u 2))) (+.f32 (*.f32 1/16 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/64 (/.f32 1 (pow.f32 u 3))) (+.f32 (*.f32 -1/2 (/.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) u)) (+.f32 (*.f32 -1/96 (/.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) (pow.f32 u 3))) (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 2))))))
(fma.f32 -1/16 (/.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) (*.f32 u u)) (+.f32 (/.f32 1/16 (*.f32 u u)) (+.f32 (/.f32 1/64 (pow.f32 u 3)) (fma.f32 -1/2 (/.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) u) (fma.f32 -1/96 (/.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) (pow.f32 u 3)) (pow.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) 2))))))
(+.f32 (+.f32 (/.f32 1/64 (pow.f32 u 3)) (fma.f32 -1/2 (/.f32 (+.f32 (log.f32 u) (log.f32 -4)) u) (fma.f32 -1/96 (/.f32 (+.f32 (log.f32 u) (log.f32 -4)) (pow.f32 u 3)) (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 2)))) (fma.f32 -1/16 (/.f32 (+.f32 (log.f32 u) (log.f32 -4)) (*.f32 u u)) (/.f32 1/16 (*.f32 u u))))
(+.f32 (+.f32 (+.f32 (/.f32 1/16 (*.f32 u u)) (/.f32 1/64 (pow.f32 u 3))) (fma.f32 -1/96 (/.f32 (+.f32 (log.f32 u) (log.f32 -4)) (pow.f32 u 3)) (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 2))) (*.f32 (/.f32 (+.f32 (log.f32 u) (log.f32 -4)) u) (+.f32 -1/2 (/.f32 -1/16 u))))
(pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 2)
(pow.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) 2)
(pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 2)
(+.f32 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 2) (*.f32 -1/2 (/.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) u)))
(+.f32 (pow.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) 2) (*.f32 -1/2 (/.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) u)))
(fma.f32 -1/2 (/.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) u) (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 2))
(+.f32 (*.f32 1/16 (/.f32 1 (pow.f32 u 2))) (+.f32 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 2) (+.f32 (*.f32 -1/16 (/.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) (pow.f32 u 2))) (*.f32 -1/2 (/.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) u)))))
(+.f32 (/.f32 1/16 (*.f32 u u)) (+.f32 (pow.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) 2) (fma.f32 -1/16 (/.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) (*.f32 u u)) (*.f32 -1/2 (/.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) u)))))
(+.f32 (/.f32 1/16 (*.f32 u u)) (+.f32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 2) (fma.f32 -1/2 (/.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) u) (*.f32 -1/16 (/.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (*.f32 u u))))))
(+.f32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 2) (+.f32 (*.f32 (/.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) u) (+.f32 -1/2 (/.f32 -1/16 u))) (/.f32 1/16 (*.f32 u u))))
(+.f32 (*.f32 -1 (/.f32 (-.f32 (*.f32 1/96 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))) 1/64) (pow.f32 u 3))) (+.f32 (*.f32 1/16 (/.f32 1 (pow.f32 u 2))) (+.f32 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 2) (+.f32 (*.f32 -1/16 (/.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) (pow.f32 u 2))) (*.f32 -1/2 (/.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) u))))))
(fma.f32 -1 (/.f32 (fma.f32 1/96 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) -1/64) (pow.f32 u 3)) (+.f32 (/.f32 1/16 (*.f32 u u)) (+.f32 (pow.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) 2) (fma.f32 -1/16 (/.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) (*.f32 u u)) (*.f32 -1/2 (/.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) u))))))
(-.f32 (+.f32 (/.f32 1/16 (*.f32 u u)) (+.f32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 2) (fma.f32 -1/2 (/.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) u) (*.f32 -1/16 (/.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (*.f32 u u)))))) (/.f32 (fma.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 1/96 -1/64) (pow.f32 u 3)))
(+.f32 (/.f32 1/16 (*.f32 u u)) (+.f32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 2) (-.f32 (*.f32 (/.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) u) (+.f32 -1/2 (/.f32 -1/16 u))) (/.f32 (fma.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 1/96 -1/64) (pow.f32 u 3)))))
(*.f32 -4 (*.f32 (cbrt.f32 -1) u))
(*.f32 -4 (*.f32 u (cbrt.f32 -1)))
(*.f32 u (*.f32 -4 (cbrt.f32 -1)))
(*.f32 (cbrt.f32 -1) (*.f32 u -4))
(+.f32 (*.f32 -8 (*.f32 (cbrt.f32 -1) (pow.f32 u 2))) (*.f32 -4 (*.f32 (cbrt.f32 -1) u)))
(fma.f32 -8 (*.f32 (*.f32 u u) (cbrt.f32 -1)) (*.f32 -4 (*.f32 u (cbrt.f32 -1))))
(fma.f32 -4 (*.f32 u (cbrt.f32 -1)) (*.f32 (*.f32 u u) (*.f32 (cbrt.f32 -1) -8)))
(*.f32 (cbrt.f32 -1) (+.f32 (*.f32 u -4) (*.f32 -8 (*.f32 u u))))
(+.f32 (*.f32 -8 (*.f32 (cbrt.f32 -1) (pow.f32 u 2))) (+.f32 (*.f32 -4 (*.f32 (cbrt.f32 -1) u)) (*.f32 -64/3 (*.f32 (cbrt.f32 -1) (pow.f32 u 3)))))
(fma.f32 -8 (*.f32 (*.f32 u u) (cbrt.f32 -1)) (fma.f32 -4 (*.f32 u (cbrt.f32 -1)) (*.f32 -64/3 (*.f32 (pow.f32 u 3) (cbrt.f32 -1)))))
(fma.f32 -8 (*.f32 u (*.f32 u (cbrt.f32 -1))) (fma.f32 -4 (*.f32 u (cbrt.f32 -1)) (*.f32 (pow.f32 u 3) (*.f32 (cbrt.f32 -1) -64/3))))
(fma.f32 -8 (*.f32 (*.f32 u u) (cbrt.f32 -1)) (*.f32 (cbrt.f32 -1) (+.f32 (*.f32 u -4) (*.f32 (pow.f32 u 3) -64/3))))
(+.f32 (*.f32 -8 (*.f32 (cbrt.f32 -1) (pow.f32 u 2))) (+.f32 (*.f32 -64 (*.f32 (cbrt.f32 -1) (pow.f32 u 4))) (+.f32 (*.f32 -4 (*.f32 (cbrt.f32 -1) u)) (*.f32 -64/3 (*.f32 (cbrt.f32 -1) (pow.f32 u 3))))))
(fma.f32 -8 (*.f32 (*.f32 u u) (cbrt.f32 -1)) (fma.f32 -64 (*.f32 (pow.f32 u 4) (cbrt.f32 -1)) (fma.f32 -4 (*.f32 u (cbrt.f32 -1)) (*.f32 -64/3 (*.f32 (pow.f32 u 3) (cbrt.f32 -1))))))
(fma.f32 -8 (*.f32 u (*.f32 u (cbrt.f32 -1))) (fma.f32 -64 (*.f32 (pow.f32 u 4) (cbrt.f32 -1)) (fma.f32 -4 (*.f32 u (cbrt.f32 -1)) (*.f32 (pow.f32 u 3) (*.f32 (cbrt.f32 -1) -64/3)))))
(+.f32 (*.f32 (cbrt.f32 -1) (+.f32 (*.f32 u -4) (*.f32 (pow.f32 u 3) -64/3))) (*.f32 (cbrt.f32 -1) (+.f32 (*.f32 u (*.f32 u -8)) (*.f32 (pow.f32 u 4) -64))))
(*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) (cbrt.f32 -1))
(*.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) (cbrt.f32 -1))
(*.f32 (+.f32 (log.f32 u) (log.f32 -4)) (cbrt.f32 -1))
(+.f32 (*.f32 -1/4 (/.f32 (cbrt.f32 -1) u)) (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) (cbrt.f32 -1)))
(fma.f32 -1/4 (/.f32 (cbrt.f32 -1) u) (*.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) (cbrt.f32 -1)))
(fma.f32 (+.f32 (log.f32 u) (log.f32 -4)) (cbrt.f32 -1) (*.f32 -1/4 (/.f32 (cbrt.f32 -1) u)))
(fma.f32 (+.f32 (log.f32 u) (log.f32 -4)) (cbrt.f32 -1) (/.f32 (cbrt.f32 -1) (/.f32 u -1/4)))
(+.f32 (*.f32 -1/4 (/.f32 (cbrt.f32 -1) u)) (+.f32 (*.f32 -1/32 (/.f32 (cbrt.f32 -1) (pow.f32 u 2))) (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) (cbrt.f32 -1))))
(fma.f32 -1/4 (/.f32 (cbrt.f32 -1) u) (fma.f32 -1/32 (/.f32 (cbrt.f32 -1) (*.f32 u u)) (*.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) (cbrt.f32 -1))))
(fma.f32 -1/4 (/.f32 (cbrt.f32 -1) u) (fma.f32 (+.f32 (log.f32 u) (log.f32 -4)) (cbrt.f32 -1) (*.f32 -1/32 (/.f32 (cbrt.f32 -1) (*.f32 u u)))))
(+.f32 (*.f32 (+.f32 (log.f32 u) (log.f32 -4)) (cbrt.f32 -1)) (*.f32 (/.f32 (cbrt.f32 -1) u) (+.f32 (/.f32 -1/32 u) -1/4)))
(+.f32 (*.f32 -1/4 (/.f32 (cbrt.f32 -1) u)) (+.f32 (*.f32 -1/32 (/.f32 (cbrt.f32 -1) (pow.f32 u 2))) (+.f32 (*.f32 -1/192 (/.f32 (cbrt.f32 -1) (pow.f32 u 3))) (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) (cbrt.f32 -1)))))
(fma.f32 -1/4 (/.f32 (cbrt.f32 -1) u) (fma.f32 -1/32 (/.f32 (cbrt.f32 -1) (*.f32 u u)) (fma.f32 -1/192 (/.f32 (cbrt.f32 -1) (pow.f32 u 3)) (*.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) (cbrt.f32 -1)))))
(fma.f32 -1/4 (/.f32 (cbrt.f32 -1) u) (fma.f32 -1/32 (/.f32 (cbrt.f32 -1) (*.f32 u u)) (fma.f32 (+.f32 (log.f32 u) (log.f32 -4)) (cbrt.f32 -1) (*.f32 -1/192 (/.f32 (cbrt.f32 -1) (pow.f32 u 3))))))
(+.f32 (fma.f32 (+.f32 (log.f32 u) (log.f32 -4)) (cbrt.f32 -1) (/.f32 (cbrt.f32 -1) (/.f32 u -1/4))) (*.f32 (/.f32 (cbrt.f32 -1) (*.f32 u u)) (+.f32 (/.f32 -1/192 u) -1/32)))
(*.f32 (cbrt.f32 -1) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))
(*.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) (cbrt.f32 -1))
(*.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (cbrt.f32 -1))
(+.f32 (*.f32 -1/4 (/.f32 (cbrt.f32 -1) u)) (*.f32 (cbrt.f32 -1) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))
(fma.f32 -1/4 (/.f32 (cbrt.f32 -1) u) (*.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) (cbrt.f32 -1)))
(fma.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (cbrt.f32 -1) (*.f32 -1/4 (/.f32 (cbrt.f32 -1) u)))
(fma.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (cbrt.f32 -1) (/.f32 (cbrt.f32 -1) (/.f32 u -1/4)))
(+.f32 (*.f32 -1/4 (/.f32 (cbrt.f32 -1) u)) (+.f32 (*.f32 -1/32 (/.f32 (cbrt.f32 -1) (pow.f32 u 2))) (*.f32 (cbrt.f32 -1) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))))
(fma.f32 -1/4 (/.f32 (cbrt.f32 -1) u) (fma.f32 -1/32 (/.f32 (cbrt.f32 -1) (*.f32 u u)) (*.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) (cbrt.f32 -1))))
(fma.f32 -1/4 (/.f32 (cbrt.f32 -1) u) (fma.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (cbrt.f32 -1) (*.f32 -1/32 (/.f32 (cbrt.f32 -1) (*.f32 u u)))))
(+.f32 (*.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (cbrt.f32 -1)) (*.f32 (/.f32 (cbrt.f32 -1) u) (+.f32 (/.f32 -1/32 u) -1/4)))
(+.f32 (*.f32 -1/4 (/.f32 (cbrt.f32 -1) u)) (+.f32 (*.f32 -1/32 (/.f32 (cbrt.f32 -1) (pow.f32 u 2))) (+.f32 (*.f32 -1/192 (/.f32 (cbrt.f32 -1) (pow.f32 u 3))) (*.f32 (cbrt.f32 -1) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))))
(fma.f32 -1/4 (/.f32 (cbrt.f32 -1) u) (fma.f32 -1/32 (/.f32 (cbrt.f32 -1) (*.f32 u u)) (fma.f32 -1/192 (/.f32 (cbrt.f32 -1) (pow.f32 u 3)) (*.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) (cbrt.f32 -1)))))
(fma.f32 -1/4 (/.f32 (cbrt.f32 -1) u) (fma.f32 -1/32 (/.f32 (cbrt.f32 -1) (*.f32 u u)) (fma.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (cbrt.f32 -1) (*.f32 -1/192 (/.f32 (cbrt.f32 -1) (pow.f32 u 3))))))
(+.f32 (fma.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (cbrt.f32 -1) (*.f32 -1/192 (/.f32 (cbrt.f32 -1) (pow.f32 u 3)))) (*.f32 (/.f32 (cbrt.f32 -1) u) (+.f32 (/.f32 -1/32 u) -1/4)))
(pow.f32 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 2) 1/3)
(cbrt.f32 (pow.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) 2))
(cbrt.f32 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 2))
(+.f32 (pow.f32 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 2) 1/3) (*.f32 -1/6 (*.f32 (pow.f32 (*.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 5)) 1/9) (/.f32 1 u))))
(+.f32 (cbrt.f32 (pow.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) 2)) (*.f32 -1/6 (*.f32 (/.f32 1 u) (*.f32 (pow.f32 (pow.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) 5) 1/18) (pow.f32 (pow.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) 5) 1/18)))))
(fma.f32 -1/6 (/.f32 (*.f32 (pow.f32 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 5) 1/18) (pow.f32 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 5) 1/18)) u) (cbrt.f32 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 2)))
(fma.f32 -1/6 (*.f32 (pow.f32 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 5) 1/18) (/.f32 (pow.f32 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 5) 1/18) u)) (cbrt.f32 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 2)))
(+.f32 (*.f32 1/3 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 4)) 1/3) (/.f32 (-.f32 (+.f32 1/16 (*.f32 -1/16 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (*.f32 1/12 (pow.f32 (*.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 16)) 1/9))) (pow.f32 u 2)))) (+.f32 (pow.f32 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 2) 1/3) (*.f32 -1/6 (*.f32 (pow.f32 (*.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 5)) 1/9) (/.f32 1 u)))))
(fma.f32 1/3 (*.f32 (cbrt.f32 (/.f32 1 (pow.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) 4))) (/.f32 (+.f32 (+.f32 1/16 (*.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) -1/16)) (*.f32 -1/12 (*.f32 (pow.f32 (pow.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) 16) 1/18) (pow.f32 (pow.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) 16) 1/18)))) (*.f32 u u))) (+.f32 (cbrt.f32 (pow.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) 2)) (*.f32 -1/6 (*.f32 (/.f32 1 u) (*.f32 (pow.f32 (pow.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) 5) 1/18) (pow.f32 (pow.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) 5) 1/18))))))
(fma.f32 1/3 (*.f32 (cbrt.f32 (/.f32 1 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 4))) (/.f32 (+.f32 (fma.f32 (+.f32 (log.f32 u) (log.f32 -4)) -1/16 1/16) (*.f32 (*.f32 (pow.f32 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 16) 1/18) (pow.f32 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 16) 1/18)) -1/12)) (*.f32 u u))) (fma.f32 -1/6 (/.f32 (*.f32 (pow.f32 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 5) 1/18) (pow.f32 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 5) 1/18)) u) (cbrt.f32 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 2))))
(fma.f32 1/3 (*.f32 (cbrt.f32 (/.f32 1 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 4))) (/.f32 (+.f32 (fma.f32 (+.f32 (log.f32 u) (log.f32 -4)) -1/16 1/16) (*.f32 (pow.f32 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 16) 1/18) (*.f32 (pow.f32 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 16) 1/18) -1/12))) (*.f32 u u))) (fma.f32 -1/6 (*.f32 (pow.f32 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 5) 1/18) (/.f32 (pow.f32 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 5) 1/18) u)) (cbrt.f32 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 2))))
(+.f32 (*.f32 1/3 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 4)) 1/3) (/.f32 (-.f32 (+.f32 1/16 (*.f32 -1/16 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (*.f32 1/12 (pow.f32 (*.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 16)) 1/9))) (pow.f32 u 2)))) (+.f32 (*.f32 1/3 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 4)) 1/3) (/.f32 (-.f32 (+.f32 1/64 (*.f32 -1/96 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (+.f32 (*.f32 -1/3 (*.f32 (pow.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))) 1/9) (-.f32 (+.f32 1/16 (*.f32 -1/16 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (*.f32 1/12 (pow.f32 (*.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 16)) 1/9))))) (*.f32 -1/216 (pow.f32 (*.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 5)) 1/3)))) (pow.f32 u 3)))) (+.f32 (pow.f32 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 2) 1/3) (*.f32 -1/6 (*.f32 (pow.f32 (*.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 5)) 1/9) (/.f32 1 u))))))
(fma.f32 1/3 (*.f32 (cbrt.f32 (/.f32 1 (pow.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) 4))) (/.f32 (+.f32 (+.f32 1/16 (*.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) -1/16)) (*.f32 -1/12 (*.f32 (pow.f32 (pow.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) 16) 1/18) (pow.f32 (pow.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) 16) 1/18)))) (*.f32 u u))) (fma.f32 1/3 (*.f32 (cbrt.f32 (/.f32 1 (pow.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) 4))) (/.f32 (+.f32 1/64 (-.f32 (*.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) -1/96) (fma.f32 -1/3 (*.f32 (+.f32 (+.f32 1/16 (*.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) -1/16)) (*.f32 -1/12 (*.f32 (pow.f32 (pow.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) 16) 1/18) (pow.f32 (pow.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) 16) 1/18)))) (*.f32 (pow.f32 (/.f32 1 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))) 1/18) (pow.f32 (/.f32 1 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))) 1/18))) (*.f32 -1/216 (cbrt.f32 (pow.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) 5)))))) (pow.f32 u 3))) (+.f32 (cbrt.f32 (pow.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) 2)) (*.f32 -1/6 (*.f32 (/.f32 1 u) (*.f32 (pow.f32 (pow.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) 5) 1/18) (pow.f32 (pow.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) 5) 1/18)))))))
(+.f32 (fma.f32 -1/6 (/.f32 (*.f32 (pow.f32 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 5) 1/18) (pow.f32 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 5) 1/18)) u) (cbrt.f32 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 2))) (*.f32 (*.f32 1/3 (cbrt.f32 (/.f32 1 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 4)))) (+.f32 (/.f32 (+.f32 (fma.f32 (+.f32 (log.f32 u) (log.f32 -4)) -1/16 1/16) (*.f32 (*.f32 (pow.f32 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 16) 1/18) (pow.f32 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 16) 1/18)) -1/12)) (*.f32 u u)) (/.f32 (-.f32 (fma.f32 (+.f32 (log.f32 u) (log.f32 -4)) -1/96 1/64) (fma.f32 -1/3 (*.f32 (+.f32 (fma.f32 (+.f32 (log.f32 u) (log.f32 -4)) -1/16 1/16) (*.f32 (*.f32 (pow.f32 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 16) 1/18) (pow.f32 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 16) 1/18)) -1/12)) (*.f32 (pow.f32 (/.f32 1 (+.f32 (log.f32 u) (log.f32 -4))) 1/18) (pow.f32 (/.f32 1 (+.f32 (log.f32 u) (log.f32 -4))) 1/18))) (*.f32 -1/216 (cbrt.f32 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 5))))) (pow.f32 u 3)))))
(+.f32 (fma.f32 -1/6 (*.f32 (pow.f32 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 5) 1/18) (/.f32 (pow.f32 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 5) 1/18) u)) (cbrt.f32 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 2))) (*.f32 1/3 (*.f32 (cbrt.f32 (/.f32 1 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 4))) (+.f32 (/.f32 (+.f32 (fma.f32 (+.f32 (log.f32 u) (log.f32 -4)) -1/16 1/16) (*.f32 (pow.f32 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 16) 1/18) (*.f32 (pow.f32 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 16) 1/18) -1/12))) (*.f32 u u)) (/.f32 (-.f32 (fma.f32 (+.f32 (log.f32 u) (log.f32 -4)) -1/96 1/64) (fma.f32 -1/3 (*.f32 (pow.f32 (/.f32 1 (+.f32 (log.f32 u) (log.f32 -4))) 1/18) (*.f32 (pow.f32 (/.f32 1 (+.f32 (log.f32 u) (log.f32 -4))) 1/18) (+.f32 (fma.f32 (+.f32 (log.f32 u) (log.f32 -4)) -1/16 1/16) (*.f32 (pow.f32 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 16) 1/18) (*.f32 (pow.f32 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 16) 1/18) -1/12))))) (*.f32 -1/216 (cbrt.f32 (pow.f32 (+.f32 (log.f32 u) (log.f32 -4)) 5))))) (pow.f32 u 3))))))
(pow.f32 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 2) 1/3)
(cbrt.f32 (pow.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) 2))
(cbrt.f32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 2))
(+.f32 (pow.f32 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 2) 1/3) (*.f32 -1/6 (*.f32 (pow.f32 (*.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 5)) 1/9) (/.f32 1 u))))
(+.f32 (cbrt.f32 (pow.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) 2)) (*.f32 -1/6 (*.f32 (/.f32 1 u) (*.f32 (pow.f32 (pow.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) 5) 1/18) (pow.f32 (pow.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) 5) 1/18)))))
(fma.f32 -1/6 (/.f32 (*.f32 (pow.f32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 5) 1/18) (pow.f32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 5) 1/18)) u) (cbrt.f32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 2)))
(fma.f32 -1/6 (*.f32 (pow.f32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 5) 1/18) (/.f32 (pow.f32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 5) 1/18) u)) (cbrt.f32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 2)))
(+.f32 (*.f32 1/3 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 4)) 1/3) (/.f32 (-.f32 (+.f32 1/16 (*.f32 -1/16 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (*.f32 1/12 (pow.f32 (*.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 16)) 1/9))) (pow.f32 u 2)))) (+.f32 (pow.f32 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 2) 1/3) (*.f32 -1/6 (*.f32 (pow.f32 (*.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 5)) 1/9) (/.f32 1 u)))))
(fma.f32 1/3 (*.f32 (cbrt.f32 (/.f32 1 (pow.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) 4))) (/.f32 (+.f32 1/16 (-.f32 (*.f32 -1/16 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))) (*.f32 1/12 (*.f32 (pow.f32 (pow.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) 16) 1/18) (pow.f32 (pow.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) 16) 1/18))))) (*.f32 u u))) (+.f32 (cbrt.f32 (pow.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) 2)) (*.f32 -1/6 (*.f32 (/.f32 1 u) (*.f32 (pow.f32 (pow.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) 5) 1/18) (pow.f32 (pow.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) 5) 1/18))))))
(fma.f32 1/3 (*.f32 (cbrt.f32 (/.f32 1 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 4))) (/.f32 (-.f32 (fma.f32 -1/16 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 1/16) (*.f32 (pow.f32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 16) 1/18) (*.f32 (pow.f32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 16) 1/18) 1/12))) (*.f32 u u))) (fma.f32 -1/6 (/.f32 (*.f32 (pow.f32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 5) 1/18) (pow.f32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 5) 1/18)) u) (cbrt.f32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 2))))
(fma.f32 1/3 (*.f32 (/.f32 (cbrt.f32 (/.f32 1 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 4))) (*.f32 u u)) (+.f32 1/16 (fma.f32 -1/16 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (*.f32 (*.f32 (pow.f32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 16) 1/18) (pow.f32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 16) 1/18)) -1/12)))) (fma.f32 -1/6 (*.f32 (pow.f32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 5) 1/18) (/.f32 (pow.f32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 5) 1/18) u)) (cbrt.f32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 2))))
(+.f32 (*.f32 -1/3 (*.f32 (/.f32 (-.f32 (*.f32 1/96 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))) (+.f32 1/64 (+.f32 (*.f32 1/216 (pow.f32 (*.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 5)) 1/3)) (*.f32 1/3 (*.f32 (pow.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))) 1/9) (-.f32 (+.f32 1/16 (*.f32 -1/16 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (*.f32 1/12 (pow.f32 (*.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 16)) 1/9)))))))) (pow.f32 u 3)) (pow.f32 (/.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 4)) 1/3))) (+.f32 (*.f32 1/3 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 4)) 1/3) (/.f32 (-.f32 (+.f32 1/16 (*.f32 -1/16 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (*.f32 1/12 (pow.f32 (*.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 16)) 1/9))) (pow.f32 u 2)))) (+.f32 (pow.f32 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 2) 1/3) (*.f32 -1/6 (*.f32 (pow.f32 (*.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 5)) 1/9) (/.f32 1 u))))))
(fma.f32 -1/3 (*.f32 (cbrt.f32 (/.f32 1 (pow.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) 4))) (/.f32 (-.f32 (fma.f32 1/96 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) -1/64) (fma.f32 1/216 (cbrt.f32 (pow.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) 5)) (*.f32 1/3 (*.f32 (+.f32 1/16 (-.f32 (*.f32 -1/16 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))) (*.f32 1/12 (*.f32 (pow.f32 (pow.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) 16) 1/18) (pow.f32 (pow.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) 16) 1/18))))) (*.f32 (pow.f32 (/.f32 1 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))) 1/18) (pow.f32 (/.f32 1 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))) 1/18)))))) (pow.f32 u 3))) (fma.f32 1/3 (*.f32 (cbrt.f32 (/.f32 1 (pow.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) 4))) (/.f32 (+.f32 1/16 (-.f32 (*.f32 -1/16 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))) (*.f32 1/12 (*.f32 (pow.f32 (pow.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) 16) 1/18) (pow.f32 (pow.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) 16) 1/18))))) (*.f32 u u))) (+.f32 (cbrt.f32 (pow.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) 2)) (*.f32 -1/6 (*.f32 (/.f32 1 u) (*.f32 (pow.f32 (pow.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) 5) 1/18) (pow.f32 (pow.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) 5) 1/18)))))))
(fma.f32 (/.f32 (*.f32 -1/3 (-.f32 (fma.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 1/96 -1/64) (fma.f32 1/3 (*.f32 (-.f32 (fma.f32 -1/16 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 1/16) (*.f32 (pow.f32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 16) 1/18) (*.f32 (pow.f32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 16) 1/18) 1/12))) (*.f32 (pow.f32 (/.f32 1 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))) 1/18) (pow.f32 (/.f32 1 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))) 1/18))) (*.f32 1/216 (cbrt.f32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 5)))))) (pow.f32 u 3)) (cbrt.f32 (/.f32 1 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 4))) (fma.f32 1/3 (*.f32 (cbrt.f32 (/.f32 1 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 4))) (/.f32 (-.f32 (fma.f32 -1/16 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 1/16) (*.f32 (pow.f32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 16) 1/18) (*.f32 (pow.f32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 16) 1/18) 1/12))) (*.f32 u u))) (fma.f32 -1/6 (/.f32 (*.f32 (pow.f32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 5) 1/18) (pow.f32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 5) 1/18)) u) (cbrt.f32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 2)))))
(+.f32 (fma.f32 -1/6 (*.f32 (pow.f32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 5) 1/18) (/.f32 (pow.f32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 5) 1/18) u)) (cbrt.f32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 2))) (*.f32 (cbrt.f32 (/.f32 1 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 4))) (+.f32 (*.f32 1/3 (/.f32 (+.f32 1/16 (fma.f32 -1/16 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (*.f32 (*.f32 (pow.f32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 16) 1/18) (pow.f32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 16) 1/18)) -1/12))) (*.f32 u u))) (/.f32 (*.f32 -1/3 (-.f32 (fma.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 1/96 -1/64) (fma.f32 1/3 (*.f32 (+.f32 1/16 (fma.f32 -1/16 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (*.f32 (*.f32 (pow.f32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 16) 1/18) (pow.f32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 16) 1/18)) -1/12))) (*.f32 (pow.f32 (/.f32 1 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))) 1/18) (pow.f32 (/.f32 1 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))) 1/18))) (*.f32 1/216 (cbrt.f32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 5)))))) (pow.f32 u 3)))))
(*.f32 s (*.f32 (log.f32 (+.f32 1 (*.f32 -4 u))) (cbrt.f32 -1)))
(*.f32 s (*.f32 (cbrt.f32 -1) (log1p.f32 (*.f32 u -4))))
(*.f32 (cbrt.f32 -1) (*.f32 s (log1p.f32 (*.f32 u -4))))
(*.f32 s (*.f32 (log.f32 (+.f32 1 (*.f32 -4 u))) (cbrt.f32 -1)))
(*.f32 s (*.f32 (cbrt.f32 -1) (log1p.f32 (*.f32 u -4))))
(*.f32 (cbrt.f32 -1) (*.f32 s (log1p.f32 (*.f32 u -4))))
(*.f32 s (*.f32 (log.f32 (+.f32 1 (*.f32 -4 u))) (cbrt.f32 -1)))
(*.f32 s (*.f32 (cbrt.f32 -1) (log1p.f32 (*.f32 u -4))))
(*.f32 (cbrt.f32 -1) (*.f32 s (log1p.f32 (*.f32 u -4))))
(*.f32 s (*.f32 (log.f32 (+.f32 1 (*.f32 -4 u))) (cbrt.f32 -1)))
(*.f32 s (*.f32 (cbrt.f32 -1) (log1p.f32 (*.f32 u -4))))
(*.f32 (cbrt.f32 -1) (*.f32 s (log1p.f32 (*.f32 u -4))))
(*.f32 s (*.f32 (log.f32 (+.f32 1 (*.f32 -4 u))) (cbrt.f32 -1)))
(*.f32 s (*.f32 (cbrt.f32 -1) (log1p.f32 (*.f32 u -4))))
(*.f32 (cbrt.f32 -1) (*.f32 s (log1p.f32 (*.f32 u -4))))
(*.f32 s (*.f32 (log.f32 (+.f32 1 (*.f32 -4 u))) (cbrt.f32 -1)))
(*.f32 s (*.f32 (cbrt.f32 -1) (log1p.f32 (*.f32 u -4))))
(*.f32 (cbrt.f32 -1) (*.f32 s (log1p.f32 (*.f32 u -4))))
(*.f32 s (*.f32 (log.f32 (+.f32 1 (*.f32 -4 u))) (cbrt.f32 -1)))
(*.f32 s (*.f32 (cbrt.f32 -1) (log1p.f32 (*.f32 u -4))))
(*.f32 (cbrt.f32 -1) (*.f32 s (log1p.f32 (*.f32 u -4))))
(*.f32 s (*.f32 (log.f32 (+.f32 1 (*.f32 -4 u))) (cbrt.f32 -1)))
(*.f32 s (*.f32 (cbrt.f32 -1) (log1p.f32 (*.f32 u -4))))
(*.f32 (cbrt.f32 -1) (*.f32 s (log1p.f32 (*.f32 u -4))))
(*.f32 s (*.f32 (log.f32 (+.f32 (*.f32 -4 u) 1)) (cbrt.f32 -1)))
(*.f32 s (*.f32 (cbrt.f32 -1) (log1p.f32 (*.f32 u -4))))
(*.f32 (cbrt.f32 -1) (*.f32 s (log1p.f32 (*.f32 u -4))))
(*.f32 s (*.f32 (log.f32 (+.f32 (*.f32 -4 u) 1)) (cbrt.f32 -1)))
(*.f32 s (*.f32 (cbrt.f32 -1) (log1p.f32 (*.f32 u -4))))
(*.f32 (cbrt.f32 -1) (*.f32 s (log1p.f32 (*.f32 u -4))))
(*.f32 s (*.f32 (log.f32 (+.f32 (*.f32 -4 u) 1)) (cbrt.f32 -1)))
(*.f32 s (*.f32 (cbrt.f32 -1) (log1p.f32 (*.f32 u -4))))
(*.f32 (cbrt.f32 -1) (*.f32 s (log1p.f32 (*.f32 u -4))))
(*.f32 s (*.f32 (log.f32 (+.f32 (*.f32 -4 u) 1)) (cbrt.f32 -1)))
(*.f32 s (*.f32 (cbrt.f32 -1) (log1p.f32 (*.f32 u -4))))
(*.f32 (cbrt.f32 -1) (*.f32 s (log1p.f32 (*.f32 u -4))))
(*.f32 -4 (*.f32 s (*.f32 (cbrt.f32 -1) u)))
(*.f32 -4 (*.f32 (*.f32 u (cbrt.f32 -1)) s))
(*.f32 (*.f32 (*.f32 -4 s) (cbrt.f32 -1)) u)
(*.f32 u (*.f32 (*.f32 -4 s) (cbrt.f32 -1)))
(+.f32 (*.f32 -8 (*.f32 s (*.f32 (cbrt.f32 -1) (pow.f32 u 2)))) (*.f32 -4 (*.f32 s (*.f32 (cbrt.f32 -1) u))))
(fma.f32 -8 (*.f32 (*.f32 (*.f32 u u) (cbrt.f32 -1)) s) (*.f32 -4 (*.f32 (*.f32 u (cbrt.f32 -1)) s)))
(fma.f32 -4 (*.f32 u (*.f32 (cbrt.f32 -1) s)) (*.f32 -8 (*.f32 (cbrt.f32 -1) (*.f32 (*.f32 u u) s))))
(*.f32 s (*.f32 (cbrt.f32 -1) (+.f32 (*.f32 u -4) (*.f32 -8 (*.f32 u u)))))
(+.f32 (*.f32 -64/3 (*.f32 s (*.f32 (cbrt.f32 -1) (pow.f32 u 3)))) (+.f32 (*.f32 -8 (*.f32 s (*.f32 (cbrt.f32 -1) (pow.f32 u 2)))) (*.f32 -4 (*.f32 s (*.f32 (cbrt.f32 -1) u)))))
(fma.f32 -64/3 (*.f32 (*.f32 (pow.f32 u 3) (cbrt.f32 -1)) s) (fma.f32 -8 (*.f32 (*.f32 (*.f32 u u) (cbrt.f32 -1)) s) (*.f32 -4 (*.f32 (*.f32 u (cbrt.f32 -1)) s))))
(fma.f32 -64/3 (*.f32 (pow.f32 u 3) (*.f32 (cbrt.f32 -1) s)) (fma.f32 -4 (*.f32 u (*.f32 (cbrt.f32 -1) s)) (*.f32 -8 (*.f32 (cbrt.f32 -1) (*.f32 (*.f32 u u) s)))))
(fma.f32 -64/3 (*.f32 (pow.f32 u 3) (*.f32 (cbrt.f32 -1) s)) (*.f32 s (*.f32 (cbrt.f32 -1) (+.f32 (*.f32 u -4) (*.f32 -8 (*.f32 u u))))))
(+.f32 (*.f32 -64 (*.f32 s (*.f32 (cbrt.f32 -1) (pow.f32 u 4)))) (+.f32 (*.f32 -64/3 (*.f32 s (*.f32 (cbrt.f32 -1) (pow.f32 u 3)))) (+.f32 (*.f32 -8 (*.f32 s (*.f32 (cbrt.f32 -1) (pow.f32 u 2)))) (*.f32 -4 (*.f32 s (*.f32 (cbrt.f32 -1) u))))))
(fma.f32 -64 (*.f32 (*.f32 (pow.f32 u 4) (cbrt.f32 -1)) s) (fma.f32 -64/3 (*.f32 (*.f32 (pow.f32 u 3) (cbrt.f32 -1)) s) (fma.f32 -8 (*.f32 (*.f32 (*.f32 u u) (cbrt.f32 -1)) s) (*.f32 -4 (*.f32 (*.f32 u (cbrt.f32 -1)) s)))))
(fma.f32 -64 (*.f32 (pow.f32 u 4) (*.f32 (cbrt.f32 -1) s)) (fma.f32 -64/3 (*.f32 (pow.f32 u 3) (*.f32 (cbrt.f32 -1) s)) (fma.f32 -4 (*.f32 u (*.f32 (cbrt.f32 -1) s)) (*.f32 -8 (*.f32 (cbrt.f32 -1) (*.f32 (*.f32 u u) s))))))
(+.f32 (*.f32 s (*.f32 (cbrt.f32 -1) (+.f32 (*.f32 u -4) (*.f32 -8 (*.f32 u u))))) (*.f32 s (*.f32 (cbrt.f32 -1) (+.f32 (*.f32 -64 (pow.f32 u 4)) (*.f32 -64/3 (pow.f32 u 3))))))
(*.f32 s (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) (cbrt.f32 -1)))
(*.f32 (*.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) (cbrt.f32 -1)) s)
(*.f32 (+.f32 (log.f32 u) (log.f32 -4)) (*.f32 (cbrt.f32 -1) s))
(+.f32 (*.f32 -1/4 (/.f32 (*.f32 s (cbrt.f32 -1)) u)) (*.f32 s (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) (cbrt.f32 -1))))
(fma.f32 -1/4 (/.f32 s (/.f32 u (cbrt.f32 -1))) (*.f32 (*.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) (cbrt.f32 -1)) s))
(fma.f32 (*.f32 (+.f32 (log.f32 u) (log.f32 -4)) (cbrt.f32 -1)) s (*.f32 -1/4 (*.f32 (/.f32 s u) (cbrt.f32 -1))))
(fma.f32 (*.f32 (+.f32 (log.f32 u) (log.f32 -4)) (cbrt.f32 -1)) s (*.f32 (*.f32 -1/4 (/.f32 s u)) (cbrt.f32 -1)))
(+.f32 (*.f32 -1/4 (/.f32 (*.f32 s (cbrt.f32 -1)) u)) (+.f32 (*.f32 s (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) (cbrt.f32 -1))) (*.f32 -1/32 (/.f32 (*.f32 s (cbrt.f32 -1)) (pow.f32 u 2)))))
(fma.f32 -1/4 (/.f32 s (/.f32 u (cbrt.f32 -1))) (fma.f32 s (*.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) (cbrt.f32 -1)) (/.f32 (*.f32 -1/32 (*.f32 (cbrt.f32 -1) s)) (*.f32 u u))))
(fma.f32 -1/4 (*.f32 (/.f32 s u) (cbrt.f32 -1)) (fma.f32 (*.f32 (+.f32 (log.f32 u) (log.f32 -4)) (cbrt.f32 -1)) s (*.f32 -1/32 (*.f32 (/.f32 (cbrt.f32 -1) u) (/.f32 s u)))))
(+.f32 (*.f32 (+.f32 (log.f32 u) (log.f32 -4)) (*.f32 (cbrt.f32 -1) s)) (*.f32 (*.f32 (/.f32 (cbrt.f32 -1) u) s) (+.f32 -1/4 (/.f32 -1/32 u))))
(+.f32 (*.f32 -1/4 (/.f32 (*.f32 s (cbrt.f32 -1)) u)) (+.f32 (*.f32 -1/192 (/.f32 (*.f32 s (cbrt.f32 -1)) (pow.f32 u 3))) (+.f32 (*.f32 s (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) (cbrt.f32 -1))) (*.f32 -1/32 (/.f32 (*.f32 s (cbrt.f32 -1)) (pow.f32 u 2))))))
(fma.f32 -1/4 (/.f32 s (/.f32 u (cbrt.f32 -1))) (fma.f32 -1/192 (/.f32 s (/.f32 (pow.f32 u 3) (cbrt.f32 -1))) (fma.f32 s (*.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) (cbrt.f32 -1)) (/.f32 (*.f32 -1/32 (*.f32 (cbrt.f32 -1) s)) (*.f32 u u)))))
(fma.f32 -1/4 (*.f32 (/.f32 s u) (cbrt.f32 -1)) (fma.f32 -1/192 (/.f32 (cbrt.f32 -1) (/.f32 (pow.f32 u 3) s)) (fma.f32 (*.f32 (+.f32 (log.f32 u) (log.f32 -4)) (cbrt.f32 -1)) s (*.f32 -1/32 (*.f32 (/.f32 (cbrt.f32 -1) u) (/.f32 s u))))))
(+.f32 (fma.f32 (*.f32 (+.f32 (log.f32 u) (log.f32 -4)) (cbrt.f32 -1)) s (*.f32 (*.f32 -1/4 (/.f32 s u)) (cbrt.f32 -1))) (*.f32 (*.f32 (/.f32 (cbrt.f32 -1) u) (/.f32 s u)) (+.f32 -1/32 (/.f32 -1/192 u))))
(*.f32 s (*.f32 (cbrt.f32 -1) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))
(*.f32 (*.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) (cbrt.f32 -1)) s)
(*.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (*.f32 (cbrt.f32 -1) s))
(+.f32 (*.f32 -1/4 (/.f32 (*.f32 s (cbrt.f32 -1)) u)) (*.f32 s (*.f32 (cbrt.f32 -1) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))))
(fma.f32 -1/4 (/.f32 s (/.f32 u (cbrt.f32 -1))) (*.f32 (*.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) (cbrt.f32 -1)) s))
(fma.f32 (*.f32 (cbrt.f32 -1) s) (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (*.f32 -1/4 (*.f32 (/.f32 s u) (cbrt.f32 -1))))
(fma.f32 (*.f32 (cbrt.f32 -1) s) (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (*.f32 (*.f32 -1/4 (/.f32 s u)) (cbrt.f32 -1)))
(+.f32 (*.f32 -1/4 (/.f32 (*.f32 s (cbrt.f32 -1)) u)) (+.f32 (*.f32 s (*.f32 (cbrt.f32 -1) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (*.f32 -1/32 (/.f32 (*.f32 s (cbrt.f32 -1)) (pow.f32 u 2)))))
(fma.f32 -1/4 (/.f32 s (/.f32 u (cbrt.f32 -1))) (fma.f32 s (*.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) (cbrt.f32 -1)) (/.f32 (*.f32 -1/32 (*.f32 (cbrt.f32 -1) s)) (*.f32 u u))))
(fma.f32 -1/4 (*.f32 (/.f32 s u) (cbrt.f32 -1)) (fma.f32 (*.f32 (cbrt.f32 -1) s) (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (*.f32 -1/32 (*.f32 (/.f32 (cbrt.f32 -1) u) (/.f32 s u)))))
(+.f32 (*.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (*.f32 (cbrt.f32 -1) s)) (*.f32 (*.f32 (/.f32 (cbrt.f32 -1) u) s) (+.f32 -1/4 (/.f32 -1/32 u))))
(+.f32 (*.f32 -1/4 (/.f32 (*.f32 s (cbrt.f32 -1)) u)) (+.f32 (*.f32 -1/192 (/.f32 (*.f32 s (cbrt.f32 -1)) (pow.f32 u 3))) (+.f32 (*.f32 s (*.f32 (cbrt.f32 -1) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (*.f32 -1/32 (/.f32 (*.f32 s (cbrt.f32 -1)) (pow.f32 u 2))))))
(fma.f32 -1/4 (/.f32 s (/.f32 u (cbrt.f32 -1))) (fma.f32 -1/192 (/.f32 s (/.f32 (pow.f32 u 3) (cbrt.f32 -1))) (fma.f32 s (*.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) (cbrt.f32 -1)) (/.f32 (*.f32 -1/32 (*.f32 (cbrt.f32 -1) s)) (*.f32 u u)))))
(fma.f32 -1/4 (*.f32 (/.f32 s u) (cbrt.f32 -1)) (fma.f32 -1/192 (/.f32 (cbrt.f32 -1) (/.f32 (pow.f32 u 3) s)) (fma.f32 (*.f32 (cbrt.f32 -1) s) (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (*.f32 -1/32 (*.f32 (/.f32 (cbrt.f32 -1) u) (/.f32 s u))))))
(+.f32 (fma.f32 (*.f32 (cbrt.f32 -1) s) (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (*.f32 (*.f32 -1/4 (/.f32 s u)) (cbrt.f32 -1))) (*.f32 (*.f32 (/.f32 (cbrt.f32 -1) u) (/.f32 s u)) (+.f32 -1/32 (/.f32 -1/192 u))))

localize12.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.1b
(*.f32 4 (*.f32 u s))
Compiler

Compiled 13 to 6 computations (53.8% saved)

series5.0ms (0.1%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
2.0ms
u
@0
(*.f32 4 (*.f32 u s))
1.0ms
s
@0
(*.f32 4 (*.f32 u s))
1.0ms
u
@inf
(*.f32 4 (*.f32 u s))
1.0ms
s
@inf
(*.f32 4 (*.f32 u s))
0.0ms
u
@-inf
(*.f32 4 (*.f32 u s))

rewrite45.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
552×pow1_binary32
510×add-log-exp_binary32
510×log1p-expm1-u_binary32
510×expm1-log1p-u_binary32
500×add-exp-log_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
067
11227
213947
Stop Event
node limit
Counts
1 → 11
Calls
Call 1
Inputs
(*.f32 4 (*.f32 u s))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (*.f32 4 (*.f32 u s))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 4 (*.f32 u s)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 4 (*.f32 u s)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 4 (*.f32 u s))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 4 (*.f32 u s))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (*.f32 (pow.f32 (*.f32 u s) 2) 16))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 4) (*.f32 u s)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 4 (*.f32 u s)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 4 (*.f32 u s))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 4 (*.f32 u s))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 4 (*.f32 u s))))))))

simplify10.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary32
associate-*r*_binary32
associate-*l*_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06168
110168
217168
319168
Stop Event
saturated
Counts
35 → 12
Calls
Call 1
Inputs
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
Outputs
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 s u))

localize56.0ms (0.6%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u (+.f32 8 (*.f32 u 64/3))))))
0.3b
(*.f32 u (+.f32 8 (*.f32 u 64/3)))
0.3b
(*.f32 u (+.f32 4 (*.f32 u (+.f32 8 (*.f32 u 64/3)))))
0.3b
(*.f32 u 64/3)
Compiler

Compiled 55 to 40 computations (27.3% saved)

series9.0ms (0.1%)

Counts
4 → 60
Calls

15 calls:

TimeVariablePointExpression
1.0ms
s
@inf
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u (+.f32 8 (*.f32 u 64/3))))))
1.0ms
s
@0
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u (+.f32 8 (*.f32 u 64/3))))))
1.0ms
u
@-inf
(*.f32 u (+.f32 4 (*.f32 u (+.f32 8 (*.f32 u 64/3)))))
1.0ms
u
@inf
(*.f32 u (+.f32 4 (*.f32 u (+.f32 8 (*.f32 u 64/3)))))
1.0ms
u
@-inf
(*.f32 u 64/3)

rewrite179.0ms (2%)

Algorithm
batch-egg-rewrite
Rules
661×log-prod_binary32
550×prod-diff_binary32
338×fma-def_binary32
244×pow1/3_binary32
237×expm1-udef_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01249
127639
2379239
Stop Event
node limit
Counts
4 → 160
Calls
Call 1
Inputs
(*.f32 u 64/3)
(*.f32 u (+.f32 4 (*.f32 u (+.f32 8 (*.f32 u 64/3)))))
(*.f32 u (+.f32 8 (*.f32 u 64/3)))
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u (+.f32 8 (*.f32 u 64/3))))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (*.f32 u 64/3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (*.f32 (cbrt.f32 (pow.f32 (exp.f32 64/3) u)) (cbrt.f32 (pow.f32 (exp.f32 64/3) u)))) (log.f32 (cbrt.f32 (pow.f32 (exp.f32 64/3) u))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (pow.f32 (exp.f32 64/3) u))) (log.f32 (sqrt.f32 (pow.f32 (exp.f32 64/3) u))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 u 64/3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 u 64/3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 u 64/3)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 u 64/3)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 u 64/3) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (*.f32 (*.f32 u u) 4096/9))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 64/3) u))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 u 64/3))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 u 64/3) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 u 64/3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 u 64/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 u 64/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 u 64/3)) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 u 4) (*.f32 (fma.f32 u 64/3 8) (*.f32 u u)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (fma.f32 u 64/3 8) (*.f32 u u)) (*.f32 u 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (*.f32 u (fma.f32 u (fma.f32 u 64/3 8) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (*.f32 u 4) 1) (*.f32 (*.f32 (fma.f32 u 64/3 8) (*.f32 u u)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (*.f32 (cbrt.f32 (pow.f32 (exp.f32 u) (fma.f32 u (fma.f32 u 64/3 8) 4))) (cbrt.f32 (pow.f32 (exp.f32 u) (fma.f32 u (fma.f32 u 64/3 8) 4))))) (log.f32 (cbrt.f32 (pow.f32 (exp.f32 u) (fma.f32 u (fma.f32 u 64/3 8) 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (pow.f32 (exp.f32 u) (fma.f32 u (fma.f32 u 64/3 8) 4)))) (log.f32 (sqrt.f32 (pow.f32 (exp.f32 u) (fma.f32 u (fma.f32 u 64/3 8) 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 u (fma.f32 u (fma.f32 u 64/3 8) 4)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (*.f32 u 4) 3) (pow.f32 (*.f32 (fma.f32 u 64/3 8) (*.f32 u u)) 3)) (fma.f32 (*.f32 u 4) (*.f32 u 4) (-.f32 (*.f32 (*.f32 (fma.f32 u 64/3 8) (*.f32 u u)) (*.f32 (fma.f32 u 64/3 8) (*.f32 u u))) (*.f32 (*.f32 u 4) (*.f32 (fma.f32 u 64/3 8) (*.f32 u u))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (*.f32 (*.f32 u 4) (*.f32 u 4)) (*.f32 (*.f32 (fma.f32 u 64/3 8) (*.f32 u u)) (*.f32 (fma.f32 u 64/3 8) (*.f32 u u)))) (-.f32 (*.f32 u 4) (*.f32 (fma.f32 u 64/3 8) (*.f32 u u))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (+.f32 64 (pow.f32 (*.f32 u (fma.f32 u 64/3 8)) 3)) u) (fma.f32 (*.f32 u (fma.f32 u 64/3 8)) (fma.f32 u (fma.f32 u 64/3 8) -4) 16))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 16 (pow.f32 (*.f32 u (fma.f32 u 64/3 8)) 2)) u) (-.f32 4 (*.f32 u (fma.f32 u 64/3 8))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 u (+.f32 64 (pow.f32 (*.f32 u (fma.f32 u 64/3 8)) 3))) (fma.f32 (*.f32 u (fma.f32 u 64/3 8)) (fma.f32 u (fma.f32 u 64/3 8) -4) 16))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 u (-.f32 16 (pow.f32 (*.f32 u (fma.f32 u 64/3 8)) 2))) (-.f32 4 (*.f32 u (fma.f32 u 64/3 8))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 u (fma.f32 u (fma.f32 u 64/3 8) 4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 u (fma.f32 u (fma.f32 u 64/3 8) 4)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 u (fma.f32 u (fma.f32 u 64/3 8) 4))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 u (fma.f32 u (fma.f32 u 64/3 8) 4))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (pow.f32 u 3) (pow.f32 (fma.f32 u (fma.f32 u 64/3 8) 4) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (pow.f32 (fma.f32 u (fma.f32 u 64/3 8) 4) 3) (pow.f32 u 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 u (fma.f32 u (fma.f32 u 64/3 8) 4)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 u) (fma.f32 u (fma.f32 u 64/3 8) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 u (fma.f32 u (fma.f32 u 64/3 8) 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (exp.f32 (*.f32 (fma.f32 u 64/3 8) (*.f32 u u))) (exp.f32 (*.f32 u 4))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 u (fma.f32 u (fma.f32 u 64/3 8) 4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 u 3) (pow.f32 (fma.f32 u (fma.f32 u 64/3 8) 4) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (fma.f32 u (fma.f32 u 64/3 8) 4) 3) (pow.f32 u 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 u (fma.f32 u (fma.f32 u 64/3 8) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 u (fma.f32 u (fma.f32 u 64/3 8) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 u (fma.f32 u (fma.f32 u 64/3 8) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 u (fma.f32 u (fma.f32 u 64/3 8) 4))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u 4 (*.f32 (fma.f32 u 64/3 8) (*.f32 u u)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u (*.f32 u (fma.f32 u 64/3 8)) (*.f32 u 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 4 u (*.f32 (fma.f32 u 64/3 8) (*.f32 u u)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (fma.f32 u 64/3 8) (*.f32 u u) (*.f32 u 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (fma.f32 u 64/3 8)) u (*.f32 u 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 u 4) (*.f32 (fma.f32 u 64/3 8) (*.f32 u u)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 (fma.f32 u 64/3 8) (*.f32 u u)) (*.f32 u 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u u) (fma.f32 u 64/3 8) (*.f32 u 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (*.f32 u (fma.f32 u 64/3 8))) 2) (*.f32 (cbrt.f32 (*.f32 u (fma.f32 u 64/3 8))) u) (*.f32 u 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 u) 2) (*.f32 (cbrt.f32 u) 4) (*.f32 (fma.f32 u 64/3 8) (*.f32 u u)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 u) 2) (*.f32 (cbrt.f32 u) (*.f32 u (fma.f32 u 64/3 8))) (*.f32 u 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 u (fma.f32 u 64/3 8))) (*.f32 (sqrt.f32 (*.f32 u (fma.f32 u 64/3 8))) u) (*.f32 u 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 u) (*.f32 (sqrt.f32 u) 4) (*.f32 (fma.f32 u 64/3 8) (*.f32 u u)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 u) (*.f32 (sqrt.f32 u) (*.f32 u (fma.f32 u 64/3 8))) (*.f32 u 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u 4) 1 (*.f32 (*.f32 (fma.f32 u 64/3 8) (*.f32 u u)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (cbrt.f32 (*.f32 u 4)) (cbrt.f32 (*.f32 u 4))) (cbrt.f32 (*.f32 u 4)) (*.f32 (fma.f32 u 64/3 8) (*.f32 u u)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (cbrt.f32 (*.f32 (fma.f32 u 64/3 8) (*.f32 u u))) (cbrt.f32 (*.f32 (fma.f32 u 64/3 8) (*.f32 u u)))) (cbrt.f32 (*.f32 (fma.f32 u 64/3 8) (*.f32 u u))) (*.f32 u 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 u 4)) (sqrt.f32 (*.f32 u 4)) (*.f32 (fma.f32 u 64/3 8) (*.f32 u u)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 (fma.f32 u 64/3 8) (*.f32 u u))) (sqrt.f32 (*.f32 (fma.f32 u 64/3 8) (*.f32 u u))) (*.f32 u 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (sqrt.f32 u) (sqrt.f32 (*.f32 u (fma.f32 u 64/3 8)))) (*.f32 (sqrt.f32 u) (sqrt.f32 (*.f32 u (fma.f32 u 64/3 8)))) (*.f32 u 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (sqrt.f32 (*.f32 u (fma.f32 u 64/3 8))) (sqrt.f32 u)) (*.f32 (sqrt.f32 (*.f32 u (fma.f32 u 64/3 8))) (sqrt.f32 u)) (*.f32 u 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 4 (pow.f32 (cbrt.f32 u) 2)) (cbrt.f32 u) (*.f32 (fma.f32 u 64/3 8) (*.f32 u u)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 4 (sqrt.f32 u)) (sqrt.f32 u) (*.f32 (fma.f32 u 64/3 8) (*.f32 u u)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (pow.f32 (cbrt.f32 (*.f32 u (fma.f32 u 64/3 8))) 2)) (cbrt.f32 (*.f32 u (fma.f32 u 64/3 8))) (*.f32 u 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (sqrt.f32 (*.f32 u (fma.f32 u 64/3 8)))) (sqrt.f32 (*.f32 u (fma.f32 u 64/3 8))) (*.f32 u 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u (fma.f32 u 64/3 8)) (pow.f32 (cbrt.f32 u) 2)) (cbrt.f32 u) (*.f32 u 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u (fma.f32 u 64/3 8)) (sqrt.f32 u)) (sqrt.f32 u) (*.f32 u 4))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 u 8) (*.f32 u (*.f32 u 64/3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 u (*.f32 u 64/3)) (*.f32 u 8))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (*.f32 u (fma.f32 u 64/3 8)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (*.f32 u 8) 1) (*.f32 (*.f32 u (*.f32 u 64/3)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (*.f32 (cbrt.f32 (pow.f32 (exp.f32 u) (fma.f32 u 64/3 8))) (cbrt.f32 (pow.f32 (exp.f32 u) (fma.f32 u 64/3 8))))) (log.f32 (cbrt.f32 (pow.f32 (exp.f32 u) (fma.f32 u 64/3 8)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (pow.f32 (exp.f32 u) (fma.f32 u 64/3 8)))) (log.f32 (sqrt.f32 (pow.f32 (exp.f32 u) (fma.f32 u 64/3 8)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 u (fma.f32 u 64/3 8)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (*.f32 u 8) 3) (pow.f32 (*.f32 u (*.f32 u 64/3)) 3)) (fma.f32 (*.f32 u 8) (*.f32 u 8) (-.f32 (*.f32 (*.f32 u (*.f32 u 64/3)) (*.f32 u (*.f32 u 64/3))) (*.f32 (*.f32 u 8) (*.f32 u (*.f32 u 64/3))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (*.f32 (*.f32 u 8) (*.f32 u 8)) (*.f32 (*.f32 u (*.f32 u 64/3)) (*.f32 u (*.f32 u 64/3)))) (-.f32 (*.f32 u 8) (*.f32 u (*.f32 u 64/3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (fma.f32 (pow.f32 u 3) 262144/27 512) u) (fma.f32 (*.f32 u 64/3) (fma.f32 u 64/3 -8) 64))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 64 (*.f32 (*.f32 u u) 4096/9)) u) (+.f32 8 (*.f32 -64/3 u)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 u (fma.f32 (pow.f32 u 3) 262144/27 512)) (fma.f32 (*.f32 u 64/3) (fma.f32 u 64/3 -8) 64))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 u (-.f32 64 (*.f32 (*.f32 u u) 4096/9))) (+.f32 8 (*.f32 -64/3 u)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 u (fma.f32 u 64/3 8)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 u (fma.f32 u 64/3 8))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 u (fma.f32 u 64/3 8))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 u (fma.f32 u 64/3 8)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 u (fma.f32 u 64/3 8)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 u) (fma.f32 u 64/3 8)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 u (fma.f32 u 64/3 8)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (exp.f32 (*.f32 u (*.f32 u 64/3))) (exp.f32 (*.f32 u 8))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 u (fma.f32 u 64/3 8)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 u (fma.f32 u 64/3 8))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 u (fma.f32 u 64/3 8))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 u (fma.f32 u 64/3 8))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 u (fma.f32 u 64/3 8))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u (*.f32 u 64/3) (*.f32 u 8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u 8 (*.f32 u (*.f32 u 64/3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 64/3 (*.f32 u u) (*.f32 u 8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u 64/3) u (*.f32 u 8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 8 u (*.f32 u (*.f32 u 64/3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 u 8) (*.f32 u (*.f32 u 64/3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 u (*.f32 u 64/3)) (*.f32 u 8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u u) 64/3 (*.f32 u 8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 u) 2) (*.f32 (cbrt.f32 u) 8) (*.f32 u (*.f32 u 64/3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 u) 2) (*.f32 (cbrt.f32 u) (*.f32 u 64/3)) (*.f32 u 8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (*.f32 (*.f32 u u) 4096/9)) (*.f32 (cbrt.f32 (*.f32 u 64/3)) u) (*.f32 u 8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 u) (*.f32 (sqrt.f32 u) 8) (*.f32 u (*.f32 u 64/3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 u) (*.f32 (sqrt.f32 u) (*.f32 u 64/3)) (*.f32 u 8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 u 64/3)) (*.f32 (sqrt.f32 (*.f32 u 64/3)) u) (*.f32 u 8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u 8) 1 (*.f32 (*.f32 u (*.f32 u 64/3)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (cbrt.f32 (*.f32 u 8)) (cbrt.f32 (*.f32 u 8))) (cbrt.f32 (*.f32 u 8)) (*.f32 u (*.f32 u 64/3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (cbrt.f32 (*.f32 u (*.f32 u 64/3))) (cbrt.f32 (*.f32 u (*.f32 u 64/3)))) (cbrt.f32 (*.f32 u (*.f32 u 64/3))) (*.f32 u 8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 u 8)) (sqrt.f32 (*.f32 u 8)) (*.f32 u (*.f32 u 64/3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 u (*.f32 u 64/3))) (sqrt.f32 (*.f32 u (*.f32 u 64/3))) (*.f32 u 8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (sqrt.f32 u) (sqrt.f32 (*.f32 u 64/3))) (*.f32 (sqrt.f32 u) (sqrt.f32 (*.f32 u 64/3))) (*.f32 u 8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (sqrt.f32 (*.f32 u 64/3)) (sqrt.f32 u)) (*.f32 (sqrt.f32 (*.f32 u 64/3)) (sqrt.f32 u)) (*.f32 u 8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 8 (pow.f32 (cbrt.f32 u) 2)) (cbrt.f32 u) (*.f32 u (*.f32 u 64/3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 8 (sqrt.f32 u)) (sqrt.f32 u) (*.f32 u (*.f32 u 64/3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (cbrt.f32 (*.f32 (*.f32 u u) 4096/9))) (cbrt.f32 (*.f32 u 64/3)) (*.f32 u 8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (sqrt.f32 (*.f32 u 64/3))) (sqrt.f32 (*.f32 u 64/3)) (*.f32 u 8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u 64/3) (pow.f32 (cbrt.f32 u) 2)) (cbrt.f32 u) (*.f32 u 8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u 64/3) (sqrt.f32 u)) (sqrt.f32 u) (*.f32 u 8))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (*.f32 u (*.f32 (fma.f32 u (fma.f32 u 64/3 8) 4) s)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (*.f32 u 4) s) (*.f32 (*.f32 (fma.f32 u 64/3 8) (*.f32 u u)) s))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 4 (*.f32 u s)) (*.f32 (*.f32 u (fma.f32 u 64/3 8)) (*.f32 u s)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (*.f32 u (fma.f32 u 64/3 8)) (*.f32 u s)) (*.f32 4 (*.f32 u s)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 s (*.f32 u 4)) (*.f32 s (*.f32 (fma.f32 u 64/3 8) (*.f32 u u))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (*.f32 u s) 4) (*.f32 (*.f32 u s) (*.f32 u (fma.f32 u 64/3 8))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (*.f32 u s) (*.f32 u (fma.f32 u 64/3 8))) (*.f32 (*.f32 u s) 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (*.f32 (cbrt.f32 (pow.f32 (exp.f32 (*.f32 u s)) (fma.f32 u (fma.f32 u 64/3 8) 4))) (cbrt.f32 (pow.f32 (exp.f32 (*.f32 u s)) (fma.f32 u (fma.f32 u 64/3 8) 4))))) (log.f32 (cbrt.f32 (pow.f32 (exp.f32 (*.f32 u s)) (fma.f32 u (fma.f32 u 64/3 8) 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (pow.f32 (exp.f32 (*.f32 u s)) (fma.f32 u (fma.f32 u 64/3 8) 4)))) (log.f32 (sqrt.f32 (pow.f32 (exp.f32 (*.f32 u s)) (fma.f32 u (fma.f32 u 64/3 8) 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 u (*.f32 (fma.f32 u (fma.f32 u 64/3 8) 4) s)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (*.f32 u s) (+.f32 64 (pow.f32 (*.f32 u (fma.f32 u 64/3 8)) 3))) (fma.f32 (*.f32 u (fma.f32 u 64/3 8)) (fma.f32 u (fma.f32 u 64/3 8) -4) 16))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (*.f32 u s) (-.f32 16 (pow.f32 (*.f32 u (fma.f32 u 64/3 8)) 2))) (-.f32 4 (*.f32 u (fma.f32 u 64/3 8))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 u (*.f32 (fma.f32 u (fma.f32 u 64/3 8) 4) s)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 u (*.f32 (fma.f32 u (fma.f32 u 64/3 8) 4) s)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 u (*.f32 (fma.f32 u (fma.f32 u 64/3 8) 4) s))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 u (*.f32 (fma.f32 u (fma.f32 u 64/3 8) 4) s))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (pow.f32 (*.f32 u (fma.f32 u (fma.f32 u 64/3 8) 4)) 3) (pow.f32 s 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (pow.f32 s 3) (pow.f32 (*.f32 u (fma.f32 u (fma.f32 u 64/3 8) 4)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 u (*.f32 (fma.f32 u (fma.f32 u 64/3 8) 4) s)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 (*.f32 u s)) (fma.f32 u (fma.f32 u 64/3 8) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 u (*.f32 (fma.f32 u (fma.f32 u 64/3 8) 4) s)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 u (*.f32 (fma.f32 u (fma.f32 u 64/3 8) 4) s)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (*.f32 u (fma.f32 u (fma.f32 u 64/3 8) 4)) 3) (pow.f32 s 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 s 3) (pow.f32 (*.f32 u (fma.f32 u (fma.f32 u 64/3 8) 4)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 u (*.f32 (fma.f32 u (fma.f32 u 64/3 8) 4) s))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 u (*.f32 (fma.f32 u (fma.f32 u 64/3 8) 4) s))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 u (*.f32 (fma.f32 u (fma.f32 u 64/3 8) 4) s))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 u (*.f32 (fma.f32 u (fma.f32 u 64/3 8) 4) s))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 4 (*.f32 u s) (*.f32 (*.f32 u (fma.f32 u 64/3 8)) (*.f32 u s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (fma.f32 u 64/3 8)) (*.f32 u s) (*.f32 4 (*.f32 u s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 s (*.f32 u 4) (*.f32 s (*.f32 (fma.f32 u 64/3 8) (*.f32 u u))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u 4) s (*.f32 (*.f32 (fma.f32 u 64/3 8) (*.f32 u u)) s))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u s) 4 (*.f32 (*.f32 u s) (*.f32 u (fma.f32 u 64/3 8))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u s) (*.f32 u (fma.f32 u 64/3 8)) (*.f32 (*.f32 u s) 4))))))

simplify136.0ms (1.5%)

Algorithm
egg-herbie
Rules
1007×fma-def_binary32
668×*-commutative_binary32
562×distribute-rgt-in_binary32
507×distribute-lft-in_binary32
471×distribute-lft-out_binary32
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
036720
194657
2206598
3521594
41777594
53613594
64546594
74772594
85176594
95830594
106876594
117588594
Stop Event
node limit
Counts
220 → 188
Calls
Call 1
Inputs
(*.f32 64/3 u)
(*.f32 64/3 u)
(*.f32 64/3 u)
(*.f32 64/3 u)
(*.f32 64/3 u)
(*.f32 64/3 u)
(*.f32 64/3 u)
(*.f32 64/3 u)
(*.f32 64/3 u)
(*.f32 64/3 u)
(*.f32 64/3 u)
(*.f32 64/3 u)
(*.f32 4 u)
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(+.f32 (*.f32 8 (pow.f32 u 2)) (+.f32 (*.f32 64/3 (pow.f32 u 3)) (*.f32 4 u)))
(+.f32 (*.f32 8 (pow.f32 u 2)) (+.f32 (*.f32 64/3 (pow.f32 u 3)) (*.f32 4 u)))
(*.f32 64/3 (pow.f32 u 3))
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 64/3 (pow.f32 u 3)))
(+.f32 (*.f32 8 (pow.f32 u 2)) (+.f32 (*.f32 4 u) (*.f32 64/3 (pow.f32 u 3))))
(+.f32 (*.f32 8 (pow.f32 u 2)) (+.f32 (*.f32 4 u) (*.f32 64/3 (pow.f32 u 3))))
(*.f32 64/3 (pow.f32 u 3))
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 64/3 (pow.f32 u 3)))
(+.f32 (*.f32 8 (pow.f32 u 2)) (+.f32 (*.f32 4 u) (*.f32 64/3 (pow.f32 u 3))))
(+.f32 (*.f32 8 (pow.f32 u 2)) (+.f32 (*.f32 4 u) (*.f32 64/3 (pow.f32 u 3))))
(*.f32 8 u)
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(*.f32 64/3 (pow.f32 u 2))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(*.f32 64/3 (pow.f32 u 2))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
(*.f32 4 (*.f32 s u))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
(*.f32 64/3 (*.f32 s (pow.f32 u 3)))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
(*.f32 64/3 (*.f32 s (pow.f32 u 3)))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
Outputs
(*.f32 64/3 u)
(*.f32 64/3 u)
(*.f32 64/3 u)
(*.f32 64/3 u)
(*.f32 64/3 u)
(*.f32 64/3 u)
(*.f32 64/3 u)
(*.f32 64/3 u)
(*.f32 64/3 u)
(*.f32 64/3 u)
(*.f32 64/3 u)
(*.f32 64/3 u)
(*.f32 4 u)
(*.f32 u 4)
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(fma.f32 8 (*.f32 u u) (*.f32 u 4))
(fma.f32 u 4 (*.f32 u (*.f32 u 8)))
(*.f32 u (+.f32 4 (*.f32 u 8)))
(*.f32 u (fma.f32 u 8 4))
(+.f32 (*.f32 8 (pow.f32 u 2)) (+.f32 (*.f32 64/3 (pow.f32 u 3)) (*.f32 4 u)))
(fma.f32 8 (*.f32 u u) (fma.f32 4 u (*.f32 64/3 (pow.f32 u 3))))
(fma.f32 8 (*.f32 u u) (fma.f32 64/3 (pow.f32 u 3) (*.f32 u 4)))
(*.f32 u (fma.f32 u (fma.f32 64/3 u 8) 4))
(+.f32 (*.f32 8 (pow.f32 u 2)) (+.f32 (*.f32 64/3 (pow.f32 u 3)) (*.f32 4 u)))
(fma.f32 8 (*.f32 u u) (fma.f32 4 u (*.f32 64/3 (pow.f32 u 3))))
(fma.f32 8 (*.f32 u u) (fma.f32 64/3 (pow.f32 u 3) (*.f32 u 4)))
(*.f32 u (fma.f32 u (fma.f32 64/3 u 8) 4))
(*.f32 64/3 (pow.f32 u 3))
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 64/3 (pow.f32 u 3)))
(fma.f32 8 (*.f32 u u) (*.f32 64/3 (pow.f32 u 3)))
(fma.f32 64/3 (pow.f32 u 3) (*.f32 u (*.f32 u 8)))
(*.f32 (*.f32 u u) (fma.f32 64/3 u 8))
(*.f32 u (*.f32 u (fma.f32 64/3 u 8)))
(+.f32 (*.f32 8 (pow.f32 u 2)) (+.f32 (*.f32 4 u) (*.f32 64/3 (pow.f32 u 3))))
(fma.f32 8 (*.f32 u u) (fma.f32 4 u (*.f32 64/3 (pow.f32 u 3))))
(fma.f32 8 (*.f32 u u) (fma.f32 64/3 (pow.f32 u 3) (*.f32 u 4)))
(*.f32 u (fma.f32 u (fma.f32 64/3 u 8) 4))
(+.f32 (*.f32 8 (pow.f32 u 2)) (+.f32 (*.f32 4 u) (*.f32 64/3 (pow.f32 u 3))))
(fma.f32 8 (*.f32 u u) (fma.f32 4 u (*.f32 64/3 (pow.f32 u 3))))
(fma.f32 8 (*.f32 u u) (fma.f32 64/3 (pow.f32 u 3) (*.f32 u 4)))
(*.f32 u (fma.f32 u (fma.f32 64/3 u 8) 4))
(*.f32 64/3 (pow.f32 u 3))
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 64/3 (pow.f32 u 3)))
(fma.f32 8 (*.f32 u u) (*.f32 64/3 (pow.f32 u 3)))
(fma.f32 64/3 (pow.f32 u 3) (*.f32 u (*.f32 u 8)))
(*.f32 (*.f32 u u) (fma.f32 64/3 u 8))
(*.f32 u (*.f32 u (fma.f32 64/3 u 8)))
(+.f32 (*.f32 8 (pow.f32 u 2)) (+.f32 (*.f32 4 u) (*.f32 64/3 (pow.f32 u 3))))
(fma.f32 8 (*.f32 u u) (fma.f32 4 u (*.f32 64/3 (pow.f32 u 3))))
(fma.f32 8 (*.f32 u u) (fma.f32 64/3 (pow.f32 u 3) (*.f32 u 4)))
(*.f32 u (fma.f32 u (fma.f32 64/3 u 8) 4))
(+.f32 (*.f32 8 (pow.f32 u 2)) (+.f32 (*.f32 4 u) (*.f32 64/3 (pow.f32 u 3))))
(fma.f32 8 (*.f32 u u) (fma.f32 4 u (*.f32 64/3 (pow.f32 u 3))))
(fma.f32 8 (*.f32 u u) (fma.f32 64/3 (pow.f32 u 3) (*.f32 u 4)))
(*.f32 u (fma.f32 u (fma.f32 64/3 u 8) 4))
(*.f32 8 u)
(*.f32 u 8)
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(fma.f32 64/3 (*.f32 u u) (*.f32 u 8))
(*.f32 u (fma.f32 64/3 u 8))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(fma.f32 64/3 (*.f32 u u) (*.f32 u 8))
(*.f32 u (fma.f32 64/3 u 8))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(fma.f32 64/3 (*.f32 u u) (*.f32 u 8))
(*.f32 u (fma.f32 64/3 u 8))
(*.f32 64/3 (pow.f32 u 2))
(*.f32 64/3 (*.f32 u u))
(*.f32 u (*.f32 64/3 u))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(fma.f32 64/3 (*.f32 u u) (*.f32 u 8))
(*.f32 u (fma.f32 64/3 u 8))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(fma.f32 64/3 (*.f32 u u) (*.f32 u 8))
(*.f32 u (fma.f32 64/3 u 8))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(fma.f32 64/3 (*.f32 u u) (*.f32 u 8))
(*.f32 u (fma.f32 64/3 u 8))
(*.f32 64/3 (pow.f32 u 2))
(*.f32 64/3 (*.f32 u u))
(*.f32 u (*.f32 64/3 u))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(fma.f32 64/3 (*.f32 u u) (*.f32 u 8))
(*.f32 u (fma.f32 64/3 u 8))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(fma.f32 64/3 (*.f32 u u) (*.f32 u 8))
(*.f32 u (fma.f32 64/3 u 8))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(fma.f32 64/3 (*.f32 u u) (*.f32 u 8))
(*.f32 u (fma.f32 64/3 u 8))
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
(*.f32 (fma.f32 (+.f32 (*.f32 64/3 u) 8) u 4) (*.f32 u s))
(*.f32 u (*.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) s))
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
(*.f32 (fma.f32 (+.f32 (*.f32 64/3 u) 8) u 4) (*.f32 u s))
(*.f32 u (*.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) s))
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
(*.f32 (fma.f32 (+.f32 (*.f32 64/3 u) 8) u 4) (*.f32 u s))
(*.f32 u (*.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) s))
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
(*.f32 (fma.f32 (+.f32 (*.f32 64/3 u) 8) u 4) (*.f32 u s))
(*.f32 u (*.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) s))
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
(*.f32 (fma.f32 (+.f32 (*.f32 64/3 u) 8) u 4) (*.f32 u s))
(*.f32 u (*.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) s))
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
(*.f32 (fma.f32 (+.f32 (*.f32 64/3 u) 8) u 4) (*.f32 u s))
(*.f32 u (*.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) s))
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
(*.f32 (fma.f32 (+.f32 (*.f32 64/3 u) 8) u 4) (*.f32 u s))
(*.f32 u (*.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) s))
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
(*.f32 (fma.f32 (+.f32 (*.f32 64/3 u) 8) u 4) (*.f32 u s))
(*.f32 u (*.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) s))
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
(*.f32 (fma.f32 (+.f32 (*.f32 64/3 u) 8) u 4) (*.f32 u s))
(*.f32 u (*.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) s))
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
(*.f32 (fma.f32 (+.f32 (*.f32 64/3 u) 8) u 4) (*.f32 u s))
(*.f32 u (*.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) s))
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
(*.f32 (fma.f32 (+.f32 (*.f32 64/3 u) 8) u 4) (*.f32 u s))
(*.f32 u (*.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) s))
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
(*.f32 (fma.f32 (+.f32 (*.f32 64/3 u) 8) u 4) (*.f32 u s))
(*.f32 u (*.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) s))
(*.f32 4 (*.f32 s u))
(*.f32 (*.f32 4 s) u)
(*.f32 u (*.f32 4 s))
(*.f32 4 (*.f32 u s))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(fma.f32 4 (*.f32 u s) (*.f32 (*.f32 8 s) (*.f32 u u)))
(fma.f32 4 (*.f32 u s) (*.f32 8 (*.f32 u (*.f32 u s))))
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u 8))))
(*.f32 (*.f32 u s) (fma.f32 u 8 4))
(*.f32 u (*.f32 s (fma.f32 u 8 4)))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
(*.f32 (fma.f32 (+.f32 (*.f32 64/3 u) 8) u 4) (*.f32 u s))
(*.f32 u (*.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) s))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
(*.f32 (fma.f32 (+.f32 (*.f32 64/3 u) 8) u 4) (*.f32 u s))
(*.f32 u (*.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) s))
(*.f32 64/3 (*.f32 s (pow.f32 u 3)))
(*.f32 64/3 (*.f32 (pow.f32 u 3) s))
(*.f32 (pow.f32 u 3) (*.f32 64/3 s))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(fma.f32 64/3 (*.f32 (pow.f32 u 3) s) (*.f32 (*.f32 8 s) (*.f32 u u)))
(fma.f32 64/3 (*.f32 (pow.f32 u 3) s) (*.f32 8 (*.f32 u (*.f32 u s))))
(*.f32 (fma.f32 64/3 u 8) (*.f32 (*.f32 u u) s))
(*.f32 u (*.f32 (fma.f32 64/3 u 8) (*.f32 u s)))
(*.f32 (*.f32 u (fma.f32 64/3 u 8)) (*.f32 u s))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
(*.f32 (fma.f32 (+.f32 (*.f32 64/3 u) 8) u 4) (*.f32 u s))
(*.f32 u (*.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) s))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
(*.f32 (fma.f32 (+.f32 (*.f32 64/3 u) 8) u 4) (*.f32 u s))
(*.f32 u (*.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) s))
(*.f32 64/3 (*.f32 s (pow.f32 u 3)))
(*.f32 64/3 (*.f32 (pow.f32 u 3) s))
(*.f32 (pow.f32 u 3) (*.f32 64/3 s))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(fma.f32 64/3 (*.f32 (pow.f32 u 3) s) (*.f32 (*.f32 8 s) (*.f32 u u)))
(fma.f32 64/3 (*.f32 (pow.f32 u 3) s) (*.f32 8 (*.f32 u (*.f32 u s))))
(*.f32 (fma.f32 64/3 u 8) (*.f32 (*.f32 u u) s))
(*.f32 u (*.f32 (fma.f32 64/3 u 8) (*.f32 u s)))
(*.f32 (*.f32 u (fma.f32 64/3 u 8)) (*.f32 u s))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
(*.f32 (fma.f32 (+.f32 (*.f32 64/3 u) 8) u 4) (*.f32 u s))
(*.f32 u (*.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) s))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
(*.f32 (fma.f32 (+.f32 (*.f32 64/3 u) 8) u 4) (*.f32 u s))
(*.f32 u (*.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) s))

localize79.0ms (0.9%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f32 s (neg.f32 (fma.f32 -4 u (*.f32 (*.f32 u u) (+.f32 -8 (*.f32 u (+.f32 -64/3 (*.f32 -64 u))))))))
0.2b
(*.f32 u (+.f32 -64/3 (*.f32 -64 u)))
0.2b
(+.f32 -64/3 (*.f32 -64 u))
0.4b
(*.f32 (*.f32 u u) (+.f32 -8 (*.f32 u (+.f32 -64/3 (*.f32 -64 u)))))
Compiler

Compiled 100 to 66 computations (34% saved)

series10.0ms (0.1%)

Counts
4 → 60
Calls

15 calls:

TimeVariablePointExpression
2.0ms
s
@0
(*.f32 s (neg.f32 (fma.f32 -4 u (*.f32 (*.f32 u u) (+.f32 -8 (*.f32 u (+.f32 -64/3 (*.f32 -64 u))))))))
1.0ms
u
@inf
(+.f32 -64/3 (*.f32 -64 u))
1.0ms
u
@inf
(*.f32 (*.f32 u u) (+.f32 -8 (*.f32 u (+.f32 -64/3 (*.f32 -64 u)))))
1.0ms
s
@inf
(*.f32 s (neg.f32 (fma.f32 -4 u (*.f32 (*.f32 u u) (+.f32 -8 (*.f32 u (+.f32 -64/3 (*.f32 -64 u))))))))
1.0ms
u
@0
(*.f32 (*.f32 u u) (+.f32 -8 (*.f32 u (+.f32 -64/3 (*.f32 -64 u)))))

rewrite107.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
719×prod-diff_binary32
402×fma-def_binary32
290×expm1-udef_binary32
290×log1p-udef_binary32
223×log-pow_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01664
135950
2483250
Stop Event
node limit
Counts
4 → 166
Calls
Call 1
Inputs
(*.f32 (*.f32 u u) (+.f32 -8 (*.f32 u (+.f32 -64/3 (*.f32 -64 u)))))
(+.f32 -64/3 (*.f32 -64 u))
(*.f32 u (+.f32 -64/3 (*.f32 -64 u)))
(*.f32 s (neg.f32 (fma.f32 -4 u (*.f32 (*.f32 u u) (+.f32 -8 (*.f32 u (+.f32 -64/3 (*.f32 -64 u))))))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (*.f32 u u) -8) (*.f32 (fma.f32 u -64 -64/3) (pow.f32 u 3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (fma.f32 u -64 -64/3) (pow.f32 u 3)) (*.f32 (*.f32 u u) -8))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (*.f32 (*.f32 u u) -8) 1) (*.f32 (*.f32 (fma.f32 u -64 -64/3) (pow.f32 u 3)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (*.f32 (*.f32 u u) -8) 3) (pow.f32 (*.f32 (fma.f32 u -64 -64/3) (pow.f32 u 3)) 3)) (fma.f32 (*.f32 (*.f32 u u) -8) (*.f32 (*.f32 u u) -8) (-.f32 (*.f32 (*.f32 (fma.f32 u -64 -64/3) (pow.f32 u 3)) (*.f32 (fma.f32 u -64 -64/3) (pow.f32 u 3))) (*.f32 (*.f32 (*.f32 u u) -8) (*.f32 (fma.f32 u -64 -64/3) (pow.f32 u 3))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (*.f32 (*.f32 (*.f32 u u) -8) (*.f32 (*.f32 u u) -8)) (*.f32 (*.f32 (fma.f32 u -64 -64/3) (pow.f32 u 3)) (*.f32 (fma.f32 u -64 -64/3) (pow.f32 u 3)))) (-.f32 (*.f32 (*.f32 u u) -8) (*.f32 (fma.f32 u -64 -64/3) (pow.f32 u 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (+.f32 -512 (pow.f32 (*.f32 u (fma.f32 u -64 -64/3)) 3)) (*.f32 u u)) (fma.f32 (*.f32 u (fma.f32 u -64 -64/3)) (fma.f32 u (fma.f32 u -64 -64/3) 8) 64))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 64 (pow.f32 (*.f32 u (fma.f32 u -64 -64/3)) 2)) (*.f32 u u)) (-.f32 -8 (*.f32 u (fma.f32 u -64 -64/3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (*.f32 u u) (+.f32 -512 (pow.f32 (*.f32 u (fma.f32 u -64 -64/3)) 3))) (fma.f32 (*.f32 u (fma.f32 u -64 -64/3)) (fma.f32 u (fma.f32 u -64 -64/3) 8) 64))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (*.f32 u u) (-.f32 64 (pow.f32 (*.f32 u (fma.f32 u -64 -64/3)) 2))) (-.f32 -8 (*.f32 u (fma.f32 u -64 -64/3))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 u (sqrt.f32 (fma.f32 u (fma.f32 u -64 -64/3) -8))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (*.f32 (pow.f32 u 4) (pow.f32 (fma.f32 u (fma.f32 u -64 -64/3) -8) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (pow.f32 (exp.f32 u) u) (fma.f32 u (fma.f32 u -64 -64/3) -8)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (exp.f32 (*.f32 (fma.f32 u -64 -64/3) (pow.f32 u 3))) (exp.f32 (*.f32 (*.f32 u u) -8))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (*.f32 u u) 3) (pow.f32 (fma.f32 u (fma.f32 u -64 -64/3) -8) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (fma.f32 u (fma.f32 u -64 -64/3) -8) 3) (pow.f32 (*.f32 u u) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (fma.f32 2 (log.f32 u) (log.f32 (fma.f32 u (fma.f32 u -64 -64/3) -8))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (fma.f32 2 (log.f32 u) (log.f32 (fma.f32 u (fma.f32 u -64 -64/3) -8))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u (*.f32 u -8) (*.f32 (fma.f32 u -64 -64/3) (pow.f32 u 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u (*.f32 u (*.f32 u (fma.f32 u -64 -64/3))) (*.f32 (*.f32 u u) -8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u (*.f32 (fma.f32 u -64 -64/3) (*.f32 u u)) (*.f32 (*.f32 u u) -8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u u) -8 (*.f32 (fma.f32 u -64 -64/3) (pow.f32 u 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u u) (*.f32 u (fma.f32 u -64 -64/3)) (*.f32 (*.f32 u u) -8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 -8 (*.f32 u u) (*.f32 (fma.f32 u -64 -64/3) (pow.f32 u 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (fma.f32 u -64 -64/3) (pow.f32 u 3) (*.f32 (*.f32 u u) -8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (fma.f32 u -64 -64/3)) (*.f32 u u) (*.f32 (*.f32 u u) -8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 (*.f32 u u) -8) (*.f32 (fma.f32 u -64 -64/3) (pow.f32 u 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 (fma.f32 u -64 -64/3) (pow.f32 u 3)) (*.f32 (*.f32 u u) -8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 u 3) (fma.f32 u -64 -64/3) (*.f32 (*.f32 u u) -8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (pow.f32 (*.f32 u (fma.f32 u -64 -64/3)) 2)) (*.f32 (cbrt.f32 (*.f32 u (fma.f32 u -64 -64/3))) (*.f32 u u)) (*.f32 (*.f32 u u) -8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (pow.f32 u 4)) (*.f32 (pow.f32 (cbrt.f32 u) 2) -8) (*.f32 (fma.f32 u -64 -64/3) (pow.f32 u 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (pow.f32 u 4)) (*.f32 (pow.f32 (cbrt.f32 u) 2) (*.f32 u (fma.f32 u -64 -64/3))) (*.f32 (*.f32 u u) -8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 u (fma.f32 u -64 -64/3))) (*.f32 (sqrt.f32 (*.f32 u (fma.f32 u -64 -64/3))) (*.f32 u u)) (*.f32 (*.f32 u u) -8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u u) -8) 1 (*.f32 (*.f32 (fma.f32 u -64 -64/3) (pow.f32 u 3)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (cbrt.f32 (*.f32 (fma.f32 u -64 -64/3) (pow.f32 u 3))) (cbrt.f32 (*.f32 (fma.f32 u -64 -64/3) (pow.f32 u 3)))) (cbrt.f32 (*.f32 (fma.f32 u -64 -64/3) (pow.f32 u 3))) (*.f32 (*.f32 u u) -8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (cbrt.f32 (*.f32 (*.f32 u u) -8)) (cbrt.f32 (*.f32 (*.f32 u u) -8))) (cbrt.f32 (*.f32 (*.f32 u u) -8)) (*.f32 (fma.f32 u -64 -64/3) (pow.f32 u 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 (fma.f32 u -64 -64/3) (pow.f32 u 3))) (sqrt.f32 (*.f32 (fma.f32 u -64 -64/3) (pow.f32 u 3))) (*.f32 (*.f32 u u) -8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 (*.f32 u u) -8)) (sqrt.f32 (*.f32 (*.f32 u u) -8)) (*.f32 (fma.f32 u -64 -64/3) (pow.f32 u 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (sqrt.f32 (*.f32 u (fma.f32 u -64 -64/3)))) (*.f32 u (sqrt.f32 (*.f32 u (fma.f32 u -64 -64/3)))) (*.f32 (*.f32 u u) -8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (sqrt.f32 (*.f32 u (fma.f32 u -64 -64/3))) u) (*.f32 (sqrt.f32 (*.f32 u (fma.f32 u -64 -64/3))) u) (*.f32 (*.f32 u u) -8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 -8 u) u (*.f32 (fma.f32 u -64 -64/3) (pow.f32 u 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u (fma.f32 u -64 -64/3)) u) u (*.f32 (*.f32 u u) -8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 -8 (cbrt.f32 (pow.f32 u 4))) (pow.f32 (cbrt.f32 u) 2) (*.f32 (fma.f32 u -64 -64/3) (pow.f32 u 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u u) (fma.f32 u -64 -64/3)) u (*.f32 (*.f32 u u) -8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u u) (cbrt.f32 (pow.f32 (*.f32 u (fma.f32 u -64 -64/3)) 2))) (cbrt.f32 (*.f32 u (fma.f32 u -64 -64/3))) (*.f32 (*.f32 u u) -8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u u) (sqrt.f32 (*.f32 u (fma.f32 u -64 -64/3)))) (sqrt.f32 (*.f32 u (fma.f32 u -64 -64/3))) (*.f32 (*.f32 u u) -8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u (fma.f32 u -64 -64/3)) (cbrt.f32 (pow.f32 u 4))) (pow.f32 (cbrt.f32 u) 2) (*.f32 (*.f32 u u) -8))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (fma.f32 u -64 -64/3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 4096/9 (-.f32 -64/3 (*.f32 u -64))) (/.f32 (*.f32 (*.f32 u u) 4096) (-.f32 -64/3 (*.f32 u -64))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (fma.f32 u -64 -64/3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (fma.f32 u -64 -64/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (fma.f32 u -64 -64/3)) (pow.f32 (cbrt.f32 (fma.f32 u -64 -64/3)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (fma.f32 u -64 -64/3)) 2) (cbrt.f32 (fma.f32 u -64 -64/3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (fma.f32 u -64 -64/3)) (sqrt.f32 (fma.f32 u -64 -64/3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (fma.f32 -262144 (pow.f32 u 3) -262144/27) (/.f32 1 (fma.f32 (*.f32 u -64) (fma.f32 u -64 64/3) 4096/9)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 4096/9 (*.f32 (*.f32 u u) 4096)) (/.f32 1 (-.f32 -64/3 (*.f32 u -64))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (fma.f32 (*.f32 u -64) (fma.f32 u -64 64/3) 4096/9) (fma.f32 -262144 (pow.f32 u 3) -262144/27)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (-.f32 -64/3 (*.f32 u -64)) (-.f32 4096/9 (*.f32 (*.f32 u u) 4096))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (fma.f32 -262144 (pow.f32 u 3) -262144/27) (fma.f32 (*.f32 u -64) (fma.f32 u -64 64/3) 4096/9))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (fma.f32 -262144 (pow.f32 u 3) -262144/27) (fma.f32 (*.f32 u u) 4096 (-.f32 4096/9 (*.f32 4096/3 u))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 4096/9 (*.f32 (*.f32 u u) 4096)) (-.f32 -64/3 (*.f32 u -64)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (fma.f32 -262144 (pow.f32 u 3) -262144/27)) (neg.f32 (fma.f32 (*.f32 u -64) (fma.f32 u -64 64/3) 4096/9)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (-.f32 4096/9 (*.f32 (*.f32 u u) 4096))) (neg.f32 (-.f32 -64/3 (*.f32 u -64))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (fma.f32 (*.f32 u u) 4096 -4096/9) (fma.f32 u -64 64/3))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (fma.f32 u -64 -64/3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (fma.f32 u -64 -64/3) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (fma.f32 u -64 -64/3)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (fma.f32 u -64 -64/3)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (fma.f32 u -64 -64/3) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (fma.f32 u -64 -64/3)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (fma.f32 u -64 -64/3))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (fma.f32 u -64 -64/3) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (fma.f32 u -64 -64/3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (fma.f32 u -64 -64/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (fma.f32 u -64 -64/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (fma.f32 u -64 -64/3)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u -64 -64/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 -64 u -64/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u -64) 1 -64/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 u -64) -64/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 u) 2) (*.f32 (cbrt.f32 u) -64) -64/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 -4 (cbrt.f32 u)) (pow.f32 (*.f32 -4 (cbrt.f32 u)) 2) -64/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (*.f32 -4 (cbrt.f32 u)) 2) (*.f32 -4 (cbrt.f32 u)) -64/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 u) (*.f32 (sqrt.f32 u) -64) -64/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 u -64)) (sqrt.f32 (*.f32 u -64)) -64/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 -64 (pow.f32 (cbrt.f32 u) 2)) (cbrt.f32 u) -64/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 -64 (sqrt.f32 u)) (sqrt.f32 u) -64/3)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 u -64/3) (*.f32 u (*.f32 u -64)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 u (*.f32 u -64)) (*.f32 u -64/3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (*.f32 u -64/3) 1) (*.f32 (*.f32 u (*.f32 u -64)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 u (fma.f32 u -64 -64/3)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (*.f32 u -64/3) 3) (pow.f32 (*.f32 u (*.f32 u -64)) 3)) (fma.f32 (*.f32 u -64/3) (*.f32 u -64/3) (-.f32 (*.f32 (*.f32 u (*.f32 u -64)) (*.f32 u (*.f32 u -64))) (*.f32 (*.f32 u -64/3) (*.f32 u (*.f32 u -64))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (*.f32 (*.f32 u -64/3) (*.f32 u -64/3)) (*.f32 (*.f32 u (*.f32 u -64)) (*.f32 u (*.f32 u -64)))) (-.f32 (*.f32 u -64/3) (*.f32 u (*.f32 u -64))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (fma.f32 -262144 (pow.f32 u 3) -262144/27) u) (fma.f32 (*.f32 u -64) (fma.f32 u -64 64/3) 4096/9))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 4096/9 (*.f32 (*.f32 u u) 4096)) u) (-.f32 -64/3 (*.f32 u -64)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 u (fma.f32 -262144 (pow.f32 u 3) -262144/27)) (fma.f32 (*.f32 u -64) (fma.f32 u -64 64/3) 4096/9))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 u (-.f32 4096/9 (*.f32 (*.f32 u u) 4096))) (-.f32 -64/3 (*.f32 u -64)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 u (fma.f32 u -64 -64/3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 u (fma.f32 u -64 -64/3))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 u (fma.f32 u -64 -64/3))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 u (fma.f32 u -64 -64/3)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 u (fma.f32 u -64 -64/3)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 (fma.f32 u -64 -64/3)) u))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 u (fma.f32 u -64 -64/3)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (exp.f32 (*.f32 u (*.f32 u -64))) (exp.f32 (*.f32 u -64/3))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 u (fma.f32 u -64 -64/3)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 u (fma.f32 u -64 -64/3))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 u (fma.f32 u -64 -64/3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 u (fma.f32 u -64 -64/3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 u (fma.f32 u -64 -64/3))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u -64/3 (*.f32 u (*.f32 u -64)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u (*.f32 u -64) (*.f32 u -64/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u u) -64 (*.f32 u -64/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 -64/3 u (*.f32 u (*.f32 u -64)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 -64 (*.f32 u u) (*.f32 u -64/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u -64) u (*.f32 u -64/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 u -64/3) (*.f32 u (*.f32 u -64)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 u (*.f32 u -64)) (*.f32 u -64/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 u) 2) (*.f32 (cbrt.f32 u) -64/3) (*.f32 u (*.f32 u -64)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 u) 2) (*.f32 (cbrt.f32 u) (*.f32 u -64)) (*.f32 u -64/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (*.f32 -4 (cbrt.f32 u)) 2) (*.f32 (*.f32 -4 (cbrt.f32 u)) u) (*.f32 u -64/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 u) (*.f32 (sqrt.f32 u) -64/3) (*.f32 u (*.f32 u -64)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 u) (*.f32 (sqrt.f32 u) (*.f32 u -64)) (*.f32 u -64/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 u -64)) (*.f32 (sqrt.f32 (*.f32 u -64)) u) (*.f32 u -64/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u -64/3) 1 (*.f32 (*.f32 u (*.f32 u -64)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (cbrt.f32 (*.f32 u -64/3)) (cbrt.f32 (*.f32 u -64/3))) (cbrt.f32 (*.f32 u -64/3)) (*.f32 u (*.f32 u -64)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (cbrt.f32 (*.f32 u (*.f32 u -64))) (cbrt.f32 (*.f32 u (*.f32 u -64)))) (cbrt.f32 (*.f32 u (*.f32 u -64))) (*.f32 u -64/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 u -64/3)) (sqrt.f32 (*.f32 u -64/3)) (*.f32 u (*.f32 u -64)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 u (*.f32 u -64))) (sqrt.f32 (*.f32 u (*.f32 u -64))) (*.f32 u -64/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (sqrt.f32 u) (sqrt.f32 (*.f32 u -64))) (*.f32 (sqrt.f32 u) (sqrt.f32 (*.f32 u -64))) (*.f32 u -64/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (sqrt.f32 (*.f32 u -64)) (sqrt.f32 u)) (*.f32 (sqrt.f32 (*.f32 u -64)) (sqrt.f32 u)) (*.f32 u -64/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 -64/3 (pow.f32 (cbrt.f32 u) 2)) (cbrt.f32 u) (*.f32 u (*.f32 u -64)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 -64/3 (sqrt.f32 u)) (sqrt.f32 u) (*.f32 u (*.f32 u -64)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (pow.f32 (*.f32 -4 (cbrt.f32 u)) 2)) (*.f32 -4 (cbrt.f32 u)) (*.f32 u -64/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (sqrt.f32 (*.f32 u -64))) (sqrt.f32 (*.f32 u -64)) (*.f32 u -64/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u -64) (pow.f32 (cbrt.f32 u) 2)) (cbrt.f32 u) (*.f32 u -64/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u -64) (sqrt.f32 u)) (sqrt.f32 u) (*.f32 u -64/3))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (*.f32 u -4) s) (*.f32 (*.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8)) s))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 s (*.f32 u -4)) (*.f32 s (*.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 0 (*.f32 s (fma.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8) (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 s (fma.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8) (*.f32 u -4))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 s (fma.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8) (*.f32 u -4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 s (fma.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8) (*.f32 u -4))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 s (fma.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8) (*.f32 u -4)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 s (fma.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8) (*.f32 u -4)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f32 (*.f32 s (fma.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8) (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 s (fma.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8) (*.f32 u -4))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 s) (fma.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8) (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 s (fma.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8) (*.f32 u -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (/.f32 1 (+.f32 1 (expm1.f32 (*.f32 s (fma.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8) (*.f32 u -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 s (fma.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8) (*.f32 u -4))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 s 3) (pow.f32 (fma.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8) (*.f32 u -4)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (fma.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8) (*.f32 u -4)) 3) (pow.f32 s 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 s (fma.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8) (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 s (fma.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8) (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 s (fma.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8) (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 s (fma.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8) (*.f32 u -4)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 s (*.f32 u -4) (*.f32 s (*.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u -4) s (*.f32 (*.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8)) s))))))

simplify63.0ms (0.7%)

Algorithm
egg-herbie
Rules
733×distribute-rgt-in_binary32
665×associate-*r*_binary32
657×distribute-lft-out_binary32
477×fma-neg_binary32
457×cancel-sign-sub-inv_binary32
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
053891
1145864
2372800
31202747
43983737
Stop Event
node limit
Counts
226 → 201
Calls
Call 1
Inputs
(*.f32 -8 (pow.f32 u 2))
(+.f32 (*.f32 -64/3 (pow.f32 u 3)) (*.f32 -8 (pow.f32 u 2)))
(+.f32 (*.f32 -64/3 (pow.f32 u 3)) (+.f32 (*.f32 -64 (pow.f32 u 4)) (*.f32 -8 (pow.f32 u 2))))
(+.f32 (*.f32 -64/3 (pow.f32 u 3)) (+.f32 (*.f32 -64 (pow.f32 u 4)) (*.f32 -8 (pow.f32 u 2))))
(*.f32 -64 (pow.f32 u 4))
(+.f32 (*.f32 -64/3 (pow.f32 u 3)) (*.f32 -64 (pow.f32 u 4)))
(+.f32 (*.f32 -64/3 (pow.f32 u 3)) (+.f32 (*.f32 -8 (pow.f32 u 2)) (*.f32 -64 (pow.f32 u 4))))
(+.f32 (*.f32 -64/3 (pow.f32 u 3)) (+.f32 (*.f32 -8 (pow.f32 u 2)) (*.f32 -64 (pow.f32 u 4))))
(*.f32 -64 (pow.f32 u 4))
(+.f32 (*.f32 -64/3 (pow.f32 u 3)) (*.f32 -64 (pow.f32 u 4)))
(+.f32 (*.f32 -64/3 (pow.f32 u 3)) (+.f32 (*.f32 -8 (pow.f32 u 2)) (*.f32 -64 (pow.f32 u 4))))
(+.f32 (*.f32 -64/3 (pow.f32 u 3)) (+.f32 (*.f32 -8 (pow.f32 u 2)) (*.f32 -64 (pow.f32 u 4))))
-64/3
(-.f32 (*.f32 -64 u) 64/3)
(-.f32 (*.f32 -64 u) 64/3)
(-.f32 (*.f32 -64 u) 64/3)
(*.f32 -64 u)
(-.f32 (*.f32 -64 u) 64/3)
(-.f32 (*.f32 -64 u) 64/3)
(-.f32 (*.f32 -64 u) 64/3)
(*.f32 -64 u)
(-.f32 (*.f32 -64 u) 64/3)
(-.f32 (*.f32 -64 u) 64/3)
(-.f32 (*.f32 -64 u) 64/3)
(*.f32 -64/3 u)
(+.f32 (*.f32 -64/3 u) (*.f32 -64 (pow.f32 u 2)))
(+.f32 (*.f32 -64/3 u) (*.f32 -64 (pow.f32 u 2)))
(+.f32 (*.f32 -64/3 u) (*.f32 -64 (pow.f32 u 2)))
(*.f32 -64 (pow.f32 u 2))
(+.f32 (*.f32 -64/3 u) (*.f32 -64 (pow.f32 u 2)))
(+.f32 (*.f32 -64/3 u) (*.f32 -64 (pow.f32 u 2)))
(+.f32 (*.f32 -64/3 u) (*.f32 -64 (pow.f32 u 2)))
(*.f32 -64 (pow.f32 u 2))
(+.f32 (*.f32 -64/3 u) (*.f32 -64 (pow.f32 u 2)))
(+.f32 (*.f32 -64/3 u) (*.f32 -64 (pow.f32 u 2)))
(+.f32 (*.f32 -64/3 u) (*.f32 -64 (pow.f32 u 2)))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 (-.f32 (*.f32 (-.f32 (*.f32 -64 u) 64/3) u) 8) (pow.f32 u 2)))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 (-.f32 (*.f32 (-.f32 (*.f32 -64 u) 64/3) u) 8) (pow.f32 u 2)))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 (-.f32 (*.f32 (-.f32 (*.f32 -64 u) 64/3) u) 8) (pow.f32 u 2)))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 (-.f32 (*.f32 (-.f32 (*.f32 -64 u) 64/3) u) 8) (pow.f32 u 2)))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 (-.f32 (*.f32 (-.f32 (*.f32 -64 u) 64/3) u) 8) (pow.f32 u 2)))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 (-.f32 (*.f32 (-.f32 (*.f32 -64 u) 64/3) u) 8) (pow.f32 u 2)))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 (-.f32 (*.f32 (-.f32 (*.f32 -64 u) 64/3) u) 8) (pow.f32 u 2)))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 (-.f32 (*.f32 (-.f32 (*.f32 -64 u) 64/3) u) 8) (pow.f32 u 2)))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 (-.f32 (*.f32 (-.f32 (*.f32 -64 u) 64/3) u) 8) (pow.f32 u 2)))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 (-.f32 (*.f32 (-.f32 (*.f32 -64 u) 64/3) u) 8) (pow.f32 u 2)))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 (-.f32 (*.f32 (-.f32 (*.f32 -64 u) 64/3) u) 8) (pow.f32 u 2)))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 (-.f32 (*.f32 (-.f32 (*.f32 -64 u) 64/3) u) 8) (pow.f32 u 2)))))
(*.f32 4 (*.f32 s u))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (+.f32 (*.f32 8 (*.f32 s (pow.f32 u 2))) (*.f32 64 (*.f32 s (pow.f32 u 4))))))
(*.f32 64 (*.f32 s (pow.f32 u 4)))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (*.f32 64 (*.f32 s (pow.f32 u 4))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 8 (*.f32 s (pow.f32 u 2))) (*.f32 64 (*.f32 s (pow.f32 u 4)))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (+.f32 (*.f32 8 (*.f32 s (pow.f32 u 2))) (*.f32 64 (*.f32 s (pow.f32 u 4))))))
(*.f32 64 (*.f32 s (pow.f32 u 4)))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (*.f32 64 (*.f32 s (pow.f32 u 4))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 8 (*.f32 s (pow.f32 u 2))) (*.f32 64 (*.f32 s (pow.f32 u 4)))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (+.f32 (*.f32 8 (*.f32 s (pow.f32 u 2))) (*.f32 64 (*.f32 s (pow.f32 u 4))))))
Outputs
(*.f32 -8 (pow.f32 u 2))
(*.f32 -8 (*.f32 u u))
(+.f32 (*.f32 -64/3 (pow.f32 u 3)) (*.f32 -8 (pow.f32 u 2)))
(fma.f32 -64/3 (pow.f32 u 3) (*.f32 -8 (*.f32 u u)))
(fma.f32 -8 (*.f32 u u) (*.f32 -64/3 (pow.f32 u 3)))
(*.f32 (*.f32 u u) (+.f32 -8 (*.f32 u -64/3)))
(*.f32 u (*.f32 u (fma.f32 u -64/3 -8)))
(*.f32 (*.f32 u u) (fma.f32 u -64/3 -8))
(+.f32 (*.f32 -64/3 (pow.f32 u 3)) (+.f32 (*.f32 -64 (pow.f32 u 4)) (*.f32 -8 (pow.f32 u 2))))
(fma.f32 -64/3 (pow.f32 u 3) (fma.f32 -8 (*.f32 u u) (*.f32 -64 (pow.f32 u 4))))
(*.f32 u (*.f32 u (fma.f32 u (fma.f32 u -64 -64/3) -8)))
(+.f32 (*.f32 -64/3 (pow.f32 u 3)) (+.f32 (*.f32 -64 (pow.f32 u 4)) (*.f32 -8 (pow.f32 u 2))))
(fma.f32 -64/3 (pow.f32 u 3) (fma.f32 -8 (*.f32 u u) (*.f32 -64 (pow.f32 u 4))))
(*.f32 u (*.f32 u (fma.f32 u (fma.f32 u -64 -64/3) -8)))
(*.f32 -64 (pow.f32 u 4))
(+.f32 (*.f32 -64/3 (pow.f32 u 3)) (*.f32 -64 (pow.f32 u 4)))
(fma.f32 -64/3 (pow.f32 u 3) (*.f32 -64 (pow.f32 u 4)))
(fma.f32 -64 (pow.f32 u 4) (*.f32 -64/3 (pow.f32 u 3)))
(*.f32 (pow.f32 u 3) (fma.f32 u -64 -64/3))
(+.f32 (*.f32 -64/3 (pow.f32 u 3)) (+.f32 (*.f32 -8 (pow.f32 u 2)) (*.f32 -64 (pow.f32 u 4))))
(fma.f32 -64/3 (pow.f32 u 3) (fma.f32 -8 (*.f32 u u) (*.f32 -64 (pow.f32 u 4))))
(*.f32 u (*.f32 u (fma.f32 u (fma.f32 u -64 -64/3) -8)))
(+.f32 (*.f32 -64/3 (pow.f32 u 3)) (+.f32 (*.f32 -8 (pow.f32 u 2)) (*.f32 -64 (pow.f32 u 4))))
(fma.f32 -64/3 (pow.f32 u 3) (fma.f32 -8 (*.f32 u u) (*.f32 -64 (pow.f32 u 4))))
(*.f32 u (*.f32 u (fma.f32 u (fma.f32 u -64 -64/3) -8)))
(*.f32 -64 (pow.f32 u 4))
(+.f32 (*.f32 -64/3 (pow.f32 u 3)) (*.f32 -64 (pow.f32 u 4)))
(fma.f32 -64/3 (pow.f32 u 3) (*.f32 -64 (pow.f32 u 4)))
(fma.f32 -64 (pow.f32 u 4) (*.f32 -64/3 (pow.f32 u 3)))
(*.f32 (pow.f32 u 3) (fma.f32 u -64 -64/3))
(+.f32 (*.f32 -64/3 (pow.f32 u 3)) (+.f32 (*.f32 -8 (pow.f32 u 2)) (*.f32 -64 (pow.f32 u 4))))
(fma.f32 -64/3 (pow.f32 u 3) (fma.f32 -8 (*.f32 u u) (*.f32 -64 (pow.f32 u 4))))
(*.f32 u (*.f32 u (fma.f32 u (fma.f32 u -64 -64/3) -8)))
(+.f32 (*.f32 -64/3 (pow.f32 u 3)) (+.f32 (*.f32 -8 (pow.f32 u 2)) (*.f32 -64 (pow.f32 u 4))))
(fma.f32 -64/3 (pow.f32 u 3) (fma.f32 -8 (*.f32 u u) (*.f32 -64 (pow.f32 u 4))))
(*.f32 u (*.f32 u (fma.f32 u (fma.f32 u -64 -64/3) -8)))
-64/3
(-.f32 (*.f32 -64 u) 64/3)
(fma.f32 -64 u -64/3)
(fma.f32 u -64 -64/3)
(-.f32 (*.f32 -64 u) 64/3)
(fma.f32 -64 u -64/3)
(fma.f32 u -64 -64/3)
(-.f32 (*.f32 -64 u) 64/3)
(fma.f32 -64 u -64/3)
(fma.f32 u -64 -64/3)
(*.f32 -64 u)
(*.f32 u -64)
(-.f32 (*.f32 -64 u) 64/3)
(fma.f32 -64 u -64/3)
(fma.f32 u -64 -64/3)
(-.f32 (*.f32 -64 u) 64/3)
(fma.f32 -64 u -64/3)
(fma.f32 u -64 -64/3)
(-.f32 (*.f32 -64 u) 64/3)
(fma.f32 -64 u -64/3)
(fma.f32 u -64 -64/3)
(*.f32 -64 u)
(*.f32 u -64)
(-.f32 (*.f32 -64 u) 64/3)
(fma.f32 -64 u -64/3)
(fma.f32 u -64 -64/3)
(-.f32 (*.f32 -64 u) 64/3)
(fma.f32 -64 u -64/3)
(fma.f32 u -64 -64/3)
(-.f32 (*.f32 -64 u) 64/3)
(fma.f32 -64 u -64/3)
(fma.f32 u -64 -64/3)
(*.f32 -64/3 u)
(*.f32 u -64/3)
(+.f32 (*.f32 -64/3 u) (*.f32 -64 (pow.f32 u 2)))
(fma.f32 -64/3 u (*.f32 (*.f32 u u) -64))
(*.f32 u (fma.f32 u -64 -64/3))
(+.f32 (*.f32 -64/3 u) (*.f32 -64 (pow.f32 u 2)))
(fma.f32 -64/3 u (*.f32 (*.f32 u u) -64))
(*.f32 u (fma.f32 u -64 -64/3))
(+.f32 (*.f32 -64/3 u) (*.f32 -64 (pow.f32 u 2)))
(fma.f32 -64/3 u (*.f32 (*.f32 u u) -64))
(*.f32 u (fma.f32 u -64 -64/3))
(*.f32 -64 (pow.f32 u 2))
(*.f32 (*.f32 u u) -64)
(*.f32 u (*.f32 u -64))
(+.f32 (*.f32 -64/3 u) (*.f32 -64 (pow.f32 u 2)))
(fma.f32 -64/3 u (*.f32 (*.f32 u u) -64))
(*.f32 u (fma.f32 u -64 -64/3))
(+.f32 (*.f32 -64/3 u) (*.f32 -64 (pow.f32 u 2)))
(fma.f32 -64/3 u (*.f32 (*.f32 u u) -64))
(*.f32 u (fma.f32 u -64 -64/3))
(+.f32 (*.f32 -64/3 u) (*.f32 -64 (pow.f32 u 2)))
(fma.f32 -64/3 u (*.f32 (*.f32 u u) -64))
(*.f32 u (fma.f32 u -64 -64/3))
(*.f32 -64 (pow.f32 u 2))
(*.f32 (*.f32 u u) -64)
(*.f32 u (*.f32 u -64))
(+.f32 (*.f32 -64/3 u) (*.f32 -64 (pow.f32 u 2)))
(fma.f32 -64/3 u (*.f32 (*.f32 u u) -64))
(*.f32 u (fma.f32 u -64 -64/3))
(+.f32 (*.f32 -64/3 u) (*.f32 -64 (pow.f32 u 2)))
(fma.f32 -64/3 u (*.f32 (*.f32 u u) -64))
(*.f32 u (fma.f32 u -64 -64/3))
(+.f32 (*.f32 -64/3 u) (*.f32 -64 (pow.f32 u 2)))
(fma.f32 -64/3 u (*.f32 (*.f32 u u) -64))
(*.f32 u (fma.f32 u -64 -64/3))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 (-.f32 (*.f32 (-.f32 (*.f32 -64 u) 64/3) u) 8) (pow.f32 u 2)))))
(neg.f32 (*.f32 s (fma.f32 -4 u (*.f32 (*.f32 u u) (fma.f32 (fma.f32 -64 u -64/3) u -8)))))
(*.f32 (fma.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8) (*.f32 u -4)) (neg.f32 s))
(*.f32 (*.f32 u (+.f32 (*.f32 u (fma.f32 u (fma.f32 u -64 -64/3) -8)) -4)) (neg.f32 s))
(*.f32 (*.f32 u s) (-.f32 4 (*.f32 u (fma.f32 u (fma.f32 u -64 -64/3) -8))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 (-.f32 (*.f32 (-.f32 (*.f32 -64 u) 64/3) u) 8) (pow.f32 u 2)))))
(neg.f32 (*.f32 s (fma.f32 -4 u (*.f32 (*.f32 u u) (fma.f32 (fma.f32 -64 u -64/3) u -8)))))
(*.f32 (fma.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8) (*.f32 u -4)) (neg.f32 s))
(*.f32 (*.f32 u (+.f32 (*.f32 u (fma.f32 u (fma.f32 u -64 -64/3) -8)) -4)) (neg.f32 s))
(*.f32 (*.f32 u s) (-.f32 4 (*.f32 u (fma.f32 u (fma.f32 u -64 -64/3) -8))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 (-.f32 (*.f32 (-.f32 (*.f32 -64 u) 64/3) u) 8) (pow.f32 u 2)))))
(neg.f32 (*.f32 s (fma.f32 -4 u (*.f32 (*.f32 u u) (fma.f32 (fma.f32 -64 u -64/3) u -8)))))
(*.f32 (fma.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8) (*.f32 u -4)) (neg.f32 s))
(*.f32 (*.f32 u (+.f32 (*.f32 u (fma.f32 u (fma.f32 u -64 -64/3) -8)) -4)) (neg.f32 s))
(*.f32 (*.f32 u s) (-.f32 4 (*.f32 u (fma.f32 u (fma.f32 u -64 -64/3) -8))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 (-.f32 (*.f32 (-.f32 (*.f32 -64 u) 64/3) u) 8) (pow.f32 u 2)))))
(neg.f32 (*.f32 s (fma.f32 -4 u (*.f32 (*.f32 u u) (fma.f32 (fma.f32 -64 u -64/3) u -8)))))
(*.f32 (fma.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8) (*.f32 u -4)) (neg.f32 s))
(*.f32 (*.f32 u (+.f32 (*.f32 u (fma.f32 u (fma.f32 u -64 -64/3) -8)) -4)) (neg.f32 s))
(*.f32 (*.f32 u s) (-.f32 4 (*.f32 u (fma.f32 u (fma.f32 u -64 -64/3) -8))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 (-.f32 (*.f32 (-.f32 (*.f32 -64 u) 64/3) u) 8) (pow.f32 u 2)))))
(neg.f32 (*.f32 s (fma.f32 -4 u (*.f32 (*.f32 u u) (fma.f32 (fma.f32 -64 u -64/3) u -8)))))
(*.f32 (fma.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8) (*.f32 u -4)) (neg.f32 s))
(*.f32 (*.f32 u (+.f32 (*.f32 u (fma.f32 u (fma.f32 u -64 -64/3) -8)) -4)) (neg.f32 s))
(*.f32 (*.f32 u s) (-.f32 4 (*.f32 u (fma.f32 u (fma.f32 u -64 -64/3) -8))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 (-.f32 (*.f32 (-.f32 (*.f32 -64 u) 64/3) u) 8) (pow.f32 u 2)))))
(neg.f32 (*.f32 s (fma.f32 -4 u (*.f32 (*.f32 u u) (fma.f32 (fma.f32 -64 u -64/3) u -8)))))
(*.f32 (fma.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8) (*.f32 u -4)) (neg.f32 s))
(*.f32 (*.f32 u (+.f32 (*.f32 u (fma.f32 u (fma.f32 u -64 -64/3) -8)) -4)) (neg.f32 s))
(*.f32 (*.f32 u s) (-.f32 4 (*.f32 u (fma.f32 u (fma.f32 u -64 -64/3) -8))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 (-.f32 (*.f32 (-.f32 (*.f32 -64 u) 64/3) u) 8) (pow.f32 u 2)))))
(neg.f32 (*.f32 s (fma.f32 -4 u (*.f32 (*.f32 u u) (fma.f32 (fma.f32 -64 u -64/3) u -8)))))
(*.f32 (fma.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8) (*.f32 u -4)) (neg.f32 s))
(*.f32 (*.f32 u (+.f32 (*.f32 u (fma.f32 u (fma.f32 u -64 -64/3) -8)) -4)) (neg.f32 s))
(*.f32 (*.f32 u s) (-.f32 4 (*.f32 u (fma.f32 u (fma.f32 u -64 -64/3) -8))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 (-.f32 (*.f32 (-.f32 (*.f32 -64 u) 64/3) u) 8) (pow.f32 u 2)))))
(neg.f32 (*.f32 s (fma.f32 -4 u (*.f32 (*.f32 u u) (fma.f32 (fma.f32 -64 u -64/3) u -8)))))
(*.f32 (fma.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8) (*.f32 u -4)) (neg.f32 s))
(*.f32 (*.f32 u (+.f32 (*.f32 u (fma.f32 u (fma.f32 u -64 -64/3) -8)) -4)) (neg.f32 s))
(*.f32 (*.f32 u s) (-.f32 4 (*.f32 u (fma.f32 u (fma.f32 u -64 -64/3) -8))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 (-.f32 (*.f32 (-.f32 (*.f32 -64 u) 64/3) u) 8) (pow.f32 u 2)))))
(neg.f32 (*.f32 s (fma.f32 -4 u (*.f32 (*.f32 u u) (fma.f32 (fma.f32 -64 u -64/3) u -8)))))
(*.f32 (fma.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8) (*.f32 u -4)) (neg.f32 s))
(*.f32 (*.f32 u (+.f32 (*.f32 u (fma.f32 u (fma.f32 u -64 -64/3) -8)) -4)) (neg.f32 s))
(*.f32 (*.f32 u s) (-.f32 4 (*.f32 u (fma.f32 u (fma.f32 u -64 -64/3) -8))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 (-.f32 (*.f32 (-.f32 (*.f32 -64 u) 64/3) u) 8) (pow.f32 u 2)))))
(neg.f32 (*.f32 s (fma.f32 -4 u (*.f32 (*.f32 u u) (fma.f32 (fma.f32 -64 u -64/3) u -8)))))
(*.f32 (fma.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8) (*.f32 u -4)) (neg.f32 s))
(*.f32 (*.f32 u (+.f32 (*.f32 u (fma.f32 u (fma.f32 u -64 -64/3) -8)) -4)) (neg.f32 s))
(*.f32 (*.f32 u s) (-.f32 4 (*.f32 u (fma.f32 u (fma.f32 u -64 -64/3) -8))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 (-.f32 (*.f32 (-.f32 (*.f32 -64 u) 64/3) u) 8) (pow.f32 u 2)))))
(neg.f32 (*.f32 s (fma.f32 -4 u (*.f32 (*.f32 u u) (fma.f32 (fma.f32 -64 u -64/3) u -8)))))
(*.f32 (fma.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8) (*.f32 u -4)) (neg.f32 s))
(*.f32 (*.f32 u (+.f32 (*.f32 u (fma.f32 u (fma.f32 u -64 -64/3) -8)) -4)) (neg.f32 s))
(*.f32 (*.f32 u s) (-.f32 4 (*.f32 u (fma.f32 u (fma.f32 u -64 -64/3) -8))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 (-.f32 (*.f32 (-.f32 (*.f32 -64 u) 64/3) u) 8) (pow.f32 u 2)))))
(neg.f32 (*.f32 s (fma.f32 -4 u (*.f32 (*.f32 u u) (fma.f32 (fma.f32 -64 u -64/3) u -8)))))
(*.f32 (fma.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8) (*.f32 u -4)) (neg.f32 s))
(*.f32 (*.f32 u (+.f32 (*.f32 u (fma.f32 u (fma.f32 u -64 -64/3) -8)) -4)) (neg.f32 s))
(*.f32 (*.f32 u s) (-.f32 4 (*.f32 u (fma.f32 u (fma.f32 u -64 -64/3) -8))))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 u s))
(*.f32 u (*.f32 4 s))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(fma.f32 4 (*.f32 u s) (*.f32 8 (*.f32 (*.f32 u u) s)))
(fma.f32 4 (*.f32 u s) (*.f32 s (*.f32 (*.f32 u u) 8)))
(*.f32 u (+.f32 (*.f32 4 s) (*.f32 s (*.f32 8 u))))
(*.f32 u (*.f32 s (+.f32 (*.f32 u 8) 4)))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
(fma.f32 64/3 (*.f32 (pow.f32 u 3) s) (fma.f32 4 (*.f32 u s) (*.f32 8 (*.f32 (*.f32 u u) s))))
(fma.f32 64/3 (*.f32 (pow.f32 u 3) s) (fma.f32 4 (*.f32 u s) (*.f32 s (*.f32 (*.f32 u u) 8))))
(fma.f32 u (*.f32 4 s) (*.f32 (*.f32 u u) (+.f32 (*.f32 s 8) (*.f32 s (*.f32 64/3 u)))))
(*.f32 u (+.f32 (*.f32 4 s) (*.f32 u (*.f32 s (+.f32 (*.f32 u 64/3) 8)))))
(*.f32 u (+.f32 (*.f32 4 s) (*.f32 u (*.f32 s (+.f32 8 (*.f32 u 64/3))))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (+.f32 (*.f32 8 (*.f32 s (pow.f32 u 2))) (*.f32 64 (*.f32 s (pow.f32 u 4))))))
(neg.f32 (*.f32 s (fma.f32 -4 u (*.f32 (*.f32 u u) (fma.f32 (fma.f32 -64 u -64/3) u -8)))))
(*.f32 (fma.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8) (*.f32 u -4)) (neg.f32 s))
(*.f32 (*.f32 u (+.f32 (*.f32 u (fma.f32 u (fma.f32 u -64 -64/3) -8)) -4)) (neg.f32 s))
(*.f32 (*.f32 u s) (-.f32 4 (*.f32 u (fma.f32 u (fma.f32 u -64 -64/3) -8))))
(*.f32 64 (*.f32 s (pow.f32 u 4)))
(*.f32 64 (*.f32 (pow.f32 u 4) s))
(*.f32 (pow.f32 u 4) (*.f32 s 64))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (*.f32 64 (*.f32 s (pow.f32 u 4))))
(fma.f32 64/3 (*.f32 (pow.f32 u 3) s) (*.f32 64 (*.f32 (pow.f32 u 4) s)))
(fma.f32 (*.f32 s 64) (pow.f32 u 4) (*.f32 s (*.f32 (pow.f32 u 3) 64/3)))
(*.f32 s (+.f32 (*.f32 (pow.f32 u 3) 64/3) (*.f32 (pow.f32 u 4) 64)))
(*.f32 s (*.f32 (pow.f32 u 3) (+.f32 (*.f32 u 64) 64/3)))
(*.f32 (*.f32 (pow.f32 u 3) (fma.f32 u -64 -64/3)) (neg.f32 s))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 8 (*.f32 s (pow.f32 u 2))) (*.f32 64 (*.f32 s (pow.f32 u 4)))))
(fma.f32 64/3 (*.f32 (pow.f32 u 3) s) (fma.f32 8 (*.f32 (*.f32 u u) s) (*.f32 64 (*.f32 (pow.f32 u 4) s))))
(fma.f32 64/3 (*.f32 (pow.f32 u 3) s) (fma.f32 64 (*.f32 (pow.f32 u 4) s) (*.f32 s (*.f32 (*.f32 u u) 8))))
(fma.f32 (*.f32 u u) (*.f32 s 8) (*.f32 s (+.f32 (*.f32 (pow.f32 u 3) 64/3) (*.f32 (pow.f32 u 4) 64))))
(*.f32 s (+.f32 (*.f32 (pow.f32 u 3) (+.f32 (*.f32 u 64) 64/3)) (*.f32 u (*.f32 u 8))))
(*.f32 u (*.f32 (*.f32 u s) (-.f32 8 (*.f32 u (fma.f32 u -64 -64/3)))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (+.f32 (*.f32 8 (*.f32 s (pow.f32 u 2))) (*.f32 64 (*.f32 s (pow.f32 u 4))))))
(neg.f32 (*.f32 s (fma.f32 -4 u (*.f32 (*.f32 u u) (fma.f32 (fma.f32 -64 u -64/3) u -8)))))
(*.f32 (fma.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8) (*.f32 u -4)) (neg.f32 s))
(*.f32 (*.f32 u (+.f32 (*.f32 u (fma.f32 u (fma.f32 u -64 -64/3) -8)) -4)) (neg.f32 s))
(*.f32 (*.f32 u s) (-.f32 4 (*.f32 u (fma.f32 u (fma.f32 u -64 -64/3) -8))))
(*.f32 64 (*.f32 s (pow.f32 u 4)))
(*.f32 64 (*.f32 (pow.f32 u 4) s))
(*.f32 (pow.f32 u 4) (*.f32 s 64))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (*.f32 64 (*.f32 s (pow.f32 u 4))))
(fma.f32 64/3 (*.f32 (pow.f32 u 3) s) (*.f32 64 (*.f32 (pow.f32 u 4) s)))
(fma.f32 (*.f32 s 64) (pow.f32 u 4) (*.f32 s (*.f32 (pow.f32 u 3) 64/3)))
(*.f32 s (+.f32 (*.f32 (pow.f32 u 3) 64/3) (*.f32 (pow.f32 u 4) 64)))
(*.f32 s (*.f32 (pow.f32 u 3) (+.f32 (*.f32 u 64) 64/3)))
(*.f32 (*.f32 (pow.f32 u 3) (fma.f32 u -64 -64/3)) (neg.f32 s))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 8 (*.f32 s (pow.f32 u 2))) (*.f32 64 (*.f32 s (pow.f32 u 4)))))
(fma.f32 64/3 (*.f32 (pow.f32 u 3) s) (fma.f32 8 (*.f32 (*.f32 u u) s) (*.f32 64 (*.f32 (pow.f32 u 4) s))))
(fma.f32 64/3 (*.f32 (pow.f32 u 3) s) (fma.f32 64 (*.f32 (pow.f32 u 4) s) (*.f32 s (*.f32 (*.f32 u u) 8))))
(fma.f32 (*.f32 u u) (*.f32 s 8) (*.f32 s (+.f32 (*.f32 (pow.f32 u 3) 64/3) (*.f32 (pow.f32 u 4) 64))))
(*.f32 s (+.f32 (*.f32 (pow.f32 u 3) (+.f32 (*.f32 u 64) 64/3)) (*.f32 u (*.f32 u 8))))
(*.f32 u (*.f32 (*.f32 u s) (-.f32 8 (*.f32 u (fma.f32 u -64 -64/3)))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (+.f32 (*.f32 8 (*.f32 s (pow.f32 u 2))) (*.f32 64 (*.f32 s (pow.f32 u 4))))))
(neg.f32 (*.f32 s (fma.f32 -4 u (*.f32 (*.f32 u u) (fma.f32 (fma.f32 -64 u -64/3) u -8)))))
(*.f32 (fma.f32 (*.f32 u u) (fma.f32 u (fma.f32 u -64 -64/3) -8) (*.f32 u -4)) (neg.f32 s))
(*.f32 (*.f32 u (+.f32 (*.f32 u (fma.f32 u (fma.f32 u -64 -64/3) -8)) -4)) (neg.f32 s))
(*.f32 (*.f32 u s) (-.f32 4 (*.f32 u (fma.f32 u (fma.f32 u -64 -64/3) -8))))

localize50.0ms (0.6%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(log1p.f32 (*.f32 u -4))
0.1b
(log.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))
0.2b
(*.f32 s (exp.f32 (log.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))))
1.5b
(exp.f32 (log.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))))
Compiler

Compiled 39 to 30 computations (23.1% saved)

series6.0ms (0.1%)

Counts
3 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
u
@inf
(log.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))
1.0ms
u
@-inf
(log.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))
0.0ms
u
@0
(exp.f32 (log.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))))
0.0ms
u
@inf
(exp.f32 (log.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))))
0.0ms
u
@0
(log.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))

rewrite66.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
708×pow1_binary32
652×add-log-exp_binary32
651×expm1-log1p-u_binary32
650×log1p-expm1-u_binary32
638×add-exp-log_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01029
118423
2207723
Stop Event
node limit
Counts
3 → 65
Calls
Call 1
Inputs
(exp.f32 (log.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))))
(*.f32 s (exp.f32 (log.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))))
(log.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f32 1 (-.f32 (log1p.f32 (*.f32 u -4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (log1p.f32 (*.f32 u -4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 0 (log1p.f32 (*.f32 u -4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (log1p.f32 (*.f32 u -4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (log1p.f32 (*.f32 u -4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (log1p.f32 (*.f32 u -4)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (log1p.f32 (*.f32 u -4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) (pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 2) (cbrt.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 2) (neg.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (log1p.f32 (*.f32 u -4))) (sqrt.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (log1p.f32 (*.f32 u -4))) (neg.f32 (sqrt.f32 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 -1 (log1p.f32 (*.f32 u -4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (neg.f32 (pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 2)) (cbrt.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (neg.f32 (sqrt.f32 (log1p.f32 (*.f32 u -4)))) (sqrt.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 -1 (pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 2)) (cbrt.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 -1 (sqrt.f32 (log1p.f32 (*.f32 u -4)))) (sqrt.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 0 (pow.f32 (log1p.f32 (*.f32 u -4)) 3)) (+.f32 0 (+.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2) (*.f32 0 (log1p.f32 (*.f32 u -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 0 (pow.f32 (log1p.f32 (*.f32 u -4)) 2)) (log1p.f32 (*.f32 u -4)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (log1p.f32 (*.f32 u -4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (log1p.f32 (*.f32 u -4))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (log.f32 (log1p.f32 (*.f32 u -4)))) 2)) (cbrt.f32 (log.f32 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (exp.f32 (sqrt.f32 (log.f32 (log1p.f32 (*.f32 u -4))))) (sqrt.f32 (log.f32 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (exp.f32 1) (log.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f32 (log1p.f32 (*.f32 u -4)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 (*.f32 u -4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (*.f32 u -4))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (*.f32 (log1p.f32 (*.f32 u -4)) s)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (+.f32 (*.f32 u -4) 1) s))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 3) (pow.f32 s 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 s 3) (pow.f32 (log1p.f32 (*.f32 u -4)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (log.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (log1p.f32 (*.f32 u -4)))) (log.f32 (sqrt.f32 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 2)) (log.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 -1) (log.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (log.f32 (log1p.f32 (*.f32 u -4)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (log.f32 (log1p.f32 (*.f32 u -4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (log.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (log.f32 (log1p.f32 (*.f32 u -4)))) (pow.f32 (cbrt.f32 (log.f32 (log1p.f32 (*.f32 u -4)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (log.f32 (log1p.f32 (*.f32 u -4)))) 2) (cbrt.f32 (log.f32 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (log.f32 (log1p.f32 (*.f32 u -4)))) (sqrt.f32 (log.f32 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (log.f32 (log1p.f32 (*.f32 u -4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (log.f32 (log1p.f32 (*.f32 u -4))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (log.f32 (log1p.f32 (*.f32 u -4)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (log.f32 (log1p.f32 (*.f32 u -4)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (log.f32 (log1p.f32 (*.f32 u -4))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (log.f32 (log1p.f32 (*.f32 u -4))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (log.f32 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (-.f32 (log1p.f32 (*.f32 u -4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (log.f32 (log1p.f32 (*.f32 u -4)))))))))

simplify74.0ms (0.8%)

Algorithm
egg-herbie
Rules
822×fma-def_binary32
560×fma-neg_binary32
403×times-frac_binary32
387×distribute-rgt-in_binary32
356×associate-+l+_binary32
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01691325
15191201
215361161
351641140
Stop Event
node limit
Counts
113 → 139
Calls
Call 1
Inputs
(*.f32 4 u)
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(+.f32 (*.f32 8 (pow.f32 u 2)) (+.f32 (*.f32 64/3 (pow.f32 u 3)) (*.f32 4 u)))
(+.f32 (*.f32 8 (pow.f32 u 2)) (+.f32 (*.f32 64 (pow.f32 u 4)) (+.f32 (*.f32 64/3 (pow.f32 u 3)) (*.f32 4 u))))
(*.f32 -1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))
(+.f32 (*.f32 1/4 (/.f32 1 u)) (*.f32 -1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))
(+.f32 (*.f32 1/32 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/4 (/.f32 1 u)) (*.f32 -1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))))
(+.f32 (*.f32 1/32 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/4 (/.f32 1 u)) (+.f32 (*.f32 -1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))) (*.f32 1/192 (/.f32 1 (pow.f32 u 3))))))
(*.f32 -1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))
(+.f32 (*.f32 1/4 (/.f32 1 u)) (*.f32 -1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))
(+.f32 (*.f32 1/32 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/4 (/.f32 1 u)) (*.f32 -1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))))
(+.f32 (*.f32 1/32 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/4 (/.f32 1 u)) (+.f32 (*.f32 -1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))) (*.f32 1/192 (/.f32 1 (pow.f32 u 3))))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4 u)))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4 u)))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4 u)))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4 u)))))
(*.f32 4 (*.f32 s u))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (+.f32 (*.f32 8 (*.f32 s (pow.f32 u 2))) (*.f32 64 (*.f32 s (pow.f32 u 4))))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))
(+.f32 (*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (*.f32 1/4 (/.f32 s u)))
(+.f32 (*.f32 1/32 (/.f32 s (pow.f32 u 2))) (+.f32 (*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (*.f32 1/4 (/.f32 s u))))
(+.f32 (*.f32 1/32 (/.f32 s (pow.f32 u 2))) (+.f32 (*.f32 1/192 (/.f32 s (pow.f32 u 3))) (+.f32 (*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (*.f32 1/4 (/.f32 s u)))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))
(+.f32 (*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (*.f32 1/4 (/.f32 s u)))
(+.f32 (*.f32 1/32 (/.f32 s (pow.f32 u 2))) (+.f32 (*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (*.f32 1/4 (/.f32 s u))))
(+.f32 (*.f32 1/32 (/.f32 s (pow.f32 u 2))) (+.f32 (*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (+.f32 (*.f32 1/192 (/.f32 s (pow.f32 u 3))) (*.f32 1/4 (/.f32 s u)))))
(+.f32 (log.f32 u) (log.f32 4))
(+.f32 (*.f32 2 u) (+.f32 (log.f32 u) (log.f32 4)))
(+.f32 (*.f32 2 u) (+.f32 (log.f32 u) (+.f32 (log.f32 4) (*.f32 10/3 (pow.f32 u 2)))))
(+.f32 (*.f32 2 u) (+.f32 (log.f32 u) (+.f32 (log.f32 4) (+.f32 (*.f32 10/3 (pow.f32 u 2)) (*.f32 8 (pow.f32 u 3))))))
(log.f32 (neg.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))
(-.f32 (log.f32 (neg.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (*.f32 1/4 (/.f32 1 (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) u))))
(-.f32 (+.f32 (log.f32 (neg.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (*.f32 -1/2 (/.f32 (+.f32 (*.f32 1/16 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (*.f32 1/16 (/.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 2)))) (pow.f32 u 2)))) (*.f32 1/4 (/.f32 1 (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) u))))
(-.f32 (+.f32 (log.f32 (neg.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (+.f32 (*.f32 -1/6 (/.f32 (+.f32 (*.f32 3/64 (/.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 2))) (+.f32 (*.f32 1/32 (/.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 3))) (*.f32 1/32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))))) (pow.f32 u 3))) (*.f32 -1/2 (/.f32 (+.f32 (*.f32 1/16 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (*.f32 1/16 (/.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 2)))) (pow.f32 u 2))))) (*.f32 1/4 (/.f32 1 (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) u))))
(log.f32 (neg.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))
(-.f32 (log.f32 (neg.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (*.f32 1/4 (/.f32 1 (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) u))))
(-.f32 (+.f32 (*.f32 -1/2 (/.f32 (+.f32 (*.f32 1/16 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (*.f32 1/16 (/.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 2)))) (pow.f32 u 2))) (log.f32 (neg.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))) (*.f32 1/4 (/.f32 1 (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) u))))
(-.f32 (+.f32 (*.f32 -1/2 (/.f32 (+.f32 (*.f32 1/16 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (*.f32 1/16 (/.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 2)))) (pow.f32 u 2))) (+.f32 (*.f32 -1/6 (/.f32 (+.f32 (*.f32 1/32 (/.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 3))) (+.f32 (*.f32 1/32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (*.f32 3/64 (/.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 2))))) (pow.f32 u 3))) (log.f32 (neg.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))))) (*.f32 1/4 (/.f32 1 (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) u))))
Outputs
(*.f32 4 u)
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(fma.f32 8 (*.f32 u u) (*.f32 4 u))
(*.f32 u (+.f32 4 (*.f32 u 8)))
(+.f32 (*.f32 8 (pow.f32 u 2)) (+.f32 (*.f32 64/3 (pow.f32 u 3)) (*.f32 4 u)))
(fma.f32 8 (*.f32 u u) (fma.f32 64/3 (pow.f32 u 3) (*.f32 4 u)))
(fma.f32 4 u (*.f32 (*.f32 u u) (+.f32 (*.f32 u 64/3) 8)))
(*.f32 u (+.f32 4 (*.f32 u (+.f32 (*.f32 u 64/3) 8))))
(+.f32 (*.f32 8 (pow.f32 u 2)) (+.f32 (*.f32 64 (pow.f32 u 4)) (+.f32 (*.f32 64/3 (pow.f32 u 3)) (*.f32 4 u))))
(fma.f32 8 (*.f32 u u) (fma.f32 64 (pow.f32 u 4) (fma.f32 64/3 (pow.f32 u 3) (*.f32 4 u))))
(fma.f32 64 (pow.f32 u 4) (fma.f32 4 u (*.f32 (*.f32 u u) (+.f32 (*.f32 u 64/3) 8))))
(fma.f32 64 (pow.f32 u 4) (*.f32 u (+.f32 4 (*.f32 u (+.f32 (*.f32 u 64/3) 8)))))
(*.f32 -1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))
(neg.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)))
(-.f32 (neg.f32 (log.f32 u)) (log.f32 -4))
(neg.f32 (+.f32 (log.f32 -4) (log.f32 u)))
(+.f32 (*.f32 1/4 (/.f32 1 u)) (*.f32 -1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))
(+.f32 (neg.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))) (/.f32 1/4 u))
(-.f32 (/.f32 1/4 u) (+.f32 (log.f32 -4) (log.f32 u)))
(-.f32 (-.f32 (/.f32 1/4 u) (log.f32 -4)) (log.f32 u))
(+.f32 (*.f32 1/32 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/4 (/.f32 1 u)) (*.f32 -1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))))
(+.f32 (+.f32 (/.f32 1/32 (*.f32 u u)) (/.f32 1/4 u)) (neg.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))))
(-.f32 (+.f32 (/.f32 1/4 u) (/.f32 1/32 (*.f32 u u))) (+.f32 (log.f32 -4) (log.f32 u)))
(+.f32 (-.f32 (/.f32 1/4 u) (+.f32 (log.f32 -4) (log.f32 u))) (/.f32 1/32 (*.f32 u u)))
(+.f32 (/.f32 1/4 u) (-.f32 (/.f32 1/32 (*.f32 u u)) (+.f32 (log.f32 -4) (log.f32 u))))
(+.f32 (*.f32 1/32 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/4 (/.f32 1 u)) (+.f32 (*.f32 -1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))) (*.f32 1/192 (/.f32 1 (pow.f32 u 3))))))
(+.f32 (/.f32 1/32 (*.f32 u u)) (+.f32 (/.f32 1/4 u) (fma.f32 -1 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) (/.f32 1/192 (pow.f32 u 3)))))
(+.f32 (-.f32 (/.f32 1/4 u) (+.f32 (log.f32 -4) (log.f32 u))) (+.f32 (/.f32 1/192 (pow.f32 u 3)) (/.f32 1/32 (*.f32 u u))))
(+.f32 (/.f32 1/4 u) (+.f32 (/.f32 1/192 (pow.f32 u 3)) (-.f32 (/.f32 1/32 (*.f32 u u)) (+.f32 (log.f32 -4) (log.f32 u)))))
(*.f32 -1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))
(neg.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)))
(-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4))
(+.f32 (*.f32 1/4 (/.f32 1 u)) (*.f32 -1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))
(+.f32 (/.f32 1/4 u) (neg.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))))
(+.f32 (/.f32 1/4 u) (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4)))
(+.f32 (log.f32 (/.f32 -1 u)) (-.f32 (/.f32 1/4 u) (log.f32 4)))
(+.f32 (*.f32 1/32 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/4 (/.f32 1 u)) (*.f32 -1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))))
(+.f32 (/.f32 1/32 (*.f32 u u)) (+.f32 (/.f32 1/4 u) (neg.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)))))
(+.f32 (/.f32 1/4 u) (+.f32 (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4)) (/.f32 1/32 (*.f32 u u))))
(+.f32 (/.f32 1/4 u) (+.f32 (/.f32 1/32 (*.f32 u u)) (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4))))
(+.f32 (/.f32 1/32 (*.f32 u u)) (+.f32 (log.f32 (/.f32 -1 u)) (-.f32 (/.f32 1/4 u) (log.f32 4))))
(+.f32 (*.f32 1/32 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/4 (/.f32 1 u)) (+.f32 (*.f32 -1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))) (*.f32 1/192 (/.f32 1 (pow.f32 u 3))))))
(+.f32 (/.f32 1/32 (*.f32 u u)) (+.f32 (/.f32 1/4 u) (fma.f32 -1 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) (/.f32 1/192 (pow.f32 u 3)))))
(+.f32 (+.f32 (+.f32 (/.f32 1/4 u) (/.f32 1/32 (*.f32 u u))) (/.f32 1/192 (pow.f32 u 3))) (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4)))
(+.f32 (/.f32 1/32 (*.f32 u u)) (-.f32 (/.f32 1/192 (pow.f32 u 3)) (-.f32 (log.f32 4) (+.f32 (/.f32 1/4 u) (log.f32 (/.f32 -1 u))))))
(+.f32 (/.f32 1/4 u) (+.f32 (/.f32 1/32 (*.f32 u u)) (-.f32 (log.f32 (/.f32 -1 u)) (+.f32 (log.f32 4) (/.f32 -1/192 (pow.f32 u 3))))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(neg.f32 (*.f32 s (log1p.f32 (*.f32 u -4))))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(neg.f32 (*.f32 s (log1p.f32 (*.f32 u -4))))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(neg.f32 (*.f32 s (log1p.f32 (*.f32 u -4))))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(neg.f32 (*.f32 s (log1p.f32 (*.f32 u -4))))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(neg.f32 (*.f32 s (log1p.f32 (*.f32 u -4))))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(neg.f32 (*.f32 s (log1p.f32 (*.f32 u -4))))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(neg.f32 (*.f32 s (log1p.f32 (*.f32 u -4))))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(neg.f32 (*.f32 s (log1p.f32 (*.f32 u -4))))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4 u)))))
(neg.f32 (*.f32 s (log1p.f32 (*.f32 u -4))))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4 u)))))
(neg.f32 (*.f32 s (log1p.f32 (*.f32 u -4))))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4 u)))))
(neg.f32 (*.f32 s (log1p.f32 (*.f32 u -4))))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4 u)))))
(neg.f32 (*.f32 s (log1p.f32 (*.f32 u -4))))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 u s))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(fma.f32 4 (*.f32 u s) (*.f32 8 (*.f32 (*.f32 u u) s)))
(fma.f32 4 (*.f32 u s) (*.f32 8 (*.f32 u (*.f32 u s))))
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u 8))))
(*.f32 u (*.f32 s (+.f32 4 (*.f32 u 8))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
(fma.f32 64/3 (*.f32 (pow.f32 u 3) s) (fma.f32 4 (*.f32 u s) (*.f32 8 (*.f32 (*.f32 u u) s))))
(fma.f32 64/3 (*.f32 (pow.f32 u 3) s) (fma.f32 4 (*.f32 u s) (*.f32 8 (*.f32 u (*.f32 u s)))))
(fma.f32 64/3 (*.f32 (pow.f32 u 3) s) (*.f32 s (*.f32 u (+.f32 4 (*.f32 u 8)))))
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u (+.f32 (*.f32 u 64/3) 8)))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (+.f32 (*.f32 8 (*.f32 s (pow.f32 u 2))) (*.f32 64 (*.f32 s (pow.f32 u 4))))))
(fma.f32 64/3 (*.f32 (pow.f32 u 3) s) (fma.f32 4 (*.f32 u s) (fma.f32 8 (*.f32 (*.f32 u u) s) (*.f32 64 (*.f32 (pow.f32 u 4) s)))))
(fma.f32 64/3 (*.f32 (pow.f32 u 3) s) (fma.f32 4 (*.f32 u s) (fma.f32 8 (*.f32 u (*.f32 u s)) (*.f32 (pow.f32 u 4) (*.f32 64 s)))))
(+.f32 (*.f32 s (*.f32 u (+.f32 4 (*.f32 u 8)))) (*.f32 s (fma.f32 64/3 (pow.f32 u 3) (*.f32 64 (pow.f32 u 4)))))
(*.f32 s (fma.f32 64 (pow.f32 u 4) (*.f32 u (+.f32 4 (*.f32 u (+.f32 (*.f32 u 64/3) 8))))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))
(neg.f32 (*.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) s))
(*.f32 (+.f32 (log.f32 -4) (log.f32 u)) (neg.f32 s))
(+.f32 (*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (*.f32 1/4 (/.f32 s u)))
(fma.f32 -1 (*.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) s) (*.f32 1/4 (/.f32 s u)))
(fma.f32 (neg.f32 s) (+.f32 (log.f32 -4) (log.f32 u)) (*.f32 1/4 (/.f32 s u)))
(-.f32 (*.f32 1/4 (/.f32 s u)) (*.f32 (+.f32 (log.f32 -4) (log.f32 u)) s))
(*.f32 s (-.f32 (-.f32 (/.f32 1/4 u) (log.f32 -4)) (log.f32 u)))
(+.f32 (*.f32 1/32 (/.f32 s (pow.f32 u 2))) (+.f32 (*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (*.f32 1/4 (/.f32 s u))))
(fma.f32 1/32 (/.f32 s (*.f32 u u)) (fma.f32 -1 (*.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) s) (*.f32 1/4 (/.f32 s u))))
(fma.f32 1/32 (/.f32 s (*.f32 u u)) (fma.f32 (neg.f32 s) (+.f32 (log.f32 -4) (log.f32 u)) (*.f32 1/4 (/.f32 s u))))
(-.f32 (*.f32 (/.f32 s u) (+.f32 1/4 (/.f32 1/32 u))) (*.f32 (+.f32 (log.f32 -4) (log.f32 u)) s))
(fma.f32 (+.f32 (log.f32 -4) (log.f32 u)) (neg.f32 s) (*.f32 (/.f32 s u) (+.f32 (/.f32 1/32 u) 1/4)))
(+.f32 (*.f32 1/32 (/.f32 s (pow.f32 u 2))) (+.f32 (*.f32 1/192 (/.f32 s (pow.f32 u 3))) (+.f32 (*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (*.f32 1/4 (/.f32 s u)))))
(fma.f32 1/32 (/.f32 s (*.f32 u u)) (fma.f32 1/192 (/.f32 s (pow.f32 u 3)) (fma.f32 -1 (*.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) s) (*.f32 1/4 (/.f32 s u)))))
(fma.f32 1/32 (/.f32 s (*.f32 u u)) (fma.f32 1/192 (/.f32 s (pow.f32 u 3)) (fma.f32 (neg.f32 s) (+.f32 (log.f32 -4) (log.f32 u)) (*.f32 1/4 (/.f32 s u)))))
(fma.f32 1/192 (/.f32 s (pow.f32 u 3)) (-.f32 (*.f32 (/.f32 s u) (+.f32 1/4 (/.f32 1/32 u))) (*.f32 (+.f32 (log.f32 -4) (log.f32 u)) s)))
(+.f32 (*.f32 s (-.f32 (/.f32 1/192 (pow.f32 u 3)) (+.f32 (log.f32 -4) (log.f32 u)))) (*.f32 (/.f32 s u) (+.f32 (/.f32 1/32 u) 1/4)))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))
(neg.f32 (*.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) s))
(*.f32 (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4)) s)
(+.f32 (*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (*.f32 1/4 (/.f32 s u)))
(fma.f32 -1 (*.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) s) (*.f32 1/4 (/.f32 s u)))
(fma.f32 1/4 (/.f32 s u) (*.f32 (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4)) s))
(*.f32 s (+.f32 (log.f32 (/.f32 -1 u)) (-.f32 (/.f32 1/4 u) (log.f32 4))))
(+.f32 (*.f32 1/32 (/.f32 s (pow.f32 u 2))) (+.f32 (*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (*.f32 1/4 (/.f32 s u))))
(fma.f32 1/32 (/.f32 s (*.f32 u u)) (fma.f32 -1 (*.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) s) (*.f32 1/4 (/.f32 s u))))
(fma.f32 1/32 (/.f32 s (*.f32 u u)) (fma.f32 1/4 (/.f32 s u) (*.f32 (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4)) s)))
(fma.f32 (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4)) s (*.f32 (/.f32 s u) (+.f32 1/4 (/.f32 1/32 u))))
(fma.f32 (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4)) s (*.f32 (/.f32 s u) (+.f32 (/.f32 1/32 u) 1/4)))
(+.f32 (*.f32 1/32 (/.f32 s (pow.f32 u 2))) (+.f32 (*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (+.f32 (*.f32 1/192 (/.f32 s (pow.f32 u 3))) (*.f32 1/4 (/.f32 s u)))))
(fma.f32 1/32 (/.f32 s (*.f32 u u)) (fma.f32 -1 (*.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) s) (fma.f32 1/192 (/.f32 s (pow.f32 u 3)) (*.f32 1/4 (/.f32 s u)))))
(+.f32 (fma.f32 1/192 (/.f32 s (pow.f32 u 3)) (*.f32 1/4 (/.f32 s u))) (fma.f32 1/32 (/.f32 s (*.f32 u u)) (*.f32 (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4)) s)))
(+.f32 (*.f32 1/192 (/.f32 s (pow.f32 u 3))) (fma.f32 (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4)) s (*.f32 (/.f32 s u) (+.f32 1/4 (/.f32 1/32 u)))))
(fma.f32 (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4)) s (*.f32 (/.f32 s u) (+.f32 1/4 (+.f32 (/.f32 1/32 u) (/.f32 1/192 (*.f32 u u))))))
(+.f32 (log.f32 u) (log.f32 4))
(+.f32 (log.f32 4) (log.f32 u))
(+.f32 (*.f32 2 u) (+.f32 (log.f32 u) (log.f32 4)))
(fma.f32 2 u (+.f32 (log.f32 4) (log.f32 u)))
(+.f32 (log.f32 4) (fma.f32 u 2 (log.f32 u)))
(+.f32 (*.f32 2 u) (+.f32 (log.f32 u) (+.f32 (log.f32 4) (*.f32 10/3 (pow.f32 u 2)))))
(fma.f32 2 u (+.f32 (log.f32 u) (+.f32 (log.f32 4) (*.f32 (*.f32 u u) 10/3))))
(+.f32 (fma.f32 (*.f32 u u) 10/3 (log.f32 4)) (fma.f32 u 2 (log.f32 u)))
(+.f32 (fma.f32 u (*.f32 u 10/3) (log.f32 4)) (fma.f32 u 2 (log.f32 u)))
(+.f32 (*.f32 2 u) (+.f32 (log.f32 u) (+.f32 (log.f32 4) (+.f32 (*.f32 10/3 (pow.f32 u 2)) (*.f32 8 (pow.f32 u 3))))))
(fma.f32 2 u (+.f32 (log.f32 u) (+.f32 (log.f32 4) (fma.f32 10/3 (*.f32 u u) (*.f32 8 (pow.f32 u 3))))))
(+.f32 (+.f32 (fma.f32 (*.f32 u u) 10/3 (log.f32 4)) (fma.f32 u 2 (log.f32 u))) (*.f32 8 (pow.f32 u 3)))
(+.f32 (log.f32 u) (fma.f32 u 2 (fma.f32 8 (pow.f32 u 3) (fma.f32 (*.f32 u u) 10/3 (log.f32 4)))))
(+.f32 (fma.f32 u 2 (log.f32 4)) (fma.f32 (*.f32 u u) (+.f32 10/3 (*.f32 u 8)) (log.f32 u)))
(log.f32 (neg.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))
(log.f32 (neg.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))))
(log.f32 (-.f32 (neg.f32 (log.f32 u)) (log.f32 -4)))
(log.f32 (neg.f32 (+.f32 (log.f32 -4) (log.f32 u))))
(-.f32 (log.f32 (neg.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (*.f32 1/4 (/.f32 1 (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) u))))
(-.f32 (log.f32 (neg.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)))) (/.f32 1/4 (*.f32 u (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)))))
(+.f32 (log.f32 (-.f32 (neg.f32 (log.f32 u)) (log.f32 -4))) (/.f32 -1/4 (*.f32 u (+.f32 (log.f32 -4) (log.f32 u)))))
(+.f32 (log.f32 (neg.f32 (+.f32 (log.f32 -4) (log.f32 u)))) (/.f32 -1/4 (*.f32 u (+.f32 (log.f32 -4) (log.f32 u)))))
(+.f32 (log.f32 (-.f32 (neg.f32 (log.f32 u)) (log.f32 -4))) (/.f32 (/.f32 -1/4 u) (+.f32 (log.f32 -4) (log.f32 u))))
(-.f32 (+.f32 (log.f32 (neg.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (*.f32 -1/2 (/.f32 (+.f32 (*.f32 1/16 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (*.f32 1/16 (/.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 2)))) (pow.f32 u 2)))) (*.f32 1/4 (/.f32 1 (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) u))))
(+.f32 (log.f32 (neg.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)))) (-.f32 (*.f32 -1/2 (/.f32 (+.f32 (/.f32 1/16 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))) (/.f32 1/16 (pow.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) 2))) (*.f32 u u))) (/.f32 1/4 (*.f32 u (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))))))
(+.f32 (log.f32 (-.f32 (neg.f32 (log.f32 u)) (log.f32 -4))) (fma.f32 -1/2 (/.f32 (+.f32 (/.f32 1/16 (+.f32 (log.f32 -4) (log.f32 u))) (/.f32 1/16 (pow.f32 (+.f32 (log.f32 -4) (log.f32 u)) 2))) (*.f32 u u)) (/.f32 -1/4 (*.f32 u (+.f32 (log.f32 -4) (log.f32 u))))))
(+.f32 (log.f32 (neg.f32 (+.f32 (log.f32 -4) (log.f32 u)))) (+.f32 (/.f32 (+.f32 (/.f32 -1/32 (+.f32 (log.f32 -4) (log.f32 u))) (/.f32 -1/32 (pow.f32 (+.f32 (log.f32 -4) (log.f32 u)) 2))) (*.f32 u u)) (/.f32 -1/4 (*.f32 u (+.f32 (log.f32 -4) (log.f32 u))))))
(+.f32 (log.f32 (-.f32 (neg.f32 (log.f32 u)) (log.f32 -4))) (+.f32 (/.f32 (+.f32 (/.f32 -1/32 (+.f32 (log.f32 -4) (log.f32 u))) (/.f32 -1/32 (pow.f32 (+.f32 (log.f32 -4) (log.f32 u)) 2))) (*.f32 u u)) (/.f32 (/.f32 -1/4 u) (+.f32 (log.f32 -4) (log.f32 u)))))
(-.f32 (+.f32 (log.f32 (neg.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (+.f32 (*.f32 -1/6 (/.f32 (+.f32 (*.f32 3/64 (/.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 2))) (+.f32 (*.f32 1/32 (/.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 3))) (*.f32 1/32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))))) (pow.f32 u 3))) (*.f32 -1/2 (/.f32 (+.f32 (*.f32 1/16 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (*.f32 1/16 (/.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) 2)))) (pow.f32 u 2))))) (*.f32 1/4 (/.f32 1 (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) u))))
(+.f32 (log.f32 (neg.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)))) (-.f32 (fma.f32 -1/6 (/.f32 (+.f32 (/.f32 3/64 (pow.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) 2)) (+.f32 (/.f32 1/32 (pow.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) 3)) (/.f32 1/32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))))) (pow.f32 u 3)) (*.f32 -1/2 (/.f32 (+.f32 (/.f32 1/16 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))) (/.f32 1/16 (pow.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) 2))) (*.f32 u u)))) (/.f32 1/4 (*.f32 u (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))))))
(+.f32 (log.f32 (-.f32 (neg.f32 (log.f32 u)) (log.f32 -4))) (+.f32 (/.f32 (*.f32 -1/6 (+.f32 (/.f32 3/64 (pow.f32 (+.f32 (log.f32 -4) (log.f32 u)) 2)) (+.f32 (/.f32 1/32 (pow.f32 (+.f32 (log.f32 -4) (log.f32 u)) 3)) (/.f32 1/32 (+.f32 (log.f32 -4) (log.f32 u)))))) (pow.f32 u 3)) (fma.f32 -1/2 (/.f32 (+.f32 (/.f32 1/16 (+.f32 (log.f32 -4) (log.f32 u))) (/.f32 1/16 (pow.f32 (+.f32 (log.f32 -4) (log.f32 u)) 2))) (*.f32 u u)) (/.f32 -1/4 (*.f32 u (+.f32 (log.f32 -4) (log.f32 u)))))))
(+.f32 (log.f32 (neg.f32 (+.f32 (log.f32 -4) (log.f32 u)))) (fma.f32 -1/6 (/.f32 (+.f32 (/.f32 3/64 (pow.f32 (+.f32 (log.f32 -4) (log.f32 u)) 2)) (+.f32 (/.f32 1/32 (pow.f32 (+.f32 (log.f32 -4) (log.f32 u)) 3)) (/.f32 1/32 (+.f32 (log.f32 -4) (log.f32 u))))) (pow.f32 u 3)) (+.f32 (/.f32 (+.f32 (/.f32 -1/32 (+.f32 (log.f32 -4) (log.f32 u))) (/.f32 -1/32 (pow.f32 (+.f32 (log.f32 -4) (log.f32 u)) 2))) (*.f32 u u)) (/.f32 -1/4 (*.f32 u (+.f32 (log.f32 -4) (log.f32 u)))))))
(+.f32 (log.f32 (-.f32 (neg.f32 (log.f32 u)) (log.f32 -4))) (+.f32 (/.f32 (+.f32 (/.f32 -1/32 (+.f32 (log.f32 -4) (log.f32 u))) (/.f32 -1/32 (pow.f32 (+.f32 (log.f32 -4) (log.f32 u)) 2))) (*.f32 u u)) (+.f32 (/.f32 (fma.f32 -1/6 (+.f32 (/.f32 1/32 (pow.f32 (+.f32 (log.f32 -4) (log.f32 u)) 3)) (/.f32 1/32 (+.f32 (log.f32 -4) (log.f32 u)))) (/.f32 -1/128 (pow.f32 (+.f32 (log.f32 -4) (log.f32 u)) 2))) (pow.f32 u 3)) (/.f32 (/.f32 -1/4 u) (+.f32 (log.f32 -4) (log.f32 u))))))
(log.f32 (neg.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))
(log.f32 (neg.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))))
(log.f32 (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4)))
(-.f32 (log.f32 (neg.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (*.f32 1/4 (/.f32 1 (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) u))))
(-.f32 (log.f32 (neg.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)))) (/.f32 1/4 (*.f32 u (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)))))
(+.f32 (log.f32 (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4))) (/.f32 -1/4 (*.f32 u (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))))))
(-.f32 (+.f32 (*.f32 -1/2 (/.f32 (+.f32 (*.f32 1/16 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (*.f32 1/16 (/.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 2)))) (pow.f32 u 2))) (log.f32 (neg.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))) (*.f32 1/4 (/.f32 1 (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) u))))
(-.f32 (fma.f32 -1/2 (/.f32 (+.f32 (/.f32 1/16 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))) (/.f32 1/16 (pow.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) 2))) (*.f32 u u)) (log.f32 (neg.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))))) (/.f32 1/4 (*.f32 u (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)))))
(+.f32 (fma.f32 -1/2 (/.f32 (+.f32 (/.f32 1/16 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))) (/.f32 1/16 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 2))) (*.f32 u u)) (log.f32 (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4)))) (/.f32 -1/4 (*.f32 u (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))))))
(+.f32 (log.f32 (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4))) (+.f32 (/.f32 (+.f32 (/.f32 -1/32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))) (/.f32 -1/32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 2))) (*.f32 u u)) (/.f32 -1/4 (*.f32 u (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))))))
(+.f32 (+.f32 (log.f32 (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4))) (/.f32 -1/4 (*.f32 u (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))))) (/.f32 (+.f32 (/.f32 -1/32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))) (/.f32 -1/32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 2))) (*.f32 u u)))
(-.f32 (+.f32 (*.f32 -1/2 (/.f32 (+.f32 (*.f32 1/16 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (*.f32 1/16 (/.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 2)))) (pow.f32 u 2))) (+.f32 (*.f32 -1/6 (/.f32 (+.f32 (*.f32 1/32 (/.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 3))) (+.f32 (*.f32 1/32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (*.f32 3/64 (/.f32 1 (pow.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) 2))))) (pow.f32 u 3))) (log.f32 (neg.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))))) (*.f32 1/4 (/.f32 1 (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) u))))
(-.f32 (fma.f32 -1/2 (/.f32 (+.f32 (/.f32 1/16 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))) (/.f32 1/16 (pow.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) 2))) (*.f32 u u)) (fma.f32 -1/6 (/.f32 (+.f32 (/.f32 1/32 (pow.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) 3)) (+.f32 (/.f32 1/32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))) (/.f32 3/64 (pow.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) 2)))) (pow.f32 u 3)) (log.f32 (neg.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)))))) (/.f32 1/4 (*.f32 u (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)))))
(+.f32 (fma.f32 -1/2 (/.f32 (+.f32 (/.f32 1/16 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))) (/.f32 1/16 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 2))) (*.f32 u u)) (fma.f32 -1/6 (/.f32 (+.f32 (/.f32 1/32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))) (+.f32 (/.f32 3/64 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 2)) (/.f32 1/32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 3)))) (pow.f32 u 3)) (log.f32 (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4))))) (/.f32 -1/4 (*.f32 u (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))))))
(+.f32 (+.f32 (log.f32 (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4))) (/.f32 (+.f32 (/.f32 -1/32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))) (/.f32 -1/32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 2))) (*.f32 u u))) (fma.f32 -1/6 (/.f32 (+.f32 (/.f32 1/32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 3)) (+.f32 (/.f32 1/32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))) (/.f32 3/64 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 2)))) (pow.f32 u 3)) (/.f32 -1/4 (*.f32 u (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))))))
(+.f32 (+.f32 (+.f32 (log.f32 (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4))) (/.f32 -1/4 (*.f32 u (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))))) (/.f32 (+.f32 (/.f32 -1/32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))) (/.f32 -1/32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 2))) (*.f32 u u))) (/.f32 (fma.f32 -1/6 (+.f32 (/.f32 1/32 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 3)) (/.f32 1/32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))))) (/.f32 -1/128 (pow.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) 2))) (pow.f32 u 3)))

eval805.0ms (9.1%)

Compiler

Compiled 15893 to 11662 computations (26.6% saved)

prune326.0ms (3.7%)

Pruning

26 alts after pruning (19 fresh and 7 done)

PrunedKeptTotal
New74910759
Fresh4913
Picked011
Done066
Total75326779
Error
0.0b
Counts
779 → 26
Alt Table
Click to see full alt table
StatusErrorProgram
4.9b
(*.f32 (*.f32 u s) (+.f32 4 (*.f32 u 8)))
0.2b
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
4.9b
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u 8))))
0.4b
(*.f32 s (*.f32 3 (*.f32 1/3 (neg.f32 (log1p.f32 (*.f32 u -4))))))
11.6b
(*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4 u)))))
2.5b
(*.f32 s (+.f32 (*.f32 (pow.f32 u 3) (+.f32 (*.f32 64 u) 64/3)) (*.f32 u (+.f32 4 (*.f32 u 8)))))
9.1b
(pow.f32 (cbrt.f32 (*.f32 4 (*.f32 u s))) 3)
0.3b
(*.f32 s (*.f32 (cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2)) (cbrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))))
3.4b
(+.f32 (*.f32 (*.f32 u (fma.f32 u 64/3 8)) (*.f32 u s)) (*.f32 4 (*.f32 u s)))
3.3b
(*.f32 s (*.f32 u (+.f32 4 (/.f32 (-.f32 (*.f32 (*.f32 u 8) (*.f32 u 8)) (*.f32 (*.f32 u (*.f32 u 64/3)) (*.f32 u (*.f32 u 64/3)))) (-.f32 (*.f32 u 8) (*.f32 u (*.f32 u 64/3)))))))
3.3b
(*.f32 s (+.f32 (*.f32 u 4) (*.f32 (*.f32 u u) (+.f32 (*.f32 64/3 u) 8))))
0.6b
(pow.f32 (cbrt.f32 (*.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) s)) 3)
3.2b
(fma.f32 (*.f32 u 4) s (*.f32 (*.f32 (fma.f32 u 64/3 8) (*.f32 u u)) s))
0.5b
(*.f32 s (pow.f32 (sqrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))) 2))
3.3b
(*.f32 u (+.f32 (*.f32 4 s) (*.f32 u (*.f32 s (+.f32 8 (*.f32 u 64/3))))))
1.6b
(*.f32 s (pow.f32 (pow.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) 3) 1/3))
4.9b
(*.f32 u (*.f32 s (+.f32 (*.f32 u 8) 4)))
4.9b
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
3.4b
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
8.9b
(*.f32 u (*.f32 4 s))
2.4b
(*.f32 s (neg.f32 (fma.f32 -4 u (*.f32 (*.f32 u u) (+.f32 -8 (*.f32 u (+.f32 -64/3 (*.f32 -64 u))))))))
3.3b
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u (+.f32 8 (*.f32 u 64/3))))))
1.2b
(*.f32 s (exp.f32 (log.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))))
3.7b
(*.f32 s (+.f32 (log.f32 (/.f32 1 (-.f32 1 (*.f32 16 (*.f32 u u))))) (log1p.f32 (*.f32 4 u))))
9.0b
(*.f32 4 (*.f32 u s))
9.0b
(pow.f32 (sqrt.f32 (*.f32 4 (*.f32 u s))) 2)
Compiler

Compiled 665 to 496 computations (25.4% saved)

localize71.0ms (0.8%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(log1p.f32 (*.f32 u -4))
0.2b
(*.f32 s (*.f32 3 (*.f32 1/3 (neg.f32 (log1p.f32 (*.f32 u -4))))))
0.3b
(*.f32 3 (*.f32 1/3 (neg.f32 (log1p.f32 (*.f32 u -4)))))
0.3b
(*.f32 1/3 (neg.f32 (log1p.f32 (*.f32 u -4))))
Compiler

Compiled 46 to 37 computations (19.6% saved)

series5.0ms (0.1%)

Counts
3 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
u
@inf
(*.f32 s (*.f32 3 (*.f32 1/3 (neg.f32 (log1p.f32 (*.f32 u -4))))))
0.0ms
u
@0
(*.f32 1/3 (neg.f32 (log1p.f32 (*.f32 u -4))))
0.0ms
u
@inf
(*.f32 1/3 (neg.f32 (log1p.f32 (*.f32 u -4))))
0.0ms
u
@-inf
(*.f32 1/3 (neg.f32 (log1p.f32 (*.f32 u -4))))
0.0ms
s
@0
(*.f32 s (*.f32 3 (*.f32 1/3 (neg.f32 (log1p.f32 (*.f32 u -4))))))

rewrite62.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
910×pow1_binary32
845×add-log-exp_binary32
844×expm1-log1p-u_binary32
843×log1p-expm1-u_binary32
831×add-exp-log_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01230
125024
2265524
Stop Event
node limit
Counts
3 → 43
Calls
Call 1
Inputs
(*.f32 1/3 (neg.f32 (log1p.f32 (*.f32 u -4))))
(*.f32 3 (*.f32 1/3 (neg.f32 (log1p.f32 (*.f32 u -4)))))
(*.f32 s (*.f32 3 (*.f32 1/3 (neg.f32 (log1p.f32 (*.f32 u -4))))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f32 0 (*.f32 1/3 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (*.f32 1/3 (log1p.f32 (*.f32 u -4)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 1/3 (log1p.f32 (*.f32 u -4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 1/3 (log1p.f32 (*.f32 u -4))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 1/3 (log1p.f32 (*.f32 u -4)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 1/3 (log1p.f32 (*.f32 u -4)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f32 (*.f32 1/3 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (*.f32 1/9 (pow.f32 (log1p.f32 (*.f32 u -4)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 1/3) (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 1/3 (log1p.f32 (*.f32 u -4))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 1/3 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 1/3 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 1/3 (log1p.f32 (*.f32 u -4)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (log1p.f32 (*.f32 u -4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 0 (log1p.f32 (*.f32 u -4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (log1p.f32 (*.f32 u -4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 0 (pow.f32 (log1p.f32 (*.f32 u -4)) 3)) (+.f32 0 (+.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2) (*.f32 0 (log1p.f32 (*.f32 u -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 0 (pow.f32 (log1p.f32 (*.f32 u -4)) 2)) (log1p.f32 (*.f32 u -4)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (log1p.f32 (*.f32 u -4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (log1p.f32 (*.f32 u -4))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f32 (log1p.f32 (*.f32 u -4)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 (*.f32 u -4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (*.f32 u -4))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (log1p.f32 (*.f32 u -4))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (*.f32 (log1p.f32 (*.f32 u -4)) s)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (+.f32 (*.f32 u -4) 1) s))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 3) (pow.f32 s 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 s 3) (pow.f32 (log1p.f32 (*.f32 u -4)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s)))))))

simplify84.0ms (0.9%)

Algorithm
egg-herbie
Rules
742×times-frac_binary32
728×fma-def_binary32
433×+-commutative_binary32
385×associate-+l-_binary32
314×associate-+l+_binary32
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0123972
1386902
21108860
33365837
47419837
Stop Event
node limit
Counts
91 → 117
Calls
Call 1
Inputs
(*.f32 4/3 u)
(+.f32 (*.f32 8/3 (pow.f32 u 2)) (*.f32 4/3 u))
(+.f32 (*.f32 8/3 (pow.f32 u 2)) (+.f32 (*.f32 4/3 u) (*.f32 64/9 (pow.f32 u 3))))
(+.f32 (*.f32 8/3 (pow.f32 u 2)) (+.f32 (*.f32 4/3 u) (+.f32 (*.f32 64/3 (pow.f32 u 4)) (*.f32 64/9 (pow.f32 u 3)))))
(*.f32 -1/3 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))
(+.f32 (*.f32 1/12 (/.f32 1 u)) (*.f32 -1/3 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))
(+.f32 (*.f32 1/96 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/12 (/.f32 1 u)) (*.f32 -1/3 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))))
(+.f32 (*.f32 1/576 (/.f32 1 (pow.f32 u 3))) (+.f32 (*.f32 1/96 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/12 (/.f32 1 u)) (*.f32 -1/3 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))))
(*.f32 -1/3 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))
(+.f32 (*.f32 -1/3 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))) (*.f32 1/12 (/.f32 1 u)))
(+.f32 (*.f32 1/96 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 -1/3 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))) (*.f32 1/12 (/.f32 1 u))))
(+.f32 (*.f32 1/576 (/.f32 1 (pow.f32 u 3))) (+.f32 (*.f32 1/96 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 -1/3 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))) (*.f32 1/12 (/.f32 1 u)))))
(*.f32 4 u)
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(+.f32 (*.f32 8 (pow.f32 u 2)) (+.f32 (*.f32 64/3 (pow.f32 u 3)) (*.f32 4 u)))
(+.f32 (*.f32 8 (pow.f32 u 2)) (+.f32 (*.f32 64 (pow.f32 u 4)) (+.f32 (*.f32 64/3 (pow.f32 u 3)) (*.f32 4 u))))
(*.f32 -1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))
(+.f32 (*.f32 1/4 (/.f32 1 u)) (*.f32 -1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))
(+.f32 (*.f32 1/32 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/4 (/.f32 1 u)) (*.f32 -1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))))
(+.f32 (*.f32 1/32 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/4 (/.f32 1 u)) (+.f32 (*.f32 -1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))) (*.f32 1/192 (/.f32 1 (pow.f32 u 3))))))
(*.f32 -1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))
(+.f32 (*.f32 1/4 (/.f32 1 u)) (*.f32 -1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))
(+.f32 (*.f32 1/32 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/4 (/.f32 1 u)) (*.f32 -1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))))
(+.f32 (*.f32 1/32 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/4 (/.f32 1 u)) (+.f32 (*.f32 -1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))) (*.f32 1/192 (/.f32 1 (pow.f32 u 3))))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4 u)))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4 u)))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4 u)))))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4 u)))))
(*.f32 4 (*.f32 s u))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (+.f32 (*.f32 8 (*.f32 s (pow.f32 u 2))) (*.f32 64 (*.f32 s (pow.f32 u 4))))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))
(+.f32 (*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (*.f32 1/4 (/.f32 s u)))
(+.f32 (*.f32 1/32 (/.f32 s (pow.f32 u 2))) (+.f32 (*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (*.f32 1/4 (/.f32 s u))))
(+.f32 (*.f32 1/32 (/.f32 s (pow.f32 u 2))) (+.f32 (*.f32 1/192 (/.f32 s (pow.f32 u 3))) (+.f32 (*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (*.f32 1/4 (/.f32 s u)))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))
(+.f32 (*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (*.f32 1/4 (/.f32 s u)))
(+.f32 (*.f32 1/32 (/.f32 s (pow.f32 u 2))) (+.f32 (*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (*.f32 1/4 (/.f32 s u))))
(+.f32 (*.f32 1/32 (/.f32 s (pow.f32 u 2))) (+.f32 (*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (+.f32 (*.f32 1/192 (/.f32 s (pow.f32 u 3))) (*.f32 1/4 (/.f32 s u)))))
Outputs
(*.f32 4/3 u)
(+.f32 (*.f32 8/3 (pow.f32 u 2)) (*.f32 4/3 u))
(fma.f32 8/3 (*.f32 u u) (*.f32 4/3 u))
(fma.f32 4/3 u (*.f32 u (*.f32 u 8/3)))
(*.f32 u (+.f32 4/3 (*.f32 u 8/3)))
(+.f32 (*.f32 8/3 (pow.f32 u 2)) (+.f32 (*.f32 4/3 u) (*.f32 64/9 (pow.f32 u 3))))
(fma.f32 8/3 (*.f32 u u) (fma.f32 4/3 u (*.f32 64/9 (pow.f32 u 3))))
(fma.f32 4/3 u (*.f32 (*.f32 u u) (+.f32 8/3 (*.f32 u 64/9))))
(*.f32 u (+.f32 4/3 (*.f32 u (+.f32 8/3 (*.f32 u 64/9)))))
(+.f32 (*.f32 8/3 (pow.f32 u 2)) (+.f32 (*.f32 4/3 u) (+.f32 (*.f32 64/3 (pow.f32 u 4)) (*.f32 64/9 (pow.f32 u 3)))))
(fma.f32 8/3 (*.f32 u u) (fma.f32 4/3 u (fma.f32 64/3 (pow.f32 u 4) (*.f32 64/9 (pow.f32 u 3)))))
(fma.f32 8/3 (*.f32 u u) (fma.f32 4/3 u (fma.f32 64/9 (pow.f32 u 3) (*.f32 64/3 (pow.f32 u 4)))))
(fma.f32 u (*.f32 u 8/3) (fma.f32 64/9 (pow.f32 u 3) (fma.f32 4/3 u (*.f32 64/3 (pow.f32 u 4)))))
(fma.f32 4/3 u (*.f32 (*.f32 u u) (+.f32 8/3 (*.f32 u (+.f32 (*.f32 u 64/3) 64/9)))))
(*.f32 -1/3 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))
(*.f32 -1/3 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)))
(*.f32 -1/3 (+.f32 (log.f32 u) (log.f32 -4)))
(+.f32 (*.f32 1/12 (/.f32 1 u)) (*.f32 -1/3 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))
(+.f32 (*.f32 -1/3 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))) (/.f32 1/12 u))
(fma.f32 -1/3 (+.f32 (log.f32 u) (log.f32 -4)) (/.f32 1/12 u))
(+.f32 (*.f32 1/96 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/12 (/.f32 1 u)) (*.f32 -1/3 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))))
(+.f32 (+.f32 (/.f32 1/96 (*.f32 u u)) (/.f32 1/12 u)) (*.f32 -1/3 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))))
(+.f32 (fma.f32 -1/3 (+.f32 (log.f32 u) (log.f32 -4)) (/.f32 1/12 u)) (/.f32 1/96 (*.f32 u u)))
(+.f32 (/.f32 1/12 u) (fma.f32 -1/3 (+.f32 (log.f32 u) (log.f32 -4)) (/.f32 1/96 (*.f32 u u))))
(+.f32 (*.f32 1/576 (/.f32 1 (pow.f32 u 3))) (+.f32 (*.f32 1/96 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/12 (/.f32 1 u)) (*.f32 -1/3 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))))
(+.f32 (+.f32 (+.f32 (/.f32 1/96 (*.f32 u u)) (/.f32 1/12 u)) (*.f32 -1/3 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)))) (/.f32 1/576 (pow.f32 u 3)))
(+.f32 (+.f32 (fma.f32 -1/3 (+.f32 (log.f32 u) (log.f32 -4)) (/.f32 1/12 u)) (/.f32 1/96 (*.f32 u u))) (/.f32 1/576 (pow.f32 u 3)))
(+.f32 (/.f32 1/12 u) (+.f32 (/.f32 1/96 (*.f32 u u)) (fma.f32 -1/3 (+.f32 (log.f32 u) (log.f32 -4)) (/.f32 1/576 (pow.f32 u 3)))))
(*.f32 -1/3 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))
(*.f32 -1/3 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)))
(*.f32 -1/3 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))))
(+.f32 (*.f32 -1/3 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))) (*.f32 1/12 (/.f32 1 u)))
(fma.f32 -1/3 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) (/.f32 1/12 u))
(fma.f32 -1/3 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (/.f32 1/12 u))
(+.f32 (*.f32 1/96 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 -1/3 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))) (*.f32 1/12 (/.f32 1 u))))
(+.f32 (/.f32 1/96 (*.f32 u u)) (fma.f32 -1/3 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) (/.f32 1/12 u)))
(+.f32 (/.f32 1/96 (*.f32 u u)) (fma.f32 -1/3 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (/.f32 1/12 u)))
(+.f32 (/.f32 1/12 u) (fma.f32 -1/3 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (/.f32 1/96 (*.f32 u u))))
(+.f32 (*.f32 1/576 (/.f32 1 (pow.f32 u 3))) (+.f32 (*.f32 1/96 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 -1/3 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))) (*.f32 1/12 (/.f32 1 u)))))
(+.f32 (+.f32 (/.f32 1/576 (pow.f32 u 3)) (/.f32 1/96 (*.f32 u u))) (fma.f32 -1/3 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) (/.f32 1/12 u)))
(+.f32 (/.f32 1/96 (*.f32 u u)) (+.f32 (fma.f32 -1/3 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (/.f32 1/12 u)) (/.f32 1/576 (pow.f32 u 3))))
(+.f32 (fma.f32 -1/3 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (/.f32 1/12 u)) (+.f32 (/.f32 1/96 (*.f32 u u)) (/.f32 1/576 (pow.f32 u 3))))
(+.f32 (/.f32 1/12 u) (+.f32 (/.f32 1/576 (pow.f32 u 3)) (fma.f32 -1/3 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (/.f32 1/96 (*.f32 u u)))))
(*.f32 4 u)
(*.f32 u 4)
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(fma.f32 8 (*.f32 u u) (*.f32 u 4))
(fma.f32 u 4 (*.f32 u (*.f32 u 8)))
(*.f32 u (+.f32 4 (*.f32 u 8)))
(+.f32 (*.f32 8 (pow.f32 u 2)) (+.f32 (*.f32 64/3 (pow.f32 u 3)) (*.f32 4 u)))
(fma.f32 8 (*.f32 u u) (fma.f32 64/3 (pow.f32 u 3) (*.f32 u 4)))
(fma.f32 (*.f32 u u) 8 (fma.f32 u 4 (*.f32 (pow.f32 u 3) 64/3)))
(fma.f32 u 4 (*.f32 (*.f32 u u) (+.f32 8 (*.f32 u 64/3))))
(*.f32 u (+.f32 4 (*.f32 u (+.f32 8 (*.f32 u 64/3)))))
(+.f32 (*.f32 8 (pow.f32 u 2)) (+.f32 (*.f32 64 (pow.f32 u 4)) (+.f32 (*.f32 64/3 (pow.f32 u 3)) (*.f32 4 u))))
(fma.f32 8 (*.f32 u u) (fma.f32 64 (pow.f32 u 4) (fma.f32 64/3 (pow.f32 u 3) (*.f32 u 4))))
(fma.f32 (*.f32 u u) 8 (fma.f32 (pow.f32 u 4) 64 (fma.f32 u 4 (*.f32 (pow.f32 u 3) 64/3))))
(fma.f32 (pow.f32 u 4) 64 (fma.f32 u 4 (*.f32 (*.f32 u u) (+.f32 8 (*.f32 u 64/3)))))
(fma.f32 (pow.f32 u 4) 64 (*.f32 u (+.f32 4 (*.f32 u (+.f32 8 (*.f32 u 64/3))))))
(*.f32 -1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))
(neg.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)))
(neg.f32 (+.f32 (log.f32 u) (log.f32 -4)))
(-.f32 (neg.f32 (log.f32 u)) (log.f32 -4))
(+.f32 (*.f32 1/4 (/.f32 1 u)) (*.f32 -1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))
(+.f32 (neg.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))) (/.f32 1/4 u))
(-.f32 (/.f32 1/4 u) (+.f32 (log.f32 u) (log.f32 -4)))
(-.f32 (-.f32 (/.f32 1/4 u) (log.f32 u)) (log.f32 -4))
(+.f32 (*.f32 1/32 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/4 (/.f32 1 u)) (*.f32 -1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))))
(+.f32 (+.f32 (/.f32 1/32 (*.f32 u u)) (/.f32 1/4 u)) (neg.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))))
(-.f32 (+.f32 (/.f32 1/4 u) (/.f32 1/32 (*.f32 u u))) (+.f32 (log.f32 u) (log.f32 -4)))
(-.f32 (/.f32 1/32 (*.f32 u u)) (-.f32 (log.f32 -4) (-.f32 (/.f32 1/4 u) (log.f32 u))))
(+.f32 (*.f32 1/32 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/4 (/.f32 1 u)) (+.f32 (*.f32 -1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))) (*.f32 1/192 (/.f32 1 (pow.f32 u 3))))))
(+.f32 (+.f32 (/.f32 1/32 (*.f32 u u)) (/.f32 1/4 u)) (fma.f32 -1 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) (/.f32 1/192 (pow.f32 u 3))))
(+.f32 (-.f32 (/.f32 1/4 u) (+.f32 (log.f32 u) (log.f32 -4))) (+.f32 (/.f32 1/192 (pow.f32 u 3)) (/.f32 1/32 (*.f32 u u))))
(+.f32 (/.f32 1/4 u) (+.f32 (/.f32 1/192 (pow.f32 u 3)) (-.f32 (/.f32 1/32 (*.f32 u u)) (+.f32 (log.f32 u) (log.f32 -4)))))
(+.f32 (/.f32 1/4 u) (+.f32 (/.f32 1/32 (*.f32 u u)) (-.f32 (/.f32 1/192 (pow.f32 u 3)) (+.f32 (log.f32 u) (log.f32 -4)))))
(*.f32 -1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))
(neg.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)))
(neg.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))))
(-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4))
(+.f32 (*.f32 1/4 (/.f32 1 u)) (*.f32 -1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))
(+.f32 (/.f32 1/4 u) (neg.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))))
(-.f32 (/.f32 1/4 u) (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))))
(+.f32 (/.f32 1/4 u) (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4)))
(+.f32 (log.f32 (/.f32 -1 u)) (-.f32 (/.f32 1/4 u) (log.f32 4)))
(+.f32 (*.f32 1/32 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/4 (/.f32 1 u)) (*.f32 -1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))))
(+.f32 (+.f32 (/.f32 1/32 (*.f32 u u)) (/.f32 1/4 u)) (neg.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))))
(+.f32 (/.f32 1/32 (*.f32 u u)) (-.f32 (/.f32 1/4 u) (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))))
(+.f32 (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4)) (+.f32 (/.f32 1/4 u) (/.f32 1/32 (*.f32 u u))))
(-.f32 (+.f32 (/.f32 1/4 u) (+.f32 (log.f32 (/.f32 -1 u)) (/.f32 1/32 (*.f32 u u)))) (log.f32 4))
(+.f32 (*.f32 1/32 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/4 (/.f32 1 u)) (+.f32 (*.f32 -1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))) (*.f32 1/192 (/.f32 1 (pow.f32 u 3))))))
(+.f32 (+.f32 (/.f32 1/32 (*.f32 u u)) (/.f32 1/4 u)) (fma.f32 -1 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) (/.f32 1/192 (pow.f32 u 3))))
(+.f32 (/.f32 1/32 (*.f32 u u)) (+.f32 (/.f32 1/4 u) (-.f32 (/.f32 1/192 (pow.f32 u 3)) (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))))))
(+.f32 (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4)) (+.f32 (/.f32 1/4 u) (+.f32 (/.f32 1/32 (*.f32 u u)) (/.f32 1/192 (pow.f32 u 3)))))
(+.f32 (/.f32 1/192 (pow.f32 u 3)) (-.f32 (+.f32 (/.f32 1/4 u) (+.f32 (log.f32 (/.f32 -1 u)) (/.f32 1/32 (*.f32 u u)))) (log.f32 4)))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(neg.f32 (*.f32 s (log1p.f32 (*.f32 u -4))))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(neg.f32 (*.f32 s (log1p.f32 (*.f32 u -4))))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(neg.f32 (*.f32 s (log1p.f32 (*.f32 u -4))))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(neg.f32 (*.f32 s (log1p.f32 (*.f32 u -4))))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(neg.f32 (*.f32 s (log1p.f32 (*.f32 u -4))))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(neg.f32 (*.f32 s (log1p.f32 (*.f32 u -4))))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(neg.f32 (*.f32 s (log1p.f32 (*.f32 u -4))))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 (*.f32 -4 u) 1))))
(neg.f32 (*.f32 s (log1p.f32 (*.f32 u -4))))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4 u)))))
(neg.f32 (*.f32 s (log1p.f32 (*.f32 u -4))))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4 u)))))
(neg.f32 (*.f32 s (log1p.f32 (*.f32 u -4))))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4 u)))))
(neg.f32 (*.f32 s (log1p.f32 (*.f32 u -4))))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 -1 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4 u)))))
(neg.f32 (*.f32 s (log1p.f32 (*.f32 u -4))))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 u s))
(*.f32 u (*.f32 4 s))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(fma.f32 4 (*.f32 u s) (*.f32 8 (*.f32 (*.f32 u u) s)))
(fma.f32 4 (*.f32 u s) (*.f32 (*.f32 u u) (*.f32 8 s)))
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u 8))))
(*.f32 u (*.f32 s (+.f32 4 (*.f32 u 8))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
(fma.f32 64/3 (*.f32 (pow.f32 u 3) s) (fma.f32 4 (*.f32 u s) (*.f32 8 (*.f32 (*.f32 u u) s))))
(fma.f32 64/3 (*.f32 (pow.f32 u 3) s) (fma.f32 4 (*.f32 u s) (*.f32 (*.f32 u u) (*.f32 8 s))))
(fma.f32 u (*.f32 4 s) (*.f32 s (*.f32 (*.f32 u u) (+.f32 8 (*.f32 u 64/3)))))
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u (+.f32 8 (*.f32 u 64/3))))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (+.f32 (*.f32 8 (*.f32 s (pow.f32 u 2))) (*.f32 64 (*.f32 s (pow.f32 u 4))))))
(fma.f32 64/3 (*.f32 (pow.f32 u 3) s) (fma.f32 4 (*.f32 u s) (fma.f32 8 (*.f32 (*.f32 u u) s) (*.f32 (*.f32 64 s) (pow.f32 u 4)))))
(fma.f32 64/3 (*.f32 (pow.f32 u 3) s) (fma.f32 4 (*.f32 u s) (fma.f32 8 (*.f32 (*.f32 u u) s) (*.f32 (pow.f32 u 4) (*.f32 64 s)))))
(+.f32 (*.f32 s (*.f32 u (+.f32 4 (*.f32 u 8)))) (*.f32 s (fma.f32 (pow.f32 u 4) 64 (*.f32 (pow.f32 u 3) 64/3))))
(*.f32 s (fma.f32 (pow.f32 u 4) 64 (*.f32 u (+.f32 4 (*.f32 u (+.f32 8 (*.f32 u 64/3)))))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))
(neg.f32 (*.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) s))
(*.f32 (+.f32 (log.f32 u) (log.f32 -4)) (neg.f32 s))
(+.f32 (*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (*.f32 1/4 (/.f32 s u)))
(fma.f32 -1 (*.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) s) (*.f32 1/4 (/.f32 s u)))
(-.f32 (*.f32 1/4 (/.f32 s u)) (*.f32 (+.f32 (log.f32 u) (log.f32 -4)) s))
(fma.f32 (+.f32 (log.f32 u) (log.f32 -4)) (neg.f32 s) (*.f32 1/4 (/.f32 s u)))
(*.f32 s (-.f32 (-.f32 (/.f32 1/4 u) (log.f32 u)) (log.f32 -4)))
(+.f32 (*.f32 1/32 (/.f32 s (pow.f32 u 2))) (+.f32 (*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (*.f32 1/4 (/.f32 s u))))
(fma.f32 1/32 (/.f32 s (*.f32 u u)) (fma.f32 -1 (*.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) s) (*.f32 1/4 (/.f32 s u))))
(fma.f32 1/32 (/.f32 s (*.f32 u u)) (-.f32 (*.f32 1/4 (/.f32 s u)) (*.f32 (+.f32 (log.f32 u) (log.f32 -4)) s)))
(-.f32 (*.f32 (/.f32 s u) (+.f32 1/4 (/.f32 1/32 u))) (*.f32 (+.f32 (log.f32 u) (log.f32 -4)) s))
(fma.f32 (+.f32 (log.f32 u) (log.f32 -4)) (neg.f32 s) (*.f32 (/.f32 s u) (+.f32 1/4 (/.f32 1/32 u))))
(+.f32 (*.f32 1/32 (/.f32 s (pow.f32 u 2))) (+.f32 (*.f32 1/192 (/.f32 s (pow.f32 u 3))) (+.f32 (*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (*.f32 1/4 (/.f32 s u)))))
(fma.f32 1/32 (/.f32 s (*.f32 u u)) (fma.f32 1/192 (/.f32 s (pow.f32 u 3)) (fma.f32 -1 (*.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) s) (*.f32 1/4 (/.f32 s u)))))
(fma.f32 1/32 (/.f32 s (*.f32 u u)) (fma.f32 1/192 (/.f32 s (pow.f32 u 3)) (-.f32 (*.f32 1/4 (/.f32 s u)) (*.f32 (+.f32 (log.f32 u) (log.f32 -4)) s))))
(fma.f32 1/192 (/.f32 s (pow.f32 u 3)) (-.f32 (*.f32 (/.f32 s u) (+.f32 1/4 (/.f32 1/32 u))) (*.f32 (+.f32 (log.f32 u) (log.f32 -4)) s)))
(+.f32 (*.f32 (/.f32 s (*.f32 u u)) (+.f32 1/32 (/.f32 1/192 u))) (*.f32 s (-.f32 (-.f32 (/.f32 1/4 u) (log.f32 u)) (log.f32 -4))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))
(neg.f32 (*.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) s))
(*.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (neg.f32 s))
(*.f32 (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4)) s)
(+.f32 (*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (*.f32 1/4 (/.f32 s u)))
(fma.f32 -1 (*.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) s) (*.f32 1/4 (/.f32 s u)))
(-.f32 (*.f32 1/4 (/.f32 s u)) (*.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) s))
(fma.f32 1/4 (/.f32 s u) (*.f32 (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4)) s))
(*.f32 s (+.f32 (log.f32 (/.f32 -1 u)) (-.f32 (/.f32 1/4 u) (log.f32 4))))
(+.f32 (*.f32 1/32 (/.f32 s (pow.f32 u 2))) (+.f32 (*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (*.f32 1/4 (/.f32 s u))))
(fma.f32 1/32 (/.f32 s (*.f32 u u)) (fma.f32 -1 (*.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) s) (*.f32 1/4 (/.f32 s u))))
(fma.f32 1/32 (/.f32 s (*.f32 u u)) (-.f32 (*.f32 1/4 (/.f32 s u)) (*.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) s)))
(fma.f32 (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4)) s (*.f32 (/.f32 s u) (+.f32 1/4 (/.f32 1/32 u))))
(+.f32 (*.f32 1/32 (/.f32 s (pow.f32 u 2))) (+.f32 (*.f32 -1 (*.f32 s (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (+.f32 (*.f32 1/192 (/.f32 s (pow.f32 u 3))) (*.f32 1/4 (/.f32 s u)))))
(fma.f32 1/32 (/.f32 s (*.f32 u u)) (fma.f32 -1 (*.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) s) (fma.f32 1/192 (/.f32 s (pow.f32 u 3)) (*.f32 1/4 (/.f32 s u)))))
(fma.f32 1/32 (/.f32 s (*.f32 u u)) (-.f32 (fma.f32 1/4 (/.f32 s u) (*.f32 1/192 (/.f32 s (pow.f32 u 3)))) (*.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) s)))
(+.f32 (fma.f32 (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4)) s (*.f32 1/192 (/.f32 s (pow.f32 u 3)))) (*.f32 (/.f32 s u) (+.f32 1/4 (/.f32 1/32 u))))
(fma.f32 (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4)) s (*.f32 (/.f32 s u) (+.f32 1/4 (+.f32 (/.f32 1/192 (*.f32 u u)) (/.f32 1/32 u)))))

localize15.0ms (0.2%)

Compiler

Compiled 13 to 8 computations (38.5% saved)

localize41.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4)
0.3b
(*.f32 (+.f32 8 (*.f32 64/3 u)) u)
0.3b
(*.f32 64/3 u)
0.4b
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
Compiler

Compiled 47 to 32 computations (31.9% saved)

series4.0ms (0%)

Counts
4 → 36
Calls

15 calls:

TimeVariablePointExpression
1.0ms
s
@0
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
0.0ms
u
@0
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
0.0ms
u
@-inf
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
0.0ms
u
@inf
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
0.0ms
s
@-inf
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))

rewrite77.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
612×log-prod_binary32
431×pow-prod-down_binary32
330×pow2_binary32
278×prod-diff_binary32
232×pow1/3_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01242
126536
2334436
Stop Event
node limit
Counts
4 → 122
Calls
Call 1
Inputs
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
(*.f32 64/3 u)
(*.f32 (+.f32 8 (*.f32 64/3 u)) u)
(+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (*.f32 u (*.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) s)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (*.f32 u (fma.f32 64/3 u 8)) (*.f32 u s)) (*.f32 4 (*.f32 u s)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 4 (*.f32 u s)) (*.f32 (*.f32 u (fma.f32 64/3 u 8)) (*.f32 u s)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (*.f32 u s) (*.f32 u (fma.f32 64/3 u 8))) (*.f32 (*.f32 u s) 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (*.f32 u s) 4) (*.f32 (*.f32 u s) (*.f32 u (fma.f32 64/3 u 8))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (pow.f32 (cbrt.f32 (pow.f32 (pow.f32 (exp.f32 s) u) (fma.f32 u (fma.f32 64/3 u 8) 4))) 2)) (log.f32 (cbrt.f32 (pow.f32 (pow.f32 (exp.f32 s) u) (fma.f32 u (fma.f32 64/3 u 8) 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (pow.f32 (pow.f32 (exp.f32 s) u) (fma.f32 u (fma.f32 64/3 u 8) 4)))) (log.f32 (sqrt.f32 (pow.f32 (pow.f32 (exp.f32 s) u) (fma.f32 u (fma.f32 64/3 u 8) 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 u (*.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) s)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (+.f32 64 (pow.f32 (*.f32 u (fma.f32 64/3 u 8)) 3)) (*.f32 u s)) (-.f32 (+.f32 (pow.f32 (*.f32 u (fma.f32 64/3 u 8)) 2) 16) (*.f32 u (*.f32 (fma.f32 64/3 u 8) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (+.f32 (pow.f32 (*.f32 u (fma.f32 64/3 u 8)) 2) -16) (*.f32 u s)) (fma.f32 u (fma.f32 64/3 u 8) -4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (*.f32 u s) (+.f32 64 (pow.f32 (*.f32 u (fma.f32 64/3 u 8)) 3))) (-.f32 (+.f32 (pow.f32 (*.f32 u (fma.f32 64/3 u 8)) 2) 16) (*.f32 u (*.f32 (fma.f32 64/3 u 8) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (*.f32 u s) (+.f32 (pow.f32 (*.f32 u (fma.f32 64/3 u 8)) 2) -16)) (fma.f32 u (fma.f32 64/3 u 8) -4))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 u (*.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) s)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 u (*.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) s)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 u (*.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) s)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 u (*.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) s))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 u (*.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) s))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 u (*.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) s)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (pow.f32 (exp.f32 s) u) (fma.f32 u (fma.f32 64/3 u 8) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 u (*.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) s)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 u (*.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) s)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 u (*.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) s))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 u (*.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) s))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 u (*.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) s))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 u (*.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) s))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (fma.f32 64/3 u 8)) (*.f32 u s) (*.f32 4 (*.f32 u s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 4 (*.f32 u s) (*.f32 (*.f32 u (fma.f32 64/3 u 8)) (*.f32 u s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u s) (*.f32 u (fma.f32 64/3 u 8)) (*.f32 (*.f32 u s) 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u s) 4 (*.f32 (*.f32 u s) (*.f32 u (fma.f32 64/3 u 8))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (*.f32 64/3 u))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (pow.f32 (cbrt.f32 (pow.f32 (exp.f32 64/3) u)) 2)) (log.f32 (cbrt.f32 (pow.f32 (exp.f32 64/3) u))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (pow.f32 (exp.f32 64/3) u))) (log.f32 (sqrt.f32 (pow.f32 (exp.f32 64/3) u))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 64/3 u))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 64/3 u) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 4096/9 (*.f32 u u)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 64/3 u)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 64/3 u)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 64/3 u) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (*.f32 4096/9 (*.f32 u u)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 64/3) u))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 64/3 u))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 64/3 u) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 64/3 u)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 64/3 u)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 64/3 u)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 64/3 u)) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (*.f32 u (fma.f32 64/3 u 8)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 8 u) (*.f32 (*.f32 64/3 u) u))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (*.f32 64/3 u) u) (*.f32 8 u))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 u 8) (*.f32 u (*.f32 64/3 u)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 u (*.f32 64/3 u)) (*.f32 u 8))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (pow.f32 (cbrt.f32 (pow.f32 (exp.f32 (fma.f32 64/3 u 8)) u)) 2)) (log.f32 (cbrt.f32 (pow.f32 (exp.f32 (fma.f32 64/3 u 8)) u))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (pow.f32 (exp.f32 (fma.f32 64/3 u 8)) u))) (log.f32 (sqrt.f32 (pow.f32 (exp.f32 (fma.f32 64/3 u 8)) u))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 u (fma.f32 64/3 u 8)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (fma.f32 262144/27 (pow.f32 u 3) 512) u) (fma.f32 (*.f32 64/3 u) (fma.f32 64/3 u -8) 64))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 64 (*.f32 4096/9 (*.f32 u u))) u) (+.f32 8 (*.f32 -64/3 u)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 u (fma.f32 262144/27 (pow.f32 u 3) 512)) (fma.f32 (*.f32 64/3 u) (fma.f32 64/3 u -8) 64))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 u (-.f32 64 (*.f32 4096/9 (*.f32 u u)))) (+.f32 8 (*.f32 -64/3 u)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 u (fma.f32 64/3 u 8)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 u (fma.f32 64/3 u 8)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 u (fma.f32 64/3 u 8))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 u (fma.f32 64/3 u 8))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 u (fma.f32 64/3 u 8)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 u (fma.f32 64/3 u 8)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 (fma.f32 64/3 u 8)) u))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 u (fma.f32 64/3 u 8)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 u (fma.f32 64/3 u 8)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 u (fma.f32 64/3 u 8))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 u (fma.f32 64/3 u 8))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 u (fma.f32 64/3 u 8))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 u (fma.f32 64/3 u 8))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 8 u (*.f32 (*.f32 64/3 u) u))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u 8 (*.f32 u (*.f32 64/3 u)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u (*.f32 64/3 u) (*.f32 u 8))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 64/3 u) u (*.f32 8 u))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (fma.f32 u (fma.f32 64/3 u 8) 4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 (pow.f32 (*.f32 u (fma.f32 64/3 u 8)) 2) (fma.f32 u (fma.f32 64/3 u 8) -4)) (/.f32 16 (fma.f32 u (fma.f32 64/3 u 8) -4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (fma.f32 u (fma.f32 64/3 u 8) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (fma.f32 u (fma.f32 64/3 u 8) 4)) (pow.f32 (cbrt.f32 (fma.f32 u (fma.f32 64/3 u 8) 4)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (fma.f32 u (fma.f32 64/3 u 8) 4)) 2) (cbrt.f32 (fma.f32 u (fma.f32 64/3 u 8) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (fma.f32 u (fma.f32 64/3 u 8) 4)) (sqrt.f32 (fma.f32 u (fma.f32 64/3 u 8) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 64 (pow.f32 (*.f32 u (fma.f32 64/3 u 8)) 3)) (/.f32 1 (-.f32 (+.f32 (pow.f32 (*.f32 u (fma.f32 64/3 u 8)) 2) 16) (*.f32 u (*.f32 (fma.f32 64/3 u 8) 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 (pow.f32 (*.f32 u (fma.f32 64/3 u 8)) 2) -16) (/.f32 1 (fma.f32 u (fma.f32 64/3 u 8) -4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (-.f32 (+.f32 (pow.f32 (*.f32 u (fma.f32 64/3 u 8)) 2) 16) (*.f32 u (*.f32 (fma.f32 64/3 u 8) 4))) (+.f32 64 (pow.f32 (*.f32 u (fma.f32 64/3 u 8)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (fma.f32 u (fma.f32 64/3 u 8) -4) (+.f32 (pow.f32 (*.f32 u (fma.f32 64/3 u 8)) 2) -16)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 64 (pow.f32 (*.f32 u (fma.f32 64/3 u 8)) 3)) (-.f32 (+.f32 (pow.f32 (*.f32 u (fma.f32 64/3 u 8)) 2) 16) (*.f32 u (*.f32 (fma.f32 64/3 u 8) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 64 (pow.f32 (*.f32 u (fma.f32 64/3 u 8)) 3)) (+.f32 16 (-.f32 (pow.f32 (*.f32 u (fma.f32 64/3 u 8)) 2) (*.f32 u (*.f32 (fma.f32 64/3 u 8) 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (*.f32 u (fma.f32 64/3 u 8)) 2) -16) (fma.f32 u (fma.f32 64/3 u 8) -4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (+.f32 64 (pow.f32 (*.f32 u (fma.f32 64/3 u 8)) 3))) (neg.f32 (-.f32 (+.f32 (pow.f32 (*.f32 u (fma.f32 64/3 u 8)) 2) 16) (*.f32 u (*.f32 (fma.f32 64/3 u 8) 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (+.f32 (pow.f32 (*.f32 u (fma.f32 64/3 u 8)) 2) -16)) (neg.f32 (fma.f32 u (fma.f32 64/3 u 8) -4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 16 (pow.f32 (*.f32 u (fma.f32 64/3 u 8)) 2)) (-.f32 4 (*.f32 u (fma.f32 64/3 u 8))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (fma.f32 u (fma.f32 64/3 u 8) 4)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (fma.f32 u (fma.f32 64/3 u 8) 4)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (-.f32 (+.f32 (pow.f32 (*.f32 u (fma.f32 64/3 u 8)) 2) 16) (*.f32 u (*.f32 (fma.f32 64/3 u 8) 4))) (+.f32 64 (pow.f32 (*.f32 u (fma.f32 64/3 u 8)) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (fma.f32 u (fma.f32 64/3 u 8) -4) (+.f32 (pow.f32 (*.f32 u (fma.f32 64/3 u 8)) 2) -16)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (fma.f32 u (fma.f32 64/3 u 8) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (fma.f32 u (fma.f32 64/3 u 8) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (fma.f32 u (fma.f32 64/3 u 8) 4) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (fma.f32 u (fma.f32 64/3 u 8) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (fma.f32 u (fma.f32 64/3 u 8) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (fma.f32 u (fma.f32 64/3 u 8) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (fma.f32 u (fma.f32 64/3 u 8) 4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u (fma.f32 64/3 u 8) 4)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (fma.f32 64/3 u 8) u 4)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (fma.f32 64/3 u 8)) 1 4)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 u (fma.f32 64/3 u 8)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (fma.f32 64/3 u 8)) 2) (*.f32 (cbrt.f32 (fma.f32 64/3 u 8)) u) 4)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (*.f32 u (fma.f32 64/3 u 8))) (pow.f32 (cbrt.f32 (*.f32 u (fma.f32 64/3 u 8))) 2) 4)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (*.f32 u (fma.f32 64/3 u 8))) 2) (cbrt.f32 (*.f32 u (fma.f32 64/3 u 8))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (*.f32 u u)) (*.f32 (cbrt.f32 u) (fma.f32 64/3 u 8)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (fma.f32 64/3 u 8)) (*.f32 (sqrt.f32 (fma.f32 64/3 u 8)) u) 4)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 u (fma.f32 64/3 u 8))) (sqrt.f32 (*.f32 u (fma.f32 64/3 u 8))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 u) (*.f32 (sqrt.f32 u) (fma.f32 64/3 u 8)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (pow.f32 (cbrt.f32 (fma.f32 64/3 u 8)) 2)) (cbrt.f32 (fma.f32 64/3 u 8)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (sqrt.f32 (fma.f32 64/3 u 8))) (sqrt.f32 (fma.f32 64/3 u 8)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (fma.f32 64/3 u 8) (cbrt.f32 (*.f32 u u))) (cbrt.f32 u) 4)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (fma.f32 64/3 u 8) (sqrt.f32 u)) (sqrt.f32 u) 4)))))

simplify152.0ms (1.7%)

Algorithm
egg-herbie
Rules
757×sqr-pow_binary32
690×fma-def_binary32
611×*-commutative_binary32
592×distribute-lft-out_binary32
374×pow-sqr_binary32
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
024491
165477
2154457
3417366
41305336
52734336
63893336
74007336
84203336
94501336
104987336
115571336
126087336
136616336
147276336
Stop Event
node limit
Counts
158 → 143
Calls
Call 1
Inputs
(*.f32 4 (*.f32 s u))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
(*.f32 64/3 (*.f32 s (pow.f32 u 3)))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
(*.f32 64/3 (*.f32 s (pow.f32 u 3)))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
(*.f32 8 u)
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(*.f32 64/3 (pow.f32 u 2))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(*.f32 64/3 (pow.f32 u 2))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
4
(+.f32 4 (*.f32 8 u))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (+.f32 4 (*.f32 8 u)))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (+.f32 4 (*.f32 8 u)))
(*.f32 64/3 (pow.f32 u 2))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (+.f32 4 (*.f32 8 u)))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (+.f32 4 (*.f32 8 u)))
(*.f32 64/3 (pow.f32 u 2))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (+.f32 4 (*.f32 8 u)))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (+.f32 4 (*.f32 8 u)))
Outputs
(*.f32 4 (*.f32 s u))
(*.f32 s (*.f32 4 u))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(fma.f32 4 (*.f32 s u) (*.f32 8 (*.f32 s (*.f32 u u))))
(fma.f32 4 (*.f32 s u) (*.f32 s (*.f32 (*.f32 u u) 8)))
(*.f32 s (+.f32 (*.f32 4 u) (*.f32 u (*.f32 u 8))))
(*.f32 s (*.f32 u (fma.f32 u 8 4)))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
(fma.f32 64/3 (*.f32 s (pow.f32 u 3)) (fma.f32 4 (*.f32 s u) (*.f32 8 (*.f32 s (*.f32 u u)))))
(fma.f32 64/3 (*.f32 s (pow.f32 u 3)) (fma.f32 4 (*.f32 s u) (*.f32 s (*.f32 (*.f32 u u) 8))))
(fma.f32 4 (*.f32 s u) (*.f32 s (+.f32 (*.f32 u (*.f32 u 8)) (*.f32 64/3 (pow.f32 u 3)))))
(*.f32 s (+.f32 (*.f32 64/3 (pow.f32 u 3)) (*.f32 u (fma.f32 u 8 4))))
(*.f32 (*.f32 s u) (fma.f32 u (fma.f32 u 64/3 8) 4))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
(fma.f32 64/3 (*.f32 s (pow.f32 u 3)) (fma.f32 4 (*.f32 s u) (*.f32 8 (*.f32 s (*.f32 u u)))))
(fma.f32 64/3 (*.f32 s (pow.f32 u 3)) (fma.f32 4 (*.f32 s u) (*.f32 s (*.f32 (*.f32 u u) 8))))
(fma.f32 4 (*.f32 s u) (*.f32 s (+.f32 (*.f32 u (*.f32 u 8)) (*.f32 64/3 (pow.f32 u 3)))))
(*.f32 s (+.f32 (*.f32 64/3 (pow.f32 u 3)) (*.f32 u (fma.f32 u 8 4))))
(*.f32 (*.f32 s u) (fma.f32 u (fma.f32 u 64/3 8) 4))
(*.f32 64/3 (*.f32 s (pow.f32 u 3)))
(*.f32 (pow.f32 u 3) (*.f32 s 64/3))
(*.f32 s (*.f32 64/3 (pow.f32 u 3)))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(fma.f32 64/3 (*.f32 s (pow.f32 u 3)) (*.f32 8 (*.f32 s (*.f32 u u))))
(fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 64/3 (*.f32 s (pow.f32 u 3))))
(*.f32 s (+.f32 (*.f32 u (*.f32 u 8)) (*.f32 64/3 (pow.f32 u 3))))
(*.f32 s (*.f32 (*.f32 u u) (fma.f32 u 64/3 8)))
(*.f32 (*.f32 s u) (*.f32 u (fma.f32 u 64/3 8)))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
(fma.f32 64/3 (*.f32 s (pow.f32 u 3)) (fma.f32 4 (*.f32 s u) (*.f32 8 (*.f32 s (*.f32 u u)))))
(fma.f32 64/3 (*.f32 s (pow.f32 u 3)) (fma.f32 4 (*.f32 s u) (*.f32 s (*.f32 (*.f32 u u) 8))))
(fma.f32 4 (*.f32 s u) (*.f32 s (+.f32 (*.f32 u (*.f32 u 8)) (*.f32 64/3 (pow.f32 u 3)))))
(*.f32 s (+.f32 (*.f32 64/3 (pow.f32 u 3)) (*.f32 u (fma.f32 u 8 4))))
(*.f32 (*.f32 s u) (fma.f32 u (fma.f32 u 64/3 8) 4))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
(fma.f32 64/3 (*.f32 s (pow.f32 u 3)) (fma.f32 4 (*.f32 s u) (*.f32 8 (*.f32 s (*.f32 u u)))))
(fma.f32 64/3 (*.f32 s (pow.f32 u 3)) (fma.f32 4 (*.f32 s u) (*.f32 s (*.f32 (*.f32 u u) 8))))
(fma.f32 4 (*.f32 s u) (*.f32 s (+.f32 (*.f32 u (*.f32 u 8)) (*.f32 64/3 (pow.f32 u 3)))))
(*.f32 s (+.f32 (*.f32 64/3 (pow.f32 u 3)) (*.f32 u (fma.f32 u 8 4))))
(*.f32 (*.f32 s u) (fma.f32 u (fma.f32 u 64/3 8) 4))
(*.f32 64/3 (*.f32 s (pow.f32 u 3)))
(*.f32 (pow.f32 u 3) (*.f32 s 64/3))
(*.f32 s (*.f32 64/3 (pow.f32 u 3)))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(fma.f32 64/3 (*.f32 s (pow.f32 u 3)) (*.f32 8 (*.f32 s (*.f32 u u))))
(fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 64/3 (*.f32 s (pow.f32 u 3))))
(*.f32 s (+.f32 (*.f32 u (*.f32 u 8)) (*.f32 64/3 (pow.f32 u 3))))
(*.f32 s (*.f32 (*.f32 u u) (fma.f32 u 64/3 8)))
(*.f32 (*.f32 s u) (*.f32 u (fma.f32 u 64/3 8)))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
(fma.f32 64/3 (*.f32 s (pow.f32 u 3)) (fma.f32 4 (*.f32 s u) (*.f32 8 (*.f32 s (*.f32 u u)))))
(fma.f32 64/3 (*.f32 s (pow.f32 u 3)) (fma.f32 4 (*.f32 s u) (*.f32 s (*.f32 (*.f32 u u) 8))))
(fma.f32 4 (*.f32 s u) (*.f32 s (+.f32 (*.f32 u (*.f32 u 8)) (*.f32 64/3 (pow.f32 u 3)))))
(*.f32 s (+.f32 (*.f32 64/3 (pow.f32 u 3)) (*.f32 u (fma.f32 u 8 4))))
(*.f32 (*.f32 s u) (fma.f32 u (fma.f32 u 64/3 8) 4))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
(fma.f32 64/3 (*.f32 s (pow.f32 u 3)) (fma.f32 4 (*.f32 s u) (*.f32 8 (*.f32 s (*.f32 u u)))))
(fma.f32 64/3 (*.f32 s (pow.f32 u 3)) (fma.f32 4 (*.f32 s u) (*.f32 s (*.f32 (*.f32 u u) 8))))
(fma.f32 4 (*.f32 s u) (*.f32 s (+.f32 (*.f32 u (*.f32 u 8)) (*.f32 64/3 (pow.f32 u 3)))))
(*.f32 s (+.f32 (*.f32 64/3 (pow.f32 u 3)) (*.f32 u (fma.f32 u 8 4))))
(*.f32 (*.f32 s u) (fma.f32 u (fma.f32 u 64/3 8) 4))
(*.f32 8 u)
(*.f32 u 8)
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(fma.f32 64/3 (*.f32 u u) (*.f32 u 8))
(fma.f32 (*.f32 u u) 64/3 (*.f32 u 8))
(*.f32 u (+.f32 8 (*.f32 u 64/3)))
(*.f32 u (fma.f32 u 64/3 8))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(fma.f32 64/3 (*.f32 u u) (*.f32 u 8))
(fma.f32 (*.f32 u u) 64/3 (*.f32 u 8))
(*.f32 u (+.f32 8 (*.f32 u 64/3)))
(*.f32 u (fma.f32 u 64/3 8))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(fma.f32 64/3 (*.f32 u u) (*.f32 u 8))
(fma.f32 (*.f32 u u) 64/3 (*.f32 u 8))
(*.f32 u (+.f32 8 (*.f32 u 64/3)))
(*.f32 u (fma.f32 u 64/3 8))
(*.f32 64/3 (pow.f32 u 2))
(*.f32 (*.f32 u u) 64/3)
(*.f32 u (*.f32 u 64/3))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(fma.f32 64/3 (*.f32 u u) (*.f32 u 8))
(fma.f32 (*.f32 u u) 64/3 (*.f32 u 8))
(*.f32 u (+.f32 8 (*.f32 u 64/3)))
(*.f32 u (fma.f32 u 64/3 8))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(fma.f32 64/3 (*.f32 u u) (*.f32 u 8))
(fma.f32 (*.f32 u u) 64/3 (*.f32 u 8))
(*.f32 u (+.f32 8 (*.f32 u 64/3)))
(*.f32 u (fma.f32 u 64/3 8))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(fma.f32 64/3 (*.f32 u u) (*.f32 u 8))
(fma.f32 (*.f32 u u) 64/3 (*.f32 u 8))
(*.f32 u (+.f32 8 (*.f32 u 64/3)))
(*.f32 u (fma.f32 u 64/3 8))
(*.f32 64/3 (pow.f32 u 2))
(*.f32 (*.f32 u u) 64/3)
(*.f32 u (*.f32 u 64/3))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(fma.f32 64/3 (*.f32 u u) (*.f32 u 8))
(fma.f32 (*.f32 u u) 64/3 (*.f32 u 8))
(*.f32 u (+.f32 8 (*.f32 u 64/3)))
(*.f32 u (fma.f32 u 64/3 8))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(fma.f32 64/3 (*.f32 u u) (*.f32 u 8))
(fma.f32 (*.f32 u u) 64/3 (*.f32 u 8))
(*.f32 u (+.f32 8 (*.f32 u 64/3)))
(*.f32 u (fma.f32 u 64/3 8))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(fma.f32 64/3 (*.f32 u u) (*.f32 u 8))
(fma.f32 (*.f32 u u) 64/3 (*.f32 u 8))
(*.f32 u (+.f32 8 (*.f32 u 64/3)))
(*.f32 u (fma.f32 u 64/3 8))
4
(+.f32 4 (*.f32 8 u))
(+.f32 4 (*.f32 u 8))
(fma.f32 u 8 4)
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (+.f32 4 (*.f32 8 u)))
(fma.f32 64/3 (*.f32 u u) (+.f32 4 (*.f32 u 8)))
(fma.f32 (*.f32 u u) 64/3 (fma.f32 u 8 4))
(fma.f32 u 8 (fma.f32 u (*.f32 u 64/3) 4))
(fma.f32 u (fma.f32 u 64/3 8) 4)
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (+.f32 4 (*.f32 8 u)))
(fma.f32 64/3 (*.f32 u u) (+.f32 4 (*.f32 u 8)))
(fma.f32 (*.f32 u u) 64/3 (fma.f32 u 8 4))
(fma.f32 u 8 (fma.f32 u (*.f32 u 64/3) 4))
(fma.f32 u (fma.f32 u 64/3 8) 4)
(*.f32 64/3 (pow.f32 u 2))
(*.f32 (*.f32 u u) 64/3)
(*.f32 u (*.f32 u 64/3))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(fma.f32 64/3 (*.f32 u u) (*.f32 u 8))
(fma.f32 (*.f32 u u) 64/3 (*.f32 u 8))
(*.f32 u (+.f32 8 (*.f32 u 64/3)))
(*.f32 u (fma.f32 u 64/3 8))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (+.f32 4 (*.f32 8 u)))
(fma.f32 64/3 (*.f32 u u) (+.f32 4 (*.f32 u 8)))
(fma.f32 (*.f32 u u) 64/3 (fma.f32 u 8 4))
(fma.f32 u 8 (fma.f32 u (*.f32 u 64/3) 4))
(fma.f32 u (fma.f32 u 64/3 8) 4)
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (+.f32 4 (*.f32 8 u)))
(fma.f32 64/3 (*.f32 u u) (+.f32 4 (*.f32 u 8)))
(fma.f32 (*.f32 u u) 64/3 (fma.f32 u 8 4))
(fma.f32 u 8 (fma.f32 u (*.f32 u 64/3) 4))
(fma.f32 u (fma.f32 u 64/3 8) 4)
(*.f32 64/3 (pow.f32 u 2))
(*.f32 (*.f32 u u) 64/3)
(*.f32 u (*.f32 u 64/3))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (*.f32 8 u))
(fma.f32 64/3 (*.f32 u u) (*.f32 u 8))
(fma.f32 (*.f32 u u) 64/3 (*.f32 u 8))
(*.f32 u (+.f32 8 (*.f32 u 64/3)))
(*.f32 u (fma.f32 u 64/3 8))
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (+.f32 4 (*.f32 8 u)))
(fma.f32 64/3 (*.f32 u u) (+.f32 4 (*.f32 u 8)))
(fma.f32 (*.f32 u u) 64/3 (fma.f32 u 8 4))
(fma.f32 u 8 (fma.f32 u (*.f32 u 64/3) 4))
(fma.f32 u (fma.f32 u 64/3 8) 4)
(+.f32 (*.f32 64/3 (pow.f32 u 2)) (+.f32 4 (*.f32 8 u)))
(fma.f32 64/3 (*.f32 u u) (+.f32 4 (*.f32 u 8)))
(fma.f32 (*.f32 u u) 64/3 (fma.f32 u 8 4))
(fma.f32 u 8 (fma.f32 u (*.f32 u 64/3) 4))
(fma.f32 u (fma.f32 u 64/3 8) 4)

localize42.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f32 4 (*.f32 s u))
0.2b
(*.f32 s (pow.f32 u 2))
0.2b
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
0.3b
(*.f32 8 (*.f32 s (pow.f32 u 2)))
Compiler

Compiled 43 to 26 computations (39.5% saved)

series30.0ms (0.3%)

Counts
4 → 15
Calls

24 calls:

TimeVariablePointExpression
19.0ms
s
@-inf
(*.f32 8 (*.f32 s (pow.f32 u 2)))
3.0ms
u
@inf
(*.f32 4 (*.f32 s u))
1.0ms
s
@0
(*.f32 8 (*.f32 s (pow.f32 u 2)))
1.0ms
s
@inf
(*.f32 8 (*.f32 s (pow.f32 u 2)))
1.0ms
u
@0
(*.f32 8 (*.f32 s (pow.f32 u 2)))

rewrite75.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
601×log-prod_binary32
410×fma-def_binary32
386×pow-prod-down_binary32
303×pow2_binary32
238×pow-unpow_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01241
125341
2311541
Stop Event
node limit
Counts
4 → 143
Calls
Call 1
Inputs
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(*.f32 s (pow.f32 u 2))
(*.f32 4 (*.f32 s u))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (*.f32 s (*.f32 (*.f32 u u) 8)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (pow.f32 (cbrt.f32 (pow.f32 (exp.f32 (*.f32 u u)) (*.f32 8 s))) 2)) (log.f32 (cbrt.f32 (pow.f32 (exp.f32 (*.f32 u u)) (*.f32 8 s)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (pow.f32 (exp.f32 (*.f32 u u)) (*.f32 8 s)))) (log.f32 (sqrt.f32 (pow.f32 (exp.f32 (*.f32 u u)) (*.f32 8 s)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 s (*.f32 (*.f32 u u) 8)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 s (*.f32 (*.f32 u u) 8)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 (sqrt.f32 (*.f32 8 s)) u) 4) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 s (*.f32 (*.f32 u u) 8))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (sqrt.f32 (*.f32 8 s)) u) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 (sqrt.f32 (*.f32 8 s)) u) 6) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 (sqrt.f32 (*.f32 8 s)) u) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 (*.f32 u u)) (*.f32 8 s)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 s (*.f32 (*.f32 u u) 8)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 (sqrt.f32 (*.f32 8 s)) u) 6))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 s (*.f32 (*.f32 u u) 8))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 s (*.f32 (*.f32 u u) 8))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 s (*.f32 (*.f32 u u) 8))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 s (*.f32 (*.f32 u u) 8))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (cbrt.f32 (*.f32 s (*.f32 (*.f32 u u) 8)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 (sqrt.f32 (*.f32 8 s)) u)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (pow.f32 (*.f32 (sqrt.f32 (*.f32 8 s)) u) 6)) 1/3))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 (pow.f32 (*.f32 s (*.f32 u 4)) 2) (fma.f32 s (*.f32 u 4) (*.f32 -8 (*.f32 s (*.f32 u u))))) (/.f32 (pow.f32 (*.f32 (sqrt.f32 (*.f32 8 s)) u) 4) (fma.f32 s (*.f32 u 4) (*.f32 -8 (*.f32 s (*.f32 u u))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4)))) (pow.f32 (cbrt.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4)))) 2) (cbrt.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4)))) (sqrt.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (fma.f32 64 (pow.f32 (*.f32 s u) 3) (pow.f32 (*.f32 (sqrt.f32 (*.f32 8 s)) u) 6)) (/.f32 1 (fma.f32 (*.f32 s (*.f32 (*.f32 u u) 8)) (-.f32 (*.f32 s (*.f32 (*.f32 u u) 8)) (*.f32 s (*.f32 u 4))) (pow.f32 (*.f32 s (*.f32 u 4)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 (pow.f32 (*.f32 s (*.f32 u 4)) 2) (pow.f32 (*.f32 (sqrt.f32 (*.f32 8 s)) u) 4)) (/.f32 1 (fma.f32 s (*.f32 u 4) (*.f32 -8 (*.f32 s (*.f32 u u))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (fma.f32 (*.f32 s (*.f32 (*.f32 u u) 8)) (-.f32 (*.f32 s (*.f32 (*.f32 u u) 8)) (*.f32 s (*.f32 u 4))) (pow.f32 (*.f32 s (*.f32 u 4)) 2)) (fma.f32 64 (pow.f32 (*.f32 s u) 3) (pow.f32 (*.f32 (sqrt.f32 (*.f32 8 s)) u) 6))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (fma.f32 s (*.f32 u 4) (*.f32 -8 (*.f32 s (*.f32 u u)))) (-.f32 (pow.f32 (*.f32 s (*.f32 u 4)) 2) (pow.f32 (*.f32 (sqrt.f32 (*.f32 8 s)) u) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (fma.f32 64 (pow.f32 (*.f32 s u) 3) (pow.f32 (*.f32 (sqrt.f32 (*.f32 8 s)) u) 6)) (fma.f32 (*.f32 s (*.f32 (*.f32 u u) 8)) (-.f32 (*.f32 s (*.f32 (*.f32 u u) 8)) (*.f32 s (*.f32 u 4))) (pow.f32 (*.f32 s (*.f32 u 4)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (fma.f32 64 (pow.f32 (*.f32 s u) 3) (pow.f32 (*.f32 (sqrt.f32 (*.f32 8 s)) u) 6)) (fma.f32 64 (pow.f32 (*.f32 u (sqrt.f32 s)) 4) (-.f32 (pow.f32 (*.f32 s (*.f32 u 4)) 2) (*.f32 (*.f32 s (*.f32 (*.f32 u u) 8)) (*.f32 s (*.f32 u 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (*.f32 s (*.f32 u 4)) 2) (pow.f32 (*.f32 (sqrt.f32 (*.f32 8 s)) u) 4)) (fma.f32 s (*.f32 u 4) (*.f32 -8 (*.f32 s (*.f32 u u)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (fma.f32 64 (pow.f32 (*.f32 s u) 3) (pow.f32 (*.f32 (sqrt.f32 (*.f32 8 s)) u) 6))) (neg.f32 (fma.f32 (*.f32 s (*.f32 (*.f32 u u) 8)) (-.f32 (*.f32 s (*.f32 (*.f32 u u) 8)) (*.f32 s (*.f32 u 4))) (pow.f32 (*.f32 s (*.f32 u 4)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (-.f32 (pow.f32 (*.f32 s (*.f32 u 4)) 2) (pow.f32 (*.f32 (sqrt.f32 (*.f32 8 s)) u) 4))) (neg.f32 (fma.f32 s (*.f32 u 4) (*.f32 -8 (*.f32 s (*.f32 u u))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (*.f32 (sqrt.f32 (*.f32 8 s)) u) 4) (pow.f32 (*.f32 s (*.f32 u 4)) 2)) (-.f32 (*.f32 s (*.f32 (*.f32 u u) 8)) (*.f32 s (*.f32 u 4))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (fma.f32 (*.f32 s (*.f32 (*.f32 u u) 8)) (-.f32 (*.f32 s (*.f32 (*.f32 u u) 8)) (*.f32 s (*.f32 u 4))) (pow.f32 (*.f32 s (*.f32 u 4)) 2)) (fma.f32 64 (pow.f32 (*.f32 s u) 3) (pow.f32 (*.f32 (sqrt.f32 (*.f32 8 s)) u) 6))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (fma.f32 s (*.f32 u 4) (*.f32 -8 (*.f32 s (*.f32 u u)))) (-.f32 (pow.f32 (*.f32 s (*.f32 u 4)) 2) (pow.f32 (*.f32 (sqrt.f32 (*.f32 8 s)) u) 4))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (+.f32 1 (expm1.f32 (*.f32 s (*.f32 (*.f32 u u) 8)))) (pow.f32 (exp.f32 s) (*.f32 u 4))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (pow.f32 (exp.f32 (*.f32 u u)) (*.f32 8 s)) (+.f32 1 (expm1.f32 (*.f32 s (*.f32 u 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (+.f32 1 (expm1.f32 (*.f32 s (*.f32 (*.f32 u u) 8)))) (+.f32 1 (expm1.f32 (*.f32 s (*.f32 u 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (+.f32 1 (expm1.f32 (*.f32 s (*.f32 u 4)))) (pow.f32 (exp.f32 (*.f32 u u)) (*.f32 8 s))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (pow.f32 (exp.f32 s) (*.f32 u 4)) (+.f32 1 (expm1.f32 (*.f32 s (*.f32 (*.f32 u u) 8))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (+.f32 1 (expm1.f32 (*.f32 s (*.f32 u 4)))) (+.f32 1 (expm1.f32 (*.f32 s (*.f32 (*.f32 u u) 8))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 3 (log.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4))))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (cbrt.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (sqrt.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 s (*.f32 u 4) (*.f32 s (*.f32 (*.f32 u u) 8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 s (*.f32 (*.f32 u u) 8) (*.f32 s (*.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u (*.f32 s 4) (*.f32 s (*.f32 (*.f32 u u) 8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u u) (*.f32 8 s) (*.f32 s (*.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 s (*.f32 u u)) 8 (*.f32 s (*.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 s (*.f32 (*.f32 u u) 8)) 1 (*.f32 s (*.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 4 (*.f32 s u) (*.f32 s (*.f32 (*.f32 u u) 8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 s u) 4 (*.f32 s (*.f32 (*.f32 u u) 8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 s (*.f32 u 4)) 1 (*.f32 s (*.f32 (*.f32 u u) 8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 s (*.f32 (*.f32 u u) 8)) (*.f32 s (*.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 s (*.f32 u 4)) (*.f32 s (*.f32 (*.f32 u u) 8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (*.f32 s (*.f32 u 4))) (pow.f32 (cbrt.f32 (*.f32 s (*.f32 u 4))) 2) (*.f32 s (*.f32 (*.f32 u u) 8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (*.f32 s (*.f32 u 4))) 2) (cbrt.f32 (*.f32 s (*.f32 u 4))) (*.f32 s (*.f32 (*.f32 u u) 8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (*.f32 s (*.f32 (*.f32 u u) 8))) (cbrt.f32 (pow.f32 (*.f32 (sqrt.f32 (*.f32 8 s)) u) 4)) (*.f32 s (*.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (pow.f32 (*.f32 (sqrt.f32 (*.f32 8 s)) u) 4)) (cbrt.f32 (*.f32 s (*.f32 (*.f32 u u) 8))) (*.f32 s (*.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (*.f32 s u)) 2) (*.f32 (cbrt.f32 (*.f32 s u)) 4) (*.f32 s (*.f32 (*.f32 u u) 8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (pow.f32 (*.f32 u (sqrt.f32 s)) 4)) (*.f32 (cbrt.f32 (*.f32 s (*.f32 u u))) 8) (*.f32 s (*.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 s (*.f32 u 4))) (sqrt.f32 (*.f32 s (*.f32 u 4))) (*.f32 s (*.f32 (*.f32 u u) 8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (sqrt.f32 (*.f32 8 s)) u) (*.f32 (sqrt.f32 (*.f32 8 s)) u) (*.f32 s (*.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 s u)) (*.f32 (sqrt.f32 (*.f32 s u)) 4) (*.f32 s (*.f32 (*.f32 u u) 8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (sqrt.f32 s)) (*.f32 (*.f32 u (sqrt.f32 s)) 8) (*.f32 s (*.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 s 4) u (*.f32 s (*.f32 (*.f32 u u) 8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 8 s) (*.f32 u u) (*.f32 s (*.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 4 u) s (*.f32 s (*.f32 (*.f32 u u) 8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 4 (pow.f32 (cbrt.f32 (*.f32 s u)) 2)) (cbrt.f32 (*.f32 s u)) (*.f32 s (*.f32 (*.f32 u u) 8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 4 (sqrt.f32 (*.f32 s u))) (sqrt.f32 (*.f32 s u)) (*.f32 s (*.f32 (*.f32 u u) 8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 s 4) 1) u (*.f32 s (*.f32 (*.f32 u u) 8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 s 4) (pow.f32 (cbrt.f32 u) 2)) (cbrt.f32 u) (*.f32 s (*.f32 (*.f32 u u) 8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 s 4) (sqrt.f32 u)) (sqrt.f32 u) (*.f32 s (*.f32 (*.f32 u u) 8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 8 (*.f32 u u)) s (*.f32 s (*.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 8 (cbrt.f32 (pow.f32 (*.f32 u (sqrt.f32 s)) 4))) (cbrt.f32 (*.f32 s (*.f32 u u))) (*.f32 s (*.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 8 (*.f32 u (sqrt.f32 s))) (*.f32 u (sqrt.f32 s)) (*.f32 s (*.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 8 s) u) u (*.f32 s (*.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 8 s) 1) (*.f32 u u) (*.f32 s (*.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 8 s) (*.f32 (cbrt.f32 u) u)) (pow.f32 (cbrt.f32 u) 2) (*.f32 s (*.f32 u 4)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (*.f32 s (*.f32 u u)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (pow.f32 (cbrt.f32 (pow.f32 (exp.f32 s) (*.f32 u u))) 2)) (log.f32 (cbrt.f32 (pow.f32 (exp.f32 s) (*.f32 u u)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (pow.f32 (exp.f32 s) (*.f32 u u)))) (log.f32 (sqrt.f32 (pow.f32 (exp.f32 s) (*.f32 u u)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 s (*.f32 u u)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 s (*.f32 u u)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 u (sqrt.f32 s)) 4) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 u (sqrt.f32 s)) 6) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 s (*.f32 u u))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 u (sqrt.f32 s)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (pow.f32 u 3) (pow.f32 (*.f32 s u) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (cbrt.f32 u) (cbrt.f32 (*.f32 s u))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (sqrt.f32 u) (sqrt.f32 (*.f32 s u))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (pow.f32 (*.f32 s u) 3) (pow.f32 u 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (cbrt.f32 (*.f32 s u)) (cbrt.f32 u)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (sqrt.f32 (*.f32 s u)) (sqrt.f32 u)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 u (sqrt.f32 s)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 s) (*.f32 u u)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 s (*.f32 u u)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 u (sqrt.f32 s)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 s (*.f32 u u))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 s (*.f32 u u))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 s (*.f32 u u))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 s (*.f32 u u))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (pow.f32 (*.f32 u (sqrt.f32 s)) 6)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (cbrt.f32 (*.f32 s (*.f32 u u)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 u (sqrt.f32 s))) 2))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (*.f32 s (*.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (pow.f32 (cbrt.f32 (pow.f32 (exp.f32 s) (*.f32 u 4))) 2)) (log.f32 (cbrt.f32 (pow.f32 (exp.f32 s) (*.f32 u 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (pow.f32 (exp.f32 s) (*.f32 u 4)))) (log.f32 (sqrt.f32 (pow.f32 (exp.f32 s) (*.f32 u 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 s (*.f32 u 4)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 s (*.f32 u 4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 s (*.f32 u 4)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 s (*.f32 u 4))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 s (*.f32 u 4))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 s (*.f32 u 4)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 s (*.f32 u 4)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 s) (*.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 s (*.f32 u 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 s (*.f32 u 4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 s (*.f32 u 4))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 s (*.f32 u 4))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 s (*.f32 u 4))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 s (*.f32 u 4))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (cbrt.f32 (*.f32 s (*.f32 u 4)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (sqrt.f32 (*.f32 s (*.f32 u 4)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 3 (log.f32 (*.f32 s (*.f32 u 4)))) 1/3))))))

simplify73.0ms (0.8%)

Algorithm
egg-herbie
Rules
1231×fma-neg_binary32
592×unsub-neg_binary32
473×unswap-sqr_binary32
443×cancel-sign-sub-inv_binary32
390×distribute-rgt-neg-in_binary32
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
023195
162195
2158183
3442159
41319159
52863159
64842159
76523159
Stop Event
node limit
Counts
158 → 150
Calls
Call 1
Inputs
(*.f32 s (+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u)))
(*.f32 s (+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u)))
(*.f32 s (+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u)))
(*.f32 s (+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u)))
(*.f32 s (+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u)))
(*.f32 s (+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u)))
(*.f32 s (+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u)))
(*.f32 s (+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u)))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 -8 (pow.f32 u 2)))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 -8 (pow.f32 u 2)))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 -8 (pow.f32 u 2)))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 -8 (pow.f32 u 2)))))
(*.f32 4 (*.f32 s u))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
Outputs
(*.f32 s (+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u)))
(*.f32 s (fma.f32 8 (*.f32 u u) (*.f32 u 4)))
(*.f32 s (*.f32 u (+.f32 (*.f32 8 u) 4)))
(*.f32 s (*.f32 u (fma.f32 8 u 4)))
(*.f32 s (+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u)))
(*.f32 s (fma.f32 8 (*.f32 u u) (*.f32 u 4)))
(*.f32 s (*.f32 u (+.f32 (*.f32 8 u) 4)))
(*.f32 s (*.f32 u (fma.f32 8 u 4)))
(*.f32 s (+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u)))
(*.f32 s (fma.f32 8 (*.f32 u u) (*.f32 u 4)))
(*.f32 s (*.f32 u (+.f32 (*.f32 8 u) 4)))
(*.f32 s (*.f32 u (fma.f32 8 u 4)))
(*.f32 s (+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u)))
(*.f32 s (fma.f32 8 (*.f32 u u) (*.f32 u 4)))
(*.f32 s (*.f32 u (+.f32 (*.f32 8 u) 4)))
(*.f32 s (*.f32 u (fma.f32 8 u 4)))
(*.f32 s (+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u)))
(*.f32 s (fma.f32 8 (*.f32 u u) (*.f32 u 4)))
(*.f32 s (*.f32 u (+.f32 (*.f32 8 u) 4)))
(*.f32 s (*.f32 u (fma.f32 8 u 4)))
(*.f32 s (+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u)))
(*.f32 s (fma.f32 8 (*.f32 u u) (*.f32 u 4)))
(*.f32 s (*.f32 u (+.f32 (*.f32 8 u) 4)))
(*.f32 s (*.f32 u (fma.f32 8 u 4)))
(*.f32 s (+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u)))
(*.f32 s (fma.f32 8 (*.f32 u u) (*.f32 u 4)))
(*.f32 s (*.f32 u (+.f32 (*.f32 8 u) 4)))
(*.f32 s (*.f32 u (fma.f32 8 u 4)))
(*.f32 s (+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u)))
(*.f32 s (fma.f32 8 (*.f32 u u) (*.f32 u 4)))
(*.f32 s (*.f32 u (+.f32 (*.f32 8 u) 4)))
(*.f32 s (*.f32 u (fma.f32 8 u 4)))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 -8 (pow.f32 u 2)))))
(*.f32 s (fma.f32 8 (*.f32 u u) (*.f32 u 4)))
(*.f32 s (*.f32 u (+.f32 (*.f32 8 u) 4)))
(*.f32 s (*.f32 u (fma.f32 8 u 4)))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 -8 (pow.f32 u 2)))))
(*.f32 s (fma.f32 8 (*.f32 u u) (*.f32 u 4)))
(*.f32 s (*.f32 u (+.f32 (*.f32 8 u) 4)))
(*.f32 s (*.f32 u (fma.f32 8 u 4)))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 -8 (pow.f32 u 2)))))
(*.f32 s (fma.f32 8 (*.f32 u u) (*.f32 u 4)))
(*.f32 s (*.f32 u (+.f32 (*.f32 8 u) 4)))
(*.f32 s (*.f32 u (fma.f32 8 u 4)))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 -8 (pow.f32 u 2)))))
(*.f32 s (fma.f32 8 (*.f32 u u) (*.f32 u 4)))
(*.f32 s (*.f32 u (+.f32 (*.f32 8 u) 4)))
(*.f32 s (*.f32 u (fma.f32 8 u 4)))
(*.f32 4 (*.f32 s u))
(*.f32 u (*.f32 s 4))
(*.f32 s (*.f32 u 4))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (*.f32 u u)))
(*.f32 s (*.f32 8 (*.f32 u u)))
(*.f32 s (*.f32 u (*.f32 8 u)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (*.f32 u u)))
(*.f32 s (*.f32 8 (*.f32 u u)))
(*.f32 s (*.f32 u (*.f32 8 u)))

localize26.0ms (0.3%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(*.f32 4 (*.f32 u s))
0.4b
(pow.f32 (sqrt.f32 (*.f32 4 (*.f32 u s))) 2)
1.3b
(sqrt.f32 (*.f32 4 (*.f32 u s)))
Compiler

Compiled 28 to 15 computations (46.4% saved)

series10.0ms (0.1%)

Counts
2 → 0
Calls

12 calls:

TimeVariablePointExpression
1.0ms
u
@0
(sqrt.f32 (*.f32 4 (*.f32 u s)))
1.0ms
u
@-inf
(pow.f32 (sqrt.f32 (*.f32 4 (*.f32 u s))) 2)
1.0ms
s
@-inf
(pow.f32 (sqrt.f32 (*.f32 4 (*.f32 u s))) 2)
1.0ms
u
@0
(pow.f32 (sqrt.f32 (*.f32 4 (*.f32 u s))) 2)
1.0ms
s
@0
(pow.f32 (sqrt.f32 (*.f32 4 (*.f32 u s))) 2)

rewrite51.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
687×pow1_binary32
636×add-log-exp_binary32
636×log1p-expm1-u_binary32
636×expm1-log1p-u_binary32
622×add-exp-log_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0916
118516
2180916
Stop Event
node limit
Counts
2 → 57
Calls
Call 1
Inputs
(sqrt.f32 (*.f32 4 (*.f32 u s)))
(pow.f32 (sqrt.f32 (*.f32 4 (*.f32 u s))) 2)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (*.f32 2 (sqrt.f32 (*.f32 u s)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 2 (sqrt.f32 (*.f32 u s))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 2 (sqrt.f32 (*.f32 u s)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (*.f32 2 (sqrt.f32 (*.f32 u s))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (*.f32 4 (*.f32 u s))) (cbrt.f32 (*.f32 2 (sqrt.f32 (*.f32 u s)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (*.f32 2 (sqrt.f32 (*.f32 u s)))) (cbrt.f32 (*.f32 4 (*.f32 u s))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (*.f32 u s)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (*.f32 u s)) (pow.f32 4 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (*.f32 4 (*.f32 u s)) 1/4) (pow.f32 (*.f32 4 (*.f32 u s)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (*.f32 4 u)) (sqrt.f32 s))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (cbrt.f32 (pow.f32 (*.f32 4 (*.f32 u s)) 2))) (sqrt.f32 (cbrt.f32 (*.f32 4 (*.f32 u s)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 4 1/2) (sqrt.f32 (*.f32 u s)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 1 1/2) (*.f32 2 (sqrt.f32 (*.f32 u s))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (pow.f32 (*.f32 4 (*.f32 u s)) 2)) 1/2) (pow.f32 (cbrt.f32 (*.f32 4 (*.f32 u s))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (*.f32 4 u) 1/2) (sqrt.f32 s))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 4 (*.f32 u s)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 2 (sqrt.f32 (*.f32 u s))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 4 (*.f32 u s)) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 2 (sqrt.f32 (*.f32 u s)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 4 (*.f32 u s)) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f32 (*.f32 2 (sqrt.f32 (*.f32 u s))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 2) (sqrt.f32 (*.f32 u s))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 4 (*.f32 u s)) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 2 (sqrt.f32 (*.f32 u s)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 2 (sqrt.f32 (*.f32 u s)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 2 (sqrt.f32 (*.f32 u s)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (*.f32 4 (*.f32 u s))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 4 (*.f32 u s))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 u (*.f32 s 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 s (*.f32 4 u))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 u s) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 4 (*.f32 u s)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 2 (sqrt.f32 (*.f32 u s))) (*.f32 2 (sqrt.f32 (*.f32 u s))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 2 (*.f32 (sqrt.f32 (*.f32 u s)) (*.f32 2 (sqrt.f32 (*.f32 u s)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (*.f32 4 (*.f32 u s)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (*.f32 u s)) 2) (*.f32 (cbrt.f32 (*.f32 u s)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (*.f32 4 (*.f32 u s))) (cbrt.f32 (pow.f32 (*.f32 4 (*.f32 u s)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (*.f32 4 (*.f32 u s))) (*.f32 (cbrt.f32 (*.f32 2 (sqrt.f32 (*.f32 u s)))) (*.f32 2 (sqrt.f32 (*.f32 u s)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (pow.f32 (*.f32 4 (*.f32 u s)) 2)) (cbrt.f32 (*.f32 4 (*.f32 u s))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (*.f32 u s)) (*.f32 (sqrt.f32 (*.f32 u s)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (*.f32 4 (*.f32 u s)) 1/4) (*.f32 (pow.f32 (*.f32 4 (*.f32 u s)) 1/4) (*.f32 2 (sqrt.f32 (*.f32 u s)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 4 u) s)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (*.f32 2 (sqrt.f32 (*.f32 u s))) (pow.f32 (*.f32 4 (*.f32 u s)) 1/4)) (pow.f32 (*.f32 4 (*.f32 u s)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 4 s) u)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 4 (pow.f32 (cbrt.f32 (*.f32 u s)) 2)) (cbrt.f32 (*.f32 u s)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 4 (sqrt.f32 (*.f32 u s))) (sqrt.f32 (*.f32 u s)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (*.f32 2 (sqrt.f32 (*.f32 u s))) 2) (sqrt.f32 (*.f32 u s)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (*.f32 2 (sqrt.f32 (*.f32 u s))) (cbrt.f32 (*.f32 4 (*.f32 u s)))) (cbrt.f32 (*.f32 2 (sqrt.f32 (*.f32 u s)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (*.f32 4 u) 1) s)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (*.f32 4 u) (pow.f32 (cbrt.f32 s) 2)) (cbrt.f32 s))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (*.f32 4 u) (sqrt.f32 s)) (sqrt.f32 s))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 4 (*.f32 u s)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 4) (*.f32 u s)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 4 (*.f32 u s)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 4 (*.f32 u s))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 4 (*.f32 u s))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 4 (*.f32 u s))))))))

simplify7.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
000
Stop Event
saturated
Counts
57 → 57
Calls
Call 1
Inputs
Outputs

eval173.0ms (2%)

Compiler

Compiled 8651 to 5796 computations (33% saved)

prune98.0ms (1.1%)

Pruning

27 alts after pruning (17 fresh and 10 done)

PrunedKeptTotal
New5237530
Fresh41014
Picked101
Done11011
Total52927556
Error
0.0b
Counts
556 → 27
Alt Table
Click to see full alt table
StatusErrorProgram
4.9b
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u 8))))
0.4b
(*.f32 s (*.f32 3 (*.f32 1/3 (neg.f32 (log1p.f32 (*.f32 u -4))))))
11.6b
(*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4 u)))))
2.5b
(*.f32 s (+.f32 (*.f32 (pow.f32 u 3) (+.f32 (*.f32 64 u) 64/3)) (*.f32 u (+.f32 4 (*.f32 u 8)))))
0.3b
(*.f32 s (*.f32 (cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2)) (cbrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))))
4.9b
(*.f32 (+.f32 (*.f32 u 8) 4) (*.f32 s u))
3.4b
(*.f32 s (*.f32 3 (*.f32 1/3 (neg.f32 (*.f32 u (+.f32 -4 (*.f32 u (+.f32 -8 (*.f32 u -64/3)))))))))
4.7b
(fma.f32 (*.f32 s 4) u (*.f32 s (*.f32 (*.f32 u u) 8)))
3.3b
(*.f32 s (*.f32 u (+.f32 4 (/.f32 (-.f32 (*.f32 (*.f32 u 8) (*.f32 u 8)) (*.f32 (*.f32 u (*.f32 u 64/3)) (*.f32 u (*.f32 u 64/3)))) (-.f32 (*.f32 u 8) (*.f32 u (*.f32 u 64/3)))))))
3.3b
(*.f32 s (+.f32 (*.f32 u 4) (*.f32 (*.f32 u u) (+.f32 (*.f32 64/3 u) 8))))
0.6b
(pow.f32 (cbrt.f32 (*.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) s)) 3)
0.5b
(*.f32 s (pow.f32 (sqrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))) 2))
3.3b
(*.f32 u (+.f32 (*.f32 4 s) (*.f32 u (*.f32 s (+.f32 8 (*.f32 u 64/3))))))
8.9b
(*.f32 s (*.f32 3 (*.f32 4/3 u)))
1.6b
(*.f32 s (pow.f32 (pow.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) 3) 1/3))
4.9b
(*.f32 u (*.f32 s (+.f32 (*.f32 u 8) 4)))
3.4b
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
8.9b
(*.f32 u (*.f32 4 s))
2.4b
(*.f32 s (neg.f32 (fma.f32 -4 u (*.f32 (*.f32 u u) (+.f32 -8 (*.f32 u (+.f32 -64/3 (*.f32 -64 u))))))))
3.3b
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u (+.f32 8 (*.f32 u 64/3))))))
1.2b
(*.f32 s (exp.f32 (log.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))))
3.7b
(*.f32 s (+.f32 (log.f32 (/.f32 1 (-.f32 1 (*.f32 16 (*.f32 u u))))) (log1p.f32 (*.f32 4 u))))
0.2b
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
9.0b
(*.f32 4 (*.f32 u s))
3.4b
(*.f32 s (*.f32 3 (*.f32 u (+.f32 4/3 (*.f32 u (+.f32 8/3 (*.f32 u 64/9)))))))
4.9b
(*.f32 s (*.f32 3 (*.f32 u (+.f32 4/3 (*.f32 u 8/3)))))
4.9b
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (+.f32 0 (*.f32 s (*.f32 u u)))))
Compiler

Compiled 670 to 505 computations (24.6% saved)

localize43.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(log1p.f32 (*.f32 u -4))
0.1b
(sqrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))
0.2b
(*.f32 s (pow.f32 (sqrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))) 2))
0.5b
(pow.f32 (sqrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))) 2)
Compiler

Compiled 42 to 33 computations (21.4% saved)

series28.0ms (0.3%)

Counts
3 → 40
Calls

12 calls:

TimeVariablePointExpression
16.0ms
u
@0
(pow.f32 (sqrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))) 2)
4.0ms
u
@inf
(pow.f32 (sqrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))) 2)
2.0ms
u
@-inf
(pow.f32 (sqrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))) 2)
1.0ms
s
@0
(*.f32 s (pow.f32 (sqrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))) 2))
1.0ms
u
@-inf
(sqrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))

rewrite57.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
786×pow1_binary32
727×add-log-exp_binary32
726×expm1-log1p-u_binary32
725×log1p-expm1-u_binary32
711×add-exp-log_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01129
122623
2233023
Stop Event
node limit
Counts
3 → 65
Calls
Call 1
Inputs
(pow.f32 (sqrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))) 2)
(*.f32 s (pow.f32 (sqrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))) 2))
(sqrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (log1p.f32 (*.f32 u -4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 0 (log1p.f32 (*.f32 u -4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (log1p.f32 (*.f32 u -4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (log1p.f32 (*.f32 u -4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (log1p.f32 (*.f32 u -4)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (log1p.f32 (*.f32 u -4))) (sqrt.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (log1p.f32 (*.f32 u -4))) (neg.f32 (sqrt.f32 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (log1p.f32 (*.f32 u -4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) (pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) (*.f32 (cbrt.f32 (sqrt.f32 (log1p.f32 (*.f32 u -4)))) (sqrt.f32 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 2) (cbrt.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 2) (neg.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 1/4) (*.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 1/4) (sqrt.f32 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 -1 (log1p.f32 (*.f32 u -4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (sqrt.f32 (log1p.f32 (*.f32 u -4))) (pow.f32 (log1p.f32 (*.f32 u -4)) 1/4)) (pow.f32 (log1p.f32 (*.f32 u -4)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (neg.f32 (pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 2)) (cbrt.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (neg.f32 (sqrt.f32 (log1p.f32 (*.f32 u -4)))) (sqrt.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (sqrt.f32 (log1p.f32 (*.f32 u -4))) (cbrt.f32 (log1p.f32 (*.f32 u -4)))) (cbrt.f32 (sqrt.f32 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 -1 (pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 2)) (cbrt.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 -1 (sqrt.f32 (log1p.f32 (*.f32 u -4)))) (sqrt.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 0 (pow.f32 (log1p.f32 (*.f32 u -4)) 3)) (+.f32 0 (+.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2) (*.f32 0 (log1p.f32 (*.f32 u -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 0 (pow.f32 (log1p.f32 (*.f32 u -4)) 2)) (log1p.f32 (*.f32 u -4)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f32 (log1p.f32 (*.f32 u -4)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 (*.f32 u -4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (*.f32 u -4))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (log1p.f32 (*.f32 u -4))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (*.f32 (log1p.f32 (*.f32 u -4)) s)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (+.f32 (*.f32 u -4) 1) s))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 3) (pow.f32 s 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 s 3) (pow.f32 (log1p.f32 (*.f32 u -4)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 (log1p.f32 (*.f32 u -4)) s)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (sqrt.f32 (log1p.f32 (*.f32 u -4)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (log1p.f32 (*.f32 u -4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (sqrt.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) (cbrt.f32 (sqrt.f32 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (sqrt.f32 (log1p.f32 (*.f32 u -4)))) (cbrt.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 1/4) (pow.f32 (log1p.f32 (*.f32 u -4)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 -1) (sqrt.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 2)) (sqrt.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 1 1/2) (sqrt.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 2) 1/2) (pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 -1 1/2) (sqrt.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (log1p.f32 (*.f32 u -4)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (log1p.f32 (*.f32 u -4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (sqrt.f32 (log1p.f32 (*.f32 u -4)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f32 (sqrt.f32 (log1p.f32 (*.f32 u -4))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (sqrt.f32 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (sqrt.f32 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (sqrt.f32 (log1p.f32 (*.f32 u -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (sqrt.f32 (log1p.f32 (*.f32 u -4)))))))))

simplify66.0ms (0.7%)

Algorithm
egg-herbie
Rules
746×associate-*l*_binary32
677×associate-*r*_binary32
533×times-frac_binary32
420×associate-+l+_binary32
410×associate-/l*_binary32
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01772190
15511629
221681429
Stop Event
node limit
Counts
105 → 124
Calls
Call 1
Inputs
(*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))
(+.f32 (*.f32 -1/4 (/.f32 (pow.f32 (sqrt.f32 -1) 2) u)) (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))
(+.f32 (*.f32 -1/4 (/.f32 (pow.f32 (sqrt.f32 -1) 2) u)) (+.f32 (*.f32 -1 (/.f32 (*.f32 (+.f32 1/32 (pow.f32 (*.f32 -1/8 (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))) 2)) (pow.f32 (sqrt.f32 -1) 2)) (pow.f32 u 2))) (+.f32 (*.f32 1/64 (/.f32 (pow.f32 (sqrt.f32 -1) 2) (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) (pow.f32 u 2)))) (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))))
(+.f32 (*.f32 -1/4 (/.f32 (pow.f32 (sqrt.f32 -1) 2) u)) (+.f32 (*.f32 -1 (/.f32 (*.f32 (+.f32 1/32 (pow.f32 (*.f32 -1/8 (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))) 2)) (pow.f32 (sqrt.f32 -1) 2)) (pow.f32 u 2))) (+.f32 (*.f32 1/64 (/.f32 (pow.f32 (sqrt.f32 -1) 2) (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) (pow.f32 u 2)))) (+.f32 (*.f32 -1 (/.f32 (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 1/192 (*.f32 1/8 (/.f32 (+.f32 1/32 (pow.f32 (*.f32 -1/8 (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))) 2)) (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))))) (pow.f32 u 3))) (+.f32 (*.f32 1/8 (/.f32 (*.f32 (+.f32 1/32 (pow.f32 (*.f32 -1/8 (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))) 2)) (pow.f32 (sqrt.f32 -1) 2)) (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) (pow.f32 u 3)))) (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))))))
(*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))
(+.f32 (*.f32 -1/4 (/.f32 (pow.f32 (sqrt.f32 -1) 2) u)) (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))
(+.f32 (*.f32 -1/4 (/.f32 (pow.f32 (sqrt.f32 -1) 2) u)) (+.f32 (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))) (+.f32 (*.f32 -1 (/.f32 (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (pow.f32 (*.f32 1/8 (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))) 2) 1/32)) (pow.f32 u 2))) (*.f32 1/64 (/.f32 (pow.f32 (sqrt.f32 -1) 2) (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) (pow.f32 u 2)))))))
(+.f32 (*.f32 -1/4 (/.f32 (pow.f32 (sqrt.f32 -1) 2) u)) (+.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 -1/8 (/.f32 (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (pow.f32 (*.f32 1/8 (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))) 2) 1/32)) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (*.f32 (pow.f32 (sqrt.f32 -1) 2) (-.f32 1/192 (*.f32 -1/8 (/.f32 (+.f32 (pow.f32 (*.f32 1/8 (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))) 2) 1/32) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))))) (pow.f32 u 3))) (+.f32 (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))) (+.f32 (*.f32 1/64 (/.f32 (pow.f32 (sqrt.f32 -1) 2) (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) (pow.f32 u 2)))) (*.f32 -1 (/.f32 (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (pow.f32 (*.f32 1/8 (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))) 2) 1/32)) (pow.f32 u 2)))))))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (log.f32 (+.f32 1 (*.f32 -4 u)))))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (log.f32 (+.f32 1 (*.f32 -4 u)))))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (log.f32 (+.f32 1 (*.f32 -4 u)))))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (log.f32 (+.f32 1 (*.f32 -4 u)))))
(*.f32 -4 (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) u)))
(+.f32 (*.f32 -8 (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (pow.f32 u 2)))) (*.f32 -4 (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) u))))
(+.f32 (*.f32 -8 (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (pow.f32 u 2)))) (+.f32 (*.f32 -64/3 (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (pow.f32 u 3)))) (*.f32 -4 (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) u)))))
(+.f32 (*.f32 -8 (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (pow.f32 u 2)))) (+.f32 (*.f32 -64/3 (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (pow.f32 u 3)))) (+.f32 (*.f32 -64 (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (pow.f32 u 4)))) (*.f32 -4 (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) u))))))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))
(+.f32 (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (*.f32 -1/4 (/.f32 (*.f32 s (pow.f32 (sqrt.f32 -1) 2)) u)))
(+.f32 (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (+.f32 (*.f32 -1/32 (/.f32 (*.f32 s (pow.f32 (sqrt.f32 -1) 2)) (pow.f32 u 2))) (*.f32 -1/4 (/.f32 (*.f32 s (pow.f32 (sqrt.f32 -1) 2)) u))))
(+.f32 (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (+.f32 (*.f32 -1/192 (/.f32 (*.f32 s (pow.f32 (sqrt.f32 -1) 2)) (pow.f32 u 3))) (+.f32 (*.f32 -1/32 (/.f32 (*.f32 s (pow.f32 (sqrt.f32 -1) 2)) (pow.f32 u 2))) (*.f32 -1/4 (/.f32 (*.f32 s (pow.f32 (sqrt.f32 -1) 2)) u)))))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))
(+.f32 (*.f32 -1/4 (/.f32 (*.f32 s (pow.f32 (sqrt.f32 -1) 2)) u)) (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))))
(+.f32 (*.f32 -1/32 (/.f32 (*.f32 s (pow.f32 (sqrt.f32 -1) 2)) (pow.f32 u 2))) (+.f32 (*.f32 -1/4 (/.f32 (*.f32 s (pow.f32 (sqrt.f32 -1) 2)) u)) (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))))
(+.f32 (*.f32 -1/192 (/.f32 (*.f32 s (pow.f32 (sqrt.f32 -1) 2)) (pow.f32 u 3))) (+.f32 (*.f32 -1/32 (/.f32 (*.f32 s (pow.f32 (sqrt.f32 -1) 2)) (pow.f32 u 2))) (+.f32 (*.f32 -1/4 (/.f32 (*.f32 s (pow.f32 (sqrt.f32 -1) 2)) u)) (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))))))
(*.f32 (sqrt.f32 -1) (sqrt.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))
(+.f32 (*.f32 -1/8 (*.f32 (/.f32 (sqrt.f32 -1) u) (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))))) (*.f32 (sqrt.f32 -1) (sqrt.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))))
(+.f32 (*.f32 -1/8 (*.f32 (/.f32 (sqrt.f32 -1) u) (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))))) (+.f32 (*.f32 -1/2 (*.f32 (/.f32 (*.f32 (+.f32 1/32 (pow.f32 (*.f32 -1/8 (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))) 2)) (sqrt.f32 -1)) (pow.f32 u 2)) (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))))) (*.f32 (sqrt.f32 -1) (sqrt.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))))
(+.f32 (*.f32 -1/8 (*.f32 (/.f32 (sqrt.f32 -1) u) (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))))) (+.f32 (*.f32 -1/2 (*.f32 (/.f32 (*.f32 (+.f32 1/32 (pow.f32 (*.f32 -1/8 (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))) 2)) (sqrt.f32 -1)) (pow.f32 u 2)) (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))))) (+.f32 (*.f32 (sqrt.f32 -1) (sqrt.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (*.f32 -1/2 (*.f32 (/.f32 (*.f32 (sqrt.f32 -1) (+.f32 1/192 (*.f32 1/8 (/.f32 (+.f32 1/32 (pow.f32 (*.f32 -1/8 (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))) 2)) (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))))) (pow.f32 u 3)) (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))))))))
(*.f32 (sqrt.f32 -1) (sqrt.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))
(+.f32 (*.f32 (sqrt.f32 -1) (sqrt.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (*.f32 -1/8 (*.f32 (/.f32 (sqrt.f32 -1) u) (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))))))
(+.f32 (*.f32 -1/2 (*.f32 (/.f32 (*.f32 (sqrt.f32 -1) (+.f32 (pow.f32 (*.f32 1/8 (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))) 2) 1/32)) (pow.f32 u 2)) (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))))) (+.f32 (*.f32 (sqrt.f32 -1) (sqrt.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (*.f32 -1/8 (*.f32 (/.f32 (sqrt.f32 -1) u) (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))))))
(+.f32 (*.f32 -1/2 (*.f32 (/.f32 (*.f32 (sqrt.f32 -1) (+.f32 (pow.f32 (*.f32 1/8 (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))) 2) 1/32)) (pow.f32 u 2)) (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))))) (+.f32 (*.f32 (sqrt.f32 -1) (sqrt.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (+.f32 (*.f32 -1/8 (*.f32 (/.f32 (sqrt.f32 -1) u) (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))))) (*.f32 -1/2 (*.f32 (/.f32 (*.f32 (sqrt.f32 -1) (-.f32 1/192 (*.f32 -1/8 (/.f32 (+.f32 (pow.f32 (*.f32 1/8 (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))) 2) 1/32) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))))) (pow.f32 u 3)) (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))))))))
Outputs
(*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))
(*.f32 (pow.f32 (sqrt.f32 -1) 2) (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)))
(*.f32 -1 (+.f32 (log.f32 u) (log.f32 -4)))
(-.f32 (neg.f32 (log.f32 -4)) (log.f32 u))
(+.f32 (*.f32 -1/4 (/.f32 (pow.f32 (sqrt.f32 -1) 2) u)) (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))
(fma.f32 -1/4 (/.f32 (pow.f32 (sqrt.f32 -1) 2) u) (*.f32 (pow.f32 (sqrt.f32 -1) 2) (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))))
(fma.f32 -1 (+.f32 (log.f32 u) (log.f32 -4)) (/.f32 1/4 u))
(+.f32 (*.f32 -1/4 (/.f32 (pow.f32 (sqrt.f32 -1) 2) u)) (+.f32 (*.f32 -1 (/.f32 (*.f32 (+.f32 1/32 (pow.f32 (*.f32 -1/8 (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))) 2)) (pow.f32 (sqrt.f32 -1) 2)) (pow.f32 u 2))) (+.f32 (*.f32 1/64 (/.f32 (pow.f32 (sqrt.f32 -1) 2) (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) (pow.f32 u 2)))) (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))))
(fma.f32 -1/4 (/.f32 (pow.f32 (sqrt.f32 -1) 2) u) (fma.f32 -1 (/.f32 (+.f32 1/32 (pow.f32 (*.f32 -1/8 (sqrt.f32 (/.f32 1 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))))) 2)) (/.f32 (*.f32 u u) (pow.f32 (sqrt.f32 -1) 2))) (fma.f32 1/64 (/.f32 (pow.f32 (sqrt.f32 -1) 2) (*.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) (*.f32 u u))) (*.f32 (pow.f32 (sqrt.f32 -1) 2) (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))))))
(+.f32 (/.f32 1/4 u) (-.f32 (fma.f32 -1 (+.f32 (log.f32 u) (log.f32 -4)) (/.f32 -1/64 (*.f32 u (*.f32 u (+.f32 (log.f32 u) (log.f32 -4)))))) (*.f32 (/.f32 -1 u) (/.f32 (+.f32 1/32 (pow.f32 (*.f32 -1/8 (sqrt.f32 (/.f32 1 (+.f32 (log.f32 u) (log.f32 -4))))) 2)) u))))
(-.f32 (/.f32 1/4 u) (-.f32 (/.f32 (+.f32 -1/32 (*.f32 (/.f32 1 (+.f32 (log.f32 u) (log.f32 -4))) -1/64)) (*.f32 u u)) (fma.f32 -1 (+.f32 (log.f32 u) (log.f32 -4)) (/.f32 (/.f32 -1/64 (*.f32 u u)) (+.f32 (log.f32 u) (log.f32 -4))))))
(+.f32 (*.f32 -1/4 (/.f32 (pow.f32 (sqrt.f32 -1) 2) u)) (+.f32 (*.f32 -1 (/.f32 (*.f32 (+.f32 1/32 (pow.f32 (*.f32 -1/8 (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))) 2)) (pow.f32 (sqrt.f32 -1) 2)) (pow.f32 u 2))) (+.f32 (*.f32 1/64 (/.f32 (pow.f32 (sqrt.f32 -1) 2) (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) (pow.f32 u 2)))) (+.f32 (*.f32 -1 (/.f32 (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 1/192 (*.f32 1/8 (/.f32 (+.f32 1/32 (pow.f32 (*.f32 -1/8 (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))) 2)) (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))))) (pow.f32 u 3))) (+.f32 (*.f32 1/8 (/.f32 (*.f32 (+.f32 1/32 (pow.f32 (*.f32 -1/8 (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))) 2)) (pow.f32 (sqrt.f32 -1) 2)) (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)) (pow.f32 u 3)))) (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))))))
(fma.f32 -1/4 (/.f32 (pow.f32 (sqrt.f32 -1) 2) u) (fma.f32 -1 (/.f32 (+.f32 1/32 (pow.f32 (*.f32 -1/8 (sqrt.f32 (/.f32 1 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))))) 2)) (/.f32 (*.f32 u u) (pow.f32 (sqrt.f32 -1) 2))) (fma.f32 1/64 (/.f32 (pow.f32 (sqrt.f32 -1) 2) (*.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)) (*.f32 u u))) (fma.f32 -1 (/.f32 (pow.f32 (sqrt.f32 -1) 2) (/.f32 (pow.f32 u 3) (+.f32 1/192 (*.f32 1/8 (/.f32 (+.f32 1/32 (pow.f32 (*.f32 -1/8 (sqrt.f32 (/.f32 1 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))))) 2)) (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))))))) (fma.f32 1/8 (*.f32 (/.f32 (+.f32 1/32 (pow.f32 (*.f32 -1/8 (sqrt.f32 (/.f32 1 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))))) 2)) (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))) (/.f32 (pow.f32 (sqrt.f32 -1) 2) (pow.f32 u 3))) (*.f32 (pow.f32 (sqrt.f32 -1) 2) (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))))))))
(+.f32 (/.f32 1/4 u) (+.f32 (-.f32 (fma.f32 -1 (+.f32 (log.f32 u) (log.f32 -4)) (/.f32 (*.f32 -1/8 (/.f32 (+.f32 1/32 (pow.f32 (*.f32 -1/8 (sqrt.f32 (/.f32 1 (+.f32 (log.f32 u) (log.f32 -4))))) 2)) (+.f32 (log.f32 u) (log.f32 -4)))) (pow.f32 u 3))) (/.f32 (+.f32 -1/192 (*.f32 -1/8 (/.f32 (+.f32 1/32 (pow.f32 (*.f32 -1/8 (sqrt.f32 (/.f32 1 (+.f32 (log.f32 u) (log.f32 -4))))) 2)) (+.f32 (log.f32 u) (log.f32 -4))))) (pow.f32 u 3))) (+.f32 (/.f32 (*.f32 1 (+.f32 1/32 (pow.f32 (*.f32 -1/8 (sqrt.f32 (/.f32 1 (+.f32 (log.f32 u) (log.f32 -4))))) 2))) (*.f32 u u)) (/.f32 -1/64 (*.f32 u (*.f32 u (+.f32 (log.f32 u) (log.f32 -4))))))))
(+.f32 (/.f32 (+.f32 1/192 (/.f32 (+.f32 1/256 (*.f32 1/512 (/.f32 1 (+.f32 (log.f32 u) (log.f32 -4))))) (+.f32 (log.f32 u) (log.f32 -4)))) (pow.f32 u 3)) (+.f32 (+.f32 (/.f32 (neg.f32 (+.f32 1/256 (*.f32 1/512 (/.f32 1 (+.f32 (log.f32 u) (log.f32 -4)))))) (*.f32 (+.f32 (log.f32 u) (log.f32 -4)) (pow.f32 u 3))) (fma.f32 -1 (+.f32 (log.f32 u) (log.f32 -4)) (/.f32 (/.f32 -1/64 (*.f32 u u)) (+.f32 (log.f32 u) (log.f32 -4))))) (+.f32 (/.f32 1/4 u) (/.f32 (+.f32 1/32 (*.f32 1/64 (/.f32 1 (+.f32 (log.f32 u) (log.f32 -4))))) (*.f32 u u)))))
(*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))
(*.f32 (pow.f32 (sqrt.f32 -1) 2) (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)))
(*.f32 -1 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))))
(+.f32 (log.f32 (/.f32 -1 u)) (neg.f32 (log.f32 4)))
(+.f32 (*.f32 -1/4 (/.f32 (pow.f32 (sqrt.f32 -1) 2) u)) (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))
(fma.f32 -1/4 (/.f32 (pow.f32 (sqrt.f32 -1) 2) u) (*.f32 (pow.f32 (sqrt.f32 -1) 2) (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))))
(fma.f32 -1 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (/.f32 1/4 u))
(+.f32 (*.f32 -1/4 (/.f32 (pow.f32 (sqrt.f32 -1) 2) u)) (+.f32 (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))) (+.f32 (*.f32 -1 (/.f32 (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (pow.f32 (*.f32 1/8 (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))) 2) 1/32)) (pow.f32 u 2))) (*.f32 1/64 (/.f32 (pow.f32 (sqrt.f32 -1) 2) (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) (pow.f32 u 2)))))))
(fma.f32 -1/4 (/.f32 (pow.f32 (sqrt.f32 -1) 2) u) (fma.f32 (pow.f32 (sqrt.f32 -1) 2) (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) (fma.f32 1/64 (/.f32 (pow.f32 (sqrt.f32 -1) 2) (*.f32 (*.f32 u u) (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)))) (neg.f32 (/.f32 (pow.f32 (sqrt.f32 -1) 2) (/.f32 (*.f32 u u) (+.f32 1/32 (pow.f32 (*.f32 1/8 (sqrt.f32 (/.f32 1 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))))) 2))))))))
(+.f32 (/.f32 1/4 u) (-.f32 (fma.f32 -1 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (/.f32 -1/64 (*.f32 (*.f32 u u) (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))))) (/.f32 (fma.f32 -1 (pow.f32 (*.f32 1/8 (sqrt.f32 (/.f32 1 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))))) 2) -1/32) (*.f32 u u))))
(+.f32 (/.f32 1/4 u) (+.f32 (/.f32 (+.f32 1/32 (*.f32 1/64 (/.f32 1 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))))) (*.f32 u u)) (fma.f32 -1 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (/.f32 -1/64 (*.f32 u (*.f32 u (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))))))))
(+.f32 (*.f32 -1/4 (/.f32 (pow.f32 (sqrt.f32 -1) 2) u)) (+.f32 (*.f32 -1 (/.f32 (+.f32 (*.f32 -1/8 (/.f32 (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (pow.f32 (*.f32 1/8 (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))) 2) 1/32)) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (*.f32 (pow.f32 (sqrt.f32 -1) 2) (-.f32 1/192 (*.f32 -1/8 (/.f32 (+.f32 (pow.f32 (*.f32 1/8 (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))) 2) 1/32) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))))) (pow.f32 u 3))) (+.f32 (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))) (+.f32 (*.f32 1/64 (/.f32 (pow.f32 (sqrt.f32 -1) 2) (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)) (pow.f32 u 2)))) (*.f32 -1 (/.f32 (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (pow.f32 (*.f32 1/8 (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))) 2) 1/32)) (pow.f32 u 2)))))))
(fma.f32 -1/4 (/.f32 (pow.f32 (sqrt.f32 -1) 2) u) (fma.f32 -1 (/.f32 (fma.f32 -1/8 (/.f32 (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 1/32 (pow.f32 (*.f32 1/8 (sqrt.f32 (/.f32 1 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))))) 2))) (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))) (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 1/192 (*.f32 1/8 (/.f32 (+.f32 1/32 (pow.f32 (*.f32 1/8 (sqrt.f32 (/.f32 1 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))))) 2)) (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))))))) (pow.f32 u 3)) (fma.f32 (pow.f32 (sqrt.f32 -1) 2) (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)) (fma.f32 1/64 (/.f32 (pow.f32 (sqrt.f32 -1) 2) (*.f32 (*.f32 u u) (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)))) (neg.f32 (/.f32 (pow.f32 (sqrt.f32 -1) 2) (/.f32 (*.f32 u u) (+.f32 1/32 (pow.f32 (*.f32 1/8 (sqrt.f32 (/.f32 1 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))))) 2)))))))))
(+.f32 (/.f32 1/4 u) (-.f32 (-.f32 (fma.f32 -1 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (/.f32 -1/64 (*.f32 (*.f32 u u) (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))))) (/.f32 (fma.f32 -1 (pow.f32 (*.f32 1/8 (sqrt.f32 (/.f32 1 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))))) 2) -1/32) (*.f32 u u))) (/.f32 (fma.f32 -1 (-.f32 1/192 (/.f32 (+.f32 -1/256 (*.f32 (pow.f32 (*.f32 1/8 (sqrt.f32 (/.f32 1 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))))) 2) -1/8)) (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))))) (*.f32 1/8 (/.f32 (+.f32 1/32 (pow.f32 (*.f32 1/8 (sqrt.f32 (/.f32 1 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))))) 2)) (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))))) (pow.f32 u 3))))
(+.f32 (fma.f32 -1 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (/.f32 1/4 u)) (+.f32 (/.f32 (+.f32 1/32 (*.f32 1/64 (/.f32 1 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))))) (*.f32 u u)) (+.f32 (/.f32 -1/64 (*.f32 u (*.f32 u (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))))) (/.f32 (+.f32 (/.f32 (+.f32 -1/256 (*.f32 (/.f32 1 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))) -1/512)) (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))) (-.f32 1/192 (/.f32 (+.f32 -1/256 (*.f32 (/.f32 1 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))) -1/512)) (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))))) (pow.f32 u 3)))))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (log1p.f32 (*.f32 u -4))))
(*.f32 -1 (*.f32 (log1p.f32 (*.f32 u -4)) s))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (log1p.f32 (*.f32 u -4))))
(*.f32 -1 (*.f32 (log1p.f32 (*.f32 u -4)) s))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (log1p.f32 (*.f32 u -4))))
(*.f32 -1 (*.f32 (log1p.f32 (*.f32 u -4)) s))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (log1p.f32 (*.f32 u -4))))
(*.f32 -1 (*.f32 (log1p.f32 (*.f32 u -4)) s))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (log1p.f32 (*.f32 u -4))))
(*.f32 -1 (*.f32 (log1p.f32 (*.f32 u -4)) s))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (log1p.f32 (*.f32 u -4))))
(*.f32 -1 (*.f32 (log1p.f32 (*.f32 u -4)) s))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (log1p.f32 (*.f32 u -4))))
(*.f32 -1 (*.f32 (log1p.f32 (*.f32 u -4)) s))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (log.f32 (+.f32 (*.f32 -4 u) 1))))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (log1p.f32 (*.f32 u -4))))
(*.f32 -1 (*.f32 (log1p.f32 (*.f32 u -4)) s))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (log.f32 (+.f32 1 (*.f32 -4 u)))))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (log1p.f32 (*.f32 u -4))))
(*.f32 -1 (*.f32 (log1p.f32 (*.f32 u -4)) s))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (log.f32 (+.f32 1 (*.f32 -4 u)))))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (log1p.f32 (*.f32 u -4))))
(*.f32 -1 (*.f32 (log1p.f32 (*.f32 u -4)) s))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (log.f32 (+.f32 1 (*.f32 -4 u)))))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (log1p.f32 (*.f32 u -4))))
(*.f32 -1 (*.f32 (log1p.f32 (*.f32 u -4)) s))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (log.f32 (+.f32 1 (*.f32 -4 u)))))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (log1p.f32 (*.f32 u -4))))
(*.f32 -1 (*.f32 (log1p.f32 (*.f32 u -4)) s))
(*.f32 (log1p.f32 (*.f32 u -4)) (neg.f32 s))
(*.f32 -4 (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) u)))
(*.f32 (*.f32 -1 u) (*.f32 -4 s))
(*.f32 4 (*.f32 u s))
(+.f32 (*.f32 -8 (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (pow.f32 u 2)))) (*.f32 -4 (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) u))))
(fma.f32 -8 (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (*.f32 u u))) (*.f32 -4 (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) u))))
(fma.f32 -4 (*.f32 -1 (*.f32 u s)) (*.f32 (*.f32 u (*.f32 -1 u)) (*.f32 s -8)))
(*.f32 s (+.f32 (*.f32 4 u) (*.f32 8 (*.f32 u u))))
(+.f32 (*.f32 -8 (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (pow.f32 u 2)))) (+.f32 (*.f32 -64/3 (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (pow.f32 u 3)))) (*.f32 -4 (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) u)))))
(fma.f32 -8 (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (*.f32 u u))) (fma.f32 -64/3 (*.f32 (*.f32 (pow.f32 (sqrt.f32 -1) 2) s) (pow.f32 u 3)) (*.f32 -4 (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) u)))))
(fma.f32 -8 (*.f32 -1 (*.f32 s (*.f32 u u))) (fma.f32 -4 (*.f32 -1 (*.f32 u s)) (*.f32 (*.f32 -1 s) (*.f32 (pow.f32 u 3) -64/3))))
(+.f32 (*.f32 4 (*.f32 u s)) (*.f32 s (+.f32 (*.f32 8 (*.f32 u u)) (*.f32 64/3 (pow.f32 u 3)))))
(+.f32 (*.f32 -8 (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (pow.f32 u 2)))) (+.f32 (*.f32 -64/3 (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (pow.f32 u 3)))) (+.f32 (*.f32 -64 (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (pow.f32 u 4)))) (*.f32 -4 (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) u))))))
(fma.f32 -8 (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (*.f32 u u))) (fma.f32 -64/3 (*.f32 (*.f32 (pow.f32 (sqrt.f32 -1) 2) s) (pow.f32 u 3)) (fma.f32 -64 (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (pow.f32 u 4))) (*.f32 -4 (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) u))))))
(fma.f32 -8 (*.f32 -1 (*.f32 s (*.f32 u u))) (fma.f32 -64/3 (*.f32 -1 (*.f32 (pow.f32 u 3) s)) (fma.f32 -64 (*.f32 (pow.f32 u 4) (*.f32 -1 s)) (*.f32 (*.f32 -1 u) (*.f32 -4 s)))))
(+.f32 (*.f32 s (+.f32 (*.f32 4 u) (*.f32 8 (*.f32 u u)))) (*.f32 s (+.f32 (*.f32 64/3 (pow.f32 u 3)) (*.f32 64 (pow.f32 u 4)))))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))
(*.f32 (*.f32 (pow.f32 (sqrt.f32 -1) 2) (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))) s)
(*.f32 (+.f32 (log.f32 u) (log.f32 -4)) (*.f32 -1 s))
(*.f32 (+.f32 (log.f32 u) (log.f32 -4)) (neg.f32 s))
(+.f32 (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (*.f32 -1/4 (/.f32 (*.f32 s (pow.f32 (sqrt.f32 -1) 2)) u)))
(fma.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))) (*.f32 -1/4 (/.f32 (*.f32 (pow.f32 (sqrt.f32 -1) 2) s) u)))
(fma.f32 (*.f32 -1 (+.f32 (log.f32 u) (log.f32 -4))) s (/.f32 (*.f32 1/4 s) u))
(fma.f32 (-.f32 (neg.f32 (log.f32 -4)) (log.f32 u)) s (*.f32 (/.f32 s u) 1/4))
(+.f32 (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (+.f32 (*.f32 -1/32 (/.f32 (*.f32 s (pow.f32 (sqrt.f32 -1) 2)) (pow.f32 u 2))) (*.f32 -1/4 (/.f32 (*.f32 s (pow.f32 (sqrt.f32 -1) 2)) u))))
(fma.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))) (fma.f32 -1/32 (/.f32 s (/.f32 (*.f32 u u) (pow.f32 (sqrt.f32 -1) 2))) (*.f32 -1/4 (/.f32 (*.f32 (pow.f32 (sqrt.f32 -1) 2) s) u))))
(+.f32 (/.f32 (*.f32 1/4 s) u) (fma.f32 (*.f32 -1 s) (+.f32 (log.f32 u) (log.f32 -4)) (/.f32 (*.f32 1/32 s) (*.f32 u u))))
(fma.f32 (-.f32 (neg.f32 (log.f32 -4)) (log.f32 u)) s (*.f32 (/.f32 (neg.f32 s) u) (+.f32 -1/4 (/.f32 -1/32 u))))
(+.f32 (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (+.f32 (*.f32 -1/192 (/.f32 (*.f32 s (pow.f32 (sqrt.f32 -1) 2)) (pow.f32 u 3))) (+.f32 (*.f32 -1/32 (/.f32 (*.f32 s (pow.f32 (sqrt.f32 -1) 2)) (pow.f32 u 2))) (*.f32 -1/4 (/.f32 (*.f32 s (pow.f32 (sqrt.f32 -1) 2)) u)))))
(fma.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))) (fma.f32 -1/192 (/.f32 s (/.f32 (pow.f32 u 3) (pow.f32 (sqrt.f32 -1) 2))) (fma.f32 -1/32 (/.f32 s (/.f32 (*.f32 u u) (pow.f32 (sqrt.f32 -1) 2))) (*.f32 -1/4 (/.f32 (*.f32 (pow.f32 (sqrt.f32 -1) 2) s) u)))))
(+.f32 (+.f32 (/.f32 (*.f32 1/4 s) u) (/.f32 (*.f32 1/32 s) (*.f32 u u))) (fma.f32 (*.f32 -1 (+.f32 (log.f32 u) (log.f32 -4))) s (/.f32 (*.f32 1/192 s) (pow.f32 u 3))))
(+.f32 (fma.f32 (-.f32 (neg.f32 (log.f32 -4)) (log.f32 u)) s (*.f32 (/.f32 s u) 1/4)) (*.f32 (/.f32 (neg.f32 s) (*.f32 u u)) (+.f32 -1/32 (/.f32 -1/192 u))))
(*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))
(*.f32 (*.f32 (pow.f32 (sqrt.f32 -1) 2) (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))) s)
(*.f32 -1 (*.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) s))
(*.f32 (+.f32 (log.f32 (/.f32 -1 u)) (neg.f32 (log.f32 4))) s)
(+.f32 (*.f32 -1/4 (/.f32 (*.f32 s (pow.f32 (sqrt.f32 -1) 2)) u)) (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))))
(fma.f32 -1/4 (/.f32 (*.f32 (pow.f32 (sqrt.f32 -1) 2) s) u) (*.f32 (*.f32 (pow.f32 (sqrt.f32 -1) 2) (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))) s))
(fma.f32 (*.f32 -1 s) (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (/.f32 (*.f32 1/4 s) u))
(fma.f32 (+.f32 (log.f32 (/.f32 -1 u)) (neg.f32 (log.f32 4))) s (*.f32 (/.f32 s u) 1/4))
(+.f32 (*.f32 -1/32 (/.f32 (*.f32 s (pow.f32 (sqrt.f32 -1) 2)) (pow.f32 u 2))) (+.f32 (*.f32 -1/4 (/.f32 (*.f32 s (pow.f32 (sqrt.f32 -1) 2)) u)) (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))))
(fma.f32 -1/32 (/.f32 s (/.f32 (*.f32 u u) (pow.f32 (sqrt.f32 -1) 2))) (fma.f32 -1/4 (/.f32 (*.f32 (pow.f32 (sqrt.f32 -1) 2) s) u) (*.f32 (*.f32 (pow.f32 (sqrt.f32 -1) 2) (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))) s)))
(+.f32 (/.f32 (*.f32 1/32 s) (*.f32 u u)) (fma.f32 (*.f32 -1 s) (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (/.f32 (*.f32 1/4 s) u)))
(+.f32 (*.f32 (/.f32 (neg.f32 s) u) (+.f32 -1/4 (/.f32 -1/32 u))) (*.f32 (+.f32 (log.f32 (/.f32 -1 u)) (neg.f32 (log.f32 4))) s))
(+.f32 (*.f32 -1/192 (/.f32 (*.f32 s (pow.f32 (sqrt.f32 -1) 2)) (pow.f32 u 3))) (+.f32 (*.f32 -1/32 (/.f32 (*.f32 s (pow.f32 (sqrt.f32 -1) 2)) (pow.f32 u 2))) (+.f32 (*.f32 -1/4 (/.f32 (*.f32 s (pow.f32 (sqrt.f32 -1) 2)) u)) (*.f32 s (*.f32 (pow.f32 (sqrt.f32 -1) 2) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))))))
(fma.f32 -1/192 (/.f32 s (/.f32 (pow.f32 u 3) (pow.f32 (sqrt.f32 -1) 2))) (fma.f32 -1/32 (/.f32 s (/.f32 (*.f32 u u) (pow.f32 (sqrt.f32 -1) 2))) (fma.f32 -1/4 (/.f32 (*.f32 (pow.f32 (sqrt.f32 -1) 2) s) u) (*.f32 (*.f32 (pow.f32 (sqrt.f32 -1) 2) (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))) s))))
(+.f32 (fma.f32 (*.f32 -1 s) (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))) (/.f32 (*.f32 1/4 s) u)) (+.f32 (/.f32 (*.f32 1/32 s) (*.f32 u u)) (/.f32 (*.f32 1/192 s) (pow.f32 u 3))))
(+.f32 (fma.f32 (+.f32 (log.f32 (/.f32 -1 u)) (neg.f32 (log.f32 4))) s (*.f32 (/.f32 s u) 1/4)) (*.f32 (/.f32 (neg.f32 s) (*.f32 u u)) (+.f32 -1/32 (/.f32 -1/192 u))))
(*.f32 (sqrt.f32 -1) (sqrt.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))
(*.f32 (sqrt.f32 -1) (sqrt.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))))
(*.f32 (sqrt.f32 -1) (sqrt.f32 (+.f32 (log.f32 u) (log.f32 -4))))
(+.f32 (*.f32 -1/8 (*.f32 (/.f32 (sqrt.f32 -1) u) (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))))) (*.f32 (sqrt.f32 -1) (sqrt.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))))
(fma.f32 -1/8 (*.f32 (sqrt.f32 (/.f32 1 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)))) (/.f32 (sqrt.f32 -1) u)) (*.f32 (sqrt.f32 -1) (sqrt.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)))))
(fma.f32 (sqrt.f32 -1) (sqrt.f32 (+.f32 (log.f32 u) (log.f32 -4))) (*.f32 (sqrt.f32 (/.f32 1 (+.f32 (log.f32 u) (log.f32 -4)))) (*.f32 -1/8 (/.f32 (sqrt.f32 -1) u))))
(fma.f32 (sqrt.f32 -1) (sqrt.f32 (+.f32 (log.f32 u) (log.f32 -4))) (*.f32 (sqrt.f32 (/.f32 1 (+.f32 (log.f32 u) (log.f32 -4)))) (/.f32 -1/8 (/.f32 u (sqrt.f32 -1)))))
(+.f32 (*.f32 -1/8 (*.f32 (/.f32 (sqrt.f32 -1) u) (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))))) (+.f32 (*.f32 -1/2 (*.f32 (/.f32 (*.f32 (+.f32 1/32 (pow.f32 (*.f32 -1/8 (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))) 2)) (sqrt.f32 -1)) (pow.f32 u 2)) (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))))) (*.f32 (sqrt.f32 -1) (sqrt.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))))
(fma.f32 -1/8 (*.f32 (sqrt.f32 (/.f32 1 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)))) (/.f32 (sqrt.f32 -1) u)) (fma.f32 -1/2 (*.f32 (sqrt.f32 (/.f32 1 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)))) (/.f32 (+.f32 1/32 (pow.f32 (*.f32 -1/8 (sqrt.f32 (/.f32 1 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))))) 2)) (/.f32 (*.f32 u u) (sqrt.f32 -1)))) (*.f32 (sqrt.f32 -1) (sqrt.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))))))
(+.f32 (*.f32 (sqrt.f32 -1) (sqrt.f32 (+.f32 (log.f32 u) (log.f32 -4)))) (*.f32 (sqrt.f32 (/.f32 1 (+.f32 (log.f32 u) (log.f32 -4)))) (+.f32 (*.f32 -1/8 (/.f32 (sqrt.f32 -1) u)) (*.f32 -1/2 (/.f32 (+.f32 1/32 (pow.f32 (*.f32 -1/8 (sqrt.f32 (/.f32 1 (+.f32 (log.f32 u) (log.f32 -4))))) 2)) (/.f32 u (/.f32 (sqrt.f32 -1) u)))))))
(+.f32 (*.f32 (sqrt.f32 -1) (sqrt.f32 (+.f32 (log.f32 u) (log.f32 -4)))) (*.f32 (sqrt.f32 (/.f32 1 (+.f32 (log.f32 u) (log.f32 -4)))) (+.f32 (/.f32 -1/8 (/.f32 u (sqrt.f32 -1))) (/.f32 (+.f32 -1/64 (*.f32 -1/2 (*.f32 1/64 (/.f32 1 (+.f32 (log.f32 u) (log.f32 -4)))))) (*.f32 (/.f32 u (sqrt.f32 -1)) u)))))
(+.f32 (*.f32 -1/8 (*.f32 (/.f32 (sqrt.f32 -1) u) (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))))) (+.f32 (*.f32 -1/2 (*.f32 (/.f32 (*.f32 (+.f32 1/32 (pow.f32 (*.f32 -1/8 (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))) 2)) (sqrt.f32 -1)) (pow.f32 u 2)) (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))))) (+.f32 (*.f32 (sqrt.f32 -1) (sqrt.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))) (*.f32 -1/2 (*.f32 (/.f32 (*.f32 (sqrt.f32 -1) (+.f32 1/192 (*.f32 1/8 (/.f32 (+.f32 1/32 (pow.f32 (*.f32 -1/8 (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4))))) 2)) (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))))) (pow.f32 u 3)) (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4)))))))))
(fma.f32 -1/8 (*.f32 (sqrt.f32 (/.f32 1 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)))) (/.f32 (sqrt.f32 -1) u)) (fma.f32 -1/2 (*.f32 (sqrt.f32 (/.f32 1 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)))) (/.f32 (+.f32 1/32 (pow.f32 (*.f32 -1/8 (sqrt.f32 (/.f32 1 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))))) 2)) (/.f32 (*.f32 u u) (sqrt.f32 -1)))) (fma.f32 (sqrt.f32 -1) (sqrt.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))) (*.f32 -1/2 (*.f32 (sqrt.f32 (/.f32 1 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4)))) (/.f32 (sqrt.f32 -1) (/.f32 (pow.f32 u 3) (+.f32 1/192 (*.f32 1/8 (/.f32 (+.f32 1/32 (pow.f32 (*.f32 -1/8 (sqrt.f32 (/.f32 1 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))))) 2)) (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4))))))))))))
(+.f32 (fma.f32 (sqrt.f32 -1) (sqrt.f32 (+.f32 (log.f32 u) (log.f32 -4))) (*.f32 (*.f32 (/.f32 (sqrt.f32 -1) (pow.f32 u 3)) (fma.f32 1/8 (/.f32 (+.f32 1/32 (pow.f32 (*.f32 -1/8 (sqrt.f32 (/.f32 1 (+.f32 (log.f32 u) (log.f32 -4))))) 2)) (+.f32 (log.f32 u) (log.f32 -4))) 1/192)) (*.f32 (sqrt.f32 (/.f32 1 (+.f32 (log.f32 u) (log.f32 -4)))) -1/2))) (*.f32 (sqrt.f32 (/.f32 1 (+.f32 (log.f32 u) (log.f32 -4)))) (+.f32 (*.f32 -1/8 (/.f32 (sqrt.f32 -1) u)) (*.f32 -1/2 (/.f32 (+.f32 1/32 (pow.f32 (*.f32 -1/8 (sqrt.f32 (/.f32 1 (+.f32 (log.f32 u) (log.f32 -4))))) 2)) (/.f32 u (/.f32 (sqrt.f32 -1) u)))))))
(+.f32 (*.f32 (sqrt.f32 -1) (sqrt.f32 (+.f32 (log.f32 u) (log.f32 -4)))) (*.f32 (sqrt.f32 (/.f32 1 (+.f32 (log.f32 u) (log.f32 -4)))) (+.f32 (+.f32 (/.f32 -1/8 (/.f32 u (sqrt.f32 -1))) (/.f32 (+.f32 -1/64 (*.f32 -1/2 (*.f32 1/64 (/.f32 1 (+.f32 (log.f32 u) (log.f32 -4)))))) (*.f32 (/.f32 u (sqrt.f32 -1)) u))) (*.f32 -1/2 (*.f32 (/.f32 (+.f32 1/192 (/.f32 (+.f32 1/256 (*.f32 1/512 (/.f32 1 (+.f32 (log.f32 u) (log.f32 -4))))) (+.f32 (log.f32 u) (log.f32 -4)))) (pow.f32 u 3)) (sqrt.f32 -1))))))
(*.f32 (sqrt.f32 -1) (sqrt.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))
(*.f32 (sqrt.f32 -1) (sqrt.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))))
(*.f32 (sqrt.f32 -1) (sqrt.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))))
(+.f32 (*.f32 (sqrt.f32 -1) (sqrt.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (*.f32 -1/8 (*.f32 (/.f32 (sqrt.f32 -1) u) (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))))))
(fma.f32 (sqrt.f32 -1) (sqrt.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))) (*.f32 (*.f32 -1/8 (/.f32 (sqrt.f32 -1) u)) (sqrt.f32 (/.f32 1 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))))))
(fma.f32 (*.f32 -1/8 (/.f32 (sqrt.f32 -1) u)) (sqrt.f32 (/.f32 1 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))))) (*.f32 (sqrt.f32 -1) (sqrt.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))))))
(fma.f32 (sqrt.f32 -1) (sqrt.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))) (*.f32 (sqrt.f32 (/.f32 1 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))))) (/.f32 -1/8 (/.f32 u (sqrt.f32 -1)))))
(+.f32 (*.f32 -1/2 (*.f32 (/.f32 (*.f32 (sqrt.f32 -1) (+.f32 (pow.f32 (*.f32 1/8 (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))) 2) 1/32)) (pow.f32 u 2)) (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))))) (+.f32 (*.f32 (sqrt.f32 -1) (sqrt.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (*.f32 -1/8 (*.f32 (/.f32 (sqrt.f32 -1) u) (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))))))
(fma.f32 -1/2 (*.f32 (sqrt.f32 (/.f32 1 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)))) (/.f32 (sqrt.f32 -1) (/.f32 (*.f32 u u) (+.f32 1/32 (pow.f32 (*.f32 1/8 (sqrt.f32 (/.f32 1 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))))) 2))))) (fma.f32 (sqrt.f32 -1) (sqrt.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))) (*.f32 (*.f32 -1/8 (/.f32 (sqrt.f32 -1) u)) (sqrt.f32 (/.f32 1 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)))))))
(fma.f32 -1/2 (/.f32 (*.f32 (sqrt.f32 -1) (sqrt.f32 (/.f32 1 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))))) (/.f32 (*.f32 u u) (+.f32 1/32 (pow.f32 (*.f32 1/8 (sqrt.f32 (/.f32 1 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))))) 2)))) (fma.f32 (*.f32 -1/8 (/.f32 (sqrt.f32 -1) u)) (sqrt.f32 (/.f32 1 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))))) (*.f32 (sqrt.f32 -1) (sqrt.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))))))
(+.f32 (*.f32 (sqrt.f32 -1) (sqrt.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))))) (*.f32 (sqrt.f32 (/.f32 1 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))))) (+.f32 (/.f32 -1/8 (/.f32 u (sqrt.f32 -1))) (*.f32 -1/2 (*.f32 (/.f32 (sqrt.f32 -1) (*.f32 u u)) (+.f32 1/32 (*.f32 1/64 (/.f32 1 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))))))))))
(+.f32 (*.f32 -1/2 (*.f32 (/.f32 (*.f32 (sqrt.f32 -1) (+.f32 (pow.f32 (*.f32 1/8 (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))) 2) 1/32)) (pow.f32 u 2)) (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))))) (+.f32 (*.f32 (sqrt.f32 -1) (sqrt.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))) (+.f32 (*.f32 -1/8 (*.f32 (/.f32 (sqrt.f32 -1) u) (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))))) (*.f32 -1/2 (*.f32 (/.f32 (*.f32 (sqrt.f32 -1) (-.f32 1/192 (*.f32 -1/8 (/.f32 (+.f32 (pow.f32 (*.f32 1/8 (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4))))) 2) 1/32) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))))) (pow.f32 u 3)) (sqrt.f32 (/.f32 1 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4)))))))))
(fma.f32 -1/2 (*.f32 (sqrt.f32 (/.f32 1 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)))) (/.f32 (sqrt.f32 -1) (/.f32 (*.f32 u u) (+.f32 1/32 (pow.f32 (*.f32 1/8 (sqrt.f32 (/.f32 1 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))))) 2))))) (fma.f32 (sqrt.f32 -1) (sqrt.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))) (fma.f32 -1/8 (*.f32 (sqrt.f32 (/.f32 1 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)))) (/.f32 (sqrt.f32 -1) u)) (*.f32 -1/2 (*.f32 (sqrt.f32 (/.f32 1 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4)))) (/.f32 (sqrt.f32 -1) (/.f32 (pow.f32 u 3) (+.f32 1/192 (*.f32 1/8 (/.f32 (+.f32 1/32 (pow.f32 (*.f32 1/8 (sqrt.f32 (/.f32 1 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))))) 2)) (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4))))))))))))
(fma.f32 -1/2 (/.f32 (*.f32 (sqrt.f32 -1) (sqrt.f32 (/.f32 1 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))))) (/.f32 (*.f32 u u) (+.f32 1/32 (pow.f32 (*.f32 1/8 (sqrt.f32 (/.f32 1 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))))) 2)))) (fma.f32 (sqrt.f32 -1) (sqrt.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))) (*.f32 (sqrt.f32 (/.f32 1 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))))) (+.f32 (*.f32 -1/8 (/.f32 (sqrt.f32 -1) u)) (*.f32 -1/2 (*.f32 (/.f32 (sqrt.f32 -1) (pow.f32 u 3)) (-.f32 1/192 (/.f32 (+.f32 -1/256 (*.f32 (pow.f32 (*.f32 1/8 (sqrt.f32 (/.f32 1 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))))) 2) -1/8)) (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))))))))))
(+.f32 (*.f32 (sqrt.f32 -1) (sqrt.f32 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))))) (*.f32 (sqrt.f32 (/.f32 1 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u))))) (+.f32 (+.f32 (/.f32 -1/8 (/.f32 u (sqrt.f32 -1))) (*.f32 -1/2 (*.f32 (/.f32 (sqrt.f32 -1) (pow.f32 u 3)) (-.f32 1/192 (/.f32 (+.f32 -1/256 (*.f32 (/.f32 1 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))) -1/512)) (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))))))) (*.f32 -1/2 (*.f32 (/.f32 (sqrt.f32 -1) (*.f32 u u)) (+.f32 1/32 (*.f32 1/64 (/.f32 1 (-.f32 (log.f32 4) (log.f32 (/.f32 -1 u)))))))))))

localize20.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.2b
(*.f32 3 (*.f32 4/3 u))
0.3b
(*.f32 4/3 u)
Compiler

Compiled 21 to 15 computations (28.6% saved)

series3.0ms (0%)

Counts
2 → 12
Calls

6 calls:

TimeVariablePointExpression
1.0ms
u
@0
(*.f32 4/3 u)
0.0ms
u
@inf
(*.f32 4/3 u)
0.0ms
u
@-inf
(*.f32 4/3 u)
0.0ms
u
@inf
(*.f32 3 (*.f32 4/3 u))
0.0ms
u
@-inf
(*.f32 3 (*.f32 4/3 u))

rewrite46.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
524×pow1_binary32
514×add-sqr-sqrt_binary32
490×add-log-exp_binary32
489×log1p-expm1-u_binary32
489×expm1-log1p-u_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
068
11248
213398
Stop Event
node limit
Counts
2 → 22
Calls
Call 1
Inputs
(*.f32 4/3 u)
(*.f32 3 (*.f32 4/3 u))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (*.f32 4/3 u)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 4/3 u) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 4/3 u) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 4/3 u)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 4/3 u)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 4/3 u) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 4/3) u))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 4/3 u) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 4/3 u)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 4/3 u)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 4/3 u)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (*.f32 u 4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 u 4) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 u 4) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 u 4)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 2 (sqrt.f32 u)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (*.f32 16 (*.f32 u u)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 4) u))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 u 4) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 u 4)))))))

simplify7.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0448
1548
Stop Event
saturated
Counts
34 → 23
Calls
Call 1
Inputs
(*.f32 4 u)
(*.f32 4 u)
(*.f32 4 u)
(*.f32 4 u)
(*.f32 4 u)
(*.f32 4 u)
(*.f32 4 u)
(*.f32 4 u)
(*.f32 4 u)
(*.f32 4 u)
(*.f32 4 u)
(*.f32 4 u)
Outputs
(*.f32 4 u)
(*.f32 4 u)
(*.f32 4 u)
(*.f32 4 u)
(*.f32 4 u)
(*.f32 4 u)
(*.f32 4 u)
(*.f32 4 u)
(*.f32 4 u)
(*.f32 4 u)
(*.f32 4 u)
(*.f32 4 u)

localize77.0ms (0.9%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(+.f32 4/3 (*.f32 u 8/3))
0.3b
(*.f32 u (+.f32 4/3 (*.f32 u 8/3)))
0.3b
(*.f32 u 8/3)
0.3b
(*.f32 3 (*.f32 u (+.f32 4/3 (*.f32 u 8/3))))
Compiler

Compiled 42 to 31 computations (26.2% saved)

series6.0ms (0.1%)

Counts
4 → 48
Calls

12 calls:

TimeVariablePointExpression
2.0ms
u
@inf
(*.f32 u 8/3)
1.0ms
u
@0
(*.f32 3 (*.f32 u (+.f32 4/3 (*.f32 u 8/3))))
1.0ms
u
@inf
(*.f32 3 (*.f32 u (+.f32 4/3 (*.f32 u 8/3))))
1.0ms
u
@-inf
(*.f32 3 (*.f32 u (+.f32 4/3 (*.f32 u 8/3))))
0.0ms
u
@-inf
(*.f32 u 8/3)

rewrite77.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
455×log-prod_binary32
346×exp-prod_binary32
316×prod-exp_binary32
275×prod-diff_binary32
272×pow-prod-down_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0934
120028
2254028
Stop Event
node limit
Counts
4 → 179
Calls
Call 1
Inputs
(*.f32 3 (*.f32 u (+.f32 4/3 (*.f32 u 8/3))))
(*.f32 u 8/3)
(*.f32 u (+.f32 4/3 (*.f32 u 8/3)))
(+.f32 4/3 (*.f32 u 8/3))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (*.f32 (fma.f32 u 8/3 4/3) (*.f32 3 u)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (*.f32 u 4/3) 3) (*.f32 (*.f32 u (*.f32 u 8/3)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 4/3 (*.f32 3 u)) (*.f32 (*.f32 u 8/3) (*.f32 3 u)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (*.f32 u 8/3) (*.f32 3 u)) (*.f32 4/3 (*.f32 3 u)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 3 (*.f32 u 4/3)) (*.f32 3 (*.f32 u (*.f32 u 8/3))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (*.f32 3 u) 4/3) (*.f32 (*.f32 3 u) (*.f32 u 8/3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (*.f32 3 u) (*.f32 u 8/3)) (*.f32 (*.f32 3 u) 4/3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (pow.f32 (pow.f32 (exp.f32 u) 2) (fma.f32 u 8/3 4/3))) (*.f32 u (fma.f32 u 8/3 4/3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (pow.f32 (exp.f32 3) (*.f32 u (fma.f32 u 8/3 4/3))))) (log.f32 (sqrt.f32 (pow.f32 (exp.f32 3) (*.f32 u (fma.f32 u 8/3 4/3))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 (fma.f32 u 8/3 4/3) (*.f32 3 u)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (*.f32 3 u) (fma.f32 512/27 (pow.f32 u 3) 64/27)) (fma.f32 (*.f32 u 8/3) (fma.f32 u 8/3 -4/3) 16/9))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (*.f32 3 u) (-.f32 16/9 (*.f32 64/9 (*.f32 u u)))) (+.f32 4/3 (*.f32 -8/3 u)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (fma.f32 u 8/3 4/3) (*.f32 3 u)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 (fma.f32 u 8/3 4/3) (*.f32 3 u)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 (fma.f32 u 8/3 4/3) (*.f32 3 u)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 (fma.f32 u 8/3 4/3) (*.f32 3 u))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 (fma.f32 u 8/3 4/3) (*.f32 3 u))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (exp.f32 1) (log.f32 (*.f32 (fma.f32 u 8/3 4/3) (*.f32 3 u))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (log.f32 (*.f32 (fma.f32 u 8/3 4/3) (*.f32 3 u)))) 2)) (cbrt.f32 (log.f32 (*.f32 (fma.f32 u 8/3 4/3) (*.f32 3 u)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (exp.f32 (sqrt.f32 (log.f32 (*.f32 (fma.f32 u 8/3 4/3) (*.f32 3 u))))) (sqrt.f32 (log.f32 (*.f32 (fma.f32 u 8/3 4/3) (*.f32 3 u)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 (fma.f32 u 8/3 4/3) (*.f32 3 u)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 3) (*.f32 u (fma.f32 u 8/3 4/3))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 (fma.f32 u 8/3 4/3) (*.f32 3 u)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 (fma.f32 u 8/3 4/3) (*.f32 3 u)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 (fma.f32 u 8/3 4/3) (*.f32 3 u))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 (fma.f32 u 8/3 4/3) (*.f32 3 u))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 (fma.f32 u 8/3 4/3) (*.f32 3 u))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 (fma.f32 u 8/3 4/3) (*.f32 3 u))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 3 (log.f32 (*.f32 (fma.f32 u 8/3 4/3) (*.f32 3 u)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (cbrt.f32 (*.f32 (fma.f32 u 8/3 4/3) (*.f32 3 u)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (sqrt.f32 (*.f32 (fma.f32 u 8/3 4/3) (*.f32 3 u)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 (log.f32 (*.f32 (fma.f32 u 8/3 4/3) (*.f32 3 u))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (+.f32 (*.f32 (log.f32 (fma.f32 u 8/3 4/3)) 1) (log.f32 (*.f32 3 u))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (+.f32 (log.f32 (*.f32 3 u)) (*.f32 (log.f32 (fma.f32 u 8/3 4/3)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 3 (*.f32 u 4/3) (*.f32 3 (*.f32 u (*.f32 u 8/3))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 4/3 (*.f32 3 u) (*.f32 (*.f32 u 8/3) (*.f32 3 u)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u 8/3) (*.f32 3 u) (*.f32 4/3 (*.f32 3 u)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u 4/3) 3 (*.f32 (*.f32 u (*.f32 u 8/3)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 3 u) 4/3 (*.f32 (*.f32 3 u) (*.f32 u 8/3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 3 u) (*.f32 u 8/3) (*.f32 (*.f32 3 u) 4/3))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (*.f32 u 8/3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (pow.f32 (cbrt.f32 (pow.f32 (exp.f32 8/3) u)) 2)) (log.f32 (cbrt.f32 (pow.f32 (exp.f32 8/3) u))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (pow.f32 (exp.f32 8/3) u))) (log.f32 (sqrt.f32 (pow.f32 (exp.f32 8/3) u))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 u 8/3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 u 8/3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 64/9 (*.f32 u u)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 u 8/3)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 u 8/3)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 512/27 (pow.f32 u 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (exp.f32 1) (log.f32 (*.f32 u 8/3)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (log.f32 (*.f32 u 8/3))) 2)) (cbrt.f32 (log.f32 (*.f32 u 8/3))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (exp.f32 (sqrt.f32 (log.f32 (*.f32 u 8/3)))) (sqrt.f32 (log.f32 (*.f32 u 8/3))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (*.f32 64/9 (*.f32 u u)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 8/3) u))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 u 8/3))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 512/27 (pow.f32 u 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 u 8/3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 u 8/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 u 8/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 u 8/3)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (cbrt.f32 (*.f32 u 8/3))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (sqrt.f32 (*.f32 u 8/3))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 512/27 (pow.f32 u 3))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 (log.f32 (*.f32 u 8/3)) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 (log.f32 (*.f32 u 8/3)) 3) 1/3))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 u 4/3) (*.f32 u (*.f32 u 8/3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 u (*.f32 u 8/3)) (*.f32 u 4/3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (*.f32 u (fma.f32 u 8/3 4/3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (*.f32 u 4/3) 1) (*.f32 (*.f32 u (*.f32 u 8/3)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (pow.f32 (cbrt.f32 (pow.f32 (exp.f32 u) (fma.f32 u 8/3 4/3))) 2)) (log.f32 (cbrt.f32 (pow.f32 (exp.f32 u) (fma.f32 u 8/3 4/3)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (pow.f32 (exp.f32 u) (fma.f32 u 8/3 4/3)))) (log.f32 (sqrt.f32 (pow.f32 (exp.f32 u) (fma.f32 u 8/3 4/3)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 u (fma.f32 u 8/3 4/3)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (*.f32 u 4/3) 3) (pow.f32 (*.f32 u (*.f32 u 8/3)) 3)) (+.f32 (pow.f32 (*.f32 u 4/3) 2) (-.f32 (pow.f32 (*.f32 u (*.f32 u 8/3)) 2) (*.f32 (*.f32 u 4/3) (*.f32 u (*.f32 u 8/3))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (*.f32 u 4/3) 2) (pow.f32 (*.f32 u (*.f32 u 8/3)) 2)) (-.f32 (*.f32 u 4/3) (*.f32 u (*.f32 u 8/3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (fma.f32 512/27 (pow.f32 u 3) 64/27) u) (fma.f32 (*.f32 u 8/3) (fma.f32 u 8/3 -4/3) 16/9))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 16/9 (*.f32 64/9 (*.f32 u u))) u) (+.f32 4/3 (*.f32 -8/3 u)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 u (fma.f32 512/27 (pow.f32 u 3) 64/27)) (fma.f32 (*.f32 u 8/3) (fma.f32 u 8/3 -4/3) 16/9))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 u (-.f32 16/9 (*.f32 64/9 (*.f32 u u)))) (+.f32 4/3 (*.f32 -8/3 u)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 u (fma.f32 u 8/3 4/3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 u (fma.f32 u 8/3 4/3)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 u (fma.f32 u 8/3 4/3)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 u (fma.f32 u 8/3 4/3))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 u (fma.f32 u 8/3 4/3))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (exp.f32 1) (log.f32 (*.f32 u (fma.f32 u 8/3 4/3))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (log.f32 (*.f32 u (fma.f32 u 8/3 4/3)))) 2)) (cbrt.f32 (log.f32 (*.f32 u (fma.f32 u 8/3 4/3)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (exp.f32 (sqrt.f32 (log.f32 (*.f32 u (fma.f32 u 8/3 4/3))))) (sqrt.f32 (log.f32 (*.f32 u (fma.f32 u 8/3 4/3)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 u (fma.f32 u 8/3 4/3)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 u) (fma.f32 u 8/3 4/3)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 u (fma.f32 u 8/3 4/3)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 u (fma.f32 u 8/3 4/3)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 u (fma.f32 u 8/3 4/3))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 u (fma.f32 u 8/3 4/3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 u (fma.f32 u 8/3 4/3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 u (fma.f32 u 8/3 4/3))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (pow.f32 (*.f32 u (fma.f32 u 8/3 4/3)) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (cbrt.f32 (*.f32 u (fma.f32 u 8/3 4/3)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (sqrt.f32 (*.f32 u (fma.f32 u 8/3 4/3)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 (log.f32 (*.f32 u (fma.f32 u 8/3 4/3))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (+.f32 (*.f32 (log.f32 u) 1) (log.f32 (fma.f32 u 8/3 4/3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (+.f32 (log.f32 u) (*.f32 (log.f32 (fma.f32 u 8/3 4/3)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (+.f32 (*.f32 (log.f32 u) 1) (*.f32 (log.f32 (fma.f32 u 8/3 4/3)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (+.f32 (*.f32 (log.f32 (fma.f32 u 8/3 4/3)) 1) (log.f32 u)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (+.f32 (log.f32 (fma.f32 u 8/3 4/3)) (*.f32 (log.f32 u) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (+.f32 (*.f32 (log.f32 (fma.f32 u 8/3 4/3)) 1) (*.f32 (log.f32 u) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u 4/3 (*.f32 u (*.f32 u 8/3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u (*.f32 u 8/3) (*.f32 u 4/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 4/3 u (*.f32 u (*.f32 u 8/3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 8/3 (*.f32 u u) (*.f32 u 4/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u 8/3) u (*.f32 u 4/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 u 4/3) (*.f32 u (*.f32 u 8/3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 u (*.f32 u 8/3)) (*.f32 u 4/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u u) 8/3 (*.f32 u 4/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (*.f32 64/9 (*.f32 u u))) (*.f32 (cbrt.f32 (*.f32 u 8/3)) u) (*.f32 u 4/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 u) 2) (*.f32 (cbrt.f32 u) (*.f32 u 8/3)) (*.f32 u 4/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 u) 2) (*.f32 (cbrt.f32 u) 4/3) (*.f32 u (*.f32 u 8/3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 u 8/3)) (*.f32 (sqrt.f32 (*.f32 u 8/3)) u) (*.f32 u 4/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 u) (*.f32 (sqrt.f32 u) (*.f32 u 8/3)) (*.f32 u 4/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 u) (*.f32 (sqrt.f32 u) 4/3) (*.f32 u (*.f32 u 8/3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u 4/3) 1 (*.f32 (*.f32 u (*.f32 u 8/3)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (*.f32 u 4/3)) 2) (cbrt.f32 (*.f32 u 4/3)) (*.f32 u (*.f32 u 8/3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (*.f32 u (*.f32 u 8/3))) 2) (cbrt.f32 (*.f32 u (*.f32 u 8/3))) (*.f32 u 4/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 u 4/3)) (sqrt.f32 (*.f32 u 4/3)) (*.f32 u (*.f32 u 8/3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 u (*.f32 u 8/3))) (sqrt.f32 (*.f32 u (*.f32 u 8/3))) (*.f32 u 4/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u 8/3) (pow.f32 (cbrt.f32 u) 2)) (cbrt.f32 u) (*.f32 u 4/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u 8/3) (sqrt.f32 u)) (sqrt.f32 u) (*.f32 u 4/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (cbrt.f32 (*.f32 64/9 (*.f32 u u)))) (cbrt.f32 (*.f32 u 8/3)) (*.f32 u 4/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (sqrt.f32 (*.f32 u 8/3))) (sqrt.f32 (*.f32 u 8/3)) (*.f32 u 4/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 4/3 (pow.f32 (cbrt.f32 u) 2)) (cbrt.f32 u) (*.f32 u (*.f32 u 8/3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 4/3 (sqrt.f32 u)) (sqrt.f32 u) (*.f32 u (*.f32 u 8/3)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (fma.f32 u 8/3 4/3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 16/9 (+.f32 4/3 (*.f32 -8/3 u))) (/.f32 (*.f32 64/9 (*.f32 u u)) (+.f32 4/3 (*.f32 -8/3 u))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (fma.f32 u 8/3 4/3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (fma.f32 u 8/3 4/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (fma.f32 u 8/3 4/3)) (cbrt.f32 (pow.f32 (fma.f32 u 8/3 4/3) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (pow.f32 (fma.f32 u 8/3 4/3) 2)) (cbrt.f32 (fma.f32 u 8/3 4/3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (fma.f32 u 8/3 4/3)) (sqrt.f32 (fma.f32 u 8/3 4/3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (fma.f32 512/27 (pow.f32 u 3) 64/27) (/.f32 1 (fma.f32 (*.f32 u 8/3) (fma.f32 u 8/3 -4/3) 16/9)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 16/9 (*.f32 64/9 (*.f32 u u))) (/.f32 1 (+.f32 4/3 (*.f32 -8/3 u))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (fma.f32 (*.f32 u 8/3) (fma.f32 u 8/3 -4/3) 16/9) (fma.f32 512/27 (pow.f32 u 3) 64/27)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (+.f32 4/3 (*.f32 -8/3 u)) (-.f32 16/9 (*.f32 64/9 (*.f32 u u)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (fma.f32 512/27 (pow.f32 u 3) 64/27) (fma.f32 (*.f32 u 8/3) (fma.f32 u 8/3 -4/3) 16/9))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (fma.f32 512/27 (pow.f32 u 3) 64/27) (fma.f32 64/9 (*.f32 u u) (-.f32 16/9 (*.f32 32/9 u))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 16/9 (*.f32 64/9 (*.f32 u u))) (+.f32 4/3 (*.f32 -8/3 u)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (fma.f32 512/27 (pow.f32 u 3) 64/27)) (neg.f32 (fma.f32 (*.f32 u 8/3) (fma.f32 u 8/3 -4/3) 16/9)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (-.f32 16/9 (*.f32 64/9 (*.f32 u u)))) (neg.f32 (+.f32 4/3 (*.f32 -8/3 u))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (fma.f32 64/9 (*.f32 u u) -16/9) (fma.f32 u 8/3 -4/3))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (fma.f32 u 8/3 4/3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (fma.f32 u 8/3 4/3) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (fma.f32 u 8/3 4/3) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (fma.f32 u 8/3 4/3)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (fma.f32 u 8/3 4/3)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (exp.f32 1) (log.f32 (fma.f32 u 8/3 4/3)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (fma.f32 (*.f32 u 8/3) (fma.f32 u 8/3 -4/3) 16/9) (fma.f32 512/27 (pow.f32 u 3) 64/27)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (+.f32 4/3 (*.f32 -8/3 u)) (-.f32 16/9 (*.f32 64/9 (*.f32 u u)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (log.f32 (fma.f32 u 8/3 4/3))) 2)) (cbrt.f32 (log.f32 (fma.f32 u 8/3 4/3))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (exp.f32 (sqrt.f32 (log.f32 (fma.f32 u 8/3 4/3)))) (sqrt.f32 (log.f32 (fma.f32 u 8/3 4/3))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (fma.f32 u 8/3 4/3) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (fma.f32 u 8/3 4/3)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (fma.f32 u 8/3 4/3))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (fma.f32 u 8/3 4/3) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (fma.f32 u 8/3 4/3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (fma.f32 u 8/3 4/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (fma.f32 u 8/3 4/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (fma.f32 u 8/3 4/3)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 3 (log.f32 (fma.f32 u 8/3 4/3))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (cbrt.f32 (fma.f32 u 8/3 4/3))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (sqrt.f32 (fma.f32 u 8/3 4/3))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 (log.f32 (fma.f32 u 8/3 4/3)) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u 8/3 4/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 8/3 u 4/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u 8/3) 1 4/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 u 8/3) 4/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (*.f32 u 8/3)) (cbrt.f32 (*.f32 64/9 (*.f32 u u))) 4/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (*.f32 64/9 (*.f32 u u))) (cbrt.f32 (*.f32 u 8/3)) 4/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 u) 2) (*.f32 (cbrt.f32 u) 8/3) 4/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 u 8/3)) (sqrt.f32 (*.f32 u 8/3)) 4/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 u) (*.f32 (sqrt.f32 u) 8/3) 4/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 8/3 (pow.f32 (cbrt.f32 u) 2)) (cbrt.f32 u) 4/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 8/3 (sqrt.f32 u)) (sqrt.f32 u) 4/3)))))

simplify189.0ms (2.1%)

Algorithm
egg-herbie
Rules
2020×unswap-sqr_binary32
1080×sqr-pow_binary32
633×fabs-mul_binary32
612×pow-sqr_binary32
610×cube-prod_binary32
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
016354
131336
252300
3103282
4266282
5810282
61251282
71714282
81822282
91955282
102127282
112370282
122683282
133055282
143514282
154095282
164799282
175657282
186081282
196395282
206703282
216783282
226819282
Stop Event
node limit
Counts
227 → 194
Calls
Call 1
Inputs
(*.f32 4 u)
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(*.f32 8 (pow.f32 u 2))
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(*.f32 8 (pow.f32 u 2))
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(*.f32 8/3 u)
(*.f32 8/3 u)
(*.f32 8/3 u)
(*.f32 8/3 u)
(*.f32 8/3 u)
(*.f32 8/3 u)
(*.f32 8/3 u)
(*.f32 8/3 u)
(*.f32 8/3 u)
(*.f32 8/3 u)
(*.f32 8/3 u)
(*.f32 8/3 u)
(*.f32 4/3 u)
(+.f32 (*.f32 8/3 (pow.f32 u 2)) (*.f32 4/3 u))
(+.f32 (*.f32 8/3 (pow.f32 u 2)) (*.f32 4/3 u))
(+.f32 (*.f32 8/3 (pow.f32 u 2)) (*.f32 4/3 u))
(*.f32 8/3 (pow.f32 u 2))
(+.f32 (*.f32 8/3 (pow.f32 u 2)) (*.f32 4/3 u))
(+.f32 (*.f32 8/3 (pow.f32 u 2)) (*.f32 4/3 u))
(+.f32 (*.f32 8/3 (pow.f32 u 2)) (*.f32 4/3 u))
(*.f32 8/3 (pow.f32 u 2))
(+.f32 (*.f32 8/3 (pow.f32 u 2)) (*.f32 4/3 u))
(+.f32 (*.f32 8/3 (pow.f32 u 2)) (*.f32 4/3 u))
(+.f32 (*.f32 8/3 (pow.f32 u 2)) (*.f32 4/3 u))
4/3
(+.f32 4/3 (*.f32 8/3 u))
(+.f32 4/3 (*.f32 8/3 u))
(+.f32 4/3 (*.f32 8/3 u))
(*.f32 8/3 u)
(+.f32 4/3 (*.f32 8/3 u))
(+.f32 4/3 (*.f32 8/3 u))
(+.f32 4/3 (*.f32 8/3 u))
(*.f32 8/3 u)
(+.f32 4/3 (*.f32 8/3 u))
(+.f32 4/3 (*.f32 8/3 u))
(+.f32 4/3 (*.f32 8/3 u))
Outputs
(*.f32 4 u)
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(fma.f32 8 (*.f32 u u) (*.f32 4 u))
(*.f32 u (+.f32 4 (*.f32 u 8)))
(*.f32 u (fma.f32 u 8 4))
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(fma.f32 8 (*.f32 u u) (*.f32 4 u))
(*.f32 u (+.f32 4 (*.f32 u 8)))
(*.f32 u (fma.f32 u 8 4))
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(fma.f32 8 (*.f32 u u) (*.f32 4 u))
(*.f32 u (+.f32 4 (*.f32 u 8)))
(*.f32 u (fma.f32 u 8 4))
(*.f32 8 (pow.f32 u 2))
(*.f32 8 (*.f32 u u))
(*.f32 u (*.f32 u 8))
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(fma.f32 8 (*.f32 u u) (*.f32 4 u))
(*.f32 u (+.f32 4 (*.f32 u 8)))
(*.f32 u (fma.f32 u 8 4))
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(fma.f32 8 (*.f32 u u) (*.f32 4 u))
(*.f32 u (+.f32 4 (*.f32 u 8)))
(*.f32 u (fma.f32 u 8 4))
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(fma.f32 8 (*.f32 u u) (*.f32 4 u))
(*.f32 u (+.f32 4 (*.f32 u 8)))
(*.f32 u (fma.f32 u 8 4))
(*.f32 8 (pow.f32 u 2))
(*.f32 8 (*.f32 u u))
(*.f32 u (*.f32 u 8))
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(fma.f32 8 (*.f32 u u) (*.f32 4 u))
(*.f32 u (+.f32 4 (*.f32 u 8)))
(*.f32 u (fma.f32 u 8 4))
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(fma.f32 8 (*.f32 u u) (*.f32 4 u))
(*.f32 u (+.f32 4 (*.f32 u 8)))
(*.f32 u (fma.f32 u 8 4))
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(fma.f32 8 (*.f32 u u) (*.f32 4 u))
(*.f32 u (+.f32 4 (*.f32 u 8)))
(*.f32 u (fma.f32 u 8 4))
(*.f32 8/3 u)
(*.f32 u 8/3)
(*.f32 8/3 u)
(*.f32 u 8/3)
(*.f32 8/3 u)
(*.f32 u 8/3)
(*.f32 8/3 u)
(*.f32 u 8/3)
(*.f32 8/3 u)
(*.f32 u 8/3)
(*.f32 8/3 u)
(*.f32 u 8/3)
(*.f32 8/3 u)
(*.f32 u 8/3)
(*.f32 8/3 u)
(*.f32 u 8/3)
(*.f32 8/3 u)
(*.f32 u 8/3)
(*.f32 8/3 u)
(*.f32 u 8/3)
(*.f32 8/3 u)
(*.f32 u 8/3)
(*.f32 8/3 u)
(*.f32 u 8/3)
(*.f32 4/3 u)
(*.f32 u 4/3)
(+.f32 (*.f32 8/3 (pow.f32 u 2)) (*.f32 4/3 u))
(fma.f32 8/3 (*.f32 u u) (*.f32 u 4/3))
(fma.f32 (*.f32 u u) 8/3 (*.f32 u 4/3))
(*.f32 u (fma.f32 u 8/3 4/3))
(+.f32 (*.f32 8/3 (pow.f32 u 2)) (*.f32 4/3 u))
(fma.f32 8/3 (*.f32 u u) (*.f32 u 4/3))
(fma.f32 (*.f32 u u) 8/3 (*.f32 u 4/3))
(*.f32 u (fma.f32 u 8/3 4/3))
(+.f32 (*.f32 8/3 (pow.f32 u 2)) (*.f32 4/3 u))
(fma.f32 8/3 (*.f32 u u) (*.f32 u 4/3))
(fma.f32 (*.f32 u u) 8/3 (*.f32 u 4/3))
(*.f32 u (fma.f32 u 8/3 4/3))
(*.f32 8/3 (pow.f32 u 2))
(*.f32 (*.f32 u u) 8/3)
(*.f32 u (*.f32 u 8/3))
(+.f32 (*.f32 8/3 (pow.f32 u 2)) (*.f32 4/3 u))
(fma.f32 8/3 (*.f32 u u) (*.f32 u 4/3))
(fma.f32 (*.f32 u u) 8/3 (*.f32 u 4/3))
(*.f32 u (fma.f32 u 8/3 4/3))
(+.f32 (*.f32 8/3 (pow.f32 u 2)) (*.f32 4/3 u))
(fma.f32 8/3 (*.f32 u u) (*.f32 u 4/3))
(fma.f32 (*.f32 u u) 8/3 (*.f32 u 4/3))
(*.f32 u (fma.f32 u 8/3 4/3))
(+.f32 (*.f32 8/3 (pow.f32 u 2)) (*.f32 4/3 u))
(fma.f32 8/3 (*.f32 u u) (*.f32 u 4/3))
(fma.f32 (*.f32 u u) 8/3 (*.f32 u 4/3))
(*.f32 u (fma.f32 u 8/3 4/3))
(*.f32 8/3 (pow.f32 u 2))
(*.f32 (*.f32 u u) 8/3)
(*.f32 u (*.f32 u 8/3))
(+.f32 (*.f32 8/3 (pow.f32 u 2)) (*.f32 4/3 u))
(fma.f32 8/3 (*.f32 u u) (*.f32 u 4/3))
(fma.f32 (*.f32 u u) 8/3 (*.f32 u 4/3))
(*.f32 u (fma.f32 u 8/3 4/3))
(+.f32 (*.f32 8/3 (pow.f32 u 2)) (*.f32 4/3 u))
(fma.f32 8/3 (*.f32 u u) (*.f32 u 4/3))
(fma.f32 (*.f32 u u) 8/3 (*.f32 u 4/3))
(*.f32 u (fma.f32 u 8/3 4/3))
(+.f32 (*.f32 8/3 (pow.f32 u 2)) (*.f32 4/3 u))
(fma.f32 8/3 (*.f32 u u) (*.f32 u 4/3))
(fma.f32 (*.f32 u u) 8/3 (*.f32 u 4/3))
(*.f32 u (fma.f32 u 8/3 4/3))
4/3
(+.f32 4/3 (*.f32 8/3 u))
(+.f32 (*.f32 u 8/3) 4/3)
(fma.f32 u 8/3 4/3)
(+.f32 4/3 (*.f32 8/3 u))
(+.f32 (*.f32 u 8/3) 4/3)
(fma.f32 u 8/3 4/3)
(+.f32 4/3 (*.f32 8/3 u))
(+.f32 (*.f32 u 8/3) 4/3)
(fma.f32 u 8/3 4/3)
(*.f32 8/3 u)
(*.f32 u 8/3)
(+.f32 4/3 (*.f32 8/3 u))
(+.f32 (*.f32 u 8/3) 4/3)
(fma.f32 u 8/3 4/3)
(+.f32 4/3 (*.f32 8/3 u))
(+.f32 (*.f32 u 8/3) 4/3)
(fma.f32 u 8/3 4/3)
(+.f32 4/3 (*.f32 8/3 u))
(+.f32 (*.f32 u 8/3) 4/3)
(fma.f32 u 8/3 4/3)
(*.f32 8/3 u)
(*.f32 u 8/3)
(+.f32 4/3 (*.f32 8/3 u))
(+.f32 (*.f32 u 8/3) 4/3)
(fma.f32 u 8/3 4/3)
(+.f32 4/3 (*.f32 8/3 u))
(+.f32 (*.f32 u 8/3) 4/3)
(fma.f32 u 8/3 4/3)
(+.f32 4/3 (*.f32 8/3 u))
(+.f32 (*.f32 u 8/3) 4/3)
(fma.f32 u 8/3 4/3)

localize73.0ms (0.8%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f32 4 (*.f32 s u))
0.2b
(*.f32 s (*.f32 u u))
0.2b
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (+.f32 0 (*.f32 s (*.f32 u u)))))
0.3b
(*.f32 8 (+.f32 0 (*.f32 s (*.f32 u u))))
Compiler

Compiled 54 to 23 computations (57.4% saved)

series4.0ms (0.1%)

Counts
3 → 72
Calls

18 calls:

TimeVariablePointExpression
0.0ms
s
@0
(*.f32 8 (+.f32 0 (*.f32 s (*.f32 u u))))
0.0ms
s
@inf
(*.f32 8 (+.f32 0 (*.f32 s (*.f32 u u))))
0.0ms
u
@inf
(*.f32 8 (+.f32 0 (*.f32 s (*.f32 u u))))
0.0ms
u
@0
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (+.f32 0 (*.f32 s (*.f32 u u)))))
0.0ms
s
@inf
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (+.f32 0 (*.f32 s (*.f32 u u)))))

rewrite79.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
591×log-prod_binary32
476×fma-def_binary32
405×pow-prod-down_binary32
295×pow2_binary32
244×pow-unpow_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01334
128734
2350634
Stop Event
node limit
Counts
3 → 167
Calls
Call 1
Inputs
(*.f32 8 (+.f32 0 (*.f32 s (*.f32 u u))))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (+.f32 0 (*.f32 s (*.f32 u u)))))
(*.f32 s (*.f32 u u))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (*.f32 8 (*.f32 s (*.f32 u u))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 8 (*.f32 s (*.f32 u u))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (pow.f32 (cbrt.f32 (pow.f32 (pow.f32 (exp.f32 u) s) (*.f32 u 8))) 2)) (log.f32 (cbrt.f32 (pow.f32 (pow.f32 (exp.f32 u) s) (*.f32 u 8)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (pow.f32 (pow.f32 (exp.f32 u) s) (*.f32 u 8)))) (log.f32 (sqrt.f32 (pow.f32 (pow.f32 (exp.f32 u) s) (*.f32 u 8)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 8 (*.f32 s (*.f32 u u))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 0 (*.f32 512 (pow.f32 (*.f32 u (sqrt.f32 s)) 6))) (+.f32 0 (-.f32 (*.f32 64 (pow.f32 (*.f32 u (sqrt.f32 s)) 4)) (*.f32 0 (*.f32 8 (*.f32 s (*.f32 u u)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 0 (*.f32 64 (pow.f32 (*.f32 u (sqrt.f32 s)) 4))) (-.f32 0 (*.f32 8 (*.f32 s (*.f32 u u)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (pow.f32 (*.f32 u (sqrt.f32 s)) 6) 8) (pow.f32 (*.f32 u (sqrt.f32 s)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (neg.f32 (pow.f32 (*.f32 u (sqrt.f32 s)) 4)) 8) (neg.f32 (*.f32 s (*.f32 u u))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 8 (pow.f32 (*.f32 u (sqrt.f32 s)) 6)) (pow.f32 (*.f32 u (sqrt.f32 s)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 8 (neg.f32 (pow.f32 (*.f32 u (sqrt.f32 s)) 4))) (neg.f32 (*.f32 s (*.f32 u u))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 8 (*.f32 s (*.f32 u u))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 64 (pow.f32 (*.f32 u (sqrt.f32 s)) 4)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (cbrt.f32 (*.f32 s (*.f32 u u))) 2) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (sqrt.f32 8) (*.f32 u (sqrt.f32 s))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 512 (pow.f32 (*.f32 u (sqrt.f32 s)) 6)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (*.f32 64 (pow.f32 (*.f32 u (sqrt.f32 s)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (pow.f32 (exp.f32 u) s) (*.f32 u 8)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 8 (*.f32 s (*.f32 u u))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 512 (pow.f32 (*.f32 u (sqrt.f32 s)) 6)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 8 (*.f32 s (*.f32 u u)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 8 (*.f32 s (*.f32 u u)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 8 (*.f32 s (*.f32 u u)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 8 (*.f32 s (*.f32 u u)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 8 (*.f32 s (*.f32 u u)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 s (*.f32 (*.f32 u u) 8) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u u) (*.f32 s 8) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 s (*.f32 u u)) 8 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 8 (*.f32 s (*.f32 u u))) 1 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 s u) (*.f32 u 8) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 8 (*.f32 s (*.f32 u u))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (cbrt.f32 (*.f32 s (*.f32 u u))) 2) (cbrt.f32 (*.f32 64 (pow.f32 (*.f32 u (sqrt.f32 s)) 4))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (*.f32 64 (pow.f32 (*.f32 u (sqrt.f32 s)) 4))) (*.f32 (cbrt.f32 (*.f32 s (*.f32 u u))) 2) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (pow.f32 (*.f32 u (sqrt.f32 s)) 4)) (*.f32 (cbrt.f32 (*.f32 s (*.f32 u u))) 8) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (sqrt.f32 8) (*.f32 u (sqrt.f32 s))) (*.f32 (sqrt.f32 8) (*.f32 u (sqrt.f32 s))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (sqrt.f32 s)) (*.f32 (*.f32 u (sqrt.f32 s)) 8) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 8 s) (*.f32 u u) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 8 (*.f32 u u)) s 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 8 (*.f32 s u)) u 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 8 (cbrt.f32 (pow.f32 (*.f32 u (sqrt.f32 s)) 4))) (cbrt.f32 (*.f32 s (*.f32 u u))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 8 (*.f32 u (sqrt.f32 s))) (*.f32 u (sqrt.f32 s)) 0)))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 (*.f32 (pow.f32 (*.f32 s u) 2) 16) (fma.f32 s (*.f32 u 4) (*.f32 -8 (*.f32 s (*.f32 u u))))) (/.f32 (*.f32 64 (pow.f32 (*.f32 u (sqrt.f32 s)) 4)) (fma.f32 s (*.f32 u 4) (*.f32 -8 (*.f32 s (*.f32 u u))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4)))) (pow.f32 (cbrt.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4)))) 2) (cbrt.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4)))) (sqrt.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (fma.f32 (pow.f32 (*.f32 s u) 3) 64 (*.f32 512 (pow.f32 (*.f32 u (sqrt.f32 s)) 6))) (/.f32 1 (fma.f32 (*.f32 8 (*.f32 s (*.f32 u u))) (-.f32 (*.f32 8 (*.f32 s (*.f32 u u))) (*.f32 s (*.f32 u 4))) (*.f32 (pow.f32 (*.f32 s u) 2) 16))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 (*.f32 (pow.f32 (*.f32 s u) 2) 16) (*.f32 64 (pow.f32 (*.f32 u (sqrt.f32 s)) 4))) (/.f32 1 (fma.f32 s (*.f32 u 4) (*.f32 -8 (*.f32 s (*.f32 u u))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (fma.f32 (*.f32 8 (*.f32 s (*.f32 u u))) (-.f32 (*.f32 8 (*.f32 s (*.f32 u u))) (*.f32 s (*.f32 u 4))) (*.f32 (pow.f32 (*.f32 s u) 2) 16)) (fma.f32 (pow.f32 (*.f32 s u) 3) 64 (*.f32 512 (pow.f32 (*.f32 u (sqrt.f32 s)) 6)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (fma.f32 s (*.f32 u 4) (*.f32 -8 (*.f32 s (*.f32 u u)))) (-.f32 (*.f32 (pow.f32 (*.f32 s u) 2) 16) (*.f32 64 (pow.f32 (*.f32 u (sqrt.f32 s)) 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (fma.f32 (pow.f32 (*.f32 s u) 3) 64 (*.f32 512 (pow.f32 (*.f32 u (sqrt.f32 s)) 6))) (fma.f32 (*.f32 8 (*.f32 s (*.f32 u u))) (-.f32 (*.f32 8 (*.f32 s (*.f32 u u))) (*.f32 s (*.f32 u 4))) (*.f32 (pow.f32 (*.f32 s u) 2) 16)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (fma.f32 (pow.f32 (*.f32 s u) 3) 64 (*.f32 512 (pow.f32 (*.f32 u (sqrt.f32 s)) 6))) (fma.f32 64 (pow.f32 (*.f32 u (sqrt.f32 s)) 4) (-.f32 (*.f32 (pow.f32 (*.f32 s u) 2) 16) (*.f32 (*.f32 8 (*.f32 s (*.f32 u u))) (*.f32 s (*.f32 u 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (*.f32 (pow.f32 (*.f32 s u) 2) 16) (*.f32 64 (pow.f32 (*.f32 u (sqrt.f32 s)) 4))) (fma.f32 s (*.f32 u 4) (*.f32 -8 (*.f32 s (*.f32 u u)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (fma.f32 (pow.f32 (*.f32 s u) 3) 64 (*.f32 512 (pow.f32 (*.f32 u (sqrt.f32 s)) 6)))) (neg.f32 (fma.f32 (*.f32 8 (*.f32 s (*.f32 u u))) (-.f32 (*.f32 8 (*.f32 s (*.f32 u u))) (*.f32 s (*.f32 u 4))) (*.f32 (pow.f32 (*.f32 s u) 2) 16))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (-.f32 (*.f32 (pow.f32 (*.f32 s u) 2) 16) (*.f32 64 (pow.f32 (*.f32 u (sqrt.f32 s)) 4)))) (neg.f32 (fma.f32 s (*.f32 u 4) (*.f32 -8 (*.f32 s (*.f32 u u))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (*.f32 64 (pow.f32 (*.f32 u (sqrt.f32 s)) 4)) (*.f32 (pow.f32 (*.f32 s u) 2) 16)) (-.f32 (*.f32 8 (*.f32 s (*.f32 u u))) (*.f32 s (*.f32 u 4))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (fma.f32 (*.f32 8 (*.f32 s (*.f32 u u))) (-.f32 (*.f32 8 (*.f32 s (*.f32 u u))) (*.f32 s (*.f32 u 4))) (*.f32 (pow.f32 (*.f32 s u) 2) 16)) (fma.f32 (pow.f32 (*.f32 s u) 3) 64 (*.f32 512 (pow.f32 (*.f32 u (sqrt.f32 s)) 6)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (fma.f32 s (*.f32 u 4) (*.f32 -8 (*.f32 s (*.f32 u u)))) (-.f32 (*.f32 (pow.f32 (*.f32 s u) 2) 16) (*.f32 64 (pow.f32 (*.f32 u (sqrt.f32 s)) 4)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (+.f32 1 (expm1.f32 (*.f32 8 (*.f32 s (*.f32 u u))))) (pow.f32 (pow.f32 (exp.f32 u) s) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (pow.f32 (pow.f32 (exp.f32 u) s) (*.f32 u 8)) (+.f32 1 (expm1.f32 (*.f32 s (*.f32 u 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (+.f32 1 (expm1.f32 (*.f32 8 (*.f32 s (*.f32 u u))))) (+.f32 1 (expm1.f32 (*.f32 s (*.f32 u 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (+.f32 1 (expm1.f32 (*.f32 s (*.f32 u 4)))) (pow.f32 (pow.f32 (exp.f32 u) s) (*.f32 u 8))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (pow.f32 (pow.f32 (exp.f32 u) s) 4) (+.f32 1 (expm1.f32 (*.f32 8 (*.f32 s (*.f32 u u)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (+.f32 1 (expm1.f32 (*.f32 s (*.f32 u 4)))) (+.f32 1 (expm1.f32 (*.f32 8 (*.f32 s (*.f32 u u)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 8 (*.f32 s (*.f32 u u)) (*.f32 s (*.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 s (*.f32 u 4) (*.f32 8 (*.f32 s (*.f32 u u))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 s (*.f32 (*.f32 u u) 8) (*.f32 s (*.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u (*.f32 s 4) (*.f32 8 (*.f32 s (*.f32 u u))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u u) (*.f32 s 8) (*.f32 s (*.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 s (*.f32 u u)) 8 (*.f32 s (*.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 8 (*.f32 s (*.f32 u u))) 1 (*.f32 s (*.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 4 (*.f32 s u) (*.f32 8 (*.f32 s (*.f32 u u))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 s u) 4 (*.f32 8 (*.f32 s (*.f32 u u))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 s u) (*.f32 u 8) (*.f32 s (*.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 s (*.f32 u 4)) 1 (*.f32 8 (*.f32 s (*.f32 u u))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 8 (*.f32 s (*.f32 u u))) (*.f32 s (*.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 s (*.f32 u 4)) (*.f32 8 (*.f32 s (*.f32 u u))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (pow.f32 (*.f32 s u) 2)) (*.f32 (cbrt.f32 (*.f32 s u)) 4) (*.f32 8 (*.f32 s (*.f32 u u))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (*.f32 s (*.f32 u 4))) (cbrt.f32 (*.f32 (pow.f32 (*.f32 s u) 2) 16)) (*.f32 8 (*.f32 s (*.f32 u u))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (*.f32 (pow.f32 (*.f32 s u) 2) 16)) (cbrt.f32 (*.f32 s (*.f32 u 4))) (*.f32 8 (*.f32 s (*.f32 u u))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (cbrt.f32 (*.f32 s (*.f32 u u))) 2) (cbrt.f32 (*.f32 64 (pow.f32 (*.f32 u (sqrt.f32 s)) 4))) (*.f32 s (*.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (*.f32 64 (pow.f32 (*.f32 u (sqrt.f32 s)) 4))) (*.f32 (cbrt.f32 (*.f32 s (*.f32 u u))) 2) (*.f32 s (*.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (pow.f32 (*.f32 u (sqrt.f32 s)) 4)) (*.f32 (cbrt.f32 (*.f32 s (*.f32 u u))) 8) (*.f32 s (*.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 s u)) (*.f32 (sqrt.f32 (*.f32 s u)) 4) (*.f32 8 (*.f32 s (*.f32 u u))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (sqrt.f32 (*.f32 s u)) 2) (*.f32 (sqrt.f32 (*.f32 s u)) 2) (*.f32 8 (*.f32 s (*.f32 u u))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (sqrt.f32 8) (*.f32 u (sqrt.f32 s))) (*.f32 (sqrt.f32 8) (*.f32 u (sqrt.f32 s))) (*.f32 s (*.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (sqrt.f32 s)) (*.f32 (*.f32 u (sqrt.f32 s)) 8) (*.f32 s (*.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 s 4) u (*.f32 8 (*.f32 s (*.f32 u u))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 4 u) s (*.f32 8 (*.f32 s (*.f32 u u))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 4 (cbrt.f32 (pow.f32 (*.f32 s u) 2))) (cbrt.f32 (*.f32 s u)) (*.f32 8 (*.f32 s (*.f32 u u))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 4 (sqrt.f32 (*.f32 s u))) (sqrt.f32 (*.f32 s u)) (*.f32 8 (*.f32 s (*.f32 u u))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 s 4) 1) u (*.f32 8 (*.f32 s (*.f32 u u))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 s 4) (pow.f32 (cbrt.f32 u) 2)) (cbrt.f32 u) (*.f32 8 (*.f32 s (*.f32 u u))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 s 4) (sqrt.f32 u)) (sqrt.f32 u) (*.f32 8 (*.f32 s (*.f32 u u))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 8 s) (*.f32 u u) (*.f32 s (*.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 8 (*.f32 u u)) s (*.f32 s (*.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 8 (*.f32 s u)) u (*.f32 s (*.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 8 (cbrt.f32 (pow.f32 (*.f32 u (sqrt.f32 s)) 4))) (cbrt.f32 (*.f32 s (*.f32 u u))) (*.f32 s (*.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 8 (*.f32 u (sqrt.f32 s))) (*.f32 u (sqrt.f32 s)) (*.f32 s (*.f32 u 4)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (*.f32 s (*.f32 u u)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 s (*.f32 u u)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (pow.f32 (cbrt.f32 (pow.f32 (pow.f32 (exp.f32 u) s) u)) 2)) (log.f32 (cbrt.f32 (pow.f32 (pow.f32 (exp.f32 u) s) u))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (pow.f32 (pow.f32 (exp.f32 u) s) u))) (log.f32 (sqrt.f32 (pow.f32 (pow.f32 (exp.f32 u) s) u))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (*.f32 s (*.f32 u u)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 s (*.f32 u u)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 0 (neg.f32 (*.f32 s (*.f32 u u)))) (/.f32 (pow.f32 (*.f32 u (sqrt.f32 s)) 4) (neg.f32 (*.f32 s (*.f32 u u)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (pow.f32 (*.f32 s (*.f32 u u)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (neg.f32 (*.f32 s (*.f32 u u))) (neg.f32 (pow.f32 (*.f32 u (sqrt.f32 s)) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (pow.f32 (*.f32 u (sqrt.f32 s)) 4) (*.f32 s (*.f32 u u)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (pow.f32 (*.f32 u (sqrt.f32 s)) 6) (pow.f32 (*.f32 u (sqrt.f32 s)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (pow.f32 (*.f32 u (sqrt.f32 s)) 4)) (neg.f32 (*.f32 s (*.f32 u u))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (pow.f32 (*.f32 u (sqrt.f32 s)) 6)) (neg.f32 (pow.f32 (*.f32 u (sqrt.f32 s)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (neg.f32 (pow.f32 (*.f32 u (sqrt.f32 s)) 4))) (neg.f32 (neg.f32 (*.f32 s (*.f32 u u)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 s (*.f32 u u)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 u (sqrt.f32 s)) 4) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 u (sqrt.f32 s)) 6) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 s (*.f32 u u))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 u (sqrt.f32 s)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 s (*.f32 u u)) -1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (neg.f32 (*.f32 s (*.f32 u u))) (neg.f32 (pow.f32 (*.f32 u (sqrt.f32 s)) 4))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (pow.f32 u 3) (pow.f32 (*.f32 s u) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (cbrt.f32 u) (cbrt.f32 (*.f32 s u))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (sqrt.f32 u) (sqrt.f32 (*.f32 s u))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 u (sqrt.f32 s)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (pow.f32 (exp.f32 u) s) u))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 s (*.f32 u u)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 u (sqrt.f32 s)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 s (*.f32 u u))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 s (*.f32 u u))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 s (*.f32 u u))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 s (*.f32 u u))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 s (*.f32 u u) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u (*.f32 s u) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u u) s 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 s (*.f32 u u)) 1 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 s u) u 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 s (*.f32 u u)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (*.f32 u (sqrt.f32 s)) 6) (pow.f32 (*.f32 s (*.f32 u u)) -2) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (pow.f32 (*.f32 s u) 2)) (*.f32 (cbrt.f32 (*.f32 s u)) u) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (cbrt.f32 u) u) (*.f32 (pow.f32 (cbrt.f32 u) 2) s) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (*.f32 s (*.f32 u u))) (cbrt.f32 (pow.f32 (*.f32 u (sqrt.f32 s)) 4)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (pow.f32 (*.f32 u (sqrt.f32 s)) 4)) (cbrt.f32 (*.f32 s (*.f32 u u))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (*.f32 s s)) (*.f32 (cbrt.f32 s) (*.f32 u u)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 s u)) (*.f32 (sqrt.f32 (*.f32 s u)) u) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (sqrt.f32 s)) (*.f32 u (sqrt.f32 s)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 s) (*.f32 (sqrt.f32 s) (*.f32 u u)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (neg.f32 (pow.f32 (*.f32 u (sqrt.f32 s)) 4)) (/.f32 1 (neg.f32 (*.f32 s (*.f32 u u)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 s (*.f32 (cbrt.f32 u) u)) (pow.f32 (cbrt.f32 u) 2) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (*.f32 u (cbrt.f32 s)) 2) (cbrt.f32 s) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u u) (sqrt.f32 s)) (sqrt.f32 s) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 s u) (pow.f32 (cbrt.f32 u) 2)) (cbrt.f32 u) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 s u) (sqrt.f32 u)) (sqrt.f32 u) 0)))))

simplify104.0ms (1.2%)

Algorithm
egg-herbie
Rules
1232×fma-neg_binary32
592×unsub-neg_binary32
472×unswap-sqr_binary32
460×cancel-sign-sub-inv_binary32
395×distribute-rgt-neg-in_binary32
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
024729
165729
2167708
3445666
41341666
52898666
64924666
76610666
Stop Event
node limit
Counts
239 → 177
Calls
Call 1
Inputs
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 s (+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u)))
(*.f32 s (+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u)))
(*.f32 s (+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u)))
(*.f32 s (+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u)))
(*.f32 s (+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u)))
(*.f32 s (+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u)))
(*.f32 s (+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u)))
(*.f32 s (+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u)))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 -8 (pow.f32 u 2)))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 -8 (pow.f32 u 2)))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 -8 (pow.f32 u 2)))))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 -8 (pow.f32 u 2)))))
(*.f32 4 (*.f32 s u))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(*.f32 s (pow.f32 u 2))
(*.f32 s (pow.f32 u 2))
(*.f32 s (pow.f32 u 2))
(*.f32 s (pow.f32 u 2))
(*.f32 s (pow.f32 u 2))
(*.f32 s (pow.f32 u 2))
(*.f32 s (pow.f32 u 2))
(*.f32 s (pow.f32 u 2))
(*.f32 s (pow.f32 u 2))
(*.f32 s (pow.f32 u 2))
(*.f32 s (pow.f32 u 2))
(*.f32 s (pow.f32 u 2))
(*.f32 s (pow.f32 u 2))
(*.f32 s (pow.f32 u 2))
(*.f32 s (pow.f32 u 2))
(*.f32 s (pow.f32 u 2))
(*.f32 s (pow.f32 u 2))
(*.f32 s (pow.f32 u 2))
(*.f32 s (pow.f32 u 2))
(*.f32 s (pow.f32 u 2))
(*.f32 s (pow.f32 u 2))
(*.f32 s (pow.f32 u 2))
(*.f32 s (pow.f32 u 2))
(*.f32 s (pow.f32 u 2))
Outputs
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (*.f32 u u)))
(*.f32 u (*.f32 8 (*.f32 s u)))
(*.f32 s (*.f32 8 (*.f32 u u)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (*.f32 u u)))
(*.f32 u (*.f32 8 (*.f32 s u)))
(*.f32 s (*.f32 8 (*.f32 u u)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (*.f32 u u)))
(*.f32 u (*.f32 8 (*.f32 s u)))
(*.f32 s (*.f32 8 (*.f32 u u)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (*.f32 u u)))
(*.f32 u (*.f32 8 (*.f32 s u)))
(*.f32 s (*.f32 8 (*.f32 u u)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (*.f32 u u)))
(*.f32 u (*.f32 8 (*.f32 s u)))
(*.f32 s (*.f32 8 (*.f32 u u)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (*.f32 u u)))
(*.f32 u (*.f32 8 (*.f32 s u)))
(*.f32 s (*.f32 8 (*.f32 u u)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (*.f32 u u)))
(*.f32 u (*.f32 8 (*.f32 s u)))
(*.f32 s (*.f32 8 (*.f32 u u)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (*.f32 u u)))
(*.f32 u (*.f32 8 (*.f32 s u)))
(*.f32 s (*.f32 8 (*.f32 u u)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (*.f32 u u)))
(*.f32 u (*.f32 8 (*.f32 s u)))
(*.f32 s (*.f32 8 (*.f32 u u)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (*.f32 u u)))
(*.f32 u (*.f32 8 (*.f32 s u)))
(*.f32 s (*.f32 8 (*.f32 u u)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (*.f32 u u)))
(*.f32 u (*.f32 8 (*.f32 s u)))
(*.f32 s (*.f32 8 (*.f32 u u)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (*.f32 u u)))
(*.f32 u (*.f32 8 (*.f32 s u)))
(*.f32 s (*.f32 8 (*.f32 u u)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (*.f32 u u)))
(*.f32 u (*.f32 8 (*.f32 s u)))
(*.f32 s (*.f32 8 (*.f32 u u)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (*.f32 u u)))
(*.f32 u (*.f32 8 (*.f32 s u)))
(*.f32 s (*.f32 8 (*.f32 u u)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (*.f32 u u)))
(*.f32 u (*.f32 8 (*.f32 s u)))
(*.f32 s (*.f32 8 (*.f32 u u)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (*.f32 u u)))
(*.f32 u (*.f32 8 (*.f32 s u)))
(*.f32 s (*.f32 8 (*.f32 u u)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (*.f32 u u)))
(*.f32 u (*.f32 8 (*.f32 s u)))
(*.f32 s (*.f32 8 (*.f32 u u)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (*.f32 u u)))
(*.f32 u (*.f32 8 (*.f32 s u)))
(*.f32 s (*.f32 8 (*.f32 u u)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (*.f32 u u)))
(*.f32 u (*.f32 8 (*.f32 s u)))
(*.f32 s (*.f32 8 (*.f32 u u)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (*.f32 u u)))
(*.f32 u (*.f32 8 (*.f32 s u)))
(*.f32 s (*.f32 8 (*.f32 u u)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (*.f32 u u)))
(*.f32 u (*.f32 8 (*.f32 s u)))
(*.f32 s (*.f32 8 (*.f32 u u)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (*.f32 u u)))
(*.f32 u (*.f32 8 (*.f32 s u)))
(*.f32 s (*.f32 8 (*.f32 u u)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (*.f32 u u)))
(*.f32 u (*.f32 8 (*.f32 s u)))
(*.f32 s (*.f32 8 (*.f32 u u)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (*.f32 u u)))
(*.f32 u (*.f32 8 (*.f32 s u)))
(*.f32 s (*.f32 8 (*.f32 u u)))
(*.f32 s (+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u)))
(*.f32 s (fma.f32 8 (*.f32 u u) (*.f32 u 4)))
(*.f32 s (*.f32 u (+.f32 (*.f32 8 u) 4)))
(*.f32 s (*.f32 u (fma.f32 8 u 4)))
(*.f32 s (+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u)))
(*.f32 s (fma.f32 8 (*.f32 u u) (*.f32 u 4)))
(*.f32 s (*.f32 u (+.f32 (*.f32 8 u) 4)))
(*.f32 s (*.f32 u (fma.f32 8 u 4)))
(*.f32 s (+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u)))
(*.f32 s (fma.f32 8 (*.f32 u u) (*.f32 u 4)))
(*.f32 s (*.f32 u (+.f32 (*.f32 8 u) 4)))
(*.f32 s (*.f32 u (fma.f32 8 u 4)))
(*.f32 s (+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u)))
(*.f32 s (fma.f32 8 (*.f32 u u) (*.f32 u 4)))
(*.f32 s (*.f32 u (+.f32 (*.f32 8 u) 4)))
(*.f32 s (*.f32 u (fma.f32 8 u 4)))
(*.f32 s (+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u)))
(*.f32 s (fma.f32 8 (*.f32 u u) (*.f32 u 4)))
(*.f32 s (*.f32 u (+.f32 (*.f32 8 u) 4)))
(*.f32 s (*.f32 u (fma.f32 8 u 4)))
(*.f32 s (+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u)))
(*.f32 s (fma.f32 8 (*.f32 u u) (*.f32 u 4)))
(*.f32 s (*.f32 u (+.f32 (*.f32 8 u) 4)))
(*.f32 s (*.f32 u (fma.f32 8 u 4)))
(*.f32 s (+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u)))
(*.f32 s (fma.f32 8 (*.f32 u u) (*.f32 u 4)))
(*.f32 s (*.f32 u (+.f32 (*.f32 8 u) 4)))
(*.f32 s (*.f32 u (fma.f32 8 u 4)))
(*.f32 s (+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u)))
(*.f32 s (fma.f32 8 (*.f32 u u) (*.f32 u 4)))
(*.f32 s (*.f32 u (+.f32 (*.f32 8 u) 4)))
(*.f32 s (*.f32 u (fma.f32 8 u 4)))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 -8 (pow.f32 u 2)))))
(*.f32 s (fma.f32 8 (*.f32 u u) (*.f32 u 4)))
(*.f32 s (*.f32 u (+.f32 (*.f32 8 u) 4)))
(*.f32 s (*.f32 u (fma.f32 8 u 4)))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 -8 (pow.f32 u 2)))))
(*.f32 s (fma.f32 8 (*.f32 u u) (*.f32 u 4)))
(*.f32 s (*.f32 u (+.f32 (*.f32 8 u) 4)))
(*.f32 s (*.f32 u (fma.f32 8 u 4)))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 -8 (pow.f32 u 2)))))
(*.f32 s (fma.f32 8 (*.f32 u u) (*.f32 u 4)))
(*.f32 s (*.f32 u (+.f32 (*.f32 8 u) 4)))
(*.f32 s (*.f32 u (fma.f32 8 u 4)))
(*.f32 -1 (*.f32 s (+.f32 (*.f32 -4 u) (*.f32 -8 (pow.f32 u 2)))))
(*.f32 s (fma.f32 8 (*.f32 u u) (*.f32 u 4)))
(*.f32 s (*.f32 u (+.f32 (*.f32 8 u) 4)))
(*.f32 s (*.f32 u (fma.f32 8 u 4)))
(*.f32 4 (*.f32 s u))
(*.f32 (*.f32 4 s) u)
(*.f32 s (*.f32 u 4))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(*.f32 s (fma.f32 8 (*.f32 u u) (*.f32 u 4)))
(*.f32 s (*.f32 u (+.f32 (*.f32 8 u) 4)))
(*.f32 s (*.f32 u (fma.f32 8 u 4)))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(*.f32 s (fma.f32 8 (*.f32 u u) (*.f32 u 4)))
(*.f32 s (*.f32 u (+.f32 (*.f32 8 u) 4)))
(*.f32 s (*.f32 u (fma.f32 8 u 4)))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(*.f32 s (fma.f32 8 (*.f32 u u) (*.f32 u 4)))
(*.f32 s (*.f32 u (+.f32 (*.f32 8 u) 4)))
(*.f32 s (*.f32 u (fma.f32 8 u 4)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (*.f32 u u)))
(*.f32 u (*.f32 8 (*.f32 s u)))
(*.f32 s (*.f32 8 (*.f32 u u)))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(*.f32 s (fma.f32 8 (*.f32 u u) (*.f32 u 4)))
(*.f32 s (*.f32 u (+.f32 (*.f32 8 u) 4)))
(*.f32 s (*.f32 u (fma.f32 8 u 4)))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(*.f32 s (fma.f32 8 (*.f32 u u) (*.f32 u 4)))
(*.f32 s (*.f32 u (+.f32 (*.f32 8 u) 4)))
(*.f32 s (*.f32 u (fma.f32 8 u 4)))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(*.f32 s (fma.f32 8 (*.f32 u u) (*.f32 u 4)))
(*.f32 s (*.f32 u (+.f32 (*.f32 8 u) 4)))
(*.f32 s (*.f32 u (fma.f32 8 u 4)))
(*.f32 8 (*.f32 s (pow.f32 u 2)))
(*.f32 8 (*.f32 s (*.f32 u u)))
(*.f32 u (*.f32 8 (*.f32 s u)))
(*.f32 s (*.f32 8 (*.f32 u u)))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(*.f32 s (fma.f32 8 (*.f32 u u) (*.f32 u 4)))
(*.f32 s (*.f32 u (+.f32 (*.f32 8 u) 4)))
(*.f32 s (*.f32 u (fma.f32 8 u 4)))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(*.f32 s (fma.f32 8 (*.f32 u u) (*.f32 u 4)))
(*.f32 s (*.f32 u (+.f32 (*.f32 8 u) 4)))
(*.f32 s (*.f32 u (fma.f32 8 u 4)))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(*.f32 s (fma.f32 8 (*.f32 u u) (*.f32 u 4)))
(*.f32 s (*.f32 u (+.f32 (*.f32 8 u) 4)))
(*.f32 s (*.f32 u (fma.f32 8 u 4)))
(*.f32 s (pow.f32 u 2))
(*.f32 s (*.f32 u u))
(*.f32 s (pow.f32 u 2))
(*.f32 s (*.f32 u u))
(*.f32 s (pow.f32 u 2))
(*.f32 s (*.f32 u u))
(*.f32 s (pow.f32 u 2))
(*.f32 s (*.f32 u u))
(*.f32 s (pow.f32 u 2))
(*.f32 s (*.f32 u u))
(*.f32 s (pow.f32 u 2))
(*.f32 s (*.f32 u u))
(*.f32 s (pow.f32 u 2))
(*.f32 s (*.f32 u u))
(*.f32 s (pow.f32 u 2))
(*.f32 s (*.f32 u u))
(*.f32 s (pow.f32 u 2))
(*.f32 s (*.f32 u u))
(*.f32 s (pow.f32 u 2))
(*.f32 s (*.f32 u u))
(*.f32 s (pow.f32 u 2))
(*.f32 s (*.f32 u u))
(*.f32 s (pow.f32 u 2))
(*.f32 s (*.f32 u u))
(*.f32 s (pow.f32 u 2))
(*.f32 s (*.f32 u u))
(*.f32 s (pow.f32 u 2))
(*.f32 s (*.f32 u u))
(*.f32 s (pow.f32 u 2))
(*.f32 s (*.f32 u u))
(*.f32 s (pow.f32 u 2))
(*.f32 s (*.f32 u u))
(*.f32 s (pow.f32 u 2))
(*.f32 s (*.f32 u u))
(*.f32 s (pow.f32 u 2))
(*.f32 s (*.f32 u u))
(*.f32 s (pow.f32 u 2))
(*.f32 s (*.f32 u u))
(*.f32 s (pow.f32 u 2))
(*.f32 s (*.f32 u u))
(*.f32 s (pow.f32 u 2))
(*.f32 s (*.f32 u u))
(*.f32 s (pow.f32 u 2))
(*.f32 s (*.f32 u u))
(*.f32 s (pow.f32 u 2))
(*.f32 s (*.f32 u u))
(*.f32 s (pow.f32 u 2))
(*.f32 s (*.f32 u u))

localize69.0ms (0.8%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f32 s (+.f32 (*.f32 (pow.f32 u 3) (+.f32 (*.f32 64 u) 64/3)) (*.f32 u (+.f32 4 (*.f32 u 8)))))
0.2b
(+.f32 (*.f32 64 u) 64/3)
0.3b
(*.f32 u (+.f32 4 (*.f32 u 8)))
0.4b
(*.f32 (pow.f32 u 3) (+.f32 (*.f32 64 u) 64/3))
Compiler

Compiled 80 to 60 computations (25% saved)

series9.0ms (0.1%)

Counts
4 → 57
Calls

15 calls:

TimeVariablePointExpression
2.0ms
s
@0
(*.f32 s (+.f32 (*.f32 (pow.f32 u 3) (+.f32 (*.f32 64 u) 64/3)) (*.f32 u (+.f32 4 (*.f32 u 8)))))
1.0ms
u
@-inf
(+.f32 (*.f32 64 u) 64/3)
1.0ms
u
@0
(*.f32 (pow.f32 u 3) (+.f32 (*.f32 64 u) 64/3))
1.0ms
u
@-inf
(*.f32 (pow.f32 u 3) (+.f32 (*.f32 64 u) 64/3))
1.0ms
s
@inf
(*.f32 s (+.f32 (*.f32 (pow.f32 u 3) (+.f32 (*.f32 64 u) 64/3)) (*.f32 u (+.f32 4 (*.f32 u 8)))))

rewrite104.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
787×fma-def_binary32
376×fma-neg_binary32
320×expm1-udef_binary32
320×log1p-udef_binary32
246×log-pow_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01750
139546
2536246
Stop Event
node limit
Counts
4 → 210
Calls
Call 1
Inputs
(*.f32 (pow.f32 u 3) (+.f32 (*.f32 64 u) 64/3))
(*.f32 u (+.f32 4 (*.f32 u 8)))
(+.f32 (*.f32 64 u) 64/3)
(*.f32 s (+.f32 (*.f32 (pow.f32 u 3) (+.f32 (*.f32 64 u) 64/3)) (*.f32 u (+.f32 4 (*.f32 u 8)))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 u (*.f32 64 (pow.f32 u 3))) (*.f32 (pow.f32 u 3) 64/3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (pow.f32 u 3) 64/3) (*.f32 u (*.f32 64 (pow.f32 u 3))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (*.f32 u (*.f32 64 (pow.f32 u 3))) 1) (*.f32 (*.f32 (pow.f32 u 3) 64/3) 1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (*.f32 u (*.f32 64 (pow.f32 u 3))) 3) (pow.f32 (*.f32 (pow.f32 u 3) 64/3) 3)) (fma.f32 (*.f32 u (*.f32 64 (pow.f32 u 3))) (*.f32 u (*.f32 64 (pow.f32 u 3))) (-.f32 (*.f32 (*.f32 (pow.f32 u 3) 64/3) (*.f32 (pow.f32 u 3) 64/3)) (*.f32 (*.f32 u (*.f32 64 (pow.f32 u 3))) (*.f32 (pow.f32 u 3) 64/3)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (*.f32 (*.f32 u (*.f32 64 (pow.f32 u 3))) (*.f32 u (*.f32 64 (pow.f32 u 3)))) (*.f32 (*.f32 (pow.f32 u 3) 64/3) (*.f32 (pow.f32 u 3) 64/3))) (-.f32 (*.f32 u (*.f32 64 (pow.f32 u 3))) (*.f32 (pow.f32 u 3) 64/3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (fma.f32 (pow.f32 u 3) 262144 262144/27) (pow.f32 u 3)) (-.f32 (fma.f32 4096 (*.f32 u u) 4096/9) (*.f32 u 4096/3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (fma.f32 4096 (*.f32 u u) -4096/9) (pow.f32 u 3)) (fma.f32 u 64 -64/3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (pow.f32 u 3) (fma.f32 (pow.f32 u 3) 262144 262144/27)) (-.f32 (fma.f32 4096 (*.f32 u u) 4096/9) (*.f32 u 4096/3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (pow.f32 u 3) (fma.f32 4096 (*.f32 u u) -4096/9)) (fma.f32 u 64 -64/3))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 u (cbrt.f32 (fma.f32 u 64 64/3))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (sqrt.f32 (fma.f32 u 64 64/3)) (pow.f32 u 3/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (*.f32 (pow.f32 (fma.f32 u 64 64/3) 2) (pow.f32 u 6)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 (fma.f32 u 64 64/3)) (pow.f32 u 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (exp.f32 (*.f32 (pow.f32 u 3) 64/3)) (exp.f32 (*.f32 u (*.f32 64 (pow.f32 u 3))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u (*.f32 64 (pow.f32 u 3)) (*.f32 (pow.f32 u 3) 64/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u (*.f32 (*.f32 u u) (*.f32 u 64)) (*.f32 (pow.f32 u 3) 64/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u (*.f32 (*.f32 u u) 64/3) (*.f32 u (*.f32 64 (pow.f32 u 3))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 u 3) (*.f32 u 64) (*.f32 (pow.f32 u 3) 64/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 u 3) 64/3 (*.f32 u (*.f32 64 (pow.f32 u 3))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 64 (*.f32 u (pow.f32 u 3)) (*.f32 (pow.f32 u 3) 64/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u 64) (pow.f32 u 3) (*.f32 (pow.f32 u 3) 64/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 64/3 (pow.f32 u 3) (*.f32 u (*.f32 64 (pow.f32 u 3))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 u (*.f32 64 (pow.f32 u 3))) (*.f32 (pow.f32 u 3) 64/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 (pow.f32 u 3) 64/3) (*.f32 u (*.f32 64 (pow.f32 u 3))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u u) (*.f32 u (*.f32 u 64)) (*.f32 (pow.f32 u 3) 64/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u u) (*.f32 u 64/3) (*.f32 u (*.f32 64 (pow.f32 u 3))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (*.f32 4 (cbrt.f32 u)) 2) (*.f32 (*.f32 4 (cbrt.f32 u)) (pow.f32 u 3)) (*.f32 (pow.f32 u 3) 64/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 8 (sqrt.f32 u)) (*.f32 (*.f32 8 (sqrt.f32 u)) (pow.f32 u 3)) (*.f32 (pow.f32 u 3) 64/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 u 3/2) (*.f32 (pow.f32 u 3/2) (*.f32 u 64)) (*.f32 (pow.f32 u 3) 64/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 u 3/2) (*.f32 (pow.f32 u 3/2) 64/3) (*.f32 u (*.f32 64 (pow.f32 u 3))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (*.f32 64 (pow.f32 u 3))) 1 (*.f32 (*.f32 (pow.f32 u 3) 64/3) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (cbrt.f32 (*.f32 u (*.f32 64 (pow.f32 u 3)))) (cbrt.f32 (*.f32 u (*.f32 64 (pow.f32 u 3))))) (cbrt.f32 (*.f32 u (*.f32 64 (pow.f32 u 3)))) (*.f32 (pow.f32 u 3) 64/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (cbrt.f32 (*.f32 (pow.f32 u 3) 64/3)) (cbrt.f32 (*.f32 (pow.f32 u 3) 64/3))) (cbrt.f32 (*.f32 (pow.f32 u 3) 64/3)) (*.f32 u (*.f32 64 (pow.f32 u 3))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 u (*.f32 64 (pow.f32 u 3)))) (sqrt.f32 (*.f32 u (*.f32 64 (pow.f32 u 3)))) (*.f32 (pow.f32 u 3) 64/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 (pow.f32 u 3) 64/3)) (sqrt.f32 (*.f32 (pow.f32 u 3) 64/3)) (*.f32 u (*.f32 64 (pow.f32 u 3))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 8 (sqrt.f32 u)) (pow.f32 u 3/2)) (*.f32 (*.f32 8 (sqrt.f32 u)) (pow.f32 u 3/2)) (*.f32 (pow.f32 u 3) 64/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (pow.f32 u 3/2) (*.f32 8 (sqrt.f32 u))) (*.f32 (pow.f32 u 3/2) (*.f32 8 (sqrt.f32 u))) (*.f32 (pow.f32 u 3) 64/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u 64) u) (*.f32 u u) (*.f32 (pow.f32 u 3) 64/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u 64) (*.f32 u u)) u (*.f32 (pow.f32 u 3) 64/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u 64) (pow.f32 u 3/2)) (pow.f32 u 3/2) (*.f32 (pow.f32 u 3) 64/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (pow.f32 u 3) u) 64 (*.f32 (pow.f32 u 3) 64/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 64/3 u) (*.f32 u u) (*.f32 u (*.f32 64 (pow.f32 u 3))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 64/3 (*.f32 u u)) u (*.f32 u (*.f32 64 (pow.f32 u 3))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 64/3 (pow.f32 u 3/2)) (pow.f32 u 3/2) (*.f32 u (*.f32 64 (pow.f32 u 3))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (pow.f32 u 3) 64) u (*.f32 (pow.f32 u 3) 64/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (pow.f32 u 3) (pow.f32 (*.f32 4 (cbrt.f32 u)) 2)) (*.f32 4 (cbrt.f32 u)) (*.f32 (pow.f32 u 3) 64/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (pow.f32 u 3) (*.f32 8 (sqrt.f32 u))) (*.f32 8 (sqrt.f32 u)) (*.f32 (pow.f32 u 3) 64/3))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 u 4) (*.f32 u (*.f32 u 8)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 u (*.f32 u 8)) (*.f32 u 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (*.f32 u 4) 1) (*.f32 (*.f32 u (*.f32 u 8)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 u (fma.f32 u 8 4)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (*.f32 u 4) 3) (pow.f32 (*.f32 u (*.f32 u 8)) 3)) (fma.f32 (*.f32 u 4) (*.f32 u 4) (-.f32 (*.f32 (*.f32 u (*.f32 u 8)) (*.f32 u (*.f32 u 8))) (*.f32 (*.f32 u 4) (*.f32 u (*.f32 u 8))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (*.f32 (*.f32 u 4) (*.f32 u 4)) (*.f32 (*.f32 u (*.f32 u 8)) (*.f32 u (*.f32 u 8)))) (-.f32 (*.f32 u 4) (*.f32 u (*.f32 u 8))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (fma.f32 (pow.f32 u 3) 512 64) u) (fma.f32 (*.f32 u 8) (fma.f32 u 8 -4) 16))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 16 (*.f32 64 (*.f32 u u))) u) (+.f32 4 (*.f32 -8 u)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 u (fma.f32 (pow.f32 u 3) 512 64)) (fma.f32 (*.f32 u 8) (fma.f32 u 8 -4) 16))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 u (-.f32 16 (*.f32 64 (*.f32 u u)))) (+.f32 4 (*.f32 -8 u)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 u (fma.f32 u 8 4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 u (fma.f32 u 8 4))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 u (fma.f32 u 8 4))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 u (fma.f32 u 8 4)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 u (fma.f32 u 8 4)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 u) (fma.f32 u 8 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 u (fma.f32 u 8 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (exp.f32 (*.f32 u (*.f32 u 8))) (exp.f32 (*.f32 u 4))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 u (fma.f32 u 8 4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 u (fma.f32 u 8 4))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 u (fma.f32 u 8 4))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 u (fma.f32 u 8 4))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 u (fma.f32 u 8 4))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u 4 (*.f32 u (*.f32 u 8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u (*.f32 u 8) (*.f32 u 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 4 u (*.f32 u (*.f32 u 8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 8 (*.f32 u u) (*.f32 u 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u 8) u (*.f32 u 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 u 4) (*.f32 u (*.f32 u 8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 u (*.f32 u 8)) (*.f32 u 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u u) 8 (*.f32 u 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (*.f32 (cbrt.f32 u) 2) 2) (*.f32 (*.f32 (cbrt.f32 u) 2) u) (*.f32 u 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 u) 2) (*.f32 4 (cbrt.f32 u)) (*.f32 u (*.f32 u 8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 u) 2) (*.f32 (cbrt.f32 u) (*.f32 u 8)) (*.f32 u 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 u 8)) (*.f32 (sqrt.f32 (*.f32 u 8)) u) (*.f32 u 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 u) (*.f32 (sqrt.f32 u) 4) (*.f32 u (*.f32 u 8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 u) (*.f32 (sqrt.f32 u) (*.f32 u 8)) (*.f32 u 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u 4) 1 (*.f32 (*.f32 u (*.f32 u 8)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (cbrt.f32 (*.f32 u (*.f32 u 8))) (cbrt.f32 (*.f32 u (*.f32 u 8)))) (cbrt.f32 (*.f32 u (*.f32 u 8))) (*.f32 u 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (cbrt.f32 (*.f32 u 4)) (cbrt.f32 (*.f32 u 4))) (cbrt.f32 (*.f32 u 4)) (*.f32 u (*.f32 u 8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 u (*.f32 u 8))) (sqrt.f32 (*.f32 u (*.f32 u 8))) (*.f32 u 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 u 4)) (sqrt.f32 (*.f32 u 4)) (*.f32 u (*.f32 u 8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (sqrt.f32 (*.f32 u 8)) (sqrt.f32 u)) (*.f32 (sqrt.f32 (*.f32 u 8)) (sqrt.f32 u)) (*.f32 u 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (sqrt.f32 u) (sqrt.f32 (*.f32 u 8))) (*.f32 (sqrt.f32 u) (sqrt.f32 (*.f32 u 8))) (*.f32 u 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 4 (pow.f32 (cbrt.f32 u) 2)) (cbrt.f32 u) (*.f32 u (*.f32 u 8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 4 (sqrt.f32 u)) (sqrt.f32 u) (*.f32 u (*.f32 u 8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u 8) (pow.f32 (cbrt.f32 u) 2)) (cbrt.f32 u) (*.f32 u 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u 8) (sqrt.f32 u)) (sqrt.f32 u) (*.f32 u 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (pow.f32 (*.f32 (cbrt.f32 u) 2) 2)) (*.f32 (cbrt.f32 u) 2) (*.f32 u 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (sqrt.f32 (*.f32 u 8))) (sqrt.f32 (*.f32 u 8)) (*.f32 u 4))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (fma.f32 u 64 64/3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 (*.f32 4096 (*.f32 u u)) (fma.f32 u 64 -64/3)) (/.f32 4096/9 (fma.f32 u 64 -64/3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (fma.f32 u 64 64/3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (fma.f32 u 64 64/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (fma.f32 u 64 64/3)) (pow.f32 (cbrt.f32 (fma.f32 u 64 64/3)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (fma.f32 u 64 64/3)) 2) (cbrt.f32 (fma.f32 u 64 64/3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (fma.f32 u 64 64/3)) (sqrt.f32 (fma.f32 u 64 64/3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (fma.f32 (pow.f32 u 3) 262144 262144/27) (/.f32 1 (-.f32 (fma.f32 4096 (*.f32 u u) 4096/9) (*.f32 u 4096/3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (fma.f32 4096 (*.f32 u u) -4096/9) (/.f32 1 (fma.f32 u 64 -64/3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (-.f32 (fma.f32 4096 (*.f32 u u) 4096/9) (*.f32 u 4096/3)) (fma.f32 (pow.f32 u 3) 262144 262144/27)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (fma.f32 u 64 -64/3) (fma.f32 4096 (*.f32 u u) -4096/9)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (fma.f32 (pow.f32 u 3) 262144 262144/27) (-.f32 (fma.f32 4096 (*.f32 u u) 4096/9) (*.f32 u 4096/3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (fma.f32 (pow.f32 u 3) 262144 262144/27) (+.f32 4096/9 (-.f32 (*.f32 4096 (*.f32 u u)) (*.f32 u 4096/3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (fma.f32 4096 (*.f32 u u) -4096/9) (fma.f32 u 64 -64/3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (fma.f32 (pow.f32 u 3) 262144 262144/27)) (neg.f32 (-.f32 (fma.f32 4096 (*.f32 u u) 4096/9) (*.f32 u 4096/3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (fma.f32 4096 (*.f32 u u) -4096/9)) (neg.f32 (fma.f32 u 64 -64/3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 4096/9 (*.f32 4096 (*.f32 u u))) (-.f32 64/3 (*.f32 u 64)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (fma.f32 u 64 64/3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (fma.f32 u 64 64/3) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (fma.f32 u 64 64/3)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (fma.f32 u 64 64/3)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (fma.f32 u 64 64/3) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (fma.f32 u 64 64/3)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (fma.f32 u 64 64/3))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (fma.f32 u 64 64/3) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (fma.f32 u 64 64/3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (fma.f32 u 64 64/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (fma.f32 u 64 64/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (fma.f32 u 64 64/3)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u 64 64/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 64 u 64/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u 64) 1 64/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 u 64) 64/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 4 (cbrt.f32 u)) (pow.f32 (*.f32 4 (cbrt.f32 u)) 2) 64/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (*.f32 4 (cbrt.f32 u)) 2) (*.f32 4 (cbrt.f32 u)) 64/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 u) 2) (*.f32 (cbrt.f32 u) 64) 64/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 8 (sqrt.f32 u)) (*.f32 8 (sqrt.f32 u)) 64/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 u) (*.f32 (sqrt.f32 u) 64) 64/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 64 (pow.f32 (cbrt.f32 u) 2)) (cbrt.f32 u) 64/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 64 (sqrt.f32 u)) (sqrt.f32 u) 64/3)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s)) (*.f32 u (*.f32 (fma.f32 u 8 4) s)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 u (*.f32 (fma.f32 u 8 4) s)) (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s)) 1) (*.f32 (*.f32 u (*.f32 (fma.f32 u 8 4) s)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 s (fma.f32 u (fma.f32 u 8 4) (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s)) 3) (pow.f32 (*.f32 u (*.f32 (fma.f32 u 8 4) s)) 3)) (fma.f32 (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s)) (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s)) (-.f32 (*.f32 (*.f32 u (*.f32 (fma.f32 u 8 4) s)) (*.f32 u (*.f32 (fma.f32 u 8 4) s))) (*.f32 (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s)) (*.f32 u (*.f32 (fma.f32 u 8 4) s))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (*.f32 (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s)) (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s))) (*.f32 (*.f32 u (*.f32 (fma.f32 u 8 4) s)) (*.f32 u (*.f32 (fma.f32 u 8 4) s)))) (-.f32 (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s)) (*.f32 u (*.f32 (fma.f32 u 8 4) s))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (+.f32 (pow.f32 (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3)) 3) (pow.f32 (*.f32 u (fma.f32 u 8 4)) 3)) s) (fma.f32 (*.f32 u (fma.f32 u 8 4)) (-.f32 (*.f32 u (fma.f32 u 8 4)) (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))) (*.f32 (pow.f32 (fma.f32 u 64 64/3) 2) (pow.f32 u 6))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 (*.f32 (pow.f32 (fma.f32 u 64 64/3) 2) (pow.f32 u 6)) (pow.f32 (*.f32 u (fma.f32 u 8 4)) 2)) s) (fma.f32 (pow.f32 u 3) (fma.f32 u 64 64/3) (*.f32 (neg.f32 u) (fma.f32 u 8 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 s (+.f32 (pow.f32 (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3)) 3) (pow.f32 (*.f32 u (fma.f32 u 8 4)) 3))) (fma.f32 (*.f32 u (fma.f32 u 8 4)) (-.f32 (*.f32 u (fma.f32 u 8 4)) (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))) (*.f32 (pow.f32 (fma.f32 u 64 64/3) 2) (pow.f32 u 6))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 s (-.f32 (*.f32 (pow.f32 (fma.f32 u 64 64/3) 2) (pow.f32 u 6)) (pow.f32 (*.f32 u (fma.f32 u 8 4)) 2))) (fma.f32 (pow.f32 u 3) (fma.f32 u 64 64/3) (*.f32 (neg.f32 u) (fma.f32 u 8 4))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 s (fma.f32 u (fma.f32 u 8 4) (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 s (fma.f32 u (fma.f32 u 8 4) (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 s (fma.f32 u (fma.f32 u 8 4) (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 s (fma.f32 u (fma.f32 u 8 4) (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 s (fma.f32 u (fma.f32 u 8 4) (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 s) (fma.f32 u (fma.f32 u 8 4) (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 s (fma.f32 u (fma.f32 u 8 4) (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (exp.f32 (*.f32 u (*.f32 (fma.f32 u 8 4) s))) (exp.f32 (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 s (fma.f32 u (fma.f32 u 8 4) (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 s 3) (pow.f32 (fma.f32 u (fma.f32 u 8 4) (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (fma.f32 u (fma.f32 u 8 4) (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))) 3) (pow.f32 s 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 s (fma.f32 u (fma.f32 u 8 4) (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 s (fma.f32 u (fma.f32 u 8 4) (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 s (fma.f32 u (fma.f32 u 8 4) (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 s (fma.f32 u (fma.f32 u 8 4) (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u (*.f32 (fma.f32 u 8 4) s) (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 u 3) (*.f32 (fma.f32 u 64 64/3) s) (*.f32 u (*.f32 (fma.f32 u 8 4) s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s) (*.f32 u (*.f32 (fma.f32 u 8 4) s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3)) s (*.f32 u (*.f32 (fma.f32 u 8 4) s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (fma.f32 u 8 4) (*.f32 u s) (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (fma.f32 u 8 4)) s (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 s (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3)) (*.f32 u (*.f32 (fma.f32 u 8 4) s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 s (*.f32 u (fma.f32 u 8 4)) (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s)) (*.f32 u (*.f32 (fma.f32 u 8 4) s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 u (*.f32 (fma.f32 u 8 4) s)) (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 s) 2) (*.f32 (cbrt.f32 s) (*.f32 u (fma.f32 u 8 4))) (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 s) 2) (*.f32 (cbrt.f32 s) (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))) (*.f32 u (*.f32 (fma.f32 u 8 4) s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (*.f32 u (cbrt.f32 (fma.f32 u 64 64/3))) 2) (*.f32 (*.f32 u (cbrt.f32 (fma.f32 u 64 64/3))) s) (*.f32 u (*.f32 (fma.f32 u 8 4) s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (pow.f32 (*.f32 u (fma.f32 u 8 4)) 2)) (*.f32 (cbrt.f32 (*.f32 u (fma.f32 u 8 4))) s) (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 s) (*.f32 (sqrt.f32 s) (*.f32 u (fma.f32 u 8 4))) (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 s) (*.f32 (sqrt.f32 s) (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))) (*.f32 u (*.f32 (fma.f32 u 8 4) s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (sqrt.f32 (fma.f32 u 64 64/3)) (pow.f32 u 3/2)) (*.f32 (*.f32 (sqrt.f32 (fma.f32 u 64 64/3)) (pow.f32 u 3/2)) s) (*.f32 u (*.f32 (fma.f32 u 8 4) s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 u (fma.f32 u 8 4))) (*.f32 (sqrt.f32 (*.f32 u (fma.f32 u 8 4))) s) (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s)) 1 (*.f32 (*.f32 u (*.f32 (fma.f32 u 8 4) s)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (cbrt.f32 (*.f32 u (*.f32 (fma.f32 u 8 4) s))) (cbrt.f32 (*.f32 u (*.f32 (fma.f32 u 8 4) s)))) (cbrt.f32 (*.f32 u (*.f32 (fma.f32 u 8 4) s))) (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (cbrt.f32 (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s))) (cbrt.f32 (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s)))) (cbrt.f32 (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s))) (*.f32 u (*.f32 (fma.f32 u 8 4) s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 u (*.f32 (fma.f32 u 8 4) s))) (sqrt.f32 (*.f32 u (*.f32 (fma.f32 u 8 4) s))) (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s))) (sqrt.f32 (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s))) (*.f32 u (*.f32 (fma.f32 u 8 4) s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (sqrt.f32 s) (sqrt.f32 (*.f32 u (fma.f32 u 8 4)))) (*.f32 (sqrt.f32 s) (sqrt.f32 (*.f32 u (fma.f32 u 8 4)))) (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 (sqrt.f32 (fma.f32 u 64 64/3)) (pow.f32 u 3/2)) (sqrt.f32 s)) (*.f32 (*.f32 (sqrt.f32 (fma.f32 u 64 64/3)) (pow.f32 u 3/2)) (sqrt.f32 s)) (*.f32 u (*.f32 (fma.f32 u 8 4) s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (sqrt.f32 (*.f32 u (fma.f32 u 8 4))) (sqrt.f32 s)) (*.f32 (sqrt.f32 (*.f32 u (fma.f32 u 8 4))) (sqrt.f32 s)) (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (sqrt.f32 s) (*.f32 (sqrt.f32 (fma.f32 u 64 64/3)) (pow.f32 u 3/2))) (*.f32 (sqrt.f32 s) (*.f32 (sqrt.f32 (fma.f32 u 64 64/3)) (pow.f32 u 3/2))) (*.f32 u (*.f32 (fma.f32 u 8 4) s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 s u) (fma.f32 u 8 4) (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 s (fma.f32 u 8 4)) u (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 s (cbrt.f32 (pow.f32 (*.f32 u (fma.f32 u 8 4)) 2))) (cbrt.f32 (*.f32 u (fma.f32 u 8 4))) (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 s (sqrt.f32 (*.f32 u (fma.f32 u 8 4)))) (sqrt.f32 (*.f32 u (fma.f32 u 8 4))) (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3)) (pow.f32 (cbrt.f32 s) 2)) (cbrt.f32 s) (*.f32 u (*.f32 (fma.f32 u 8 4) s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3)) (sqrt.f32 s)) (sqrt.f32 s) (*.f32 u (*.f32 (fma.f32 u 8 4) s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u (fma.f32 u 8 4)) (pow.f32 (cbrt.f32 s) 2)) (cbrt.f32 s) (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u (fma.f32 u 8 4)) (sqrt.f32 s)) (sqrt.f32 s) (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 s (pow.f32 u 3)) (fma.f32 u 64 64/3) (*.f32 u (*.f32 (fma.f32 u 8 4) s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 s (fma.f32 u 64 64/3)) (pow.f32 u 3) (*.f32 u (*.f32 (fma.f32 u 8 4) s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 s (pow.f32 (*.f32 u (cbrt.f32 (fma.f32 u 64 64/3))) 2)) (*.f32 u (cbrt.f32 (fma.f32 u 64 64/3))) (*.f32 u (*.f32 (fma.f32 u 8 4) s)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 s (*.f32 (sqrt.f32 (fma.f32 u 64 64/3)) (pow.f32 u 3/2))) (*.f32 (sqrt.f32 (fma.f32 u 64 64/3)) (pow.f32 u 3/2)) (*.f32 u (*.f32 (fma.f32 u 8 4) s)))))))

simplify137.0ms (1.5%)

Algorithm
egg-herbie
Rules
1323×distribute-lft-in_binary32
1103×distribute-rgt-in_binary32
828×distribute-rgt-out_binary32
643×associate-*l*_binary32
389×associate-*r*_binary32
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
046834
1137765
2331713
31059705
43498704
55528704
65602704
75710704
85849704
96025704
106244704
Stop Event
node limit
Counts
267 → 240
Calls
Call 1
Inputs
(*.f32 64/3 (pow.f32 u 3))
(+.f32 (*.f32 64 (pow.f32 u 4)) (*.f32 64/3 (pow.f32 u 3)))
(+.f32 (*.f32 64 (pow.f32 u 4)) (*.f32 64/3 (pow.f32 u 3)))
(+.f32 (*.f32 64 (pow.f32 u 4)) (*.f32 64/3 (pow.f32 u 3)))
(*.f32 64 (pow.f32 u 4))
(+.f32 (*.f32 64 (pow.f32 u 4)) (*.f32 64/3 (pow.f32 u 3)))
(+.f32 (*.f32 64 (pow.f32 u 4)) (*.f32 64/3 (pow.f32 u 3)))
(+.f32 (*.f32 64 (pow.f32 u 4)) (*.f32 64/3 (pow.f32 u 3)))
(*.f32 64 (pow.f32 u 4))
(+.f32 (*.f32 64 (pow.f32 u 4)) (*.f32 64/3 (pow.f32 u 3)))
(+.f32 (*.f32 64 (pow.f32 u 4)) (*.f32 64/3 (pow.f32 u 3)))
(+.f32 (*.f32 64 (pow.f32 u 4)) (*.f32 64/3 (pow.f32 u 3)))
(*.f32 4 u)
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(*.f32 8 (pow.f32 u 2))
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(*.f32 8 (pow.f32 u 2))
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
64/3
(*.f32 64 u)
(+.f32 64/3 (*.f32 64 u))
(+.f32 64/3 (*.f32 64 u))
(+.f32 64/3 (*.f32 64 u))
(*.f32 64 u)
(+.f32 64/3 (*.f32 64 u))
(+.f32 64/3 (*.f32 64 u))
(+.f32 64/3 (*.f32 64 u))
(*.f32 s (+.f32 (*.f32 (+.f32 4 (*.f32 8 u)) u) (*.f32 (+.f32 (*.f32 64 u) 64/3) (pow.f32 u 3))))
(*.f32 s (+.f32 (*.f32 (+.f32 4 (*.f32 8 u)) u) (*.f32 (+.f32 (*.f32 64 u) 64/3) (pow.f32 u 3))))
(*.f32 s (+.f32 (*.f32 (+.f32 4 (*.f32 8 u)) u) (*.f32 (+.f32 (*.f32 64 u) 64/3) (pow.f32 u 3))))
(*.f32 s (+.f32 (*.f32 (+.f32 4 (*.f32 8 u)) u) (*.f32 (+.f32 (*.f32 64 u) 64/3) (pow.f32 u 3))))
(*.f32 s (+.f32 (*.f32 (+.f32 4 (*.f32 8 u)) u) (*.f32 (+.f32 (*.f32 64 u) 64/3) (pow.f32 u 3))))
(*.f32 s (+.f32 (*.f32 (+.f32 4 (*.f32 8 u)) u) (*.f32 (+.f32 (*.f32 64 u) 64/3) (pow.f32 u 3))))
(*.f32 s (+.f32 (*.f32 (+.f32 4 (*.f32 8 u)) u) (*.f32 (+.f32 (*.f32 64 u) 64/3) (pow.f32 u 3))))
(*.f32 s (+.f32 (*.f32 (+.f32 4 (*.f32 8 u)) u) (*.f32 (+.f32 (*.f32 64 u) 64/3) (pow.f32 u 3))))
(*.f32 s (+.f32 (*.f32 u (+.f32 4 (*.f32 8 u))) (*.f32 (+.f32 64/3 (*.f32 64 u)) (pow.f32 u 3))))
(*.f32 s (+.f32 (*.f32 u (+.f32 4 (*.f32 8 u))) (*.f32 (+.f32 64/3 (*.f32 64 u)) (pow.f32 u 3))))
(*.f32 s (+.f32 (*.f32 u (+.f32 4 (*.f32 8 u))) (*.f32 (+.f32 64/3 (*.f32 64 u)) (pow.f32 u 3))))
(*.f32 s (+.f32 (*.f32 u (+.f32 4 (*.f32 8 u))) (*.f32 (+.f32 64/3 (*.f32 64 u)) (pow.f32 u 3))))
(*.f32 4 (*.f32 s u))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (+.f32 (*.f32 8 (*.f32 s (pow.f32 u 2))) (*.f32 64 (*.f32 s (pow.f32 u 4))))))
(*.f32 64 (*.f32 s (pow.f32 u 4)))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (*.f32 64 (*.f32 s (pow.f32 u 4))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 8 (*.f32 s (pow.f32 u 2))) (*.f32 64 (*.f32 s (pow.f32 u 4)))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (+.f32 (*.f32 8 (*.f32 s (pow.f32 u 2))) (*.f32 64 (*.f32 s (pow.f32 u 4))))))
(*.f32 64 (*.f32 s (pow.f32 u 4)))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (*.f32 64 (*.f32 s (pow.f32 u 4))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 8 (*.f32 s (pow.f32 u 2))) (*.f32 64 (*.f32 s (pow.f32 u 4)))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (+.f32 (*.f32 8 (*.f32 s (pow.f32 u 2))) (*.f32 64 (*.f32 s (pow.f32 u 4))))))
Outputs
(*.f32 64/3 (pow.f32 u 3))
(+.f32 (*.f32 64 (pow.f32 u 4)) (*.f32 64/3 (pow.f32 u 3)))
(fma.f32 64 (pow.f32 u 4) (*.f32 64/3 (pow.f32 u 3)))
(fma.f32 64/3 (pow.f32 u 3) (*.f32 64 (pow.f32 u 4)))
(*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))
(+.f32 (*.f32 64 (pow.f32 u 4)) (*.f32 64/3 (pow.f32 u 3)))
(fma.f32 64 (pow.f32 u 4) (*.f32 64/3 (pow.f32 u 3)))
(fma.f32 64/3 (pow.f32 u 3) (*.f32 64 (pow.f32 u 4)))
(*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))
(+.f32 (*.f32 64 (pow.f32 u 4)) (*.f32 64/3 (pow.f32 u 3)))
(fma.f32 64 (pow.f32 u 4) (*.f32 64/3 (pow.f32 u 3)))
(fma.f32 64/3 (pow.f32 u 3) (*.f32 64 (pow.f32 u 4)))
(*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))
(*.f32 64 (pow.f32 u 4))
(+.f32 (*.f32 64 (pow.f32 u 4)) (*.f32 64/3 (pow.f32 u 3)))
(fma.f32 64 (pow.f32 u 4) (*.f32 64/3 (pow.f32 u 3)))
(fma.f32 64/3 (pow.f32 u 3) (*.f32 64 (pow.f32 u 4)))
(*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))
(+.f32 (*.f32 64 (pow.f32 u 4)) (*.f32 64/3 (pow.f32 u 3)))
(fma.f32 64 (pow.f32 u 4) (*.f32 64/3 (pow.f32 u 3)))
(fma.f32 64/3 (pow.f32 u 3) (*.f32 64 (pow.f32 u 4)))
(*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))
(+.f32 (*.f32 64 (pow.f32 u 4)) (*.f32 64/3 (pow.f32 u 3)))
(fma.f32 64 (pow.f32 u 4) (*.f32 64/3 (pow.f32 u 3)))
(fma.f32 64/3 (pow.f32 u 3) (*.f32 64 (pow.f32 u 4)))
(*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))
(*.f32 64 (pow.f32 u 4))
(+.f32 (*.f32 64 (pow.f32 u 4)) (*.f32 64/3 (pow.f32 u 3)))
(fma.f32 64 (pow.f32 u 4) (*.f32 64/3 (pow.f32 u 3)))
(fma.f32 64/3 (pow.f32 u 3) (*.f32 64 (pow.f32 u 4)))
(*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))
(+.f32 (*.f32 64 (pow.f32 u 4)) (*.f32 64/3 (pow.f32 u 3)))
(fma.f32 64 (pow.f32 u 4) (*.f32 64/3 (pow.f32 u 3)))
(fma.f32 64/3 (pow.f32 u 3) (*.f32 64 (pow.f32 u 4)))
(*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))
(+.f32 (*.f32 64 (pow.f32 u 4)) (*.f32 64/3 (pow.f32 u 3)))
(fma.f32 64 (pow.f32 u 4) (*.f32 64/3 (pow.f32 u 3)))
(fma.f32 64/3 (pow.f32 u 3) (*.f32 64 (pow.f32 u 4)))
(*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))
(*.f32 4 u)
(*.f32 u 4)
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(fma.f32 8 (*.f32 u u) (*.f32 u 4))
(*.f32 u (fma.f32 u 8 4))
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(fma.f32 8 (*.f32 u u) (*.f32 u 4))
(*.f32 u (fma.f32 u 8 4))
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(fma.f32 8 (*.f32 u u) (*.f32 u 4))
(*.f32 u (fma.f32 u 8 4))
(*.f32 8 (pow.f32 u 2))
(*.f32 8 (*.f32 u u))
(*.f32 u (*.f32 u 8))
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(fma.f32 8 (*.f32 u u) (*.f32 u 4))
(*.f32 u (fma.f32 u 8 4))
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(fma.f32 8 (*.f32 u u) (*.f32 u 4))
(*.f32 u (fma.f32 u 8 4))
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(fma.f32 8 (*.f32 u u) (*.f32 u 4))
(*.f32 u (fma.f32 u 8 4))
(*.f32 8 (pow.f32 u 2))
(*.f32 8 (*.f32 u u))
(*.f32 u (*.f32 u 8))
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(fma.f32 8 (*.f32 u u) (*.f32 u 4))
(*.f32 u (fma.f32 u 8 4))
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(fma.f32 8 (*.f32 u u) (*.f32 u 4))
(*.f32 u (fma.f32 u 8 4))
(+.f32 (*.f32 8 (pow.f32 u 2)) (*.f32 4 u))
(fma.f32 8 (*.f32 u u) (*.f32 u 4))
(*.f32 u (fma.f32 u 8 4))
64/3
(*.f32 64 u)
(*.f32 u 64)
(+.f32 64/3 (*.f32 64 u))
(fma.f32 64 u 64/3)
(fma.f32 u 64 64/3)
(+.f32 64/3 (*.f32 64 u))
(fma.f32 64 u 64/3)
(fma.f32 u 64 64/3)
(+.f32 64/3 (*.f32 64 u))
(fma.f32 64 u 64/3)
(fma.f32 u 64 64/3)
(*.f32 64 u)
(*.f32 u 64)
(+.f32 64/3 (*.f32 64 u))
(fma.f32 64 u 64/3)
(fma.f32 u 64 64/3)
(+.f32 64/3 (*.f32 64 u))
(fma.f32 64 u 64/3)
(fma.f32 u 64 64/3)
(+.f32 64/3 (*.f32 64 u))
(fma.f32 64 u 64/3)
(fma.f32 u 64 64/3)
(*.f32 s (+.f32 (*.f32 (+.f32 4 (*.f32 8 u)) u) (*.f32 (+.f32 (*.f32 64 u) 64/3) (pow.f32 u 3))))
(*.f32 s (fma.f32 u (+.f32 4 (*.f32 u 8)) (*.f32 (pow.f32 u 3) (fma.f32 64 u 64/3))))
(*.f32 s (fma.f32 (pow.f32 u 3) (fma.f32 u 64 64/3) (*.f32 u (fma.f32 u 8 4))))
(*.f32 s (fma.f32 u (fma.f32 u 8 4) (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))))
(*.f32 s (+.f32 (*.f32 (+.f32 4 (*.f32 8 u)) u) (*.f32 (+.f32 (*.f32 64 u) 64/3) (pow.f32 u 3))))
(*.f32 s (fma.f32 u (+.f32 4 (*.f32 u 8)) (*.f32 (pow.f32 u 3) (fma.f32 64 u 64/3))))
(*.f32 s (fma.f32 (pow.f32 u 3) (fma.f32 u 64 64/3) (*.f32 u (fma.f32 u 8 4))))
(*.f32 s (fma.f32 u (fma.f32 u 8 4) (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))))
(*.f32 s (+.f32 (*.f32 (+.f32 4 (*.f32 8 u)) u) (*.f32 (+.f32 (*.f32 64 u) 64/3) (pow.f32 u 3))))
(*.f32 s (fma.f32 u (+.f32 4 (*.f32 u 8)) (*.f32 (pow.f32 u 3) (fma.f32 64 u 64/3))))
(*.f32 s (fma.f32 (pow.f32 u 3) (fma.f32 u 64 64/3) (*.f32 u (fma.f32 u 8 4))))
(*.f32 s (fma.f32 u (fma.f32 u 8 4) (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))))
(*.f32 s (+.f32 (*.f32 (+.f32 4 (*.f32 8 u)) u) (*.f32 (+.f32 (*.f32 64 u) 64/3) (pow.f32 u 3))))
(*.f32 s (fma.f32 u (+.f32 4 (*.f32 u 8)) (*.f32 (pow.f32 u 3) (fma.f32 64 u 64/3))))
(*.f32 s (fma.f32 (pow.f32 u 3) (fma.f32 u 64 64/3) (*.f32 u (fma.f32 u 8 4))))
(*.f32 s (fma.f32 u (fma.f32 u 8 4) (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))))
(*.f32 s (+.f32 (*.f32 (+.f32 4 (*.f32 8 u)) u) (*.f32 (+.f32 (*.f32 64 u) 64/3) (pow.f32 u 3))))
(*.f32 s (fma.f32 u (+.f32 4 (*.f32 u 8)) (*.f32 (pow.f32 u 3) (fma.f32 64 u 64/3))))
(*.f32 s (fma.f32 (pow.f32 u 3) (fma.f32 u 64 64/3) (*.f32 u (fma.f32 u 8 4))))
(*.f32 s (fma.f32 u (fma.f32 u 8 4) (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))))
(*.f32 s (+.f32 (*.f32 (+.f32 4 (*.f32 8 u)) u) (*.f32 (+.f32 (*.f32 64 u) 64/3) (pow.f32 u 3))))
(*.f32 s (fma.f32 u (+.f32 4 (*.f32 u 8)) (*.f32 (pow.f32 u 3) (fma.f32 64 u 64/3))))
(*.f32 s (fma.f32 (pow.f32 u 3) (fma.f32 u 64 64/3) (*.f32 u (fma.f32 u 8 4))))
(*.f32 s (fma.f32 u (fma.f32 u 8 4) (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))))
(*.f32 s (+.f32 (*.f32 (+.f32 4 (*.f32 8 u)) u) (*.f32 (+.f32 (*.f32 64 u) 64/3) (pow.f32 u 3))))
(*.f32 s (fma.f32 u (+.f32 4 (*.f32 u 8)) (*.f32 (pow.f32 u 3) (fma.f32 64 u 64/3))))
(*.f32 s (fma.f32 (pow.f32 u 3) (fma.f32 u 64 64/3) (*.f32 u (fma.f32 u 8 4))))
(*.f32 s (fma.f32 u (fma.f32 u 8 4) (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))))
(*.f32 s (+.f32 (*.f32 (+.f32 4 (*.f32 8 u)) u) (*.f32 (+.f32 (*.f32 64 u) 64/3) (pow.f32 u 3))))
(*.f32 s (fma.f32 u (+.f32 4 (*.f32 u 8)) (*.f32 (pow.f32 u 3) (fma.f32 64 u 64/3))))
(*.f32 s (fma.f32 (pow.f32 u 3) (fma.f32 u 64 64/3) (*.f32 u (fma.f32 u 8 4))))
(*.f32 s (fma.f32 u (fma.f32 u 8 4) (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))))
(*.f32 s (+.f32 (*.f32 u (+.f32 4 (*.f32 8 u))) (*.f32 (+.f32 64/3 (*.f32 64 u)) (pow.f32 u 3))))
(*.f32 s (fma.f32 u (+.f32 4 (*.f32 u 8)) (*.f32 (pow.f32 u 3) (fma.f32 64 u 64/3))))
(*.f32 s (fma.f32 (pow.f32 u 3) (fma.f32 u 64 64/3) (*.f32 u (fma.f32 u 8 4))))
(*.f32 s (fma.f32 u (fma.f32 u 8 4) (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))))
(*.f32 s (+.f32 (*.f32 u (+.f32 4 (*.f32 8 u))) (*.f32 (+.f32 64/3 (*.f32 64 u)) (pow.f32 u 3))))
(*.f32 s (fma.f32 u (+.f32 4 (*.f32 u 8)) (*.f32 (pow.f32 u 3) (fma.f32 64 u 64/3))))
(*.f32 s (fma.f32 (pow.f32 u 3) (fma.f32 u 64 64/3) (*.f32 u (fma.f32 u 8 4))))
(*.f32 s (fma.f32 u (fma.f32 u 8 4) (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))))
(*.f32 s (+.f32 (*.f32 u (+.f32 4 (*.f32 8 u))) (*.f32 (+.f32 64/3 (*.f32 64 u)) (pow.f32 u 3))))
(*.f32 s (fma.f32 u (+.f32 4 (*.f32 u 8)) (*.f32 (pow.f32 u 3) (fma.f32 64 u 64/3))))
(*.f32 s (fma.f32 (pow.f32 u 3) (fma.f32 u 64 64/3) (*.f32 u (fma.f32 u 8 4))))
(*.f32 s (fma.f32 u (fma.f32 u 8 4) (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))))
(*.f32 s (+.f32 (*.f32 u (+.f32 4 (*.f32 8 u))) (*.f32 (+.f32 64/3 (*.f32 64 u)) (pow.f32 u 3))))
(*.f32 s (fma.f32 u (+.f32 4 (*.f32 u 8)) (*.f32 (pow.f32 u 3) (fma.f32 64 u 64/3))))
(*.f32 s (fma.f32 (pow.f32 u 3) (fma.f32 u 64 64/3) (*.f32 u (fma.f32 u 8 4))))
(*.f32 s (fma.f32 u (fma.f32 u 8 4) (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))))
(*.f32 4 (*.f32 s u))
(*.f32 4 (*.f32 u s))
(*.f32 u (*.f32 4 s))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(fma.f32 4 (*.f32 u s) (*.f32 8 (*.f32 (*.f32 u u) s)))
(*.f32 u (*.f32 (fma.f32 u 8 4) s))
(*.f32 (fma.f32 u 8 4) (*.f32 u s))
(*.f32 u (*.f32 s (fma.f32 u 8 4)))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
(fma.f32 64/3 (*.f32 (pow.f32 u 3) s) (fma.f32 4 (*.f32 u s) (*.f32 8 (*.f32 (*.f32 u u) s))))
(fma.f32 64/3 (*.f32 (pow.f32 u 3) s) (*.f32 u (*.f32 (fma.f32 u 8 4) s)))
(*.f32 s (+.f32 (*.f32 u (fma.f32 u 8 4)) (*.f32 64/3 (pow.f32 u 3))))
(*.f32 s (+.f32 (*.f32 64/3 (pow.f32 u 3)) (*.f32 u (fma.f32 u 8 4))))
(*.f32 (*.f32 u s) (+.f32 4 (*.f32 u (+.f32 8 (*.f32 64/3 u)))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (+.f32 (*.f32 8 (*.f32 s (pow.f32 u 2))) (*.f32 64 (*.f32 s (pow.f32 u 4))))))
(*.f32 s (fma.f32 u (+.f32 4 (*.f32 u 8)) (*.f32 (pow.f32 u 3) (fma.f32 64 u 64/3))))
(*.f32 s (fma.f32 (pow.f32 u 3) (fma.f32 u 64 64/3) (*.f32 u (fma.f32 u 8 4))))
(*.f32 s (fma.f32 u (fma.f32 u 8 4) (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))))
(*.f32 64 (*.f32 s (pow.f32 u 4)))
(*.f32 64 (*.f32 (pow.f32 u 4) s))
(*.f32 (pow.f32 u 4) (*.f32 64 s))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (*.f32 64 (*.f32 s (pow.f32 u 4))))
(fma.f32 64/3 (*.f32 (pow.f32 u 3) s) (*.f32 64 (*.f32 (pow.f32 u 4) s)))
(*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s))
(*.f32 (pow.f32 u 3) (*.f32 s (fma.f32 u 64 64/3)))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 8 (*.f32 s (pow.f32 u 2))) (*.f32 64 (*.f32 s (pow.f32 u 4)))))
(fma.f32 64/3 (*.f32 (pow.f32 u 3) s) (fma.f32 8 (*.f32 (*.f32 u u) s) (*.f32 64 (*.f32 (pow.f32 u 4) s))))
(fma.f32 64/3 (*.f32 (pow.f32 u 3) s) (fma.f32 64 (*.f32 (pow.f32 u 4) s) (*.f32 8 (*.f32 u (*.f32 u s)))))
(fma.f32 8 (*.f32 u (*.f32 u s)) (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s)))
(*.f32 s (*.f32 u (*.f32 u (+.f32 8 (*.f32 u (fma.f32 u 64 64/3))))))
(*.f32 u (*.f32 u (*.f32 s (+.f32 8 (*.f32 u (fma.f32 u 64 64/3))))))
(*.f32 u (*.f32 (*.f32 u s) (+.f32 8 (*.f32 u (fma.f32 u 64 64/3)))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (+.f32 (*.f32 8 (*.f32 s (pow.f32 u 2))) (*.f32 64 (*.f32 s (pow.f32 u 4))))))
(*.f32 s (fma.f32 u (+.f32 4 (*.f32 u 8)) (*.f32 (pow.f32 u 3) (fma.f32 64 u 64/3))))
(*.f32 s (fma.f32 (pow.f32 u 3) (fma.f32 u 64 64/3) (*.f32 u (fma.f32 u 8 4))))
(*.f32 s (fma.f32 u (fma.f32 u 8 4) (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))))
(*.f32 64 (*.f32 s (pow.f32 u 4)))
(*.f32 64 (*.f32 (pow.f32 u 4) s))
(*.f32 (pow.f32 u 4) (*.f32 64 s))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (*.f32 64 (*.f32 s (pow.f32 u 4))))
(fma.f32 64/3 (*.f32 (pow.f32 u 3) s) (*.f32 64 (*.f32 (pow.f32 u 4) s)))
(*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s))
(*.f32 (pow.f32 u 3) (*.f32 s (fma.f32 u 64 64/3)))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 8 (*.f32 s (pow.f32 u 2))) (*.f32 64 (*.f32 s (pow.f32 u 4)))))
(fma.f32 64/3 (*.f32 (pow.f32 u 3) s) (fma.f32 8 (*.f32 (*.f32 u u) s) (*.f32 64 (*.f32 (pow.f32 u 4) s))))
(fma.f32 64/3 (*.f32 (pow.f32 u 3) s) (fma.f32 64 (*.f32 (pow.f32 u 4) s) (*.f32 8 (*.f32 u (*.f32 u s)))))
(fma.f32 8 (*.f32 u (*.f32 u s)) (*.f32 (fma.f32 u 64 64/3) (*.f32 (pow.f32 u 3) s)))
(*.f32 s (*.f32 u (*.f32 u (+.f32 8 (*.f32 u (fma.f32 u 64 64/3))))))
(*.f32 u (*.f32 u (*.f32 s (+.f32 8 (*.f32 u (fma.f32 u 64 64/3))))))
(*.f32 u (*.f32 (*.f32 u s) (+.f32 8 (*.f32 u (fma.f32 u 64 64/3)))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (+.f32 (*.f32 8 (*.f32 s (pow.f32 u 2))) (*.f32 64 (*.f32 s (pow.f32 u 4))))))
(*.f32 s (fma.f32 u (+.f32 4 (*.f32 u 8)) (*.f32 (pow.f32 u 3) (fma.f32 64 u 64/3))))
(*.f32 s (fma.f32 (pow.f32 u 3) (fma.f32 u 64 64/3) (*.f32 u (fma.f32 u 8 4))))
(*.f32 s (fma.f32 u (fma.f32 u 8 4) (*.f32 (pow.f32 u 3) (fma.f32 u 64 64/3))))

eval425.0ms (4.8%)

Compiler

Compiled 16899 to 11886 computations (29.7% saved)

prune212.0ms (2.4%)

Pruning

29 alts after pruning (16 fresh and 13 done)

PrunedKeptTotal
New8254829
Fresh01212
Picked011
Done21214
Total82729856
Error
0.0b
Counts
856 → 29
Alt Table
Click to see full alt table
StatusErrorProgram
4.9b
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u 8))))
2.5b
(*.f32 s (+.f32 (*.f32 (pow.f32 u 3) (+.f32 (*.f32 64 u) 64/3)) (/.f32 (-.f32 (*.f32 (*.f32 u 4) (*.f32 u 4)) (*.f32 (*.f32 u (*.f32 u 8)) (*.f32 u (*.f32 u 8)))) (-.f32 (*.f32 u 4) (*.f32 u (*.f32 u 8))))))
0.4b
(*.f32 s (*.f32 3 (*.f32 1/3 (neg.f32 (log1p.f32 (*.f32 u -4))))))
11.6b
(*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4 u)))))
2.5b
(*.f32 s (+.f32 (*.f32 (pow.f32 u 3) (+.f32 (*.f32 64 u) 64/3)) (*.f32 u (+.f32 4 (*.f32 u 8)))))
4.9b
(*.f32 (+.f32 (*.f32 u 8) 4) (*.f32 s u))
3.4b
(*.f32 s (*.f32 3 (*.f32 1/3 (neg.f32 (*.f32 u (+.f32 -4 (*.f32 u (+.f32 -8 (*.f32 u -64/3)))))))))
4.7b
(fma.f32 (*.f32 s 4) u (*.f32 s (*.f32 (*.f32 u u) 8)))
3.3b
(*.f32 s (*.f32 u (+.f32 4 (/.f32 (-.f32 (*.f32 (*.f32 u 8) (*.f32 u 8)) (*.f32 (*.f32 u (*.f32 u 64/3)) (*.f32 u (*.f32 u 64/3)))) (-.f32 (*.f32 u 8) (*.f32 u (*.f32 u 64/3)))))))
3.3b
(*.f32 s (+.f32 (*.f32 u 4) (*.f32 (*.f32 u u) (+.f32 (*.f32 64/3 u) 8))))
0.6b
(pow.f32 (cbrt.f32 (*.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) s)) 3)
0.5b
(*.f32 s (pow.f32 (sqrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))) 2))
3.3b
(*.f32 u (+.f32 (*.f32 4 s) (*.f32 u (*.f32 s (+.f32 8 (*.f32 u 64/3))))))
8.9b
(*.f32 s (*.f32 3 (*.f32 4/3 u)))
4.9b
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 s (*.f32 8 (*.f32 u u))))
1.6b
(*.f32 s (pow.f32 (pow.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) 3) 1/3))
4.9b
(*.f32 u (*.f32 s (+.f32 (*.f32 u 8) 4)))
3.4b
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
8.9b
(*.f32 u (*.f32 4 s))
2.4b
(*.f32 s (neg.f32 (fma.f32 -4 u (*.f32 (*.f32 u u) (+.f32 -8 (*.f32 u (+.f32 -64/3 (*.f32 -64 u))))))))
3.3b
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u (+.f32 8 (*.f32 u 64/3))))))
1.2b
(*.f32 s (exp.f32 (log.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))))
3.7b
(*.f32 s (+.f32 (log.f32 (/.f32 1 (-.f32 1 (*.f32 16 (*.f32 u u))))) (log1p.f32 (*.f32 4 u))))
0.2b
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
9.0b
(*.f32 4 (*.f32 u s))
3.3b
(*.f32 s (+.f32 (*.f32 (pow.f32 u 3) 64/3) (*.f32 u (+.f32 4 (*.f32 u 8)))))
3.4b
(*.f32 s (*.f32 3 (*.f32 u (+.f32 4/3 (*.f32 u (+.f32 8/3 (*.f32 u 64/9)))))))
4.9b
(*.f32 s (*.f32 3 (*.f32 u (+.f32 4/3 (*.f32 u 8/3)))))
4.8b
(*.f32 s (+.f32 (*.f32 4 u) (*.f32 8 (*.f32 u u))))
Compiler

Compiled 452 to 338 computations (25.2% saved)

regimes176.0ms (2%)

Counts
41 → 1
Calls
Call 1
Inputs
(*.f32 u (*.f32 4 s))
(*.f32 4 (*.f32 u s))
(*.f32 s (*.f32 u 4))
(*.f32 s (*.f32 3 (*.f32 4/3 u)))
(*.f32 (+.f32 (*.f32 u 8) 4) (*.f32 s u))
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u 8))))
(*.f32 u (*.f32 s (+.f32 (*.f32 u 8) 4)))
(*.f32 (*.f32 u s) (+.f32 4 (*.f32 u 8)))
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u 8))))
(*.f32 s (+.f32 (*.f32 4 u) (*.f32 8 (*.f32 u u))))
(*.f32 s (*.f32 3 (*.f32 u (+.f32 4/3 (*.f32 u 8/3)))))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 s (*.f32 8 (*.f32 u u))))
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u (+.f32 8 (*.f32 u 64/3))))))
(*.f32 s (*.f32 3 (*.f32 u (+.f32 4/3 (*.f32 u (+.f32 8/3 (*.f32 u 64/9)))))))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (+.f32 0 (*.f32 s (*.f32 u u)))))
(*.f32 u (+.f32 (*.f32 4 s) (*.f32 u (*.f32 s (+.f32 8 (*.f32 u 64/3))))))
(*.f32 s (+.f32 (*.f32 u 4) (*.f32 (*.f32 u u) (+.f32 (*.f32 64/3 u) 8))))
(*.f32 s (*.f32 3 (*.f32 1/3 (neg.f32 (*.f32 u (+.f32 -4 (*.f32 u (+.f32 -8 (*.f32 u -64/3)))))))))
(*.f32 s (*.f32 u (+.f32 4 (/.f32 (-.f32 (*.f32 (*.f32 u 8) (*.f32 u 8)) (*.f32 (*.f32 u (*.f32 u 64/3)) (*.f32 u (*.f32 u 64/3)))) (-.f32 (*.f32 u 8) (*.f32 u (*.f32 u 64/3)))))))
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
(*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4 u)))))
(*.f32 s (*.f32 3 (*.f32 1/3 (neg.f32 (log1p.f32 (*.f32 u -4))))))
(fma.f32 (*.f32 s 4) u (*.f32 s (*.f32 (*.f32 u u) 8)))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2))))
(*.f32 s (+.f32 (*.f32 (pow.f32 u 3) 64/3) (*.f32 u (+.f32 4 (*.f32 u 8)))))
(+.f32 (*.f32 (*.f32 u (fma.f32 u 64/3 8)) (*.f32 u s)) (*.f32 4 (*.f32 u s)))
(*.f32 s (+.f32 (*.f32 (pow.f32 u 3) (+.f32 (*.f32 64 u) 64/3)) (*.f32 u (+.f32 4 (*.f32 u 8)))))
(*.f32 s (neg.f32 (fma.f32 -4 u (*.f32 (*.f32 u u) (+.f32 -8 (*.f32 u (+.f32 -64/3 (*.f32 -64 u))))))))
(*.f32 s (+.f32 (*.f32 (pow.f32 u 3) (+.f32 (*.f32 64 u) 64/3)) (/.f32 (-.f32 (*.f32 (*.f32 u 4) (*.f32 u 4)) (*.f32 (*.f32 u (*.f32 u 8)) (*.f32 u (*.f32 u 8)))) (-.f32 (*.f32 u 4) (*.f32 u (*.f32 u 8))))))
(pow.f32 (cbrt.f32 (*.f32 4 (*.f32 u s))) 3)
(pow.f32 (sqrt.f32 (*.f32 4 (*.f32 u s))) 2)
(fma.f32 (*.f32 u 4) s (*.f32 (*.f32 (fma.f32 u 64/3 8) (*.f32 u u)) s))
(*.f32 s (+.f32 (log.f32 (/.f32 1 (-.f32 1 (*.f32 16 (*.f32 u u))))) (log1p.f32 (*.f32 4 u))))
(+.f32 (*.f32 64/3 (*.f32 s (pow.f32 u 3))) (+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (*.f32 s (pow.f32 u 2)))))
(*.f32 s (exp.f32 (log.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))))
(pow.f32 (cbrt.f32 (*.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) s)) 3)
(pow.f32 (sqrt.f32 (*.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) s)) 2)
(*.f32 s (pow.f32 (sqrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4)))) 2))
(*.f32 s (pow.f32 (pow.f32 (neg.f32 (log1p.f32 (*.f32 u -4))) 3) 1/3))
(*.f32 s (*.f32 (cbrt.f32 (pow.f32 (log1p.f32 (*.f32 u -4)) 2)) (cbrt.f32 (neg.f32 (log1p.f32 (*.f32 u -4))))))
Outputs
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
Calls

7 calls:

56.0ms
(*.f32 4 u)
21.0ms
s
20.0ms
(-.f32 1 (*.f32 4 u))
19.0ms
u
15.0ms
(*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4 u)))))
Results
ErrorSegmentsBranch
0.2b1s
0.2b1u
0.2b1(*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4 u)))))
0.2b1(log.f32 (/.f32 1 (-.f32 1 (*.f32 4 u))))
0.2b1(/.f32 1 (-.f32 1 (*.f32 4 u)))
0.2b1(-.f32 1 (*.f32 4 u))
0.2b1(*.f32 4 u)
Compiler

Compiled 590 to 407 computations (31% saved)

regimes41.0ms (0.5%)

Counts
20 → 1
Calls
Call 1
Inputs
(*.f32 u (*.f32 4 s))
(*.f32 4 (*.f32 u s))
(*.f32 s (*.f32 u 4))
(*.f32 s (*.f32 3 (*.f32 4/3 u)))
(*.f32 (+.f32 (*.f32 u 8) 4) (*.f32 s u))
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u 8))))
(*.f32 u (*.f32 s (+.f32 (*.f32 u 8) 4)))
(*.f32 (*.f32 u s) (+.f32 4 (*.f32 u 8)))
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u 8))))
(*.f32 s (+.f32 (*.f32 4 u) (*.f32 8 (*.f32 u u))))
(*.f32 s (*.f32 3 (*.f32 u (+.f32 4/3 (*.f32 u 8/3)))))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 s (*.f32 8 (*.f32 u u))))
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u (+.f32 8 (*.f32 u 64/3))))))
(*.f32 s (*.f32 3 (*.f32 u (+.f32 4/3 (*.f32 u (+.f32 8/3 (*.f32 u 64/9)))))))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (+.f32 0 (*.f32 s (*.f32 u u)))))
(*.f32 u (+.f32 (*.f32 4 s) (*.f32 u (*.f32 s (+.f32 8 (*.f32 u 64/3))))))
(*.f32 s (+.f32 (*.f32 u 4) (*.f32 (*.f32 u u) (+.f32 (*.f32 64/3 u) 8))))
(*.f32 s (*.f32 3 (*.f32 1/3 (neg.f32 (*.f32 u (+.f32 -4 (*.f32 u (+.f32 -8 (*.f32 u -64/3)))))))))
(*.f32 s (*.f32 u (+.f32 4 (/.f32 (-.f32 (*.f32 (*.f32 u 8) (*.f32 u 8)) (*.f32 (*.f32 u (*.f32 u 64/3)) (*.f32 u (*.f32 u 64/3)))) (-.f32 (*.f32 u 8) (*.f32 u (*.f32 u 64/3)))))))
Outputs
(*.f32 s (+.f32 (*.f32 u 4) (*.f32 (*.f32 u u) (+.f32 (*.f32 64/3 u) 8))))
Calls

2 calls:

24.0ms
s
11.0ms
u
Results
ErrorSegmentsBranch
3.3b1s
3.3b1u
Compiler

Compiled 249 to 163 computations (34.5% saved)

regimes24.0ms (0.3%)

Counts
17 → 1
Calls
Call 1
Inputs
(*.f32 u (*.f32 4 s))
(*.f32 4 (*.f32 u s))
(*.f32 s (*.f32 u 4))
(*.f32 s (*.f32 3 (*.f32 4/3 u)))
(*.f32 (+.f32 (*.f32 u 8) 4) (*.f32 s u))
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u 8))))
(*.f32 u (*.f32 s (+.f32 (*.f32 u 8) 4)))
(*.f32 (*.f32 u s) (+.f32 4 (*.f32 u 8)))
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u 8))))
(*.f32 s (+.f32 (*.f32 4 u) (*.f32 8 (*.f32 u u))))
(*.f32 s (*.f32 3 (*.f32 u (+.f32 4/3 (*.f32 u 8/3)))))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 s (*.f32 8 (*.f32 u u))))
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u (+.f32 8 (*.f32 u 64/3))))))
(*.f32 s (*.f32 3 (*.f32 u (+.f32 4/3 (*.f32 u (+.f32 8/3 (*.f32 u 64/9)))))))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (+.f32 0 (*.f32 s (*.f32 u u)))))
(*.f32 u (+.f32 (*.f32 4 s) (*.f32 u (*.f32 s (+.f32 8 (*.f32 u 64/3))))))
Outputs
(*.f32 u (+.f32 (*.f32 4 s) (*.f32 u (*.f32 s (+.f32 8 (*.f32 u 64/3))))))
Calls

2 calls:

10.0ms
u
9.0ms
s
Results
ErrorSegmentsBranch
3.3b1s
3.3b1u
Compiler

Compiled 181 to 116 computations (35.9% saved)

regimes67.0ms (0.8%)

Counts
16 → 1
Calls
Call 1
Inputs
(*.f32 u (*.f32 4 s))
(*.f32 4 (*.f32 u s))
(*.f32 s (*.f32 u 4))
(*.f32 s (*.f32 3 (*.f32 4/3 u)))
(*.f32 (+.f32 (*.f32 u 8) 4) (*.f32 s u))
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u 8))))
(*.f32 u (*.f32 s (+.f32 (*.f32 u 8) 4)))
(*.f32 (*.f32 u s) (+.f32 4 (*.f32 u 8)))
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u 8))))
(*.f32 s (+.f32 (*.f32 4 u) (*.f32 8 (*.f32 u u))))
(*.f32 s (*.f32 3 (*.f32 u (+.f32 4/3 (*.f32 u 8/3)))))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 s (*.f32 8 (*.f32 u u))))
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u (+.f32 8 (*.f32 u 64/3))))))
(*.f32 s (*.f32 3 (*.f32 u (+.f32 4/3 (*.f32 u (+.f32 8/3 (*.f32 u 64/9)))))))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 8 (+.f32 0 (*.f32 s (*.f32 u u)))))
Outputs
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u (+.f32 8 (*.f32 u 64/3))))))
Calls

2 calls:

54.0ms
u
9.0ms
s
Results
ErrorSegmentsBranch
3.3b1s
3.3b1u
Compiler

Compiled 166 to 106 computations (36.1% saved)

regimes19.0ms (0.2%)

Counts
13 → 1
Calls
Call 1
Inputs
(*.f32 u (*.f32 4 s))
(*.f32 4 (*.f32 u s))
(*.f32 s (*.f32 u 4))
(*.f32 s (*.f32 3 (*.f32 4/3 u)))
(*.f32 (+.f32 (*.f32 u 8) 4) (*.f32 s u))
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u 8))))
(*.f32 u (*.f32 s (+.f32 (*.f32 u 8) 4)))
(*.f32 (*.f32 u s) (+.f32 4 (*.f32 u 8)))
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u 8))))
(*.f32 s (+.f32 (*.f32 4 u) (*.f32 8 (*.f32 u u))))
(*.f32 s (*.f32 3 (*.f32 u (+.f32 4/3 (*.f32 u 8/3)))))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 s (*.f32 8 (*.f32 u u))))
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
Outputs
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
Calls

2 calls:

8.0ms
u
7.0ms
s
Results
ErrorSegmentsBranch
3.4b1s
3.4b1u
Compiler

Compiled 123 to 78 computations (36.6% saved)

regimes19.0ms (0.2%)

Counts
12 → 1
Calls
Call 1
Inputs
(*.f32 u (*.f32 4 s))
(*.f32 4 (*.f32 u s))
(*.f32 s (*.f32 u 4))
(*.f32 s (*.f32 3 (*.f32 4/3 u)))
(*.f32 (+.f32 (*.f32 u 8) 4) (*.f32 s u))
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u 8))))
(*.f32 u (*.f32 s (+.f32 (*.f32 u 8) 4)))
(*.f32 (*.f32 u s) (+.f32 4 (*.f32 u 8)))
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u 8))))
(*.f32 s (+.f32 (*.f32 4 u) (*.f32 8 (*.f32 u u))))
(*.f32 s (*.f32 3 (*.f32 u (+.f32 4/3 (*.f32 u 8/3)))))
(+.f32 (*.f32 4 (*.f32 s u)) (*.f32 s (*.f32 8 (*.f32 u u))))
Outputs
(*.f32 s (+.f32 (*.f32 4 u) (*.f32 8 (*.f32 u u))))
Calls

2 calls:

9.0ms
u
7.0ms
s
Results
ErrorSegmentsBranch
4.8b1s
4.8b1u
Compiler

Compiled 110 to 70 computations (36.4% saved)

regimes16.0ms (0.2%)

Counts
9 → 1
Calls
Call 1
Inputs
(*.f32 u (*.f32 4 s))
(*.f32 4 (*.f32 u s))
(*.f32 s (*.f32 u 4))
(*.f32 s (*.f32 3 (*.f32 4/3 u)))
(*.f32 (+.f32 (*.f32 u 8) 4) (*.f32 s u))
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u 8))))
(*.f32 u (*.f32 s (+.f32 (*.f32 u 8) 4)))
(*.f32 (*.f32 u s) (+.f32 4 (*.f32 u 8)))
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u 8))))
Outputs
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u 8))))
Calls

2 calls:

7.0ms
u
6.0ms
s
Results
ErrorSegmentsBranch
4.9b1s
4.9b1u
Compiler

Compiled 75 to 49 computations (34.7% saved)

regimes11.0ms (0.1%)

Counts
5 → 1
Calls
Call 1
Inputs
(*.f32 u (*.f32 4 s))
(*.f32 4 (*.f32 u s))
(*.f32 s (*.f32 u 4))
(*.f32 s (*.f32 3 (*.f32 4/3 u)))
(*.f32 (+.f32 (*.f32 u 8) 4) (*.f32 s u))
Outputs
(*.f32 (+.f32 (*.f32 u 8) 4) (*.f32 s u))
Calls

2 calls:

5.0ms
u
4.0ms
s
Results
ErrorSegmentsBranch
4.9b1s
4.9b1u
Compiler

Compiled 39 to 26 computations (33.3% saved)

regimes11.0ms (0.1%)

Accuracy

Total -0.1b remaining (-1.1%)

Threshold costs -0.1b (-1.1%)

Counts
4 → 1
Calls
Call 1
Inputs
(*.f32 u (*.f32 4 s))
(*.f32 4 (*.f32 u s))
(*.f32 s (*.f32 u 4))
(*.f32 s (*.f32 3 (*.f32 4/3 u)))
Outputs
(*.f32 u (*.f32 4 s))
Calls

2 calls:

6.0ms
s
4.0ms
u
Results
ErrorSegmentsBranch
8.9b1s
8.9b1u
Compiler

Compiled 30 to 20 computations (33.3% saved)

simplify10.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
045142
186142
294142
3100142
4103142
5104142
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
(*.f32 s (+.f32 (*.f32 u 4) (*.f32 (*.f32 u u) (+.f32 (*.f32 64/3 u) 8))))
(*.f32 u (+.f32 (*.f32 4 s) (*.f32 u (*.f32 s (+.f32 8 (*.f32 u 64/3))))))
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u (+.f32 8 (*.f32 u 64/3))))))
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
(*.f32 s (+.f32 (*.f32 4 u) (*.f32 8 (*.f32 u u))))
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u 8))))
(*.f32 (+.f32 (*.f32 u 8) 4) (*.f32 s u))
(*.f32 u (*.f32 4 s))
Outputs
(*.f32 s (neg.f32 (log1p.f32 (*.f32 u -4))))
(*.f32 s (+.f32 (*.f32 u 4) (*.f32 (*.f32 u u) (+.f32 (*.f32 64/3 u) 8))))
(*.f32 s (+.f32 (*.f32 u 4) (*.f32 (*.f32 u u) (+.f32 (*.f32 u 64/3) 8))))
(*.f32 u (+.f32 (*.f32 4 s) (*.f32 u (*.f32 s (+.f32 8 (*.f32 u 64/3))))))
(*.f32 u (+.f32 (*.f32 s 4) (*.f32 u (*.f32 s (+.f32 (*.f32 u 64/3) 8)))))
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u (+.f32 8 (*.f32 u 64/3))))))
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u (+.f32 (*.f32 u 64/3) 8)))))
(*.f32 (+.f32 (*.f32 (+.f32 8 (*.f32 64/3 u)) u) 4) (*.f32 s u))
(*.f32 (+.f32 4 (*.f32 u (+.f32 (*.f32 u 64/3) 8))) (*.f32 s u))
(*.f32 s (+.f32 (*.f32 4 u) (*.f32 8 (*.f32 u u))))
(*.f32 s (+.f32 (*.f32 u 4) (*.f32 (*.f32 u u) 8)))
(*.f32 s (*.f32 u (+.f32 4 (*.f32 u 8))))
(*.f32 (+.f32 (*.f32 u 8) 4) (*.f32 s u))
(*.f32 (*.f32 s u) (+.f32 4 (*.f32 u 8)))
(*.f32 u (*.f32 4 s))
(*.f32 u (*.f32 s 4))
Compiler

Compiled 115 to 83 computations (27.8% saved)

soundness46.0ms (0.5%)

Algorithm
egg-herbie
Rules
175×fma-neg_binary32
148×fma-def_binary32
47×cancel-sign-sub-inv_binary32
46×sub-neg_binary32
29×distribute-rgt-in_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01014
12411
24111
37011
49611
512611
616611
724011
836311
943311
1051011
1160411
1274311
1385511
1486811
Stop Event
saturated
Compiler

Compiled 74 to 60 computations (18.9% saved)

end107.0ms (1.2%)

Compiler

Compiled 99 to 65 computations (34.3% saved)

Profiling

Loading profile data...