Details

Time bar (total: 10.9s)

analyze96.0ms (0.9%)

Algorithm
search
Search
TrueOtherFalseIter
0%0.1%99.9%0
0%0.1%99.9%1
0%0.1%99.9%2
0.1%0.1%99.9%3
0.1%0.1%99.9%4
0.1%0%99.9%5
0.1%0%99.9%6
0.1%0%99.9%7
0.1%0%99.9%8
0.1%0%99.9%9
0.1%0%99.9%10
0.1%0%99.9%11
0.1%0%99.9%12
Compiler

Compiled 31 to 25 computations (19.4% saved)

sample2.4s (22.3%)

Results
2.4s8256×body256valid

preprocess197.0ms (1.8%)

Algorithm
egg-herbie
Rules
1397×fma-def_binary32
1070×fma-neg_binary32
423×unsub-neg_binary32
358×cancel-sign-sub-inv_binary32
325×sub-neg_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02140
15238
210534
324930
443430
559330
678626
7114526
8188326
9251426
10266826
11315126
12366826
13382926
14392326
15458326
16475526
17501426
18547026
19646926
20782726
022
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
Outputs
0
1
Call 2
Inputs
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4)))))
(*.f32 (*.f32 3 u) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 s 1/4) 3/4)))))
Outputs
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4)))))
(*.f32 (*.f32 3 s) (neg.f32 (log.f32 (-.f32 1 (-.f32 (/.f32 u 3/4) 1/3)))))
(*.f32 (*.f32 3 s) (neg.f32 (log1p.f32 (/.f32 (neg.f32 (+.f32 u -1/4)) 3/4))))
(*.f32 s (*.f32 -3 (log1p.f32 (neg.f32 (/.f32 (+.f32 u -1/4) 3/4)))))
(*.f32 s (*.f32 (log.f32 (-.f32 4/3 (/.f32 u 3/4))) -3))
(*.f32 s (*.f32 (log.f32 (+.f32 (/.f32 u -3/4) 4/3)) -3))
(*.f32 s (*.f32 (log.f32 (+.f32 (*.f32 -4/3 u) 4/3)) -3))
(*.f32 s (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3))
(*.f32 s (*.f32 (log.f32 (fma.f32 u -4/3 4/3)) -3))
(*.f32 (*.f32 3 u) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 s 1/4) 3/4)))))
(*.f32 (*.f32 3 u) (neg.f32 (log.f32 (-.f32 1 (-.f32 (/.f32 s 3/4) 1/3)))))
(*.f32 u (*.f32 3 (neg.f32 (log1p.f32 (/.f32 (neg.f32 (+.f32 s -1/4)) 3/4)))))
(*.f32 u (*.f32 -3 (log1p.f32 (/.f32 (neg.f32 (+.f32 s -1/4)) 3/4))))
(*.f32 u (*.f32 (log.f32 (-.f32 4/3 (/.f32 s 3/4))) -3))
(*.f32 u (*.f32 (log1p.f32 (*.f32 -4/3 (+.f32 s -1/4))) -3))
(*.f32 (log.f32 (+.f32 (*.f32 -4/3 s) 4/3)) (*.f32 u -3))
(*.f32 (log.f32 (fma.f32 -4/3 s 4/3)) (*.f32 u -3))
(*.f32 (log.f32 (fma.f32 s -4/3 4/3)) (*.f32 u -3))
Compiler

Compiled 18 to 16 computations (11.1% saved)

simplify72.0ms (0.7%)

Algorithm
egg-herbie
Rules
738×fma-def_binary32
494×fma-neg_binary32
130×cancel-sign-sub-inv_binary32
102×distribute-rgt-in_binary32
88×sub-neg_binary32
Iterations

Useful iterations: 6 (0.0ms)

IterNodesCost
01420
13319
26117
313915
424115
533315
644013
763413
8101713
9125813
10164213
11190613
12234413
13266013
14269513
15269613
16269613
Stop Event
saturated
Counts
1 → 2
Calls
Call 1
Inputs
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4)))))
Outputs
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4)))))
(*.f32 3 (*.f32 s (neg.f32 (log.f32 (-.f32 1 (/.f32 (+.f32 u -1/4) 3/4))))))
(*.f32 (*.f32 3 s) (neg.f32 (log1p.f32 (/.f32 (neg.f32 (+.f32 u -1/4)) 3/4))))
(*.f32 s (*.f32 -3 (log1p.f32 (/.f32 (+.f32 1/4 (neg.f32 u)) 3/4))))
(*.f32 s (*.f32 (log.f32 (-.f32 4/3 (/.f32 u 3/4))) -3))
(*.f32 s (*.f32 (log.f32 (+.f32 (/.f32 u -3/4) 4/3)) -3))
(*.f32 s (*.f32 (log1p.f32 (+.f32 1/3 (*.f32 u -4/3))) -3))
(*.f32 s (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3))

eval1.0ms (0%)

Compiler

Compiled 25 to 21 computations (16% saved)

prune2.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

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

Compiled 27 to 23 computations (14.8% saved)

localize44.0ms (0.4%)

Local error

Found 4 expressions with local error:

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

Compiled 32 to 25 computations (21.9% saved)

series113.0ms (1%)

Counts
4 → 60
Calls

15 calls:

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

rewrite120.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
888×pow1_binary32
823×add-log-exp_binary32
823×expm1-log1p-u_binary32
822×log1p-expm1-u_binary32
808×add-exp-log_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01035
120235
2221635
Stop Event
node limit
Counts
4 → 60
Calls
Call 1
Inputs
(log1p.f32 (fma.f32 u -4/3 1/3))
(fma.f32 u -4/3 1/3)
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)
(*.f32 s (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (log1p.f32 (fma.f32 u -4/3 1/3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (log1p.f32 (fma.f32 u -4/3 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) (cbrt.f32 (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 2)) (cbrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) (sqrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 (fma.f32 u -4/3 1/3) 1))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (log1p.f32 (fma.f32 u -4/3 1/3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (log1p.f32 (fma.f32 u -4/3 1/3))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 1/3 (*.f32 u -4/3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 u -4/3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (*.f32 u -4/3) 1) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 (fma.f32 u -4/3 1/3) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (fma.f32 u -4/3 1/3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (fma.f32 u -4/3 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (fma.f32 u -4/3 1/3)) (pow.f32 (cbrt.f32 (fma.f32 u -4/3 1/3)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (fma.f32 u -4/3 1/3)) 2) (cbrt.f32 (fma.f32 u -4/3 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (fma.f32 u -4/3 1/3)) (sqrt.f32 (fma.f32 u -4/3 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (*.f32 u -4/3) 3) 1/27) (+.f32 (*.f32 (*.f32 u -4/3) (*.f32 u -4/3)) (-.f32 1/9 (*.f32 (*.f32 u -4/3) 1/3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (*.f32 (*.f32 u -4/3) (*.f32 u -4/3)) 1/9) (-.f32 (*.f32 u -4/3) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (fma.f32 u -4/3 1/3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (fma.f32 u -4/3 1/3) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (fma.f32 u -4/3 1/3)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (fma.f32 u -4/3 1/3)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (fma.f32 u -4/3 1/3) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (fma.f32 u -4/3 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (fma.f32 u -4/3 1/3) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (fma.f32 u -4/3 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (fma.f32 u -4/3 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (fma.f32 u -4/3 1/3)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (*.f32 (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 2) 9))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (+.f32 (fma.f32 u -4/3 1/3) 1) -3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 -3 s))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 -3 s)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 -3 s)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 -3 s))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 -3 s))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 -3 s)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (pow.f32 (+.f32 (fma.f32 u -4/3 1/3) 1) -3) s))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 -3 s)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3) 3) (pow.f32 s 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 s 3) (pow.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 -3 s))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 -3 s))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 -3 s))))))))

simplify256.0ms (2.4%)

Algorithm
egg-herbie
Rules
493×fma-def_binary32
404×+-commutative_binary32
402×associate-+l-_binary32
361×times-frac_binary32
350×unsub-neg_binary32
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01021020
1314963
2912928
32753914
46899914
Stop Event
node limit
Counts
120 → 139
Calls
Call 1
Inputs
(log.f32 4/3)
(+.f32 (log.f32 4/3) (*.f32 -1 u))
(+.f32 (log.f32 4/3) (+.f32 (*.f32 -1/2 (pow.f32 u 2)) (*.f32 -1 u)))
(+.f32 (*.f32 -1/3 (pow.f32 u 3)) (+.f32 (log.f32 4/3) (+.f32 (*.f32 -1/2 (pow.f32 u 2)) (*.f32 -1 u))))
(+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4/3)) (/.f32 1 u))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4/3)) (+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (/.f32 1 u)))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4/3)) (+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/3 (/.f32 1 (pow.f32 u 3))) (/.f32 1 u))))
(+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4/3)) (/.f32 1 u))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4/3)) (+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (/.f32 1 u)))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4/3)) (+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/3 (/.f32 1 (pow.f32 u 3))) (/.f32 1 u))))
1/3
(+.f32 (*.f32 -4/3 u) 1/3)
(+.f32 (*.f32 -4/3 u) 1/3)
(+.f32 (*.f32 -4/3 u) 1/3)
(*.f32 -4/3 u)
(+.f32 1/3 (*.f32 -4/3 u))
(+.f32 1/3 (*.f32 -4/3 u))
(+.f32 1/3 (*.f32 -4/3 u))
(*.f32 -4/3 u)
(+.f32 1/3 (*.f32 -4/3 u))
(+.f32 1/3 (*.f32 -4/3 u))
(+.f32 1/3 (*.f32 -4/3 u))
(*.f32 -3 (log.f32 4/3))
(+.f32 (*.f32 3 u) (*.f32 -3 (log.f32 4/3)))
(+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 u) (*.f32 -3 (log.f32 4/3))))
(+.f32 (pow.f32 u 3) (+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 u) (*.f32 -3 (log.f32 4/3)))))
(*.f32 -3 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))
(+.f32 (*.f32 -3 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))) (*.f32 3 (/.f32 1 u)))
(+.f32 (*.f32 3/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 3 (/.f32 1 u)) (*.f32 -3 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))))
(+.f32 (/.f32 1 (pow.f32 u 3)) (+.f32 (*.f32 3/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 3 (/.f32 1 u)) (*.f32 -3 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))))))
(*.f32 -3 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))
(+.f32 (*.f32 3 (/.f32 1 u)) (*.f32 -3 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))))
(+.f32 (*.f32 3/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 3 (/.f32 1 u)) (*.f32 -3 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))))
(+.f32 (/.f32 1 (pow.f32 u 3)) (+.f32 (*.f32 3/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 3 (/.f32 1 u)) (*.f32 -3 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 -3 (*.f32 s (log.f32 4/3)))
(+.f32 (*.f32 3 (*.f32 s u)) (*.f32 -3 (*.f32 s (log.f32 4/3))))
(+.f32 (*.f32 3/2 (*.f32 s (pow.f32 u 2))) (+.f32 (*.f32 3 (*.f32 s u)) (*.f32 -3 (*.f32 s (log.f32 4/3)))))
(+.f32 (*.f32 3/2 (*.f32 s (pow.f32 u 2))) (+.f32 (*.f32 3 (*.f32 s u)) (+.f32 (*.f32 s (pow.f32 u 3)) (*.f32 -3 (*.f32 s (log.f32 4/3))))))
(*.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))))
(+.f32 (*.f32 3 (/.f32 s u)) (*.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))))
(+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))) (*.f32 3/2 (/.f32 s (pow.f32 u 2)))))
(+.f32 (/.f32 s (pow.f32 u 3)) (+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))) (*.f32 3/2 (/.f32 s (pow.f32 u 2))))))
(*.f32 -3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))))
(+.f32 (*.f32 3 (/.f32 s u)) (*.f32 -3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))))
(+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 -3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))) (*.f32 3/2 (/.f32 s (pow.f32 u 2)))))
(+.f32 (/.f32 s (pow.f32 u 3)) (+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 -3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))) (*.f32 3/2 (/.f32 s (pow.f32 u 2))))))
Outputs
(log.f32 4/3)
(+.f32 (log.f32 4/3) (*.f32 -1 u))
(+.f32 (log.f32 4/3) (neg.f32 u))
(-.f32 (log.f32 4/3) u)
(+.f32 (log.f32 4/3) (+.f32 (*.f32 -1/2 (pow.f32 u 2)) (*.f32 -1 u)))
(+.f32 (log.f32 4/3) (fma.f32 -1/2 (*.f32 u u) (neg.f32 u)))
(+.f32 (log.f32 4/3) (-.f32 (*.f32 u (*.f32 u -1/2)) u))
(-.f32 (fma.f32 u (*.f32 u -1/2) (log.f32 4/3)) u)
(+.f32 (*.f32 -1/3 (pow.f32 u 3)) (+.f32 (log.f32 4/3) (+.f32 (*.f32 -1/2 (pow.f32 u 2)) (*.f32 -1 u))))
(fma.f32 -1/3 (pow.f32 u 3) (+.f32 (log.f32 4/3) (fma.f32 -1/2 (*.f32 u u) (neg.f32 u))))
(+.f32 (-.f32 (*.f32 u (*.f32 u -1/2)) u) (fma.f32 -1/3 (pow.f32 u 3) (log.f32 4/3)))
(-.f32 (fma.f32 -1/3 (pow.f32 u 3) (fma.f32 u (*.f32 u -1/2) (log.f32 4/3))) u)
(+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))
(fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4/3))
(+.f32 (log.f32 -4/3) (log.f32 u))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4/3)) (/.f32 1 u))
(-.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4/3)) (/.f32 1 u))
(+.f32 (log.f32 -4/3) (-.f32 (log.f32 u) (/.f32 1 u)))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4/3)) (+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (/.f32 1 u)))
(-.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4/3)) (+.f32 (/.f32 1 u) (/.f32 1/2 (*.f32 u u))))
(+.f32 (log.f32 -4/3) (-.f32 (log.f32 u) (+.f32 (/.f32 1 u) (/.f32 1/2 (*.f32 u u)))))
(+.f32 (log.f32 -4/3) (+.f32 (-.f32 (log.f32 u) (/.f32 1 u)) (/.f32 -1/2 (*.f32 u u))))
(+.f32 (log.f32 -4/3) (+.f32 (/.f32 -1/2 (*.f32 u u)) (-.f32 (log.f32 u) (/.f32 1 u))))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4/3)) (+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/3 (/.f32 1 (pow.f32 u 3))) (/.f32 1 u))))
(-.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4/3)) (+.f32 (/.f32 1/2 (*.f32 u u)) (+.f32 (/.f32 1 u) (/.f32 1/3 (pow.f32 u 3)))))
(-.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) (+.f32 (/.f32 1/2 (*.f32 u u)) (+.f32 (/.f32 1 u) (/.f32 1/3 (pow.f32 u 3)))))
(+.f32 (log.f32 -4/3) (-.f32 (log.f32 u) (+.f32 (/.f32 1/2 (*.f32 u u)) (+.f32 (/.f32 1 u) (/.f32 1/3 (pow.f32 u 3))))))
(+.f32 (+.f32 (log.f32 -4/3) (-.f32 (log.f32 u) (/.f32 1 u))) (-.f32 (/.f32 -1/2 (*.f32 u u)) (/.f32 1/3 (pow.f32 u 3))))
(+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))
(fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4/3))
(-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4/3)) (/.f32 1 u))
(-.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4/3)) (/.f32 1 u))
(+.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (/.f32 -1 u))
(-.f32 (+.f32 (log.f32 4/3) (/.f32 -1 u)) (log.f32 (/.f32 -1 u)))
(+.f32 (log.f32 4/3) (-.f32 (/.f32 -1 u) (log.f32 (/.f32 -1 u))))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4/3)) (+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (/.f32 1 u)))
(-.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4/3)) (+.f32 (/.f32 1 u) (/.f32 1/2 (*.f32 u u))))
(+.f32 (-.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (/.f32 1/2 (*.f32 u u))) (/.f32 -1 u))
(-.f32 (+.f32 (log.f32 4/3) (+.f32 (/.f32 -1 u) (/.f32 -1/2 (*.f32 u u)))) (log.f32 (/.f32 -1 u)))
(+.f32 (+.f32 (log.f32 4/3) (-.f32 (/.f32 -1 u) (log.f32 (/.f32 -1 u)))) (/.f32 -1/2 (*.f32 u u)))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4/3)) (+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/3 (/.f32 1 (pow.f32 u 3))) (/.f32 1 u))))
(-.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4/3)) (+.f32 (/.f32 1/2 (*.f32 u u)) (+.f32 (/.f32 1 u) (/.f32 1/3 (pow.f32 u 3)))))
(-.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (+.f32 (/.f32 1/2 (*.f32 u u)) (+.f32 (/.f32 1 u) (/.f32 1/3 (pow.f32 u 3)))))
(+.f32 (-.f32 (log.f32 4/3) (+.f32 (log.f32 (/.f32 -1 u)) (+.f32 (/.f32 1 u) (/.f32 1/3 (pow.f32 u 3))))) (/.f32 -1/2 (*.f32 u u)))
(+.f32 (+.f32 (log.f32 4/3) (-.f32 (/.f32 -1 u) (log.f32 (/.f32 -1 u)))) (-.f32 (/.f32 -1/2 (*.f32 u u)) (/.f32 1/3 (pow.f32 u 3))))
1/3
(+.f32 (*.f32 -4/3 u) 1/3)
(fma.f32 -4/3 u 1/3)
(fma.f32 u -4/3 1/3)
(+.f32 (*.f32 -4/3 u) 1/3)
(fma.f32 -4/3 u 1/3)
(fma.f32 u -4/3 1/3)
(+.f32 (*.f32 -4/3 u) 1/3)
(fma.f32 -4/3 u 1/3)
(fma.f32 u -4/3 1/3)
(*.f32 -4/3 u)
(*.f32 u -4/3)
(+.f32 1/3 (*.f32 -4/3 u))
(fma.f32 -4/3 u 1/3)
(fma.f32 u -4/3 1/3)
(+.f32 1/3 (*.f32 -4/3 u))
(fma.f32 -4/3 u 1/3)
(fma.f32 u -4/3 1/3)
(+.f32 1/3 (*.f32 -4/3 u))
(fma.f32 -4/3 u 1/3)
(fma.f32 u -4/3 1/3)
(*.f32 -4/3 u)
(*.f32 u -4/3)
(+.f32 1/3 (*.f32 -4/3 u))
(fma.f32 -4/3 u 1/3)
(fma.f32 u -4/3 1/3)
(+.f32 1/3 (*.f32 -4/3 u))
(fma.f32 -4/3 u 1/3)
(fma.f32 u -4/3 1/3)
(+.f32 1/3 (*.f32 -4/3 u))
(fma.f32 -4/3 u 1/3)
(fma.f32 u -4/3 1/3)
(*.f32 -3 (log.f32 4/3))
(*.f32 (log.f32 4/3) -3)
(+.f32 (*.f32 3 u) (*.f32 -3 (log.f32 4/3)))
(fma.f32 3 u (*.f32 (log.f32 4/3) -3))
(fma.f32 (log.f32 4/3) -3 (*.f32 u 3))
(+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 u) (*.f32 -3 (log.f32 4/3))))
(fma.f32 3/2 (*.f32 u u) (fma.f32 3 u (*.f32 (log.f32 4/3) -3)))
(fma.f32 (*.f32 u u) 3/2 (fma.f32 (log.f32 4/3) -3 (*.f32 u 3)))
(fma.f32 (log.f32 4/3) -3 (*.f32 u (+.f32 3 (*.f32 u 3/2))))
(+.f32 (pow.f32 u 3) (+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 u) (*.f32 -3 (log.f32 4/3)))))
(+.f32 (pow.f32 u 3) (fma.f32 3/2 (*.f32 u u) (fma.f32 3 u (*.f32 (log.f32 4/3) -3))))
(+.f32 (fma.f32 (log.f32 4/3) -3 (*.f32 u 3)) (*.f32 (*.f32 u u) (+.f32 u 3/2)))
(fma.f32 (*.f32 u u) (+.f32 u 3/2) (fma.f32 (log.f32 4/3) -3 (*.f32 u 3)))
(*.f32 -3 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))
(*.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4/3)) -3)
(*.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) -3)
(+.f32 (*.f32 -3 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))) (*.f32 3 (/.f32 1 u)))
(fma.f32 -3 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4/3)) (/.f32 3 u))
(fma.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) -3 (/.f32 3 u))
(+.f32 (*.f32 3/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 3 (/.f32 1 u)) (*.f32 -3 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))))
(+.f32 (/.f32 3/2 (*.f32 u u)) (fma.f32 -3 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4/3)) (/.f32 3 u)))
(+.f32 (/.f32 3/2 (*.f32 u u)) (fma.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) -3 (/.f32 3 u)))
(+.f32 (/.f32 3 u) (fma.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) -3 (/.f32 3/2 (*.f32 u u))))
(+.f32 (/.f32 1 (pow.f32 u 3)) (+.f32 (*.f32 3/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 3 (/.f32 1 u)) (*.f32 -3 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))))))
(+.f32 (+.f32 (/.f32 1 (pow.f32 u 3)) (/.f32 3/2 (*.f32 u u))) (fma.f32 -3 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4/3)) (/.f32 3 u)))
(+.f32 (/.f32 1 (pow.f32 u 3)) (+.f32 (/.f32 3/2 (*.f32 u u)) (fma.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) -3 (/.f32 3 u))))
(+.f32 (fma.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) -3 (/.f32 3/2 (*.f32 u u))) (+.f32 (/.f32 3 u) (/.f32 1 (pow.f32 u 3))))
(+.f32 (/.f32 1 (pow.f32 u 3)) (+.f32 (/.f32 3 u) (fma.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) -3 (/.f32 3/2 (*.f32 u u)))))
(*.f32 -3 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))
(*.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4/3)) -3)
(*.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) -3)
(+.f32 (*.f32 3 (/.f32 1 u)) (*.f32 -3 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))))
(+.f32 (/.f32 3 u) (*.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4/3)) -3))
(fma.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) -3 (/.f32 3 u))
(+.f32 (*.f32 3/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 3 (/.f32 1 u)) (*.f32 -3 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))))
(+.f32 (+.f32 (/.f32 3/2 (*.f32 u u)) (/.f32 3 u)) (*.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4/3)) -3))
(+.f32 (/.f32 3/2 (*.f32 u u)) (fma.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) -3 (/.f32 3 u)))
(+.f32 (/.f32 3 u) (fma.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) -3 (/.f32 3/2 (*.f32 u u))))
(+.f32 (/.f32 1 (pow.f32 u 3)) (+.f32 (*.f32 3/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 3 (/.f32 1 u)) (*.f32 -3 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))))))
(+.f32 (/.f32 1 (pow.f32 u 3)) (+.f32 (+.f32 (/.f32 3/2 (*.f32 u u)) (/.f32 3 u)) (*.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4/3)) -3)))
(+.f32 (/.f32 1 (pow.f32 u 3)) (+.f32 (/.f32 3/2 (*.f32 u u)) (fma.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) -3 (/.f32 3 u))))
(+.f32 (/.f32 1 (pow.f32 u 3)) (+.f32 (/.f32 3 u) (fma.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) -3 (/.f32 3/2 (*.f32 u u)))))
(+.f32 (fma.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) -3 (/.f32 3 u)) (+.f32 (/.f32 1 (pow.f32 u 3)) (/.f32 3/2 (*.f32 u u))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 (*.f32 -3 s) (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 (*.f32 -3 s) (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 (*.f32 -3 s) (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 (*.f32 -3 s) (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 (*.f32 -3 s) (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 (*.f32 -3 s) (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 (*.f32 -3 s) (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 (*.f32 -3 s) (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 (*.f32 -3 s) (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 (*.f32 -3 s) (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 (*.f32 -3 s) (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 (*.f32 -3 s) (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 -3 (*.f32 s (log.f32 4/3)))
(*.f32 -3 (*.f32 (log.f32 4/3) s))
(*.f32 (log.f32 4/3) (*.f32 -3 s))
(+.f32 (*.f32 3 (*.f32 s u)) (*.f32 -3 (*.f32 s (log.f32 4/3))))
(fma.f32 3 (*.f32 u s) (*.f32 -3 (*.f32 (log.f32 4/3) s)))
(fma.f32 -3 (*.f32 (log.f32 4/3) s) (*.f32 3 (*.f32 u s)))
(*.f32 s (fma.f32 (log.f32 4/3) -3 (*.f32 u 3)))
(*.f32 (fma.f32 (log.f32 4/3) -3 (*.f32 u 3)) s)
(+.f32 (*.f32 3/2 (*.f32 s (pow.f32 u 2))) (+.f32 (*.f32 3 (*.f32 s u)) (*.f32 -3 (*.f32 s (log.f32 4/3)))))
(fma.f32 3/2 (*.f32 (*.f32 u u) s) (fma.f32 3 (*.f32 u s) (*.f32 -3 (*.f32 (log.f32 4/3) s))))
(fma.f32 3/2 (*.f32 u (*.f32 u s)) (fma.f32 -3 (*.f32 (log.f32 4/3) s) (*.f32 3 (*.f32 u s))))
(fma.f32 (log.f32 4/3) (*.f32 -3 s) (*.f32 s (*.f32 u (+.f32 3 (*.f32 u 3/2)))))
(*.f32 s (fma.f32 (log.f32 4/3) -3 (*.f32 u (+.f32 3 (*.f32 u 3/2)))))
(+.f32 (*.f32 3/2 (*.f32 s (pow.f32 u 2))) (+.f32 (*.f32 3 (*.f32 s u)) (+.f32 (*.f32 s (pow.f32 u 3)) (*.f32 -3 (*.f32 s (log.f32 4/3))))))
(fma.f32 3/2 (*.f32 (*.f32 u u) s) (fma.f32 3 (*.f32 u s) (fma.f32 s (pow.f32 u 3) (*.f32 -3 (*.f32 (log.f32 4/3) s)))))
(fma.f32 3/2 (*.f32 u (*.f32 u s)) (fma.f32 3 (*.f32 u s) (fma.f32 (pow.f32 u 3) s (*.f32 (log.f32 4/3) (*.f32 -3 s)))))
(+.f32 (*.f32 s (fma.f32 (log.f32 4/3) -3 (pow.f32 u 3))) (*.f32 s (*.f32 u (+.f32 3 (*.f32 u 3/2)))))
(*.f32 s (fma.f32 (*.f32 u u) (+.f32 u 3/2) (fma.f32 (log.f32 4/3) -3 (*.f32 u 3))))
(*.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))))
(*.f32 (*.f32 -3 s) (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4/3)))
(*.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) (*.f32 -3 s))
(+.f32 (*.f32 3 (/.f32 s u)) (*.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))))
(fma.f32 3 (/.f32 s u) (*.f32 (*.f32 -3 s) (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4/3))))
(fma.f32 -3 (*.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) s) (*.f32 3 (/.f32 s u)))
(fma.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) (*.f32 -3 s) (*.f32 3 (/.f32 s u)))
(*.f32 s (fma.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) -3 (/.f32 3 u)))
(+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))) (*.f32 3/2 (/.f32 s (pow.f32 u 2)))))
(fma.f32 3 (/.f32 s u) (fma.f32 -3 (*.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4/3)) s) (*.f32 3/2 (/.f32 s (*.f32 u u)))))
(fma.f32 3 (/.f32 s u) (fma.f32 -3 (*.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) s) (*.f32 3/2 (/.f32 s (*.f32 u u)))))
(fma.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) (*.f32 -3 s) (*.f32 (/.f32 s u) (+.f32 (/.f32 3/2 u) 3)))
(fma.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) (*.f32 -3 s) (*.f32 (/.f32 s u) (+.f32 3 (/.f32 3/2 u))))
(+.f32 (/.f32 s (pow.f32 u 3)) (+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))) (*.f32 3/2 (/.f32 s (pow.f32 u 2))))))
(+.f32 (fma.f32 3 (/.f32 s u) (fma.f32 -3 (*.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4/3)) s) (*.f32 3/2 (/.f32 s (*.f32 u u))))) (/.f32 s (pow.f32 u 3)))
(+.f32 (fma.f32 3 (/.f32 s u) (fma.f32 -3 (*.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) s) (*.f32 3/2 (/.f32 s (*.f32 u u))))) (/.f32 s (pow.f32 u 3)))
(+.f32 (fma.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) (*.f32 -3 s) (*.f32 (/.f32 s u) (+.f32 (/.f32 3/2 u) 3))) (/.f32 s (pow.f32 u 3)))
(+.f32 (fma.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) (*.f32 -3 s) (*.f32 (/.f32 s u) (+.f32 3 (/.f32 3/2 u)))) (/.f32 s (pow.f32 u 3)))
(*.f32 -3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))))
(*.f32 (*.f32 -3 s) (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4/3)))
(*.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 -3 s))
(+.f32 (*.f32 3 (/.f32 s u)) (*.f32 -3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))))
(fma.f32 3 (/.f32 s u) (*.f32 (*.f32 -3 s) (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4/3))))
(fma.f32 3 (/.f32 s u) (*.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 -3 s)))
(fma.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 -3 s) (*.f32 3 (/.f32 s u)))
(*.f32 s (fma.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) -3 (/.f32 3 u)))
(+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 -3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))) (*.f32 3/2 (/.f32 s (pow.f32 u 2)))))
(fma.f32 3 (/.f32 s u) (fma.f32 -3 (*.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4/3)) s) (*.f32 3/2 (/.f32 s (*.f32 u u)))))
(fma.f32 3 (/.f32 s u) (fma.f32 3/2 (/.f32 s (*.f32 u u)) (*.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 -3 s))))
(fma.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 -3 s) (*.f32 (/.f32 s u) (+.f32 (/.f32 3/2 u) 3)))
(fma.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 -3 s) (*.f32 (/.f32 s u) (+.f32 3 (/.f32 3/2 u))))
(+.f32 (/.f32 s (pow.f32 u 3)) (+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 -3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))) (*.f32 3/2 (/.f32 s (pow.f32 u 2))))))
(+.f32 (/.f32 s (pow.f32 u 3)) (fma.f32 3 (/.f32 s u) (fma.f32 -3 (*.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4/3)) s) (*.f32 3/2 (/.f32 s (*.f32 u u))))))
(+.f32 (/.f32 s (pow.f32 u 3)) (fma.f32 3 (/.f32 s u) (fma.f32 3/2 (/.f32 s (*.f32 u u)) (*.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 -3 s)))))
(+.f32 (/.f32 s (pow.f32 u 3)) (fma.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 -3 s) (*.f32 (/.f32 s u) (+.f32 (/.f32 3/2 u) 3))))
(+.f32 (/.f32 s (pow.f32 u 3)) (fma.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 -3 s) (*.f32 (/.f32 s u) (+.f32 3 (/.f32 3/2 u)))))

localize168.0ms (1.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4)))
0.3b
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4)))))
0.5b
(-.f32 1 (/.f32 (-.f32 u 1/4) 3/4))
0.9b
(log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4))))
Compiler

Compiled 59 to 49 computations (16.9% saved)

series52.0ms (0.5%)

Counts
4 → 60
Calls

15 calls:

TimeVariablePointExpression
35.0ms
s
@0
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4)))))
6.0ms
u
@-inf
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4)))))
3.0ms
u
@-inf
(-.f32 1 (/.f32 (-.f32 u 1/4) 3/4))
1.0ms
u
@inf
(log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4))))
1.0ms
u
@0
(log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4))))

rewrite85.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
657×log-prod_binary32
380×pow2_binary32
288×prod-diff_binary32
264×expm1-udef_binary32
263×pow1/3_binary32
Iterations

Useful iterations: 2 (0.0ms)

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

simplify71.0ms (0.7%)

Algorithm
egg-herbie
Rules
578×fma-def_binary32
379×associate-*l*_binary32
319×associate-+l+_binary32
298×associate-*r*_binary32
293×distribute-lft-out_binary32
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01101016
1334924
21038859
33407853
Stop Event
node limit
Counts
202 → 210
Calls
Call 1
Inputs
(log.f32 3/4)
(+.f32 (log.f32 3/4) u)
(+.f32 (*.f32 1/2 (pow.f32 u 2)) (+.f32 (log.f32 3/4) u))
(+.f32 (*.f32 1/2 (pow.f32 u 2)) (+.f32 (log.f32 3/4) (+.f32 u (*.f32 1/3 (pow.f32 u 3)))))
(+.f32 (log.f32 -3/4) (log.f32 (/.f32 1 u)))
(+.f32 (log.f32 -3/4) (+.f32 (log.f32 (/.f32 1 u)) (/.f32 1 u)))
(+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (log.f32 -3/4) (+.f32 (log.f32 (/.f32 1 u)) (/.f32 1 u))))
(+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (log.f32 -3/4) (+.f32 (*.f32 1/3 (/.f32 1 (pow.f32 u 3))) (+.f32 (log.f32 (/.f32 1 u)) (/.f32 1 u)))))
(+.f32 (log.f32 (/.f32 -1 u)) (log.f32 3/4))
(+.f32 (/.f32 1 u) (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 3/4)))
(+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (/.f32 1 u) (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 3/4))))
(+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/3 (/.f32 1 (pow.f32 u 3))) (+.f32 (/.f32 1 u) (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 3/4)))))
4/3
(+.f32 (*.f32 -4/3 u) 4/3)
(+.f32 (*.f32 -4/3 u) 4/3)
(+.f32 (*.f32 -4/3 u) 4/3)
(*.f32 -4/3 u)
(+.f32 4/3 (*.f32 -4/3 u))
(+.f32 4/3 (*.f32 -4/3 u))
(+.f32 4/3 (*.f32 -4/3 u))
(*.f32 -4/3 u)
(+.f32 4/3 (*.f32 -4/3 u))
(+.f32 4/3 (*.f32 -4/3 u))
(+.f32 4/3 (*.f32 -4/3 u))
(*.f32 3 (*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4/3 (-.f32 u 1/4)))))))
(*.f32 3 (*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4/3 (-.f32 u 1/4)))))))
(*.f32 3 (*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4/3 (-.f32 u 1/4)))))))
(*.f32 3 (*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4/3 (-.f32 u 1/4)))))))
(*.f32 3 (*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4/3 (-.f32 u 1/4)))))))
(*.f32 3 (*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4/3 (-.f32 u 1/4)))))))
(*.f32 3 (*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4/3 (-.f32 u 1/4)))))))
(*.f32 3 (*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4/3 (-.f32 u 1/4)))))))
(*.f32 3 (*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4/3 (-.f32 u 1/4)))))))
(*.f32 3 (*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4/3 (-.f32 u 1/4)))))))
(*.f32 3 (*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4/3 (-.f32 u 1/4)))))))
(*.f32 3 (*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4/3 (-.f32 u 1/4)))))))
(*.f32 3 (*.f32 s (log.f32 3/4)))
(+.f32 (*.f32 3 (*.f32 s (log.f32 3/4))) (*.f32 3 (*.f32 s u)))
(+.f32 (*.f32 3/2 (*.f32 s (pow.f32 u 2))) (+.f32 (*.f32 3 (*.f32 s (log.f32 3/4))) (*.f32 3 (*.f32 s u))))
(+.f32 (*.f32 3/2 (*.f32 s (pow.f32 u 2))) (+.f32 (*.f32 3 (*.f32 s (log.f32 3/4))) (+.f32 (*.f32 3 (*.f32 s u)) (*.f32 s (pow.f32 u 3)))))
(*.f32 3 (*.f32 s (+.f32 (log.f32 -3/4) (log.f32 (/.f32 1 u)))))
(+.f32 (*.f32 3 (*.f32 s (+.f32 (log.f32 -3/4) (log.f32 (/.f32 1 u))))) (*.f32 3 (/.f32 s u)))
(+.f32 (*.f32 3 (*.f32 s (+.f32 (log.f32 -3/4) (log.f32 (/.f32 1 u))))) (+.f32 (*.f32 3 (/.f32 s u)) (*.f32 3/2 (/.f32 s (pow.f32 u 2)))))
(+.f32 (/.f32 s (pow.f32 u 3)) (+.f32 (*.f32 3 (*.f32 s (+.f32 (log.f32 -3/4) (log.f32 (/.f32 1 u))))) (+.f32 (*.f32 3 (/.f32 s u)) (*.f32 3/2 (/.f32 s (pow.f32 u 2))))))
(*.f32 3 (*.f32 s (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 3/4))))
(+.f32 (*.f32 3 (/.f32 s u)) (*.f32 3 (*.f32 s (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 3/4)))))
(+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 3 (*.f32 s (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 3/4)))) (*.f32 3/2 (/.f32 s (pow.f32 u 2)))))
(+.f32 (/.f32 s (pow.f32 u 3)) (+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 3 (*.f32 s (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 3/4)))) (*.f32 3/2 (/.f32 s (pow.f32 u 2))))))
3/4
(+.f32 (*.f32 3/4 u) 3/4)
(+.f32 (*.f32 3/4 u) (+.f32 3/4 (*.f32 3/4 (pow.f32 u 2))))
(+.f32 (*.f32 3/4 u) (+.f32 3/4 (+.f32 (*.f32 3/4 (pow.f32 u 2)) (*.f32 3/4 (pow.f32 u 3)))))
(/.f32 -3/4 u)
(neg.f32 (+.f32 (*.f32 3/4 (/.f32 1 (pow.f32 u 2))) (*.f32 3/4 (/.f32 1 u))))
(neg.f32 (+.f32 (*.f32 3/4 (/.f32 1 (pow.f32 u 3))) (+.f32 (*.f32 3/4 (/.f32 1 u)) (*.f32 3/4 (/.f32 1 (pow.f32 u 2))))))
(neg.f32 (+.f32 (*.f32 3/4 (/.f32 1 (pow.f32 u 3))) (+.f32 (*.f32 3/4 (/.f32 1 (pow.f32 u 4))) (+.f32 (*.f32 3/4 (/.f32 1 u)) (*.f32 3/4 (/.f32 1 (pow.f32 u 2)))))))
(/.f32 -3/4 u)
(neg.f32 (+.f32 (*.f32 3/4 (/.f32 1 (pow.f32 u 2))) (*.f32 3/4 (/.f32 1 u))))
(neg.f32 (+.f32 (*.f32 3/4 (/.f32 1 (pow.f32 u 3))) (+.f32 (*.f32 3/4 (/.f32 1 u)) (*.f32 3/4 (/.f32 1 (pow.f32 u 2))))))
(neg.f32 (+.f32 (*.f32 3/4 (/.f32 1 (pow.f32 u 3))) (+.f32 (*.f32 3/4 (/.f32 1 (pow.f32 u 4))) (+.f32 (*.f32 3/4 (/.f32 1 u)) (*.f32 3/4 (/.f32 1 (pow.f32 u 2)))))))
Outputs
(log.f32 3/4)
(+.f32 (log.f32 3/4) u)
(+.f32 (*.f32 1/2 (pow.f32 u 2)) (+.f32 (log.f32 3/4) u))
(fma.f32 1/2 (*.f32 u u) (+.f32 (log.f32 3/4) u))
(+.f32 u (fma.f32 1/2 (*.f32 u u) (log.f32 3/4)))
(+.f32 (log.f32 3/4) (fma.f32 u (*.f32 u 1/2) u))
(+.f32 (*.f32 1/2 (pow.f32 u 2)) (+.f32 (log.f32 3/4) (+.f32 u (*.f32 1/3 (pow.f32 u 3)))))
(fma.f32 1/2 (*.f32 u u) (+.f32 (+.f32 (log.f32 3/4) u) (*.f32 1/3 (pow.f32 u 3))))
(+.f32 (fma.f32 1/3 (pow.f32 u 3) u) (fma.f32 1/2 (*.f32 u u) (log.f32 3/4)))
(+.f32 (fma.f32 1/3 (pow.f32 u 3) (log.f32 3/4)) (fma.f32 u (*.f32 u 1/2) u))
(+.f32 (fma.f32 1/3 (pow.f32 u 3) u) (fma.f32 u (*.f32 u 1/2) (log.f32 3/4)))
(+.f32 (log.f32 -3/4) (log.f32 (/.f32 1 u)))
(+.f32 (log.f32 -3/4) (neg.f32 (log.f32 u)))
(-.f32 (log.f32 -3/4) (log.f32 u))
(+.f32 (log.f32 -3/4) (+.f32 (log.f32 (/.f32 1 u)) (/.f32 1 u)))
(+.f32 (+.f32 (log.f32 -3/4) (neg.f32 (log.f32 u))) (/.f32 1 u))
(+.f32 (log.f32 -3/4) (-.f32 (/.f32 1 u) (log.f32 u)))
(+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (log.f32 -3/4) (+.f32 (log.f32 (/.f32 1 u)) (/.f32 1 u))))
(+.f32 (+.f32 (+.f32 (log.f32 -3/4) (neg.f32 (log.f32 u))) (/.f32 1 u)) (/.f32 1/2 (*.f32 u u)))
(+.f32 (-.f32 (log.f32 -3/4) (log.f32 u)) (+.f32 (/.f32 1 u) (/.f32 1/2 (*.f32 u u))))
(+.f32 (log.f32 -3/4) (-.f32 (/.f32 1 u) (-.f32 (log.f32 u) (/.f32 1/2 (*.f32 u u)))))
(+.f32 (/.f32 1 u) (-.f32 (/.f32 1/2 (*.f32 u u)) (-.f32 (log.f32 u) (log.f32 -3/4))))
(+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (log.f32 -3/4) (+.f32 (*.f32 1/3 (/.f32 1 (pow.f32 u 3))) (+.f32 (log.f32 (/.f32 1 u)) (/.f32 1 u)))))
(+.f32 (+.f32 (/.f32 1/2 (*.f32 u u)) (log.f32 -3/4)) (+.f32 (+.f32 (/.f32 1 u) (neg.f32 (log.f32 u))) (/.f32 1/3 (pow.f32 u 3))))
(+.f32 (log.f32 -3/4) (+.f32 (+.f32 (-.f32 (/.f32 1 u) (log.f32 u)) (/.f32 1/3 (pow.f32 u 3))) (/.f32 1/2 (*.f32 u u))))
(+.f32 (log.f32 -3/4) (+.f32 (/.f32 1/2 (*.f32 u u)) (+.f32 (/.f32 1 u) (-.f32 (/.f32 1/3 (pow.f32 u 3)) (log.f32 u)))))
(+.f32 (log.f32 -3/4) (+.f32 (/.f32 1 u) (+.f32 (-.f32 (/.f32 1/3 (pow.f32 u 3)) (log.f32 u)) (/.f32 1/2 (*.f32 u u)))))
(+.f32 (log.f32 (/.f32 -1 u)) (log.f32 3/4))
(+.f32 (log.f32 3/4) (log.f32 (/.f32 -1 u)))
(+.f32 (/.f32 1 u) (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 3/4)))
(+.f32 (/.f32 1 u) (+.f32 (log.f32 3/4) (log.f32 (/.f32 -1 u))))
(+.f32 (log.f32 3/4) (+.f32 (/.f32 1 u) (log.f32 (/.f32 -1 u))))
(+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (/.f32 1 u) (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 3/4))))
(+.f32 (/.f32 1/2 (*.f32 u u)) (+.f32 (/.f32 1 u) (+.f32 (log.f32 3/4) (log.f32 (/.f32 -1 u)))))
(+.f32 (/.f32 1 u) (+.f32 (+.f32 (log.f32 3/4) (log.f32 (/.f32 -1 u))) (/.f32 1/2 (*.f32 u u))))
(+.f32 (/.f32 1 u) (+.f32 (/.f32 1/2 (*.f32 u u)) (+.f32 (log.f32 3/4) (log.f32 (/.f32 -1 u)))))
(+.f32 (log.f32 3/4) (+.f32 (/.f32 1 u) (+.f32 (/.f32 1/2 (*.f32 u u)) (log.f32 (/.f32 -1 u)))))
(+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/3 (/.f32 1 (pow.f32 u 3))) (+.f32 (/.f32 1 u) (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 3/4)))))
(+.f32 (/.f32 1/2 (*.f32 u u)) (+.f32 (/.f32 1/3 (pow.f32 u 3)) (+.f32 (/.f32 1 u) (+.f32 (log.f32 3/4) (log.f32 (/.f32 -1 u))))))
(+.f32 (+.f32 (/.f32 1 u) (/.f32 1/3 (pow.f32 u 3))) (+.f32 (+.f32 (log.f32 3/4) (log.f32 (/.f32 -1 u))) (/.f32 1/2 (*.f32 u u))))
(+.f32 (/.f32 1 u) (+.f32 (/.f32 1/2 (*.f32 u u)) (+.f32 (/.f32 1/3 (pow.f32 u 3)) (+.f32 (log.f32 3/4) (log.f32 (/.f32 -1 u))))))
(+.f32 (log.f32 3/4) (+.f32 (/.f32 1/2 (*.f32 u u)) (+.f32 (/.f32 1/3 (pow.f32 u 3)) (+.f32 (/.f32 1 u) (log.f32 (/.f32 -1 u))))))
4/3
(+.f32 (*.f32 -4/3 u) 4/3)
(fma.f32 -4/3 u 4/3)
(fma.f32 u -4/3 4/3)
(+.f32 (*.f32 -4/3 u) 4/3)
(fma.f32 -4/3 u 4/3)
(fma.f32 u -4/3 4/3)
(+.f32 (*.f32 -4/3 u) 4/3)
(fma.f32 -4/3 u 4/3)
(fma.f32 u -4/3 4/3)
(*.f32 -4/3 u)
(*.f32 u -4/3)
(+.f32 4/3 (*.f32 -4/3 u))
(fma.f32 -4/3 u 4/3)
(fma.f32 u -4/3 4/3)
(+.f32 4/3 (*.f32 -4/3 u))
(fma.f32 -4/3 u 4/3)
(fma.f32 u -4/3 4/3)
(+.f32 4/3 (*.f32 -4/3 u))
(fma.f32 -4/3 u 4/3)
(fma.f32 u -4/3 4/3)
(*.f32 -4/3 u)
(*.f32 u -4/3)
(+.f32 4/3 (*.f32 -4/3 u))
(fma.f32 -4/3 u 4/3)
(fma.f32 u -4/3 4/3)
(+.f32 4/3 (*.f32 -4/3 u))
(fma.f32 -4/3 u 4/3)
(fma.f32 u -4/3 4/3)
(+.f32 4/3 (*.f32 -4/3 u))
(fma.f32 -4/3 u 4/3)
(fma.f32 u -4/3 4/3)
(*.f32 3 (*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4/3 (-.f32 u 1/4)))))))
(*.f32 (*.f32 3 s) (neg.f32 (log.f32 (+.f32 1 (*.f32 -4/3 (+.f32 u -1/4))))))
(*.f32 3 (*.f32 s (neg.f32 (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4))))))
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 (log.f32 (fma.f32 u -4/3 4/3)) (*.f32 s -3))
(*.f32 3 (*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4/3 (-.f32 u 1/4)))))))
(*.f32 (*.f32 3 s) (neg.f32 (log.f32 (+.f32 1 (*.f32 -4/3 (+.f32 u -1/4))))))
(*.f32 3 (*.f32 s (neg.f32 (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4))))))
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 (log.f32 (fma.f32 u -4/3 4/3)) (*.f32 s -3))
(*.f32 3 (*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4/3 (-.f32 u 1/4)))))))
(*.f32 (*.f32 3 s) (neg.f32 (log.f32 (+.f32 1 (*.f32 -4/3 (+.f32 u -1/4))))))
(*.f32 3 (*.f32 s (neg.f32 (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4))))))
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 (log.f32 (fma.f32 u -4/3 4/3)) (*.f32 s -3))
(*.f32 3 (*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4/3 (-.f32 u 1/4)))))))
(*.f32 (*.f32 3 s) (neg.f32 (log.f32 (+.f32 1 (*.f32 -4/3 (+.f32 u -1/4))))))
(*.f32 3 (*.f32 s (neg.f32 (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4))))))
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 (log.f32 (fma.f32 u -4/3 4/3)) (*.f32 s -3))
(*.f32 3 (*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4/3 (-.f32 u 1/4)))))))
(*.f32 (*.f32 3 s) (neg.f32 (log.f32 (+.f32 1 (*.f32 -4/3 (+.f32 u -1/4))))))
(*.f32 3 (*.f32 s (neg.f32 (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4))))))
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 (log.f32 (fma.f32 u -4/3 4/3)) (*.f32 s -3))
(*.f32 3 (*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4/3 (-.f32 u 1/4)))))))
(*.f32 (*.f32 3 s) (neg.f32 (log.f32 (+.f32 1 (*.f32 -4/3 (+.f32 u -1/4))))))
(*.f32 3 (*.f32 s (neg.f32 (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4))))))
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 (log.f32 (fma.f32 u -4/3 4/3)) (*.f32 s -3))
(*.f32 3 (*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4/3 (-.f32 u 1/4)))))))
(*.f32 (*.f32 3 s) (neg.f32 (log.f32 (+.f32 1 (*.f32 -4/3 (+.f32 u -1/4))))))
(*.f32 3 (*.f32 s (neg.f32 (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4))))))
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 (log.f32 (fma.f32 u -4/3 4/3)) (*.f32 s -3))
(*.f32 3 (*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4/3 (-.f32 u 1/4)))))))
(*.f32 (*.f32 3 s) (neg.f32 (log.f32 (+.f32 1 (*.f32 -4/3 (+.f32 u -1/4))))))
(*.f32 3 (*.f32 s (neg.f32 (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4))))))
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 (log.f32 (fma.f32 u -4/3 4/3)) (*.f32 s -3))
(*.f32 3 (*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4/3 (-.f32 u 1/4)))))))
(*.f32 (*.f32 3 s) (neg.f32 (log.f32 (+.f32 1 (*.f32 -4/3 (+.f32 u -1/4))))))
(*.f32 3 (*.f32 s (neg.f32 (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4))))))
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 (log.f32 (fma.f32 u -4/3 4/3)) (*.f32 s -3))
(*.f32 3 (*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4/3 (-.f32 u 1/4)))))))
(*.f32 (*.f32 3 s) (neg.f32 (log.f32 (+.f32 1 (*.f32 -4/3 (+.f32 u -1/4))))))
(*.f32 3 (*.f32 s (neg.f32 (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4))))))
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 (log.f32 (fma.f32 u -4/3 4/3)) (*.f32 s -3))
(*.f32 3 (*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4/3 (-.f32 u 1/4)))))))
(*.f32 (*.f32 3 s) (neg.f32 (log.f32 (+.f32 1 (*.f32 -4/3 (+.f32 u -1/4))))))
(*.f32 3 (*.f32 s (neg.f32 (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4))))))
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 (log.f32 (fma.f32 u -4/3 4/3)) (*.f32 s -3))
(*.f32 3 (*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4/3 (-.f32 u 1/4)))))))
(*.f32 (*.f32 3 s) (neg.f32 (log.f32 (+.f32 1 (*.f32 -4/3 (+.f32 u -1/4))))))
(*.f32 3 (*.f32 s (neg.f32 (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4))))))
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 (log.f32 (fma.f32 u -4/3 4/3)) (*.f32 s -3))
(*.f32 3 (*.f32 s (log.f32 3/4)))
(*.f32 (*.f32 3 s) (log.f32 3/4))
(*.f32 (log.f32 3/4) (*.f32 3 s))
(+.f32 (*.f32 3 (*.f32 s (log.f32 3/4))) (*.f32 3 (*.f32 s u)))
(*.f32 3 (+.f32 (*.f32 (log.f32 3/4) s) (*.f32 u s)))
(*.f32 (*.f32 3 s) (+.f32 (log.f32 3/4) u))
(*.f32 (+.f32 (log.f32 3/4) u) (*.f32 3 s))
(+.f32 (*.f32 3/2 (*.f32 s (pow.f32 u 2))) (+.f32 (*.f32 3 (*.f32 s (log.f32 3/4))) (*.f32 3 (*.f32 s u))))
(fma.f32 3/2 (*.f32 (*.f32 u u) s) (*.f32 3 (+.f32 (*.f32 (log.f32 3/4) s) (*.f32 u s))))
(fma.f32 (*.f32 s 3/2) (*.f32 u u) (*.f32 (*.f32 3 s) (+.f32 (log.f32 3/4) u)))
(fma.f32 (*.f32 u u) (*.f32 s 3/2) (*.f32 (+.f32 (log.f32 3/4) u) (*.f32 3 s)))
(*.f32 s (+.f32 (*.f32 (log.f32 3/4) 3) (*.f32 u (+.f32 3 (*.f32 u 3/2)))))
(+.f32 (*.f32 3/2 (*.f32 s (pow.f32 u 2))) (+.f32 (*.f32 3 (*.f32 s (log.f32 3/4))) (+.f32 (*.f32 3 (*.f32 s u)) (*.f32 s (pow.f32 u 3)))))
(fma.f32 3/2 (*.f32 (*.f32 u u) s) (fma.f32 3 (*.f32 (log.f32 3/4) s) (fma.f32 3 (*.f32 u s) (*.f32 (pow.f32 u 3) s))))
(fma.f32 3/2 (*.f32 u (*.f32 u s)) (fma.f32 3 (*.f32 s (+.f32 (log.f32 3/4) u)) (*.f32 (pow.f32 u 3) s)))
(fma.f32 3 (*.f32 (+.f32 (log.f32 3/4) u) s) (*.f32 (*.f32 u (*.f32 u s)) (+.f32 u 3/2)))
(*.f32 s (+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 (*.f32 u u) (+.f32 u 3/2))))
(*.f32 3 (*.f32 s (+.f32 (log.f32 -3/4) (log.f32 (/.f32 1 u)))))
(*.f32 (*.f32 3 s) (+.f32 (log.f32 -3/4) (neg.f32 (log.f32 u))))
(*.f32 3 (*.f32 (-.f32 (log.f32 -3/4) (log.f32 u)) s))
(*.f32 (-.f32 (log.f32 -3/4) (log.f32 u)) (*.f32 3 s))
(+.f32 (*.f32 3 (*.f32 s (+.f32 (log.f32 -3/4) (log.f32 (/.f32 1 u))))) (*.f32 3 (/.f32 s u)))
(*.f32 3 (+.f32 (*.f32 (+.f32 (log.f32 -3/4) (neg.f32 (log.f32 u))) s) (/.f32 s u)))
(*.f32 3 (fma.f32 (-.f32 (log.f32 -3/4) (log.f32 u)) s (/.f32 s u)))
(+.f32 (*.f32 3 (*.f32 s (+.f32 (log.f32 -3/4) (log.f32 (/.f32 1 u))))) (+.f32 (*.f32 3 (/.f32 s u)) (*.f32 3/2 (/.f32 s (pow.f32 u 2)))))
(fma.f32 3 (*.f32 (+.f32 (log.f32 -3/4) (neg.f32 (log.f32 u))) s) (fma.f32 3 (/.f32 s u) (*.f32 3/2 (/.f32 s (*.f32 u u)))))
(fma.f32 3 (fma.f32 (-.f32 (log.f32 -3/4) (log.f32 u)) s (/.f32 s u)) (*.f32 3/2 (/.f32 s (*.f32 u u))))
(fma.f32 3 (*.f32 (-.f32 (log.f32 -3/4) (log.f32 u)) s) (*.f32 (/.f32 s u) (+.f32 3 (/.f32 3/2 u))))
(+.f32 (/.f32 s (pow.f32 u 3)) (+.f32 (*.f32 3 (*.f32 s (+.f32 (log.f32 -3/4) (log.f32 (/.f32 1 u))))) (+.f32 (*.f32 3 (/.f32 s u)) (*.f32 3/2 (/.f32 s (pow.f32 u 2))))))
(+.f32 (fma.f32 3 (*.f32 (+.f32 (log.f32 -3/4) (neg.f32 (log.f32 u))) s) (fma.f32 3 (/.f32 s u) (*.f32 3/2 (/.f32 s (*.f32 u u))))) (/.f32 s (pow.f32 u 3)))
(+.f32 (fma.f32 3 (fma.f32 (-.f32 (log.f32 -3/4) (log.f32 u)) s (/.f32 s u)) (*.f32 3/2 (/.f32 s (*.f32 u u)))) (/.f32 s (pow.f32 u 3)))
(fma.f32 3 (fma.f32 (-.f32 (log.f32 -3/4) (log.f32 u)) s (/.f32 s u)) (fma.f32 3/2 (/.f32 s (*.f32 u u)) (/.f32 s (pow.f32 u 3))))
(*.f32 3 (*.f32 s (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 3/4))))
(*.f32 3 (*.f32 (+.f32 (log.f32 3/4) (log.f32 (/.f32 -1 u))) s))
(*.f32 (+.f32 (log.f32 3/4) (log.f32 (/.f32 -1 u))) (*.f32 3 s))
(+.f32 (*.f32 3 (/.f32 s u)) (*.f32 3 (*.f32 s (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 3/4)))))
(*.f32 3 (+.f32 (/.f32 s u) (*.f32 (+.f32 (log.f32 3/4) (log.f32 (/.f32 -1 u))) s)))
(*.f32 3 (fma.f32 (+.f32 (log.f32 3/4) (log.f32 (/.f32 -1 u))) s (/.f32 s u)))
(+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 3 (*.f32 s (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 3/4)))) (*.f32 3/2 (/.f32 s (pow.f32 u 2)))))
(fma.f32 3 (/.f32 s u) (fma.f32 3 (*.f32 (+.f32 (log.f32 3/4) (log.f32 (/.f32 -1 u))) s) (*.f32 3/2 (/.f32 s (*.f32 u u)))))
(fma.f32 3 (+.f32 (/.f32 s u) (*.f32 (+.f32 (log.f32 3/4) (log.f32 (/.f32 -1 u))) s)) (*.f32 3/2 (/.f32 s (*.f32 u u))))
(fma.f32 3 (*.f32 (+.f32 (log.f32 3/4) (log.f32 (/.f32 -1 u))) s) (*.f32 (/.f32 s u) (+.f32 3 (/.f32 3/2 u))))
(+.f32 (/.f32 s (pow.f32 u 3)) (+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 3 (*.f32 s (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 3/4)))) (*.f32 3/2 (/.f32 s (pow.f32 u 2))))))
(+.f32 (/.f32 s (pow.f32 u 3)) (fma.f32 3 (/.f32 s u) (fma.f32 3 (*.f32 (+.f32 (log.f32 3/4) (log.f32 (/.f32 -1 u))) s) (*.f32 3/2 (/.f32 s (*.f32 u u))))))
(+.f32 (/.f32 s (pow.f32 u 3)) (fma.f32 3 (+.f32 (/.f32 s u) (*.f32 (+.f32 (log.f32 3/4) (log.f32 (/.f32 -1 u))) s)) (*.f32 3/2 (/.f32 s (*.f32 u u)))))
(fma.f32 3 (fma.f32 (+.f32 (log.f32 3/4) (log.f32 (/.f32 -1 u))) s (/.f32 s u)) (fma.f32 3/2 (/.f32 s (*.f32 u u)) (/.f32 s (pow.f32 u 3))))
3/4
(+.f32 (*.f32 3/4 u) 3/4)
(fma.f32 3/4 u 3/4)
(+.f32 (*.f32 3/4 u) (+.f32 3/4 (*.f32 3/4 (pow.f32 u 2))))
(+.f32 (fma.f32 3/4 u 3/4) (*.f32 3/4 (*.f32 u u)))
(fma.f32 3/4 u (fma.f32 3/4 (*.f32 u u) 3/4))
(+.f32 3/4 (*.f32 u (fma.f32 3/4 u 3/4)))
(+.f32 (*.f32 3/4 u) (+.f32 3/4 (+.f32 (*.f32 3/4 (pow.f32 u 2)) (*.f32 3/4 (pow.f32 u 3)))))
(+.f32 (fma.f32 3/4 u 3/4) (*.f32 3/4 (+.f32 (*.f32 u u) (pow.f32 u 3))))
(fma.f32 3/4 u (fma.f32 3/4 (fma.f32 u u (pow.f32 u 3)) 3/4))
(*.f32 (fma.f32 u u 1) (fma.f32 3/4 u 3/4))
(/.f32 -3/4 u)
(neg.f32 (+.f32 (*.f32 3/4 (/.f32 1 (pow.f32 u 2))) (*.f32 3/4 (/.f32 1 u))))
(neg.f32 (+.f32 (/.f32 3/4 (*.f32 u u)) (/.f32 3/4 u)))
(+.f32 (/.f32 -3/4 (*.f32 u u)) (/.f32 -3/4 u))
(-.f32 (/.f32 -3/4 u) (/.f32 3/4 (*.f32 u u)))
(+.f32 (/.f32 (/.f32 -3/4 u) u) (/.f32 -3/4 u))
(neg.f32 (+.f32 (*.f32 3/4 (/.f32 1 (pow.f32 u 3))) (+.f32 (*.f32 3/4 (/.f32 1 u)) (*.f32 3/4 (/.f32 1 (pow.f32 u 2))))))
(neg.f32 (+.f32 (/.f32 3/4 (pow.f32 u 3)) (+.f32 (/.f32 3/4 (*.f32 u u)) (/.f32 3/4 u))))
(+.f32 (/.f32 -3/4 (pow.f32 u 3)) (+.f32 (/.f32 -3/4 (*.f32 u u)) (/.f32 -3/4 u)))
(+.f32 (/.f32 -3/4 (pow.f32 u 3)) (-.f32 (/.f32 -3/4 u) (/.f32 3/4 (*.f32 u u))))
(+.f32 (/.f32 -3/4 (pow.f32 u 3)) (+.f32 (/.f32 (/.f32 -3/4 u) u) (/.f32 -3/4 u)))
(neg.f32 (+.f32 (*.f32 3/4 (/.f32 1 (pow.f32 u 3))) (+.f32 (*.f32 3/4 (/.f32 1 (pow.f32 u 4))) (+.f32 (*.f32 3/4 (/.f32 1 u)) (*.f32 3/4 (/.f32 1 (pow.f32 u 2)))))))
(neg.f32 (+.f32 (/.f32 3/4 (pow.f32 u 3)) (+.f32 (+.f32 (/.f32 3/4 (*.f32 u u)) (/.f32 3/4 u)) (/.f32 3/4 (pow.f32 u 4)))))
(-.f32 (/.f32 -3/4 (pow.f32 u 3)) (+.f32 (+.f32 (/.f32 3/4 (*.f32 u u)) (/.f32 3/4 u)) (/.f32 3/4 (pow.f32 u 4))))
(+.f32 (+.f32 (/.f32 -3/4 (pow.f32 u 3)) (-.f32 (/.f32 -3/4 u) (/.f32 3/4 (*.f32 u u)))) (/.f32 -3/4 (pow.f32 u 4)))
(+.f32 (+.f32 (/.f32 -3/4 (pow.f32 u 3)) (+.f32 (/.f32 (/.f32 -3/4 u) u) (/.f32 -3/4 u))) (/.f32 -3/4 (pow.f32 u 4)))
(/.f32 -3/4 u)
(neg.f32 (+.f32 (*.f32 3/4 (/.f32 1 (pow.f32 u 2))) (*.f32 3/4 (/.f32 1 u))))
(neg.f32 (+.f32 (/.f32 3/4 (*.f32 u u)) (/.f32 3/4 u)))
(+.f32 (/.f32 -3/4 (*.f32 u u)) (/.f32 -3/4 u))
(-.f32 (/.f32 -3/4 u) (/.f32 3/4 (*.f32 u u)))
(+.f32 (/.f32 (/.f32 -3/4 u) u) (/.f32 -3/4 u))
(neg.f32 (+.f32 (*.f32 3/4 (/.f32 1 (pow.f32 u 3))) (+.f32 (*.f32 3/4 (/.f32 1 u)) (*.f32 3/4 (/.f32 1 (pow.f32 u 2))))))
(neg.f32 (+.f32 (/.f32 3/4 (pow.f32 u 3)) (+.f32 (/.f32 3/4 (*.f32 u u)) (/.f32 3/4 u))))
(+.f32 (/.f32 -3/4 (pow.f32 u 3)) (+.f32 (/.f32 -3/4 (*.f32 u u)) (/.f32 -3/4 u)))
(+.f32 (/.f32 -3/4 (pow.f32 u 3)) (-.f32 (/.f32 -3/4 u) (/.f32 3/4 (*.f32 u u))))
(+.f32 (/.f32 -3/4 (pow.f32 u 3)) (+.f32 (/.f32 (/.f32 -3/4 u) u) (/.f32 -3/4 u)))
(neg.f32 (+.f32 (*.f32 3/4 (/.f32 1 (pow.f32 u 3))) (+.f32 (*.f32 3/4 (/.f32 1 (pow.f32 u 4))) (+.f32 (*.f32 3/4 (/.f32 1 u)) (*.f32 3/4 (/.f32 1 (pow.f32 u 2)))))))
(neg.f32 (+.f32 (/.f32 3/4 (pow.f32 u 3)) (+.f32 (+.f32 (/.f32 3/4 (*.f32 u u)) (/.f32 3/4 u)) (/.f32 3/4 (pow.f32 u 4)))))
(-.f32 (/.f32 -3/4 (pow.f32 u 3)) (+.f32 (+.f32 (/.f32 3/4 (*.f32 u u)) (/.f32 3/4 u)) (/.f32 3/4 (pow.f32 u 4))))
(+.f32 (+.f32 (/.f32 -3/4 (pow.f32 u 3)) (-.f32 (/.f32 -3/4 u) (/.f32 3/4 (*.f32 u u)))) (/.f32 -3/4 (pow.f32 u 4)))
(+.f32 (+.f32 (/.f32 -3/4 (pow.f32 u 3)) (+.f32 (/.f32 (/.f32 -3/4 u) u) (/.f32 -3/4 u))) (/.f32 -3/4 (pow.f32 u 4)))

eval191.0ms (1.8%)

Compiler

Compiled 5783 to 4718 computations (18.4% saved)

prune95.0ms (0.9%)

Pruning

33 alts after pruning (31 fresh and 2 done)

PrunedKeptTotal
New31831349
Fresh000
Picked011
Done011
Total31833351
Error
0.0b
Counts
351 → 33
Alt Table
Click to see full alt table
StatusErrorProgram
1.2b
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4)))))
1.3b
(*.f32 (*.f32 3 s) (+.f32 (log.f32 (/.f32 1 (-.f32 1 (pow.f32 (fma.f32 u 4/3 -1/3) 3)))) (log1p.f32 (+.f32 (fma.f32 u 4/3 -1/3) (pow.f32 (fma.f32 u 4/3 -1/3) 2)))))
0.8b
(*.f32 (*.f32 3 s) (exp.f32 (log.f32 (neg.f32 (log1p.f32 (*.f32 (+.f32 u -1/4) -4/3))))))
0.9b
(*.f32 s (-.f32 (+.f32 1 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)) 1))
0.8b
(pow.f32 (sqrt.f32 (neg.f32 (*.f32 (*.f32 3 s) (log1p.f32 (*.f32 (+.f32 u -1/4) -4/3))))) 2)
1.2b
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (fma.f32 (+.f32 u -1/4) -4/3 1))))
20.4b
(*.f32 s (+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 (*.f32 u u) (+.f32 u 3/2))))
0.9b
(pow.f32 (cbrt.f32 (neg.f32 (*.f32 (*.f32 3 s) (log1p.f32 (*.f32 (+.f32 u -1/4) -4/3))))) 3)
0.9b
(*.f32 s (*.f32 (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3)) -3))
3.1b
(exp.f32 (log.f32 (neg.f32 (*.f32 (*.f32 3 s) (log1p.f32 (*.f32 (+.f32 u -1/4) -4/3))))))
23.7b
(*.f32 s (+.f32 (*.f32 3 u) (*.f32 -3 (log.f32 4/3))))
21.8b
(*.f32 s (+.f32 (*.f32 (log.f32 3/4) 3) (*.f32 u (+.f32 3 (*.f32 u 3/2)))))
0.7b
(*.f32 (*.f32 3 s) (neg.f32 (log1p.f32 (*.f32 (+.f32 u -1/4) -4/3))))
0.7b
(*.f32 s (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3))
0.9b
(*.f32 (*.f32 3 s) (pow.f32 (sqrt.f32 (neg.f32 (log1p.f32 (*.f32 (+.f32 u -1/4) -4/3)))) 2))
23.7b
(*.f32 (+.f32 (log.f32 3/4) u) (*.f32 3 s))
11.7b
(*.f32 s (*.f32 (expm1.f32 (log1p.f32 (log1p.f32 (fma.f32 u -4/3 1/3)))) -3))
0.9b
(*.f32 (*.f32 3 s) (pow.f32 (cbrt.f32 (neg.f32 (log1p.f32 (*.f32 (+.f32 u -1/4) -4/3)))) 3))
23.7b
(+.f32 (*.f32 3 (*.f32 s (log.f32 3/4))) (*.f32 3 (*.f32 s u)))
29.6b
(*.f32 (*.f32 3 s) (log.f32 3/4))
0.7b
(*.f32 s (expm1.f32 (log1p.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3))))
1.5b
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (+.f32 (-.f32 1 (*.f32 u 4/3)) 1/3))))
29.6b
(*.f32 3 (*.f32 s (log.f32 3/4)))
1.1b
(*.f32 s (log.f32 (pow.f32 (+.f32 (fma.f32 u -4/3 1/3) 1) -3)))
1.2b
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (+.f32 (*.f32 (+.f32 u -1/4) -4/3) 1))))
0.9b
(*.f32 (log.f32 (fma.f32 u -4/3 4/3)) (*.f32 s -3))
1.3b
(*.f32 s (*.f32 (log1p.f32 (/.f32 (-.f32 (*.f32 (*.f32 u -4/3) (*.f32 u -4/3)) 1/9) (-.f32 (*.f32 u -4/3) 1/3))) -3))
0.9b
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 u -4/3 4/3))))
1.1b
(*.f32 -3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
1.3b
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (+.f32 (*.f32 -4/3 u) 4/3))))
23.7b
(*.f32 s (*.f32 (-.f32 (log.f32 4/3) u) -3))
0.7b
(*.f32 (*.f32 3 s) (pow.f32 (pow.f32 (neg.f32 (log1p.f32 (*.f32 (+.f32 u -1/4) -4/3))) 3) 1/3))
1.2b
(*.f32 3 (*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4/3 (-.f32 u 1/4)))))))
Compiler

Compiled 925 to 783 computations (15.4% saved)

localize105.0ms (1%)

Local error

Found 3 expressions with local error:

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

Compiled 42 to 33 computations (21.4% saved)

series115.0ms (1.1%)

Counts
3 → 48
Calls

12 calls:

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

rewrite83.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
525×log-prod_binary32
404×exp-prod_binary32
291×pow-prod-down_binary32
288×pow2_binary32
215×prod-diff_binary32
Iterations

Useful iterations: 2 (0.0ms)

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

simplify71.0ms (0.6%)

Algorithm
egg-herbie
Rules
386×associate-+r+_binary32
363×fma-def_binary32
360×associate-+l-_binary32
337×times-frac_binary32
304×unsub-neg_binary32
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
088788
1252730
2714707
32323696
46604696
Stop Event
node limit
Counts
153 → 157
Calls
Call 1
Inputs
(log.f32 4/3)
(+.f32 (log.f32 4/3) (*.f32 -1 u))
(+.f32 (log.f32 4/3) (+.f32 (*.f32 -1/2 (pow.f32 u 2)) (*.f32 -1 u)))
(+.f32 (*.f32 -1/3 (pow.f32 u 3)) (+.f32 (log.f32 4/3) (+.f32 (*.f32 -1/2 (pow.f32 u 2)) (*.f32 -1 u))))
(+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4/3)) (/.f32 1 u))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4/3)) (+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (/.f32 1 u)))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4/3)) (+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/3 (/.f32 1 (pow.f32 u 3))) (/.f32 1 u))))
(+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4/3)) (/.f32 1 u))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4/3)) (+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (/.f32 1 u)))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4/3)) (+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/3 (/.f32 1 (pow.f32 u 3))) (/.f32 1 u))))
1/3
(+.f32 (*.f32 -4/3 u) 1/3)
(+.f32 (*.f32 -4/3 u) 1/3)
(+.f32 (*.f32 -4/3 u) 1/3)
(*.f32 -4/3 u)
(+.f32 1/3 (*.f32 -4/3 u))
(+.f32 1/3 (*.f32 -4/3 u))
(+.f32 1/3 (*.f32 -4/3 u))
(*.f32 -4/3 u)
(+.f32 1/3 (*.f32 -4/3 u))
(+.f32 1/3 (*.f32 -4/3 u))
(+.f32 1/3 (*.f32 -4/3 u))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 -3 (*.f32 s (log.f32 4/3)))
(+.f32 (*.f32 3 (*.f32 s u)) (*.f32 -3 (*.f32 s (log.f32 4/3))))
(+.f32 (*.f32 3/2 (*.f32 s (pow.f32 u 2))) (+.f32 (*.f32 3 (*.f32 s u)) (*.f32 -3 (*.f32 s (log.f32 4/3)))))
(+.f32 (*.f32 3/2 (*.f32 s (pow.f32 u 2))) (+.f32 (*.f32 3 (*.f32 s u)) (+.f32 (*.f32 s (pow.f32 u 3)) (*.f32 -3 (*.f32 s (log.f32 4/3))))))
(*.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))))
(+.f32 (*.f32 3 (/.f32 s u)) (*.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))))
(+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))) (*.f32 3/2 (/.f32 s (pow.f32 u 2)))))
(+.f32 (/.f32 s (pow.f32 u 3)) (+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))) (*.f32 3/2 (/.f32 s (pow.f32 u 2))))))
(*.f32 -3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))))
(+.f32 (*.f32 3 (/.f32 s u)) (*.f32 -3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))))
(+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 -3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))) (*.f32 3/2 (/.f32 s (pow.f32 u 2)))))
(+.f32 (/.f32 s (pow.f32 u 3)) (+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 -3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))) (*.f32 3/2 (/.f32 s (pow.f32 u 2))))))
Outputs
(log.f32 4/3)
(+.f32 (log.f32 4/3) (*.f32 -1 u))
(+.f32 (log.f32 4/3) (neg.f32 u))
(-.f32 (log.f32 4/3) u)
(+.f32 (log.f32 4/3) (+.f32 (*.f32 -1/2 (pow.f32 u 2)) (*.f32 -1 u)))
(+.f32 (log.f32 4/3) (fma.f32 -1/2 (*.f32 u u) (neg.f32 u)))
(+.f32 (log.f32 4/3) (-.f32 (*.f32 u (*.f32 u -1/2)) u))
(-.f32 (fma.f32 u (*.f32 u -1/2) (log.f32 4/3)) u)
(+.f32 (*.f32 -1/3 (pow.f32 u 3)) (+.f32 (log.f32 4/3) (+.f32 (*.f32 -1/2 (pow.f32 u 2)) (*.f32 -1 u))))
(fma.f32 -1/3 (pow.f32 u 3) (+.f32 (log.f32 4/3) (fma.f32 -1/2 (*.f32 u u) (neg.f32 u))))
(+.f32 (-.f32 (*.f32 u (*.f32 u -1/2)) u) (fma.f32 -1/3 (pow.f32 u 3) (log.f32 4/3)))
(-.f32 (fma.f32 -1/3 (pow.f32 u 3) (fma.f32 u (*.f32 u -1/2) (log.f32 4/3))) u)
(+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))
(fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4/3))
(+.f32 (log.f32 -4/3) (log.f32 u))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4/3)) (/.f32 1 u))
(-.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4/3)) (/.f32 1 u))
(+.f32 (log.f32 -4/3) (+.f32 (log.f32 u) (/.f32 -1 u)))
(+.f32 (log.f32 -4/3) (-.f32 (log.f32 u) (/.f32 1 u)))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4/3)) (+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (/.f32 1 u)))
(-.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4/3)) (+.f32 (/.f32 1 u) (/.f32 1/2 (*.f32 u u))))
(+.f32 (-.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) (/.f32 1/2 (*.f32 u u))) (/.f32 -1 u))
(+.f32 (log.f32 -4/3) (+.f32 (log.f32 u) (+.f32 (/.f32 -1 u) (/.f32 -1/2 (*.f32 u u)))))
(+.f32 (log.f32 -4/3) (+.f32 (/.f32 (/.f32 -1/2 u) u) (-.f32 (log.f32 u) (/.f32 1 u))))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4/3)) (+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/3 (/.f32 1 (pow.f32 u 3))) (/.f32 1 u))))
(-.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4/3)) (+.f32 (/.f32 1/2 (*.f32 u u)) (+.f32 (/.f32 1 u) (/.f32 1/3 (pow.f32 u 3)))))
(-.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) (+.f32 (/.f32 1/2 (*.f32 u u)) (+.f32 (/.f32 1 u) (/.f32 1/3 (pow.f32 u 3)))))
(+.f32 (+.f32 (log.f32 -4/3) (+.f32 (/.f32 -1 u) (/.f32 -1/2 (*.f32 u u)))) (-.f32 (log.f32 u) (/.f32 1/3 (pow.f32 u 3))))
(+.f32 (log.f32 -4/3) (+.f32 (log.f32 u) (+.f32 (/.f32 -1 u) (-.f32 (/.f32 (/.f32 -1/2 u) u) (/.f32 1/3 (pow.f32 u 3))))))
(+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))
(fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4/3))
(-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4/3)) (/.f32 1 u))
(-.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4/3)) (/.f32 1 u))
(+.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (/.f32 -1 u))
(-.f32 (log.f32 4/3) (+.f32 (log.f32 (/.f32 -1 u)) (/.f32 1 u)))
(-.f32 (-.f32 (log.f32 4/3) (/.f32 1 u)) (log.f32 (/.f32 -1 u)))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4/3)) (+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (/.f32 1 u)))
(-.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4/3)) (+.f32 (/.f32 1 u) (/.f32 1/2 (*.f32 u u))))
(+.f32 (-.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (/.f32 1/2 (*.f32 u u))) (/.f32 -1 u))
(+.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (+.f32 (/.f32 -1 u) (/.f32 -1/2 (*.f32 u u))))
(+.f32 (-.f32 (-.f32 (log.f32 4/3) (/.f32 1 u)) (log.f32 (/.f32 -1 u))) (/.f32 (/.f32 -1/2 u) u))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4/3)) (+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/3 (/.f32 1 (pow.f32 u 3))) (/.f32 1 u))))
(-.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4/3)) (+.f32 (/.f32 1/2 (*.f32 u u)) (+.f32 (/.f32 1 u) (/.f32 1/3 (pow.f32 u 3)))))
(-.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (+.f32 (/.f32 1/2 (*.f32 u u)) (+.f32 (/.f32 1 u) (/.f32 1/3 (pow.f32 u 3)))))
(+.f32 (-.f32 (log.f32 4/3) (-.f32 (log.f32 (/.f32 -1 u)) (/.f32 -1/2 (*.f32 u u)))) (-.f32 (/.f32 -1 u) (/.f32 1/3 (pow.f32 u 3))))
(+.f32 (log.f32 4/3) (-.f32 (+.f32 (/.f32 -1 u) (-.f32 (/.f32 (/.f32 -1/2 u) u) (/.f32 1/3 (pow.f32 u 3)))) (log.f32 (/.f32 -1 u))))
(+.f32 (log.f32 4/3) (+.f32 (-.f32 (/.f32 -1 u) (/.f32 1/3 (pow.f32 u 3))) (-.f32 (/.f32 (/.f32 -1/2 u) u) (log.f32 (/.f32 -1 u)))))
1/3
(+.f32 (*.f32 -4/3 u) 1/3)
(fma.f32 -4/3 u 1/3)
(fma.f32 u -4/3 1/3)
(+.f32 (*.f32 -4/3 u) 1/3)
(fma.f32 -4/3 u 1/3)
(fma.f32 u -4/3 1/3)
(+.f32 (*.f32 -4/3 u) 1/3)
(fma.f32 -4/3 u 1/3)
(fma.f32 u -4/3 1/3)
(*.f32 -4/3 u)
(*.f32 u -4/3)
(+.f32 1/3 (*.f32 -4/3 u))
(fma.f32 -4/3 u 1/3)
(fma.f32 u -4/3 1/3)
(+.f32 1/3 (*.f32 -4/3 u))
(fma.f32 -4/3 u 1/3)
(fma.f32 u -4/3 1/3)
(+.f32 1/3 (*.f32 -4/3 u))
(fma.f32 -4/3 u 1/3)
(fma.f32 u -4/3 1/3)
(*.f32 -4/3 u)
(*.f32 u -4/3)
(+.f32 1/3 (*.f32 -4/3 u))
(fma.f32 -4/3 u 1/3)
(fma.f32 u -4/3 1/3)
(+.f32 1/3 (*.f32 -4/3 u))
(fma.f32 -4/3 u 1/3)
(fma.f32 u -4/3 1/3)
(+.f32 1/3 (*.f32 -4/3 u))
(fma.f32 -4/3 u 1/3)
(fma.f32 u -4/3 1/3)
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 (*.f32 -3 s) (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4))))
(*.f32 -3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3))))
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 -3 s))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 (*.f32 -3 s) (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4))))
(*.f32 -3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3))))
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 -3 s))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 (*.f32 -3 s) (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4))))
(*.f32 -3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3))))
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 -3 s))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 (*.f32 -3 s) (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4))))
(*.f32 -3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3))))
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 -3 s))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 (*.f32 -3 s) (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4))))
(*.f32 -3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3))))
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 -3 s))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 (*.f32 -3 s) (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4))))
(*.f32 -3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3))))
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 -3 s))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 (*.f32 -3 s) (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4))))
(*.f32 -3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3))))
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 -3 s))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 (*.f32 -3 s) (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4))))
(*.f32 -3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3))))
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 -3 s))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 (*.f32 -3 s) (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4))))
(*.f32 -3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3))))
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 -3 s))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 (*.f32 -3 s) (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4))))
(*.f32 -3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3))))
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 -3 s))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 (*.f32 -3 s) (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4))))
(*.f32 -3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3))))
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 -3 s))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 (*.f32 -3 s) (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4))))
(*.f32 -3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3))))
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 -3 s))
(*.f32 -3 (*.f32 s (log.f32 4/3)))
(*.f32 (*.f32 -3 s) (log.f32 4/3))
(*.f32 (log.f32 4/3) (*.f32 -3 s))
(*.f32 -3 (*.f32 (log.f32 4/3) s))
(+.f32 (*.f32 3 (*.f32 s u)) (*.f32 -3 (*.f32 s (log.f32 4/3))))
(fma.f32 3 (*.f32 u s) (*.f32 (*.f32 -3 s) (log.f32 4/3)))
(fma.f32 -3 (*.f32 (log.f32 4/3) s) (*.f32 u (*.f32 3 s)))
(*.f32 s (+.f32 (*.f32 (log.f32 4/3) -3) (*.f32 u 3)))
(*.f32 s (+.f32 (*.f32 u 3) (*.f32 (log.f32 4/3) -3)))
(+.f32 (*.f32 3/2 (*.f32 s (pow.f32 u 2))) (+.f32 (*.f32 3 (*.f32 s u)) (*.f32 -3 (*.f32 s (log.f32 4/3)))))
(fma.f32 3/2 (*.f32 (*.f32 u u) s) (fma.f32 3 (*.f32 u s) (*.f32 (*.f32 -3 s) (log.f32 4/3))))
(fma.f32 3/2 (*.f32 (*.f32 u u) s) (fma.f32 -3 (*.f32 (log.f32 4/3) s) (*.f32 u (*.f32 3 s))))
(fma.f32 (log.f32 4/3) (*.f32 -3 s) (*.f32 u (+.f32 (*.f32 3 s) (*.f32 u (*.f32 s 3/2)))))
(*.f32 s (+.f32 (*.f32 (log.f32 4/3) -3) (*.f32 u (+.f32 3 (*.f32 u 3/2)))))
(+.f32 (*.f32 3/2 (*.f32 s (pow.f32 u 2))) (+.f32 (*.f32 3 (*.f32 s u)) (+.f32 (*.f32 s (pow.f32 u 3)) (*.f32 -3 (*.f32 s (log.f32 4/3))))))
(fma.f32 3/2 (*.f32 (*.f32 u u) s) (fma.f32 3 (*.f32 u s) (fma.f32 s (pow.f32 u 3) (*.f32 (*.f32 -3 s) (log.f32 4/3)))))
(fma.f32 3/2 (*.f32 (*.f32 u u) s) (fma.f32 3 (*.f32 u s) (fma.f32 (pow.f32 u 3) s (*.f32 (log.f32 4/3) (*.f32 -3 s)))))
(fma.f32 (*.f32 u u) (*.f32 s 3/2) (fma.f32 (log.f32 4/3) (*.f32 -3 s) (*.f32 (*.f32 u s) (+.f32 3 (*.f32 u u)))))
(*.f32 s (+.f32 (+.f32 (pow.f32 u 3) (*.f32 (log.f32 4/3) -3)) (*.f32 u (+.f32 3 (*.f32 u 3/2)))))
(*.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))))
(*.f32 (*.f32 -3 s) (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4/3)))
(*.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) (*.f32 -3 s))
(+.f32 (*.f32 3 (/.f32 s u)) (*.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))))
(fma.f32 3 (/.f32 s u) (*.f32 (*.f32 -3 s) (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4/3))))
(fma.f32 -3 (*.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) s) (*.f32 3 (/.f32 s u)))
(fma.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) (*.f32 -3 s) (*.f32 (/.f32 3 u) s))
(*.f32 s (+.f32 (*.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) -3) (/.f32 3 u)))
(+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))) (*.f32 3/2 (/.f32 s (pow.f32 u 2)))))
(fma.f32 3 (/.f32 s u) (fma.f32 -3 (*.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4/3)) s) (/.f32 (*.f32 3/2 s) (*.f32 u u))))
(fma.f32 3 (/.f32 s u) (fma.f32 -3 (*.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) s) (*.f32 3/2 (/.f32 s (*.f32 u u)))))
(fma.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) (*.f32 -3 s) (*.f32 (/.f32 s u) (+.f32 3 (/.f32 3/2 u))))
(+.f32 (/.f32 s (pow.f32 u 3)) (+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))) (*.f32 3/2 (/.f32 s (pow.f32 u 2))))))
(+.f32 (fma.f32 3 (/.f32 s u) (fma.f32 -3 (*.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4/3)) s) (/.f32 (*.f32 3/2 s) (*.f32 u u)))) (/.f32 s (pow.f32 u 3)))
(+.f32 (fma.f32 3 (/.f32 s u) (fma.f32 -3 (*.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) s) (*.f32 3/2 (/.f32 s (*.f32 u u))))) (/.f32 s (pow.f32 u 3)))
(+.f32 (fma.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) (*.f32 -3 s) (*.f32 (/.f32 s u) (+.f32 3 (/.f32 3/2 u)))) (/.f32 s (pow.f32 u 3)))
(*.f32 -3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))))
(*.f32 -3 (*.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4/3)) s))
(*.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 -3 s))
(+.f32 (*.f32 3 (/.f32 s u)) (*.f32 -3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))))
(fma.f32 3 (/.f32 s u) (*.f32 -3 (*.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4/3)) s)))
(fma.f32 (*.f32 -3 s) (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 3 (/.f32 s u)))
(fma.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 -3 s) (*.f32 (/.f32 3 u) s))
(*.f32 s (+.f32 (/.f32 3 u) (*.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) -3)))
(+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 -3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))) (*.f32 3/2 (/.f32 s (pow.f32 u 2)))))
(fma.f32 3 (/.f32 s u) (fma.f32 -3 (*.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4/3)) s) (/.f32 (*.f32 3/2 s) (*.f32 u u))))
(fma.f32 3 (/.f32 s u) (fma.f32 (*.f32 -3 s) (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 3/2 (/.f32 s (*.f32 u u)))))
(fma.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 -3 s) (*.f32 (/.f32 s u) (+.f32 3 (/.f32 3/2 u))))
(+.f32 (/.f32 s (pow.f32 u 3)) (+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 -3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))) (*.f32 3/2 (/.f32 s (pow.f32 u 2))))))
(+.f32 (/.f32 s (pow.f32 u 3)) (fma.f32 3 (/.f32 s u) (fma.f32 -3 (*.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4/3)) s) (/.f32 (*.f32 3/2 s) (*.f32 u u)))))
(+.f32 (/.f32 s (pow.f32 u 3)) (fma.f32 3 (/.f32 s u) (fma.f32 (*.f32 -3 s) (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 3/2 (/.f32 s (*.f32 u u))))))
(+.f32 (/.f32 s (pow.f32 u 3)) (fma.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 -3 s) (*.f32 (/.f32 s u) (+.f32 3 (/.f32 3/2 u)))))

localize27.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.3b
(*.f32 3 (*.f32 s (log.f32 3/4)))
0.6b
(*.f32 s (log.f32 3/4))
Compiler

Compiled 17 to 14 computations (17.6% saved)

series32.0ms (0.3%)

Counts
2 → 0
Calls

6 calls:

TimeVariablePointExpression
28.0ms
s
@0
(*.f32 s (log.f32 3/4))
1.0ms
s
@inf
(*.f32 s (log.f32 3/4))
1.0ms
s
@0
(*.f32 3 (*.f32 s (log.f32 3/4)))
1.0ms
s
@-inf
(*.f32 s (log.f32 3/4))
1.0ms
s
@-inf
(*.f32 3 (*.f32 s (log.f32 3/4)))

rewrite79.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
605×pow1_binary32
563×add-log-exp_binary32
563×log1p-expm1-u_binary32
563×expm1-log1p-u_binary32
553×add-exp-log_binary32
Iterations

Useful iterations: 0 (0.0ms)

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

simplify12.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

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

localize116.0ms (1.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 (*.f32 u u) (+.f32 u 3/2)))
0.4b
(*.f32 (+.f32 (log.f32 3/4) u) 3)
0.4b
(*.f32 (*.f32 u u) (+.f32 u 3/2))
1.1b
(+.f32 (log.f32 3/4) u)
Compiler

Compiled 62 to 40 computations (35.5% saved)

series8.0ms (0.1%)

Counts
4 → 39
Calls

12 calls:

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

rewrite105.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
724×fma-def_binary32
610×log-prod_binary32
364×fma-neg_binary32
348×pow2_binary32
239×expm1-udef_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01244
127644
2393944
Stop Event
node limit
Counts
4 → 199
Calls
Call 1
Inputs
(+.f32 (log.f32 3/4) u)
(*.f32 (*.f32 u u) (+.f32 u 3/2))
(*.f32 (+.f32 (log.f32 3/4) u) 3)
(+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 (*.f32 u u) (+.f32 u 3/2)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (+.f32 (log.f32 3/4) u))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 (pow.f32 (log.f32 3/4) 2) (-.f32 (log.f32 3/4) u)) (/.f32 (*.f32 u u) (-.f32 (log.f32 3/4) u)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 (log.f32 3/4) u) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (+.f32 (log.f32 3/4) u))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (+.f32 (log.f32 3/4) u)) (pow.f32 (cbrt.f32 (+.f32 (log.f32 3/4) u)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (+.f32 (log.f32 3/4) u)) 2) (cbrt.f32 (+.f32 (log.f32 3/4) u)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (+.f32 (log.f32 3/4) u)) (sqrt.f32 (+.f32 (log.f32 3/4) u)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 (pow.f32 (log.f32 3/4) 3) (pow.f32 u 3)) (/.f32 1 (fma.f32 u (-.f32 u (log.f32 3/4)) (pow.f32 (log.f32 3/4) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 (pow.f32 (log.f32 3/4) 2) (*.f32 u u)) (/.f32 1 (-.f32 (log.f32 3/4) u)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (fma.f32 u (-.f32 u (log.f32 3/4)) (pow.f32 (log.f32 3/4) 2)) (+.f32 (pow.f32 (log.f32 3/4) 3) (pow.f32 u 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (-.f32 (log.f32 3/4) u) (-.f32 (pow.f32 (log.f32 3/4) 2) (*.f32 u u))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (log.f32 3/4) 3) (pow.f32 u 3)) (fma.f32 u (-.f32 u (log.f32 3/4)) (pow.f32 (log.f32 3/4) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (log.f32 3/4) 3) (pow.f32 u 3)) (fma.f32 u u (-.f32 (pow.f32 (log.f32 3/4) 2) (*.f32 (log.f32 3/4) u))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (log.f32 3/4) 2) (*.f32 u u)) (-.f32 (log.f32 3/4) u))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (+.f32 (pow.f32 (log.f32 3/4) 3) (pow.f32 u 3))) (neg.f32 (fma.f32 u (-.f32 u (log.f32 3/4)) (pow.f32 (log.f32 3/4) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (-.f32 (pow.f32 (log.f32 3/4) 2) (*.f32 u u))) (neg.f32 (-.f32 (log.f32 3/4) u)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (*.f32 u u) (pow.f32 (log.f32 3/4) 2)) (-.f32 u (log.f32 3/4)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (+.f32 (log.f32 3/4) u) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (+.f32 (log.f32 3/4) u) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (+.f32 (log.f32 3/4) u)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (+.f32 (log.f32 3/4) u)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (fma.f32 u (-.f32 u (log.f32 3/4)) (pow.f32 (log.f32 3/4) 2)) (+.f32 (pow.f32 (log.f32 3/4) 3) (pow.f32 u 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (-.f32 (log.f32 3/4) u) (-.f32 (pow.f32 (log.f32 3/4) 2) (*.f32 u u))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (+.f32 (log.f32 3/4) u) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 3/4 (exp.f32 u)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (fma.f32 3/4 (exp.f32 u) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 3/4 (+.f32 1 (expm1.f32 u))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (+.f32 1 (expm1.f32 u)) 3/4))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (+.f32 (log.f32 3/4) u) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (+.f32 (log.f32 3/4) u)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (fma.f32 3/4 (exp.f32 u) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (+.f32 (log.f32 3/4) u)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (+.f32 (log.f32 3/4) u)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (log.f32 3/4) 1 u)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u 1 (log.f32 3/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (log.f32 3/4) u)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 u (log.f32 3/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (log.f32 3/4)) (pow.f32 (cbrt.f32 (log.f32 3/4)) 2) u)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (log.f32 3/4)) 2) (cbrt.f32 (log.f32 3/4)) u)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 u) (pow.f32 (cbrt.f32 u) 2) (log.f32 3/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 u) 2) (cbrt.f32 u) (log.f32 3/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (log.f32 3/4)) (sqrt.f32 (log.f32 3/4)) u)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 u) (sqrt.f32 u) (log.f32 3/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (cbrt.f32 (pow.f32 u 4))) (sqrt.f32 (pow.f32 (cbrt.f32 u) 2)) (log.f32 3/4))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (pow.f32 u 3) (*.f32 u (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 u (*.f32 u 3/2)) (pow.f32 u 3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (*.f32 u (*.f32 u (+.f32 u 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (pow.f32 u 3) 1) (*.f32 (*.f32 u (*.f32 u 3/2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (pow.f32 (cbrt.f32 (pow.f32 (exp.f32 (+.f32 u 3/2)) (*.f32 u u))) 2)) (log.f32 (cbrt.f32 (pow.f32 (exp.f32 (+.f32 u 3/2)) (*.f32 u u)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (pow.f32 (exp.f32 (+.f32 u 3/2)) (*.f32 u u)))) (log.f32 (sqrt.f32 (pow.f32 (exp.f32 (+.f32 u 3/2)) (*.f32 u u)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (pow.f32 u 3) 3) (pow.f32 (*.f32 u (*.f32 u 3/2)) 3)) (+.f32 (pow.f32 (pow.f32 u 3) 2) (-.f32 (pow.f32 (*.f32 u (*.f32 u 3/2)) 2) (*.f32 (pow.f32 u 3) (*.f32 u (*.f32 u 3/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (pow.f32 u 3) 2) (pow.f32 (*.f32 u (*.f32 u 3/2)) 2)) (-.f32 (pow.f32 u 3) (*.f32 u (*.f32 u 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (+.f32 27/8 (pow.f32 u 3)) (*.f32 u u)) (-.f32 (fma.f32 u u 9/4) (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (fma.f32 u u -9/4) (*.f32 u u)) (+.f32 u -3/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (*.f32 u u) (+.f32 27/8 (pow.f32 u 3))) (-.f32 (fma.f32 u u 9/4) (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (*.f32 u u) (fma.f32 u u -9/4)) (+.f32 u -3/2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 u (*.f32 u (+.f32 u 3/2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 u (sqrt.f32 (+.f32 u 3/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (*.f32 (pow.f32 (+.f32 u 3/2) 2) (pow.f32 u 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 (+.f32 u 3/2)) (*.f32 u u)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (exp.f32 (*.f32 u (*.f32 u 3/2))) (exp.f32 (pow.f32 u 3))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 u (*.f32 u (+.f32 u 3/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 u (*.f32 u (+.f32 u 3/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 u (*.f32 u (+.f32 u 3/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 u (*.f32 u (+.f32 u 3/2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u (*.f32 u u) (*.f32 u (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u (*.f32 u 3/2) (pow.f32 u 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u u) u (*.f32 u (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u u) 3/2 (pow.f32 u 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 3/2 (*.f32 u u) (pow.f32 u 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (pow.f32 u 3) (*.f32 u (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 u (*.f32 u 3/2)) (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) 3/2) (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) u) (*.f32 u (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 u) 2) (*.f32 (cbrt.f32 u) (*.f32 u u)) (*.f32 u (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 u) (*.f32 (sqrt.f32 u) (*.f32 u u)) (*.f32 u (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 u 3) 1 (*.f32 (*.f32 u (*.f32 u 3/2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u 3/2) u (pow.f32 u 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (sqrt.f32 u)) (*.f32 u (sqrt.f32 u)) (*.f32 u (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (*.f32 u (*.f32 u 3/2))) 2) (cbrt.f32 (*.f32 u (*.f32 u 3/2))) (pow.f32 u 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (pow.f32 u 3)) (sqrt.f32 (pow.f32 u 3)) (*.f32 u (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 u (*.f32 u 3/2))) (sqrt.f32 (*.f32 u (*.f32 u 3/2))) (pow.f32 u 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 u 3/2) (pow.f32 u 3/2) (*.f32 u (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (sqrt.f32 u) u) (*.f32 (sqrt.f32 u) u) (*.f32 u (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (cbrt.f32 (pow.f32 u 4))) (pow.f32 (cbrt.f32 u) 2) (*.f32 u (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u u) (pow.f32 (cbrt.f32 u) 2)) (cbrt.f32 u) (*.f32 u (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u u) (sqrt.f32 u)) (sqrt.f32 u) (*.f32 u (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 3/2 (cbrt.f32 (pow.f32 u 4))) (pow.f32 (cbrt.f32 u) 2) (pow.f32 u 3))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (*.f32 (+.f32 (log.f32 3/4) u) 3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (log.f32 3/4) 3) (*.f32 u 3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 u 3) (*.f32 (log.f32 3/4) 3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 3 u) (*.f32 3 (log.f32 3/4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (pow.f32 (*.f32 3/4 (exp.f32 u)) 2)) (+.f32 (log.f32 3/4) u))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (pow.f32 (*.f32 3/4 (exp.f32 u)) 3))) (log.f32 (sqrt.f32 (pow.f32 (*.f32 3/4 (exp.f32 u)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (+.f32 (pow.f32 (log.f32 3/4) 3) (pow.f32 u 3)) 3) (fma.f32 u (-.f32 u (log.f32 3/4)) (pow.f32 (log.f32 3/4) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (-.f32 (pow.f32 (log.f32 3/4) 2) (*.f32 u u)) 3) (-.f32 (log.f32 3/4) u))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 3 (+.f32 (pow.f32 (log.f32 3/4) 3) (pow.f32 u 3))) (fma.f32 u (-.f32 u (log.f32 3/4)) (pow.f32 (log.f32 3/4) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 3 (-.f32 (pow.f32 (log.f32 3/4) 2) (*.f32 u u))) (-.f32 (log.f32 3/4) u))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (pow.f32 (+.f32 (log.f32 3/4) u) 3) 27) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (*.f32 (pow.f32 (+.f32 (log.f32 3/4) u) 2) 9))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (*.f32 3/4 (exp.f32 u)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (+.f32 (log.f32 3/4) u) 3) 27))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (log.f32 3/4) 3 (*.f32 u 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u 3 (*.f32 (log.f32 3/4) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 3 (log.f32 3/4) (*.f32 3 u))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 3 u (*.f32 3 (log.f32 3/4)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 (log.f32 3/4) u) 3)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 (*.f32 (pow.f32 (+.f32 (log.f32 3/4) u) 2) 9) (fma.f32 (+.f32 (log.f32 3/4) u) 3 (*.f32 (neg.f32 (+.f32 u 3/2)) (*.f32 u u)))) (/.f32 (*.f32 (pow.f32 (+.f32 u 3/2) 2) (pow.f32 u 4)) (fma.f32 (+.f32 (log.f32 3/4) u) 3 (*.f32 (neg.f32 (+.f32 u 3/2)) (*.f32 u u)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 (log.f32 3/4) u) 3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 (log.f32 3/4) u) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 (log.f32 3/4) u) 3))) (pow.f32 (cbrt.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 (log.f32 3/4) u) 3))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 (log.f32 3/4) u) 3))) 2) (cbrt.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 (log.f32 3/4) u) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 (log.f32 3/4) u) 3))) (sqrt.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 (log.f32 3/4) u) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (fma.f32 (pow.f32 (+.f32 (log.f32 3/4) u) 3) 27 (pow.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) 3)) (/.f32 1 (fma.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) (-.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) (*.f32 (+.f32 (log.f32 3/4) u) 3)) (*.f32 (pow.f32 (+.f32 (log.f32 3/4) u) 2) 9))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 (*.f32 (pow.f32 (+.f32 (log.f32 3/4) u) 2) 9) (*.f32 (pow.f32 (+.f32 u 3/2) 2) (pow.f32 u 4))) (/.f32 1 (fma.f32 (+.f32 (log.f32 3/4) u) 3 (*.f32 (neg.f32 (+.f32 u 3/2)) (*.f32 u u)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (fma.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) (-.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) (*.f32 (+.f32 (log.f32 3/4) u) 3)) (*.f32 (pow.f32 (+.f32 (log.f32 3/4) u) 2) 9)) (fma.f32 (pow.f32 (+.f32 (log.f32 3/4) u) 3) 27 (pow.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (fma.f32 (+.f32 (log.f32 3/4) u) 3 (*.f32 (neg.f32 (+.f32 u 3/2)) (*.f32 u u))) (-.f32 (*.f32 (pow.f32 (+.f32 (log.f32 3/4) u) 2) 9) (*.f32 (pow.f32 (+.f32 u 3/2) 2) (pow.f32 u 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (fma.f32 (pow.f32 (+.f32 (log.f32 3/4) u) 3) 27 (pow.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) 3)) (fma.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) (-.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) (*.f32 (+.f32 (log.f32 3/4) u) 3)) (*.f32 (pow.f32 (+.f32 (log.f32 3/4) u) 2) 9)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (fma.f32 (pow.f32 (+.f32 (log.f32 3/4) u) 3) 27 (pow.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) 3)) (fma.f32 (pow.f32 (+.f32 u 3/2) 2) (pow.f32 u 4) (-.f32 (*.f32 (pow.f32 (+.f32 (log.f32 3/4) u) 2) 9) (*.f32 (+.f32 (log.f32 3/4) u) (*.f32 3 (*.f32 u (*.f32 u (+.f32 u 3/2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (*.f32 (pow.f32 (+.f32 (log.f32 3/4) u) 2) 9) (*.f32 (pow.f32 (+.f32 u 3/2) 2) (pow.f32 u 4))) (fma.f32 (+.f32 (log.f32 3/4) u) 3 (*.f32 (neg.f32 (+.f32 u 3/2)) (*.f32 u u))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (fma.f32 (pow.f32 (+.f32 (log.f32 3/4) u) 3) 27 (pow.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) 3))) (neg.f32 (fma.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) (-.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) (*.f32 (+.f32 (log.f32 3/4) u) 3)) (*.f32 (pow.f32 (+.f32 (log.f32 3/4) u) 2) 9))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (-.f32 (*.f32 (pow.f32 (+.f32 (log.f32 3/4) u) 2) 9) (*.f32 (pow.f32 (+.f32 u 3/2) 2) (pow.f32 u 4)))) (neg.f32 (fma.f32 (+.f32 (log.f32 3/4) u) 3 (*.f32 (neg.f32 (+.f32 u 3/2)) (*.f32 u u)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (*.f32 (pow.f32 (+.f32 u 3/2) 2) (pow.f32 u 4)) (*.f32 (pow.f32 (+.f32 (log.f32 3/4) u) 2) 9)) (-.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) (*.f32 (+.f32 (log.f32 3/4) u) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 (log.f32 3/4) u) 3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 (log.f32 3/4) u) 3)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 (log.f32 3/4) u) 3))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 (log.f32 3/4) u) 3))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (fma.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) (-.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) (*.f32 (+.f32 (log.f32 3/4) u) 3)) (*.f32 (pow.f32 (+.f32 (log.f32 3/4) u) 2) 9)) (fma.f32 (pow.f32 (+.f32 (log.f32 3/4) u) 3) 27 (pow.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (fma.f32 (+.f32 (log.f32 3/4) u) 3 (*.f32 (neg.f32 (+.f32 u 3/2)) (*.f32 u u))) (-.f32 (*.f32 (pow.f32 (+.f32 (log.f32 3/4) u) 2) 9) (*.f32 (pow.f32 (+.f32 u 3/2) 2) (pow.f32 u 4)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 (log.f32 3/4) u) 3)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 (log.f32 3/4) u) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 (log.f32 3/4) u) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (+.f32 1 (expm1.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))))) (pow.f32 (*.f32 3/4 (exp.f32 u)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (pow.f32 (exp.f32 (+.f32 u 3/2)) (*.f32 u u)) (+.f32 1 (expm1.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (+.f32 1 (expm1.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))))) (+.f32 1 (expm1.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (+.f32 1 (expm1.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3))) (pow.f32 (exp.f32 (+.f32 u 3/2)) (*.f32 u u))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (pow.f32 (*.f32 3/4 (exp.f32 u)) 3) (+.f32 1 (expm1.f32 (*.f32 u (*.f32 u (+.f32 u 3/2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (+.f32 1 (expm1.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3))) (+.f32 1 (expm1.f32 (*.f32 u (*.f32 u (+.f32 u 3/2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 (log.f32 3/4) u) 3)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 (log.f32 3/4) u) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 (log.f32 3/4) u) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 (log.f32 3/4) u) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 (log.f32 3/4) u) 3))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u (*.f32 u u) (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log.f32 3/4) u) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 (log.f32 3/4) u) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (+.f32 (log.f32 3/4) u) 3 (*.f32 u (*.f32 u (+.f32 u 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u u) u (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log.f32 3/4) u) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u u) (+.f32 u 3/2) (*.f32 (+.f32 (log.f32 3/4) u) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (+.f32 u 3/2) (*.f32 u u) (*.f32 (+.f32 (log.f32 3/4) u) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) 1 (*.f32 (+.f32 (log.f32 3/4) u) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 3 (+.f32 (log.f32 3/4) u) (*.f32 u (*.f32 u (+.f32 u 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) 1 (*.f32 u (*.f32 u (+.f32 u 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 u (*.f32 u (+.f32 u 3/2))) (*.f32 (+.f32 (log.f32 3/4) u) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 u (*.f32 u (+.f32 u 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (pow.f32 u 3) (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log.f32 3/4) u) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3)) (cbrt.f32 (*.f32 (pow.f32 (+.f32 (log.f32 3/4) u) 2) 9)) (*.f32 u (*.f32 u (+.f32 u 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (*.f32 (pow.f32 (+.f32 (log.f32 3/4) u) 2) 9)) (cbrt.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3)) (*.f32 u (*.f32 u (+.f32 u 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (+.f32 u 3/2)) 2) (*.f32 (cbrt.f32 (+.f32 u 3/2)) (*.f32 u u)) (*.f32 (+.f32 (log.f32 3/4) u) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (+.f32 (log.f32 3/4) u)) 2) (*.f32 (cbrt.f32 (+.f32 (log.f32 3/4) u)) 3) (*.f32 u (*.f32 u (+.f32 u 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (*.f32 u (*.f32 u (+.f32 u 3/2)))) (pow.f32 (cbrt.f32 (*.f32 u (*.f32 u (+.f32 u 3/2)))) 2) (*.f32 (+.f32 (log.f32 3/4) u) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (*.f32 u (*.f32 u (+.f32 u 3/2)))) 2) (cbrt.f32 (*.f32 u (*.f32 u (+.f32 u 3/2)))) (*.f32 (+.f32 (log.f32 3/4) 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 3/2)) (*.f32 (+.f32 (log.f32 3/4) u) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (pow.f32 u 4)) (*.f32 (pow.f32 (cbrt.f32 u) 2) u) (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log.f32 3/4) u) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 u) 2) (*.f32 (cbrt.f32 u) (*.f32 u u)) (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log.f32 3/4) u) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 u) 2) (*.f32 (cbrt.f32 u) (*.f32 u (+.f32 u 3/2))) (*.f32 (+.f32 (log.f32 3/4) u) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3)) (sqrt.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3)) (*.f32 u (*.f32 u (+.f32 u 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (+.f32 u 3/2)) (*.f32 (sqrt.f32 (+.f32 u 3/2)) (*.f32 u u)) (*.f32 (+.f32 (log.f32 3/4) u) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (+.f32 (log.f32 3/4) u)) (*.f32 (sqrt.f32 (+.f32 (log.f32 3/4) u)) 3) (*.f32 u (*.f32 u (+.f32 u 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (sqrt.f32 (+.f32 u 3/2))) (*.f32 u (sqrt.f32 (+.f32 u 3/2))) (*.f32 (+.f32 (log.f32 3/4) u) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 u) (*.f32 (sqrt.f32 u) (*.f32 u u)) (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log.f32 3/4) u) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 u) (*.f32 (sqrt.f32 u) (*.f32 u (+.f32 u 3/2))) (*.f32 (+.f32 (log.f32 3/4) u) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (+.f32 u 3/2)) u (*.f32 (+.f32 (log.f32 3/4) u) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (sqrt.f32 u)) (*.f32 u (sqrt.f32 u)) (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log.f32 3/4) u) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (pow.f32 u 3)) (sqrt.f32 (pow.f32 u 3)) (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log.f32 3/4) u) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 u 3/2) (pow.f32 u 3/2) (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log.f32 3/4) u) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (sqrt.f32 u) u) (*.f32 (sqrt.f32 u) u) (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log.f32 3/4) u) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 3 (pow.f32 (cbrt.f32 (+.f32 (log.f32 3/4) u)) 2)) (cbrt.f32 (+.f32 (log.f32 3/4) u)) (*.f32 u (*.f32 u (+.f32 u 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 3 (sqrt.f32 (+.f32 (log.f32 3/4) u))) (sqrt.f32 (+.f32 (log.f32 3/4) u)) (*.f32 u (*.f32 u (+.f32 u 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (cbrt.f32 (pow.f32 u 4))) (pow.f32 (cbrt.f32 u) 2) (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log.f32 3/4) u) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u u) (pow.f32 (cbrt.f32 (+.f32 u 3/2)) 2)) (cbrt.f32 (+.f32 u 3/2)) (*.f32 (+.f32 (log.f32 3/4) u) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u u) (sqrt.f32 (+.f32 u 3/2))) (sqrt.f32 (+.f32 u 3/2)) (*.f32 (+.f32 (log.f32 3/4) u) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (+.f32 u 3/2) (cbrt.f32 (pow.f32 u 4))) (pow.f32 (cbrt.f32 u) 2) (*.f32 (+.f32 (log.f32 3/4) u) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u u) (pow.f32 (cbrt.f32 u) 2)) (cbrt.f32 u) (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log.f32 3/4) u) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u u) (sqrt.f32 u)) (sqrt.f32 u) (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log.f32 3/4) u) 3)))))))

simplify117.0ms (1.1%)

Algorithm
egg-herbie
Rules
652×distribute-rgt-in_binary32
623×associate-+l+_binary32
598×distribute-lft-in_binary32
536×unswap-sqr_binary32
498×sqr-pow_binary32
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
018397
147359
2114349
3270340
4655335
51778335
63242335
73474335
83773335
94312335
105309335
117324335
Stop Event
node limit
Counts
238 → 217
Calls
Call 1
Inputs
(log.f32 3/4)
u
u
(*.f32 3/2 (pow.f32 u 2))
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(pow.f32 u 3)
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(pow.f32 u 3)
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(*.f32 3 (log.f32 3/4))
(+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u))
(+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u))
(+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u))
(*.f32 3 u)
(+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u))
(+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u))
(+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u))
(*.f32 3 u)
(+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u))
(+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u))
(+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u))
(*.f32 3 (log.f32 3/4))
(+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u))
(+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u)))
(+.f32 (pow.f32 u 3) (+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u))))
(pow.f32 u 3)
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (pow.f32 u 3) (+.f32 (*.f32 3/2 (pow.f32 u 2)) (*.f32 3 u)))
(+.f32 (pow.f32 u 3) (+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u))))
(pow.f32 u 3)
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (pow.f32 u 3) (+.f32 (*.f32 3/2 (pow.f32 u 2)) (*.f32 3 u)))
(+.f32 (pow.f32 u 3) (+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u))))
Outputs
(log.f32 3/4)
u
u
(*.f32 3/2 (pow.f32 u 2))
(*.f32 3/2 (*.f32 u u))
(*.f32 u (*.f32 u 3/2))
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (*.f32 3/2 (*.f32 u u)) (pow.f32 u 3))
(*.f32 (*.f32 u u) (+.f32 3/2 u))
(*.f32 (*.f32 u u) (+.f32 u 3/2))
(*.f32 u (*.f32 u (+.f32 u 3/2)))
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (*.f32 3/2 (*.f32 u u)) (pow.f32 u 3))
(*.f32 (*.f32 u u) (+.f32 3/2 u))
(*.f32 (*.f32 u u) (+.f32 u 3/2))
(*.f32 u (*.f32 u (+.f32 u 3/2)))
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (*.f32 3/2 (*.f32 u u)) (pow.f32 u 3))
(*.f32 (*.f32 u u) (+.f32 3/2 u))
(*.f32 (*.f32 u u) (+.f32 u 3/2))
(*.f32 u (*.f32 u (+.f32 u 3/2)))
(pow.f32 u 3)
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (*.f32 3/2 (*.f32 u u)) (pow.f32 u 3))
(*.f32 (*.f32 u u) (+.f32 3/2 u))
(*.f32 (*.f32 u u) (+.f32 u 3/2))
(*.f32 u (*.f32 u (+.f32 u 3/2)))
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (*.f32 3/2 (*.f32 u u)) (pow.f32 u 3))
(*.f32 (*.f32 u u) (+.f32 3/2 u))
(*.f32 (*.f32 u u) (+.f32 u 3/2))
(*.f32 u (*.f32 u (+.f32 u 3/2)))
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (*.f32 3/2 (*.f32 u u)) (pow.f32 u 3))
(*.f32 (*.f32 u u) (+.f32 3/2 u))
(*.f32 (*.f32 u u) (+.f32 u 3/2))
(*.f32 u (*.f32 u (+.f32 u 3/2)))
(pow.f32 u 3)
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (*.f32 3/2 (*.f32 u u)) (pow.f32 u 3))
(*.f32 (*.f32 u u) (+.f32 3/2 u))
(*.f32 (*.f32 u u) (+.f32 u 3/2))
(*.f32 u (*.f32 u (+.f32 u 3/2)))
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (*.f32 3/2 (*.f32 u u)) (pow.f32 u 3))
(*.f32 (*.f32 u u) (+.f32 3/2 u))
(*.f32 (*.f32 u u) (+.f32 u 3/2))
(*.f32 u (*.f32 u (+.f32 u 3/2)))
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (*.f32 3/2 (*.f32 u u)) (pow.f32 u 3))
(*.f32 (*.f32 u u) (+.f32 3/2 u))
(*.f32 (*.f32 u u) (+.f32 u 3/2))
(*.f32 u (*.f32 u (+.f32 u 3/2)))
(*.f32 3 (log.f32 3/4))
(*.f32 (log.f32 3/4) 3)
(+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u))
(*.f32 3 (+.f32 (log.f32 3/4) u))
(+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u))
(*.f32 3 (+.f32 (log.f32 3/4) u))
(+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u))
(*.f32 3 (+.f32 (log.f32 3/4) u))
(*.f32 3 u)
(*.f32 u 3)
(+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u))
(*.f32 3 (+.f32 (log.f32 3/4) u))
(+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u))
(*.f32 3 (+.f32 (log.f32 3/4) u))
(+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u))
(*.f32 3 (+.f32 (log.f32 3/4) u))
(*.f32 3 u)
(*.f32 u 3)
(+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u))
(*.f32 3 (+.f32 (log.f32 3/4) u))
(+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u))
(*.f32 3 (+.f32 (log.f32 3/4) u))
(+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u))
(*.f32 3 (+.f32 (log.f32 3/4) u))
(*.f32 3 (log.f32 3/4))
(*.f32 (log.f32 3/4) 3)
(+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u))
(*.f32 3 (+.f32 (log.f32 3/4) u))
(+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u)))
(fma.f32 3/2 (*.f32 u u) (*.f32 3 (+.f32 (log.f32 3/4) u)))
(fma.f32 (log.f32 3/4) 3 (*.f32 u (fma.f32 u 3/2 3)))
(+.f32 (pow.f32 u 3) (+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u))))
(+.f32 (pow.f32 u 3) (fma.f32 3/2 (*.f32 u u) (*.f32 3 (+.f32 (log.f32 3/4) u))))
(+.f32 (*.f32 (*.f32 u u) (+.f32 3/2 u)) (*.f32 3 (+.f32 (log.f32 3/4) u)))
(fma.f32 (*.f32 u u) (+.f32 u 3/2) (*.f32 3 (+.f32 (log.f32 3/4) u)))
(fma.f32 u (fma.f32 u 3/2 3) (fma.f32 (log.f32 3/4) 3 (pow.f32 u 3)))
(fma.f32 u (fma.f32 u (+.f32 u 3/2) 3) (*.f32 (log.f32 3/4) 3))
(fma.f32 (log.f32 3/4) 3 (*.f32 u (fma.f32 u (+.f32 u 3/2) 3)))
(pow.f32 u 3)
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (*.f32 3/2 (*.f32 u u)) (pow.f32 u 3))
(*.f32 (*.f32 u u) (+.f32 3/2 u))
(*.f32 (*.f32 u u) (+.f32 u 3/2))
(*.f32 u (*.f32 u (+.f32 u 3/2)))
(+.f32 (pow.f32 u 3) (+.f32 (*.f32 3/2 (pow.f32 u 2)) (*.f32 3 u)))
(+.f32 (pow.f32 u 3) (fma.f32 3/2 (*.f32 u u) (*.f32 u 3)))
(+.f32 (*.f32 (*.f32 u u) (+.f32 3/2 u)) (*.f32 u 3))
(fma.f32 u 3 (*.f32 (*.f32 u u) (+.f32 u 3/2)))
(fma.f32 u (fma.f32 u 3/2 3) (pow.f32 u 3))
(*.f32 u (fma.f32 u (+.f32 u 3/2) 3))
(+.f32 (pow.f32 u 3) (+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u))))
(+.f32 (pow.f32 u 3) (fma.f32 3/2 (*.f32 u u) (*.f32 3 (+.f32 (log.f32 3/4) u))))
(+.f32 (*.f32 (*.f32 u u) (+.f32 3/2 u)) (*.f32 3 (+.f32 (log.f32 3/4) u)))
(fma.f32 (*.f32 u u) (+.f32 u 3/2) (*.f32 3 (+.f32 (log.f32 3/4) u)))
(fma.f32 u (fma.f32 u 3/2 3) (fma.f32 (log.f32 3/4) 3 (pow.f32 u 3)))
(fma.f32 u (fma.f32 u (+.f32 u 3/2) 3) (*.f32 (log.f32 3/4) 3))
(fma.f32 (log.f32 3/4) 3 (*.f32 u (fma.f32 u (+.f32 u 3/2) 3)))
(pow.f32 u 3)
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (*.f32 3/2 (*.f32 u u)) (pow.f32 u 3))
(*.f32 (*.f32 u u) (+.f32 3/2 u))
(*.f32 (*.f32 u u) (+.f32 u 3/2))
(*.f32 u (*.f32 u (+.f32 u 3/2)))
(+.f32 (pow.f32 u 3) (+.f32 (*.f32 3/2 (pow.f32 u 2)) (*.f32 3 u)))
(+.f32 (pow.f32 u 3) (fma.f32 3/2 (*.f32 u u) (*.f32 u 3)))
(+.f32 (*.f32 (*.f32 u u) (+.f32 3/2 u)) (*.f32 u 3))
(fma.f32 u 3 (*.f32 (*.f32 u u) (+.f32 u 3/2)))
(fma.f32 u (fma.f32 u 3/2 3) (pow.f32 u 3))
(*.f32 u (fma.f32 u (+.f32 u 3/2) 3))
(+.f32 (pow.f32 u 3) (+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u))))
(+.f32 (pow.f32 u 3) (fma.f32 3/2 (*.f32 u u) (*.f32 3 (+.f32 (log.f32 3/4) u))))
(+.f32 (*.f32 (*.f32 u u) (+.f32 3/2 u)) (*.f32 3 (+.f32 (log.f32 3/4) u)))
(fma.f32 (*.f32 u u) (+.f32 u 3/2) (*.f32 3 (+.f32 (log.f32 3/4) u)))
(fma.f32 u (fma.f32 u 3/2 3) (fma.f32 (log.f32 3/4) 3 (pow.f32 u 3)))
(fma.f32 u (fma.f32 u (+.f32 u 3/2) 3) (*.f32 (log.f32 3/4) 3))
(fma.f32 (log.f32 3/4) 3 (*.f32 u (fma.f32 u (+.f32 u 3/2) 3)))

localize76.0ms (0.7%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.4b
(-.f32 (*.f32 u -4/3) 1/3)
0.4b
(log1p.f32 (/.f32 (-.f32 (*.f32 (*.f32 u -4/3) (*.f32 u -4/3)) 1/9) (-.f32 (*.f32 u -4/3) 1/3)))
0.5b
(-.f32 (*.f32 (*.f32 u -4/3) (*.f32 u -4/3)) 1/9)
0.5b
(*.f32 (*.f32 u -4/3) (*.f32 u -4/3))
Compiler

Compiled 101 to 80 computations (20.8% saved)

series5.0ms (0%)

Counts
4 → 48
Calls

12 calls:

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

rewrite79.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
589×log-prod_binary32
492×prod-diff_binary32
339×fma-def_binary32
313×pow2_binary32
247×fma-neg_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01141
125827
2346827
Stop Event
node limit
Counts
4 → 145
Calls
Call 1
Inputs
(*.f32 (*.f32 u -4/3) (*.f32 u -4/3))
(-.f32 (*.f32 (*.f32 u -4/3) (*.f32 u -4/3)) 1/9)
(log1p.f32 (/.f32 (-.f32 (*.f32 (*.f32 u -4/3) (*.f32 u -4/3)) 1/9) (-.f32 (*.f32 u -4/3) 1/3)))
(-.f32 (*.f32 u -4/3) 1/3)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (*.f32 u (*.f32 16/9 u)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (pow.f32 (cbrt.f32 (pow.f32 (exp.f32 u) (*.f32 16/9 u))) 2)) (log.f32 (cbrt.f32 (pow.f32 (exp.f32 u) (*.f32 16/9 u)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (pow.f32 (exp.f32 u) (*.f32 16/9 u)))) (log.f32 (sqrt.f32 (pow.f32 (exp.f32 u) (*.f32 16/9 u)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 u (*.f32 16/9 u)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 u -4/3) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 u (*.f32 16/9 u)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 u -4/3) 4) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (cbrt.f32 (*.f32 u -4/3)) 2) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 u -4/3) 6) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 u -4/3) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 u) (*.f32 16/9 u)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 u (*.f32 16/9 u)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 u -4/3) 6))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 u (*.f32 16/9 u))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 u (*.f32 16/9 u))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 2 (log.f32 (*.f32 u -4/3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 u -4/3)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 2 (log.f32 (*.f32 u -4/3))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 u (*.f32 16/9 u)) -1/9)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 -1/9 (*.f32 u (*.f32 16/9 u)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (fma.f32 u (*.f32 16/9 u) -1/9))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (pow.f32 (cbrt.f32 (exp.f32 (fma.f32 u (*.f32 16/9 u) -1/9))) 2)) (log.f32 (cbrt.f32 (exp.f32 (fma.f32 u (*.f32 16/9 u) -1/9)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (exp.f32 (fma.f32 u (*.f32 16/9 u) -1/9)))) (log.f32 (sqrt.f32 (exp.f32 (fma.f32 u (*.f32 16/9 u) -1/9)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (fma.f32 u (*.f32 16/9 u) -1/9) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (fma.f32 u (*.f32 16/9 u) -1/9))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (fma.f32 u (*.f32 16/9 u) -1/9)) (pow.f32 (cbrt.f32 (fma.f32 u (*.f32 16/9 u) -1/9)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (fma.f32 u (*.f32 16/9 u) -1/9)) 2) (cbrt.f32 (fma.f32 u (*.f32 16/9 u) -1/9)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (fma.f32 u (*.f32 16/9 u) -1/9)) (sqrt.f32 (fma.f32 u (*.f32 16/9 u) -1/9)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 (pow.f32 (*.f32 u -4/3) 6) -1/729) (/.f32 1 (+.f32 (pow.f32 (*.f32 u -4/3) 4) (fma.f32 (*.f32 u u) 16/81 1/81))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 (pow.f32 (*.f32 u -4/3) 4) -1/81) (/.f32 1 (fma.f32 u (*.f32 16/9 u) 1/9)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (+.f32 (pow.f32 (*.f32 u -4/3) 4) (fma.f32 (*.f32 u u) 16/81 1/81)) (+.f32 (pow.f32 (*.f32 u -4/3) 6) -1/729)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (fma.f32 u (*.f32 16/9 u) 1/9) (+.f32 (pow.f32 (*.f32 u -4/3) 4) -1/81)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (*.f32 u -4/3) 6) -1/729) (+.f32 (pow.f32 (*.f32 u -4/3) 4) (fma.f32 (*.f32 u u) 16/81 1/81)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (*.f32 u -4/3) 6) -1/729) (+.f32 (pow.f32 (*.f32 u -4/3) 4) (-.f32 1/81 (*.f32 (*.f32 u (*.f32 16/9 u)) -1/9))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (*.f32 u -4/3) 4) -1/81) (fma.f32 u (*.f32 16/9 u) 1/9))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (+.f32 (pow.f32 (*.f32 u -4/3) 6) -1/729)) (neg.f32 (+.f32 (pow.f32 (*.f32 u -4/3) 4) (fma.f32 (*.f32 u u) 16/81 1/81))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (+.f32 (pow.f32 (*.f32 u -4/3) 4) -1/81)) (neg.f32 (fma.f32 u (*.f32 16/9 u) 1/9)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (fma.f32 u (*.f32 16/9 u) -1/9) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (fma.f32 u (*.f32 16/9 u) -1/9) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (fma.f32 u (*.f32 16/9 u) -1/9) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (fma.f32 u (*.f32 16/9 u) -1/9)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (fma.f32 u (*.f32 16/9 u) -1/9)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (+.f32 (pow.f32 (*.f32 u -4/3) 4) (fma.f32 (*.f32 u u) 16/81 1/81)) (+.f32 (pow.f32 (*.f32 u -4/3) 6) -1/729)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (fma.f32 u (*.f32 16/9 u) 1/9) (+.f32 (pow.f32 (*.f32 u -4/3) 4) -1/81)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (fma.f32 u (*.f32 16/9 u) -1/9) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (fma.f32 u (*.f32 16/9 u) -1/9)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (fma.f32 u (*.f32 16/9 u) -1/9))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (fma.f32 u (*.f32 16/9 u) -1/9) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (fma.f32 u (*.f32 16/9 u) -1/9)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (fma.f32 u (*.f32 16/9 u) -1/9)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (fma.f32 u (*.f32 16/9 u) -1/9)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (fma.f32 u (*.f32 16/9 u) -1/9)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u (*.f32 16/9 u) -1/9)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u (*.f32 u 16/9) -1/9)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 -4/3 (*.f32 u (*.f32 u -4/3)) -1/9)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u -4/3) (*.f32 u -4/3) -1/9)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (*.f32 16/9 u)) 1 -1/9)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 u (*.f32 16/9 u)) -1/9)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u u) 16/9 -1/9)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 16/9 (*.f32 u u) -1/9)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (pow.f32 (*.f32 u -4/3) 4)) (pow.f32 (cbrt.f32 (*.f32 u -4/3)) 2) -1/9)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 u) 2) (*.f32 (cbrt.f32 u) (*.f32 16/9 u)) -1/9)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (*.f32 u -4/3)) 2) (cbrt.f32 (pow.f32 (*.f32 u -4/3) 4)) -1/9)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (*.f32 u -4/3)) 2) (*.f32 (cbrt.f32 (*.f32 u -4/3)) (*.f32 u -4/3)) -1/9)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 u) (*.f32 (sqrt.f32 u) (*.f32 16/9 u)) -1/9)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 u -4/3)) (*.f32 (sqrt.f32 (*.f32 u -4/3)) (*.f32 u -4/3)) -1/9)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 16/9 u) u -1/9)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (*.f32 u -4/3)) -4/3 -1/9)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (sqrt.f32 (*.f32 u -4/3)) 3) (sqrt.f32 (*.f32 u -4/3)) -1/9)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u -4/3) (pow.f32 (cbrt.f32 (*.f32 u -4/3)) 2)) (cbrt.f32 (*.f32 u -4/3)) -1/9)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (log1p.f32 (fma.f32 u -4/3 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (pow.f32 (cbrt.f32 (+.f32 (fma.f32 u -4/3 1/3) 1)) 2)) (log.f32 (cbrt.f32 (+.f32 (fma.f32 u -4/3 1/3) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (hypot.f32 1 (sqrt.f32 (fma.f32 u -4/3 1/3)))) (log.f32 (hypot.f32 1 (sqrt.f32 (fma.f32 u -4/3 1/3)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (log1p.f32 (pow.f32 (fma.f32 u -4/3 1/3) 3)) (log.f32 (+.f32 1 (-.f32 (pow.f32 (fma.f32 u -4/3 1/3) 2) (fma.f32 u -4/3 1/3)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (log1p.f32 (fma.f32 u -4/3 1/3)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (log.f32 (-.f32 1 (pow.f32 (fma.f32 u -4/3 1/3) 2))) (log.f32 (-.f32 1 (fma.f32 u -4/3 1/3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (log1p.f32 (fma.f32 u -4/3 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) (cbrt.f32 (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 2)) (cbrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) (sqrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 (fma.f32 u -4/3 1/3) 1))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (log1p.f32 (fma.f32 u -4/3 1/3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (log1p.f32 (fma.f32 u -4/3 1/3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 u -4/3) -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 -1/3 (*.f32 u -4/3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (fma.f32 u -4/3 -1/3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (pow.f32 (cbrt.f32 (exp.f32 (fma.f32 u -4/3 -1/3))) 2)) (log.f32 (cbrt.f32 (exp.f32 (fma.f32 u -4/3 -1/3)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (exp.f32 (fma.f32 u -4/3 -1/3)))) (log.f32 (sqrt.f32 (exp.f32 (fma.f32 u -4/3 -1/3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (fma.f32 u (*.f32 16/9 u) -1/9) (/.f32 1 (fma.f32 u -4/3 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (fma.f32 u -4/3 -1/3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (fma.f32 u -4/3 -1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (fma.f32 u -4/3 -1/3)) (pow.f32 (cbrt.f32 (fma.f32 u -4/3 -1/3)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (fma.f32 u -4/3 -1/3)) 2) (cbrt.f32 (fma.f32 u -4/3 -1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (fma.f32 u -4/3 -1/3)) (sqrt.f32 (fma.f32 u -4/3 -1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (fma.f32 (pow.f32 u 3) -64/27 -1/27) (/.f32 1 (fma.f32 u (*.f32 16/9 u) (fma.f32 u -4/9 1/9))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (fma.f32 u (*.f32 16/9 u) -1/9) (fma.f32 u -4/3 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (fma.f32 u (*.f32 16/9 u) (fma.f32 u -4/9 1/9)) (fma.f32 (pow.f32 u 3) -64/27 -1/27)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (fma.f32 u -4/3 1/3) (fma.f32 u (*.f32 16/9 u) -1/9)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (pow.f32 (cbrt.f32 (fma.f32 u (*.f32 16/9 u) -1/9)) 2) (/.f32 (fma.f32 u -4/3 1/3) (cbrt.f32 (fma.f32 u (*.f32 16/9 u) -1/9))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (sqrt.f32 (fma.f32 u (*.f32 16/9 u) -1/9)) (/.f32 (fma.f32 u -4/3 1/3) (sqrt.f32 (fma.f32 u (*.f32 16/9 u) -1/9))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (fma.f32 u (*.f32 16/9 u) -1/9)) (neg.f32 (fma.f32 u -4/3 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (fma.f32 (pow.f32 u 3) -64/27 -1/27) (fma.f32 u (*.f32 16/9 u) (fma.f32 u -4/9 1/9)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (fma.f32 (pow.f32 u 3) -64/27 -1/27) (fma.f32 u (*.f32 16/9 u) (-.f32 1/9 (*.f32 (*.f32 u -4/3) -1/3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (*.f32 u -4/3) 6) -1/729) (*.f32 (fma.f32 u -4/3 1/3) (+.f32 (pow.f32 (*.f32 u -4/3) 4) (fma.f32 (*.f32 u u) 16/81 1/81))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (*.f32 u -4/3) 4) -1/81) (*.f32 (fma.f32 u -4/3 1/3) (fma.f32 u (*.f32 16/9 u) 1/9)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (fma.f32 (pow.f32 u 3) -64/27 -1/27)) (neg.f32 (fma.f32 u (*.f32 16/9 u) (fma.f32 u -4/9 1/9))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (fma.f32 u -4/3 -1/3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (fma.f32 u -4/3 -1/3) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (fma.f32 u -4/3 -1/3) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (fma.f32 u -4/3 -1/3)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (fma.f32 u -4/3 -1/3)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (fma.f32 u (*.f32 16/9 u) (fma.f32 u -4/9 1/9)) (fma.f32 (pow.f32 u 3) -64/27 -1/27)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (fma.f32 u -4/3 1/3) (fma.f32 u (*.f32 16/9 u) -1/9)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (fma.f32 u -4/3 -1/3) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (fma.f32 u -4/3 -1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (fma.f32 u -4/3 -1/3))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (fma.f32 u -4/3 -1/3) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (fma.f32 u -4/3 -1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (fma.f32 u -4/3 -1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (fma.f32 u -4/3 -1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (fma.f32 u -4/3 -1/3)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u -4/3 -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u 4/3 -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 -4/3 u -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u -4/3) 1 -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 u -4/3) -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 u) 2) (*.f32 (cbrt.f32 u) -4/3) -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (*.f32 u -4/3)) (pow.f32 (cbrt.f32 (*.f32 u -4/3)) 2) -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (*.f32 u -4/3)) 2) (cbrt.f32 (*.f32 u -4/3)) -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 u) (sqrt.f32 (*.f32 16/9 u)) -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 u) (*.f32 (sqrt.f32 u) -4/3) -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 u -4/3)) (sqrt.f32 (*.f32 u -4/3)) -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (cbrt.f32 (pow.f32 (*.f32 u -4/3) 4))) (sqrt.f32 (pow.f32 (cbrt.f32 (*.f32 u -4/3)) 2)) -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 u (*.f32 u -4/3))) (sqrt.f32 -4/3) -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 -4/3 (pow.f32 (cbrt.f32 u) 2)) (cbrt.f32 u) -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 -4/3 (sqrt.f32 u)) (sqrt.f32 u) -1/3)))))

simplify55.0ms (0.5%)

Algorithm
egg-herbie
Rules
840×fma-neg_binary32
798×sub-neg_binary32
401×fma-def_binary32
358×associate-+l-_binary32
243×associate--l+_binary32
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
053455
1141437
2372433
31196429
44636429
Stop Event
node limit
Counts
193 → 176
Calls
Call 1
Inputs
(*.f32 16/9 (pow.f32 u 2))
(*.f32 16/9 (pow.f32 u 2))
(*.f32 16/9 (pow.f32 u 2))
(*.f32 16/9 (pow.f32 u 2))
(*.f32 16/9 (pow.f32 u 2))
(*.f32 16/9 (pow.f32 u 2))
(*.f32 16/9 (pow.f32 u 2))
(*.f32 16/9 (pow.f32 u 2))
(*.f32 16/9 (pow.f32 u 2))
(*.f32 16/9 (pow.f32 u 2))
(*.f32 16/9 (pow.f32 u 2))
(*.f32 16/9 (pow.f32 u 2))
-1/9
(-.f32 (*.f32 16/9 (pow.f32 u 2)) 1/9)
(-.f32 (*.f32 16/9 (pow.f32 u 2)) 1/9)
(-.f32 (*.f32 16/9 (pow.f32 u 2)) 1/9)
(*.f32 16/9 (pow.f32 u 2))
(-.f32 (*.f32 16/9 (pow.f32 u 2)) 1/9)
(-.f32 (*.f32 16/9 (pow.f32 u 2)) 1/9)
(-.f32 (*.f32 16/9 (pow.f32 u 2)) 1/9)
(*.f32 16/9 (pow.f32 u 2))
(-.f32 (*.f32 16/9 (pow.f32 u 2)) 1/9)
(-.f32 (*.f32 16/9 (pow.f32 u 2)) 1/9)
(-.f32 (*.f32 16/9 (pow.f32 u 2)) 1/9)
(log.f32 4/3)
(+.f32 (log.f32 4/3) (*.f32 -1 u))
(+.f32 (log.f32 4/3) (+.f32 (*.f32 -1/2 (pow.f32 u 2)) (*.f32 -1 u)))
(+.f32 (*.f32 -1/3 (pow.f32 u 3)) (+.f32 (log.f32 4/3) (+.f32 (*.f32 -1/2 (pow.f32 u 2)) (*.f32 -1 u))))
(+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4/3)) (/.f32 1 u))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4/3)) (+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (/.f32 1 u)))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4/3)) (+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/3 (/.f32 1 (pow.f32 u 3))) (/.f32 1 u))))
(+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4/3)) (/.f32 1 u))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4/3)) (+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (/.f32 1 u)))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4/3)) (+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/3 (/.f32 1 (pow.f32 u 3))) (/.f32 1 u))))
-1/3
(-.f32 (*.f32 -4/3 u) 1/3)
(-.f32 (*.f32 -4/3 u) 1/3)
(-.f32 (*.f32 -4/3 u) 1/3)
(*.f32 -4/3 u)
(-.f32 (*.f32 -4/3 u) 1/3)
(-.f32 (*.f32 -4/3 u) 1/3)
(-.f32 (*.f32 -4/3 u) 1/3)
(*.f32 -4/3 u)
(-.f32 (*.f32 -4/3 u) 1/3)
(-.f32 (*.f32 -4/3 u) 1/3)
(-.f32 (*.f32 -4/3 u) 1/3)
Outputs
(*.f32 16/9 (pow.f32 u 2))
(*.f32 16/9 (*.f32 u u))
(*.f32 16/9 (pow.f32 u 2))
(*.f32 16/9 (*.f32 u u))
(*.f32 16/9 (pow.f32 u 2))
(*.f32 16/9 (*.f32 u u))
(*.f32 16/9 (pow.f32 u 2))
(*.f32 16/9 (*.f32 u u))
(*.f32 16/9 (pow.f32 u 2))
(*.f32 16/9 (*.f32 u u))
(*.f32 16/9 (pow.f32 u 2))
(*.f32 16/9 (*.f32 u u))
(*.f32 16/9 (pow.f32 u 2))
(*.f32 16/9 (*.f32 u u))
(*.f32 16/9 (pow.f32 u 2))
(*.f32 16/9 (*.f32 u u))
(*.f32 16/9 (pow.f32 u 2))
(*.f32 16/9 (*.f32 u u))
(*.f32 16/9 (pow.f32 u 2))
(*.f32 16/9 (*.f32 u u))
(*.f32 16/9 (pow.f32 u 2))
(*.f32 16/9 (*.f32 u u))
(*.f32 16/9 (pow.f32 u 2))
(*.f32 16/9 (*.f32 u u))
-1/9
(-.f32 (*.f32 16/9 (pow.f32 u 2)) 1/9)
(fma.f32 16/9 (*.f32 u u) -1/9)
(-.f32 (*.f32 16/9 (pow.f32 u 2)) 1/9)
(fma.f32 16/9 (*.f32 u u) -1/9)
(-.f32 (*.f32 16/9 (pow.f32 u 2)) 1/9)
(fma.f32 16/9 (*.f32 u u) -1/9)
(*.f32 16/9 (pow.f32 u 2))
(*.f32 16/9 (*.f32 u u))
(-.f32 (*.f32 16/9 (pow.f32 u 2)) 1/9)
(fma.f32 16/9 (*.f32 u u) -1/9)
(-.f32 (*.f32 16/9 (pow.f32 u 2)) 1/9)
(fma.f32 16/9 (*.f32 u u) -1/9)
(-.f32 (*.f32 16/9 (pow.f32 u 2)) 1/9)
(fma.f32 16/9 (*.f32 u u) -1/9)
(*.f32 16/9 (pow.f32 u 2))
(*.f32 16/9 (*.f32 u u))
(-.f32 (*.f32 16/9 (pow.f32 u 2)) 1/9)
(fma.f32 16/9 (*.f32 u u) -1/9)
(-.f32 (*.f32 16/9 (pow.f32 u 2)) 1/9)
(fma.f32 16/9 (*.f32 u u) -1/9)
(-.f32 (*.f32 16/9 (pow.f32 u 2)) 1/9)
(fma.f32 16/9 (*.f32 u u) -1/9)
(log.f32 4/3)
(+.f32 (log.f32 4/3) (*.f32 -1 u))
(+.f32 (log.f32 4/3) (neg.f32 u))
(-.f32 (log.f32 4/3) u)
(+.f32 (log.f32 4/3) (+.f32 (*.f32 -1/2 (pow.f32 u 2)) (*.f32 -1 u)))
(+.f32 (log.f32 4/3) (fma.f32 -1/2 (*.f32 u u) (neg.f32 u)))
(+.f32 (log.f32 4/3) (-.f32 (*.f32 (*.f32 u u) -1/2) u))
(-.f32 (fma.f32 (*.f32 u u) -1/2 (log.f32 4/3)) u)
(fma.f32 u (fma.f32 u -1/2 -1) (log.f32 4/3))
(+.f32 (*.f32 -1/3 (pow.f32 u 3)) (+.f32 (log.f32 4/3) (+.f32 (*.f32 -1/2 (pow.f32 u 2)) (*.f32 -1 u))))
(fma.f32 -1/3 (pow.f32 u 3) (+.f32 (log.f32 4/3) (fma.f32 -1/2 (*.f32 u u) (neg.f32 u))))
(+.f32 (-.f32 (*.f32 (*.f32 u u) -1/2) u) (fma.f32 -1/3 (pow.f32 u 3) (log.f32 4/3)))
(-.f32 (fma.f32 -1/3 (pow.f32 u 3) (fma.f32 (*.f32 u u) -1/2 (log.f32 4/3))) u)
(fma.f32 u (fma.f32 u -1/2 -1) (fma.f32 -1/3 (pow.f32 u 3) (log.f32 4/3)))
(+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))
(fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4/3))
(+.f32 (log.f32 -4/3) (log.f32 u))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4/3)) (/.f32 1 u))
(-.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4/3)) (/.f32 1 u))
(+.f32 (log.f32 u) (+.f32 (log.f32 -4/3) (/.f32 -1 u)))
(+.f32 (log.f32 -4/3) (+.f32 (log.f32 u) (/.f32 -1 u)))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4/3)) (+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (/.f32 1 u)))
(-.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4/3)) (+.f32 (/.f32 1 u) (/.f32 1/2 (*.f32 u u))))
(+.f32 (log.f32 -4/3) (-.f32 (log.f32 u) (+.f32 (/.f32 1 u) (/.f32 1/2 (*.f32 u u)))))
(+.f32 (log.f32 u) (+.f32 (+.f32 (log.f32 -4/3) (/.f32 -1 u)) (/.f32 -1/2 (*.f32 u u))))
(+.f32 (log.f32 -4/3) (+.f32 (log.f32 u) (+.f32 (/.f32 -1 u) (/.f32 -1/2 (*.f32 u u)))))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4/3)) (+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/3 (/.f32 1 (pow.f32 u 3))) (/.f32 1 u))))
(-.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4/3)) (+.f32 (/.f32 1/2 (*.f32 u u)) (+.f32 (/.f32 1 u) (/.f32 1/3 (pow.f32 u 3)))))
(+.f32 (log.f32 u) (-.f32 (-.f32 (log.f32 -4/3) (+.f32 (/.f32 1/2 (*.f32 u u)) (/.f32 1/3 (pow.f32 u 3)))) (/.f32 1 u)))
(+.f32 (+.f32 (+.f32 (log.f32 -4/3) (/.f32 -1 u)) (/.f32 -1/2 (*.f32 u u))) (-.f32 (log.f32 u) (/.f32 1/3 (pow.f32 u 3))))
(+.f32 (log.f32 -4/3) (+.f32 (log.f32 u) (+.f32 (+.f32 (/.f32 -1 u) (/.f32 -1/2 (*.f32 u u))) (/.f32 -1/3 (pow.f32 u 3)))))
(+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))
(fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4/3))
(-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4/3)) (/.f32 1 u))
(-.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4/3)) (/.f32 1 u))
(+.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (/.f32 -1 u))
(-.f32 (log.f32 4/3) (+.f32 (log.f32 (/.f32 -1 u)) (/.f32 1 u)))
(-.f32 (+.f32 (log.f32 4/3) (/.f32 -1 u)) (log.f32 (/.f32 -1 u)))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4/3)) (+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (/.f32 1 u)))
(-.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4/3)) (+.f32 (/.f32 1 u) (/.f32 1/2 (*.f32 u u))))
(-.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (+.f32 (/.f32 1 u) (/.f32 1/2 (*.f32 u u))))
(+.f32 (-.f32 (log.f32 4/3) (+.f32 (log.f32 (/.f32 -1 u)) (/.f32 1 u))) (/.f32 -1/2 (*.f32 u u)))
(+.f32 (log.f32 4/3) (-.f32 (+.f32 (/.f32 -1 u) (/.f32 -1/2 (*.f32 u u))) (log.f32 (/.f32 -1 u))))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4/3)) (+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/3 (/.f32 1 (pow.f32 u 3))) (/.f32 1 u))))
(-.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4/3)) (+.f32 (/.f32 1/2 (*.f32 u u)) (+.f32 (/.f32 1 u) (/.f32 1/3 (pow.f32 u 3)))))
(-.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (+.f32 (/.f32 1 u) (+.f32 (/.f32 1/2 (*.f32 u u)) (/.f32 1/3 (pow.f32 u 3)))))
(+.f32 (-.f32 (log.f32 4/3) (+.f32 (log.f32 (/.f32 -1 u)) (/.f32 1/2 (*.f32 u u)))) (-.f32 (/.f32 -1 u) (/.f32 1/3 (pow.f32 u 3))))
(+.f32 (log.f32 4/3) (+.f32 (-.f32 (+.f32 (/.f32 -1 u) (/.f32 -1/2 (*.f32 u u))) (log.f32 (/.f32 -1 u))) (/.f32 -1/3 (pow.f32 u 3))))
(+.f32 (log.f32 4/3) (+.f32 (/.f32 -1 u) (-.f32 (+.f32 (/.f32 -1/2 (*.f32 u u)) (/.f32 -1/3 (pow.f32 u 3))) (log.f32 (/.f32 -1 u)))))
-1/3
(-.f32 (*.f32 -4/3 u) 1/3)
(fma.f32 -4/3 u -1/3)
(fma.f32 u -4/3 -1/3)
(-.f32 (*.f32 -4/3 u) 1/3)
(fma.f32 -4/3 u -1/3)
(fma.f32 u -4/3 -1/3)
(-.f32 (*.f32 -4/3 u) 1/3)
(fma.f32 -4/3 u -1/3)
(fma.f32 u -4/3 -1/3)
(*.f32 -4/3 u)
(*.f32 u -4/3)
(-.f32 (*.f32 -4/3 u) 1/3)
(fma.f32 -4/3 u -1/3)
(fma.f32 u -4/3 -1/3)
(-.f32 (*.f32 -4/3 u) 1/3)
(fma.f32 -4/3 u -1/3)
(fma.f32 u -4/3 -1/3)
(-.f32 (*.f32 -4/3 u) 1/3)
(fma.f32 -4/3 u -1/3)
(fma.f32 u -4/3 -1/3)
(*.f32 -4/3 u)
(*.f32 u -4/3)
(-.f32 (*.f32 -4/3 u) 1/3)
(fma.f32 -4/3 u -1/3)
(fma.f32 u -4/3 -1/3)
(-.f32 (*.f32 -4/3 u) 1/3)
(fma.f32 -4/3 u -1/3)
(fma.f32 u -4/3 -1/3)
(-.f32 (*.f32 -4/3 u) 1/3)
(fma.f32 -4/3 u -1/3)
(fma.f32 u -4/3 -1/3)

localize67.0ms (0.6%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f32 (*.f32 3 s) (exp.f32 (log.f32 (neg.f32 (log1p.f32 (*.f32 (+.f32 u -1/4) -4/3))))))
0.3b
(*.f32 (+.f32 u -1/4) -4/3)
0.4b
(log1p.f32 (*.f32 (+.f32 u -1/4) -4/3))
0.7b
(log.f32 (neg.f32 (log1p.f32 (*.f32 (+.f32 u -1/4) -4/3))))
Compiler

Compiled 61 to 50 computations (18% saved)

series7.0ms (0.1%)

Counts
2 → 36
Calls

9 calls:

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

rewrite65.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
562×log-prod_binary32
310×pow-prod-down_binary32
308×pow2_binary32
219×expm1-udef_binary32
219×log1p-udef_binary32
Iterations

Useful iterations: 2 (0.0ms)

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

simplify61.0ms (0.6%)

Algorithm
egg-herbie
Rules
726×distribute-rgt-in_binary32
708×distribute-lft-in_binary32
549×fma-def_binary32
357×times-frac_binary32
206×associate-*l*_binary32
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01361228
13831105
211301048
340491037
Stop Event
node limit
Counts
96 → 109
Calls
Call 1
Inputs
(log.f32 (neg.f32 (log.f32 4/3)))
(+.f32 (*.f32 -1 (/.f32 u (log.f32 4/3))) (log.f32 (neg.f32 (log.f32 4/3))))
(+.f32 (*.f32 -1 (/.f32 u (log.f32 4/3))) (+.f32 (log.f32 (neg.f32 (log.f32 4/3))) (*.f32 -1/2 (*.f32 (+.f32 (/.f32 1 (log.f32 4/3)) (/.f32 1 (pow.f32 (log.f32 4/3) 2))) (pow.f32 u 2)))))
(+.f32 (*.f32 -1 (/.f32 u (log.f32 4/3))) (+.f32 (log.f32 (neg.f32 (log.f32 4/3))) (+.f32 (*.f32 -1/6 (*.f32 (+.f32 (*.f32 2 (/.f32 1 (log.f32 4/3))) (+.f32 (*.f32 3 (/.f32 1 (pow.f32 (log.f32 4/3) 2))) (*.f32 2 (/.f32 1 (pow.f32 (log.f32 4/3) 3))))) (pow.f32 u 3))) (*.f32 -1/2 (*.f32 (+.f32 (/.f32 1 (log.f32 4/3)) (/.f32 1 (pow.f32 (log.f32 4/3) 2))) (pow.f32 u 2))))))
(log.f32 (neg.f32 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))))
(-.f32 (log.f32 (neg.f32 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))) (/.f32 1 (*.f32 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))) u)))
(-.f32 (+.f32 (*.f32 -1/2 (/.f32 (+.f32 (/.f32 1 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))) (/.f32 1 (pow.f32 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))) 2))) (pow.f32 u 2))) (log.f32 (neg.f32 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))))) (/.f32 1 (*.f32 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))) u)))
(-.f32 (+.f32 (*.f32 -1/2 (/.f32 (+.f32 (/.f32 1 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))) (/.f32 1 (pow.f32 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))) 2))) (pow.f32 u 2))) (+.f32 (*.f32 -1/6 (/.f32 (+.f32 (*.f32 2 (/.f32 1 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))) (+.f32 (*.f32 3 (/.f32 1 (pow.f32 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))) 2))) (*.f32 2 (/.f32 1 (pow.f32 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))) 3))))) (pow.f32 u 3))) (log.f32 (neg.f32 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))))) (/.f32 1 (*.f32 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))) u)))
(log.f32 (neg.f32 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))))
(-.f32 (log.f32 (neg.f32 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))) (/.f32 1 (*.f32 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))) u)))
(-.f32 (+.f32 (*.f32 -1/2 (/.f32 (+.f32 (/.f32 1 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))) (/.f32 1 (pow.f32 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))) 2))) (pow.f32 u 2))) (log.f32 (neg.f32 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))))) (/.f32 1 (*.f32 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))) u)))
(-.f32 (+.f32 (*.f32 -1/2 (/.f32 (+.f32 (/.f32 1 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))) (/.f32 1 (pow.f32 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))) 2))) (pow.f32 u 2))) (+.f32 (log.f32 (neg.f32 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))) (*.f32 -1/6 (/.f32 (+.f32 (*.f32 2 (/.f32 1 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))) (+.f32 (*.f32 3 (/.f32 1 (pow.f32 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))) 2))) (*.f32 2 (/.f32 1 (pow.f32 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))) 3))))) (pow.f32 u 3))))) (/.f32 1 (*.f32 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))) u)))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 -3 (*.f32 s (log.f32 4/3)))
(+.f32 (*.f32 3 (*.f32 s u)) (*.f32 -3 (*.f32 s (log.f32 4/3))))
(+.f32 (*.f32 3/2 (*.f32 s (pow.f32 u 2))) (+.f32 (*.f32 3 (*.f32 s u)) (*.f32 -3 (*.f32 s (log.f32 4/3)))))
(+.f32 (*.f32 3/2 (*.f32 s (pow.f32 u 2))) (+.f32 (*.f32 3 (*.f32 s u)) (+.f32 (*.f32 s (pow.f32 u 3)) (*.f32 -3 (*.f32 s (log.f32 4/3))))))
(*.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))))
(+.f32 (*.f32 3 (/.f32 s u)) (*.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))))
(+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))) (*.f32 3/2 (/.f32 s (pow.f32 u 2)))))
(+.f32 (/.f32 s (pow.f32 u 3)) (+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))) (*.f32 3/2 (/.f32 s (pow.f32 u 2))))))
(*.f32 -3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))))
(+.f32 (*.f32 3 (/.f32 s u)) (*.f32 -3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))))
(+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 -3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))) (*.f32 3/2 (/.f32 s (pow.f32 u 2)))))
(+.f32 (/.f32 s (pow.f32 u 3)) (+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 -3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))) (*.f32 3/2 (/.f32 s (pow.f32 u 2))))))
Outputs
(log.f32 (neg.f32 (log.f32 4/3)))
(+.f32 (*.f32 -1 (/.f32 u (log.f32 4/3))) (log.f32 (neg.f32 (log.f32 4/3))))
(fma.f32 -1 (/.f32 u (log.f32 4/3)) (log.f32 (neg.f32 (log.f32 4/3))))
(-.f32 (log.f32 (neg.f32 (log.f32 4/3))) (/.f32 u (log.f32 4/3)))
(+.f32 (*.f32 -1 (/.f32 u (log.f32 4/3))) (+.f32 (log.f32 (neg.f32 (log.f32 4/3))) (*.f32 -1/2 (*.f32 (+.f32 (/.f32 1 (log.f32 4/3)) (/.f32 1 (pow.f32 (log.f32 4/3) 2))) (pow.f32 u 2)))))
(+.f32 (fma.f32 -1 (/.f32 u (log.f32 4/3)) (log.f32 (neg.f32 (log.f32 4/3)))) (*.f32 -1/2 (*.f32 (+.f32 (/.f32 1 (log.f32 4/3)) (/.f32 1 (pow.f32 (log.f32 4/3) 2))) (*.f32 u u))))
(-.f32 (fma.f32 (*.f32 -1/2 (+.f32 (/.f32 1 (log.f32 4/3)) (/.f32 1 (pow.f32 (log.f32 4/3) 2)))) (*.f32 u u) (log.f32 (neg.f32 (log.f32 4/3)))) (/.f32 u (log.f32 4/3)))
(-.f32 (fma.f32 (*.f32 u u) (+.f32 (/.f32 -1/2 (log.f32 4/3)) (/.f32 -1/2 (pow.f32 (log.f32 4/3) 2))) (log.f32 (neg.f32 (log.f32 4/3)))) (/.f32 u (log.f32 4/3)))
(fma.f32 (*.f32 u u) (+.f32 (/.f32 -1/2 (log.f32 4/3)) (/.f32 -1/2 (pow.f32 (log.f32 4/3) 2))) (-.f32 (log.f32 (neg.f32 (log.f32 4/3))) (/.f32 u (log.f32 4/3))))
(+.f32 (*.f32 -1 (/.f32 u (log.f32 4/3))) (+.f32 (log.f32 (neg.f32 (log.f32 4/3))) (+.f32 (*.f32 -1/6 (*.f32 (+.f32 (*.f32 2 (/.f32 1 (log.f32 4/3))) (+.f32 (*.f32 3 (/.f32 1 (pow.f32 (log.f32 4/3) 2))) (*.f32 2 (/.f32 1 (pow.f32 (log.f32 4/3) 3))))) (pow.f32 u 3))) (*.f32 -1/2 (*.f32 (+.f32 (/.f32 1 (log.f32 4/3)) (/.f32 1 (pow.f32 (log.f32 4/3) 2))) (pow.f32 u 2))))))
(+.f32 (fma.f32 -1 (/.f32 u (log.f32 4/3)) (log.f32 (neg.f32 (log.f32 4/3)))) (fma.f32 -1/6 (*.f32 (+.f32 (/.f32 2 (log.f32 4/3)) (+.f32 (/.f32 3 (pow.f32 (log.f32 4/3) 2)) (/.f32 2 (pow.f32 (log.f32 4/3) 3)))) (pow.f32 u 3)) (*.f32 -1/2 (*.f32 (+.f32 (/.f32 1 (log.f32 4/3)) (/.f32 1 (pow.f32 (log.f32 4/3) 2))) (*.f32 u u)))))
(+.f32 (-.f32 (log.f32 (neg.f32 (log.f32 4/3))) (/.f32 u (log.f32 4/3))) (fma.f32 -1/2 (*.f32 u (*.f32 u (+.f32 (/.f32 1 (log.f32 4/3)) (/.f32 1 (pow.f32 (log.f32 4/3) 2))))) (*.f32 -1/6 (*.f32 (+.f32 (/.f32 2 (log.f32 4/3)) (+.f32 (/.f32 3 (pow.f32 (log.f32 4/3) 2)) (/.f32 2 (pow.f32 (log.f32 4/3) 3)))) (pow.f32 u 3)))))
(-.f32 (fma.f32 (*.f32 u u) (+.f32 (/.f32 -1/2 (log.f32 4/3)) (/.f32 -1/2 (pow.f32 (log.f32 4/3) 2))) (fma.f32 (pow.f32 u 3) (fma.f32 -1/6 (+.f32 (/.f32 3 (pow.f32 (log.f32 4/3) 2)) (/.f32 2 (pow.f32 (log.f32 4/3) 3))) (/.f32 -1/3 (log.f32 4/3))) (log.f32 (neg.f32 (log.f32 4/3))))) (/.f32 u (log.f32 4/3)))
(log.f32 (neg.f32 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))))
(log.f32 (neg.f32 (+.f32 (log.f32 -4/3) (neg.f32 (neg.f32 (log.f32 u))))))
(log.f32 (neg.f32 (+.f32 (log.f32 -4/3) (log.f32 u))))
(log.f32 (-.f32 (neg.f32 (log.f32 u)) (log.f32 -4/3)))
(-.f32 (log.f32 (neg.f32 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))) (/.f32 1 (*.f32 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))) u)))
(-.f32 (log.f32 (neg.f32 (+.f32 (log.f32 -4/3) (neg.f32 (neg.f32 (log.f32 u)))))) (/.f32 1 (*.f32 u (+.f32 (log.f32 -4/3) (neg.f32 (neg.f32 (log.f32 u)))))))
(+.f32 (log.f32 (neg.f32 (+.f32 (log.f32 -4/3) (log.f32 u)))) (/.f32 -1 (*.f32 u (+.f32 (log.f32 -4/3) (log.f32 u)))))
(+.f32 (log.f32 (neg.f32 (+.f32 (log.f32 -4/3) (log.f32 u)))) (/.f32 (/.f32 -1 u) (+.f32 (log.f32 -4/3) (log.f32 u))))
(+.f32 (log.f32 (-.f32 (neg.f32 (log.f32 u)) (log.f32 -4/3))) (/.f32 (/.f32 -1 u) (+.f32 (log.f32 -4/3) (log.f32 u))))
(-.f32 (+.f32 (*.f32 -1/2 (/.f32 (+.f32 (/.f32 1 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))) (/.f32 1 (pow.f32 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))) 2))) (pow.f32 u 2))) (log.f32 (neg.f32 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))))) (/.f32 1 (*.f32 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))) u)))
(-.f32 (fma.f32 -1/2 (/.f32 (+.f32 (/.f32 1 (+.f32 (log.f32 -4/3) (neg.f32 (neg.f32 (log.f32 u))))) (/.f32 1 (pow.f32 (+.f32 (log.f32 -4/3) (neg.f32 (neg.f32 (log.f32 u)))) 2))) (*.f32 u u)) (log.f32 (neg.f32 (+.f32 (log.f32 -4/3) (neg.f32 (neg.f32 (log.f32 u))))))) (/.f32 1 (*.f32 u (+.f32 (log.f32 -4/3) (neg.f32 (neg.f32 (log.f32 u)))))))
(+.f32 (fma.f32 -1/2 (/.f32 (+.f32 (/.f32 1 (+.f32 (log.f32 -4/3) (log.f32 u))) (/.f32 1 (pow.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) 2))) (*.f32 u u)) (log.f32 (neg.f32 (+.f32 (log.f32 -4/3) (log.f32 u))))) (/.f32 -1 (*.f32 u (+.f32 (log.f32 -4/3) (log.f32 u)))))
(+.f32 (log.f32 (neg.f32 (+.f32 (log.f32 -4/3) (log.f32 u)))) (+.f32 (/.f32 (+.f32 (/.f32 -1/2 (+.f32 (log.f32 -4/3) (log.f32 u))) (/.f32 -1/2 (pow.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) 2))) (*.f32 u u)) (/.f32 (/.f32 -1 u) (+.f32 (log.f32 -4/3) (log.f32 u)))))
(+.f32 (log.f32 (-.f32 (neg.f32 (log.f32 u)) (log.f32 -4/3))) (+.f32 (/.f32 (+.f32 (/.f32 -1/2 (+.f32 (log.f32 -4/3) (log.f32 u))) (/.f32 -1/2 (pow.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) 2))) (*.f32 u u)) (/.f32 (/.f32 -1 u) (+.f32 (log.f32 -4/3) (log.f32 u)))))
(-.f32 (+.f32 (*.f32 -1/2 (/.f32 (+.f32 (/.f32 1 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))) (/.f32 1 (pow.f32 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))) 2))) (pow.f32 u 2))) (+.f32 (*.f32 -1/6 (/.f32 (+.f32 (*.f32 2 (/.f32 1 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))) (+.f32 (*.f32 3 (/.f32 1 (pow.f32 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))) 2))) (*.f32 2 (/.f32 1 (pow.f32 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))) 3))))) (pow.f32 u 3))) (log.f32 (neg.f32 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))))) (/.f32 1 (*.f32 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))) u)))
(-.f32 (fma.f32 -1/2 (/.f32 (+.f32 (/.f32 1 (+.f32 (log.f32 -4/3) (neg.f32 (neg.f32 (log.f32 u))))) (/.f32 1 (pow.f32 (+.f32 (log.f32 -4/3) (neg.f32 (neg.f32 (log.f32 u)))) 2))) (*.f32 u u)) (fma.f32 -1/6 (/.f32 (+.f32 (/.f32 2 (+.f32 (log.f32 -4/3) (neg.f32 (neg.f32 (log.f32 u))))) (+.f32 (/.f32 3 (pow.f32 (+.f32 (log.f32 -4/3) (neg.f32 (neg.f32 (log.f32 u)))) 2)) (/.f32 2 (pow.f32 (+.f32 (log.f32 -4/3) (neg.f32 (neg.f32 (log.f32 u)))) 3)))) (pow.f32 u 3)) (log.f32 (neg.f32 (+.f32 (log.f32 -4/3) (neg.f32 (neg.f32 (log.f32 u)))))))) (/.f32 1 (*.f32 u (+.f32 (log.f32 -4/3) (neg.f32 (neg.f32 (log.f32 u)))))))
(+.f32 (fma.f32 -1/2 (/.f32 (+.f32 (/.f32 1 (+.f32 (log.f32 -4/3) (log.f32 u))) (/.f32 1 (pow.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) 2))) (*.f32 u u)) (fma.f32 -1/6 (/.f32 (+.f32 (/.f32 2 (+.f32 (log.f32 -4/3) (log.f32 u))) (+.f32 (/.f32 3 (pow.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) 2)) (/.f32 2 (pow.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) 3)))) (pow.f32 u 3)) (log.f32 (neg.f32 (+.f32 (log.f32 -4/3) (log.f32 u)))))) (/.f32 -1 (*.f32 u (+.f32 (log.f32 -4/3) (log.f32 u)))))
(+.f32 (+.f32 (log.f32 (neg.f32 (+.f32 (log.f32 -4/3) (log.f32 u)))) (/.f32 (/.f32 -1 u) (+.f32 (log.f32 -4/3) (log.f32 u)))) (fma.f32 -1/6 (/.f32 (+.f32 (/.f32 2 (+.f32 (log.f32 -4/3) (log.f32 u))) (+.f32 (/.f32 3 (pow.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) 2)) (/.f32 2 (pow.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) 3)))) (pow.f32 u 3)) (/.f32 (+.f32 (/.f32 -1/2 (+.f32 (log.f32 -4/3) (log.f32 u))) (/.f32 -1/2 (pow.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) 2))) (*.f32 u u))))
(+.f32 (log.f32 (-.f32 (neg.f32 (log.f32 u)) (log.f32 -4/3))) (+.f32 (/.f32 (fma.f32 -1/6 (+.f32 (/.f32 3 (pow.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) 2)) (/.f32 2 (pow.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) 3))) (/.f32 -1/3 (+.f32 (log.f32 -4/3) (log.f32 u)))) (pow.f32 u 3)) (+.f32 (/.f32 (+.f32 (/.f32 -1/2 (+.f32 (log.f32 -4/3) (log.f32 u))) (/.f32 -1/2 (pow.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) 2))) (*.f32 u u)) (/.f32 (/.f32 -1 u) (+.f32 (log.f32 -4/3) (log.f32 u))))))
(log.f32 (neg.f32 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))))
(log.f32 (neg.f32 (+.f32 (log.f32 4/3) (neg.f32 (log.f32 (/.f32 -1 u))))))
(log.f32 (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4/3)))
(-.f32 (log.f32 (neg.f32 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))) (/.f32 1 (*.f32 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))) u)))
(-.f32 (log.f32 (neg.f32 (+.f32 (log.f32 4/3) (neg.f32 (log.f32 (/.f32 -1 u)))))) (/.f32 1 (*.f32 u (+.f32 (log.f32 4/3) (neg.f32 (log.f32 (/.f32 -1 u)))))))
(+.f32 (log.f32 (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4/3))) (/.f32 -1 (*.f32 u (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))))))
(+.f32 (log.f32 (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4/3))) (/.f32 (/.f32 -1 u) (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))))
(-.f32 (+.f32 (*.f32 -1/2 (/.f32 (+.f32 (/.f32 1 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))) (/.f32 1 (pow.f32 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))) 2))) (pow.f32 u 2))) (log.f32 (neg.f32 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))))) (/.f32 1 (*.f32 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))) u)))
(-.f32 (fma.f32 -1/2 (/.f32 (+.f32 (/.f32 1 (+.f32 (log.f32 4/3) (neg.f32 (log.f32 (/.f32 -1 u))))) (/.f32 1 (pow.f32 (+.f32 (log.f32 4/3) (neg.f32 (log.f32 (/.f32 -1 u)))) 2))) (*.f32 u u)) (log.f32 (neg.f32 (+.f32 (log.f32 4/3) (neg.f32 (log.f32 (/.f32 -1 u))))))) (/.f32 1 (*.f32 u (+.f32 (log.f32 4/3) (neg.f32 (log.f32 (/.f32 -1 u)))))))
(+.f32 (fma.f32 -1/2 (/.f32 (+.f32 (/.f32 1 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))) (/.f32 1 (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 2))) (*.f32 u u)) (log.f32 (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4/3)))) (/.f32 -1 (*.f32 u (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))))))
(+.f32 (+.f32 (log.f32 (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4/3))) (/.f32 (/.f32 -1 u) (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))))) (/.f32 (+.f32 (/.f32 -1/2 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))) (/.f32 -1/2 (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 2))) (*.f32 u u)))
(-.f32 (+.f32 (*.f32 -1/2 (/.f32 (+.f32 (/.f32 1 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))) (/.f32 1 (pow.f32 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))) 2))) (pow.f32 u 2))) (+.f32 (log.f32 (neg.f32 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))) (*.f32 -1/6 (/.f32 (+.f32 (*.f32 2 (/.f32 1 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))) (+.f32 (*.f32 3 (/.f32 1 (pow.f32 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))) 2))) (*.f32 2 (/.f32 1 (pow.f32 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))) 3))))) (pow.f32 u 3))))) (/.f32 1 (*.f32 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))) u)))
(-.f32 (+.f32 (fma.f32 -1/2 (/.f32 (+.f32 (/.f32 1 (+.f32 (log.f32 4/3) (neg.f32 (log.f32 (/.f32 -1 u))))) (/.f32 1 (pow.f32 (+.f32 (log.f32 4/3) (neg.f32 (log.f32 (/.f32 -1 u)))) 2))) (*.f32 u u)) (log.f32 (neg.f32 (+.f32 (log.f32 4/3) (neg.f32 (log.f32 (/.f32 -1 u))))))) (*.f32 -1/6 (/.f32 (+.f32 (/.f32 2 (+.f32 (log.f32 4/3) (neg.f32 (log.f32 (/.f32 -1 u))))) (+.f32 (/.f32 3 (pow.f32 (+.f32 (log.f32 4/3) (neg.f32 (log.f32 (/.f32 -1 u)))) 2)) (/.f32 2 (pow.f32 (+.f32 (log.f32 4/3) (neg.f32 (log.f32 (/.f32 -1 u)))) 3)))) (pow.f32 u 3)))) (/.f32 1 (*.f32 u (+.f32 (log.f32 4/3) (neg.f32 (log.f32 (/.f32 -1 u)))))))
(+.f32 (fma.f32 -1/2 (/.f32 (+.f32 (/.f32 1 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))) (/.f32 1 (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 2))) (*.f32 u u)) (fma.f32 -1/6 (/.f32 (+.f32 (/.f32 2 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))) (+.f32 (/.f32 3 (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 2)) (/.f32 2 (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 3)))) (pow.f32 u 3)) (log.f32 (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4/3))))) (/.f32 -1 (*.f32 u (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))))))
(+.f32 (log.f32 (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4/3))) (+.f32 (/.f32 (+.f32 (/.f32 -1/2 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))) (/.f32 -1/2 (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 2))) (*.f32 u u)) (+.f32 (/.f32 (fma.f32 -1/6 (+.f32 (/.f32 2 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))) (/.f32 3 (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 2))) (/.f32 -1/3 (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 3))) (pow.f32 u 3)) (/.f32 (/.f32 -1 u) (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))))))
(+.f32 (+.f32 (log.f32 (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4/3))) (/.f32 (/.f32 -1 u) (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))))) (fma.f32 -1/6 (/.f32 (+.f32 (/.f32 3 (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 2)) (+.f32 (/.f32 2 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))) (/.f32 2 (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 3)))) (pow.f32 u 3)) (/.f32 (+.f32 (/.f32 -1/2 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))) (/.f32 -1/2 (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 2))) (*.f32 u u))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 (*.f32 -3 s) (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4))))
(*.f32 -3 (*.f32 s (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3))))
(*.f32 -3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3))))
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 -3 s))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 (*.f32 -3 s) (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4))))
(*.f32 -3 (*.f32 s (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3))))
(*.f32 -3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3))))
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 -3 s))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 (*.f32 -3 s) (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4))))
(*.f32 -3 (*.f32 s (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3))))
(*.f32 -3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3))))
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 -3 s))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 (*.f32 -3 s) (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4))))
(*.f32 -3 (*.f32 s (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3))))
(*.f32 -3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3))))
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 -3 s))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 (*.f32 -3 s) (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4))))
(*.f32 -3 (*.f32 s (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3))))
(*.f32 -3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3))))
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 -3 s))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 (*.f32 -3 s) (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4))))
(*.f32 -3 (*.f32 s (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3))))
(*.f32 -3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3))))
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 -3 s))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 (*.f32 -3 s) (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4))))
(*.f32 -3 (*.f32 s (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3))))
(*.f32 -3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3))))
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 -3 s))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 (*.f32 -3 s) (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4))))
(*.f32 -3 (*.f32 s (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3))))
(*.f32 -3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3))))
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 -3 s))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 (*.f32 -3 s) (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4))))
(*.f32 -3 (*.f32 s (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3))))
(*.f32 -3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3))))
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 -3 s))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 (*.f32 -3 s) (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4))))
(*.f32 -3 (*.f32 s (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3))))
(*.f32 -3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3))))
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 -3 s))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 (*.f32 -3 s) (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4))))
(*.f32 -3 (*.f32 s (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3))))
(*.f32 -3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3))))
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 -3 s))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 (*.f32 -3 s) (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4))))
(*.f32 -3 (*.f32 s (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3))))
(*.f32 -3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3))))
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 -3 s))
(*.f32 -3 (*.f32 s (log.f32 4/3)))
(*.f32 (*.f32 -3 s) (log.f32 4/3))
(*.f32 (log.f32 4/3) (*.f32 -3 s))
(+.f32 (*.f32 3 (*.f32 s u)) (*.f32 -3 (*.f32 s (log.f32 4/3))))
(fma.f32 3 (*.f32 u s) (*.f32 (*.f32 -3 s) (log.f32 4/3)))
(fma.f32 3 (*.f32 u s) (*.f32 (log.f32 4/3) (*.f32 -3 s)))
(*.f32 s (+.f32 (*.f32 (log.f32 4/3) -3) (*.f32 u 3)))
(+.f32 (*.f32 3/2 (*.f32 s (pow.f32 u 2))) (+.f32 (*.f32 3 (*.f32 s u)) (*.f32 -3 (*.f32 s (log.f32 4/3)))))
(fma.f32 3/2 (*.f32 (*.f32 u u) s) (fma.f32 3 (*.f32 u s) (*.f32 (*.f32 -3 s) (log.f32 4/3))))
(fma.f32 3/2 (*.f32 u (*.f32 u s)) (fma.f32 3 (*.f32 u s) (*.f32 (log.f32 4/3) (*.f32 -3 s))))
(fma.f32 (*.f32 u u) (*.f32 s 3/2) (*.f32 s (+.f32 (*.f32 (log.f32 4/3) -3) (*.f32 u 3))))
(*.f32 s (+.f32 (*.f32 (log.f32 4/3) -3) (*.f32 u (+.f32 3 (*.f32 3/2 u)))))
(+.f32 (*.f32 3/2 (*.f32 s (pow.f32 u 2))) (+.f32 (*.f32 3 (*.f32 s u)) (+.f32 (*.f32 s (pow.f32 u 3)) (*.f32 -3 (*.f32 s (log.f32 4/3))))))
(fma.f32 3/2 (*.f32 (*.f32 u u) s) (fma.f32 3 (*.f32 u s) (fma.f32 s (pow.f32 u 3) (*.f32 (*.f32 -3 s) (log.f32 4/3)))))
(fma.f32 3/2 (*.f32 u (*.f32 u s)) (fma.f32 3 (*.f32 u s) (fma.f32 (pow.f32 u 3) s (*.f32 (log.f32 4/3) (*.f32 -3 s)))))
(fma.f32 (*.f32 u u) (*.f32 s 3/2) (fma.f32 (log.f32 4/3) (*.f32 -3 s) (*.f32 s (+.f32 (*.f32 u 3) (pow.f32 u 3)))))
(*.f32 s (+.f32 (+.f32 (*.f32 (log.f32 4/3) -3) (pow.f32 u 3)) (*.f32 u (+.f32 3 (*.f32 3/2 u)))))
(*.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))))
(*.f32 (*.f32 -3 s) (+.f32 (log.f32 -4/3) (neg.f32 (neg.f32 (log.f32 u)))))
(*.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) (*.f32 -3 s))
(+.f32 (*.f32 3 (/.f32 s u)) (*.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))))
(fma.f32 3 (/.f32 s u) (*.f32 (*.f32 -3 s) (+.f32 (log.f32 -4/3) (neg.f32 (neg.f32 (log.f32 u))))))
(fma.f32 -3 (*.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) s) (*.f32 3 (/.f32 s u)))
(fma.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) (*.f32 -3 s) (*.f32 3 (/.f32 s u)))
(*.f32 s (+.f32 (*.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) -3) (/.f32 3 u)))
(+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))) (*.f32 3/2 (/.f32 s (pow.f32 u 2)))))
(fma.f32 3 (/.f32 s u) (fma.f32 -3 (*.f32 (+.f32 (log.f32 -4/3) (neg.f32 (neg.f32 (log.f32 u)))) s) (*.f32 3/2 (/.f32 s (*.f32 u u)))))
(fma.f32 3 (/.f32 s u) (fma.f32 -3 (*.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) s) (*.f32 3/2 (/.f32 s (*.f32 u u)))))
(fma.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) (*.f32 -3 s) (*.f32 (/.f32 s u) (+.f32 3 (/.f32 3/2 u))))
(+.f32 (/.f32 s (pow.f32 u 3)) (+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))) (*.f32 3/2 (/.f32 s (pow.f32 u 2))))))
(+.f32 (fma.f32 3 (/.f32 s u) (fma.f32 -3 (*.f32 (+.f32 (log.f32 -4/3) (neg.f32 (neg.f32 (log.f32 u)))) s) (*.f32 3/2 (/.f32 s (*.f32 u u))))) (/.f32 s (pow.f32 u 3)))
(+.f32 (fma.f32 3 (/.f32 s u) (fma.f32 -3 (*.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) s) (*.f32 3/2 (/.f32 s (*.f32 u u))))) (/.f32 s (pow.f32 u 3)))
(+.f32 (fma.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) (*.f32 -3 s) (*.f32 (/.f32 s u) (+.f32 3 (/.f32 3/2 u)))) (/.f32 s (pow.f32 u 3)))
(*.f32 -3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))))
(*.f32 -3 (*.f32 (+.f32 (log.f32 4/3) (neg.f32 (log.f32 (/.f32 -1 u)))) s))
(*.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 -3 s))
(+.f32 (*.f32 3 (/.f32 s u)) (*.f32 -3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))))
(fma.f32 3 (/.f32 s u) (*.f32 -3 (*.f32 (+.f32 (log.f32 4/3) (neg.f32 (log.f32 (/.f32 -1 u)))) s)))
(fma.f32 3 (/.f32 s u) (*.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 -3 s)))
(*.f32 s (+.f32 (/.f32 3 u) (*.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) -3)))
(+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 -3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))) (*.f32 3/2 (/.f32 s (pow.f32 u 2)))))
(fma.f32 3 (/.f32 s u) (fma.f32 -3 (*.f32 (+.f32 (log.f32 4/3) (neg.f32 (log.f32 (/.f32 -1 u)))) s) (*.f32 3/2 (/.f32 s (*.f32 u u)))))
(fma.f32 3 (/.f32 s u) (fma.f32 (*.f32 -3 s) (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 3/2 (/.f32 s (*.f32 u u)))))
(fma.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 -3 s) (*.f32 (/.f32 s u) (+.f32 3 (/.f32 3/2 u))))
(+.f32 (/.f32 s (pow.f32 u 3)) (+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 -3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))) (*.f32 3/2 (/.f32 s (pow.f32 u 2))))))
(+.f32 (/.f32 s (pow.f32 u 3)) (fma.f32 3 (/.f32 s u) (fma.f32 -3 (*.f32 (+.f32 (log.f32 4/3) (neg.f32 (log.f32 (/.f32 -1 u)))) s) (*.f32 3/2 (/.f32 s (*.f32 u u))))))
(+.f32 (/.f32 s (pow.f32 u 3)) (fma.f32 3 (/.f32 s u) (fma.f32 (*.f32 -3 s) (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 3/2 (/.f32 s (*.f32 u u))))))
(+.f32 (/.f32 s (pow.f32 u 3)) (fma.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 -3 s) (*.f32 (/.f32 s u) (+.f32 3 (/.f32 3/2 u)))))

eval414.0ms (3.8%)

Compiler

Compiled 15680 to 12258 computations (21.8% saved)

prune198.0ms (1.8%)

Pruning

44 alts after pruning (37 fresh and 7 done)

PrunedKeptTotal
New76916785
Fresh52126
Picked011
Done066
Total77444818
Error
0.0b
Counts
818 → 44
Alt Table
Click to see full alt table
StatusErrorProgram
0.9b
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 u -4/3 4/3))))
1.0b
(*.f32 (*.f32 3 s) (neg.f32 (log.f32 (fma.f32 (+.f32 u -1/4) -4/3 1))))
1.1b
(*.f32 -3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
1.2b
(*.f32 s (*.f32 (log1p.f32 (/.f32 (-.f32 (*.f32 16/9 (*.f32 u u)) 1/9) (-.f32 (*.f32 u -4/3) 1/3))) -3))
0.8b
(*.f32 (*.f32 3 s) (exp.f32 (log.f32 (neg.f32 (log1p.f32 (*.f32 (+.f32 u -1/4) -4/3))))))
0.9b
(*.f32 s (-.f32 (+.f32 1 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)) 1))
20.4b
(*.f32 s (+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 u (*.f32 u (+.f32 u 3/2)))))
28.8b
(-.f32 (+.f32 1 (*.f32 s (*.f32 (log.f32 3/4) 3))) 1)
1.1b
(*.f32 s (*.f32 (log1p.f32 (/.f32 (fma.f32 (*.f32 u (*.f32 u -4/3)) -4/3 -1/9) (-.f32 (*.f32 u -4/3) 1/3))) -3))
1.1b
(*.f32 s (*.f32 (log1p.f32 (/.f32 (fma.f32 (*.f32 u u) 16/9 -1/9) (-.f32 (*.f32 u -4/3) 1/3))) -3))
1.3b
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (+.f32 (*.f32 -4/3 u) 4/3))))
0.8b
(pow.f32 (sqrt.f32 (neg.f32 (*.f32 (*.f32 3 s) (log1p.f32 (*.f32 (+.f32 u -1/4) -4/3))))) 2)
20.4b
(*.f32 s (+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 (*.f32 u u) (+.f32 u 3/2))))
0.9b
(pow.f32 (cbrt.f32 (neg.f32 (*.f32 (*.f32 3 s) (log1p.f32 (*.f32 (+.f32 u -1/4) -4/3))))) 3)
11.7b
(*.f32 s (*.f32 (expm1.f32 (log1p.f32 (log1p.f32 (fma.f32 u -4/3 1/3)))) -3))
21.8b
(*.f32 s (+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 u (*.f32 u 3/2))))
0.9b
(*.f32 s (*.f32 (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3)) -3))
3.1b
(exp.f32 (log.f32 (neg.f32 (*.f32 (*.f32 3 s) (log1p.f32 (*.f32 (+.f32 u -1/4) -4/3))))))
21.8b
(*.f32 s (+.f32 (*.f32 (log.f32 3/4) 3) (*.f32 u (+.f32 3 (*.f32 u 3/2)))))
1.0b
(*.f32 (*.f32 3 s) (neg.f32 (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3))))
0.7b
(neg.f32 (*.f32 3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3)))))
0.7b
(*.f32 (*.f32 3 s) (neg.f32 (log1p.f32 (*.f32 (+.f32 u -1/4) -4/3))))
0.7b
(*.f32 s (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3))
0.9b
(*.f32 (*.f32 3 s) (pow.f32 (sqrt.f32 (neg.f32 (log1p.f32 (*.f32 (+.f32 u -1/4) -4/3)))) 2))
23.7b
(*.f32 (+.f32 (log.f32 3/4) u) (*.f32 3 s))
20.4b
(*.f32 s (+.f32 (+.f32 (*.f32 (log.f32 3/4) 3) (*.f32 u 3)) (*.f32 (*.f32 u u) (+.f32 u 3/2))))
23.7b
(+.f32 (*.f32 3 (*.f32 s (log.f32 3/4))) (*.f32 3 (*.f32 s u)))
29.6b
(*.f32 (*.f32 3 s) (log.f32 3/4))
0.7b
(*.f32 s (expm1.f32 (log1p.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3))))
1.7b
(*.f32 s (*.f32 (+.f32 (log.f32 (pow.f32 (cbrt.f32 (+.f32 (fma.f32 u -4/3 1/3) 1)) 2)) (log.f32 (cbrt.f32 (+.f32 (fma.f32 u -4/3 1/3) 1)))) -3))
1.0b
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
0.7b
(*.f32 (*.f32 3 s) (pow.f32 (pow.f32 (neg.f32 (log1p.f32 (*.f32 (+.f32 u -1/4) -4/3))) 3) 1/3))
23.7b
(*.f32 s (+.f32 (*.f32 (log.f32 4/3) -3) (*.f32 u 3)))
22.0b
(*.f32 s (+.f32 (*.f32 u 3) (*.f32 (*.f32 u u) (+.f32 u 3/2))))
1.5b
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (+.f32 (-.f32 1 (*.f32 u 4/3)) 1/3))))
29.6b
(*.f32 3 (*.f32 s (log.f32 3/4)))
1.1b
(*.f32 s (log.f32 (pow.f32 (+.f32 (fma.f32 u -4/3 1/3) 1) -3)))
1.2b
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (+.f32 (*.f32 (+.f32 u -1/4) -4/3) 1))))
0.9b
(*.f32 (log.f32 (fma.f32 u -4/3 4/3)) (*.f32 s -3))
0.9b
(*.f32 (*.f32 3 s) (neg.f32 (log1p.f32 (/.f32 (*.f32 (fma.f32 u u -1/16) -4/3) (+.f32 u 1/4)))))
1.3b
(*.f32 s (*.f32 (log1p.f32 (/.f32 (-.f32 (*.f32 (*.f32 u -4/3) (*.f32 u -4/3)) 1/9) (-.f32 (*.f32 u -4/3) 1/3))) -3))
1.2b
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4)))))
23.7b
(*.f32 s (*.f32 (-.f32 (log.f32 4/3) u) -3))
1.2b
(*.f32 3 (*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4/3 (-.f32 u 1/4)))))))
Compiler

Compiled 1201 to 995 computations (17.2% saved)

localize44.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3)))
0.3b
(*.f32 3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3))))
0.3b
(fma.f32 u -4/3 1/3)
0.4b
(log1p.f32 (fma.f32 u -4/3 1/3))
Compiler

Compiled 42 to 32 computations (23.8% saved)

series5.0ms (0%)

Counts
2 → 48
Calls

12 calls:

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

rewrite60.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
886×pow1_binary32
820×add-log-exp_binary32
820×expm1-log1p-u_binary32
819×log1p-expm1-u_binary32
806×add-exp-log_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01023
120223
2220923
Stop Event
node limit
Counts
2 → 24
Calls
Call 1
Inputs
(*.f32 3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3))))
(*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (*.f32 3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (*.f32 9 (pow.f32 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (pow.f32 (+.f32 (fma.f32 u -4/3 1/3) 1) s) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3))))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (+.f32 (fma.f32 u -4/3 1/3) 1) s))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 s 3) (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 3) (pow.f32 s 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3)))))))))

simplify52.0ms (0.5%)

Algorithm
egg-herbie
Rules
664×fma-def_binary32
488×associate-+r+_binary32
453×associate-*l*_binary32
361×fma-neg_binary32
329×associate-*r*_binary32
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
087909
1257854
2786810
32954793
Stop Event
node limit
Counts
72 → 76
Calls
Call 1
Inputs
(*.f32 3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 3 (*.f32 s (log.f32 4/3)))
(+.f32 (*.f32 3 (*.f32 s (log.f32 4/3))) (*.f32 -3 (*.f32 s u)))
(+.f32 (*.f32 -3/2 (*.f32 s (pow.f32 u 2))) (+.f32 (*.f32 3 (*.f32 s (log.f32 4/3))) (*.f32 -3 (*.f32 s u))))
(+.f32 (*.f32 -3/2 (*.f32 s (pow.f32 u 2))) (+.f32 (*.f32 3 (*.f32 s (log.f32 4/3))) (+.f32 (*.f32 -1 (*.f32 s (pow.f32 u 3))) (*.f32 -3 (*.f32 s u)))))
(*.f32 3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))))
(+.f32 (*.f32 -3 (/.f32 s u)) (*.f32 3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))))
(+.f32 (*.f32 -3 (/.f32 s u)) (+.f32 (*.f32 3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))) (*.f32 -3/2 (/.f32 s (pow.f32 u 2)))))
(+.f32 (*.f32 -3 (/.f32 s u)) (+.f32 (*.f32 3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))) (+.f32 (*.f32 -3/2 (/.f32 s (pow.f32 u 2))) (*.f32 -1 (/.f32 s (pow.f32 u 3))))))
(*.f32 3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))))
(+.f32 (*.f32 -3 (/.f32 s u)) (*.f32 3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))))
(+.f32 (*.f32 -3 (/.f32 s u)) (+.f32 (*.f32 3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))) (*.f32 -3/2 (/.f32 s (pow.f32 u 2)))))
(+.f32 (*.f32 -3 (/.f32 s u)) (+.f32 (*.f32 3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))) (+.f32 (*.f32 -3/2 (/.f32 s (pow.f32 u 2))) (*.f32 -1 (/.f32 s (pow.f32 u 3))))))
(*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u))))
(*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u))))
(*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u))))
(*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u))))
(*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u))))
(*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u))))
(*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u))))
(*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u))))
(*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3)))
(*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3)))
(*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3)))
(*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3)))
(*.f32 s (log.f32 4/3))
(+.f32 (*.f32 s (log.f32 4/3)) (*.f32 -1 (*.f32 s u)))
(+.f32 (*.f32 s (log.f32 4/3)) (+.f32 (*.f32 -1 (*.f32 s u)) (*.f32 -1/2 (*.f32 s (pow.f32 u 2)))))
(+.f32 (*.f32 s (log.f32 4/3)) (+.f32 (*.f32 -1 (*.f32 s u)) (+.f32 (*.f32 -1/2 (*.f32 s (pow.f32 u 2))) (*.f32 -1/3 (*.f32 s (pow.f32 u 3))))))
(*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))
(+.f32 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))) (*.f32 -1 (/.f32 s u)))
(+.f32 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))) (+.f32 (*.f32 -1 (/.f32 s u)) (*.f32 -1/2 (/.f32 s (pow.f32 u 2)))))
(+.f32 (*.f32 -1/3 (/.f32 s (pow.f32 u 3))) (+.f32 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))) (+.f32 (*.f32 -1 (/.f32 s u)) (*.f32 -1/2 (/.f32 s (pow.f32 u 2))))))
(*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))
(+.f32 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))) (*.f32 -1 (/.f32 s u)))
(+.f32 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))) (+.f32 (*.f32 -1 (/.f32 s u)) (*.f32 -1/2 (/.f32 s (pow.f32 u 2)))))
(+.f32 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))) (+.f32 (*.f32 -1/3 (/.f32 s (pow.f32 u 3))) (+.f32 (*.f32 -1 (/.f32 s u)) (*.f32 -1/2 (/.f32 s (pow.f32 u 2))))))
Outputs
(*.f32 3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 (*.f32 3 s) (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 3 (*.f32 s (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 s (*.f32 3 (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 (*.f32 3 s) (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 3 (*.f32 s (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 s (*.f32 3 (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 (*.f32 3 s) (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 3 (*.f32 s (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 s (*.f32 3 (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 (*.f32 3 s) (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 3 (*.f32 s (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 s (*.f32 3 (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 (*.f32 3 s) (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 3 (*.f32 s (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 s (*.f32 3 (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 (*.f32 3 s) (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 3 (*.f32 s (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 s (*.f32 3 (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 (*.f32 3 s) (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 3 (*.f32 s (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 s (*.f32 3 (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 (*.f32 3 s) (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 3 (*.f32 s (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 s (*.f32 3 (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 (*.f32 3 s) (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 3 (*.f32 s (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 s (*.f32 3 (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 (*.f32 3 s) (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 3 (*.f32 s (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 s (*.f32 3 (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 (*.f32 3 s) (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 3 (*.f32 s (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 s (*.f32 3 (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 (*.f32 3 s) (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 3 (*.f32 s (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 s (*.f32 3 (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 3 (*.f32 s (log.f32 4/3)))
(*.f32 (*.f32 3 s) (log.f32 4/3))
(*.f32 (log.f32 4/3) (*.f32 3 s))
(+.f32 (*.f32 3 (*.f32 s (log.f32 4/3))) (*.f32 -3 (*.f32 s u)))
(fma.f32 3 (*.f32 s (log.f32 4/3)) (*.f32 -3 (*.f32 s u)))
(fma.f32 3 (*.f32 s (log.f32 4/3)) (*.f32 (*.f32 -3 u) s))
(*.f32 s (+.f32 (*.f32 3 (log.f32 4/3)) (*.f32 u -3)))
(+.f32 (*.f32 -3/2 (*.f32 s (pow.f32 u 2))) (+.f32 (*.f32 3 (*.f32 s (log.f32 4/3))) (*.f32 -3 (*.f32 s u))))
(fma.f32 -3/2 (*.f32 s (*.f32 u u)) (fma.f32 3 (*.f32 s (log.f32 4/3)) (*.f32 -3 (*.f32 s u))))
(fma.f32 -3/2 (*.f32 s (*.f32 u u)) (fma.f32 3 (*.f32 s (log.f32 4/3)) (*.f32 (*.f32 -3 u) s)))
(fma.f32 3 (*.f32 s (log.f32 4/3)) (*.f32 s (+.f32 (*.f32 u (*.f32 u -3/2)) (*.f32 u -3))))
(*.f32 s (+.f32 (*.f32 u (+.f32 (*.f32 -3/2 u) -3)) (*.f32 3 (log.f32 4/3))))
(+.f32 (*.f32 -3/2 (*.f32 s (pow.f32 u 2))) (+.f32 (*.f32 3 (*.f32 s (log.f32 4/3))) (+.f32 (*.f32 -1 (*.f32 s (pow.f32 u 3))) (*.f32 -3 (*.f32 s u)))))
(fma.f32 -3/2 (*.f32 s (*.f32 u u)) (fma.f32 3 (*.f32 s (log.f32 4/3)) (fma.f32 -1 (*.f32 s (pow.f32 u 3)) (*.f32 -3 (*.f32 s u)))))
(fma.f32 -3/2 (*.f32 s (*.f32 u u)) (fma.f32 3 (*.f32 s (log.f32 4/3)) (-.f32 (*.f32 (*.f32 -3 u) s) (*.f32 s (pow.f32 u 3)))))
(fma.f32 3 (*.f32 s (log.f32 4/3)) (fma.f32 s (*.f32 u (*.f32 u -3/2)) (*.f32 (*.f32 s u) (-.f32 -3 (*.f32 u u)))))
(*.f32 s (+.f32 (-.f32 (*.f32 3 (log.f32 4/3)) (pow.f32 u 3)) (*.f32 u (+.f32 (*.f32 -3/2 u) -3))))
(*.f32 3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))))
(*.f32 (*.f32 3 s) (+.f32 (log.f32 -4/3) (neg.f32 (neg.f32 (log.f32 u)))))
(*.f32 3 (*.f32 s (+.f32 (log.f32 -4/3) (log.f32 u))))
(*.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) (*.f32 3 s))
(+.f32 (*.f32 -3 (/.f32 s u)) (*.f32 3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))))
(fma.f32 -3 (/.f32 s u) (*.f32 (*.f32 3 s) (+.f32 (log.f32 -4/3) (neg.f32 (neg.f32 (log.f32 u))))))
(fma.f32 3 (*.f32 s (+.f32 (log.f32 -4/3) (log.f32 u))) (*.f32 -3 (/.f32 s u)))
(fma.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) (*.f32 3 s) (*.f32 (/.f32 -3 u) s))
(*.f32 s (+.f32 (*.f32 3 (+.f32 (log.f32 -4/3) (log.f32 u))) (/.f32 -3 u)))
(+.f32 (*.f32 -3 (/.f32 s u)) (+.f32 (*.f32 3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))) (*.f32 -3/2 (/.f32 s (pow.f32 u 2)))))
(fma.f32 -3 (/.f32 s u) (fma.f32 3 (*.f32 s (+.f32 (log.f32 -4/3) (neg.f32 (neg.f32 (log.f32 u))))) (*.f32 -3/2 (/.f32 s (*.f32 u u)))))
(fma.f32 -3 (/.f32 s u) (fma.f32 3 (*.f32 s (+.f32 (log.f32 -4/3) (log.f32 u))) (*.f32 -3/2 (/.f32 s (*.f32 u u)))))
(fma.f32 3 (*.f32 s (+.f32 (log.f32 -4/3) (log.f32 u))) (*.f32 (/.f32 s u) (+.f32 (/.f32 -3/2 u) -3)))
(+.f32 (*.f32 -3 (/.f32 s u)) (+.f32 (*.f32 3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))) (+.f32 (*.f32 -3/2 (/.f32 s (pow.f32 u 2))) (*.f32 -1 (/.f32 s (pow.f32 u 3))))))
(fma.f32 -3 (/.f32 s u) (fma.f32 3 (*.f32 s (+.f32 (log.f32 -4/3) (neg.f32 (neg.f32 (log.f32 u))))) (fma.f32 -3/2 (/.f32 s (*.f32 u u)) (neg.f32 (/.f32 s (pow.f32 u 3))))))
(fma.f32 -3 (/.f32 s u) (-.f32 (fma.f32 3 (*.f32 s (+.f32 (log.f32 -4/3) (log.f32 u))) (*.f32 -3/2 (/.f32 s (*.f32 u u)))) (/.f32 s (pow.f32 u 3))))
(-.f32 (fma.f32 3 (*.f32 s (+.f32 (log.f32 -4/3) (log.f32 u))) (*.f32 (/.f32 s u) (+.f32 (/.f32 -3/2 u) -3))) (/.f32 s (pow.f32 u 3)))
(fma.f32 3 (*.f32 s (+.f32 (log.f32 -4/3) (log.f32 u))) (*.f32 (/.f32 s u) (+.f32 (/.f32 -1 (*.f32 u u)) (+.f32 (/.f32 -3/2 u) -3))))
(*.f32 3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))))
(*.f32 (*.f32 3 s) (+.f32 (log.f32 4/3) (neg.f32 (log.f32 (/.f32 -1 u)))))
(*.f32 3 (*.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))))
(*.f32 s (*.f32 3 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))))
(*.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 3 s))
(+.f32 (*.f32 -3 (/.f32 s u)) (*.f32 3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))))
(fma.f32 -3 (/.f32 s u) (*.f32 (*.f32 3 s) (+.f32 (log.f32 4/3) (neg.f32 (log.f32 (/.f32 -1 u))))))
(fma.f32 3 (*.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))) (*.f32 -3 (/.f32 s u)))
(fma.f32 3 (*.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))) (*.f32 (/.f32 -3 u) s))
(*.f32 s (+.f32 (/.f32 -3 u) (*.f32 3 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))))))
(+.f32 (*.f32 -3 (/.f32 s u)) (+.f32 (*.f32 3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))) (*.f32 -3/2 (/.f32 s (pow.f32 u 2)))))
(fma.f32 -3 (/.f32 s u) (fma.f32 3 (*.f32 s (+.f32 (log.f32 4/3) (neg.f32 (log.f32 (/.f32 -1 u))))) (*.f32 -3/2 (/.f32 s (*.f32 u u)))))
(fma.f32 -3 (/.f32 s u) (fma.f32 (*.f32 3 s) (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 -3/2 (/.f32 s (*.f32 u u)))))
(fma.f32 s (*.f32 3 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))) (*.f32 (/.f32 s u) (+.f32 (/.f32 -3/2 u) -3)))
(fma.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 3 s) (*.f32 (/.f32 s u) (+.f32 (/.f32 -3/2 u) -3)))
(+.f32 (*.f32 -3 (/.f32 s u)) (+.f32 (*.f32 3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))) (+.f32 (*.f32 -3/2 (/.f32 s (pow.f32 u 2))) (*.f32 -1 (/.f32 s (pow.f32 u 3))))))
(fma.f32 -3 (/.f32 s u) (fma.f32 3 (*.f32 s (+.f32 (log.f32 4/3) (neg.f32 (log.f32 (/.f32 -1 u))))) (fma.f32 -3/2 (/.f32 s (*.f32 u u)) (neg.f32 (/.f32 s (pow.f32 u 3))))))
(fma.f32 -3 (/.f32 s u) (-.f32 (fma.f32 (*.f32 3 s) (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 -3/2 (/.f32 s (*.f32 u u)))) (/.f32 s (pow.f32 u 3))))
(-.f32 (fma.f32 s (*.f32 3 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))) (*.f32 (/.f32 s u) (+.f32 (/.f32 -3/2 u) -3))) (/.f32 s (pow.f32 u 3)))
(-.f32 (fma.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 3 s) (*.f32 (/.f32 s u) (+.f32 (/.f32 -3/2 u) -3))) (/.f32 s (pow.f32 u 3)))
(*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u))))
(*.f32 s (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u))))
(*.f32 s (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u))))
(*.f32 s (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u))))
(*.f32 s (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u))))
(*.f32 s (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u))))
(*.f32 s (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u))))
(*.f32 s (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u))))
(*.f32 s (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3)))
(*.f32 s (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3)))
(*.f32 s (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3)))
(*.f32 s (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3)))
(*.f32 s (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 s (log.f32 4/3))
(+.f32 (*.f32 s (log.f32 4/3)) (*.f32 -1 (*.f32 s u)))
(fma.f32 s (log.f32 4/3) (neg.f32 (*.f32 s u)))
(fma.f32 s (log.f32 4/3) (*.f32 s (neg.f32 u)))
(*.f32 s (-.f32 (log.f32 4/3) u))
(+.f32 (*.f32 s (log.f32 4/3)) (+.f32 (*.f32 -1 (*.f32 s u)) (*.f32 -1/2 (*.f32 s (pow.f32 u 2)))))
(fma.f32 s (log.f32 4/3) (fma.f32 -1 (*.f32 s u) (*.f32 (*.f32 s (*.f32 u u)) -1/2)))
(fma.f32 s (log.f32 4/3) (-.f32 (*.f32 s (*.f32 (*.f32 u u) -1/2)) (*.f32 s u)))
(fma.f32 s (log.f32 4/3) (*.f32 s (-.f32 (*.f32 u (*.f32 u -1/2)) u)))
(*.f32 s (+.f32 (log.f32 4/3) (*.f32 u (+.f32 (*.f32 -1/2 u) -1))))
(+.f32 (*.f32 s (log.f32 4/3)) (+.f32 (*.f32 -1 (*.f32 s u)) (+.f32 (*.f32 -1/2 (*.f32 s (pow.f32 u 2))) (*.f32 -1/3 (*.f32 s (pow.f32 u 3))))))
(fma.f32 s (log.f32 4/3) (fma.f32 -1 (*.f32 s u) (fma.f32 -1/2 (*.f32 s (*.f32 u u)) (*.f32 (*.f32 -1/3 s) (pow.f32 u 3)))))
(fma.f32 s (log.f32 4/3) (-.f32 (fma.f32 (*.f32 s (*.f32 u u)) -1/2 (*.f32 s (*.f32 (pow.f32 u 3) -1/3))) (*.f32 s u)))
(fma.f32 s (log.f32 4/3) (fma.f32 s (*.f32 (pow.f32 u 3) -1/3) (*.f32 s (-.f32 (*.f32 u (*.f32 u -1/2)) u))))
(*.f32 s (+.f32 (-.f32 (log.f32 4/3) u) (*.f32 (*.f32 u u) (+.f32 -1/2 (*.f32 -1/3 u)))))
(*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))
(*.f32 s (+.f32 (log.f32 -4/3) (neg.f32 (neg.f32 (log.f32 u)))))
(*.f32 s (+.f32 (log.f32 -4/3) (log.f32 u)))
(+.f32 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))) (*.f32 -1 (/.f32 s u)))
(fma.f32 s (+.f32 (log.f32 -4/3) (neg.f32 (neg.f32 (log.f32 u)))) (neg.f32 (/.f32 s u)))
(-.f32 (*.f32 s (+.f32 (log.f32 -4/3) (log.f32 u))) (/.f32 s u))
(fma.f32 s (+.f32 (log.f32 -4/3) (log.f32 u)) (/.f32 (neg.f32 s) u))
(+.f32 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))) (+.f32 (*.f32 -1 (/.f32 s u)) (*.f32 -1/2 (/.f32 s (pow.f32 u 2)))))
(fma.f32 s (+.f32 (log.f32 -4/3) (neg.f32 (neg.f32 (log.f32 u)))) (fma.f32 -1 (/.f32 s u) (/.f32 (*.f32 -1/2 s) (*.f32 u u))))
(fma.f32 s (+.f32 (log.f32 -4/3) (log.f32 u)) (-.f32 (*.f32 (/.f32 s (*.f32 u u)) -1/2) (/.f32 s u)))
(fma.f32 s (+.f32 (log.f32 -4/3) (log.f32 u)) (*.f32 (/.f32 s u) (+.f32 -1 (/.f32 -1/2 u))))
(fma.f32 s (+.f32 (log.f32 -4/3) (log.f32 u)) (*.f32 (/.f32 s u) (+.f32 (/.f32 -1/2 u) -1)))
(+.f32 (*.f32 -1/3 (/.f32 s (pow.f32 u 3))) (+.f32 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))) (+.f32 (*.f32 -1 (/.f32 s u)) (*.f32 -1/2 (/.f32 s (pow.f32 u 2))))))
(fma.f32 -1/3 (/.f32 s (pow.f32 u 3)) (fma.f32 s (+.f32 (log.f32 -4/3) (neg.f32 (neg.f32 (log.f32 u)))) (fma.f32 -1 (/.f32 s u) (/.f32 (*.f32 -1/2 s) (*.f32 u u)))))
(fma.f32 (/.f32 s (pow.f32 u 3)) -1/3 (fma.f32 s (+.f32 (log.f32 -4/3) (log.f32 u)) (-.f32 (*.f32 (/.f32 s (*.f32 u u)) -1/2) (/.f32 s u))))
(fma.f32 s (+.f32 (log.f32 -4/3) (log.f32 u)) (-.f32 (*.f32 (/.f32 s (*.f32 u u)) (+.f32 -1/2 (/.f32 -1/3 u))) (/.f32 s u)))
(fma.f32 s (+.f32 (log.f32 -4/3) (log.f32 u)) (*.f32 (/.f32 s u) (+.f32 -1 (+.f32 (/.f32 -1/3 (*.f32 u u)) (/.f32 -1/2 u)))))
(*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))
(*.f32 s (+.f32 (log.f32 4/3) (neg.f32 (log.f32 (/.f32 -1 u)))))
(*.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))))
(+.f32 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))) (*.f32 -1 (/.f32 s u)))
(fma.f32 s (+.f32 (log.f32 4/3) (neg.f32 (log.f32 (/.f32 -1 u)))) (neg.f32 (/.f32 s u)))
(-.f32 (*.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))) (/.f32 s u))
(fma.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (/.f32 (neg.f32 s) u))
(+.f32 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))) (+.f32 (*.f32 -1 (/.f32 s u)) (*.f32 -1/2 (/.f32 s (pow.f32 u 2)))))
(fma.f32 s (+.f32 (log.f32 4/3) (neg.f32 (log.f32 (/.f32 -1 u)))) (fma.f32 -1 (/.f32 s u) (/.f32 (*.f32 -1/2 s) (*.f32 u u))))
(fma.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (-.f32 (*.f32 (/.f32 s (*.f32 u u)) -1/2) (/.f32 s u)))
(fma.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 (/.f32 s u) (+.f32 -1 (/.f32 -1/2 u))))
(fma.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 (/.f32 s u) (+.f32 (/.f32 -1/2 u) -1)))
(+.f32 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))) (+.f32 (*.f32 -1/3 (/.f32 s (pow.f32 u 3))) (+.f32 (*.f32 -1 (/.f32 s u)) (*.f32 -1/2 (/.f32 s (pow.f32 u 2))))))
(fma.f32 s (+.f32 (log.f32 4/3) (neg.f32 (log.f32 (/.f32 -1 u)))) (fma.f32 -1/3 (/.f32 s (pow.f32 u 3)) (fma.f32 -1 (/.f32 s u) (/.f32 (*.f32 -1/2 s) (*.f32 u u)))))
(fma.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (fma.f32 (/.f32 s (pow.f32 u 3)) -1/3 (-.f32 (*.f32 (/.f32 s (*.f32 u u)) -1/2) (/.f32 s u))))
(fma.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (-.f32 (*.f32 (/.f32 s (*.f32 u u)) (+.f32 -1/2 (/.f32 -1/3 u))) (/.f32 s u)))
(fma.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 (/.f32 s u) (+.f32 -1 (+.f32 (/.f32 -1/3 (*.f32 u u)) (/.f32 -1/2 u)))))

localize21.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.5b
(*.f32 (*.f32 3 s) (log.f32 3/4))
Compiler

Compiled 16 to 13 computations (18.8% saved)

series1.0ms (0%)

Counts
1 → 12
Calls

3 calls:

TimeVariablePointExpression
0.0ms
s
@0
(*.f32 (*.f32 3 s) (log.f32 3/4))
0.0ms
s
@inf
(*.f32 (*.f32 3 s) (log.f32 3/4))
0.0ms
s
@-inf
(*.f32 (*.f32 3 s) (log.f32 3/4))

rewrite46.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
607×pow1_binary32
565×add-log-exp_binary32
565×log1p-expm1-u_binary32
565×expm1-log1p-u_binary32
554×add-exp-log_binary32
Iterations

Useful iterations: 0 (0.0ms)

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

simplify9.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
07108
111108
218108
320108
Stop Event
saturated
Counts
23 → 12
Calls
Call 1
Inputs
(*.f32 3 (*.f32 s (log.f32 3/4)))
(*.f32 3 (*.f32 s (log.f32 3/4)))
(*.f32 3 (*.f32 s (log.f32 3/4)))
(*.f32 3 (*.f32 s (log.f32 3/4)))
(*.f32 3 (*.f32 s (log.f32 3/4)))
(*.f32 3 (*.f32 s (log.f32 3/4)))
(*.f32 3 (*.f32 s (log.f32 3/4)))
(*.f32 3 (*.f32 s (log.f32 3/4)))
(*.f32 3 (*.f32 s (log.f32 3/4)))
(*.f32 3 (*.f32 s (log.f32 3/4)))
(*.f32 3 (*.f32 s (log.f32 3/4)))
(*.f32 3 (*.f32 s (log.f32 3/4)))
Outputs
(*.f32 3 (*.f32 s (log.f32 3/4)))
(*.f32 3 (*.f32 s (log.f32 3/4)))
(*.f32 3 (*.f32 s (log.f32 3/4)))
(*.f32 3 (*.f32 s (log.f32 3/4)))
(*.f32 3 (*.f32 s (log.f32 3/4)))
(*.f32 3 (*.f32 s (log.f32 3/4)))
(*.f32 3 (*.f32 s (log.f32 3/4)))
(*.f32 3 (*.f32 s (log.f32 3/4)))
(*.f32 3 (*.f32 s (log.f32 3/4)))
(*.f32 3 (*.f32 s (log.f32 3/4)))
(*.f32 3 (*.f32 s (log.f32 3/4)))
(*.f32 3 (*.f32 s (log.f32 3/4)))

localize64.0ms (0.6%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 u (*.f32 u (+.f32 u 3/2))))
0.3b
(*.f32 u (*.f32 u (+.f32 u 3/2)))
0.4b
(*.f32 (+.f32 (log.f32 3/4) u) 3)
1.1b
(+.f32 (log.f32 3/4) u)
Compiler

Compiled 64 to 45 computations (29.7% saved)

series2.0ms (0%)

Counts
2 → 24
Calls

6 calls:

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

rewrite77.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
652×fma-def_binary32
624×log-prod_binary32
346×pow2_binary32
276×fma-neg_binary32
240×expm1-udef_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01229
127329
2379129
Stop Event
node limit
Counts
2 → 132
Calls
Call 1
Inputs
(*.f32 u (*.f32 u (+.f32 u 3/2)))
(+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 u (*.f32 u (+.f32 u 3/2))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (pow.f32 u 3) (*.f32 (*.f32 u 3/2) u))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (pow.f32 u 3) (*.f32 3/2 (*.f32 u u)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (pow.f32 u 3) (*.f32 u (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (pow.f32 u 3) (*.f32 (*.f32 u u) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (*.f32 u (*.f32 u (+.f32 u 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 3/2 (*.f32 u u)) (pow.f32 u 3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (*.f32 u u) 3/2) (pow.f32 u 3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (pow.f32 (cbrt.f32 (pow.f32 (pow.f32 (exp.f32 u) (+.f32 u 3/2)) u)) 2)) (log.f32 (cbrt.f32 (pow.f32 (pow.f32 (exp.f32 u) (+.f32 u 3/2)) u))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (pow.f32 (pow.f32 (exp.f32 u) (+.f32 u 3/2)) u))) (log.f32 (sqrt.f32 (pow.f32 (pow.f32 (exp.f32 u) (+.f32 u 3/2)) u))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (*.f32 u u) (+.f32 27/8 (pow.f32 u 3))) (-.f32 (fma.f32 u u 9/4) (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (*.f32 u u) (fma.f32 u u -9/4)) (+.f32 u -3/2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 u (*.f32 u (+.f32 u 3/2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 u (sqrt.f32 (+.f32 u 3/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (pow.f32 (exp.f32 u) (+.f32 u 3/2)) u))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 u (*.f32 u (+.f32 u 3/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 u (*.f32 u (+.f32 u 3/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 u (*.f32 u (+.f32 u 3/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 u (*.f32 u (+.f32 u 3/2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u (*.f32 u u) (*.f32 (*.f32 u 3/2) u))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u (*.f32 u u) (*.f32 3/2 (*.f32 u u)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u (*.f32 u u) (*.f32 u (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u (*.f32 u u) (*.f32 (*.f32 u u) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 3/2 (*.f32 u u) (pow.f32 u 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (pow.f32 u 3) (*.f32 (*.f32 u 3/2) u))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (pow.f32 u 3) (*.f32 3/2 (*.f32 u u)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (pow.f32 u 3) (*.f32 u (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (pow.f32 u 3) (*.f32 (*.f32 u u) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u u) u (*.f32 (*.f32 u 3/2) u))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u u) u (*.f32 3/2 (*.f32 u u)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u u) u (*.f32 u (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u u) u (*.f32 (*.f32 u u) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u u) 3/2 (pow.f32 u 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (sqrt.f32 u)) (*.f32 u (sqrt.f32 u)) (*.f32 (*.f32 u 3/2) u))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (sqrt.f32 u)) (*.f32 u (sqrt.f32 u)) (*.f32 3/2 (*.f32 u u)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (sqrt.f32 u)) (*.f32 u (sqrt.f32 u)) (*.f32 u (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (sqrt.f32 u)) (*.f32 u (sqrt.f32 u)) (*.f32 (*.f32 u u) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (pow.f32 u 3)) (sqrt.f32 (pow.f32 u 3)) (*.f32 (*.f32 u 3/2) u))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (pow.f32 u 3)) (sqrt.f32 (pow.f32 u 3)) (*.f32 3/2 (*.f32 u u)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (pow.f32 u 3)) (sqrt.f32 (pow.f32 u 3)) (*.f32 u (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (pow.f32 u 3)) (sqrt.f32 (pow.f32 u 3)) (*.f32 (*.f32 u u) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 u 3/2) (pow.f32 u 3/2) (*.f32 (*.f32 u 3/2) u))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 u 3/2) (pow.f32 u 3/2) (*.f32 3/2 (*.f32 u u)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 u 3/2) (pow.f32 u 3/2) (*.f32 u (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 u 3/2) (pow.f32 u 3/2) (*.f32 (*.f32 u u) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u u) 1) u (*.f32 (*.f32 u 3/2) u))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u u) 1) u (*.f32 3/2 (*.f32 u u)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u u) 1) u (*.f32 u (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u u) 1) u (*.f32 (*.f32 u u) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u u) (pow.f32 (cbrt.f32 u) 2)) (cbrt.f32 u) (*.f32 (*.f32 u 3/2) u))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u u) (pow.f32 (cbrt.f32 u) 2)) (cbrt.f32 u) (*.f32 3/2 (*.f32 u u)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u u) (pow.f32 (cbrt.f32 u) 2)) (cbrt.f32 u) (*.f32 u (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u u) (pow.f32 (cbrt.f32 u) 2)) (cbrt.f32 u) (*.f32 (*.f32 u u) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u u) (sqrt.f32 u)) (sqrt.f32 u) (*.f32 (*.f32 u 3/2) u))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u u) (sqrt.f32 u)) (sqrt.f32 u) (*.f32 3/2 (*.f32 u u)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u u) (sqrt.f32 u)) (sqrt.f32 u) (*.f32 u (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u u) (sqrt.f32 u)) (sqrt.f32 u) (*.f32 (*.f32 u u) 3/2))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 (*.f32 (pow.f32 (+.f32 u (log1p.f32 -1/4)) 2) 9) (-.f32 (*.f32 (+.f32 u (log1p.f32 -1/4)) 3) (*.f32 u (*.f32 u (+.f32 u 3/2))))) (/.f32 (pow.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) 2) (-.f32 (*.f32 (+.f32 u (log1p.f32 -1/4)) 3) (*.f32 u (*.f32 u (+.f32 u 3/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3))) (pow.f32 (cbrt.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3))) 2) (cbrt.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3))) (sqrt.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (fma.f32 (pow.f32 (+.f32 u (log1p.f32 -1/4)) 3) 27 (pow.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) 3)) (/.f32 1 (fma.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) (-.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3)) (*.f32 (pow.f32 (+.f32 u (log1p.f32 -1/4)) 2) 9))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 (*.f32 (pow.f32 (+.f32 u (log1p.f32 -1/4)) 2) 9) (pow.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) 2)) (/.f32 1 (-.f32 (*.f32 (+.f32 u (log1p.f32 -1/4)) 3) (*.f32 u (*.f32 u (+.f32 u 3/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (fma.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) (-.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3)) (*.f32 (pow.f32 (+.f32 u (log1p.f32 -1/4)) 2) 9)) (fma.f32 (pow.f32 (+.f32 u (log1p.f32 -1/4)) 3) 27 (pow.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (-.f32 (*.f32 (+.f32 u (log1p.f32 -1/4)) 3) (*.f32 u (*.f32 u (+.f32 u 3/2)))) (-.f32 (*.f32 (pow.f32 (+.f32 u (log1p.f32 -1/4)) 2) 9) (pow.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (fma.f32 (pow.f32 (+.f32 u (log1p.f32 -1/4)) 3) 27 (pow.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) 3)) (fma.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) (-.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3)) (*.f32 (pow.f32 (+.f32 u (log1p.f32 -1/4)) 2) 9)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (fma.f32 (pow.f32 (+.f32 u (log1p.f32 -1/4)) 3) 27 (pow.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) 3)) (+.f32 (pow.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) 2) (-.f32 (*.f32 (pow.f32 (+.f32 u (log1p.f32 -1/4)) 2) 9) (*.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (*.f32 (pow.f32 (+.f32 u (log1p.f32 -1/4)) 2) 9) (pow.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) 2)) (-.f32 (*.f32 (+.f32 u (log1p.f32 -1/4)) 3) (*.f32 u (*.f32 u (+.f32 u 3/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (fma.f32 (pow.f32 (+.f32 u (log1p.f32 -1/4)) 3) 27 (pow.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) 3))) (neg.f32 (fma.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) (-.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3)) (*.f32 (pow.f32 (+.f32 u (log1p.f32 -1/4)) 2) 9))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (-.f32 (*.f32 (pow.f32 (+.f32 u (log1p.f32 -1/4)) 2) 9) (pow.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) 2))) (neg.f32 (-.f32 (*.f32 (+.f32 u (log1p.f32 -1/4)) 3) (*.f32 u (*.f32 u (+.f32 u 3/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) 2) (*.f32 (pow.f32 (+.f32 u (log1p.f32 -1/4)) 2) 9)) (-.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (fma.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) (-.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3)) (*.f32 (pow.f32 (+.f32 u (log1p.f32 -1/4)) 2) 9)) (fma.f32 (pow.f32 (+.f32 u (log1p.f32 -1/4)) 3) 27 (pow.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (-.f32 (*.f32 (+.f32 u (log1p.f32 -1/4)) 3) (*.f32 u (*.f32 u (+.f32 u 3/2)))) (-.f32 (*.f32 (pow.f32 (+.f32 u (log1p.f32 -1/4)) 2) 9) (pow.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (+.f32 1 (expm1.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))))) (pow.f32 (*.f32 3/4 (exp.f32 u)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (pow.f32 (pow.f32 (exp.f32 u) (+.f32 u 3/2)) u) (+.f32 1 (expm1.f32 (*.f32 (+.f32 u (log1p.f32 -1/4)) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (+.f32 1 (expm1.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))))) (+.f32 1 (expm1.f32 (*.f32 (+.f32 u (log1p.f32 -1/4)) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (+.f32 1 (expm1.f32 (*.f32 (+.f32 u (log1p.f32 -1/4)) 3))) (pow.f32 (pow.f32 (exp.f32 u) (+.f32 u 3/2)) u)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (pow.f32 (*.f32 3/4 (exp.f32 u)) 3) (+.f32 1 (expm1.f32 (*.f32 u (*.f32 u (+.f32 u 3/2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (+.f32 1 (expm1.f32 (*.f32 (+.f32 u (log1p.f32 -1/4)) 3))) (+.f32 1 (expm1.f32 (*.f32 u (*.f32 u (+.f32 u 3/2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u (*.f32 u (+.f32 u 3/2)) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (+.f32 u 3/2) (*.f32 u u) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (+.f32 u 3/2)) u (*.f32 (+.f32 u (log1p.f32 -1/4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (*.f32 u (+.f32 u 3/2))) 1 (*.f32 (+.f32 u (log1p.f32 -1/4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (+.f32 u (log1p.f32 -1/4)) 3 (*.f32 u (*.f32 u (+.f32 u 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 3 (+.f32 u (log1p.f32 -1/4)) (*.f32 u (*.f32 u (+.f32 u 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (+.f32 u (log1p.f32 -1/4)) 3) 1 (*.f32 u (*.f32 u (+.f32 u 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 u (*.f32 u (+.f32 u 3/2))) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 (+.f32 u (log1p.f32 -1/4)) 3) (*.f32 u (*.f32 u (+.f32 u 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u u) (+.f32 u 3/2) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (*.f32 (+.f32 u (log1p.f32 -1/4)) 3)) (cbrt.f32 (*.f32 (pow.f32 (+.f32 u (log1p.f32 -1/4)) 2) 9)) (*.f32 u (*.f32 u (+.f32 u 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (*.f32 (pow.f32 (+.f32 u (log1p.f32 -1/4)) 2) 9)) (cbrt.f32 (*.f32 (+.f32 u (log1p.f32 -1/4)) 3)) (*.f32 u (*.f32 u (+.f32 u 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (pow.f32 (*.f32 u (+.f32 u 3/2)) 2)) (*.f32 (cbrt.f32 (*.f32 u (+.f32 u 3/2))) u) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 u) 2) (*.f32 (cbrt.f32 u) (*.f32 u (+.f32 u 3/2))) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (+.f32 u (log1p.f32 -1/4))) 2) (*.f32 (cbrt.f32 (+.f32 u (log1p.f32 -1/4))) 3) (*.f32 u (*.f32 u (+.f32 u 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (*.f32 u (*.f32 u (+.f32 u 3/2)))) (pow.f32 (cbrt.f32 (*.f32 u (*.f32 u (+.f32 u 3/2)))) 2) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (*.f32 u (*.f32 u (+.f32 u 3/2)))) 2) (cbrt.f32 (*.f32 u (*.f32 u (+.f32 u 3/2)))) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 (+.f32 u (log1p.f32 -1/4)) 3)) (sqrt.f32 (*.f32 (+.f32 u (log1p.f32 -1/4)) 3)) (*.f32 u (*.f32 u (+.f32 u 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 u (+.f32 u 3/2))) (*.f32 (sqrt.f32 (*.f32 u (+.f32 u 3/2))) u) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 u) (*.f32 (sqrt.f32 u) (*.f32 u (+.f32 u 3/2))) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (+.f32 u (log1p.f32 -1/4))) (*.f32 (sqrt.f32 (+.f32 u (log1p.f32 -1/4))) 3) (*.f32 u (*.f32 u (+.f32 u 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (sqrt.f32 (+.f32 u 3/2))) (*.f32 u (sqrt.f32 (+.f32 u 3/2))) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u u) 1) (+.f32 u 3/2) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 3 (pow.f32 (cbrt.f32 (+.f32 u (log1p.f32 -1/4))) 2)) (cbrt.f32 (+.f32 u (log1p.f32 -1/4))) (*.f32 u (*.f32 u (+.f32 u 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 3 (sqrt.f32 (+.f32 u (log1p.f32 -1/4)))) (sqrt.f32 (+.f32 u (log1p.f32 -1/4))) (*.f32 u (*.f32 u (+.f32 u 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (cbrt.f32 (pow.f32 (*.f32 u (+.f32 u 3/2)) 2))) (cbrt.f32 (*.f32 u (+.f32 u 3/2))) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (sqrt.f32 (*.f32 u (+.f32 u 3/2)))) (sqrt.f32 (*.f32 u (+.f32 u 3/2))) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u (+.f32 u 3/2)) (pow.f32 (cbrt.f32 u) 2)) (cbrt.f32 u) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u (+.f32 u 3/2)) (sqrt.f32 u)) (sqrt.f32 u) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u u) (pow.f32 (cbrt.f32 (+.f32 u 3/2)) 2)) (cbrt.f32 (+.f32 u 3/2)) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u u) (sqrt.f32 (+.f32 u 3/2))) (sqrt.f32 (+.f32 u 3/2)) (*.f32 (+.f32 u (log1p.f32 -1/4)) 3))))))

simplify115.0ms (1.1%)

Algorithm
egg-herbie
Rules
652×distribute-rgt-in_binary32
622×associate-+l+_binary32
598×distribute-lft-in_binary32
536×unswap-sqr_binary32
498×sqr-pow_binary32
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
018297
147259
2114249
3270240
4657235
51803235
63275235
73507235
83807235
94346235
105343235
117358235
Stop Event
node limit
Counts
156 → 146
Calls
Call 1
Inputs
(*.f32 3/2 (pow.f32 u 2))
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(pow.f32 u 3)
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(pow.f32 u 3)
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(*.f32 3 (log.f32 3/4))
(+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u))
(+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u)))
(+.f32 (pow.f32 u 3) (+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u))))
(pow.f32 u 3)
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (pow.f32 u 3) (+.f32 (*.f32 3/2 (pow.f32 u 2)) (*.f32 3 u)))
(+.f32 (pow.f32 u 3) (+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u))))
(pow.f32 u 3)
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (pow.f32 u 3) (+.f32 (*.f32 3/2 (pow.f32 u 2)) (*.f32 3 u)))
(+.f32 (pow.f32 u 3) (+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u))))
Outputs
(*.f32 3/2 (pow.f32 u 2))
(*.f32 3/2 (*.f32 u u))
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (*.f32 3/2 (*.f32 u u)) (pow.f32 u 3))
(*.f32 (*.f32 u u) (+.f32 3/2 u))
(*.f32 u (*.f32 u (+.f32 3/2 u)))
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (*.f32 3/2 (*.f32 u u)) (pow.f32 u 3))
(*.f32 (*.f32 u u) (+.f32 3/2 u))
(*.f32 u (*.f32 u (+.f32 3/2 u)))
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (*.f32 3/2 (*.f32 u u)) (pow.f32 u 3))
(*.f32 (*.f32 u u) (+.f32 3/2 u))
(*.f32 u (*.f32 u (+.f32 3/2 u)))
(pow.f32 u 3)
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (*.f32 3/2 (*.f32 u u)) (pow.f32 u 3))
(*.f32 (*.f32 u u) (+.f32 3/2 u))
(*.f32 u (*.f32 u (+.f32 3/2 u)))
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (*.f32 3/2 (*.f32 u u)) (pow.f32 u 3))
(*.f32 (*.f32 u u) (+.f32 3/2 u))
(*.f32 u (*.f32 u (+.f32 3/2 u)))
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (*.f32 3/2 (*.f32 u u)) (pow.f32 u 3))
(*.f32 (*.f32 u u) (+.f32 3/2 u))
(*.f32 u (*.f32 u (+.f32 3/2 u)))
(pow.f32 u 3)
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (*.f32 3/2 (*.f32 u u)) (pow.f32 u 3))
(*.f32 (*.f32 u u) (+.f32 3/2 u))
(*.f32 u (*.f32 u (+.f32 3/2 u)))
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (*.f32 3/2 (*.f32 u u)) (pow.f32 u 3))
(*.f32 (*.f32 u u) (+.f32 3/2 u))
(*.f32 u (*.f32 u (+.f32 3/2 u)))
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (*.f32 3/2 (*.f32 u u)) (pow.f32 u 3))
(*.f32 (*.f32 u u) (+.f32 3/2 u))
(*.f32 u (*.f32 u (+.f32 3/2 u)))
(*.f32 3 (log.f32 3/4))
(+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u))
(*.f32 3 (+.f32 (log.f32 3/4) u))
(*.f32 3 (+.f32 u (log.f32 3/4)))
(+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u)))
(fma.f32 3/2 (*.f32 u u) (*.f32 3 (+.f32 (log.f32 3/4) u)))
(fma.f32 3/2 (*.f32 u u) (*.f32 3 (+.f32 u (log.f32 3/4))))
(fma.f32 u (fma.f32 3/2 u 3) (*.f32 3 (log.f32 3/4)))
(+.f32 (pow.f32 u 3) (+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u))))
(+.f32 (pow.f32 u 3) (fma.f32 3/2 (*.f32 u u) (*.f32 3 (+.f32 (log.f32 3/4) u))))
(+.f32 (*.f32 (*.f32 u u) (+.f32 3/2 u)) (*.f32 3 (+.f32 u (log.f32 3/4))))
(fma.f32 (*.f32 u u) (+.f32 3/2 u) (*.f32 3 (+.f32 u (log.f32 3/4))))
(fma.f32 u (fma.f32 3/2 u 3) (fma.f32 3 (log.f32 3/4) (pow.f32 u 3)))
(fma.f32 u (fma.f32 u (+.f32 3/2 u) 3) (*.f32 3 (log.f32 3/4)))
(pow.f32 u 3)
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (*.f32 3/2 (*.f32 u u)) (pow.f32 u 3))
(*.f32 (*.f32 u u) (+.f32 3/2 u))
(*.f32 u (*.f32 u (+.f32 3/2 u)))
(+.f32 (pow.f32 u 3) (+.f32 (*.f32 3/2 (pow.f32 u 2)) (*.f32 3 u)))
(+.f32 (pow.f32 u 3) (fma.f32 3/2 (*.f32 u u) (*.f32 u 3)))
(+.f32 (*.f32 (*.f32 u u) (+.f32 3/2 u)) (*.f32 u 3))
(fma.f32 u 3 (*.f32 u (*.f32 u (+.f32 3/2 u))))
(fma.f32 u (fma.f32 3/2 u 3) (pow.f32 u 3))
(*.f32 u (fma.f32 u (+.f32 3/2 u) 3))
(+.f32 (pow.f32 u 3) (+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u))))
(+.f32 (pow.f32 u 3) (fma.f32 3/2 (*.f32 u u) (*.f32 3 (+.f32 (log.f32 3/4) u))))
(+.f32 (*.f32 (*.f32 u u) (+.f32 3/2 u)) (*.f32 3 (+.f32 u (log.f32 3/4))))
(fma.f32 (*.f32 u u) (+.f32 3/2 u) (*.f32 3 (+.f32 u (log.f32 3/4))))
(fma.f32 u (fma.f32 3/2 u 3) (fma.f32 3 (log.f32 3/4) (pow.f32 u 3)))
(fma.f32 u (fma.f32 u (+.f32 3/2 u) 3) (*.f32 3 (log.f32 3/4)))
(pow.f32 u 3)
(+.f32 (pow.f32 u 3) (*.f32 3/2 (pow.f32 u 2)))
(+.f32 (*.f32 3/2 (*.f32 u u)) (pow.f32 u 3))
(*.f32 (*.f32 u u) (+.f32 3/2 u))
(*.f32 u (*.f32 u (+.f32 3/2 u)))
(+.f32 (pow.f32 u 3) (+.f32 (*.f32 3/2 (pow.f32 u 2)) (*.f32 3 u)))
(+.f32 (pow.f32 u 3) (fma.f32 3/2 (*.f32 u u) (*.f32 u 3)))
(+.f32 (*.f32 (*.f32 u u) (+.f32 3/2 u)) (*.f32 u 3))
(fma.f32 u 3 (*.f32 u (*.f32 u (+.f32 3/2 u))))
(fma.f32 u (fma.f32 3/2 u 3) (pow.f32 u 3))
(*.f32 u (fma.f32 u (+.f32 3/2 u) 3))
(+.f32 (pow.f32 u 3) (+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u))))
(+.f32 (pow.f32 u 3) (fma.f32 3/2 (*.f32 u u) (*.f32 3 (+.f32 (log.f32 3/4) u))))
(+.f32 (*.f32 (*.f32 u u) (+.f32 3/2 u)) (*.f32 3 (+.f32 u (log.f32 3/4))))
(fma.f32 (*.f32 u u) (+.f32 3/2 u) (*.f32 3 (+.f32 u (log.f32 3/4))))
(fma.f32 u (fma.f32 3/2 u 3) (fma.f32 3 (log.f32 3/4) (pow.f32 u 3)))
(fma.f32 u (fma.f32 u (+.f32 3/2 u) 3) (*.f32 3 (log.f32 3/4)))

localize56.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f32 u 4/3)
0.6b
(+.f32 (-.f32 1 (*.f32 u 4/3)) 1/3)
0.9b
(log.f32 (/.f32 1 (+.f32 (-.f32 1 (*.f32 u 4/3)) 1/3)))
1.2b
(-.f32 1 (*.f32 u 4/3))
Compiler

Compiled 59 to 49 computations (16.9% saved)

series5.0ms (0%)

Counts
4 → 48
Calls

12 calls:

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

rewrite81.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
450×log-prod_binary32
440×prod-diff_binary32
353×exp-prod_binary32
270×pow2_binary32
233×pow-prod-down_binary32
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01035
122529
2282025
Stop Event
node limit
Counts
4 → 192
Calls
Call 1
Inputs
(-.f32 1 (*.f32 u 4/3))
(log.f32 (/.f32 1 (+.f32 (-.f32 1 (*.f32 u 4/3)) 1/3)))
(+.f32 (-.f32 1 (*.f32 u 4/3)) 1/3)
(*.f32 u 4/3)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f32 1 (*.f32 u -4/3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 1 (*.f32 (*.f32 u -4/3) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (fma.f32 u -4/3 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 u -4/3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (pow.f32 (cbrt.f32 (exp.f32 (fma.f32 u -4/3 1))) 2)) (*.f32 (fma.f32 u -4/3 1) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (exp.f32 (fma.f32 u -4/3 1)))) (log.f32 (sqrt.f32 (exp.f32 (fma.f32 u -4/3 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (fma.f32 u -4/3 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (fma.f32 u -4/3 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (fma.f32 u -4/3 1)) (pow.f32 (cbrt.f32 (fma.f32 u -4/3 1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (fma.f32 u -4/3 1)) 2) (cbrt.f32 (fma.f32 u -4/3 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (fma.f32 u -4/3 1)) (sqrt.f32 (fma.f32 u -4/3 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 1 (*.f32 (pow.f32 u 3) 64/27)) (/.f32 1 (fma.f32 (*.f32 u 4/3) (fma.f32 u 4/3 1) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 1 (*.f32 (*.f32 u u) 16/9)) (/.f32 1 (fma.f32 u 4/3 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (fma.f32 (*.f32 u 4/3) (fma.f32 u 4/3 1) 1) (-.f32 1 (*.f32 (pow.f32 u 3) 64/27))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (fma.f32 u 4/3 1) (-.f32 1 (*.f32 (*.f32 u u) 16/9))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 1 (*.f32 (pow.f32 u 3) 64/27)) (fma.f32 (*.f32 u 4/3) (fma.f32 u 4/3 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 1 (*.f32 (*.f32 u u) 16/9)) (fma.f32 u 4/3 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (-.f32 1 (*.f32 (pow.f32 u 3) 64/27))) (neg.f32 (fma.f32 (*.f32 u 4/3) (fma.f32 u 4/3 1) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (-.f32 1 (*.f32 (*.f32 u u) 16/9))) (neg.f32 (fma.f32 u 4/3 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 1 (pow.f32 (*.f32 u -4/3) 3)) (+.f32 1 (-.f32 (pow.f32 (*.f32 u -4/3) 2) (*.f32 u -4/3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 1 (pow.f32 (*.f32 u -4/3) 2)) (-.f32 1 (*.f32 u -4/3)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (fma.f32 u -4/3 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (E.f32) (log1p.f32 (*.f32 u -4/3)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (fma.f32 u -4/3 1) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (fma.f32 u -4/3 1)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (fma.f32 u -4/3 1)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (fma.f32 u -4/3 1) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (fma.f32 (*.f32 u 4/3) (fma.f32 u 4/3 1) 1) (-.f32 1 (*.f32 (pow.f32 u 3) 64/27))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (fma.f32 u 4/3 1) (-.f32 1 (*.f32 (*.f32 u u) 16/9))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (log1p.f32 (*.f32 u -4/3))) 2)) (cbrt.f32 (log1p.f32 (*.f32 u -4/3))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (exp.f32 (sqrt.f32 (log1p.f32 (*.f32 u -4/3)))) (sqrt.f32 (log1p.f32 (*.f32 u -4/3))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (fma.f32 u -4/3 1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (fma.f32 u -4/3 1)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (fma.f32 u -4/3 1))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (fma.f32 u -4/3 1) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (fma.f32 u -4/3 1)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (fma.f32 u -4/3 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log1p.f32 (*.f32 u -4/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log1p.f32 (*.f32 u -4/3)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 1/3 (log1p.f32 (*.f32 u -4/3))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 1/2 (log1p.f32 (*.f32 u -4/3))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 3 (log1p.f32 (*.f32 u -4/3))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 (log1p.f32 (*.f32 u -4/3)) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 (log1p.f32 (*.f32 u -4/3)) 3) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 u -4/3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u -4/3 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 4/3 (neg.f32 u) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (*.f32 (*.f32 u u) 16/9)) (neg.f32 (cbrt.f32 (*.f32 u 4/3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 u 4/3)) (neg.f32 (sqrt.f32 (*.f32 u 4/3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 -1 (*.f32 u 4/3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (neg.f32 u) 4/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)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 u -4/3)) (sqrt.f32 (*.f32 u -4/3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 -4/3 u 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (neg.f32 (cbrt.f32 (*.f32 (*.f32 u u) 16/9))) (cbrt.f32 (*.f32 u 4/3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (neg.f32 (sqrt.f32 (*.f32 u 4/3))) (sqrt.f32 (*.f32 u 4/3)) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (neg.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (neg.f32 (log1p.f32 (fma.f32 u -4/3 1/3))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 -1) (log.f32 (/.f32 1 (neg.f32 (+.f32 4/3 (*.f32 u -4/3))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (cbrt.f32 (pow.f32 (+.f32 4/3 (*.f32 u -4/3)) -2))) (*.f32 1/3 (neg.f32 (log1p.f32 (fma.f32 u -4/3 1/3)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 1/3 (neg.f32 (log1p.f32 (fma.f32 u -4/3 1/3)))) (log.f32 (cbrt.f32 (pow.f32 (+.f32 4/3 (*.f32 u -4/3)) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 -1/2 (log1p.f32 (fma.f32 u -4/3 1/3))) (*.f32 -1/2 (log1p.f32 (fma.f32 u -4/3 1/3))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (pow.f32 (cbrt.f32 (+.f32 4/3 (*.f32 u -4/3))) -2)) (*.f32 1/3 (neg.f32 (log1p.f32 (fma.f32 u -4/3 1/3)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (/.f32 1 (+.f32 1/27 (pow.f32 (fma.f32 u -4/3 1) 3)))) (log.f32 (+.f32 (pow.f32 (fma.f32 u -4/3 1) 2) (-.f32 1/9 (*.f32 (fma.f32 u -4/3 1) 1/3)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (/.f32 1 (+.f32 (pow.f32 (fma.f32 u -4/3 1) 2) -1/9))) (log1p.f32 (fma.f32 u -4/3 -1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 0 (log1p.f32 (fma.f32 u -4/3 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 0 (log.f32 (neg.f32 (neg.f32 (+.f32 4/3 (*.f32 u -4/3))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (neg.f32 (log1p.f32 (fma.f32 u -4/3 1/3))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (log.f32 -1) (log.f32 (neg.f32 (+.f32 4/3 (*.f32 u -4/3)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (*.f32 -1/2 (log1p.f32 (fma.f32 u -4/3 1/3))) (*.f32 1/2 (log1p.f32 (fma.f32 u -4/3 1/3))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (log.f32 (pow.f32 (cbrt.f32 (+.f32 4/3 (*.f32 u -4/3))) -2)) (*.f32 1/3 (log1p.f32 (fma.f32 u -4/3 1/3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (neg.f32 (log1p.f32 (fma.f32 u -4/3 1/3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1/3 (log.f32 (pow.f32 (+.f32 4/3 (*.f32 u -4/3)) -3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (neg.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (neg.f32 (log1p.f32 (fma.f32 u -4/3 1/3)))) (cbrt.f32 (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 2)) (cbrt.f32 (neg.f32 (log1p.f32 (fma.f32 u -4/3 1/3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (neg.f32 (log1p.f32 (fma.f32 u -4/3 1/3)))) (sqrt.f32 (neg.f32 (log1p.f32 (fma.f32 u -4/3 1/3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 -1 (log1p.f32 (fma.f32 u -4/3 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 3 (*.f32 1/3 (neg.f32 (log1p.f32 (fma.f32 u -4/3 1/3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 2 (*.f32 -1/2 (log1p.f32 (fma.f32 u -4/3 1/3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 0 (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 3)) (+.f32 0 (+.f32 (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 2) (*.f32 0 (log1p.f32 (fma.f32 u -4/3 1/3))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 0 (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 2)) (log1p.f32 (fma.f32 u -4/3 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (neg.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (E.f32) (log.f32 (neg.f32 (log1p.f32 (fma.f32 u -4/3 1/3)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (neg.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (neg.f32 (log1p.f32 (fma.f32 u -4/3 1/3)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (neg.f32 (log1p.f32 (fma.f32 u -4/3 1/3)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (log.f32 (neg.f32 (log1p.f32 (fma.f32 u -4/3 1/3))))) 2)) (cbrt.f32 (log.f32 (neg.f32 (log1p.f32 (fma.f32 u -4/3 1/3))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (exp.f32 (sqrt.f32 (log.f32 (neg.f32 (log1p.f32 (fma.f32 u -4/3 1/3)))))) (sqrt.f32 (log.f32 (neg.f32 (log1p.f32 (fma.f32 u -4/3 1/3))))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f32 (log1p.f32 (fma.f32 u -4/3 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f32 (log.f32 (neg.f32 (neg.f32 (+.f32 4/3 (*.f32 u -4/3))))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (neg.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (neg.f32 (log1p.f32 (fma.f32 u -4/3 1/3)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (neg.f32 (log1p.f32 (fma.f32 u -4/3 1/3)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (neg.f32 (log1p.f32 (fma.f32 u -4/3 1/3)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (neg.f32 (log1p.f32 (fma.f32 u -4/3 1/3)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 3 (log.f32 (neg.f32 (log1p.f32 (fma.f32 u -4/3 1/3))))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (cbrt.f32 (neg.f32 (log1p.f32 (fma.f32 u -4/3 1/3))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (sqrt.f32 (neg.f32 (log1p.f32 (fma.f32 u -4/3 1/3))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 (log.f32 (neg.f32 (log1p.f32 (fma.f32 u -4/3 1/3)))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 1 (fma.f32 u 4/3 -1/3))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 1 (/.f32 (fma.f32 u 4/3 -1/3) 1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 4/3 (*.f32 u 4/3))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (+.f32 4/3 (*.f32 u -4/3)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 (pow.f32 (fma.f32 u -4/3 1) 2) (+.f32 1 (fma.f32 u -4/3 -1/3))) (/.f32 1/9 (+.f32 1 (fma.f32 u -4/3 -1/3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (+.f32 4/3 (*.f32 u -4/3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 4/3 (*.f32 u -4/3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (+.f32 4/3 (*.f32 u -4/3))) (pow.f32 (cbrt.f32 (+.f32 4/3 (*.f32 u -4/3))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (+.f32 4/3 (*.f32 u -4/3))) 2) (cbrt.f32 (+.f32 4/3 (*.f32 u -4/3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (+.f32 4/3 (*.f32 u -4/3))) (sqrt.f32 (+.f32 4/3 (*.f32 u -4/3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 1/27 (pow.f32 (fma.f32 u -4/3 1) 3)) (/.f32 1 (+.f32 (pow.f32 (fma.f32 u -4/3 1) 2) (-.f32 1/9 (*.f32 (fma.f32 u -4/3 1) 1/3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 (pow.f32 (fma.f32 u -4/3 1) 2) -1/9) (/.f32 1 (+.f32 1 (fma.f32 u -4/3 -1/3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 1 (+.f32 4/3 (*.f32 u -4/3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (+.f32 (pow.f32 (fma.f32 u -4/3 1) 2) (-.f32 1/9 (*.f32 (fma.f32 u -4/3 1) 1/3))) (+.f32 1/27 (pow.f32 (fma.f32 u -4/3 1) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (+.f32 1 (fma.f32 u -4/3 -1/3)) (+.f32 (pow.f32 (fma.f32 u -4/3 1) 2) -1/9)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 4/3 (*.f32 u -4/3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (pow.f32 (cbrt.f32 (+.f32 4/3 (*.f32 u -4/3))) 2) (/.f32 1 (cbrt.f32 (+.f32 4/3 (*.f32 u -4/3)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (sqrt.f32 (+.f32 4/3 (*.f32 u -4/3))) (pow.f32 (+.f32 4/3 (*.f32 u -4/3)) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (+.f32 4/3 (*.f32 u -4/3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 1/27 (pow.f32 (fma.f32 u -4/3 1) 3)) (+.f32 (pow.f32 (fma.f32 u -4/3 1) 2) (-.f32 1/9 (*.f32 (fma.f32 u -4/3 1) 1/3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 1/27 (pow.f32 (fma.f32 u -4/3 1) 3)) (+.f32 1/9 (-.f32 (pow.f32 (fma.f32 u -4/3 1) 2) (*.f32 (fma.f32 u -4/3 1) 1/3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (fma.f32 u -4/3 1) 2) -1/9) (+.f32 1 (fma.f32 u -4/3 -1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (+.f32 1/27 (pow.f32 (fma.f32 u -4/3 1) 3))) (neg.f32 (+.f32 (pow.f32 (fma.f32 u -4/3 1) 2) (-.f32 1/9 (*.f32 (fma.f32 u -4/3 1) 1/3)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (+.f32 (pow.f32 (fma.f32 u -4/3 1) 2) -1/9)) (neg.f32 (+.f32 1 (fma.f32 u -4/3 -1/3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 1 (pow.f32 (fma.f32 u 4/3 -1/3) 3)) (+.f32 1 (+.f32 (pow.f32 (fma.f32 u 4/3 -1/3) 2) (fma.f32 u 4/3 -1/3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 1 (pow.f32 (fma.f32 u 4/3 -1/3) 2)) (+.f32 1 (fma.f32 u 4/3 -1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 1/9 (pow.f32 (fma.f32 u -4/3 1) 2)) (-.f32 1/3 (fma.f32 u -4/3 1)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (+.f32 4/3 (*.f32 u -4/3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 1 (+.f32 4/3 (*.f32 u -4/3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (E.f32) (log1p.f32 (fma.f32 u -4/3 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (+.f32 4/3 (*.f32 u -4/3)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (+.f32 4/3 (*.f32 u -4/3)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (+.f32 4/3 (*.f32 u -4/3)) -3) -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (+.f32 4/3 (*.f32 u -4/3))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 1 (cbrt.f32 (+.f32 4/3 (*.f32 u -4/3)))) -3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (+.f32 4/3 (*.f32 u -4/3))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (+.f32 4/3 (*.f32 u -4/3)) -1/2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (exp.f32 (sqrt.f32 (neg.f32 (log1p.f32 (fma.f32 u -4/3 1/3))))) (neg.f32 (sqrt.f32 (neg.f32 (log1p.f32 (fma.f32 u -4/3 1/3))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (exp.f32 (cbrt.f32 (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 2))) (neg.f32 (cbrt.f32 (neg.f32 (log1p.f32 (fma.f32 u -4/3 1/3))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (+.f32 (pow.f32 (fma.f32 u -4/3 1) 2) (-.f32 1/9 (*.f32 (fma.f32 u -4/3 1) 1/3))) (+.f32 1/27 (pow.f32 (fma.f32 u -4/3 1) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (+.f32 1 (fma.f32 u -4/3 -1/3)) (+.f32 (pow.f32 (fma.f32 u -4/3 1) 2) -1/9)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) 2)) (cbrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (exp.f32 (sqrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3)))) (sqrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (+.f32 4/3 (*.f32 u -4/3)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (+.f32 4/3 (*.f32 u -4/3))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (+.f32 4/3 (*.f32 u -4/3)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (+.f32 4/3 (*.f32 u -4/3)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (+.f32 4/3 (*.f32 u -4/3))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (+.f32 4/3 (*.f32 u -4/3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log1p.f32 (fma.f32 u -4/3 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 3 (log1p.f32 (fma.f32 u -4/3 1/3))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 1/3 (log1p.f32 (fma.f32 u -4/3 1/3))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 1/2 (log1p.f32 (fma.f32 u -4/3 1/3))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (fma.f32 u -4/3 1) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (fma.f32 u -4/3 1) 1 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (fma.f32 u -4/3 1)) (pow.f32 (cbrt.f32 (fma.f32 u -4/3 1)) 2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (fma.f32 u -4/3 1)) 2) (cbrt.f32 (fma.f32 u -4/3 1)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (fma.f32 u -4/3 1)) (sqrt.f32 (fma.f32 u -4/3 1)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (-.f32 1 (*.f32 (pow.f32 u 3) 64/27)) (/.f32 1 (fma.f32 (*.f32 u 4/3) (fma.f32 u 4/3 1) 1)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (-.f32 1 (*.f32 (*.f32 u u) 16/9)) (/.f32 1 (fma.f32 u 4/3 1)) 1/3)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (*.f32 u 4/3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (pow.f32 (cbrt.f32 (pow.f32 (exp.f32 4/3) u)) 2)) (log.f32 (cbrt.f32 (pow.f32 (exp.f32 4/3) u))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (pow.f32 (exp.f32 4/3) u))) (log.f32 (sqrt.f32 (pow.f32 (exp.f32 4/3) u))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (fma.f32 u 4/3 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 u 4/3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (E.f32) (log.f32 (*.f32 u 4/3)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (*.f32 u u) 16/9) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 u 4/3)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 u 4/3)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (pow.f32 u 3) 64/27) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (log.f32 (*.f32 u 4/3))) 2)) (cbrt.f32 (log.f32 (*.f32 u 4/3))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (exp.f32 (sqrt.f32 (log.f32 (*.f32 u 4/3)))) (sqrt.f32 (log.f32 (*.f32 u 4/3))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (*.f32 (*.f32 u u) 16/9))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 4/3) u))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 u 4/3))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 u 3) 64/27))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 u 4/3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 u 4/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 u 4/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 u 4/3)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (cbrt.f32 (*.f32 u 4/3))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (sqrt.f32 (*.f32 u 4/3))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 (pow.f32 u 3) 64/27)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 (log.f32 (*.f32 u 4/3)) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 (log.f32 (*.f32 u 4/3)) 3) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (fma.f32 u 4/3 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (fma.f32 u 4/3 1)) 2) (cbrt.f32 (fma.f32 u 4/3 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (fma.f32 u 4/3 1)) (sqrt.f32 (fma.f32 u 4/3 1)) -1)))))

simplify67.0ms (0.6%)

Algorithm
egg-herbie
Rules
680×fma-neg_binary32
536×unswap-sqr_binary32
498×associate-*l*_binary32
468×associate-+l+_binary32
409×sub-neg_binary32
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
049374
1125364
2339364
31032359
43059359
56917357
Stop Event
node limit
Counts
240 → 225
Calls
Call 1
Inputs
1
(+.f32 (*.f32 -4/3 u) 1)
(+.f32 (*.f32 -4/3 u) 1)
(+.f32 (*.f32 -4/3 u) 1)
(*.f32 -4/3 u)
(+.f32 1 (*.f32 -4/3 u))
(+.f32 1 (*.f32 -4/3 u))
(+.f32 1 (*.f32 -4/3 u))
(*.f32 -4/3 u)
(+.f32 1 (*.f32 -4/3 u))
(+.f32 1 (*.f32 -4/3 u))
(+.f32 1 (*.f32 -4/3 u))
(log.f32 3/4)
(+.f32 (log.f32 3/4) u)
(+.f32 (*.f32 1/2 (pow.f32 u 2)) (+.f32 (log.f32 3/4) u))
(+.f32 (*.f32 1/2 (pow.f32 u 2)) (+.f32 (log.f32 3/4) (+.f32 u (*.f32 1/3 (pow.f32 u 3)))))
(+.f32 (log.f32 -3/4) (log.f32 (/.f32 1 u)))
(+.f32 (log.f32 -3/4) (+.f32 (log.f32 (/.f32 1 u)) (/.f32 1 u)))
(+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (log.f32 -3/4) (+.f32 (log.f32 (/.f32 1 u)) (/.f32 1 u))))
(+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (log.f32 -3/4) (+.f32 (*.f32 1/3 (/.f32 1 (pow.f32 u 3))) (+.f32 (log.f32 (/.f32 1 u)) (/.f32 1 u)))))
(+.f32 (log.f32 (/.f32 -1 u)) (log.f32 3/4))
(+.f32 (/.f32 1 u) (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 3/4)))
(+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (/.f32 1 u) (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 3/4))))
(+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/3 (/.f32 1 (pow.f32 u 3))) (+.f32 (/.f32 1 u) (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 3/4)))))
4/3
(+.f32 (*.f32 -4/3 u) 4/3)
(+.f32 (*.f32 -4/3 u) 4/3)
(+.f32 (*.f32 -4/3 u) 4/3)
(*.f32 -4/3 u)
(+.f32 4/3 (*.f32 -4/3 u))
(+.f32 4/3 (*.f32 -4/3 u))
(+.f32 4/3 (*.f32 -4/3 u))
(*.f32 -4/3 u)
(+.f32 4/3 (*.f32 -4/3 u))
(+.f32 4/3 (*.f32 -4/3 u))
(+.f32 4/3 (*.f32 -4/3 u))
(*.f32 4/3 u)
(*.f32 4/3 u)
(*.f32 4/3 u)
(*.f32 4/3 u)
(*.f32 4/3 u)
(*.f32 4/3 u)
(*.f32 4/3 u)
(*.f32 4/3 u)
(*.f32 4/3 u)
(*.f32 4/3 u)
(*.f32 4/3 u)
(*.f32 4/3 u)
Outputs
1
(+.f32 (*.f32 -4/3 u) 1)
(fma.f32 -4/3 u 1)
(+.f32 (*.f32 -4/3 u) 1)
(fma.f32 -4/3 u 1)
(+.f32 (*.f32 -4/3 u) 1)
(fma.f32 -4/3 u 1)
(*.f32 -4/3 u)
(+.f32 1 (*.f32 -4/3 u))
(fma.f32 -4/3 u 1)
(+.f32 1 (*.f32 -4/3 u))
(fma.f32 -4/3 u 1)
(+.f32 1 (*.f32 -4/3 u))
(fma.f32 -4/3 u 1)
(*.f32 -4/3 u)
(+.f32 1 (*.f32 -4/3 u))
(fma.f32 -4/3 u 1)
(+.f32 1 (*.f32 -4/3 u))
(fma.f32 -4/3 u 1)
(+.f32 1 (*.f32 -4/3 u))
(fma.f32 -4/3 u 1)
(log.f32 3/4)
(+.f32 (log.f32 3/4) u)
(+.f32 u (log.f32 3/4))
(+.f32 (*.f32 1/2 (pow.f32 u 2)) (+.f32 (log.f32 3/4) u))
(fma.f32 1/2 (*.f32 u u) (+.f32 u (log.f32 3/4)))
(+.f32 u (fma.f32 1/2 (*.f32 u u) (log.f32 3/4)))
(+.f32 u (fma.f32 u (*.f32 u 1/2) (log.f32 3/4)))
(fma.f32 (fma.f32 u 1/2 1) u (log.f32 3/4))
(+.f32 (*.f32 1/2 (pow.f32 u 2)) (+.f32 (log.f32 3/4) (+.f32 u (*.f32 1/3 (pow.f32 u 3)))))
(fma.f32 1/2 (*.f32 u u) (+.f32 (log.f32 3/4) (+.f32 u (*.f32 1/3 (pow.f32 u 3)))))
(+.f32 (fma.f32 1/3 (pow.f32 u 3) u) (fma.f32 1/2 (*.f32 u u) (log.f32 3/4)))
(+.f32 (fma.f32 1/3 (pow.f32 u 3) u) (fma.f32 u (*.f32 u 1/2) (log.f32 3/4)))
(fma.f32 (*.f32 u u) (fma.f32 u 1/3 1/2) (+.f32 u (log.f32 3/4)))
(+.f32 (log.f32 3/4) (fma.f32 (*.f32 u u) (fma.f32 u 1/3 1/2) u))
(+.f32 (log.f32 -3/4) (log.f32 (/.f32 1 u)))
(+.f32 (log.f32 -3/4) (neg.f32 (log.f32 u)))
(-.f32 (log.f32 -3/4) (log.f32 u))
(+.f32 (log.f32 -3/4) (+.f32 (log.f32 (/.f32 1 u)) (/.f32 1 u)))
(+.f32 (log.f32 -3/4) (+.f32 (/.f32 1 u) (neg.f32 (log.f32 u))))
(+.f32 (log.f32 -3/4) (-.f32 (/.f32 1 u) (log.f32 u)))
(+.f32 (/.f32 1 u) (-.f32 (log.f32 -3/4) (log.f32 u)))
(+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (log.f32 -3/4) (+.f32 (log.f32 (/.f32 1 u)) (/.f32 1 u))))
(+.f32 (+.f32 (log.f32 -3/4) (+.f32 (/.f32 1 u) (neg.f32 (log.f32 u)))) (/.f32 1/2 (*.f32 u u)))
(+.f32 (log.f32 -3/4) (+.f32 (-.f32 (/.f32 1 u) (log.f32 u)) (/.f32 1/2 (*.f32 u u))))
(+.f32 (/.f32 1 u) (+.f32 (-.f32 (log.f32 -3/4) (log.f32 u)) (/.f32 1/2 (*.f32 u u))))
(+.f32 (/.f32 1 u) (+.f32 (-.f32 (log.f32 -3/4) (log.f32 u)) (/.f32 (/.f32 1/2 u) u)))
(+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (log.f32 -3/4) (+.f32 (*.f32 1/3 (/.f32 1 (pow.f32 u 3))) (+.f32 (log.f32 (/.f32 1 u)) (/.f32 1 u)))))
(+.f32 (/.f32 1/2 (*.f32 u u)) (+.f32 (log.f32 -3/4) (+.f32 (+.f32 (/.f32 1 u) (neg.f32 (log.f32 u))) (/.f32 1/3 (pow.f32 u 3)))))
(+.f32 (+.f32 (log.f32 -3/4) (/.f32 1/3 (pow.f32 u 3))) (+.f32 (-.f32 (/.f32 1 u) (log.f32 u)) (/.f32 1/2 (*.f32 u u))))
(+.f32 (-.f32 (/.f32 1 u) (log.f32 u)) (+.f32 (/.f32 1/2 (*.f32 u u)) (+.f32 (log.f32 -3/4) (/.f32 1/3 (pow.f32 u 3)))))
(+.f32 (/.f32 1 u) (+.f32 (/.f32 1/2 (*.f32 u u)) (+.f32 (log.f32 -3/4) (-.f32 (/.f32 1/3 (pow.f32 u 3)) (log.f32 u)))))
(+.f32 (/.f32 (/.f32 1/2 u) u) (+.f32 (log.f32 -3/4) (+.f32 (/.f32 1 u) (-.f32 (/.f32 1/3 (pow.f32 u 3)) (log.f32 u)))))
(fma.f32 (/.f32 1 (*.f32 u u)) (+.f32 1/2 (/.f32 1/3 u)) (+.f32 (/.f32 1 u) (-.f32 (log.f32 -3/4) (log.f32 u))))
(+.f32 (log.f32 (/.f32 -1 u)) (log.f32 3/4))
(+.f32 (log.f32 3/4) (log.f32 (/.f32 -1 u)))
(+.f32 (/.f32 1 u) (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 3/4)))
(+.f32 (/.f32 1 u) (+.f32 (log.f32 3/4) (log.f32 (/.f32 -1 u))))
(+.f32 (+.f32 (/.f32 1 u) (log.f32 3/4)) (log.f32 (/.f32 -1 u)))
(+.f32 (log.f32 3/4) (+.f32 (/.f32 1 u) (log.f32 (/.f32 -1 u))))
(+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (/.f32 1 u) (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 3/4))))
(+.f32 (/.f32 1/2 (*.f32 u u)) (+.f32 (/.f32 1 u) (+.f32 (log.f32 3/4) (log.f32 (/.f32 -1 u)))))
(+.f32 (/.f32 1/2 (*.f32 u u)) (+.f32 (+.f32 (/.f32 1 u) (log.f32 3/4)) (log.f32 (/.f32 -1 u))))
(+.f32 (log.f32 3/4) (+.f32 (/.f32 1 u) (+.f32 (/.f32 1/2 (*.f32 u u)) (log.f32 (/.f32 -1 u)))))
(+.f32 (/.f32 1 u) (+.f32 (log.f32 3/4) (+.f32 (/.f32 (/.f32 1/2 u) u) (log.f32 (/.f32 -1 u)))))
(+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/3 (/.f32 1 (pow.f32 u 3))) (+.f32 (/.f32 1 u) (+.f32 (log.f32 (/.f32 -1 u)) (log.f32 3/4)))))
(+.f32 (/.f32 1/2 (*.f32 u u)) (+.f32 (/.f32 1/3 (pow.f32 u 3)) (+.f32 (/.f32 1 u) (+.f32 (log.f32 3/4) (log.f32 (/.f32 -1 u))))))
(+.f32 (/.f32 1/2 (*.f32 u u)) (+.f32 (/.f32 1/3 (pow.f32 u 3)) (+.f32 (+.f32 (/.f32 1 u) (log.f32 3/4)) (log.f32 (/.f32 -1 u)))))
(+.f32 (/.f32 1 u) (+.f32 (/.f32 1/2 (*.f32 u u)) (+.f32 (/.f32 1/3 (pow.f32 u 3)) (+.f32 (log.f32 3/4) (log.f32 (/.f32 -1 u))))))
(+.f32 (log.f32 3/4) (+.f32 (/.f32 1/2 (*.f32 u u)) (+.f32 (log.f32 (/.f32 -1 u)) (+.f32 (/.f32 1 u) (/.f32 1/3 (pow.f32 u 3))))))
(+.f32 (+.f32 (log.f32 3/4) (/.f32 (/.f32 1/2 u) u)) (+.f32 (/.f32 1 u) (+.f32 (/.f32 1/3 (pow.f32 u 3)) (log.f32 (/.f32 -1 u)))))
(+.f32 (/.f32 (/.f32 1/2 u) u) (+.f32 (-.f32 (log.f32 3/4) (/.f32 -1 u)) (+.f32 (/.f32 1/3 (pow.f32 u 3)) (log.f32 (/.f32 -1 u)))))
4/3
(+.f32 (*.f32 -4/3 u) 4/3)
(fma.f32 -4/3 u 4/3)
(+.f32 (*.f32 -4/3 u) 4/3)
(fma.f32 -4/3 u 4/3)
(+.f32 (*.f32 -4/3 u) 4/3)
(fma.f32 -4/3 u 4/3)
(*.f32 -4/3 u)
(+.f32 4/3 (*.f32 -4/3 u))
(fma.f32 -4/3 u 4/3)
(+.f32 4/3 (*.f32 -4/3 u))
(fma.f32 -4/3 u 4/3)
(+.f32 4/3 (*.f32 -4/3 u))
(fma.f32 -4/3 u 4/3)
(*.f32 -4/3 u)
(+.f32 4/3 (*.f32 -4/3 u))
(fma.f32 -4/3 u 4/3)
(+.f32 4/3 (*.f32 -4/3 u))
(fma.f32 -4/3 u 4/3)
(+.f32 4/3 (*.f32 -4/3 u))
(fma.f32 -4/3 u 4/3)
(*.f32 4/3 u)
(*.f32 u 4/3)
(*.f32 4/3 u)
(*.f32 u 4/3)
(*.f32 4/3 u)
(*.f32 u 4/3)
(*.f32 4/3 u)
(*.f32 u 4/3)
(*.f32 4/3 u)
(*.f32 u 4/3)
(*.f32 4/3 u)
(*.f32 u 4/3)
(*.f32 4/3 u)
(*.f32 u 4/3)
(*.f32 4/3 u)
(*.f32 u 4/3)
(*.f32 4/3 u)
(*.f32 u 4/3)
(*.f32 4/3 u)
(*.f32 u 4/3)
(*.f32 4/3 u)
(*.f32 u 4/3)
(*.f32 4/3 u)
(*.f32 u 4/3)

localize48.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(fma.f32 u -4/3 1/3)
0.4b
(log.f32 (pow.f32 (+.f32 (fma.f32 u -4/3 1/3) 1) -3))
0.5b
(+.f32 (fma.f32 u -4/3 1/3) 1)
0.6b
(pow.f32 (+.f32 (fma.f32 u -4/3 1/3) 1) -3)
Compiler

Compiled 46 to 38 computations (17.4% saved)

series4.0ms (0%)

Counts
3 → 36
Calls

9 calls:

TimeVariablePointExpression
1.0ms
u
@inf
(pow.f32 (+.f32 (fma.f32 u -4/3 1/3) 1) -3)
1.0ms
u
@0
(pow.f32 (+.f32 (fma.f32 u -4/3 1/3) 1) -3)
1.0ms
u
@-inf
(pow.f32 (+.f32 (fma.f32 u -4/3 1/3) 1) -3)
0.0ms
u
@inf
(log.f32 (pow.f32 (+.f32 (fma.f32 u -4/3 1/3) 1) -3))
0.0ms
u
@-inf
(log.f32 (pow.f32 (+.f32 (fma.f32 u -4/3 1/3) 1) -3))

rewrite70.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
909×pow1_binary32
856×add-log-exp_binary32
856×log1p-expm1-u_binary32
856×expm1-log1p-u_binary32
842×add-exp-log_binary32
Iterations

Useful iterations: 1 (0.0ms)

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

simplify61.0ms (0.6%)

Algorithm
egg-herbie
Rules
818×fma-def_binary32
634×cancel-sign-sub-inv_binary32
492×unswap-sqr_binary32
471×distribute-neg-frac_binary32
416×associate-/r*_binary32
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
075515
1201484
2557479
31757461
45815461
Stop Event
node limit
Counts
101 → 108
Calls
Call 1
Inputs
27/64
(+.f32 27/64 (*.f32 81/64 u))
(+.f32 27/64 (+.f32 (*.f32 81/32 (pow.f32 u 2)) (*.f32 81/64 u)))
(+.f32 27/64 (+.f32 (*.f32 81/32 (pow.f32 u 2)) (+.f32 (*.f32 135/32 (pow.f32 u 3)) (*.f32 81/64 u))))
(/.f32 -27/64 (pow.f32 u 3))
(neg.f32 (+.f32 (*.f32 81/64 (/.f32 1 (pow.f32 u 4))) (*.f32 27/64 (/.f32 1 (pow.f32 u 3)))))
(neg.f32 (+.f32 (*.f32 81/64 (/.f32 1 (pow.f32 u 4))) (+.f32 (*.f32 27/64 (/.f32 1 (pow.f32 u 3))) (*.f32 81/32 (/.f32 1 (pow.f32 u 5))))))
(neg.f32 (+.f32 (*.f32 81/64 (/.f32 1 (pow.f32 u 4))) (+.f32 (*.f32 135/32 (/.f32 1 (pow.f32 u 6))) (+.f32 (*.f32 27/64 (/.f32 1 (pow.f32 u 3))) (*.f32 81/32 (/.f32 1 (pow.f32 u 5)))))))
(/.f32 -27/64 (pow.f32 u 3))
(neg.f32 (+.f32 (*.f32 81/64 (/.f32 1 (pow.f32 u 4))) (*.f32 27/64 (/.f32 1 (pow.f32 u 3)))))
(neg.f32 (+.f32 (*.f32 81/64 (/.f32 1 (pow.f32 u 4))) (+.f32 (*.f32 27/64 (/.f32 1 (pow.f32 u 3))) (*.f32 81/32 (/.f32 1 (pow.f32 u 5))))))
(neg.f32 (+.f32 (*.f32 81/64 (/.f32 1 (pow.f32 u 4))) (+.f32 (*.f32 135/32 (/.f32 1 (pow.f32 u 6))) (+.f32 (*.f32 27/64 (/.f32 1 (pow.f32 u 3))) (*.f32 81/32 (/.f32 1 (pow.f32 u 5)))))))
4/3
(+.f32 (*.f32 -4/3 u) 4/3)
(+.f32 (*.f32 -4/3 u) 4/3)
(+.f32 (*.f32 -4/3 u) 4/3)
(*.f32 -4/3 u)
(+.f32 4/3 (*.f32 -4/3 u))
(+.f32 4/3 (*.f32 -4/3 u))
(+.f32 4/3 (*.f32 -4/3 u))
(*.f32 -4/3 u)
(+.f32 4/3 (*.f32 -4/3 u))
(+.f32 4/3 (*.f32 -4/3 u))
(+.f32 4/3 (*.f32 -4/3 u))
(log.f32 27/64)
(+.f32 (*.f32 3 u) (log.f32 27/64))
(+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 u) (log.f32 27/64)))
(+.f32 (pow.f32 u 3) (+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 u) (log.f32 27/64))))
(+.f32 (log.f32 -27/64) (*.f32 3 (log.f32 (/.f32 1 u))))
(+.f32 (*.f32 3 (/.f32 1 u)) (+.f32 (log.f32 -27/64) (*.f32 3 (log.f32 (/.f32 1 u)))))
(+.f32 (*.f32 3/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 3 (/.f32 1 u)) (+.f32 (log.f32 -27/64) (*.f32 3 (log.f32 (/.f32 1 u))))))
(+.f32 (/.f32 1 (pow.f32 u 3)) (+.f32 (*.f32 3/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 3 (/.f32 1 u)) (+.f32 (log.f32 -27/64) (*.f32 3 (log.f32 (/.f32 1 u)))))))
(+.f32 (log.f32 27/64) (*.f32 3 (log.f32 (/.f32 -1 u))))
(+.f32 (*.f32 3 (/.f32 1 u)) (+.f32 (log.f32 27/64) (*.f32 3 (log.f32 (/.f32 -1 u)))))
(+.f32 (*.f32 3/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 3 (/.f32 1 u)) (+.f32 (log.f32 27/64) (*.f32 3 (log.f32 (/.f32 -1 u))))))
(+.f32 (/.f32 1 (pow.f32 u 3)) (+.f32 (*.f32 3/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 3 (/.f32 1 u)) (+.f32 (log.f32 27/64) (*.f32 3 (log.f32 (/.f32 -1 u)))))))
Outputs
27/64
(+.f32 27/64 (*.f32 81/64 u))
(fma.f32 81/64 u 27/64)
(+.f32 27/64 (+.f32 (*.f32 81/32 (pow.f32 u 2)) (*.f32 81/64 u)))
(+.f32 27/64 (fma.f32 81/32 (*.f32 u u) (*.f32 81/64 u)))
(+.f32 (fma.f32 81/64 u 27/64) (*.f32 u (*.f32 u 81/32)))
(fma.f32 81/64 u (fma.f32 81/32 (*.f32 u u) 27/64))
(fma.f32 u (fma.f32 u 81/32 81/64) 27/64)
(+.f32 27/64 (+.f32 (*.f32 81/32 (pow.f32 u 2)) (+.f32 (*.f32 135/32 (pow.f32 u 3)) (*.f32 81/64 u))))
(+.f32 27/64 (fma.f32 81/32 (*.f32 u u) (fma.f32 135/32 (pow.f32 u 3) (*.f32 81/64 u))))
(+.f32 (fma.f32 81/32 (*.f32 u u) (*.f32 135/32 (pow.f32 u 3))) (fma.f32 81/64 u 27/64))
(+.f32 27/64 (fma.f32 81/64 u (*.f32 (*.f32 u u) (+.f32 81/32 (*.f32 u 135/32)))))
(fma.f32 u (fma.f32 u 81/32 81/64) (fma.f32 135/32 (pow.f32 u 3) 27/64))
(/.f32 -27/64 (pow.f32 u 3))
(neg.f32 (+.f32 (*.f32 81/64 (/.f32 1 (pow.f32 u 4))) (*.f32 27/64 (/.f32 1 (pow.f32 u 3)))))
(neg.f32 (+.f32 (/.f32 81/64 (pow.f32 u 4)) (/.f32 27/64 (pow.f32 u 3))))
(+.f32 (/.f32 -81/64 (pow.f32 u 4)) (/.f32 -27/64 (pow.f32 u 3)))
(neg.f32 (+.f32 (*.f32 81/64 (/.f32 1 (pow.f32 u 4))) (+.f32 (*.f32 27/64 (/.f32 1 (pow.f32 u 3))) (*.f32 81/32 (/.f32 1 (pow.f32 u 5))))))
(neg.f32 (+.f32 (/.f32 81/64 (pow.f32 u 4)) (+.f32 (/.f32 27/64 (pow.f32 u 3)) (/.f32 81/32 (pow.f32 u 5)))))
(-.f32 (+.f32 (/.f32 -81/64 (pow.f32 u 4)) (/.f32 -27/64 (pow.f32 u 3))) (/.f32 81/32 (pow.f32 u 5)))
(-.f32 (+.f32 (/.f32 -27/64 (pow.f32 u 3)) (/.f32 -81/32 (pow.f32 u 5))) (/.f32 81/64 (pow.f32 u 4)))
(+.f32 (+.f32 (/.f32 -81/64 (pow.f32 u 4)) (/.f32 -27/64 (pow.f32 u 3))) (/.f32 -81/32 (pow.f32 u 5)))
(neg.f32 (+.f32 (*.f32 81/64 (/.f32 1 (pow.f32 u 4))) (+.f32 (*.f32 135/32 (/.f32 1 (pow.f32 u 6))) (+.f32 (*.f32 27/64 (/.f32 1 (pow.f32 u 3))) (*.f32 81/32 (/.f32 1 (pow.f32 u 5)))))))
(neg.f32 (+.f32 (/.f32 81/64 (pow.f32 u 4)) (+.f32 (+.f32 (/.f32 27/64 (pow.f32 u 3)) (/.f32 81/32 (pow.f32 u 5))) (/.f32 135/32 (pow.f32 u 6)))))
(-.f32 (/.f32 -81/64 (pow.f32 u 4)) (+.f32 (+.f32 (/.f32 27/64 (pow.f32 u 3)) (/.f32 81/32 (pow.f32 u 5))) (/.f32 135/32 (pow.f32 u 6))))
(+.f32 (-.f32 (+.f32 (/.f32 -27/64 (pow.f32 u 3)) (/.f32 -81/32 (pow.f32 u 5))) (/.f32 81/64 (pow.f32 u 4))) (/.f32 -135/32 (pow.f32 u 6)))
(+.f32 (+.f32 (/.f32 -81/64 (pow.f32 u 4)) (/.f32 -27/64 (pow.f32 u 3))) (-.f32 (/.f32 -81/32 (pow.f32 u 5)) (/.f32 135/32 (pow.f32 u 6))))
(/.f32 -27/64 (pow.f32 u 3))
(neg.f32 (+.f32 (*.f32 81/64 (/.f32 1 (pow.f32 u 4))) (*.f32 27/64 (/.f32 1 (pow.f32 u 3)))))
(neg.f32 (+.f32 (/.f32 81/64 (pow.f32 u 4)) (/.f32 27/64 (pow.f32 u 3))))
(+.f32 (/.f32 -81/64 (pow.f32 u 4)) (/.f32 -27/64 (pow.f32 u 3)))
(neg.f32 (+.f32 (*.f32 81/64 (/.f32 1 (pow.f32 u 4))) (+.f32 (*.f32 27/64 (/.f32 1 (pow.f32 u 3))) (*.f32 81/32 (/.f32 1 (pow.f32 u 5))))))
(neg.f32 (+.f32 (/.f32 81/64 (pow.f32 u 4)) (+.f32 (/.f32 27/64 (pow.f32 u 3)) (/.f32 81/32 (pow.f32 u 5)))))
(-.f32 (+.f32 (/.f32 -81/64 (pow.f32 u 4)) (/.f32 -27/64 (pow.f32 u 3))) (/.f32 81/32 (pow.f32 u 5)))
(-.f32 (+.f32 (/.f32 -27/64 (pow.f32 u 3)) (/.f32 -81/32 (pow.f32 u 5))) (/.f32 81/64 (pow.f32 u 4)))
(+.f32 (+.f32 (/.f32 -81/64 (pow.f32 u 4)) (/.f32 -27/64 (pow.f32 u 3))) (/.f32 -81/32 (pow.f32 u 5)))
(neg.f32 (+.f32 (*.f32 81/64 (/.f32 1 (pow.f32 u 4))) (+.f32 (*.f32 135/32 (/.f32 1 (pow.f32 u 6))) (+.f32 (*.f32 27/64 (/.f32 1 (pow.f32 u 3))) (*.f32 81/32 (/.f32 1 (pow.f32 u 5)))))))
(neg.f32 (+.f32 (/.f32 81/64 (pow.f32 u 4)) (+.f32 (+.f32 (/.f32 27/64 (pow.f32 u 3)) (/.f32 81/32 (pow.f32 u 5))) (/.f32 135/32 (pow.f32 u 6)))))
(-.f32 (/.f32 -81/64 (pow.f32 u 4)) (+.f32 (+.f32 (/.f32 27/64 (pow.f32 u 3)) (/.f32 81/32 (pow.f32 u 5))) (/.f32 135/32 (pow.f32 u 6))))
(+.f32 (-.f32 (+.f32 (/.f32 -27/64 (pow.f32 u 3)) (/.f32 -81/32 (pow.f32 u 5))) (/.f32 81/64 (pow.f32 u 4))) (/.f32 -135/32 (pow.f32 u 6)))
(+.f32 (+.f32 (/.f32 -81/64 (pow.f32 u 4)) (/.f32 -27/64 (pow.f32 u 3))) (-.f32 (/.f32 -81/32 (pow.f32 u 5)) (/.f32 135/32 (pow.f32 u 6))))
4/3
(+.f32 (*.f32 -4/3 u) 4/3)
(fma.f32 -4/3 u 4/3)
(fma.f32 u -4/3 4/3)
(+.f32 (*.f32 -4/3 u) 4/3)
(fma.f32 -4/3 u 4/3)
(fma.f32 u -4/3 4/3)
(+.f32 (*.f32 -4/3 u) 4/3)
(fma.f32 -4/3 u 4/3)
(fma.f32 u -4/3 4/3)
(*.f32 -4/3 u)
(*.f32 u -4/3)
(+.f32 4/3 (*.f32 -4/3 u))
(fma.f32 -4/3 u 4/3)
(fma.f32 u -4/3 4/3)
(+.f32 4/3 (*.f32 -4/3 u))
(fma.f32 -4/3 u 4/3)
(fma.f32 u -4/3 4/3)
(+.f32 4/3 (*.f32 -4/3 u))
(fma.f32 -4/3 u 4/3)
(fma.f32 u -4/3 4/3)
(*.f32 -4/3 u)
(*.f32 u -4/3)
(+.f32 4/3 (*.f32 -4/3 u))
(fma.f32 -4/3 u 4/3)
(fma.f32 u -4/3 4/3)
(+.f32 4/3 (*.f32 -4/3 u))
(fma.f32 -4/3 u 4/3)
(fma.f32 u -4/3 4/3)
(+.f32 4/3 (*.f32 -4/3 u))
(fma.f32 -4/3 u 4/3)
(fma.f32 u -4/3 4/3)
(log.f32 27/64)
(+.f32 (*.f32 3 u) (log.f32 27/64))
(fma.f32 3 u (log.f32 27/64))
(fma.f32 u 3 (log.f32 27/64))
(+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 u) (log.f32 27/64)))
(fma.f32 3/2 (*.f32 u u) (fma.f32 3 u (log.f32 27/64)))
(fma.f32 (*.f32 u u) 3/2 (fma.f32 u 3 (log.f32 27/64)))
(fma.f32 u 3 (fma.f32 u (*.f32 u 3/2) (log.f32 27/64)))
(fma.f32 u (fma.f32 u 3/2 3) (log.f32 27/64))
(+.f32 (pow.f32 u 3) (+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 u) (log.f32 27/64))))
(+.f32 (pow.f32 u 3) (fma.f32 3/2 (*.f32 u u) (fma.f32 3 u (log.f32 27/64))))
(+.f32 (fma.f32 u 3 (log.f32 27/64)) (*.f32 (*.f32 u u) (+.f32 u 3/2)))
(fma.f32 (*.f32 u u) (+.f32 u 3/2) (fma.f32 u 3 (log.f32 27/64)))
(+.f32 (pow.f32 u 3) (fma.f32 u (fma.f32 u 3/2 3) (log.f32 27/64)))
(+.f32 (log.f32 -27/64) (*.f32 3 (log.f32 (/.f32 1 u))))
(+.f32 (log.f32 -27/64) (*.f32 3 (neg.f32 (log.f32 u))))
(fma.f32 3 (neg.f32 (log.f32 u)) (log.f32 -27/64))
(-.f32 (log.f32 -27/64) (*.f32 3 (log.f32 u)))
(fma.f32 (log.f32 u) -3 (log.f32 -27/64))
(+.f32 (*.f32 3 (/.f32 1 u)) (+.f32 (log.f32 -27/64) (*.f32 3 (log.f32 (/.f32 1 u)))))
(+.f32 (+.f32 (log.f32 -27/64) (*.f32 3 (neg.f32 (log.f32 u)))) (/.f32 3 u))
(+.f32 (fma.f32 3 (neg.f32 (log.f32 u)) (log.f32 -27/64)) (/.f32 3 u))
(+.f32 (-.f32 (log.f32 -27/64) (*.f32 3 (log.f32 u))) (/.f32 3 u))
(+.f32 (fma.f32 (log.f32 u) -3 (log.f32 -27/64)) (/.f32 3 u))
(+.f32 (*.f32 3/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 3 (/.f32 1 u)) (+.f32 (log.f32 -27/64) (*.f32 3 (log.f32 (/.f32 1 u))))))
(+.f32 (+.f32 (+.f32 (log.f32 -27/64) (*.f32 3 (neg.f32 (log.f32 u)))) (/.f32 3 u)) (/.f32 3/2 (*.f32 u u)))
(+.f32 (/.f32 3 u) (+.f32 (fma.f32 3 (neg.f32 (log.f32 u)) (log.f32 -27/64)) (/.f32 3/2 (*.f32 u u))))
(+.f32 (/.f32 3 u) (+.f32 (log.f32 -27/64) (fma.f32 3 (neg.f32 (log.f32 u)) (/.f32 3/2 (*.f32 u u)))))
(+.f32 (/.f32 3 u) (+.f32 (log.f32 -27/64) (fma.f32 (log.f32 u) -3 (/.f32 3/2 (*.f32 u u)))))
(+.f32 (/.f32 1 (pow.f32 u 3)) (+.f32 (*.f32 3/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 3 (/.f32 1 u)) (+.f32 (log.f32 -27/64) (*.f32 3 (log.f32 (/.f32 1 u)))))))
(+.f32 (/.f32 1 (pow.f32 u 3)) (+.f32 (+.f32 (+.f32 (log.f32 -27/64) (*.f32 3 (neg.f32 (log.f32 u)))) (/.f32 3 u)) (/.f32 3/2 (*.f32 u u))))
(+.f32 (+.f32 (fma.f32 3 (neg.f32 (log.f32 u)) (log.f32 -27/64)) (/.f32 3 u)) (+.f32 (/.f32 1 (pow.f32 u 3)) (/.f32 3/2 (*.f32 u u))))
(+.f32 (/.f32 1 (pow.f32 u 3)) (+.f32 (/.f32 3 u) (+.f32 (log.f32 -27/64) (fma.f32 3 (neg.f32 (log.f32 u)) (/.f32 3/2 (*.f32 u u))))))
(+.f32 (/.f32 1 (pow.f32 u 3)) (+.f32 (/.f32 3 u) (+.f32 (log.f32 -27/64) (fma.f32 (log.f32 u) -3 (/.f32 3/2 (*.f32 u u))))))
(+.f32 (log.f32 27/64) (*.f32 3 (log.f32 (/.f32 -1 u))))
(fma.f32 3 (log.f32 (/.f32 -1 u)) (log.f32 27/64))
(+.f32 (*.f32 3 (/.f32 1 u)) (+.f32 (log.f32 27/64) (*.f32 3 (log.f32 (/.f32 -1 u)))))
(+.f32 (/.f32 3 u) (+.f32 (log.f32 27/64) (*.f32 3 (log.f32 (/.f32 -1 u)))))
(+.f32 (/.f32 3 u) (fma.f32 3 (log.f32 (/.f32 -1 u)) (log.f32 27/64)))
(+.f32 (log.f32 27/64) (fma.f32 3 (log.f32 (/.f32 -1 u)) (/.f32 3 u)))
(+.f32 (*.f32 3/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 3 (/.f32 1 u)) (+.f32 (log.f32 27/64) (*.f32 3 (log.f32 (/.f32 -1 u))))))
(+.f32 (/.f32 3/2 (*.f32 u u)) (+.f32 (/.f32 3 u) (+.f32 (log.f32 27/64) (*.f32 3 (log.f32 (/.f32 -1 u))))))
(+.f32 (+.f32 (/.f32 3/2 (*.f32 u u)) (fma.f32 3 (log.f32 (/.f32 -1 u)) (log.f32 27/64))) (/.f32 3 u))
(+.f32 (/.f32 3 u) (+.f32 (/.f32 3/2 (*.f32 u u)) (fma.f32 3 (log.f32 (/.f32 -1 u)) (log.f32 27/64))))
(fma.f32 3 (log.f32 (/.f32 -1 u)) (+.f32 (log.f32 27/64) (+.f32 (/.f32 3 u) (/.f32 3/2 (*.f32 u u)))))
(+.f32 (/.f32 1 (pow.f32 u 3)) (+.f32 (*.f32 3/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 3 (/.f32 1 u)) (+.f32 (log.f32 27/64) (*.f32 3 (log.f32 (/.f32 -1 u)))))))
(+.f32 (/.f32 1 (pow.f32 u 3)) (+.f32 (/.f32 3/2 (*.f32 u u)) (+.f32 (/.f32 3 u) (+.f32 (log.f32 27/64) (*.f32 3 (log.f32 (/.f32 -1 u)))))))
(+.f32 (/.f32 1 (pow.f32 u 3)) (+.f32 (+.f32 (/.f32 3/2 (*.f32 u u)) (fma.f32 3 (log.f32 (/.f32 -1 u)) (log.f32 27/64))) (/.f32 3 u)))
(+.f32 (/.f32 1 (pow.f32 u 3)) (+.f32 (/.f32 3 u) (+.f32 (/.f32 3/2 (*.f32 u u)) (fma.f32 3 (log.f32 (/.f32 -1 u)) (log.f32 27/64)))))
(+.f32 (/.f32 1 (pow.f32 u 3)) (fma.f32 3 (log.f32 (/.f32 -1 u)) (+.f32 (log.f32 27/64) (+.f32 (/.f32 3 u) (/.f32 3/2 (*.f32 u u))))))

eval339.0ms (3.1%)

Compiler

Compiled 13388 to 10462 computations (21.9% saved)

prune225.0ms (2.1%)

Pruning

51 alts after pruning (41 fresh and 10 done)

PrunedKeptTotal
New72117738
Fresh82432
Picked101
Done11011
Total73151782
Error
0.0b
Counts
782 → 51
Alt Table
Click to see full alt table
StatusErrorProgram
1.2b
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4)))))
21.8b
(*.f32 s (+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 3/2 (*.f32 u u))))
1.0b
(*.f32 s (log.f32 (pow.f32 (fma.f32 u -4/3 4/3) -3)))
29.6b
(*.f32 s (log.f32 27/64))
0.9b
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 u -4/3 4/3))))
21.8b
(neg.f32 (*.f32 3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 u (+.f32 (*.f32 -1/2 u) -1))))))
1.2b
(*.f32 s (log.f32 (pow.f32 (+.f32 (*.f32 -4/3 u) 4/3) -3)))
1.0b
(*.f32 (*.f32 3 s) (neg.f32 (log.f32 (fma.f32 (+.f32 u -1/4) -4/3 1))))
1.1b
(*.f32 -3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
1.2b
(*.f32 s (*.f32 (log1p.f32 (/.f32 (-.f32 (*.f32 16/9 (*.f32 u u)) 1/9) (-.f32 (*.f32 u -4/3) 1/3))) -3))
22.0b
(*.f32 s (+.f32 (*.f32 u 3) (*.f32 u (*.f32 u (+.f32 u 3/2)))))
1.1b
(*.f32 (*.f32 3 s) (neg.f32 (log.f32 (neg.f32 (neg.f32 (+.f32 4/3 (*.f32 u -4/3)))))))
0.8b
(*.f32 (*.f32 3 s) (exp.f32 (log.f32 (neg.f32 (log1p.f32 (*.f32 (+.f32 u -1/4) -4/3))))))
0.9b
(*.f32 s (-.f32 (+.f32 1 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)) 1))
20.4b
(*.f32 s (+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 u (*.f32 u (+.f32 u 3/2)))))
28.8b
(-.f32 (+.f32 1 (*.f32 s (*.f32 (log.f32 3/4) 3))) 1)
1.1b
(*.f32 s (*.f32 (log1p.f32 (/.f32 (fma.f32 (*.f32 u (*.f32 u -4/3)) -4/3 -1/9) (-.f32 (*.f32 u -4/3) 1/3))) -3))
1.1b
(*.f32 s (*.f32 (log1p.f32 (/.f32 (fma.f32 (*.f32 u u) 16/9 -1/9) (-.f32 (*.f32 u -4/3) 1/3))) -3))
1.3b
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (-.f32 4/3 (*.f32 u 4/3)))))
1.1b
(*.f32 (*.f32 3 s) (*.f32 1/3 (log.f32 (pow.f32 (+.f32 4/3 (*.f32 u -4/3)) -3))))
20.4b
(*.f32 s (+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 (*.f32 u u) (+.f32 u 3/2))))
1.0b
(neg.f32 (*.f32 3 (*.f32 s (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3)))))
21.8b
(*.f32 s (+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 u (*.f32 u 3/2))))
11.7b
(*.f32 s (*.f32 (expm1.f32 (log1p.f32 (log1p.f32 (fma.f32 u -4/3 1/3)))) -3))
0.9b
(neg.f32 (*.f32 3 (*.f32 s (log.f32 (fma.f32 -4/3 u 4/3)))))
20.4b
(*.f32 s (+.f32 (+.f32 (*.f32 (log.f32 3/4) 3) (*.f32 u 3)) (*.f32 u (*.f32 u (+.f32 u 3/2)))))
0.9b
(*.f32 s (*.f32 (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3)) -3))
21.8b
(*.f32 s (+.f32 (*.f32 (log.f32 3/4) 3) (*.f32 u (+.f32 3 (*.f32 u 3/2)))))
1.0b
(*.f32 (*.f32 3 s) (neg.f32 (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3))))
0.7b
(*.f32 (*.f32 3 s) (neg.f32 (log1p.f32 (*.f32 (+.f32 u -1/4) -4/3))))
0.7b
(*.f32 s (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3))
23.7b
(*.f32 s (*.f32 3 (+.f32 u (log.f32 3/4))))
23.7b
(*.f32 (+.f32 (log.f32 3/4) u) (*.f32 3 s))
0.9b
(*.f32 (*.f32 3 s) (pow.f32 (sqrt.f32 (neg.f32 (log1p.f32 (*.f32 (+.f32 u -1/4) -4/3)))) 2))
23.7b
(*.f32 s (+.f32 (*.f32 3 u) (log.f32 27/64)))
29.6b
(*.f32 (*.f32 3 s) (log.f32 3/4))
23.7b
(+.f32 (*.f32 3 (*.f32 s (log.f32 3/4))) (*.f32 3 (*.f32 s u)))
0.7b
(*.f32 s (expm1.f32 (log1p.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3))))
1.0b
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
0.7b
(*.f32 (*.f32 3 s) (pow.f32 (pow.f32 (neg.f32 (log1p.f32 (*.f32 (+.f32 u -1/4) -4/3))) 3) 1/3))
22.0b
(*.f32 s (+.f32 (*.f32 u 3) (*.f32 (*.f32 u u) (+.f32 u 3/2))))
1.5b
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (+.f32 (-.f32 1 (*.f32 u 4/3)) 1/3))))
29.6b
(*.f32 3 (*.f32 s (log.f32 3/4)))
1.6b
(*.f32 s (log.f32 (*.f32 (pow.f32 (pow.f32 (cbrt.f32 (+.f32 (*.f32 u -4/3) 4/3)) 2) -3) (pow.f32 (cbrt.f32 (+.f32 (*.f32 u -4/3) 4/3)) -3))))
0.9b
(*.f32 (log.f32 (fma.f32 u -4/3 4/3)) (*.f32 s -3))
1.2b
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (+.f32 (*.f32 (+.f32 u -1/4) -4/3) 1))))
0.9b
(*.f32 (*.f32 3 s) (neg.f32 (log1p.f32 (/.f32 (*.f32 (fma.f32 u u -1/16) -4/3) (+.f32 u 1/4)))))
1.3b
(*.f32 s (*.f32 (log1p.f32 (/.f32 (-.f32 (*.f32 (*.f32 u -4/3) (*.f32 u -4/3)) 1/9) (-.f32 (*.f32 u -4/3) 1/3))) -3))
20.4b
(neg.f32 (*.f32 3 (*.f32 s (+.f32 (-.f32 (log.f32 4/3) u) (*.f32 (*.f32 u u) (+.f32 -1/2 (*.f32 -1/3 u)))))))
1.2b
(*.f32 3 (*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4/3 (-.f32 u 1/4)))))))
1.3b
(neg.f32 (*.f32 3 (*.f32 s (log1p.f32 (/.f32 (-.f32 (*.f32 (*.f32 u -4/3) (*.f32 u -4/3)) 1/9) (-.f32 (*.f32 u -4/3) 1/3))))))
Compiler

Compiled 1363 to 1117 computations (18% saved)

localize62.0ms (0.6%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)
0.3b
(fma.f32 u -4/3 1/3)
0.4b
(expm1.f32 (log1p.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)))
0.4b
(log1p.f32 (fma.f32 u -4/3 1/3))
Compiler

Compiled 51 to 42 computations (17.6% saved)

series1.0ms (0%)

Counts
1 → 12
Calls

3 calls:

TimeVariablePointExpression
0.0ms
u
@0
(expm1.f32 (log1p.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)))
0.0ms
u
@inf
(expm1.f32 (log1p.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)))
0.0ms
u
@-inf
(expm1.f32 (log1p.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)))

rewrite72.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
757×pow1_binary32
705×add-log-exp_binary32
705×expm1-log1p-u_binary32
703×log1p-expm1-u_binary32
693×add-exp-log_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01010
118010
2189610
Stop Event
node limit
Counts
1 → 24
Calls
Call 1
Inputs
(expm1.f32 (log1p.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (+.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 -3 (log1p.f32 (fma.f32 u -4/3 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)) (cbrt.f32 (*.f32 (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 2) 9)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (*.f32 (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 2) 9)) (cbrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 2)) (*.f32 (cbrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) -3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)) (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) (*.f32 (sqrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) -3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 -3 (cbrt.f32 (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 2))) (cbrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 -3 (sqrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3)))) (sqrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (+.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3) 1) 3) 1) (+.f32 (*.f32 (+.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3) 1) (+.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3) 1)) (+.f32 1 (*.f32 (+.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3) 1) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (*.f32 (+.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3) 1) (+.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3) 1)) 1) (+.f32 (+.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (*.f32 (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 2) 9))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (+.f32 (fma.f32 u -4/3 1/3) 1) -3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)))))))

simplify69.0ms (0.6%)

Algorithm
egg-herbie
Rules
550×sub-neg_binary32
536×unswap-sqr_binary32
503×fma-def_binary32
284×associate-*l*_binary32
283×associate-+l+_binary32
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
041264
1112233
2297230
3793226
42292226
55248226
Stop Event
node limit
Counts
36 → 47
Calls
Call 1
Inputs
(*.f32 -3 (log.f32 4/3))
(+.f32 (*.f32 3 u) (*.f32 -3 (log.f32 4/3)))
(+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 u) (*.f32 -3 (log.f32 4/3))))
(+.f32 (pow.f32 u 3) (+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 u) (*.f32 -3 (log.f32 4/3)))))
(*.f32 -3 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))
(+.f32 (*.f32 -3 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))) (*.f32 3 (/.f32 1 u)))
(+.f32 (*.f32 3/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 3 (/.f32 1 u)) (*.f32 -3 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))))
(+.f32 (/.f32 1 (pow.f32 u 3)) (+.f32 (*.f32 3/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 3 (/.f32 1 u)) (*.f32 -3 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))))))
(*.f32 -3 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))
(+.f32 (*.f32 3 (/.f32 1 u)) (*.f32 -3 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))))
(+.f32 (*.f32 3/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 3 (/.f32 1 u)) (*.f32 -3 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))))
(+.f32 (/.f32 1 (pow.f32 u 3)) (+.f32 (*.f32 3/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 3 (/.f32 1 u)) (*.f32 -3 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))))))
Outputs
(*.f32 -3 (log.f32 4/3))
(+.f32 (*.f32 3 u) (*.f32 -3 (log.f32 4/3)))
(fma.f32 3 u (*.f32 -3 (log.f32 4/3)))
(fma.f32 -3 (log.f32 4/3) (*.f32 3 u))
(+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 u) (*.f32 -3 (log.f32 4/3))))
(fma.f32 3/2 (*.f32 u u) (fma.f32 3 u (*.f32 -3 (log.f32 4/3))))
(fma.f32 3/2 (*.f32 u u) (fma.f32 -3 (log.f32 4/3) (*.f32 3 u)))
(fma.f32 -3 (log.f32 4/3) (*.f32 u (+.f32 3 (*.f32 u 3/2))))
(fma.f32 -3 (log.f32 4/3) (*.f32 u (fma.f32 u 3/2 3)))
(+.f32 (pow.f32 u 3) (+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 u) (*.f32 -3 (log.f32 4/3)))))
(+.f32 (fma.f32 3/2 (*.f32 u u) (fma.f32 3 u (*.f32 -3 (log.f32 4/3)))) (pow.f32 u 3))
(+.f32 (fma.f32 -3 (log.f32 4/3) (*.f32 3 u)) (*.f32 (*.f32 u u) (+.f32 u 3/2)))
(fma.f32 (*.f32 u u) (+.f32 u 3/2) (fma.f32 -3 (log.f32 4/3) (*.f32 3 u)))
(fma.f32 -3 (log.f32 4/3) (fma.f32 u (fma.f32 u 3/2 3) (pow.f32 u 3)))
(*.f32 -3 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))
(*.f32 -3 (+.f32 (log.f32 -4/3) (neg.f32 (neg.f32 (log.f32 u)))))
(*.f32 -3 (+.f32 (log.f32 -4/3) (log.f32 u)))
(+.f32 (*.f32 -3 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))) (*.f32 3 (/.f32 1 u)))
(fma.f32 -3 (+.f32 (log.f32 -4/3) (neg.f32 (neg.f32 (log.f32 u)))) (/.f32 3 u))
(fma.f32 -3 (+.f32 (log.f32 -4/3) (log.f32 u)) (/.f32 3 u))
(+.f32 (*.f32 3/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 3 (/.f32 1 u)) (*.f32 -3 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))))
(+.f32 (/.f32 3/2 (*.f32 u u)) (fma.f32 -3 (+.f32 (log.f32 -4/3) (neg.f32 (neg.f32 (log.f32 u)))) (/.f32 3 u)))
(+.f32 (/.f32 (/.f32 3/2 u) u) (fma.f32 -3 (+.f32 (log.f32 -4/3) (log.f32 u)) (/.f32 3 u)))
(+.f32 (/.f32 3 u) (fma.f32 -3 (+.f32 (log.f32 -4/3) (log.f32 u)) (/.f32 (/.f32 3/2 u) u)))
(fma.f32 -3 (+.f32 (log.f32 -4/3) (log.f32 u)) (+.f32 (/.f32 3 u) (/.f32 (/.f32 3/2 u) u)))
(+.f32 (/.f32 1 (pow.f32 u 3)) (+.f32 (*.f32 3/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 3 (/.f32 1 u)) (*.f32 -3 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))))))
(+.f32 (+.f32 (/.f32 3/2 (*.f32 u u)) (fma.f32 -3 (+.f32 (log.f32 -4/3) (neg.f32 (neg.f32 (log.f32 u)))) (/.f32 3 u))) (/.f32 1 (pow.f32 u 3)))
(+.f32 (/.f32 (/.f32 3/2 u) u) (+.f32 (fma.f32 -3 (+.f32 (log.f32 -4/3) (log.f32 u)) (/.f32 3 u)) (/.f32 1 (pow.f32 u 3))))
(+.f32 (/.f32 (/.f32 3/2 u) u) (+.f32 (/.f32 3 u) (fma.f32 -3 (+.f32 (log.f32 -4/3) (log.f32 u)) (/.f32 1 (pow.f32 u 3)))))
(*.f32 -3 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))
(*.f32 -3 (+.f32 (log.f32 4/3) (neg.f32 (log.f32 (/.f32 -1 u)))))
(*.f32 -3 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))))
(+.f32 (*.f32 3 (/.f32 1 u)) (*.f32 -3 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))))
(+.f32 (/.f32 3 u) (*.f32 -3 (+.f32 (log.f32 4/3) (neg.f32 (log.f32 (/.f32 -1 u))))))
(fma.f32 -3 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (/.f32 3 u))
(+.f32 (*.f32 3/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 3 (/.f32 1 u)) (*.f32 -3 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))))
(+.f32 (/.f32 3/2 (*.f32 u u)) (+.f32 (/.f32 3 u) (*.f32 -3 (+.f32 (log.f32 4/3) (neg.f32 (log.f32 (/.f32 -1 u)))))))
(+.f32 (/.f32 (/.f32 3/2 u) u) (fma.f32 -3 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (/.f32 3 u)))
(+.f32 (/.f32 3 u) (fma.f32 -3 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (/.f32 (/.f32 3/2 u) u)))
(+.f32 (/.f32 1 (pow.f32 u 3)) (+.f32 (*.f32 3/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 3 (/.f32 1 u)) (*.f32 -3 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))))))
(+.f32 (/.f32 1 (pow.f32 u 3)) (+.f32 (/.f32 3/2 (*.f32 u u)) (+.f32 (/.f32 3 u) (*.f32 -3 (+.f32 (log.f32 4/3) (neg.f32 (log.f32 (/.f32 -1 u))))))))
(+.f32 (+.f32 (/.f32 1 (pow.f32 u 3)) (fma.f32 -3 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (/.f32 3 u))) (/.f32 (/.f32 3/2 u) u))
(+.f32 (+.f32 (/.f32 3 u) (/.f32 (/.f32 3/2 u) u)) (fma.f32 -3 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (/.f32 1 (pow.f32 u 3))))
(+.f32 (/.f32 3 u) (+.f32 (/.f32 1 (pow.f32 u 3)) (fma.f32 -3 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (/.f32 (/.f32 3/2 u) u))))

localize33.0ms (0.3%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.1b
(*.f32 s (log.f32 27/64))
Compiler

Compiled 10 to 8 computations (20% saved)

series32.0ms (0.3%)

Counts
1 → 0
Calls

3 calls:

TimeVariablePointExpression
30.0ms
s
@0
(*.f32 s (log.f32 27/64))
1.0ms
s
@inf
(*.f32 s (log.f32 27/64))
1.0ms
s
@-inf
(*.f32 s (log.f32 27/64))

rewrite60.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
417×pow1_binary32
405×add-sqr-sqrt_binary32
395×*-un-lft-identity_binary32
388×add-log-exp_binary32
388×log1p-expm1-u_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
056
1976
210666
Stop Event
node limit
Counts
1 → 15
Calls
Call 1
Inputs
(*.f32 s (log.f32 27/64))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (*.f32 s (log.f32 27/64)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (pow.f32 (cbrt.f32 (pow.f32 27/64 s)) 2)) (log.f32 (cbrt.f32 (pow.f32 27/64 s))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (pow.f32 27/64 s))) (log.f32 (sqrt.f32 (pow.f32 27/64 s))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (*.f32 s (log.f32 27/64))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 s (log.f32 27/64)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 s (log.f32 27/64)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 s (log.f32 27/64)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 s (log.f32 27/64))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 s (log.f32 27/64))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 s (log.f32 27/64)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 27/64 s))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 s (log.f32 27/64)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 s (log.f32 27/64))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (-.f32 (pow.f32 27/64 s) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 s (log.f32 27/64))))))))

simplify15.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

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

localize68.0ms (0.6%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f32 u (*.f32 u 3/2))
0.3b
(+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 u (*.f32 u 3/2)))
0.4b
(*.f32 (+.f32 (log.f32 3/4) u) 3)
1.1b
(+.f32 (log.f32 3/4) u)
Compiler

Compiled 53 to 39 computations (26.4% saved)

series3.0ms (0%)

Counts
2 → 24
Calls

6 calls:

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

rewrite73.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
547×log-prod_binary32
469×fma-def_binary32
364×pow-prod-down_binary32
302×pow2_binary32
224×fma-neg_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01123
124123
2321023
Stop Event
node limit
Counts
2 → 89
Calls
Call 1
Inputs
(+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 u (*.f32 u 3/2)))
(*.f32 u (*.f32 u 3/2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 (*.f32 (pow.f32 (+.f32 (log1p.f32 -1/4) u) 2) 9) (-.f32 (*.f32 (+.f32 (log1p.f32 -1/4) u) 3) (*.f32 u (*.f32 u 3/2)))) (/.f32 (*.f32 (pow.f32 u 4) 9/4) (-.f32 (*.f32 (+.f32 (log1p.f32 -1/4) u) 3) (*.f32 u (*.f32 u 3/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3))) (pow.f32 (cbrt.f32 (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3))) 2) (cbrt.f32 (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3))) (sqrt.f32 (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (fma.f32 (pow.f32 (+.f32 (log1p.f32 -1/4) u) 3) 27 (*.f32 (pow.f32 u 6) 27/8)) (/.f32 1 (-.f32 (fma.f32 (pow.f32 (+.f32 (log1p.f32 -1/4) u) 2) 9 (*.f32 (pow.f32 u 4) 9/4)) (*.f32 (*.f32 (+.f32 (log1p.f32 -1/4) u) 3) (*.f32 u (*.f32 u 3/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (fma.f32 (pow.f32 (+.f32 (log1p.f32 -1/4) u) 2) 9 (neg.f32 (*.f32 (pow.f32 u 4) 9/4))) (/.f32 1 (-.f32 (*.f32 (+.f32 (log1p.f32 -1/4) u) 3) (*.f32 u (*.f32 u 3/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (-.f32 (fma.f32 (pow.f32 (+.f32 (log1p.f32 -1/4) u) 2) 9 (*.f32 (pow.f32 u 4) 9/4)) (*.f32 (*.f32 (+.f32 (log1p.f32 -1/4) u) 3) (*.f32 u (*.f32 u 3/2)))) (fma.f32 (pow.f32 (+.f32 (log1p.f32 -1/4) u) 3) 27 (*.f32 (pow.f32 u 6) 27/8))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (-.f32 (*.f32 (+.f32 (log1p.f32 -1/4) u) 3) (*.f32 u (*.f32 u 3/2))) (fma.f32 (pow.f32 (+.f32 (log1p.f32 -1/4) u) 2) 9 (neg.f32 (*.f32 (pow.f32 u 4) 9/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (fma.f32 (pow.f32 (+.f32 (log1p.f32 -1/4) u) 3) 27 (*.f32 (pow.f32 u 6) 27/8)) (-.f32 (fma.f32 (pow.f32 (+.f32 (log1p.f32 -1/4) u) 2) 9 (*.f32 (pow.f32 u 4) 9/4)) (*.f32 (*.f32 (+.f32 (log1p.f32 -1/4) u) 3) (*.f32 u (*.f32 u 3/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (fma.f32 (pow.f32 (+.f32 (log1p.f32 -1/4) u) 3) 27 (*.f32 (pow.f32 u 6) 27/8)) (fma.f32 (pow.f32 u 4) 9/4 (-.f32 (*.f32 (pow.f32 (+.f32 (log1p.f32 -1/4) u) 2) 9) (*.f32 (*.f32 (+.f32 (log1p.f32 -1/4) u) 3) (*.f32 u (*.f32 u 3/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (fma.f32 (pow.f32 (+.f32 (log1p.f32 -1/4) u) 2) 9 (neg.f32 (*.f32 (pow.f32 u 4) 9/4))) (-.f32 (*.f32 (+.f32 (log1p.f32 -1/4) u) 3) (*.f32 u (*.f32 u 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (fma.f32 (pow.f32 (+.f32 (log1p.f32 -1/4) u) 3) 27 (*.f32 (pow.f32 u 6) 27/8))) (neg.f32 (-.f32 (fma.f32 (pow.f32 (+.f32 (log1p.f32 -1/4) u) 2) 9 (*.f32 (pow.f32 u 4) 9/4)) (*.f32 (*.f32 (+.f32 (log1p.f32 -1/4) u) 3) (*.f32 u (*.f32 u 3/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (fma.f32 (pow.f32 (+.f32 (log1p.f32 -1/4) u) 2) 9 (neg.f32 (*.f32 (pow.f32 u 4) 9/4)))) (neg.f32 (-.f32 (*.f32 (+.f32 (log1p.f32 -1/4) u) 3) (*.f32 u (*.f32 u 3/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (*.f32 (pow.f32 u 4) 9/4) (*.f32 (pow.f32 (+.f32 (log1p.f32 -1/4) u) 2) 9)) (-.f32 (*.f32 u (*.f32 u 3/2)) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (-.f32 (fma.f32 (pow.f32 (+.f32 (log1p.f32 -1/4) u) 2) 9 (*.f32 (pow.f32 u 4) 9/4)) (*.f32 (*.f32 (+.f32 (log1p.f32 -1/4) u) 3) (*.f32 u (*.f32 u 3/2)))) (fma.f32 (pow.f32 (+.f32 (log1p.f32 -1/4) u) 3) 27 (*.f32 (pow.f32 u 6) 27/8))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (-.f32 (*.f32 (+.f32 (log1p.f32 -1/4) u) 3) (*.f32 u (*.f32 u 3/2))) (fma.f32 (pow.f32 (+.f32 (log1p.f32 -1/4) u) 2) 9 (neg.f32 (*.f32 (pow.f32 u 4) 9/4)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (+.f32 1 (expm1.f32 (*.f32 (+.f32 (log1p.f32 -1/4) u) 3))) (pow.f32 (exp.f32 3/2) (*.f32 u u))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (pow.f32 (*.f32 3/4 (exp.f32 u)) 3) (+.f32 1 (expm1.f32 (*.f32 u (*.f32 u 3/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (+.f32 1 (expm1.f32 (*.f32 (+.f32 (log1p.f32 -1/4) u) 3))) (+.f32 1 (expm1.f32 (*.f32 u (*.f32 u 3/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (+.f32 1 (expm1.f32 (*.f32 u (*.f32 u 3/2)))) (pow.f32 (*.f32 3/4 (exp.f32 u)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (pow.f32 (exp.f32 3/2) (*.f32 u u)) (+.f32 1 (expm1.f32 (*.f32 (+.f32 (log1p.f32 -1/4) u) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (*.f32 (+.f32 1 (expm1.f32 (*.f32 u (*.f32 u 3/2)))) (+.f32 1 (expm1.f32 (*.f32 (+.f32 (log1p.f32 -1/4) u) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (pow.f32 (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3)) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (cbrt.f32 (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (sqrt.f32 (fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u (*.f32 u 3/2) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (+.f32 (log1p.f32 -1/4) u) 3 (*.f32 u (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 3 (+.f32 (log1p.f32 -1/4) u) (*.f32 u (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (+.f32 (log1p.f32 -1/4) u) 3) 1 (*.f32 u (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 3/2 (*.f32 u u) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u 3/2) u (*.f32 (+.f32 (log1p.f32 -1/4) u) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (*.f32 u 3/2)) 1 (*.f32 (+.f32 (log1p.f32 -1/4) u) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 (+.f32 (log1p.f32 -1/4) u) 3) (*.f32 u (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 u (*.f32 u 3/2)) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u u) 3/2 (*.f32 (+.f32 (log1p.f32 -1/4) u) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (+.f32 (log1p.f32 -1/4) u)) 2) (*.f32 (cbrt.f32 (+.f32 (log1p.f32 -1/4) u)) 3) (*.f32 u (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (*.f32 u 3/2)) 2) (*.f32 (cbrt.f32 (*.f32 u 3/2)) u) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (*.f32 u (*.f32 u 3/2))) (cbrt.f32 (*.f32 (pow.f32 u 4) 9/4)) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (*.f32 (pow.f32 u 4) 9/4)) (cbrt.f32 (*.f32 u (*.f32 u 3/2))) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (*.f32 (+.f32 (log1p.f32 -1/4) u) 3)) (pow.f32 (cbrt.f32 (*.f32 (+.f32 (log1p.f32 -1/4) u) 3)) 2) (*.f32 u (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (*.f32 (+.f32 (log1p.f32 -1/4) u) 3)) 2) (cbrt.f32 (*.f32 (+.f32 (log1p.f32 -1/4) u) 3)) (*.f32 u (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 u) 2) (*.f32 (cbrt.f32 u) (*.f32 u 3/2)) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (+.f32 (log1p.f32 -1/4) u)) (*.f32 (sqrt.f32 (+.f32 (log1p.f32 -1/4) u)) 3) (*.f32 u (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 u 3/2)) (*.f32 (sqrt.f32 (*.f32 u 3/2)) u) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (sqrt.f32 3/2)) (*.f32 u (sqrt.f32 3/2)) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 (+.f32 (log1p.f32 -1/4) u) 3)) (sqrt.f32 (*.f32 (+.f32 (log1p.f32 -1/4) u) 3)) (*.f32 u (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 u) (*.f32 (sqrt.f32 u) (*.f32 u 3/2)) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (pow.f32 (cbrt.f32 (*.f32 u 3/2)) 2)) (cbrt.f32 (*.f32 u 3/2)) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 u (sqrt.f32 (*.f32 u 3/2))) (sqrt.f32 (*.f32 u 3/2)) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u 3/2) (pow.f32 (cbrt.f32 u) 2)) (cbrt.f32 u) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (*.f32 u 3/2) (sqrt.f32 u)) (sqrt.f32 u) (*.f32 (+.f32 (log1p.f32 -1/4) u) 3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 3 (pow.f32 (cbrt.f32 (+.f32 (log1p.f32 -1/4) u)) 2)) (cbrt.f32 (+.f32 (log1p.f32 -1/4) u)) (*.f32 u (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 3 (sqrt.f32 (+.f32 (log1p.f32 -1/4) u))) (sqrt.f32 (+.f32 (log1p.f32 -1/4) u)) (*.f32 u (*.f32 u 3/2)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (*.f32 u (*.f32 u 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (pow.f32 (cbrt.f32 (pow.f32 (exp.f32 3/2) (*.f32 u u))) 2)) (log.f32 (cbrt.f32 (pow.f32 (exp.f32 3/2) (*.f32 u u)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (pow.f32 (exp.f32 3/2) (*.f32 u u)))) (log.f32 (sqrt.f32 (pow.f32 (exp.f32 3/2) (*.f32 u u)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 u (*.f32 u 3/2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 u (*.f32 u 3/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (pow.f32 u 4) 9/4) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 u (*.f32 u 3/2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 u (sqrt.f32 3/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (pow.f32 u 6) 27/8) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (*.f32 (pow.f32 u 4) 9/4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 3/2) (*.f32 u u)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 u (*.f32 u 3/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 u 6) 27/8))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 u (*.f32 u 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 u (*.f32 u 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 u (*.f32 u 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 u (*.f32 u 3/2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (cbrt.f32 (*.f32 u (*.f32 u 3/2)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 u (sqrt.f32 3/2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 (pow.f32 u 6) 27/8)) 1/3))))))

simplify161.0ms (1.5%)

Algorithm
egg-herbie
Rules
778×sqr-pow_binary32
540×cube-prod_binary32
538×fma-def_binary32
531×associate-*l*_binary32
479×fabs-mul_binary32
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
014231
132231
261229
3111213
4226213
5564213
61840213
73192213
83404213
93617213
103837213
114153213
124559213
135068213
145637213
156319213
167156213
177550213
187838213
Stop Event
node limit
Counts
113 → 98
Calls
Call 1
Inputs
(*.f32 3 (log.f32 3/4))
(+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u))
(+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u)))
(+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u)))
(*.f32 3/2 (pow.f32 u 2))
(+.f32 (*.f32 3/2 (pow.f32 u 2)) (*.f32 3 u))
(+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u)))
(+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u)))
(*.f32 3/2 (pow.f32 u 2))
(+.f32 (*.f32 3/2 (pow.f32 u 2)) (*.f32 3 u))
(+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u)))
(+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u)))
(*.f32 3/2 (pow.f32 u 2))
(*.f32 3/2 (pow.f32 u 2))
(*.f32 3/2 (pow.f32 u 2))
(*.f32 3/2 (pow.f32 u 2))
(*.f32 3/2 (pow.f32 u 2))
(*.f32 3/2 (pow.f32 u 2))
(*.f32 3/2 (pow.f32 u 2))
(*.f32 3/2 (pow.f32 u 2))
(*.f32 3/2 (pow.f32 u 2))
(*.f32 3/2 (pow.f32 u 2))
(*.f32 3/2 (pow.f32 u 2))
(*.f32 3/2 (pow.f32 u 2))
Outputs
(*.f32 3 (log.f32 3/4))
(+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u))
(*.f32 3 (+.f32 (log.f32 3/4) u))
(+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u)))
(fma.f32 3/2 (*.f32 u u) (*.f32 3 (+.f32 (log.f32 3/4) u)))
(fma.f32 3 (+.f32 (log.f32 3/4) u) (*.f32 u (*.f32 u 3/2)))
(fma.f32 3 (log.f32 3/4) (*.f32 u (fma.f32 u 3/2 3)))
(fma.f32 u (fma.f32 u 3/2 3) (*.f32 3 (log.f32 3/4)))
(+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u)))
(fma.f32 3/2 (*.f32 u u) (*.f32 3 (+.f32 (log.f32 3/4) u)))
(fma.f32 3 (+.f32 (log.f32 3/4) u) (*.f32 u (*.f32 u 3/2)))
(fma.f32 3 (log.f32 3/4) (*.f32 u (fma.f32 u 3/2 3)))
(fma.f32 u (fma.f32 u 3/2 3) (*.f32 3 (log.f32 3/4)))
(*.f32 3/2 (pow.f32 u 2))
(*.f32 3/2 (*.f32 u u))
(*.f32 u (*.f32 u 3/2))
(+.f32 (*.f32 3/2 (pow.f32 u 2)) (*.f32 3 u))
(fma.f32 3/2 (*.f32 u u) (*.f32 3 u))
(fma.f32 3 u (*.f32 u (*.f32 u 3/2)))
(*.f32 u (+.f32 3 (*.f32 u 3/2)))
(*.f32 u (fma.f32 u 3/2 3))
(+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u)))
(fma.f32 3/2 (*.f32 u u) (*.f32 3 (+.f32 (log.f32 3/4) u)))
(fma.f32 3 (+.f32 (log.f32 3/4) u) (*.f32 u (*.f32 u 3/2)))
(fma.f32 3 (log.f32 3/4) (*.f32 u (fma.f32 u 3/2 3)))
(fma.f32 u (fma.f32 u 3/2 3) (*.f32 3 (log.f32 3/4)))
(+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u)))
(fma.f32 3/2 (*.f32 u u) (*.f32 3 (+.f32 (log.f32 3/4) u)))
(fma.f32 3 (+.f32 (log.f32 3/4) u) (*.f32 u (*.f32 u 3/2)))
(fma.f32 3 (log.f32 3/4) (*.f32 u (fma.f32 u 3/2 3)))
(fma.f32 u (fma.f32 u 3/2 3) (*.f32 3 (log.f32 3/4)))
(*.f32 3/2 (pow.f32 u 2))
(*.f32 3/2 (*.f32 u u))
(*.f32 u (*.f32 u 3/2))
(+.f32 (*.f32 3/2 (pow.f32 u 2)) (*.f32 3 u))
(fma.f32 3/2 (*.f32 u u) (*.f32 3 u))
(fma.f32 3 u (*.f32 u (*.f32 u 3/2)))
(*.f32 u (+.f32 3 (*.f32 u 3/2)))
(*.f32 u (fma.f32 u 3/2 3))
(+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u)))
(fma.f32 3/2 (*.f32 u u) (*.f32 3 (+.f32 (log.f32 3/4) u)))
(fma.f32 3 (+.f32 (log.f32 3/4) u) (*.f32 u (*.f32 u 3/2)))
(fma.f32 3 (log.f32 3/4) (*.f32 u (fma.f32 u 3/2 3)))
(fma.f32 u (fma.f32 u 3/2 3) (*.f32 3 (log.f32 3/4)))
(+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 (log.f32 3/4)) (*.f32 3 u)))
(fma.f32 3/2 (*.f32 u u) (*.f32 3 (+.f32 (log.f32 3/4) u)))
(fma.f32 3 (+.f32 (log.f32 3/4) u) (*.f32 u (*.f32 u 3/2)))
(fma.f32 3 (log.f32 3/4) (*.f32 u (fma.f32 u 3/2 3)))
(fma.f32 u (fma.f32 u 3/2 3) (*.f32 3 (log.f32 3/4)))
(*.f32 3/2 (pow.f32 u 2))
(*.f32 3/2 (*.f32 u u))
(*.f32 u (*.f32 u 3/2))
(*.f32 3/2 (pow.f32 u 2))
(*.f32 3/2 (*.f32 u u))
(*.f32 u (*.f32 u 3/2))
(*.f32 3/2 (pow.f32 u 2))
(*.f32 3/2 (*.f32 u u))
(*.f32 u (*.f32 u 3/2))
(*.f32 3/2 (pow.f32 u 2))
(*.f32 3/2 (*.f32 u u))
(*.f32 u (*.f32 u 3/2))
(*.f32 3/2 (pow.f32 u 2))
(*.f32 3/2 (*.f32 u u))
(*.f32 u (*.f32 u 3/2))
(*.f32 3/2 (pow.f32 u 2))
(*.f32 3/2 (*.f32 u u))
(*.f32 u (*.f32 u 3/2))
(*.f32 3/2 (pow.f32 u 2))
(*.f32 3/2 (*.f32 u u))
(*.f32 u (*.f32 u 3/2))
(*.f32 3/2 (pow.f32 u 2))
(*.f32 3/2 (*.f32 u u))
(*.f32 u (*.f32 u 3/2))
(*.f32 3/2 (pow.f32 u 2))
(*.f32 3/2 (*.f32 u u))
(*.f32 u (*.f32 u 3/2))
(*.f32 3/2 (pow.f32 u 2))
(*.f32 3/2 (*.f32 u u))
(*.f32 u (*.f32 u 3/2))
(*.f32 3/2 (pow.f32 u 2))
(*.f32 3/2 (*.f32 u u))
(*.f32 u (*.f32 u 3/2))
(*.f32 3/2 (pow.f32 u 2))
(*.f32 3/2 (*.f32 u u))
(*.f32 u (*.f32 u 3/2))

localize70.0ms (0.6%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f32 (*.f32 3 s) (neg.f32 (log.f32 (neg.f32 (neg.f32 (+.f32 4/3 (*.f32 u -4/3)))))))
0.3b
(*.f32 u -4/3)
0.6b
(log.f32 (neg.f32 (neg.f32 (+.f32 4/3 (*.f32 u -4/3)))))
1.0b
(+.f32 4/3 (*.f32 u -4/3))
Compiler

Compiled 61 to 50 computations (18% saved)

series28.0ms (0.3%)

Counts
4 → 60
Calls

15 calls:

TimeVariablePointExpression
23.0ms
s
@0
(*.f32 (*.f32 3 s) (neg.f32 (log.f32 (neg.f32 (neg.f32 (+.f32 4/3 (*.f32 u -4/3)))))))
1.0ms
s
@inf
(*.f32 (*.f32 3 s) (neg.f32 (log.f32 (neg.f32 (neg.f32 (+.f32 4/3 (*.f32 u -4/3)))))))
0.0ms
s
@-inf
(*.f32 (*.f32 3 s) (neg.f32 (log.f32 (neg.f32 (neg.f32 (+.f32 4/3 (*.f32 u -4/3)))))))
0.0ms
u
@-inf
(*.f32 (*.f32 3 s) (neg.f32 (log.f32 (neg.f32 (neg.f32 (+.f32 4/3 (*.f32 u -4/3)))))))
0.0ms
u
@inf
(*.f32 (*.f32 3 s) (neg.f32 (log.f32 (neg.f32 (neg.f32 (+.f32 4/3 (*.f32 u -4/3)))))))

rewrite274.0ms (2.5%)

Algorithm
egg-rewrite-iter-limit
egg-rewrite
batch-egg-rewrite
Rules
766×pow1_binary32
718×add-log-exp_binary32
717×log1p-expm1-u_binary32
717×expm1-log1p-u_binary32
708×add-exp-log_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01428
130428
2355428
067
11315
215845
099
11977
222197
044
1804
28754
01417
130417
2355417
01417
Stop Event
iter limit
node limit
node limit
node limit
node limit
node limit
Counts
4 → 85
Calls
Call 1
Inputs
(+.f32 4/3 (*.f32 u -4/3))
(log.f32 (neg.f32 (neg.f32 (+.f32 4/3 (*.f32 u -4/3)))))
(*.f32 u -4/3)
(*.f32 (*.f32 3 s) (neg.f32 (log.f32 (neg.f32 (neg.f32 (+.f32 4/3 (*.f32 u -4/3)))))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (fma.f32 u -4/3 4/3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (/.f32 16/9 (+.f32 4/3 (*.f32 4/3 u))) (/.f32 (*.f32 (*.f32 u u) 16/9) (+.f32 4/3 (*.f32 4/3 u))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (fma.f32 u -4/3 4/3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (fma.f32 u -4/3 4/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (fma.f32 u -4/3 4/3)) (pow.f32 (cbrt.f32 (fma.f32 u -4/3 4/3)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (fma.f32 u -4/3 4/3)) 2) (cbrt.f32 (fma.f32 u -4/3 4/3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (fma.f32 u -4/3 4/3)) (sqrt.f32 (fma.f32 u -4/3 4/3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 64/27 (pow.f32 (*.f32 u -4/3) 3)) (/.f32 1 (+.f32 16/9 (-.f32 (*.f32 (*.f32 u u) 16/9) (*.f32 -16/9 u)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 16/9 (*.f32 (*.f32 u u) 16/9)) (/.f32 1 (+.f32 4/3 (*.f32 4/3 u))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (+.f32 16/9 (-.f32 (*.f32 (*.f32 u u) 16/9) (*.f32 -16/9 u))) (+.f32 64/27 (pow.f32 (*.f32 u -4/3) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (+.f32 4/3 (*.f32 4/3 u)) (-.f32 16/9 (*.f32 (*.f32 u u) 16/9))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 64/27 (pow.f32 (*.f32 u -4/3) 3)) (+.f32 16/9 (-.f32 (*.f32 (*.f32 u u) 16/9) (*.f32 -16/9 u))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 64/27 (pow.f32 (*.f32 u -4/3) 3)) (+.f32 (*.f32 (*.f32 u u) 16/9) (-.f32 16/9 (*.f32 -16/9 u))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 16/9 (*.f32 (*.f32 u u) 16/9)) (+.f32 4/3 (*.f32 4/3 u)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (+.f32 64/27 (pow.f32 (*.f32 u -4/3) 3))) (neg.f32 (+.f32 16/9 (-.f32 (*.f32 (*.f32 u u) 16/9) (*.f32 -16/9 u)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (-.f32 16/9 (*.f32 (*.f32 u u) 16/9))) (neg.f32 (+.f32 4/3 (*.f32 4/3 u))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (*.f32 (*.f32 u u) 16/9) 16/9) (-.f32 (*.f32 u -4/3) 4/3))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (fma.f32 u -4/3 4/3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (fma.f32 u -4/3 4/3) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (fma.f32 u -4/3 4/3)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (fma.f32 u -4/3 4/3)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (fma.f32 u -4/3 4/3) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (fma.f32 u -4/3 4/3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (fma.f32 u -4/3 4/3) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (fma.f32 u -4/3 4/3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (fma.f32 u -4/3 4/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (fma.f32 u -4/3 4/3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 u -4/3 4/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 -4/3 u 4/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 u -4/3) 4/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (*.f32 u -4/3)) 2) (cbrt.f32 (*.f32 u -4/3)) 4/3)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 u -4/3)) (sqrt.f32 (*.f32 u -4/3)) 4/3)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (log.f32 (fma.f32 u -4/3 4/3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 -1) (log.f32 (fma.f32 u -4/3 4/3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (pow.f32 (cbrt.f32 (fma.f32 u -4/3 4/3)) 2)) (log.f32 (cbrt.f32 (fma.f32 u -4/3 4/3))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (fma.f32 u -4/3 4/3))) (log.f32 (sqrt.f32 (fma.f32 u -4/3 4/3))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (log.f32 (fma.f32 u -4/3 4/3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (log.f32 (-.f32 16/9 (*.f32 16/9 (*.f32 u u)))) (log.f32 (+.f32 4/3 (*.f32 4/3 u))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (log.f32 (+.f32 64/27 (pow.f32 (*.f32 u -4/3) 3))) (log.f32 (+.f32 16/9 (-.f32 (*.f32 16/9 (*.f32 u u)) (*.f32 -16/9 u)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (log.f32 (fma.f32 u -4/3 4/3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (log.f32 (fma.f32 u -4/3 4/3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (log.f32 (fma.f32 u -4/3 4/3))) (pow.f32 (cbrt.f32 (log.f32 (fma.f32 u -4/3 4/3))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (log.f32 (fma.f32 u -4/3 4/3))) 2) (cbrt.f32 (log.f32 (fma.f32 u -4/3 4/3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (log.f32 (fma.f32 u -4/3 4/3))) (sqrt.f32 (log.f32 (fma.f32 u -4/3 4/3))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (log.f32 (fma.f32 u -4/3 4/3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (log.f32 (fma.f32 u -4/3 4/3)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (log.f32 (fma.f32 u -4/3 4/3))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (log.f32 (fma.f32 u -4/3 4/3))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (log.f32 (fma.f32 u -4/3 4/3)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (log.f32 (fma.f32 u -4/3 4/3)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (log.f32 (fma.f32 u -4/3 4/3))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (-.f32 (fma.f32 u -4/3 4/3) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (log.f32 (fma.f32 u -4/3 4/3))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (+.f32 1 (*.f32 u -4/3)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (*.f32 u -4/3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (pow.f32 (exp.f32 -4/3) u))) (log.f32 (sqrt.f32 (pow.f32 (exp.f32 -4/3) u))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (cbrt.f32 (pow.f32 (exp.f32 -8/3) u))) (log.f32 (cbrt.f32 (pow.f32 (exp.f32 -4/3) u))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 1 (*.f32 u -4/3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (+.f32 1 (*.f32 u -4/3)) 3) 1) (+.f32 (*.f32 (+.f32 1 (*.f32 u -4/3)) (+.f32 1 (*.f32 u -4/3))) (+.f32 1 (*.f32 (+.f32 1 (*.f32 u -4/3)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (*.f32 (+.f32 1 (*.f32 u -4/3)) (+.f32 1 (*.f32 u -4/3))) 1) (+.f32 (+.f32 1 (*.f32 u -4/3)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 u -4/3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 u -4/3) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 -64/27 (pow.f32 u 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 u -4/3)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 u -4/3)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (E.f32) (log.f32 (*.f32 u -4/3)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (exp.f32 (sqrt.f32 (log.f32 (*.f32 u -4/3)))) (sqrt.f32 (log.f32 (*.f32 u -4/3))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (log.f32 (*.f32 u -4/3))) 2)) (cbrt.f32 (log.f32 (*.f32 u -4/3))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 u -4/3) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f32 (*.f32 u -4/3))))) (#(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 (*.f32 -64/27 (pow.f32 u 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 u -4/3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 u -4/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 u -4/3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (*.f32 3 (log.f32 (*.f32 u -4/3))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (cbrt.f32 (*.f32 u -4/3))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (sqrt.f32 (*.f32 u -4/3))) 2))))))
((#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 3 (*.f32 s (neg.f32 (log.f32 (+.f32 4/3 (*.f32 u -4/3)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f32 (*.f32 (*.f32 3 s) (log.f32 (+.f32 4/3 (*.f32 u -4/3)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (*.f32 3 (*.f32 s (neg.f32 (log.f32 (+.f32 4/3 (*.f32 u -4/3))))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (*.f32 (*.f32 3 (*.f32 s (neg.f32 (log.f32 (+.f32 4/3 (*.f32 u -4/3)))))) (*.f32 3 (*.f32 s (neg.f32 (log.f32 (+.f32 4/3 (*.f32 u -4/3))))))) (*.f32 3 (*.f32 s (neg.f32 (log.f32 (+.f32 4/3 (*.f32 u -4/3))))))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 3 (*.f32 s (neg.f32 (log.f32 (+.f32 4/3 (*.f32 u -4/3))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 3 (*.f32 s (neg.f32 (log.f32 (+.f32 4/3 (*.f32 u -4/3))))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 3 (*.f32 s (neg.f32 (log.f32 (+.f32 4/3 (*.f32 u -4/3))))))))))))

simplify67.0ms (0.6%)

Algorithm
egg-herbie
Rules
380×associate-+r+_binary32
361×fma-def_binary32
358×associate-+l-_binary32
337×times-frac_binary32
304×unsub-neg_binary32
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
084812
1242778
2701755
32303744
46592744
Stop Event
node limit
Counts
145 → 138
Calls
Call 1
Inputs
4/3
(+.f32 (*.f32 -4/3 u) 4/3)
(+.f32 (*.f32 -4/3 u) 4/3)
(+.f32 (*.f32 -4/3 u) 4/3)
(*.f32 -4/3 u)
(+.f32 4/3 (*.f32 -4/3 u))
(+.f32 4/3 (*.f32 -4/3 u))
(+.f32 4/3 (*.f32 -4/3 u))
(*.f32 -4/3 u)
(+.f32 4/3 (*.f32 -4/3 u))
(+.f32 4/3 (*.f32 -4/3 u))
(+.f32 4/3 (*.f32 -4/3 u))
(log.f32 4/3)
(+.f32 (log.f32 4/3) (*.f32 -1 u))
(+.f32 (log.f32 4/3) (+.f32 (*.f32 -1/2 (pow.f32 u 2)) (*.f32 -1 u)))
(+.f32 (*.f32 -1/3 (pow.f32 u 3)) (+.f32 (log.f32 4/3) (+.f32 (*.f32 -1/2 (pow.f32 u 2)) (*.f32 -1 u))))
(+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4/3)) (/.f32 1 u))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4/3)) (+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (/.f32 1 u)))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4/3)) (+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/3 (/.f32 1 (pow.f32 u 3))) (/.f32 1 u))))
(+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4/3)) (/.f32 1 u))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4/3)) (+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (/.f32 1 u)))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4/3)) (+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/3 (/.f32 1 (pow.f32 u 3))) (/.f32 1 u))))
(*.f32 -4/3 u)
(*.f32 -4/3 u)
(*.f32 -4/3 u)
(*.f32 -4/3 u)
(*.f32 -4/3 u)
(*.f32 -4/3 u)
(*.f32 -4/3 u)
(*.f32 -4/3 u)
(*.f32 -4/3 u)
(*.f32 -4/3 u)
(*.f32 -4/3 u)
(*.f32 -4/3 u)
(*.f32 -3 (*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u)))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u)))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u)))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u)))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u)))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u)))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u)))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u)))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u)))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u)))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u)))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u)))))
(*.f32 -3 (*.f32 s (log.f32 4/3)))
(+.f32 (*.f32 3 (*.f32 s u)) (*.f32 -3 (*.f32 s (log.f32 4/3))))
(+.f32 (*.f32 3/2 (*.f32 s (pow.f32 u 2))) (+.f32 (*.f32 3 (*.f32 s u)) (*.f32 -3 (*.f32 s (log.f32 4/3)))))
(+.f32 (*.f32 3/2 (*.f32 s (pow.f32 u 2))) (+.f32 (*.f32 3 (*.f32 s u)) (+.f32 (*.f32 s (pow.f32 u 3)) (*.f32 -3 (*.f32 s (log.f32 4/3))))))
(*.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))))
(+.f32 (*.f32 3 (/.f32 s u)) (*.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))))
(+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))) (*.f32 3/2 (/.f32 s (pow.f32 u 2)))))
(+.f32 (/.f32 s (pow.f32 u 3)) (+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))) (*.f32 3/2 (/.f32 s (pow.f32 u 2))))))
(*.f32 -3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))))
(+.f32 (*.f32 3 (/.f32 s u)) (*.f32 -3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))))
(+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 -3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))) (*.f32 3/2 (/.f32 s (pow.f32 u 2)))))
(+.f32 (/.f32 s (pow.f32 u 3)) (+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 -3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))) (*.f32 3/2 (/.f32 s (pow.f32 u 2))))))
Outputs
4/3
(+.f32 (*.f32 -4/3 u) 4/3)
(fma.f32 -4/3 u 4/3)
(+.f32 (*.f32 -4/3 u) 4/3)
(fma.f32 -4/3 u 4/3)
(+.f32 (*.f32 -4/3 u) 4/3)
(fma.f32 -4/3 u 4/3)
(*.f32 -4/3 u)
(+.f32 4/3 (*.f32 -4/3 u))
(fma.f32 -4/3 u 4/3)
(+.f32 4/3 (*.f32 -4/3 u))
(fma.f32 -4/3 u 4/3)
(+.f32 4/3 (*.f32 -4/3 u))
(fma.f32 -4/3 u 4/3)
(*.f32 -4/3 u)
(+.f32 4/3 (*.f32 -4/3 u))
(fma.f32 -4/3 u 4/3)
(+.f32 4/3 (*.f32 -4/3 u))
(fma.f32 -4/3 u 4/3)
(+.f32 4/3 (*.f32 -4/3 u))
(fma.f32 -4/3 u 4/3)
(log.f32 4/3)
(+.f32 (log.f32 4/3) (*.f32 -1 u))
(+.f32 (log.f32 4/3) (neg.f32 u))
(-.f32 (log.f32 4/3) u)
(+.f32 (log.f32 4/3) (+.f32 (*.f32 -1/2 (pow.f32 u 2)) (*.f32 -1 u)))
(+.f32 (log.f32 4/3) (fma.f32 -1/2 (*.f32 u u) (neg.f32 u)))
(+.f32 (log.f32 4/3) (-.f32 (*.f32 u (*.f32 u -1/2)) u))
(-.f32 (fma.f32 u (*.f32 u -1/2) (log.f32 4/3)) u)
(-.f32 (fma.f32 -1/2 (*.f32 u u) (log.f32 4/3)) u)
(+.f32 (*.f32 -1/3 (pow.f32 u 3)) (+.f32 (log.f32 4/3) (+.f32 (*.f32 -1/2 (pow.f32 u 2)) (*.f32 -1 u))))
(fma.f32 -1/3 (pow.f32 u 3) (+.f32 (log.f32 4/3) (fma.f32 -1/2 (*.f32 u u) (neg.f32 u))))
(+.f32 (-.f32 (*.f32 u (*.f32 u -1/2)) u) (fma.f32 -1/3 (pow.f32 u 3) (log.f32 4/3)))
(-.f32 (fma.f32 -1/3 (pow.f32 u 3) (fma.f32 u (*.f32 u -1/2) (log.f32 4/3))) u)
(-.f32 (fma.f32 -1/3 (pow.f32 u 3) (fma.f32 -1/2 (*.f32 u u) (log.f32 4/3))) u)
(+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))
(fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4/3))
(+.f32 (log.f32 -4/3) (log.f32 u))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4/3)) (/.f32 1 u))
(-.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4/3)) (/.f32 1 u))
(+.f32 (log.f32 -4/3) (-.f32 (log.f32 u) (/.f32 1 u)))
(+.f32 (log.f32 -4/3) (+.f32 (log.f32 u) (/.f32 -1 u)))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4/3)) (+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (/.f32 1 u)))
(-.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4/3)) (+.f32 (/.f32 1 u) (/.f32 1/2 (*.f32 u u))))
(+.f32 (-.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) (/.f32 1/2 (*.f32 u u))) (/.f32 -1 u))
(+.f32 (log.f32 u) (+.f32 (log.f32 -4/3) (+.f32 (/.f32 -1 u) (/.f32 -1/2 (*.f32 u u)))))
(+.f32 (log.f32 -4/3) (-.f32 (/.f32 -1 u) (-.f32 (/.f32 1/2 (*.f32 u u)) (log.f32 u))))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (log.f32 -4/3)) (+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/3 (/.f32 1 (pow.f32 u 3))) (/.f32 1 u))))
(-.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4/3)) (+.f32 (/.f32 1/2 (*.f32 u u)) (+.f32 (/.f32 1 u) (/.f32 1/3 (pow.f32 u 3)))))
(+.f32 (log.f32 -4/3) (-.f32 (log.f32 u) (+.f32 (/.f32 1/2 (*.f32 u u)) (+.f32 (/.f32 1 u) (/.f32 1/3 (pow.f32 u 3))))))
(+.f32 (log.f32 -4/3) (-.f32 (log.f32 u) (+.f32 (/.f32 1 u) (+.f32 (/.f32 1/2 (*.f32 u u)) (/.f32 1/3 (pow.f32 u 3))))))
(+.f32 (log.f32 -4/3) (+.f32 (log.f32 u) (-.f32 (+.f32 (/.f32 -1 u) (/.f32 -1/3 (pow.f32 u 3))) (/.f32 1/2 (*.f32 u u)))))
(+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))
(fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4/3))
(-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4/3)) (/.f32 1 u))
(-.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4/3)) (/.f32 1 u))
(+.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (/.f32 -1 u))
(-.f32 (log.f32 4/3) (-.f32 (log.f32 (/.f32 -1 u)) (/.f32 -1 u)))
(+.f32 (log.f32 4/3) (-.f32 (/.f32 -1 u) (log.f32 (/.f32 -1 u))))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4/3)) (+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (/.f32 1 u)))
(-.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4/3)) (+.f32 (/.f32 1 u) (/.f32 1/2 (*.f32 u u))))
(+.f32 (-.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (/.f32 1/2 (*.f32 u u))) (/.f32 -1 u))
(+.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (+.f32 (/.f32 -1 u) (/.f32 -1/2 (*.f32 u u))))
(-.f32 (-.f32 (/.f32 -1 u) (-.f32 (/.f32 1/2 (*.f32 u u)) (log.f32 4/3))) (log.f32 (/.f32 -1 u)))
(-.f32 (-.f32 (log.f32 4/3) (-.f32 (/.f32 1/2 (*.f32 u u)) (/.f32 -1 u))) (log.f32 (/.f32 -1 u)))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 4/3)) (+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 1/3 (/.f32 1 (pow.f32 u 3))) (/.f32 1 u))))
(-.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4/3)) (+.f32 (/.f32 1/2 (*.f32 u u)) (+.f32 (/.f32 1 u) (/.f32 1/3 (pow.f32 u 3)))))
(-.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (+.f32 (/.f32 1/2 (*.f32 u u)) (+.f32 (/.f32 1 u) (/.f32 1/3 (pow.f32 u 3)))))
(+.f32 (-.f32 (log.f32 4/3) (-.f32 (log.f32 (/.f32 -1 u)) (/.f32 -1/2 (*.f32 u u)))) (-.f32 (/.f32 -1 u) (/.f32 1/3 (pow.f32 u 3))))
(-.f32 (-.f32 (/.f32 -1 u) (-.f32 (/.f32 1/2 (*.f32 u u)) (log.f32 4/3))) (-.f32 (log.f32 (/.f32 -1 u)) (/.f32 -1/3 (pow.f32 u 3))))
(-.f32 (-.f32 (+.f32 (/.f32 -1 u) (/.f32 -1/3 (pow.f32 u 3))) (log.f32 (/.f32 -1 u))) (-.f32 (/.f32 1/2 (*.f32 u u)) (log.f32 4/3)))
(*.f32 -4/3 u)
(*.f32 -4/3 u)
(*.f32 -4/3 u)
(*.f32 -4/3 u)
(*.f32 -4/3 u)
(*.f32 -4/3 u)
(*.f32 -4/3 u)
(*.f32 -4/3 u)
(*.f32 -4/3 u)
(*.f32 -4/3 u)
(*.f32 -4/3 u)
(*.f32 -4/3 u)
(*.f32 -3 (*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u)))))
(*.f32 (*.f32 -3 s) (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u)))))
(*.f32 (*.f32 -3 s) (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u)))))
(*.f32 (*.f32 -3 s) (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u)))))
(*.f32 (*.f32 -3 s) (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u)))))
(*.f32 (*.f32 -3 s) (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u)))))
(*.f32 (*.f32 -3 s) (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u)))))
(*.f32 (*.f32 -3 s) (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u)))))
(*.f32 (*.f32 -3 s) (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u)))))
(*.f32 (*.f32 -3 s) (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u)))))
(*.f32 (*.f32 -3 s) (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u)))))
(*.f32 (*.f32 -3 s) (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 4/3 (*.f32 -4/3 u)))))
(*.f32 (*.f32 -3 s) (log.f32 (fma.f32 -4/3 u 4/3)))
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 -4/3 u 4/3))))
(*.f32 -3 (*.f32 s (log.f32 4/3)))
(*.f32 -3 (*.f32 (log.f32 4/3) s))
(*.f32 (log.f32 4/3) (*.f32 -3 s))
(+.f32 (*.f32 3 (*.f32 s u)) (*.f32 -3 (*.f32 s (log.f32 4/3))))
(fma.f32 3 (*.f32 u s) (*.f32 -3 (*.f32 (log.f32 4/3) s)))
(fma.f32 -3 (*.f32 (log.f32 4/3) s) (*.f32 u (*.f32 3 s)))
(*.f32 s (+.f32 (*.f32 (log.f32 4/3) -3) (*.f32 u 3)))
(+.f32 (*.f32 3/2 (*.f32 s (pow.f32 u 2))) (+.f32 (*.f32 3 (*.f32 s u)) (*.f32 -3 (*.f32 s (log.f32 4/3)))))
(fma.f32 3/2 (*.f32 (*.f32 u u) s) (fma.f32 3 (*.f32 u s) (*.f32 -3 (*.f32 (log.f32 4/3) s))))
(fma.f32 3/2 (*.f32 u (*.f32 u s)) (fma.f32 -3 (*.f32 (log.f32 4/3) s) (*.f32 u (*.f32 3 s))))
(fma.f32 u (*.f32 3 s) (*.f32 s (+.f32 (*.f32 u (*.f32 u 3/2)) (*.f32 (log.f32 4/3) -3))))
(*.f32 s (+.f32 (*.f32 (log.f32 4/3) -3) (*.f32 u (+.f32 3 (*.f32 u 3/2)))))
(+.f32 (*.f32 3/2 (*.f32 s (pow.f32 u 2))) (+.f32 (*.f32 3 (*.f32 s u)) (+.f32 (*.f32 s (pow.f32 u 3)) (*.f32 -3 (*.f32 s (log.f32 4/3))))))
(fma.f32 3/2 (*.f32 (*.f32 u u) s) (fma.f32 3 (*.f32 u s) (fma.f32 s (pow.f32 u 3) (*.f32 -3 (*.f32 (log.f32 4/3) s)))))
(fma.f32 3/2 (*.f32 u (*.f32 u s)) (fma.f32 3 (*.f32 u s) (fma.f32 (pow.f32 u 3) s (*.f32 (log.f32 4/3) (*.f32 -3 s)))))
(fma.f32 u (*.f32 3 s) (fma.f32 (*.f32 u u) (*.f32 s 3/2) (*.f32 s (+.f32 (pow.f32 u 3) (*.f32 (log.f32 4/3) -3)))))
(*.f32 s (+.f32 (+.f32 (pow.f32 u 3) (*.f32 (log.f32 4/3) -3)) (*.f32 u (+.f32 3 (*.f32 u 3/2)))))
(*.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))))
(*.f32 (*.f32 -3 s) (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4/3)))
(*.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) (*.f32 -3 s))
(+.f32 (*.f32 3 (/.f32 s u)) (*.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))))
(fma.f32 3 (/.f32 s u) (*.f32 (*.f32 -3 s) (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4/3))))
(fma.f32 -3 (*.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) s) (*.f32 3 (/.f32 s u)))
(fma.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) (*.f32 -3 s) (/.f32 (*.f32 3 s) u))
(*.f32 s (+.f32 (*.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) -3) (/.f32 3 u)))
(+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))) (*.f32 3/2 (/.f32 s (pow.f32 u 2)))))
(fma.f32 3 (/.f32 s u) (fma.f32 -3 (*.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4/3)) s) (*.f32 3/2 (/.f32 s (*.f32 u u)))))
(fma.f32 3 (/.f32 s u) (fma.f32 -3 (*.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) s) (*.f32 (/.f32 3/2 u) (/.f32 s u))))
(fma.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) (*.f32 -3 s) (*.f32 (/.f32 s u) (+.f32 3 (/.f32 3/2 u))))
(+.f32 (/.f32 s (pow.f32 u 3)) (+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))) (*.f32 3/2 (/.f32 s (pow.f32 u 2))))))
(+.f32 (fma.f32 3 (/.f32 s u) (fma.f32 -3 (*.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (log.f32 -4/3)) s) (*.f32 3/2 (/.f32 s (*.f32 u u))))) (/.f32 s (pow.f32 u 3)))
(+.f32 (fma.f32 3 (/.f32 s u) (fma.f32 -3 (*.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) s) (*.f32 (/.f32 3/2 u) (/.f32 s u)))) (/.f32 s (pow.f32 u 3)))
(+.f32 (fma.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) (*.f32 -3 s) (*.f32 (/.f32 s u) (+.f32 3 (/.f32 3/2 u)))) (/.f32 s (pow.f32 u 3)))
(*.f32 -3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))))
(*.f32 -3 (*.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4/3)) s))
(*.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 -3 s))
(+.f32 (*.f32 3 (/.f32 s u)) (*.f32 -3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))))
(fma.f32 3 (/.f32 s u) (*.f32 -3 (*.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4/3)) s)))
(fma.f32 (*.f32 -3 s) (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 3 (/.f32 s u)))
(fma.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 -3 s) (/.f32 (*.f32 3 s) u))
(*.f32 s (+.f32 (/.f32 3 u) (*.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) -3)))
(+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 -3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))) (*.f32 3/2 (/.f32 s (pow.f32 u 2)))))
(fma.f32 3 (/.f32 s u) (fma.f32 -3 (*.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4/3)) s) (*.f32 3/2 (/.f32 s (*.f32 u u)))))
(fma.f32 3 (/.f32 s u) (fma.f32 (*.f32 -3 s) (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 (/.f32 3/2 u) (/.f32 s u))))
(fma.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 -3 s) (*.f32 (/.f32 s u) (+.f32 3 (/.f32 3/2 u))))
(+.f32 (/.f32 s (pow.f32 u 3)) (+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 -3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))) (*.f32 3/2 (/.f32 s (pow.f32 u 2))))))
(+.f32 (/.f32 s (pow.f32 u 3)) (fma.f32 3 (/.f32 s u) (fma.f32 -3 (*.f32 (fma.f32 -1 (log.f32 (/.f32 -1 u)) (log.f32 4/3)) s) (*.f32 3/2 (/.f32 s (*.f32 u u))))))
(+.f32 (/.f32 s (pow.f32 u 3)) (fma.f32 3 (/.f32 s u) (fma.f32 (*.f32 -3 s) (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 (/.f32 3/2 u) (/.f32 s u)))))
(+.f32 (/.f32 s (pow.f32 u 3)) (fma.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 -3 s) (*.f32 (/.f32 s u) (+.f32 3 (/.f32 3/2 u)))))

localize53.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)
0.3b
(fma.f32 u -4/3 1/3)
0.4b
(log1p.f32 (fma.f32 u -4/3 1/3))
0.5b
(-.f32 (+.f32 1 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)) 1)
Compiler

Compiled 57 to 48 computations (15.8% saved)

series2.0ms (0%)

Counts
1 → 12
Calls

3 calls:

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

rewrite64.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
554×unpow-prod-down_binary32
431×prod-diff_binary32
400×fma-def_binary32
396×log-prod_binary32
255×pow2_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01116
123710
2292210
Stop Event
node limit
Counts
1 → 96
Calls
Call 1
Inputs
(-.f32 (+.f32 1 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)) 1)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f32 1 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 1 (*.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 -1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 -1 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (pow.f32 (cbrt.f32 (pow.f32 (+.f32 1 (fma.f32 u -4/3 1/3)) -3)) 2)) (log.f32 (cbrt.f32 (pow.f32 (+.f32 1 (fma.f32 u -4/3 1/3)) -3))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (pow.f32 (+.f32 1 (fma.f32 u -4/3 1/3)) -3))) (log.f32 (sqrt.f32 (pow.f32 (+.f32 1 (fma.f32 u -4/3 1/3)) -3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (pow.f32 (cbrt.f32 -3) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (pow.f32 (sqrt.f32 -3) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (pow.f32 -27 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 -3 (log1p.f32 (fma.f32 u -4/3 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)) (pow.f32 (cbrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)) 2) (cbrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) 2) (*.f32 (cbrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) -3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) 2) (pow.f32 (*.f32 (cbrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) -3) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)) (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) (*.f32 (sqrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) -3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) (pow.f32 (*.f32 (sqrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) -3) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 (pow.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1) 3) -1) (/.f32 1 (+.f32 (pow.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1) 2) (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 (pow.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1) 3) -1) (pow.f32 (/.f32 1 (+.f32 (pow.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1) 2) (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 (pow.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1) 2) -1) (/.f32 1 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 (pow.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1) 2) -1) (pow.f32 (/.f32 1 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 (sqrt.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1)) 1) (-.f32 (sqrt.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 -3 (pow.f32 (cbrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) 2)) (cbrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 -3 (sqrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3)))) (sqrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 1 1/3) (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (sqrt.f32 (cbrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3))) 3) (pow.f32 (sqrt.f32 (cbrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (+.f32 (sqrt.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1)) 1) 1) (pow.f32 (-.f32 (sqrt.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1)) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (*.f32 -3 (pow.f32 (cbrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) 2)) 1) (cbrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (*.f32 -3 (sqrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3)))) 1) (sqrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 -3) 3) (log1p.f32 (fma.f32 u -4/3 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3))) 2) 3) (cbrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (sqrt.f32 -3) 2) (log1p.f32 (fma.f32 u -4/3 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 -27 1/3) (log1p.f32 (fma.f32 u -4/3 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (*.f32 (*.f32 9 (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 2)) (log1p.f32 (fma.f32 u -4/3 1/3))) 1/3) (cbrt.f32 -3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (*.f32 (*.f32 9 (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 2)) -3) 1/3) (cbrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (pow.f32 (*.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3) (cbrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3))) 2) 1/3) (cbrt.f32 (cbrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (*.f32 (*.f32 9 (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 2)) (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3))) 1/3) (cbrt.f32 (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (+.f32 (pow.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1) 2) (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 2)) (+.f32 (pow.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1) 3) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 2) (+.f32 (pow.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1) 2) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1) 3) -1) (+.f32 (pow.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1) 2) (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1) 3) -1) (+.f32 (pow.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1) 2) (-.f32 1 (*.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 (pow.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1) 2) -1) (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (+.f32 (pow.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1) 3) -1)) (neg.f32 (+.f32 (pow.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1) 2) (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (+.f32 (pow.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1) 2) -1)) (neg.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (+.f32 1 (pow.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 -1) 3)) (+.f32 1 (-.f32 (pow.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 -1) 2) (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 1 (pow.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 -1) 2)) (-.f32 1 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 -1)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 9 (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 -27 (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (+.f32 (pow.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1) 2) (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 2)) (+.f32 (pow.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1) 3) -1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 2) (+.f32 (pow.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1) 2) -1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (*.f32 9 (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (+.f32 1 (fma.f32 u -4/3 1/3)) -3))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 -27 (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f32 (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)) (sqrt.f32 (*.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3) (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 -1))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (*.f32 (log1p.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 1 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 -3 (log1p.f32 (fma.f32 u -4/3 1/3)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3) 1 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1) 1 -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)) (pow.f32 (cbrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)) 2) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)) 2) (cbrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (cbrt.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1)) (pow.f32 (cbrt.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1)) 2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1)) 2) (cbrt.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1)) 2) (*.f32 (cbrt.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) 2) (*.f32 (cbrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) -3) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)) (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1)) (sqrt.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1)) (*.f32 (sqrt.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) (*.f32 (sqrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) -3) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (+.f32 (pow.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1) 3) -1) (/.f32 1 (+.f32 (pow.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1) 2) (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (fma.f32 -27 (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 3) 1) (/.f32 1 (fma.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3) (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 -1) 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (+.f32 (pow.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1) 2) -1) (/.f32 1 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (-.f32 1 (*.f32 9 (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 2))) (/.f32 1 (-.f32 1 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (pow.f32 (cbrt.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 -1)) 2) (cbrt.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 -1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (sqrt.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 -1)) (sqrt.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 -1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (+.f32 (sqrt.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1)) 1) (-.f32 (sqrt.f32 (fma.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3 1)) 1) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (+.f32 (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)) 1) (-.f32 (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 -3 (pow.f32 (cbrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) 2)) (cbrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f32 (*.f32 -3 (sqrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3)))) (sqrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) 0)))))

simplify54.0ms (0.5%)

Algorithm
egg-herbie
Rules
550×sub-neg_binary32
536×unswap-sqr_binary32
503×fma-def_binary32
284×associate-*l*_binary32
283×associate-+l+_binary32
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
041264
1112233
2297230
3793226
42292226
55248226
Stop Event
node limit
Counts
108 → 119
Calls
Call 1
Inputs
(*.f32 -3 (log.f32 4/3))
(+.f32 (*.f32 3 u) (*.f32 -3 (log.f32 4/3)))
(+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 u) (*.f32 -3 (log.f32 4/3))))
(+.f32 (pow.f32 u 3) (+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 u) (*.f32 -3 (log.f32 4/3)))))
(*.f32 -3 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))
(+.f32 (*.f32 -3 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))) (*.f32 3 (/.f32 1 u)))
(+.f32 (*.f32 3/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 3 (/.f32 1 u)) (*.f32 -3 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))))
(+.f32 (/.f32 1 (pow.f32 u 3)) (+.f32 (*.f32 3/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 3 (/.f32 1 u)) (*.f32 -3 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))))))
(*.f32 -3 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))
(+.f32 (*.f32 3 (/.f32 1 u)) (*.f32 -3 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))))
(+.f32 (*.f32 3/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 3 (/.f32 1 u)) (*.f32 -3 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))))
(+.f32 (/.f32 1 (pow.f32 u 3)) (+.f32 (*.f32 3/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 3 (/.f32 1 u)) (*.f32 -3 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))))))
Outputs
(*.f32 -3 (log.f32 4/3))
(+.f32 (*.f32 3 u) (*.f32 -3 (log.f32 4/3)))
(fma.f32 3 u (*.f32 -3 (log.f32 4/3)))
(fma.f32 -3 (log.f32 4/3) (*.f32 3 u))
(+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 u) (*.f32 -3 (log.f32 4/3))))
(fma.f32 3/2 (*.f32 u u) (fma.f32 3 u (*.f32 -3 (log.f32 4/3))))
(fma.f32 3/2 (*.f32 u u) (fma.f32 -3 (log.f32 4/3) (*.f32 3 u)))
(fma.f32 -3 (log.f32 4/3) (*.f32 u (+.f32 3 (*.f32 u 3/2))))
(fma.f32 -3 (log.f32 4/3) (*.f32 u (fma.f32 u 3/2 3)))
(+.f32 (pow.f32 u 3) (+.f32 (*.f32 3/2 (pow.f32 u 2)) (+.f32 (*.f32 3 u) (*.f32 -3 (log.f32 4/3)))))
(+.f32 (fma.f32 3/2 (*.f32 u u) (fma.f32 3 u (*.f32 -3 (log.f32 4/3)))) (pow.f32 u 3))
(+.f32 (fma.f32 -3 (log.f32 4/3) (*.f32 3 u)) (*.f32 (*.f32 u u) (+.f32 u 3/2)))
(fma.f32 (*.f32 u u) (+.f32 u 3/2) (fma.f32 -3 (log.f32 4/3) (*.f32 3 u)))
(fma.f32 -3 (log.f32 4/3) (fma.f32 u (fma.f32 u 3/2 3) (pow.f32 u 3)))
(*.f32 -3 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))
(*.f32 -3 (+.f32 (log.f32 -4/3) (neg.f32 (neg.f32 (log.f32 u)))))
(*.f32 -3 (+.f32 (log.f32 -4/3) (log.f32 u)))
(+.f32 (*.f32 -3 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))) (*.f32 3 (/.f32 1 u)))
(fma.f32 -3 (+.f32 (log.f32 -4/3) (neg.f32 (neg.f32 (log.f32 u)))) (/.f32 3 u))
(fma.f32 -3 (+.f32 (log.f32 -4/3) (log.f32 u)) (/.f32 3 u))
(+.f32 (*.f32 3/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 3 (/.f32 1 u)) (*.f32 -3 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u)))))))
(+.f32 (/.f32 3/2 (*.f32 u u)) (fma.f32 -3 (+.f32 (log.f32 -4/3) (neg.f32 (neg.f32 (log.f32 u)))) (/.f32 3 u)))
(+.f32 (/.f32 (/.f32 3/2 u) u) (fma.f32 -3 (+.f32 (log.f32 -4/3) (log.f32 u)) (/.f32 3 u)))
(+.f32 (/.f32 3 u) (fma.f32 -3 (+.f32 (log.f32 -4/3) (log.f32 u)) (/.f32 (/.f32 3/2 u) u)))
(fma.f32 -3 (+.f32 (log.f32 -4/3) (log.f32 u)) (+.f32 (/.f32 3 u) (/.f32 (/.f32 3/2 u) u)))
(+.f32 (/.f32 1 (pow.f32 u 3)) (+.f32 (*.f32 3/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 3 (/.f32 1 u)) (*.f32 -3 (+.f32 (log.f32 -4/3) (*.f32 -1 (log.f32 (/.f32 1 u))))))))
(+.f32 (+.f32 (/.f32 3/2 (*.f32 u u)) (fma.f32 -3 (+.f32 (log.f32 -4/3) (neg.f32 (neg.f32 (log.f32 u)))) (/.f32 3 u))) (/.f32 1 (pow.f32 u 3)))
(+.f32 (/.f32 (/.f32 3/2 u) u) (+.f32 (fma.f32 -3 (+.f32 (log.f32 -4/3) (log.f32 u)) (/.f32 3 u)) (/.f32 1 (pow.f32 u 3))))
(+.f32 (/.f32 (/.f32 3/2 u) u) (+.f32 (/.f32 3 u) (fma.f32 -3 (+.f32 (log.f32 -4/3) (log.f32 u)) (/.f32 1 (pow.f32 u 3)))))
(*.f32 -3 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))
(*.f32 -3 (+.f32 (log.f32 4/3) (neg.f32 (log.f32 (/.f32 -1 u)))))
(*.f32 -3 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))))
(+.f32 (*.f32 3 (/.f32 1 u)) (*.f32 -3 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))))
(+.f32 (/.f32 3 u) (*.f32 -3 (+.f32 (log.f32 4/3) (neg.f32 (log.f32 (/.f32 -1 u))))))
(fma.f32 -3 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (/.f32 3 u))
(+.f32 (*.f32 3/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 3 (/.f32 1 u)) (*.f32 -3 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u)))))))
(+.f32 (/.f32 3/2 (*.f32 u u)) (+.f32 (/.f32 3 u) (*.f32 -3 (+.f32 (log.f32 4/3) (neg.f32 (log.f32 (/.f32 -1 u)))))))
(+.f32 (/.f32 (/.f32 3/2 u) u) (fma.f32 -3 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (/.f32 3 u)))
(+.f32 (/.f32 3 u) (fma.f32 -3 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (/.f32 (/.f32 3/2 u) u)))
(+.f32 (/.f32 1 (pow.f32 u 3)) (+.f32 (*.f32 3/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (*.f32 3 (/.f32 1 u)) (*.f32 -3 (+.f32 (log.f32 4/3) (*.f32 -1 (log.f32 (/.f32 -1 u))))))))
(+.f32 (/.f32 1 (pow.f32 u 3)) (+.f32 (/.f32 3/2 (*.f32 u u)) (+.f32 (/.f32 3 u) (*.f32 -3 (+.f32 (log.f32 4/3) (neg.f32 (log.f32 (/.f32 -1 u))))))))
(+.f32 (+.f32 (/.f32 1 (pow.f32 u 3)) (fma.f32 -3 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (/.f32 3 u))) (/.f32 (/.f32 3/2 u) u))
(+.f32 (+.f32 (/.f32 3 u) (/.f32 (/.f32 3/2 u) u)) (fma.f32 -3 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (/.f32 1 (pow.f32 u 3))))
(+.f32 (/.f32 3 u) (+.f32 (/.f32 1 (pow.f32 u 3)) (fma.f32 -3 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (/.f32 (/.f32 3/2 u) u))))

eval288.0ms (2.6%)

Compiler

Compiled 12643 to 10254 computations (18.9% saved)

prune155.0ms (1.4%)

Pruning

53 alts after pruning (41 fresh and 12 done)

PrunedKeptTotal
New68511696
Fresh63036
Picked101
Done21214
Total69453747
Error
0.0b
Counts
747 → 53
Alt Table
Click to see full alt table
StatusErrorProgram
1.2b
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4)))))
21.8b
(*.f32 s (+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 3/2 (*.f32 u u))))
1.0b
(*.f32 s (log.f32 (pow.f32 (fma.f32 u -4/3 4/3) -3)))
29.6b
(*.f32 s (log.f32 27/64))
0.9b
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 u -4/3 4/3))))
21.8b
(neg.f32 (*.f32 3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 u (+.f32 (*.f32 -1/2 u) -1))))))
1.2b
(*.f32 s (log.f32 (pow.f32 (+.f32 (*.f32 -4/3 u) 4/3) -3)))
22.1b
(*.f32 s (*.f32 u (fma.f32 u 3/2 3)))
1.4b
(*.f32 (*.f32 3 s) (neg.f32 (log.f32 (neg.f32 (neg.f32 (-.f32 (/.f32 16/9 (+.f32 4/3 (*.f32 4/3 u))) (/.f32 (*.f32 (*.f32 u u) 16/9) (+.f32 4/3 (*.f32 4/3 u)))))))))
1.3b
(*.f32 (*.f32 3 s) (neg.f32 (log.f32 (neg.f32 (neg.f32 (/.f32 (-.f32 (*.f32 (*.f32 u u) 16/9) 16/9) (-.f32 (*.f32 u -4/3) 4/3)))))))
22.0b
(*.f32 s (+.f32 (*.f32 u 3) (*.f32 u (*.f32 u (+.f32 u 3/2)))))
1.1b
(*.f32 -3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
1.2b
(*.f32 s (*.f32 (log1p.f32 (/.f32 (-.f32 (*.f32 16/9 (*.f32 u u)) 1/9) (-.f32 (*.f32 u -4/3) 1/3))) -3))
0.8b
(*.f32 (*.f32 3 s) (exp.f32 (log.f32 (neg.f32 (log1p.f32 (*.f32 (+.f32 u -1/4) -4/3))))))
23.6b
(*.f32 s (*.f32 u (*.f32 u 3/2)))
20.4b
(*.f32 s (+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 u (*.f32 u (+.f32 u 3/2)))))
1.1b
(*.f32 s (*.f32 (log1p.f32 (/.f32 (fma.f32 (*.f32 u (*.f32 u -4/3)) -4/3 -1/9) (-.f32 (*.f32 u -4/3) 1/3))) -3))
1.1b
(*.f32 s (*.f32 (log1p.f32 (/.f32 (fma.f32 (*.f32 u u) 16/9 -1/9) (-.f32 (*.f32 u -4/3) 1/3))) -3))
0.6b
(*.f32 s (*.f32 (pow.f32 (cbrt.f32 -3) 3) (log1p.f32 (fma.f32 u -4/3 1/3))))
1.1b
(neg.f32 (*.f32 (*.f32 3 s) (log.f32 (+.f32 4/3 (*.f32 u -4/3)))))
1.3b
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (-.f32 4/3 (*.f32 u 4/3)))))
1.1b
(*.f32 (*.f32 3 s) (*.f32 1/3 (log.f32 (pow.f32 (+.f32 4/3 (*.f32 u -4/3)) -3))))
20.4b
(*.f32 s (+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 (*.f32 u u) (+.f32 u 3/2))))
1.0b
(neg.f32 (*.f32 3 (*.f32 s (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3)))))
1.5b
(*.f32 (*.f32 3 s) (neg.f32 (log.f32 (neg.f32 (neg.f32 (/.f32 (+.f32 64/27 (pow.f32 (*.f32 u -4/3) 3)) (+.f32 (*.f32 (*.f32 u u) 16/9) (-.f32 16/9 (*.f32 -16/9 u)))))))))
21.8b
(*.f32 s (+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 u (*.f32 u 3/2))))
20.4b
(*.f32 s (+.f32 (+.f32 (*.f32 (log.f32 3/4) 3) (*.f32 u 3)) (*.f32 u (*.f32 u (+.f32 u 3/2)))))
23.7b
(*.f32 s (*.f32 3 (+.f32 (log.f32 3/4) u)))
0.9b
(*.f32 s (*.f32 (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3)) -3))
21.8b
(*.f32 s (+.f32 (*.f32 (log.f32 3/4) 3) (*.f32 u (+.f32 3 (*.f32 u 3/2)))))
1.0b
(*.f32 (*.f32 3 s) (neg.f32 (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3))))
0.7b
(*.f32 (*.f32 3 s) (neg.f32 (log1p.f32 (*.f32 (+.f32 u -1/4) -4/3))))
0.7b
(*.f32 s (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3))
0.9b
(*.f32 (*.f32 3 s) (pow.f32 (sqrt.f32 (neg.f32 (log1p.f32 (*.f32 (+.f32 u -1/4) -4/3)))) 2))
23.7b
(*.f32 (+.f32 (log.f32 3/4) u) (*.f32 3 s))
23.7b
(*.f32 s (+.f32 (*.f32 3 u) (log.f32 27/64)))
29.6b
(*.f32 (*.f32 3 s) (log.f32 3/4))
23.7b
(+.f32 (*.f32 3 (*.f32 s (log.f32 3/4))) (*.f32 3 (*.f32 s u)))
22.0b
(*.f32 s (+.f32 (*.f32 u 3) (*.f32 (*.f32 u u) (+.f32 u 3/2))))
1.5b
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (+.f32 (-.f32 1 (*.f32 u 4/3)) 1/3))))
29.6b
(*.f32 3 (*.f32 s (log.f32 3/4)))
1.6b
(*.f32 s (log.f32 (*.f32 (pow.f32 (pow.f32 (cbrt.f32 (+.f32 (*.f32 u -4/3) 4/3)) 2) -3) (pow.f32 (cbrt.f32 (+.f32 (*.f32 u -4/3) 4/3)) -3))))
0.9b
(*.f32 (log.f32 (fma.f32 u -4/3 4/3)) (*.f32 s -3))
22.1b
(*.f32 s (+.f32 (*.f32 u 3) (*.f32 u (*.f32 u 3/2))))
1.2b
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (+.f32 (*.f32 (+.f32 u -1/4) -4/3) 1))))
0.9b
(*.f32 (*.f32 3 s) (neg.f32 (log1p.f32 (/.f32 (*.f32 (fma.f32 u u -1/16) -4/3) (+.f32 u 1/4)))))
1.3b
(*.f32 (*.f32 3 s) (neg.f32 (-.f32 (log.f32 (-.f32 16/9 (*.f32 16/9 (*.f32 u u)))) (log.f32 (+.f32 4/3 (*.f32 4/3 u))))))
1.3b
(*.f32 s (*.f32 (log1p.f32 (/.f32 (-.f32 (*.f32 (*.f32 u -4/3) (*.f32 u -4/3)) 1/9) (-.f32 (*.f32 u -4/3) 1/3))) -3))
1.0b
(*.f32 s (-.f32 (+.f32 1 (*.f32 (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3)) -3)) 1))
20.4b
(neg.f32 (*.f32 3 (*.f32 s (+.f32 (-.f32 (log.f32 4/3) u) (*.f32 (*.f32 u u) (+.f32 -1/2 (*.f32 -1/3 u)))))))
1.2b
(*.f32 3 (*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4/3 (-.f32 u 1/4)))))))
1.3b
(neg.f32 (*.f32 3 (*.f32 s (log1p.f32 (/.f32 (-.f32 (*.f32 (*.f32 u -4/3) (*.f32 u -4/3)) 1/9) (-.f32 (*.f32 u -4/3) 1/3))))))
1.0b
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
Compiler

Compiled 821 to 666 computations (18.9% saved)

regimes712.0ms (6.6%)

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

15 calls:

47.0ms
(log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4))))
46.0ms
(-.f32 u 1/4)
46.0ms
(-.f32 u 1/4)
46.0ms
(/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4)))
46.0ms
(log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4))))
Results
ErrorSegmentsBranch
0.6b1s
0.6b1u
0.6b1(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4)))))
0.6b1(*.f32 3 s)
0.6b1(*.f32 3 s)
0.6b1(log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4))))
0.6b1(log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4))))
0.6b1(/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4)))
0.6b1(/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4)))
0.6b1(-.f32 1 (/.f32 (-.f32 u 1/4) 3/4))
0.6b1(-.f32 1 (/.f32 (-.f32 u 1/4) 3/4))
0.6b1(/.f32 (-.f32 u 1/4) 3/4)
0.6b1(/.f32 (-.f32 u 1/4) 3/4)
0.6b1(-.f32 u 1/4)
0.6b1(-.f32 u 1/4)
Compiler

Compiled 1149 to 915 computations (20.4% saved)

regimes479.0ms (4.4%)

Counts
62 → 1
Calls
Call 1
Inputs
(*.f32 s (log.f32 (pow.f32 (fma.f32 u -4/3 4/3) -3)))
(*.f32 (*.f32 3 s) (neg.f32 (log.f32 (neg.f32 (neg.f32 (/.f32 (+.f32 64/27 (pow.f32 (*.f32 u -4/3) 3)) (+.f32 (*.f32 (*.f32 u u) 16/9) (-.f32 16/9 (*.f32 -16/9 u)))))))))
(*.f32 (*.f32 3 s) (neg.f32 (-.f32 (log.f32 (-.f32 16/9 (*.f32 16/9 (*.f32 u u)))) (log.f32 (+.f32 4/3 (*.f32 4/3 u))))))
(*.f32 s (*.f32 (log1p.f32 (/.f32 (fma.f32 (*.f32 u (*.f32 u -4/3)) -4/3 -1/9) (-.f32 (*.f32 u -4/3) 1/3))) -3))
(*.f32 s (*.f32 (log1p.f32 (/.f32 (fma.f32 (*.f32 u u) 16/9 -1/9) (-.f32 (*.f32 u -4/3) 1/3))) -3))
(*.f32 (*.f32 3 s) (neg.f32 (log1p.f32 (/.f32 (*.f32 (fma.f32 u u -1/16) -4/3) (+.f32 u 1/4)))))
(*.f32 (*.f32 3 s) (*.f32 1/3 (log.f32 (pow.f32 (+.f32 4/3 (*.f32 u -4/3)) -3))))
(*.f32 s (-.f32 (+.f32 1 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3)) 1))
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (fma.f32 (+.f32 u -1/4) -4/3 1))))
(*.f32 (*.f32 3 s) (neg.f32 (log.f32 (fma.f32 (+.f32 u -1/4) -4/3 1))))
(*.f32 s (log.f32 (pow.f32 (+.f32 (*.f32 -4/3 u) 4/3) -3)))
(neg.f32 (*.f32 3 (*.f32 s (log.f32 (fma.f32 -4/3 u 4/3)))))
(neg.f32 (*.f32 3 (*.f32 s (log1p.f32 (fma.f32 u -4/3 1/3)))))
(*.f32 (log.f32 (fma.f32 u -4/3 4/3)) (*.f32 s -3))
(*.f32 s (*.f32 -3 (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 s (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3))
(*.f32 (*.f32 3 s) (neg.f32 (log.f32 (neg.f32 (neg.f32 (-.f32 (/.f32 16/9 (+.f32 4/3 (*.f32 4/3 u))) (/.f32 (*.f32 (*.f32 u u) 16/9) (+.f32 4/3 (*.f32 4/3 u)))))))))
(*.f32 (*.f32 3 s) (neg.f32 (log.f32 (neg.f32 (neg.f32 (/.f32 (-.f32 (*.f32 (*.f32 u u) 16/9) 16/9) (-.f32 (*.f32 u -4/3) 4/3)))))))
(neg.f32 (*.f32 3 (*.f32 s (log1p.f32 (/.f32 (-.f32 (*.f32 (*.f32 u -4/3) (*.f32 u -4/3)) 1/9) (-.f32 (*.f32 u -4/3) 1/3))))))
(*.f32 s (*.f32 (log1p.f32 (/.f32 (-.f32 (*.f32 (*.f32 u -4/3) (*.f32 u -4/3)) 1/9) (-.f32 (*.f32 u -4/3) 1/3))) -3))
(*.f32 s (*.f32 (log1p.f32 (/.f32 (-.f32 (*.f32 16/9 (*.f32 u u)) 1/9) (-.f32 (*.f32 u -4/3) 1/3))) -3))
(*.f32 s (-.f32 (+.f32 1 (*.f32 (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3)) -3)) 1))
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (+.f32 (-.f32 1 (*.f32 u 4/3)) 1/3))))
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (+.f32 (*.f32 (+.f32 u -1/4) -4/3) 1))))
(*.f32 3 (*.f32 s (log.f32 (/.f32 1 (-.f32 1 (*.f32 4/3 (-.f32 u 1/4)))))))
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4)))))
(*.f32 (*.f32 3 s) (neg.f32 (log.f32 (neg.f32 (neg.f32 (+.f32 4/3 (*.f32 u -4/3)))))))
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (-.f32 4/3 (*.f32 u 4/3)))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 1 (*.f32 -4/3 (-.f32 u 1/4))))))
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (+.f32 (*.f32 -4/3 u) 4/3))))
(neg.f32 (*.f32 (*.f32 3 s) (log.f32 (+.f32 4/3 (*.f32 u -4/3)))))
(neg.f32 (*.f32 3 (*.f32 s (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3)))))
(*.f32 (*.f32 3 s) (neg.f32 (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3))))
(*.f32 (*.f32 3 s) (neg.f32 (log1p.f32 (*.f32 (+.f32 u -1/4) -4/3))))
(*.f32 s (*.f32 (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3)) -3))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 s (*.f32 u (fma.f32 u 3/2 3)))
(neg.f32 (*.f32 3 (*.f32 s (+.f32 (-.f32 (log.f32 4/3) u) (*.f32 (*.f32 u u) (+.f32 -1/2 (*.f32 -1/3 u)))))))
(*.f32 s (+.f32 (+.f32 (*.f32 (log.f32 3/4) 3) (*.f32 u 3)) (*.f32 u (*.f32 u (+.f32 u 3/2)))))
(*.f32 s (+.f32 (+.f32 (*.f32 (log.f32 3/4) 3) (*.f32 u 3)) (*.f32 (*.f32 u u) (+.f32 u 3/2))))
(*.f32 s (+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 u (*.f32 u (+.f32 u 3/2)))))
(*.f32 s (+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 (*.f32 u u) (+.f32 u 3/2))))
(neg.f32 (*.f32 3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 u (+.f32 (*.f32 -1/2 u) -1))))))
(*.f32 s (+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 3/2 (*.f32 u u))))
(*.f32 s (+.f32 (*.f32 u 3) (*.f32 u (*.f32 u (+.f32 u 3/2)))))
(*.f32 s (+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 u (*.f32 u 3/2))))
(*.f32 s (+.f32 (*.f32 u 3) (*.f32 (*.f32 u u) (+.f32 u 3/2))))
(*.f32 s (+.f32 (*.f32 (log.f32 3/4) 3) (*.f32 u (+.f32 3 (*.f32 u 3/2)))))
(*.f32 s (+.f32 (*.f32 u 3) (*.f32 u (*.f32 u 3/2))))
(+.f32 (*.f32 3 (*.f32 s (log.f32 3/4))) (*.f32 3 (*.f32 s u)))
(-.f32 (+.f32 1 (*.f32 s (*.f32 (log.f32 3/4) 3))) 1)
(*.f32 s (+.f32 (*.f32 (log.f32 4/3) -3) (*.f32 u 3)))
(*.f32 s (+.f32 (*.f32 3 u) (*.f32 -3 (log.f32 4/3))))
(*.f32 s (*.f32 u (*.f32 u 3/2)))
(*.f32 s (*.f32 3 (+.f32 (log.f32 3/4) u)))
(*.f32 s (*.f32 3 (+.f32 u (log.f32 3/4))))
(*.f32 s (+.f32 (*.f32 3 u) (log.f32 27/64)))
(*.f32 (+.f32 (log.f32 3/4) u) (*.f32 3 s))
(*.f32 s (*.f32 (-.f32 (log.f32 4/3) u) -3))
(*.f32 (*.f32 3 s) (log.f32 3/4))
(*.f32 3 (*.f32 s (log.f32 3/4)))
(*.f32 s (log.f32 27/64))
Outputs
(*.f32 (*.f32 3 s) (neg.f32 (log1p.f32 (*.f32 (+.f32 u -1/4) -4/3))))
Calls

14 calls:

37.0ms
(log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4))))
37.0ms
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4)))))
36.0ms
(/.f32 (-.f32 u 1/4) 3/4)
35.0ms
(/.f32 (-.f32 u 1/4) 3/4)
34.0ms
(/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4)))
Results
ErrorSegmentsBranch
0.7b1s
0.7b1u
0.7b1(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4)))))
0.7b1(*.f32 3 s)
0.7b1(log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4))))
0.7b1(log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4))))
0.7b1(/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4)))
0.7b1(/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4)))
0.7b1(-.f32 1 (/.f32 (-.f32 u 1/4) 3/4))
0.7b1(-.f32 1 (/.f32 (-.f32 u 1/4) 3/4))
0.7b1(/.f32 (-.f32 u 1/4) 3/4)
0.7b1(/.f32 (-.f32 u 1/4) 3/4)
0.7b1(-.f32 u 1/4)
0.7b1(-.f32 u 1/4)
Compiler

Compiled 918 to 719 computations (21.7% saved)

regimes60.0ms (0.6%)

Counts
28 → 1
Calls
Call 1
Inputs
(*.f32 s (*.f32 (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3)) -3))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 (*.f32 -4/3 u) 4/3))))
(*.f32 s (*.f32 u (fma.f32 u 3/2 3)))
(neg.f32 (*.f32 3 (*.f32 s (+.f32 (-.f32 (log.f32 4/3) u) (*.f32 (*.f32 u u) (+.f32 -1/2 (*.f32 -1/3 u)))))))
(*.f32 s (+.f32 (+.f32 (*.f32 (log.f32 3/4) 3) (*.f32 u 3)) (*.f32 u (*.f32 u (+.f32 u 3/2)))))
(*.f32 s (+.f32 (+.f32 (*.f32 (log.f32 3/4) 3) (*.f32 u 3)) (*.f32 (*.f32 u u) (+.f32 u 3/2))))
(*.f32 s (+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 u (*.f32 u (+.f32 u 3/2)))))
(*.f32 s (+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 (*.f32 u u) (+.f32 u 3/2))))
(neg.f32 (*.f32 3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 u (+.f32 (*.f32 -1/2 u) -1))))))
(*.f32 s (+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 3/2 (*.f32 u u))))
(*.f32 s (+.f32 (*.f32 u 3) (*.f32 u (*.f32 u (+.f32 u 3/2)))))
(*.f32 s (+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 u (*.f32 u 3/2))))
(*.f32 s (+.f32 (*.f32 u 3) (*.f32 (*.f32 u u) (+.f32 u 3/2))))
(*.f32 s (+.f32 (*.f32 (log.f32 3/4) 3) (*.f32 u (+.f32 3 (*.f32 u 3/2)))))
(*.f32 s (+.f32 (*.f32 u 3) (*.f32 u (*.f32 u 3/2))))
(+.f32 (*.f32 3 (*.f32 s (log.f32 3/4))) (*.f32 3 (*.f32 s u)))
(-.f32 (+.f32 1 (*.f32 s (*.f32 (log.f32 3/4) 3))) 1)
(*.f32 s (+.f32 (*.f32 (log.f32 4/3) -3) (*.f32 u 3)))
(*.f32 s (+.f32 (*.f32 3 u) (*.f32 -3 (log.f32 4/3))))
(*.f32 s (*.f32 u (*.f32 u 3/2)))
(*.f32 s (*.f32 3 (+.f32 (log.f32 3/4) u)))
(*.f32 s (*.f32 3 (+.f32 u (log.f32 3/4))))
(*.f32 s (+.f32 (*.f32 3 u) (log.f32 27/64)))
(*.f32 (+.f32 (log.f32 3/4) u) (*.f32 3 s))
(*.f32 s (*.f32 (-.f32 (log.f32 4/3) u) -3))
(*.f32 (*.f32 3 s) (log.f32 3/4))
(*.f32 3 (*.f32 s (log.f32 3/4)))
(*.f32 s (log.f32 27/64))
Outputs
(*.f32 s (*.f32 (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3)) -3))
Calls

4 calls:

13.0ms
(*.f32 3 s)
13.0ms
(*.f32 3 s)
13.0ms
s
13.0ms
u
Results
ErrorSegmentsBranch
0.9b1s
0.9b1u
0.9b1(*.f32 3 s)
0.9b1(*.f32 3 s)
Compiler

Compiled 332 to 240 computations (27.7% saved)

regimes113.0ms (1%)

Counts
26 → 1
Calls
Call 1
Inputs
(*.f32 s (*.f32 u (fma.f32 u 3/2 3)))
(neg.f32 (*.f32 3 (*.f32 s (+.f32 (-.f32 (log.f32 4/3) u) (*.f32 (*.f32 u u) (+.f32 -1/2 (*.f32 -1/3 u)))))))
(*.f32 s (+.f32 (+.f32 (*.f32 (log.f32 3/4) 3) (*.f32 u 3)) (*.f32 u (*.f32 u (+.f32 u 3/2)))))
(*.f32 s (+.f32 (+.f32 (*.f32 (log.f32 3/4) 3) (*.f32 u 3)) (*.f32 (*.f32 u u) (+.f32 u 3/2))))
(*.f32 s (+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 u (*.f32 u (+.f32 u 3/2)))))
(*.f32 s (+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 (*.f32 u u) (+.f32 u 3/2))))
(neg.f32 (*.f32 3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 u (+.f32 (*.f32 -1/2 u) -1))))))
(*.f32 s (+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 3/2 (*.f32 u u))))
(*.f32 s (+.f32 (*.f32 u 3) (*.f32 u (*.f32 u (+.f32 u 3/2)))))
(*.f32 s (+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 u (*.f32 u 3/2))))
(*.f32 s (+.f32 (*.f32 u 3) (*.f32 (*.f32 u u) (+.f32 u 3/2))))
(*.f32 s (+.f32 (*.f32 (log.f32 3/4) 3) (*.f32 u (+.f32 3 (*.f32 u 3/2)))))
(*.f32 s (+.f32 (*.f32 u 3) (*.f32 u (*.f32 u 3/2))))
(+.f32 (*.f32 3 (*.f32 s (log.f32 3/4))) (*.f32 3 (*.f32 s u)))
(-.f32 (+.f32 1 (*.f32 s (*.f32 (log.f32 3/4) 3))) 1)
(*.f32 s (+.f32 (*.f32 (log.f32 4/3) -3) (*.f32 u 3)))
(*.f32 s (+.f32 (*.f32 3 u) (*.f32 -3 (log.f32 4/3))))
(*.f32 s (*.f32 u (*.f32 u 3/2)))
(*.f32 s (*.f32 3 (+.f32 (log.f32 3/4) u)))
(*.f32 s (*.f32 3 (+.f32 u (log.f32 3/4))))
(*.f32 s (+.f32 (*.f32 3 u) (log.f32 27/64)))
(*.f32 (+.f32 (log.f32 3/4) u) (*.f32 3 s))
(*.f32 s (*.f32 (-.f32 (log.f32 4/3) u) -3))
(*.f32 (*.f32 3 s) (log.f32 3/4))
(*.f32 3 (*.f32 s (log.f32 3/4)))
(*.f32 s (log.f32 27/64))
Outputs
(*.f32 s (+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 u (*.f32 u (+.f32 u 3/2)))))
Calls

4 calls:

61.0ms
s
16.0ms
u
14.0ms
(*.f32 3 s)
13.0ms
(*.f32 3 s)
Results
ErrorSegmentsBranch
20.4b1s
20.4b1u
20.4b1(*.f32 3 s)
20.4b1(*.f32 3 s)
Compiler

Compiled 312 to 224 computations (28.2% saved)

regimes96.0ms (0.9%)

Counts
20 → 1
Calls
Call 1
Inputs
(neg.f32 (*.f32 3 (*.f32 s (+.f32 (log.f32 4/3) (*.f32 u (+.f32 (*.f32 -1/2 u) -1))))))
(*.f32 s (+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 3/2 (*.f32 u u))))
(*.f32 s (+.f32 (*.f32 u 3) (*.f32 u (*.f32 u (+.f32 u 3/2)))))
(*.f32 s (+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 u (*.f32 u 3/2))))
(*.f32 s (+.f32 (*.f32 u 3) (*.f32 (*.f32 u u) (+.f32 u 3/2))))
(*.f32 s (+.f32 (*.f32 (log.f32 3/4) 3) (*.f32 u (+.f32 3 (*.f32 u 3/2)))))
(*.f32 s (+.f32 (*.f32 u 3) (*.f32 u (*.f32 u 3/2))))
(+.f32 (*.f32 3 (*.f32 s (log.f32 3/4))) (*.f32 3 (*.f32 s u)))
(-.f32 (+.f32 1 (*.f32 s (*.f32 (log.f32 3/4) 3))) 1)
(*.f32 s (+.f32 (*.f32 (log.f32 4/3) -3) (*.f32 u 3)))
(*.f32 s (+.f32 (*.f32 3 u) (*.f32 -3 (log.f32 4/3))))
(*.f32 s (*.f32 u (*.f32 u 3/2)))
(*.f32 s (*.f32 3 (+.f32 (log.f32 3/4) u)))
(*.f32 s (*.f32 3 (+.f32 u (log.f32 3/4))))
(*.f32 s (+.f32 (*.f32 3 u) (log.f32 27/64)))
(*.f32 (+.f32 (log.f32 3/4) u) (*.f32 3 s))
(*.f32 s (*.f32 (-.f32 (log.f32 4/3) u) -3))
(*.f32 (*.f32 3 s) (log.f32 3/4))
(*.f32 3 (*.f32 s (log.f32 3/4)))
(*.f32 s (log.f32 27/64))
Outputs
(*.f32 s (+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 3/2 (*.f32 u u))))
Calls

4 calls:

58.0ms
(*.f32 3 s)
11.0ms
u
10.0ms
s
10.0ms
(*.f32 3 s)
Results
ErrorSegmentsBranch
21.8b1s
21.8b1u
21.8b1(*.f32 3 s)
21.8b1(*.f32 3 s)
Compiler

Compiled 217 to 160 computations (26.3% saved)

regimes37.0ms (0.3%)

Counts
14 → 1
Calls
Call 1
Inputs
(*.f32 s (+.f32 (*.f32 u 3) (*.f32 u (*.f32 u 3/2))))
(+.f32 (*.f32 3 (*.f32 s (log.f32 3/4))) (*.f32 3 (*.f32 s u)))
(-.f32 (+.f32 1 (*.f32 s (*.f32 (log.f32 3/4) 3))) 1)
(*.f32 s (+.f32 (*.f32 (log.f32 4/3) -3) (*.f32 u 3)))
(*.f32 s (+.f32 (*.f32 3 u) (*.f32 -3 (log.f32 4/3))))
(*.f32 s (*.f32 u (*.f32 u 3/2)))
(*.f32 s (*.f32 3 (+.f32 (log.f32 3/4) u)))
(*.f32 s (*.f32 3 (+.f32 u (log.f32 3/4))))
(*.f32 s (+.f32 (*.f32 3 u) (log.f32 27/64)))
(*.f32 (+.f32 (log.f32 3/4) u) (*.f32 3 s))
(*.f32 s (*.f32 (-.f32 (log.f32 4/3) u) -3))
(*.f32 (*.f32 3 s) (log.f32 3/4))
(*.f32 3 (*.f32 s (log.f32 3/4)))
(*.f32 s (log.f32 27/64))
Outputs
(*.f32 s (+.f32 (*.f32 u 3) (*.f32 u (*.f32 u 3/2))))
Calls

4 calls:

9.0ms
(*.f32 3 s)
8.0ms
u
8.0ms
(*.f32 3 s)
8.0ms
s
Results
ErrorSegmentsBranch
22.1b1s
22.1b1u
22.1b1(*.f32 3 s)
22.1b1(*.f32 3 s)
Compiler

Compiled 134 to 102 computations (23.9% saved)

regimes34.0ms (0.3%)

Counts
12 → 1
Calls
Call 1
Inputs
(-.f32 (+.f32 1 (*.f32 s (*.f32 (log.f32 3/4) 3))) 1)
(*.f32 s (+.f32 (*.f32 (log.f32 4/3) -3) (*.f32 u 3)))
(*.f32 s (+.f32 (*.f32 3 u) (*.f32 -3 (log.f32 4/3))))
(*.f32 s (*.f32 u (*.f32 u 3/2)))
(*.f32 s (*.f32 3 (+.f32 (log.f32 3/4) u)))
(*.f32 s (*.f32 3 (+.f32 u (log.f32 3/4))))
(*.f32 s (+.f32 (*.f32 3 u) (log.f32 27/64)))
(*.f32 (+.f32 (log.f32 3/4) u) (*.f32 3 s))
(*.f32 s (*.f32 (-.f32 (log.f32 4/3) u) -3))
(*.f32 (*.f32 3 s) (log.f32 3/4))
(*.f32 3 (*.f32 s (log.f32 3/4)))
(*.f32 s (log.f32 27/64))
Outputs
(*.f32 s (*.f32 u (*.f32 u 3/2)))
Calls

4 calls:

8.0ms
s
8.0ms
(*.f32 3 s)
7.0ms
(*.f32 3 s)
7.0ms
u
Results
ErrorSegmentsBranch
23.6b1s
23.6b1u
23.6b1(*.f32 3 s)
23.6b1(*.f32 3 s)
Compiler

Compiled 111 to 86 computations (22.5% saved)

regimes12.0ms (0.1%)

Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0.0b (-0%)

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

3 calls:

4.0ms
(*.f32 3 s)
4.0ms
s
3.0ms
u
Results
ErrorSegmentsBranch
29.6b1s
29.6b1u
29.6b1(*.f32 3 s)
Compiler

Compiled 29 to 23 computations (20.7% saved)

simplify55.0ms (0.5%)

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

Useful iterations: 2 (0.0ms)

IterNodesCost
048127
181127
289125
3101125
4106125
5109125
6110125
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(*.f32 s (*.f32 (pow.f32 (cbrt.f32 -3) 3) (log1p.f32 (fma.f32 u -4/3 1/3))))
(*.f32 (*.f32 3 s) (neg.f32 (log1p.f32 (*.f32 (+.f32 u -1/4) -4/3))))
(*.f32 s (*.f32 (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3)) -3))
(*.f32 s (+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 u (*.f32 u (+.f32 u 3/2)))))
(*.f32 s (+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 3/2 (*.f32 u u))))
(*.f32 s (+.f32 (*.f32 u 3) (*.f32 u (*.f32 u 3/2))))
(*.f32 s (*.f32 u (*.f32 u 3/2)))
(*.f32 s (log.f32 27/64))
Outputs
(*.f32 s (*.f32 (pow.f32 (cbrt.f32 -3) 3) (log1p.f32 (fma.f32 u -4/3 1/3))))
(*.f32 (*.f32 3 s) (neg.f32 (log1p.f32 (*.f32 (+.f32 u -1/4) -4/3))))
(*.f32 (*.f32 s 3) (neg.f32 (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4)))))
(*.f32 (log1p.f32 (*.f32 -4/3 (+.f32 u -1/4))) (*.f32 s -3))
(*.f32 s (*.f32 (log1p.f32 (+.f32 (*.f32 u -4/3) 1/3)) -3))
(*.f32 s (*.f32 -3 (log1p.f32 (+.f32 1/3 (*.f32 u -4/3)))))
(*.f32 s (+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 u (*.f32 u (+.f32 u 3/2)))))
(*.f32 s (+.f32 (*.f32 3 (+.f32 u (log.f32 3/4))) (*.f32 u (*.f32 u (+.f32 u 3/2)))))
(*.f32 s (+.f32 (*.f32 (+.f32 (log.f32 3/4) u) 3) (*.f32 3/2 (*.f32 u u))))
(*.f32 s (+.f32 (*.f32 3 (+.f32 u (log.f32 3/4))) (*.f32 3/2 (*.f32 u u))))
(*.f32 s (+.f32 (*.f32 u 3) (*.f32 u (*.f32 u 3/2))))
(*.f32 s (+.f32 (*.f32 3 u) (*.f32 u (*.f32 u 3/2))))
(*.f32 s (*.f32 u (*.f32 u 3/2)))
(*.f32 s (log.f32 27/64))
Compiler

Compiled 100 to 77 computations (23% saved)

soundness180.0ms (1.7%)

Algorithm
egg-herbie
Rules
738×fma-def_binary32
494×fma-neg_binary32
130×cancel-sign-sub-inv_binary32
102×distribute-rgt-in_binary32
88×sub-neg_binary32
Iterations

Useful iterations: 6 (0.0ms)

IterNodesCost
01420
13319
26117
313915
424115
533315
644013
763413
8101713
9125813
10164213
11190613
12234413
13266013
14269513
15269613
16269613
Stop Event
saturated
Compiler

Compiled 466 to 406 computations (12.9% saved)

end54.0ms (0.5%)

Compiler

Compiled 86 to 63 computations (26.7% saved)

Profiling

Loading profile data...