Details

Time bar (total: 4.4s)

analyze108.0ms (2.5%)

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
0.1%0%99.9%13
0.1%0%99.9%14
Compiler

Compiled 31 to 25 computations (19.4% saved)

sample1.5s (35.2%)

Results
1.5s8256×body128valid
Compiler

Compiled 62 to 50 computations (19.4% saved)

preprocess77.0ms (1.7%)

Algorithm
egg-herbie
Rules
1254×fma-def_binary32
520×fma-neg_binary32
232×distribute-rgt-in_binary32
207×cancel-sign-sub-inv_binary32
177×sub-neg_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02140
15238
210534
324930
443530
559430
678726
7114626
8188626
9248726
10264026
11313226
12362426
13378526
14387926
15453926
16471126
17497026
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 3 (*.f32 s (neg.f32 (log.f32 (-.f32 1 (-.f32 (/.f32 u 3/4) 1/3))))))
(*.f32 3 (*.f32 s (neg.f32 (log1p.f32 (/.f32 (neg.f32 (+.f32 u -1/4)) 3/4)))))
(*.f32 s (*.f32 -3 (log1p.f32 (+.f32 (neg.f32 (/.f32 u 3/4)) 1/3))))
(*.f32 s (*.f32 (log.f32 (-.f32 4/3 (/.f32 u 3/4))) -3))
(*.f32 s (*.f32 (log1p.f32 (+.f32 1/3 (/.f32 u -3/4))) -3))
(*.f32 s (*.f32 (log1p.f32 (+.f32 1/3 (*.f32 -4/3 u))) -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)))))
(neg.f32 (*.f32 (*.f32 3 u) (log1p.f32 (/.f32 (neg.f32 (+.f32 s -1/4)) 3/4))))
(*.f32 u (*.f32 -3 (log1p.f32 (neg.f32 (/.f32 (+.f32 s -1/4) 3/4)))))
(*.f32 (log.f32 (-.f32 4/3 (/.f32 s 3/4))) (*.f32 u -3))
(*.f32 (log1p.f32 (*.f32 -4/3 (+.f32 s -1/4))) (*.f32 u -3))
(*.f32 u (*.f32 (log.f32 (+.f32 (*.f32 -4/3 s) 4/3)) -3))
(*.f32 u (*.f32 (log.f32 (fma.f32 -4/3 s 4/3)) -3))
(*.f32 (log.f32 (fma.f32 s -4/3 4/3)) (*.f32 u -3))
Compiler

Compiled 16 to 14 computations (12.5% saved)

simplify39.0ms (0.9%)

Algorithm
egg-herbie
Rules
764×fma-def_binary32
494×fma-neg_binary32
125×cancel-sign-sub-inv_binary32
104×distribute-rgt-in_binary32
87×sub-neg_binary32
Iterations

Useful iterations: 6 (0.0ms)

IterNodesCost
01420
13319
26117
313915
424215
533415
644113
763513
8101313
9127313
10165913
11192113
12235813
13267413
14270913
15271013
16271013
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 (neg.f32 (/.f32 u 3/4)) 1/3))))
(*.f32 s (*.f32 (log.f32 (-.f32 4/3 (/.f32 u 3/4))) -3))
(*.f32 (log.f32 (+.f32 (/.f32 u -3/4) 4/3)) (*.f32 s -3))
(*.f32 (log.f32 (+.f32 (*.f32 -4/3 u) 4/3)) (*.f32 s -3))
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))

prune4.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

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

Compiled 79 to 67 computations (15.2% saved)

localize20.0ms (0.5%)

Local error

Found 3 expressions with local error:

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

series255.0ms (5.8%)

Counts
3 → 48
Calls

12 calls:

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

rewrite42.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
823×expm1-log1p-u_binary32
822×log1p-expm1-u_binary32
97×add-sqr-sqrt_binary32
92×add-exp-log_binary32
92×add-log-exp_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01025
120225
2221625
Stop Event
node limit
Counts
3 → 54
Calls
Call 1
Inputs
(log1p.f32 (fma.f32 u -4/3 1/3))
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))
(fma.f32 u -4/3 1/3)
Outputs
((#(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 (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))) (pow.f32 (cbrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.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 *.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 exp.f32 (*.f32 (log.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -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)) (*.f32 s -3))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (+.f32 (fma.f32 u -4/3 1/3) 1) (*.f32 s -3)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -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 (*.f32 s -3) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (*.f32 s -3) 3) (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))) 1))))))
((#(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)) (cbrt.f32 (pow.f32 (fma.f32 u -4/3 1/3) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (pow.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 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))))))

simplify38.0ms (0.9%)

Algorithm
egg-herbie
Rules
572×fma-def_binary32
504×fma-neg_binary32
470×cancel-sign-sub-inv_binary32
391×sub-neg_binary32
220×unsub-neg_binary32
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0102820
1320770
21022704
33542704
Stop Event
node limit
Counts
102 → 106
Calls
Call 1
Inputs
(log.f32 4/3)
(-.f32 (log.f32 4/3) u)
(-.f32 (log.f32 4/3) (+.f32 (*.f32 1/2 (pow.f32 u 2)) u))
(-.f32 (log.f32 4/3) (+.f32 (*.f32 1/3 (pow.f32 u 3)) (+.f32 (*.f32 1/2 (pow.f32 u 2)) u)))
(-.f32 (log.f32 -4/3) (log.f32 (/.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/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (log.f32 (/.f32 1 u)) (/.f32 1 u))))
(-.f32 (log.f32 -4/3) (+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (log.f32 (/.f32 1 u)) (+.f32 (*.f32 1/3 (/.f32 1 (pow.f32 u 3))) (/.f32 1 u)))))
(-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))
(-.f32 (log.f32 4/3) (+.f32 (/.f32 1 u) (log.f32 (/.f32 -1 u))))
(-.f32 (log.f32 4/3) (+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (/.f32 1 u) (log.f32 (/.f32 -1 u)))))
(-.f32 (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 (/.f32 1 u) (log.f32 (/.f32 -1 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 (*.f32 3/2 (*.f32 s (pow.f32 u 2))) (*.f32 3 (*.f32 s u))) (*.f32 3 (*.f32 s (log.f32 4/3))))
(-.f32 (+.f32 (*.f32 3/2 (*.f32 s (pow.f32 u 2))) (+.f32 (*.f32 s (pow.f32 u 3)) (*.f32 3 (*.f32 s u)))) (*.f32 3 (*.f32 s (log.f32 4/3))))
(*.f32 -3 (*.f32 s (-.f32 (log.f32 -4/3) (log.f32 (/.f32 1 u)))))
(-.f32 (+.f32 (*.f32 3 (/.f32 s u)) (*.f32 3 (*.f32 s (log.f32 (/.f32 1 u))))) (*.f32 3 (*.f32 s (log.f32 -4/3))))
(-.f32 (+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 3 (*.f32 s (log.f32 (/.f32 1 u)))) (*.f32 3/2 (/.f32 s (pow.f32 u 2))))) (*.f32 3 (*.f32 s (log.f32 -4/3))))
(-.f32 (+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 3 (*.f32 s (log.f32 (/.f32 1 u)))) (+.f32 (/.f32 s (pow.f32 u 3)) (*.f32 3/2 (/.f32 s (pow.f32 u 2)))))) (*.f32 3 (*.f32 s (log.f32 -4/3))))
(*.f32 -3 (*.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))))
(-.f32 (+.f32 (*.f32 3 (*.f32 s (log.f32 (/.f32 -1 u)))) (*.f32 3 (/.f32 s u))) (*.f32 3 (*.f32 s (log.f32 4/3))))
(-.f32 (+.f32 (*.f32 3 (*.f32 s (log.f32 (/.f32 -1 u)))) (+.f32 (*.f32 3 (/.f32 s u)) (*.f32 3/2 (/.f32 s (pow.f32 u 2))))) (*.f32 3 (*.f32 s (log.f32 4/3))))
(-.f32 (+.f32 (*.f32 3 (*.f32 s (log.f32 (/.f32 -1 u)))) (+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (/.f32 s (pow.f32 u 3)) (*.f32 3/2 (/.f32 s (pow.f32 u 2)))))) (*.f32 3 (*.f32 s (log.f32 4/3))))
(*.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)))))
1/3
(-.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 -4/3 u)
(-.f32 1/3 (*.f32 4/3 u))
(-.f32 1/3 (*.f32 4/3 u))
(-.f32 1/3 (*.f32 4/3 u))
Outputs
(log.f32 4/3)
(-.f32 (log.f32 4/3) u)
(-.f32 (log.f32 4/3) (+.f32 (*.f32 1/2 (pow.f32 u 2)) u))
(-.f32 (log.f32 4/3) (fma.f32 1/2 (*.f32 u u) u))
(-.f32 (log.f32 4/3) (fma.f32 u (*.f32 u 1/2) u))
(-.f32 (log.f32 4/3) (+.f32 (*.f32 1/3 (pow.f32 u 3)) (+.f32 (*.f32 1/2 (pow.f32 u 2)) u)))
(-.f32 (log.f32 4/3) (fma.f32 1/3 (pow.f32 u 3) (fma.f32 1/2 (*.f32 u u) u)))
(-.f32 (log.f32 4/3) (fma.f32 u (*.f32 u 1/2) (fma.f32 1/3 (pow.f32 u 3) u)))
(-.f32 (log.f32 -4/3) (log.f32 (/.f32 1 u)))
(-.f32 (log.f32 -4/3) (neg.f32 (log.f32 u)))
(+.f32 (log.f32 -4/3) (log.f32 u))
(-.f32 (log.f32 -4/3) (+.f32 (log.f32 (/.f32 1 u)) (/.f32 1 u)))
(-.f32 (log.f32 -4/3) (+.f32 (/.f32 1 u) (neg.f32 (log.f32 u))))
(+.f32 (log.f32 -4/3) (-.f32 (log.f32 u) (/.f32 1 u)))
(+.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) (/.f32 -1 u))
(-.f32 (log.f32 -4/3) (+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (log.f32 (/.f32 1 u)) (/.f32 1 u))))
(-.f32 (log.f32 -4/3) (+.f32 (+.f32 (/.f32 1 u) (neg.f32 (log.f32 u))) (/.f32 1/2 (*.f32 u u))))
(-.f32 (-.f32 (log.f32 -4/3) (-.f32 (/.f32 1/2 (*.f32 u u)) (log.f32 u))) (/.f32 1 u))
(+.f32 (log.f32 -4/3) (+.f32 (log.f32 u) (+.f32 (/.f32 -1/2 (*.f32 u u)) (/.f32 -1 u))))
(-.f32 (log.f32 -4/3) (+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (log.f32 (/.f32 1 u)) (+.f32 (*.f32 1/3 (/.f32 1 (pow.f32 u 3))) (/.f32 1 u)))))
(-.f32 (log.f32 -4/3) (+.f32 (+.f32 (/.f32 1/2 (*.f32 u u)) (neg.f32 (log.f32 u))) (+.f32 (/.f32 1 u) (/.f32 1/3 (pow.f32 u 3)))))
(-.f32 (-.f32 (log.f32 -4/3) (-.f32 (/.f32 1/2 (*.f32 u u)) (log.f32 u))) (+.f32 (/.f32 1 u) (/.f32 1/3 (pow.f32 u 3))))
(+.f32 (-.f32 (+.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) (/.f32 -1 u)) (/.f32 1/3 (pow.f32 u 3))) (/.f32 -1/2 (*.f32 u u)))
(+.f32 (+.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) (/.f32 -1/2 (*.f32 u u))) (-.f32 (/.f32 -1 u) (/.f32 1/3 (pow.f32 u 3))))
(-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))
(-.f32 (log.f32 4/3) (+.f32 (/.f32 1 u) (log.f32 (/.f32 -1 u))))
(-.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (/.f32 1 u))
(+.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (/.f32 -1 u))
(-.f32 (log.f32 4/3) (+.f32 (*.f32 1/2 (/.f32 1 (pow.f32 u 2))) (+.f32 (/.f32 1 u) (log.f32 (/.f32 -1 u)))))
(-.f32 (-.f32 (log.f32 4/3) (/.f32 1/2 (*.f32 u u))) (+.f32 (/.f32 1 u) (log.f32 (/.f32 -1 u))))
(-.f32 (log.f32 4/3) (+.f32 (log.f32 (/.f32 -1 u)) (+.f32 (/.f32 1 u) (/.f32 1/2 (*.f32 u u)))))
(-.f32 (+.f32 (log.f32 4/3) (+.f32 (/.f32 -1/2 (*.f32 u u)) (/.f32 -1 u))) (log.f32 (/.f32 -1 u)))
(-.f32 (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 (/.f32 1 u) (log.f32 (/.f32 -1 u))))))
(-.f32 (-.f32 (log.f32 4/3) (/.f32 1/2 (*.f32 u u))) (+.f32 (/.f32 1/3 (pow.f32 u 3)) (+.f32 (/.f32 1 u) (log.f32 (/.f32 -1 u)))))
(-.f32 (log.f32 4/3) (+.f32 (/.f32 1/3 (pow.f32 u 3)) (+.f32 (log.f32 (/.f32 -1 u)) (+.f32 (/.f32 1 u) (/.f32 1/2 (*.f32 u u))))))
(-.f32 (-.f32 (log.f32 4/3) (+.f32 (/.f32 1 u) (+.f32 (/.f32 1/2 (*.f32 u u)) (/.f32 1/3 (pow.f32 u 3))))) (log.f32 (/.f32 -1 u)))
(-.f32 (+.f32 (log.f32 4/3) (+.f32 (/.f32 -1/2 (*.f32 u u)) (/.f32 -1 u))) (+.f32 (/.f32 1/3 (pow.f32 u 3)) (log.f32 (/.f32 -1 u))))
(*.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))))
(*.f32 3 (-.f32 (*.f32 u s) (*.f32 (log.f32 4/3) s)))
(*.f32 3 (*.f32 s (-.f32 u (log.f32 4/3))))
(*.f32 s (*.f32 3 (-.f32 u (log.f32 4/3))))
(-.f32 (+.f32 (*.f32 3/2 (*.f32 s (pow.f32 u 2))) (*.f32 3 (*.f32 s u))) (*.f32 3 (*.f32 s (log.f32 4/3))))
(+.f32 (*.f32 (*.f32 3/2 s) (*.f32 u u)) (*.f32 3 (-.f32 (*.f32 u s) (*.f32 (log.f32 4/3) s))))
(fma.f32 3/2 (*.f32 u (*.f32 u s)) (*.f32 3 (*.f32 s (-.f32 u (log.f32 4/3)))))
(fma.f32 (*.f32 u u) (*.f32 s 3/2) (*.f32 s (*.f32 3 (-.f32 u (log.f32 4/3)))))
(-.f32 (+.f32 (*.f32 3/2 (*.f32 s (pow.f32 u 2))) (+.f32 (*.f32 s (pow.f32 u 3)) (*.f32 3 (*.f32 s u)))) (*.f32 3 (*.f32 s (log.f32 4/3))))
(+.f32 (fma.f32 3/2 (*.f32 (*.f32 u u) s) (fma.f32 s (pow.f32 u 3) (*.f32 3 (*.f32 u s)))) (*.f32 (*.f32 -3 s) (log.f32 4/3)))
(+.f32 (fma.f32 3/2 (*.f32 u (*.f32 u s)) (*.f32 (pow.f32 u 3) s)) (*.f32 3 (*.f32 s (-.f32 u (log.f32 4/3)))))
(+.f32 (*.f32 s (*.f32 3 (-.f32 u (log.f32 4/3)))) (*.f32 (*.f32 u (*.f32 u s)) (+.f32 3/2 u)))
(*.f32 -3 (*.f32 s (-.f32 (log.f32 -4/3) (log.f32 (/.f32 1 u)))))
(*.f32 (*.f32 -3 s) (-.f32 (log.f32 -4/3) (neg.f32 (log.f32 u))))
(*.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) (*.f32 -3 s))
(-.f32 (+.f32 (*.f32 3 (/.f32 s u)) (*.f32 3 (*.f32 s (log.f32 (/.f32 1 u))))) (*.f32 3 (*.f32 s (log.f32 -4/3))))
(+.f32 (*.f32 3 (+.f32 (/.f32 s u) (*.f32 (neg.f32 (log.f32 u)) s))) (*.f32 -3 (*.f32 (log.f32 -4/3) s)))
(fma.f32 3 (/.f32 s u) (*.f32 (*.f32 3 s) (-.f32 (neg.f32 (log.f32 u)) (log.f32 -4/3))))
(fma.f32 3 (/.f32 s u) (*.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) (*.f32 -3 s)))
(-.f32 (+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 3 (*.f32 s (log.f32 (/.f32 1 u)))) (*.f32 3/2 (/.f32 s (pow.f32 u 2))))) (*.f32 3 (*.f32 s (log.f32 -4/3))))
(+.f32 (fma.f32 3 (/.f32 s u) (fma.f32 3 (*.f32 (neg.f32 (log.f32 u)) s) (*.f32 3/2 (/.f32 s (*.f32 u u))))) (*.f32 -3 (*.f32 (log.f32 -4/3) s)))
(fma.f32 3 (/.f32 s u) (+.f32 (*.f32 3/2 (/.f32 s (*.f32 u u))) (*.f32 (*.f32 3 s) (-.f32 (neg.f32 (log.f32 u)) (log.f32 -4/3)))))
(+.f32 (*.f32 (/.f32 s u) (+.f32 3 (/.f32 3/2 u))) (*.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) (*.f32 -3 s)))
(-.f32 (+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 3 (*.f32 s (log.f32 (/.f32 1 u)))) (+.f32 (/.f32 s (pow.f32 u 3)) (*.f32 3/2 (/.f32 s (pow.f32 u 2)))))) (*.f32 3 (*.f32 s (log.f32 -4/3))))
(+.f32 (fma.f32 3 (/.f32 s u) (fma.f32 3 (*.f32 (neg.f32 (log.f32 u)) s) (+.f32 (*.f32 3/2 (/.f32 s (*.f32 u u))) (/.f32 s (pow.f32 u 3))))) (*.f32 -3 (*.f32 (log.f32 -4/3) s)))
(fma.f32 3 (/.f32 s u) (+.f32 (fma.f32 3/2 (/.f32 s (*.f32 u u)) (/.f32 s (pow.f32 u 3))) (*.f32 (*.f32 3 s) (-.f32 (neg.f32 (log.f32 u)) (log.f32 -4/3)))))
(+.f32 (/.f32 s (pow.f32 u 3)) (+.f32 (*.f32 (/.f32 s u) (+.f32 3 (/.f32 3/2 u))) (*.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) (*.f32 -3 s))))
(*.f32 -3 (*.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))))
(*.f32 -3 (*.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) s))
(*.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 -3 s))
(-.f32 (+.f32 (*.f32 3 (*.f32 s (log.f32 (/.f32 -1 u)))) (*.f32 3 (/.f32 s u))) (*.f32 3 (*.f32 s (log.f32 4/3))))
(+.f32 (*.f32 3 (+.f32 (*.f32 (log.f32 (/.f32 -1 u)) s) (/.f32 s u))) (*.f32 (*.f32 -3 s) (log.f32 4/3)))
(*.f32 3 (-.f32 (fma.f32 (log.f32 (/.f32 -1 u)) s (/.f32 s u)) (*.f32 (log.f32 4/3) s)))
(fma.f32 3 (/.f32 s u) (*.f32 (*.f32 3 s) (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4/3))))
(-.f32 (+.f32 (*.f32 3 (*.f32 s (log.f32 (/.f32 -1 u)))) (+.f32 (*.f32 3 (/.f32 s u)) (*.f32 3/2 (/.f32 s (pow.f32 u 2))))) (*.f32 3 (*.f32 s (log.f32 4/3))))
(+.f32 (fma.f32 3 (*.f32 (log.f32 (/.f32 -1 u)) s) (fma.f32 3 (/.f32 s u) (*.f32 3/2 (/.f32 s (*.f32 u u))))) (*.f32 (*.f32 -3 s) (log.f32 4/3)))
(+.f32 (fma.f32 3 (fma.f32 (log.f32 (/.f32 -1 u)) s (/.f32 s u)) (*.f32 3/2 (/.f32 s (*.f32 u u)))) (*.f32 (log.f32 4/3) (*.f32 -3 s)))
(+.f32 (*.f32 (/.f32 s u) (+.f32 3 (/.f32 3/2 u))) (*.f32 (*.f32 3 s) (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4/3))))
(-.f32 (+.f32 (*.f32 3 (*.f32 s (log.f32 (/.f32 -1 u)))) (+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (/.f32 s (pow.f32 u 3)) (*.f32 3/2 (/.f32 s (pow.f32 u 2)))))) (*.f32 3 (*.f32 s (log.f32 4/3))))
(+.f32 (fma.f32 3 (*.f32 (log.f32 (/.f32 -1 u)) s) (fma.f32 3 (/.f32 s u) (+.f32 (*.f32 3/2 (/.f32 s (*.f32 u u))) (/.f32 s (pow.f32 u 3))))) (*.f32 (*.f32 -3 s) (log.f32 4/3)))
(+.f32 (fma.f32 3 (fma.f32 (log.f32 (/.f32 -1 u)) s (/.f32 s u)) (fma.f32 3/2 (/.f32 s (*.f32 u u)) (/.f32 s (pow.f32 u 3)))) (*.f32 (log.f32 4/3) (*.f32 -3 s)))
(+.f32 (/.f32 s (pow.f32 u 3)) (+.f32 (*.f32 (/.f32 s u) (+.f32 3 (/.f32 3/2 u))) (*.f32 (*.f32 3 s) (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4/3)))))
(*.f32 -3 (*.f32 s (log.f32 (-.f32 4/3 (*.f32 4/3 u)))))
(*.f32 (*.f32 -3 s) (log.f32 (+.f32 4/3 (*.f32 u -4/3))))
(*.f32 (log.f32 (+.f32 4/3 (*.f32 u -4/3))) (*.f32 -3 s))
(*.f32 (log.f32 (fma.f32 u -4/3 4/3)) (*.f32 -3 s))
(*.f32 -3 (*.f32 s (log.f32 (-.f32 4/3 (*.f32 4/3 u)))))
(*.f32 (*.f32 -3 s) (log.f32 (+.f32 4/3 (*.f32 u -4/3))))
(*.f32 (log.f32 (+.f32 4/3 (*.f32 u -4/3))) (*.f32 -3 s))
(*.f32 (log.f32 (fma.f32 u -4/3 4/3)) (*.f32 -3 s))
(*.f32 -3 (*.f32 s (log.f32 (-.f32 4/3 (*.f32 4/3 u)))))
(*.f32 (*.f32 -3 s) (log.f32 (+.f32 4/3 (*.f32 u -4/3))))
(*.f32 (log.f32 (+.f32 4/3 (*.f32 u -4/3))) (*.f32 -3 s))
(*.f32 (log.f32 (fma.f32 u -4/3 4/3)) (*.f32 -3 s))
(*.f32 -3 (*.f32 s (log.f32 (-.f32 4/3 (*.f32 4/3 u)))))
(*.f32 (*.f32 -3 s) (log.f32 (+.f32 4/3 (*.f32 u -4/3))))
(*.f32 (log.f32 (+.f32 4/3 (*.f32 u -4/3))) (*.f32 -3 s))
(*.f32 (log.f32 (fma.f32 u -4/3 4/3)) (*.f32 -3 s))
(*.f32 -3 (*.f32 s (log.f32 (-.f32 4/3 (*.f32 4/3 u)))))
(*.f32 (*.f32 -3 s) (log.f32 (+.f32 4/3 (*.f32 u -4/3))))
(*.f32 (log.f32 (+.f32 4/3 (*.f32 u -4/3))) (*.f32 -3 s))
(*.f32 (log.f32 (fma.f32 u -4/3 4/3)) (*.f32 -3 s))
(*.f32 -3 (*.f32 s (log.f32 (-.f32 4/3 (*.f32 4/3 u)))))
(*.f32 (*.f32 -3 s) (log.f32 (+.f32 4/3 (*.f32 u -4/3))))
(*.f32 (log.f32 (+.f32 4/3 (*.f32 u -4/3))) (*.f32 -3 s))
(*.f32 (log.f32 (fma.f32 u -4/3 4/3)) (*.f32 -3 s))
(*.f32 -3 (*.f32 s (log.f32 (-.f32 4/3 (*.f32 4/3 u)))))
(*.f32 (*.f32 -3 s) (log.f32 (+.f32 4/3 (*.f32 u -4/3))))
(*.f32 (log.f32 (+.f32 4/3 (*.f32 u -4/3))) (*.f32 -3 s))
(*.f32 (log.f32 (fma.f32 u -4/3 4/3)) (*.f32 -3 s))
(*.f32 -3 (*.f32 s (log.f32 (-.f32 4/3 (*.f32 4/3 u)))))
(*.f32 (*.f32 -3 s) (log.f32 (+.f32 4/3 (*.f32 u -4/3))))
(*.f32 (log.f32 (+.f32 4/3 (*.f32 u -4/3))) (*.f32 -3 s))
(*.f32 (log.f32 (fma.f32 u -4/3 4/3)) (*.f32 -3 s))
(*.f32 -3 (*.f32 s (log.f32 (-.f32 4/3 (*.f32 4/3 u)))))
(*.f32 (*.f32 -3 s) (log.f32 (+.f32 4/3 (*.f32 u -4/3))))
(*.f32 (log.f32 (+.f32 4/3 (*.f32 u -4/3))) (*.f32 -3 s))
(*.f32 (log.f32 (fma.f32 u -4/3 4/3)) (*.f32 -3 s))
(*.f32 -3 (*.f32 s (log.f32 (-.f32 4/3 (*.f32 4/3 u)))))
(*.f32 (*.f32 -3 s) (log.f32 (+.f32 4/3 (*.f32 u -4/3))))
(*.f32 (log.f32 (+.f32 4/3 (*.f32 u -4/3))) (*.f32 -3 s))
(*.f32 (log.f32 (fma.f32 u -4/3 4/3)) (*.f32 -3 s))
(*.f32 -3 (*.f32 s (log.f32 (-.f32 4/3 (*.f32 4/3 u)))))
(*.f32 (*.f32 -3 s) (log.f32 (+.f32 4/3 (*.f32 u -4/3))))
(*.f32 (log.f32 (+.f32 4/3 (*.f32 u -4/3))) (*.f32 -3 s))
(*.f32 (log.f32 (fma.f32 u -4/3 4/3)) (*.f32 -3 s))
(*.f32 -3 (*.f32 s (log.f32 (-.f32 4/3 (*.f32 4/3 u)))))
(*.f32 (*.f32 -3 s) (log.f32 (+.f32 4/3 (*.f32 u -4/3))))
(*.f32 (log.f32 (+.f32 4/3 (*.f32 u -4/3))) (*.f32 -3 s))
(*.f32 (log.f32 (fma.f32 u -4/3 4/3)) (*.f32 -3 s))
1/3
(-.f32 1/3 (*.f32 4/3 u))
(+.f32 1/3 (*.f32 u -4/3))
(fma.f32 u -4/3 1/3)
(-.f32 1/3 (*.f32 4/3 u))
(+.f32 1/3 (*.f32 u -4/3))
(fma.f32 u -4/3 1/3)
(-.f32 1/3 (*.f32 4/3 u))
(+.f32 1/3 (*.f32 u -4/3))
(fma.f32 u -4/3 1/3)
(*.f32 -4/3 u)
(*.f32 u -4/3)
(-.f32 1/3 (*.f32 4/3 u))
(+.f32 1/3 (*.f32 u -4/3))
(fma.f32 u -4/3 1/3)
(-.f32 1/3 (*.f32 4/3 u))
(+.f32 1/3 (*.f32 u -4/3))
(fma.f32 u -4/3 1/3)
(-.f32 1/3 (*.f32 4/3 u))
(+.f32 1/3 (*.f32 u -4/3))
(fma.f32 u -4/3 1/3)
(*.f32 -4/3 u)
(*.f32 u -4/3)
(-.f32 1/3 (*.f32 4/3 u))
(+.f32 1/3 (*.f32 u -4/3))
(fma.f32 u -4/3 1/3)
(-.f32 1/3 (*.f32 4/3 u))
(+.f32 1/3 (*.f32 u -4/3))
(fma.f32 u -4/3 1/3)
(-.f32 1/3 (*.f32 4/3 u))
(+.f32 1/3 (*.f32 u -4/3))
(fma.f32 u -4/3 1/3)

prune74.0ms (1.7%)

Pruning

14 alts after pruning (13 fresh and 1 done)

PrunedKeptTotal
New9412106
Fresh011
Picked011
Done000
Total9414108
Error
0.1b
Counts
108 → 14
Alt Table
StatusErrorProgram
1.2b
(*.f32 (log.f32 (+.f32 (fma.f32 u -4/3 1/3) 1)) (*.f32 s -3))
1.3b
(*.f32 -3 (*.f32 s (log.f32 (-.f32 4/3 (*.f32 4/3 u)))))
1.3b
(*.f32 (log1p.f32 (log.f32 (exp.f32 (fma.f32 u -4/3 1/3)))) (*.f32 s -3))
16.1b
(cbrt.f32 (*.f32 (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 3) (pow.f32 (*.f32 s -3) 3)))
1.0b
(pow.f32 (cbrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))) 3)
1.3b
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4)))))
1.0b
(*.f32 (log1p.f32 (-.f32 1/3 (*.f32 4/3 u))) (*.f32 s -3))
1.2b
(*.f32 (log1p.f32 (pow.f32 (cbrt.f32 (fma.f32 u -4/3 1/3)) 3)) (*.f32 s -3))
0.7b
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))
2.8b
(exp.f32 (log.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))))
8.5b
(*.f32 (-.f32 (exp.f32 (log1p.f32 (log1p.f32 (fma.f32 u -4/3 1/3)))) 1) (*.f32 s -3))
1.0b
(*.f32 (pow.f32 (cbrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) 3) (*.f32 s -3))
1.1b
(*.f32 (log.f32 (fma.f32 u -4/3 4/3)) (*.f32 -3 s))
0.9b
(pow.f32 (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))) 2)
Compiler

Compiled 1940 to 1541 computations (20.6% saved)

localize28.0ms (0.6%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.4b
(fma.f32 u -4/3 1/3)
0.4b
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))
0.5b
(log1p.f32 (fma.f32 u -4/3 1/3))
0.5b
(pow.f32 (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))) 2)

series28.0ms (0.6%)

Counts
1 → 12
Calls

6 calls:

TimeVariablePointExpression
7.0ms
s
@-inf
(pow.f32 (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))) 2)
5.0ms
u
@inf
(pow.f32 (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))) 2)
5.0ms
s
@0
(pow.f32 (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))) 2)
4.0ms
s
@inf
(pow.f32 (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))) 2)
4.0ms
u
@-inf
(pow.f32 (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))) 2)

rewrite37.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
492×log-prod_binary32
281×pow2_binary32
201×expm1-udef_binary32
201×log1p-udef_binary32
198×pow1/3_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01313
126813
2266413
Stop Event
node limit
Counts
1 → 39
Calls
Call 1
Inputs
(pow.f32 (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))) 2)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -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 s -3))) 2)) (log.f32 (cbrt.f32 (pow.f32 (+.f32 (fma.f32 u -4/3 1/3) 1) (*.f32 s -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (pow.f32 (+.f32 (fma.f32 u -4/3 1/3) 1) (*.f32 s -3)))) (log.f32 (sqrt.f32 (pow.f32 (+.f32 (fma.f32 u -4/3 1/3) 1) (*.f32 s -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 s (*.f32 -3 (log1p.f32 (fma.f32 u -4/3 1/3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 s -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)) (*.f32 s -3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))) (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (*.f32 s -3)) 2) (*.f32 (cbrt.f32 (*.f32 s -3)) (log1p.f32 (fma.f32 u -4/3 1/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))) (*.f32 s -3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))) (pow.f32 (cbrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))) (*.f32 (cbrt.f32 (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3)))) (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))) 2) (cbrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3)) 1/4) (*.f32 (pow.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3)) 1/4) (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (*.f32 s -3)) (*.f32 (sqrt.f32 (*.f32 s -3)) (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))) (*.f32 (sqrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) (*.f32 s -3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) (*.f32 (sqrt.f32 (*.f32 s -3)) (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s) -3)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (pow.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3)) 1/4) 3) (pow.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) -3) s)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (pow.f32 (cbrt.f32 (*.f32 s -3)) 2)) (cbrt.f32 (*.f32 s -3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (sqrt.f32 (*.f32 s -3))) (sqrt.f32 (*.f32 s -3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (*.f32 s -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 (*.f32 s -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 (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))) (cbrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3)))) (cbrt.f32 (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))) (sqrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3)))) (sqrt.f32 (*.f32 s -3)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (+.f32 (fma.f32 u -4/3 1/3) 1) (*.f32 s -3)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -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 (*.f32 s -3) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (*.f32 s -3) 3) (pow.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))) 1))))))

simplify29.0ms (0.7%)

Algorithm
egg-herbie
Rules
337×distribute-lft-out_binary32
311×fma-def_binary32
234×distribute-rgt-in_binary32
201×associate-*l*_binary32
196×distribute-lft-in_binary32
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
058386
1150310
2377287
31215278
42753275
Stop Event
node limit
Counts
51 → 63
Calls
Call 1
Inputs
(pow.f32 (sqrt.f32 (*.f32 -3 (*.f32 s (log.f32 4/3)))) 2)
(+.f32 (*.f32 3 (*.f32 s u)) (pow.f32 (sqrt.f32 (*.f32 -3 (*.f32 s (log.f32 4/3)))) 2))
(+.f32 (*.f32 3/2 (*.f32 s (pow.f32 u 2))) (+.f32 (*.f32 3 (*.f32 s u)) (pow.f32 (sqrt.f32 (*.f32 -3 (*.f32 s (log.f32 4/3)))) 2)))
(+.f32 (*.f32 3/2 (*.f32 s (pow.f32 u 2))) (+.f32 (*.f32 s (pow.f32 u 3)) (+.f32 (*.f32 3 (*.f32 s u)) (pow.f32 (sqrt.f32 (*.f32 -3 (*.f32 s (log.f32 4/3)))) 2))))
(pow.f32 (sqrt.f32 (*.f32 -3 (*.f32 s (-.f32 (log.f32 -4/3) (log.f32 (/.f32 1 u)))))) 2)
(+.f32 (*.f32 3 (/.f32 s u)) (pow.f32 (sqrt.f32 (*.f32 -3 (*.f32 s (-.f32 (log.f32 -4/3) (log.f32 (/.f32 1 u)))))) 2))
(+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (pow.f32 (sqrt.f32 (*.f32 -3 (*.f32 s (-.f32 (log.f32 -4/3) (log.f32 (/.f32 1 u)))))) 2) (*.f32 3/2 (/.f32 s (pow.f32 u 2)))))
(+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (pow.f32 (sqrt.f32 (*.f32 -3 (*.f32 s (-.f32 (log.f32 -4/3) (log.f32 (/.f32 1 u)))))) 2) (+.f32 (/.f32 s (pow.f32 u 3)) (*.f32 3/2 (/.f32 s (pow.f32 u 2))))))
(pow.f32 (sqrt.f32 (*.f32 -3 (*.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))))) 2)
(+.f32 (pow.f32 (sqrt.f32 (*.f32 -3 (*.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))))) 2) (*.f32 3 (/.f32 s u)))
(+.f32 (pow.f32 (sqrt.f32 (*.f32 -3 (*.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))))) 2) (+.f32 (*.f32 3 (/.f32 s u)) (*.f32 3/2 (/.f32 s (pow.f32 u 2)))))
(+.f32 (pow.f32 (sqrt.f32 (*.f32 -3 (*.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))))) 2) (+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (/.f32 s (pow.f32 u 3)) (*.f32 3/2 (/.f32 s (pow.f32 u 2))))))
Outputs
(pow.f32 (sqrt.f32 (*.f32 -3 (*.f32 s (log.f32 4/3)))) 2)
(*.f32 -3 (*.f32 s (log.f32 4/3)))
(*.f32 (log.f32 4/3) (*.f32 -3 s))
(+.f32 (*.f32 3 (*.f32 s u)) (pow.f32 (sqrt.f32 (*.f32 -3 (*.f32 s (log.f32 4/3)))) 2))
(fma.f32 3 (*.f32 s u) (pow.f32 (sqrt.f32 (*.f32 -3 (*.f32 s (log.f32 4/3)))) 2))
(fma.f32 3 (*.f32 s u) (*.f32 -3 (*.f32 s (log.f32 4/3))))
(*.f32 s (+.f32 (*.f32 -3 (log.f32 4/3)) (*.f32 3 u)))
(*.f32 s (+.f32 (*.f32 3 u) (*.f32 -3 (log.f32 4/3))))
(+.f32 (*.f32 3/2 (*.f32 s (pow.f32 u 2))) (+.f32 (*.f32 3 (*.f32 s u)) (pow.f32 (sqrt.f32 (*.f32 -3 (*.f32 s (log.f32 4/3)))) 2)))
(fma.f32 3/2 (*.f32 s (*.f32 u u)) (fma.f32 3 (*.f32 s u) (pow.f32 (sqrt.f32 (*.f32 -3 (*.f32 s (log.f32 4/3)))) 2)))
(fma.f32 3/2 (*.f32 s (*.f32 u u)) (fma.f32 3 (*.f32 s u) (*.f32 -3 (*.f32 s (log.f32 4/3)))))
(fma.f32 -3 (*.f32 s (log.f32 4/3)) (*.f32 s (+.f32 (*.f32 3 u) (*.f32 3/2 (*.f32 u u)))))
(*.f32 s (+.f32 (*.f32 -3 (log.f32 4/3)) (*.f32 u (+.f32 3 (*.f32 u 3/2)))))
(+.f32 (*.f32 3/2 (*.f32 s (pow.f32 u 2))) (+.f32 (*.f32 s (pow.f32 u 3)) (+.f32 (*.f32 3 (*.f32 s u)) (pow.f32 (sqrt.f32 (*.f32 -3 (*.f32 s (log.f32 4/3)))) 2))))
(fma.f32 3/2 (*.f32 s (*.f32 u u)) (fma.f32 s (pow.f32 u 3) (fma.f32 3 (*.f32 s u) (pow.f32 (sqrt.f32 (*.f32 -3 (*.f32 s (log.f32 4/3)))) 2))))
(fma.f32 3/2 (*.f32 s (*.f32 u u)) (fma.f32 s (pow.f32 u 3) (fma.f32 3 (*.f32 s u) (*.f32 -3 (*.f32 s (log.f32 4/3))))))
(+.f32 (*.f32 s (+.f32 (*.f32 -3 (log.f32 4/3)) (*.f32 3 u))) (*.f32 (*.f32 s (*.f32 u u)) (+.f32 3/2 u)))
(*.f32 s (+.f32 (+.f32 (*.f32 3 u) (*.f32 -3 (log.f32 4/3))) (*.f32 (*.f32 u u) (+.f32 u 3/2))))
(*.f32 s (+.f32 (*.f32 -3 (log.f32 4/3)) (*.f32 u (+.f32 3 (*.f32 u (+.f32 u 3/2))))))
(pow.f32 (sqrt.f32 (*.f32 -3 (*.f32 s (-.f32 (log.f32 -4/3) (log.f32 (/.f32 1 u)))))) 2)
(pow.f32 (sqrt.f32 (*.f32 -3 (*.f32 s (-.f32 (log.f32 -4/3) (neg.f32 (log.f32 u)))))) 2)
(*.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) (*.f32 -3 s))
(*.f32 s (*.f32 -3 (+.f32 (log.f32 -4/3) (log.f32 u))))
(+.f32 (*.f32 3 (/.f32 s u)) (pow.f32 (sqrt.f32 (*.f32 -3 (*.f32 s (-.f32 (log.f32 -4/3) (log.f32 (/.f32 1 u)))))) 2))
(fma.f32 3 (/.f32 s u) (pow.f32 (sqrt.f32 (*.f32 -3 (*.f32 s (-.f32 (log.f32 -4/3) (neg.f32 (log.f32 u)))))) 2))
(fma.f32 3 (/.f32 s u) (*.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) (*.f32 -3 s)))
(*.f32 s (+.f32 (*.f32 -3 (+.f32 (log.f32 -4/3) (log.f32 u))) (/.f32 3 u)))
(+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (pow.f32 (sqrt.f32 (*.f32 -3 (*.f32 s (-.f32 (log.f32 -4/3) (log.f32 (/.f32 1 u)))))) 2) (*.f32 3/2 (/.f32 s (pow.f32 u 2)))))
(+.f32 (fma.f32 3 (/.f32 s u) (pow.f32 (sqrt.f32 (*.f32 -3 (*.f32 s (-.f32 (log.f32 -4/3) (neg.f32 (log.f32 u)))))) 2)) (*.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 u)) (*.f32 -3 s))))
(fma.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (log.f32 u))) (*.f32 (/.f32 s u) (+.f32 (/.f32 3/2 u) 3)))
(fma.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (log.f32 u))) (*.f32 (/.f32 s u) (+.f32 3 (/.f32 3/2 u))))
(+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (pow.f32 (sqrt.f32 (*.f32 -3 (*.f32 s (-.f32 (log.f32 -4/3) (log.f32 (/.f32 1 u)))))) 2) (+.f32 (/.f32 s (pow.f32 u 3)) (*.f32 3/2 (/.f32 s (pow.f32 u 2))))))
(+.f32 (fma.f32 3 (/.f32 s u) (pow.f32 (sqrt.f32 (*.f32 -3 (*.f32 s (-.f32 (log.f32 -4/3) (neg.f32 (log.f32 u)))))) 2)) (+.f32 (*.f32 3/2 (/.f32 s (*.f32 u u))) (/.f32 s (pow.f32 u 3))))
(+.f32 (*.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) (*.f32 -3 s)) (fma.f32 3 (/.f32 s u) (fma.f32 3/2 (/.f32 s (*.f32 u u)) (/.f32 s (pow.f32 u 3)))))
(+.f32 (/.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 3/2 u) 3))))
(+.f32 (/.f32 s (pow.f32 u 3)) (fma.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (log.f32 u))) (*.f32 (/.f32 s u) (+.f32 3 (/.f32 3/2 u)))))
(pow.f32 (sqrt.f32 (*.f32 -3 (*.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))))) 2)
(*.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 -3 s))
(*.f32 s (*.f32 -3 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))))
(+.f32 (pow.f32 (sqrt.f32 (*.f32 -3 (*.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))))) 2) (*.f32 3 (/.f32 s u)))
(+.f32 (*.f32 3 (/.f32 s u)) (pow.f32 (sqrt.f32 (*.f32 -3 (*.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))))) 2))
(fma.f32 3 (/.f32 s u) (*.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 -3 s)))
(fma.f32 -3 (*.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))) (*.f32 3 (/.f32 s u)))
(*.f32 s (+.f32 (/.f32 3 u) (*.f32 -3 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))))))
(+.f32 (pow.f32 (sqrt.f32 (*.f32 -3 (*.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))))) 2) (+.f32 (*.f32 3 (/.f32 s u)) (*.f32 3/2 (/.f32 s (pow.f32 u 2)))))
(+.f32 (pow.f32 (sqrt.f32 (*.f32 -3 (*.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))))) 2) (fma.f32 3 (/.f32 s u) (*.f32 3/2 (/.f32 s (*.f32 u u)))))
(+.f32 (*.f32 (/.f32 3/2 u) (/.f32 s u)) (fma.f32 3 (/.f32 s u) (*.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 -3 s))))
(fma.f32 -3 (*.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))) (*.f32 (/.f32 s u) (+.f32 (/.f32 3/2 u) 3)))
(fma.f32 -3 (*.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))) (*.f32 (/.f32 s u) (+.f32 3 (/.f32 3/2 u))))
(+.f32 (pow.f32 (sqrt.f32 (*.f32 -3 (*.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))))) 2) (+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (/.f32 s (pow.f32 u 3)) (*.f32 3/2 (/.f32 s (pow.f32 u 2))))))
(+.f32 (pow.f32 (sqrt.f32 (*.f32 -3 (*.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))))) 2) (fma.f32 3 (/.f32 s u) (+.f32 (*.f32 3/2 (/.f32 s (*.f32 u u))) (/.f32 s (pow.f32 u 3)))))
(+.f32 (fma.f32 3/2 (/.f32 s (*.f32 u u)) (/.f32 s (pow.f32 u 3))) (fma.f32 3 (/.f32 s u) (*.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) (*.f32 -3 s))))
(fma.f32 -3 (*.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))) (+.f32 (/.f32 s (pow.f32 u 3)) (*.f32 (/.f32 s u) (+.f32 (/.f32 3/2 u) 3))))
(+.f32 (/.f32 s (pow.f32 u 3)) (fma.f32 -3 (*.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))) (*.f32 (/.f32 s u) (+.f32 3 (/.f32 3/2 u)))))

prune119.0ms (2.7%)

Pruning

13 alts after pruning (11 fresh and 2 done)

PrunedKeptTotal
New1636169
Fresh7512
Picked011
Done011
Total17013183
Error
0.0b
Counts
183 → 13
Alt Table
StatusErrorProgram
1.0b
(pow.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))) 3)) 2)
1.3b
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4)))))
1.0b
(*.f32 (*.f32 (*.f32 s -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.7b
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))
1.0b
(*.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (pow.f32 (cbrt.f32 (*.f32 s -3)) 2)) (cbrt.f32 (*.f32 s -3)))
1.0b
(*.f32 (pow.f32 (cbrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) 3) (*.f32 s -3))
0.7b
(*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))
1.1b
(*.f32 (log.f32 (fma.f32 u -4/3 4/3)) (*.f32 -3 s))
1.0b
(pow.f32 (sqrt.f32 (*.f32 (log1p.f32 (log1p.f32 (expm1.f32 (fma.f32 u -4/3 1/3)))) (*.f32 s -3))) 2)
1.0b
(pow.f32 (cbrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))) 3)
1.0b
(*.f32 (pow.f32 (cbrt.f32 (*.f32 s -3)) 2) (*.f32 (cbrt.f32 (*.f32 s -3)) (log1p.f32 (fma.f32 u -4/3 1/3))))
0.9b
(pow.f32 (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))) 2)
8.5b
(*.f32 (-.f32 (exp.f32 (log1p.f32 (log1p.f32 (fma.f32 u -4/3 1/3)))) 1) (*.f32 s -3))
Compiler

Compiled 3360 to 2730 computations (18.8% saved)

localize21.0ms (0.5%)

Local error

Found 4 expressions with local error:

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

series481.0ms (10.9%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
104.0ms
s
@0
(*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))
90.0ms
s
@0
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s)
74.0ms
s
@-inf
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s)
72.0ms
s
@-inf
(*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))
68.0ms
s
@inf
(*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))

rewrite39.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
821×expm1-log1p-u_binary32
820×log1p-expm1-u_binary32
97×add-sqr-sqrt_binary32
92×add-exp-log_binary32
92×add-log-exp_binary32
Iterations

Useful iterations: 0 (0.0ms)

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

simplify43.0ms (1%)

Algorithm
egg-herbie
Rules
630×fma-def_binary32
618×fma-neg_binary32
319×sub-neg_binary32
218×cancel-sign-sub-inv_binary32
194×unsub-neg_binary32
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0101961
1331913
21032815
33553809
Stop Event
node limit
Counts
76 → 77
Calls
Call 1
Inputs
(*.f32 -3 (*.f32 s (log.f32 4/3)))
(-.f32 (*.f32 3 (*.f32 s u)) (*.f32 3 (*.f32 s (log.f32 4/3))))
(-.f32 (+.f32 (*.f32 3/2 (*.f32 s (pow.f32 u 2))) (*.f32 3 (*.f32 s u))) (*.f32 3 (*.f32 s (log.f32 4/3))))
(-.f32 (+.f32 (*.f32 3/2 (*.f32 s (pow.f32 u 2))) (+.f32 (*.f32 s (pow.f32 u 3)) (*.f32 3 (*.f32 s u)))) (*.f32 3 (*.f32 s (log.f32 4/3))))
(*.f32 -3 (*.f32 s (-.f32 (log.f32 -4/3) (log.f32 (/.f32 1 u)))))
(-.f32 (+.f32 (*.f32 3 (/.f32 s u)) (*.f32 3 (*.f32 s (log.f32 (/.f32 1 u))))) (*.f32 3 (*.f32 s (log.f32 -4/3))))
(-.f32 (+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 3 (*.f32 s (log.f32 (/.f32 1 u)))) (*.f32 3/2 (/.f32 s (pow.f32 u 2))))) (*.f32 3 (*.f32 s (log.f32 -4/3))))
(-.f32 (+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 3 (*.f32 s (log.f32 (/.f32 1 u)))) (+.f32 (/.f32 s (pow.f32 u 3)) (*.f32 3/2 (/.f32 s (pow.f32 u 2)))))) (*.f32 3 (*.f32 s (log.f32 -4/3))))
(*.f32 -3 (*.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))))
(-.f32 (+.f32 (*.f32 3 (*.f32 s (log.f32 (/.f32 -1 u)))) (*.f32 3 (/.f32 s u))) (*.f32 3 (*.f32 s (log.f32 4/3))))
(-.f32 (+.f32 (*.f32 3 (*.f32 s (log.f32 (/.f32 -1 u)))) (+.f32 (*.f32 3 (/.f32 s u)) (*.f32 3/2 (/.f32 s (pow.f32 u 2))))) (*.f32 3 (*.f32 s (log.f32 4/3))))
(-.f32 (+.f32 (*.f32 3 (*.f32 s (log.f32 (/.f32 -1 u)))) (+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (/.f32 s (pow.f32 u 3)) (*.f32 3/2 (/.f32 s (pow.f32 u 2)))))) (*.f32 3 (*.f32 s (log.f32 4/3))))
(*.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 s (log.f32 4/3))
(-.f32 (*.f32 s (log.f32 4/3)) (*.f32 s u))
(-.f32 (*.f32 s (log.f32 4/3)) (+.f32 (*.f32 1/2 (*.f32 s (pow.f32 u 2))) (*.f32 s u)))
(-.f32 (*.f32 s (log.f32 4/3)) (+.f32 (*.f32 1/2 (*.f32 s (pow.f32 u 2))) (+.f32 (*.f32 1/3 (*.f32 s (pow.f32 u 3))) (*.f32 s u))))
(*.f32 s (-.f32 (log.f32 -4/3) (log.f32 (/.f32 1 u))))
(-.f32 (*.f32 s (log.f32 -4/3)) (+.f32 (/.f32 s u) (*.f32 s (log.f32 (/.f32 1 u)))))
(-.f32 (*.f32 s (log.f32 -4/3)) (+.f32 (/.f32 s u) (+.f32 (*.f32 s (log.f32 (/.f32 1 u))) (*.f32 1/2 (/.f32 s (pow.f32 u 2))))))
(-.f32 (*.f32 s (log.f32 -4/3)) (+.f32 (/.f32 s u) (+.f32 (*.f32 s (log.f32 (/.f32 1 u))) (+.f32 (*.f32 1/3 (/.f32 s (pow.f32 u 3))) (*.f32 1/2 (/.f32 s (pow.f32 u 2)))))))
(*.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))))
(-.f32 (*.f32 s (log.f32 4/3)) (+.f32 (*.f32 s (log.f32 (/.f32 -1 u))) (/.f32 s u)))
(-.f32 (*.f32 s (log.f32 4/3)) (+.f32 (*.f32 s (log.f32 (/.f32 -1 u))) (+.f32 (/.f32 s u) (*.f32 1/2 (/.f32 s (pow.f32 u 2))))))
(-.f32 (*.f32 s (log.f32 4/3)) (+.f32 (*.f32 s (log.f32 (/.f32 -1 u))) (+.f32 (/.f32 s u) (+.f32 (*.f32 1/3 (/.f32 s (pow.f32 u 3))) (*.f32 1/2 (/.f32 s (pow.f32 u 2)))))))
(*.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 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))))
Outputs
(*.f32 -3 (*.f32 s (log.f32 4/3)))
(*.f32 (*.f32 -3 s) (log.f32 4/3))
(*.f32 s (*.f32 -3 (log.f32 4/3)))
(-.f32 (*.f32 3 (*.f32 s u)) (*.f32 3 (*.f32 s (log.f32 4/3))))
(*.f32 3 (-.f32 (*.f32 s u) (*.f32 s (log.f32 4/3))))
(*.f32 3 (*.f32 s (-.f32 u (log.f32 4/3))))
(*.f32 s (*.f32 (-.f32 u (log.f32 4/3)) 3))
(-.f32 (+.f32 (*.f32 3/2 (*.f32 s (pow.f32 u 2))) (*.f32 3 (*.f32 s u))) (*.f32 3 (*.f32 s (log.f32 4/3))))
(+.f32 (*.f32 3/2 (*.f32 s (*.f32 u u))) (*.f32 3 (-.f32 (*.f32 s u) (*.f32 s (log.f32 4/3)))))
(fma.f32 3/2 (*.f32 s (*.f32 u u)) (*.f32 3 (*.f32 s (-.f32 u (log.f32 4/3)))))
(fma.f32 3 (*.f32 s (-.f32 u (log.f32 4/3))) (*.f32 (*.f32 s u) (*.f32 u 3/2)))
(fma.f32 (*.f32 s 3) (-.f32 u (log.f32 4/3)) (*.f32 s (*.f32 u (*.f32 u 3/2))))
(-.f32 (+.f32 (*.f32 3/2 (*.f32 s (pow.f32 u 2))) (+.f32 (*.f32 s (pow.f32 u 3)) (*.f32 3 (*.f32 s u)))) (*.f32 3 (*.f32 s (log.f32 4/3))))
(+.f32 (fma.f32 3/2 (*.f32 s (*.f32 u u)) (fma.f32 s (pow.f32 u 3) (*.f32 (*.f32 3 s) u))) (*.f32 (*.f32 -3 s) (log.f32 4/3)))
(+.f32 (fma.f32 3/2 (*.f32 s (*.f32 u u)) (*.f32 s (pow.f32 u 3))) (*.f32 3 (*.f32 s (-.f32 u (log.f32 4/3)))))
(+.f32 (*.f32 s (*.f32 (-.f32 u (log.f32 4/3)) 3)) (*.f32 (*.f32 s (*.f32 u u)) (+.f32 3/2 u)))
(+.f32 (*.f32 s (*.f32 (-.f32 u (log.f32 4/3)) 3)) (*.f32 (*.f32 s (*.f32 u u)) (+.f32 u 3/2)))
(*.f32 -3 (*.f32 s (-.f32 (log.f32 -4/3) (log.f32 (/.f32 1 u)))))
(*.f32 -3 (*.f32 s (-.f32 (log.f32 -4/3) (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 (*.f32 3 (/.f32 s u)) (*.f32 3 (*.f32 s (log.f32 (/.f32 1 u))))) (*.f32 3 (*.f32 s (log.f32 -4/3))))
(+.f32 (*.f32 3 (+.f32 (/.f32 s u) (*.f32 s (neg.f32 (log.f32 u))))) (*.f32 -3 (*.f32 s (log.f32 -4/3))))
(*.f32 3 (-.f32 (fma.f32 s (neg.f32 (log.f32 u)) (/.f32 s u)) (*.f32 s (log.f32 -4/3))))
(fma.f32 3 (/.f32 s u) (*.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) (*.f32 -3 s)))
(-.f32 (+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 3 (*.f32 s (log.f32 (/.f32 1 u)))) (*.f32 3/2 (/.f32 s (pow.f32 u 2))))) (*.f32 3 (*.f32 s (log.f32 -4/3))))
(+.f32 (fma.f32 3 (/.f32 s u) (fma.f32 3 (*.f32 s (neg.f32 (log.f32 u))) (*.f32 3/2 (/.f32 s (*.f32 u u))))) (*.f32 -3 (*.f32 s (log.f32 -4/3))))
(fma.f32 3 (/.f32 s u) (+.f32 (*.f32 3/2 (/.f32 s (*.f32 u u))) (*.f32 (*.f32 s 3) (-.f32 (neg.f32 (log.f32 u)) (log.f32 -4/3)))))
(+.f32 (*.f32 (/.f32 s u) (+.f32 3 (/.f32 3/2 u))) (*.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) (*.f32 -3 s)))
(-.f32 (+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (*.f32 3 (*.f32 s (log.f32 (/.f32 1 u)))) (+.f32 (/.f32 s (pow.f32 u 3)) (*.f32 3/2 (/.f32 s (pow.f32 u 2)))))) (*.f32 3 (*.f32 s (log.f32 -4/3))))
(+.f32 (fma.f32 3 (/.f32 s u) (fma.f32 3 (*.f32 s (neg.f32 (log.f32 u))) (+.f32 (*.f32 3/2 (/.f32 s (*.f32 u u))) (/.f32 s (pow.f32 u 3))))) (*.f32 -3 (*.f32 s (log.f32 -4/3))))
(fma.f32 3 (/.f32 s u) (+.f32 (fma.f32 3/2 (/.f32 s (*.f32 u u)) (/.f32 s (pow.f32 u 3))) (*.f32 (*.f32 s 3) (-.f32 (neg.f32 (log.f32 u)) (log.f32 -4/3)))))
(+.f32 (/.f32 s (pow.f32 u 3)) (+.f32 (*.f32 (/.f32 s u) (+.f32 3 (/.f32 3/2 u))) (*.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) (*.f32 -3 s))))
(*.f32 -3 (*.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))))
(-.f32 (+.f32 (*.f32 3 (*.f32 s (log.f32 (/.f32 -1 u)))) (*.f32 3 (/.f32 s u))) (*.f32 3 (*.f32 s (log.f32 4/3))))
(+.f32 (*.f32 3 (fma.f32 s (log.f32 (/.f32 -1 u)) (/.f32 s u))) (*.f32 (*.f32 -3 s) (log.f32 4/3)))
(*.f32 3 (-.f32 (fma.f32 s (log.f32 (/.f32 -1 u)) (/.f32 s u)) (*.f32 s (log.f32 4/3))))
(fma.f32 3 (/.f32 s u) (*.f32 (*.f32 s 3) (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4/3))))
(-.f32 (+.f32 (*.f32 3 (*.f32 s (log.f32 (/.f32 -1 u)))) (+.f32 (*.f32 3 (/.f32 s u)) (*.f32 3/2 (/.f32 s (pow.f32 u 2))))) (*.f32 3 (*.f32 s (log.f32 4/3))))
(+.f32 (+.f32 (*.f32 3 (fma.f32 s (log.f32 (/.f32 -1 u)) (/.f32 s u))) (*.f32 3/2 (/.f32 s (*.f32 u u)))) (*.f32 (*.f32 -3 s) (log.f32 4/3)))
(+.f32 (fma.f32 3 (fma.f32 s (log.f32 (/.f32 -1 u)) (/.f32 s u)) (*.f32 3/2 (/.f32 s (*.f32 u u)))) (*.f32 -3 (*.f32 s (log.f32 4/3))))
(+.f32 (*.f32 (/.f32 s u) (+.f32 3 (/.f32 3/2 u))) (*.f32 (*.f32 s 3) (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4/3))))
(fma.f32 (/.f32 s u) (+.f32 3 (/.f32 3/2 u)) (*.f32 -3 (*.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))))))
(-.f32 (+.f32 (*.f32 3 (*.f32 s (log.f32 (/.f32 -1 u)))) (+.f32 (*.f32 3 (/.f32 s u)) (+.f32 (/.f32 s (pow.f32 u 3)) (*.f32 3/2 (/.f32 s (pow.f32 u 2)))))) (*.f32 3 (*.f32 s (log.f32 4/3))))
(+.f32 (+.f32 (*.f32 3 (fma.f32 s (log.f32 (/.f32 -1 u)) (/.f32 s u))) (+.f32 (*.f32 3/2 (/.f32 s (*.f32 u u))) (/.f32 s (pow.f32 u 3)))) (*.f32 (*.f32 -3 s) (log.f32 4/3)))
(+.f32 (fma.f32 3 (fma.f32 s (log.f32 (/.f32 -1 u)) (/.f32 s u)) (fma.f32 3/2 (/.f32 s (*.f32 u u)) (/.f32 s (pow.f32 u 3)))) (*.f32 -3 (*.f32 s (log.f32 4/3))))
(+.f32 (+.f32 (/.f32 s (pow.f32 u 3)) (*.f32 (/.f32 s u) (+.f32 3 (/.f32 3/2 u)))) (*.f32 (*.f32 s 3) (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4/3))))
(+.f32 (/.f32 s (pow.f32 u 3)) (fma.f32 (/.f32 s u) (+.f32 3 (/.f32 3/2 u)) (*.f32 -3 (*.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))))))
(*.f32 -3 (*.f32 s (log.f32 (-.f32 4/3 (*.f32 4/3 u)))))
(*.f32 (*.f32 -3 s) (log.f32 (+.f32 4/3 (*.f32 -4/3 u))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 4/3 (*.f32 u -4/3)))))
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (-.f32 4/3 (*.f32 4/3 u)))))
(*.f32 (*.f32 -3 s) (log.f32 (+.f32 4/3 (*.f32 -4/3 u))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 4/3 (*.f32 u -4/3)))))
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (-.f32 4/3 (*.f32 4/3 u)))))
(*.f32 (*.f32 -3 s) (log.f32 (+.f32 4/3 (*.f32 -4/3 u))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 4/3 (*.f32 u -4/3)))))
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (-.f32 4/3 (*.f32 4/3 u)))))
(*.f32 (*.f32 -3 s) (log.f32 (+.f32 4/3 (*.f32 -4/3 u))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 4/3 (*.f32 u -4/3)))))
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (-.f32 4/3 (*.f32 4/3 u)))))
(*.f32 (*.f32 -3 s) (log.f32 (+.f32 4/3 (*.f32 -4/3 u))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 4/3 (*.f32 u -4/3)))))
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (-.f32 4/3 (*.f32 4/3 u)))))
(*.f32 (*.f32 -3 s) (log.f32 (+.f32 4/3 (*.f32 -4/3 u))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 4/3 (*.f32 u -4/3)))))
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (-.f32 4/3 (*.f32 4/3 u)))))
(*.f32 (*.f32 -3 s) (log.f32 (+.f32 4/3 (*.f32 -4/3 u))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 4/3 (*.f32 u -4/3)))))
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (-.f32 4/3 (*.f32 4/3 u)))))
(*.f32 (*.f32 -3 s) (log.f32 (+.f32 4/3 (*.f32 -4/3 u))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 4/3 (*.f32 u -4/3)))))
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (-.f32 4/3 (*.f32 4/3 u)))))
(*.f32 (*.f32 -3 s) (log.f32 (+.f32 4/3 (*.f32 -4/3 u))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 4/3 (*.f32 u -4/3)))))
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (-.f32 4/3 (*.f32 4/3 u)))))
(*.f32 (*.f32 -3 s) (log.f32 (+.f32 4/3 (*.f32 -4/3 u))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 4/3 (*.f32 u -4/3)))))
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (-.f32 4/3 (*.f32 4/3 u)))))
(*.f32 (*.f32 -3 s) (log.f32 (+.f32 4/3 (*.f32 -4/3 u))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 4/3 (*.f32 u -4/3)))))
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 -3 (*.f32 s (log.f32 (-.f32 4/3 (*.f32 4/3 u)))))
(*.f32 (*.f32 -3 s) (log.f32 (+.f32 4/3 (*.f32 -4/3 u))))
(*.f32 -3 (*.f32 s (log.f32 (+.f32 4/3 (*.f32 u -4/3)))))
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 u -4/3 4/3))))
(*.f32 s (log.f32 4/3))
(-.f32 (*.f32 s (log.f32 4/3)) (*.f32 s u))
(*.f32 s (-.f32 (log.f32 4/3) u))
(-.f32 (*.f32 s (log.f32 4/3)) (+.f32 (*.f32 1/2 (*.f32 s (pow.f32 u 2))) (*.f32 s u)))
(-.f32 (*.f32 s (log.f32 4/3)) (fma.f32 1/2 (*.f32 s (*.f32 u u)) (*.f32 s u)))
(-.f32 (*.f32 s (-.f32 (log.f32 4/3) u)) (*.f32 s (*.f32 (*.f32 u u) 1/2)))
(*.f32 s (-.f32 (-.f32 (log.f32 4/3) u) (*.f32 (*.f32 u u) 1/2)))
(*.f32 s (+.f32 (-.f32 (log.f32 4/3) u) (*.f32 (*.f32 u u) -1/2)))
(-.f32 (*.f32 s (log.f32 4/3)) (+.f32 (*.f32 1/2 (*.f32 s (pow.f32 u 2))) (+.f32 (*.f32 1/3 (*.f32 s (pow.f32 u 3))) (*.f32 s u))))
(-.f32 (*.f32 s (log.f32 4/3)) (fma.f32 1/2 (*.f32 s (*.f32 u u)) (fma.f32 1/3 (*.f32 s (pow.f32 u 3)) (*.f32 s u))))
(-.f32 (*.f32 s (log.f32 4/3)) (fma.f32 (*.f32 s (*.f32 u u)) 1/2 (fma.f32 s u (*.f32 (pow.f32 u 3) (*.f32 s 1/3)))))
(+.f32 (*.f32 s (-.f32 (-.f32 (log.f32 4/3) u) (*.f32 (*.f32 u u) 1/2))) (*.f32 -1/3 (*.f32 s (pow.f32 u 3))))
(fma.f32 s (+.f32 (-.f32 (log.f32 4/3) u) (*.f32 (*.f32 u u) -1/2)) (*.f32 s (*.f32 (pow.f32 u 3) -1/3)))
(*.f32 s (-.f32 (log.f32 -4/3) (log.f32 (/.f32 1 u))))
(*.f32 s (-.f32 (log.f32 -4/3) (neg.f32 (log.f32 u))))
(*.f32 s (+.f32 (log.f32 -4/3) (log.f32 u)))
(-.f32 (*.f32 s (log.f32 -4/3)) (+.f32 (/.f32 s u) (*.f32 s (log.f32 (/.f32 1 u)))))
(-.f32 (*.f32 s (log.f32 -4/3)) (+.f32 (/.f32 s u) (*.f32 s (neg.f32 (log.f32 u)))))
(+.f32 (-.f32 (*.f32 s (log.f32 -4/3)) (/.f32 s u)) (*.f32 (log.f32 u) s))
(-.f32 (*.f32 s (+.f32 (log.f32 -4/3) (log.f32 u))) (/.f32 s u))
(-.f32 (*.f32 s (log.f32 -4/3)) (+.f32 (/.f32 s u) (+.f32 (*.f32 s (log.f32 (/.f32 1 u))) (*.f32 1/2 (/.f32 s (pow.f32 u 2))))))
(-.f32 (*.f32 s (log.f32 -4/3)) (+.f32 (/.f32 s u) (fma.f32 s (neg.f32 (log.f32 u)) (*.f32 (/.f32 s (*.f32 u u)) 1/2))))
(-.f32 (*.f32 s (+.f32 (log.f32 -4/3) (log.f32 u))) (*.f32 (+.f32 (/.f32 1/2 u) 1) (/.f32 s u)))
(fma.f32 s (+.f32 (log.f32 -4/3) (log.f32 u)) (*.f32 (+.f32 (/.f32 1/2 u) 1) (/.f32 (neg.f32 s) u)))
(-.f32 (*.f32 s (log.f32 -4/3)) (+.f32 (/.f32 s u) (+.f32 (*.f32 s (log.f32 (/.f32 1 u))) (+.f32 (*.f32 1/3 (/.f32 s (pow.f32 u 3))) (*.f32 1/2 (/.f32 s (pow.f32 u 2)))))))
(-.f32 (*.f32 s (log.f32 -4/3)) (+.f32 (/.f32 s u) (fma.f32 s (neg.f32 (log.f32 u)) (fma.f32 1/3 (/.f32 s (pow.f32 u 3)) (*.f32 (/.f32 s (*.f32 u u)) 1/2)))))
(-.f32 (-.f32 (*.f32 s (log.f32 -4/3)) (/.f32 s u)) (fma.f32 s (neg.f32 (log.f32 u)) (fma.f32 (/.f32 s (*.f32 u u)) 1/2 (*.f32 (/.f32 s (pow.f32 u 3)) 1/3))))
(-.f32 (-.f32 (*.f32 s (+.f32 (log.f32 -4/3) (log.f32 u))) (*.f32 (/.f32 (/.f32 s u) u) (+.f32 1/2 (/.f32 1/3 u)))) (/.f32 s u))
(-.f32 (-.f32 (*.f32 s (+.f32 (log.f32 -4/3) (log.f32 u))) (/.f32 s u)) (*.f32 (/.f32 s (*.f32 u u)) (+.f32 (/.f32 1/3 u) 1/2)))
(*.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))))
(-.f32 (*.f32 s (log.f32 4/3)) (+.f32 (*.f32 s (log.f32 (/.f32 -1 u))) (/.f32 s u)))
(-.f32 (*.f32 s (log.f32 4/3)) (fma.f32 s (log.f32 (/.f32 -1 u)) (/.f32 s u)))
(-.f32 (*.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))) (/.f32 s u))
(-.f32 (*.f32 s (log.f32 4/3)) (+.f32 (*.f32 s (log.f32 (/.f32 -1 u))) (+.f32 (/.f32 s u) (*.f32 1/2 (/.f32 s (pow.f32 u 2))))))
(-.f32 (*.f32 s (log.f32 4/3)) (fma.f32 s (log.f32 (/.f32 -1 u)) (+.f32 (/.f32 s u) (*.f32 (/.f32 s (*.f32 u u)) 1/2))))
(-.f32 (*.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))) (fma.f32 (/.f32 s (*.f32 u u)) 1/2 (/.f32 s u)))
(-.f32 (*.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))) (*.f32 (+.f32 (/.f32 1/2 u) 1) (/.f32 s u)))
(-.f32 (*.f32 s (log.f32 4/3)) (+.f32 (*.f32 s (log.f32 (/.f32 -1 u))) (+.f32 (/.f32 s u) (+.f32 (*.f32 1/3 (/.f32 s (pow.f32 u 3))) (*.f32 1/2 (/.f32 s (pow.f32 u 2)))))))
(-.f32 (*.f32 s (log.f32 4/3)) (+.f32 (fma.f32 s (log.f32 (/.f32 -1 u)) (/.f32 s u)) (fma.f32 1/3 (/.f32 s (pow.f32 u 3)) (*.f32 (/.f32 s (*.f32 u u)) 1/2))))
(-.f32 (*.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))) (+.f32 (/.f32 s u) (fma.f32 (/.f32 s (*.f32 u u)) 1/2 (*.f32 (/.f32 s (pow.f32 u 3)) 1/3))))
(-.f32 (*.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))) (+.f32 (/.f32 s u) (*.f32 (/.f32 (/.f32 s u) u) (+.f32 1/2 (/.f32 1/3 u)))))
(-.f32 (*.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))) (+.f32 (/.f32 s u) (*.f32 (/.f32 s (*.f32 u u)) (+.f32 (/.f32 1/3 u) 1/2))))
(*.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 u -4/3))))
(*.f32 s (log.f32 (fma.f32 u -4/3 4/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 u -4/3))))
(*.f32 s (log.f32 (fma.f32 u -4/3 4/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 u -4/3))))
(*.f32 s (log.f32 (fma.f32 u -4/3 4/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 u -4/3))))
(*.f32 s (log.f32 (fma.f32 u -4/3 4/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 u -4/3))))
(*.f32 s (log.f32 (fma.f32 u -4/3 4/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 u -4/3))))
(*.f32 s (log.f32 (fma.f32 u -4/3 4/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 u -4/3))))
(*.f32 s (log.f32 (fma.f32 u -4/3 4/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 u -4/3))))
(*.f32 s (log.f32 (fma.f32 u -4/3 4/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 u -4/3))))
(*.f32 s (log.f32 (fma.f32 u -4/3 4/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 u -4/3))))
(*.f32 s (log.f32 (fma.f32 u -4/3 4/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 u -4/3))))
(*.f32 s (log.f32 (fma.f32 u -4/3 4/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 u -4/3))))
(*.f32 s (log.f32 (fma.f32 u -4/3 4/3)))

prune94.0ms (2.1%)

Pruning

13 alts after pruning (10 fresh and 3 done)

PrunedKeptTotal
New1402142
Fresh2810
Picked011
Done022
Total14213155
Error
0.0b
Counts
155 → 13
Alt Table
StatusErrorProgram
1.0b
(pow.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))) 3)) 2)
1.3b
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4)))))
1.0b
(*.f32 (*.f32 (*.f32 s -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.7b
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))
1.0b
(*.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (pow.f32 (cbrt.f32 (*.f32 s -3)) 2)) (cbrt.f32 (*.f32 s -3)))
1.0b
(*.f32 (pow.f32 (cbrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) 3) (*.f32 s -3))
0.7b
(*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))
1.1b
(*.f32 (log.f32 (fma.f32 u -4/3 4/3)) (*.f32 -3 s))
0.9b
(pow.f32 (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))) 2)
1.0b
(pow.f32 (cbrt.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))) 3)
1.0b
(*.f32 (pow.f32 (cbrt.f32 (*.f32 s -3)) 2) (*.f32 (cbrt.f32 (*.f32 s -3)) (log1p.f32 (fma.f32 u -4/3 1/3))))
1.1b
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 u -4/3 4/3))))
8.5b
(*.f32 (-.f32 (exp.f32 (log1p.f32 (log1p.f32 (fma.f32 u -4/3 1/3)))) 1) (*.f32 s -3))
Compiler

Compiled 2490 to 1932 computations (22.4% saved)

localize28.0ms (0.6%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))
0.4b
(fma.f32 u -4/3 1/3)
0.5b
(log1p.f32 (fma.f32 u -4/3 1/3))
0.7b
(pow.f32 (cbrt.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))) 3)

series192.0ms (4.4%)

Counts
1 → 12
Calls

6 calls:

TimeVariablePointExpression
54.0ms
u
@inf
(pow.f32 (cbrt.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))) 3)
45.0ms
u
@-inf
(pow.f32 (cbrt.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))) 3)
45.0ms
u
@0
(pow.f32 (cbrt.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))) 3)
21.0ms
s
@0
(pow.f32 (cbrt.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))) 3)
20.0ms
s
@inf
(pow.f32 (cbrt.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))) 3)

rewrite41.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
502×log-prod_binary32
280×pow2_binary32
199×expm1-udef_binary32
199×log1p-udef_binary32
194×pow1/3_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01313
126913
2269713
Stop Event
node limit
Counts
1 → 38
Calls
Call 1
Inputs
(pow.f32 (cbrt.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))) 3)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (pow.f32 (cbrt.f32 (pow.f32 (pow.f32 (+.f32 (fma.f32 u -4/3 1/3) 1) s) -3)) 2)) (log.f32 (cbrt.f32 (pow.f32 (pow.f32 (+.f32 (fma.f32 u -4/3 1/3) 1) s) -3))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (pow.f32 (pow.f32 (+.f32 (fma.f32 u -4/3 1/3) 1) s) -3))) (log.f32 (sqrt.f32 (pow.f32 (pow.f32 (+.f32 (fma.f32 u -4/3 1/3) 1) s) -3))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 s (*.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)) s) -3)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))) (pow.f32 (cbrt.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))) 2) (cbrt.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (pow.f32 (cbrt.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))) 2)) (*.f32 (cbrt.f32 (cbrt.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s)))) (pow.f32 (cbrt.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 -3) (*.f32 (cbrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s)) (pow.f32 (cbrt.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s)) 2) (*.f32 (cbrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s)) -3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s)) 1/6) (*.f32 (pow.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s)) 1/6) (pow.f32 (cbrt.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s)) (*.f32 (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s)) -3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))) (sqrt.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 -3 (log1p.f32 (fma.f32 u -4/3 1/3))) s)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 -3) 3) (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 -3 s) (log1p.f32 (fma.f32 u -4/3 1/3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 -3 (pow.f32 (cbrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s)) 2)) (cbrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 -3 (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))) (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (pow.f32 (cbrt.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))) 2) 1) (cbrt.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (pow.f32 (cbrt.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))) 2) (cbrt.f32 (pow.f32 (cbrt.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))) 2))) (cbrt.f32 (cbrt.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (pow.f32 (cbrt.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))) 2) (cbrt.f32 -3)) (cbrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (pow.f32 (cbrt.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))) 2) (pow.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s)) 1/6)) (pow.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (*.f32 -3 (log1p.f32 (fma.f32 u -4/3 1/3))) 1) s)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (*.f32 -3 (log1p.f32 (fma.f32 u -4/3 1/3))) (pow.f32 (cbrt.f32 s) 2)) (cbrt.f32 s))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (*.f32 -3 (log1p.f32 (fma.f32 u -4/3 1/3))) (sqrt.f32 s)) (sqrt.f32 s))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (*.f32 9 (pow.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/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) s) -3))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))) 1))))))

simplify37.0ms (0.8%)

Algorithm
egg-herbie
Rules
571×fma-def_binary32
348×fma-neg_binary32
263×distribute-rgt-in_binary32
256×cancel-sign-sub-inv_binary32
246×distribute-lft-in_binary32
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
082739
1252674
2809657
32752652
Stop Event
node limit
Counts
50 → 62
Calls
Call 1
Inputs
(*.f32 -3 (*.f32 s (log.f32 4/3)))
(-.f32 (*.f32 3 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (log.f32 4/3) 4)) 1/9) u)) (*.f32 3 (*.f32 s (log.f32 4/3))))
(-.f32 (+.f32 (*.f32 3/2 (*.f32 s (pow.f32 u 2))) (*.f32 3 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (log.f32 4/3) 4)) 1/9) u))) (*.f32 3 (*.f32 s (log.f32 4/3))))
(-.f32 (+.f32 (*.f32 3/2 (*.f32 s (pow.f32 u 2))) (+.f32 (*.f32 s (pow.f32 u 3)) (*.f32 3 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (log.f32 4/3) 4)) 1/9) u)))) (*.f32 3 (*.f32 s (log.f32 4/3))))
(*.f32 -3 (*.f32 s (-.f32 (log.f32 -4/3) (log.f32 (/.f32 1 u)))))
(-.f32 (+.f32 (*.f32 3 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 -4/3) (log.f32 (/.f32 1 u))) 4)) 1/9) (/.f32 1 u))) (*.f32 3 (*.f32 s (log.f32 (/.f32 1 u))))) (*.f32 3 (*.f32 s (log.f32 -4/3))))
(-.f32 (+.f32 (*.f32 3 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 -4/3) (log.f32 (/.f32 1 u))) 4)) 1/9) (/.f32 1 u))) (+.f32 (*.f32 3 (*.f32 s (log.f32 (/.f32 1 u)))) (*.f32 3/2 (/.f32 s (pow.f32 u 2))))) (*.f32 3 (*.f32 s (log.f32 -4/3))))
(-.f32 (+.f32 (*.f32 3 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 -4/3) (log.f32 (/.f32 1 u))) 4)) 1/9) (/.f32 1 u))) (+.f32 (*.f32 3 (*.f32 s (log.f32 (/.f32 1 u)))) (+.f32 (/.f32 s (pow.f32 u 3)) (*.f32 3/2 (/.f32 s (pow.f32 u 2)))))) (*.f32 3 (*.f32 s (log.f32 -4/3))))
(*.f32 -3 (*.f32 s (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u)))))
(-.f32 (+.f32 (*.f32 3 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 4)) 1/9) (/.f32 1 u))) (*.f32 3 (*.f32 s (log.f32 (/.f32 -1 u))))) (*.f32 3 (*.f32 s (log.f32 4/3))))
(-.f32 (+.f32 (*.f32 3 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 4)) 1/9) (/.f32 1 u))) (+.f32 (*.f32 3 (*.f32 s (log.f32 (/.f32 -1 u)))) (*.f32 3/2 (/.f32 s (pow.f32 u 2))))) (*.f32 3 (*.f32 s (log.f32 4/3))))
(-.f32 (+.f32 (*.f32 3 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 4)) 1/9) (/.f32 1 u))) (+.f32 (*.f32 3 (*.f32 s (log.f32 (/.f32 -1 u)))) (+.f32 (/.f32 s (pow.f32 u 3)) (*.f32 3/2 (/.f32 s (pow.f32 u 2)))))) (*.f32 3 (*.f32 s (log.f32 4/3))))
Outputs
(*.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 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (log.f32 4/3) 4)) 1/9) u)) (*.f32 3 (*.f32 s (log.f32 4/3))))
(*.f32 3 (-.f32 (*.f32 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (log.f32 4/3) 4)) 1/18) (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (log.f32 4/3) 4)) 1/18)) u) (*.f32 s (log.f32 4/3))))
(*.f32 3 (fma.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (log.f32 4/3) 4)) 1/18) (*.f32 u (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (log.f32 4/3) 4)) 1/18)) (*.f32 s (neg.f32 (log.f32 4/3)))))
(-.f32 (+.f32 (*.f32 3/2 (*.f32 s (pow.f32 u 2))) (*.f32 3 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (log.f32 4/3) 4)) 1/9) u))) (*.f32 3 (*.f32 s (log.f32 4/3))))
(+.f32 (*.f32 3/2 (*.f32 s (*.f32 u u))) (*.f32 3 (-.f32 (*.f32 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (log.f32 4/3) 4)) 1/18) (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (log.f32 4/3) 4)) 1/18)) u) (*.f32 s (log.f32 4/3)))))
(fma.f32 3/2 (*.f32 s (*.f32 u u)) (*.f32 3 (-.f32 (*.f32 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (log.f32 4/3) 4)) 1/18) (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (log.f32 4/3) 4)) 1/18)) u) (*.f32 s (log.f32 4/3)))))
(fma.f32 3 (fma.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (log.f32 4/3) 4)) 1/18) (*.f32 u (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (log.f32 4/3) 4)) 1/18)) (*.f32 s (neg.f32 (log.f32 4/3)))) (*.f32 u (*.f32 (*.f32 s u) 3/2)))
(fma.f32 3 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (log.f32 4/3) 4)) 1/18) (*.f32 u (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (log.f32 4/3) 4)) 1/18))) (*.f32 s (fma.f32 u (*.f32 u 3/2) (*.f32 -3 (log.f32 4/3)))))
(-.f32 (+.f32 (*.f32 3/2 (*.f32 s (pow.f32 u 2))) (+.f32 (*.f32 s (pow.f32 u 3)) (*.f32 3 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (log.f32 4/3) 4)) 1/9) u)))) (*.f32 3 (*.f32 s (log.f32 4/3))))
(+.f32 (fma.f32 3/2 (*.f32 s (*.f32 u u)) (fma.f32 s (pow.f32 u 3) (*.f32 3 (*.f32 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (log.f32 4/3) 4)) 1/18) (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (log.f32 4/3) 4)) 1/18)) u)))) (*.f32 (*.f32 -3 s) (log.f32 4/3)))
(+.f32 (fma.f32 3/2 (*.f32 s (*.f32 u u)) (*.f32 s (pow.f32 u 3))) (*.f32 3 (-.f32 (*.f32 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (log.f32 4/3) 4)) 1/18) (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (log.f32 4/3) 4)) 1/18)) u) (*.f32 s (log.f32 4/3)))))
(fma.f32 -3 (*.f32 s (log.f32 4/3)) (fma.f32 3 (*.f32 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (log.f32 4/3) 4)) 1/18) (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (log.f32 4/3) 4)) 1/18)) u) (*.f32 (*.f32 s (*.f32 u u)) (+.f32 3/2 u))))
(fma.f32 -3 (*.f32 s (log.f32 4/3)) (*.f32 u (+.f32 (*.f32 3 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (log.f32 4/3) 4)) 1/18) (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (log.f32 4/3) 4)) 1/18))) (*.f32 (*.f32 s u) (+.f32 3/2 u)))))
(*.f32 -3 (*.f32 s (-.f32 (log.f32 -4/3) (log.f32 (/.f32 1 u)))))
(*.f32 -3 (*.f32 s (-.f32 (log.f32 -4/3) (neg.f32 (log.f32 u)))))
(*.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (log.f32 u))))
(-.f32 (+.f32 (*.f32 3 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 -4/3) (log.f32 (/.f32 1 u))) 4)) 1/9) (/.f32 1 u))) (*.f32 3 (*.f32 s (log.f32 (/.f32 1 u))))) (*.f32 3 (*.f32 s (log.f32 -4/3))))
(+.f32 (*.f32 3 (+.f32 (*.f32 (/.f32 1 u) (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 -4/3) (neg.f32 (log.f32 u))) 4)) 1/18) (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 -4/3) (neg.f32 (log.f32 u))) 4)) 1/18))) (*.f32 s (neg.f32 (log.f32 u))))) (*.f32 -3 (*.f32 s (log.f32 -4/3))))
(fma.f32 3 (/.f32 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) 4)) 1/18) (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) 4)) 1/18)) u) (*.f32 (*.f32 s 3) (-.f32 (neg.f32 (log.f32 u)) (log.f32 -4/3))))
(fma.f32 3 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) 4)) 1/18) (/.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) 4)) 1/18) u)) (*.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (log.f32 u)))))
(-.f32 (+.f32 (*.f32 3 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 -4/3) (log.f32 (/.f32 1 u))) 4)) 1/9) (/.f32 1 u))) (+.f32 (*.f32 3 (*.f32 s (log.f32 (/.f32 1 u)))) (*.f32 3/2 (/.f32 s (pow.f32 u 2))))) (*.f32 3 (*.f32 s (log.f32 -4/3))))
(+.f32 (fma.f32 3 (*.f32 (/.f32 1 u) (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 -4/3) (neg.f32 (log.f32 u))) 4)) 1/18) (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 -4/3) (neg.f32 (log.f32 u))) 4)) 1/18))) (fma.f32 3 (*.f32 s (neg.f32 (log.f32 u))) (*.f32 3/2 (/.f32 s (*.f32 u u))))) (*.f32 -3 (*.f32 s (log.f32 -4/3))))
(fma.f32 3 (/.f32 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) 4)) 1/18) (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) 4)) 1/18)) u) (+.f32 (*.f32 3/2 (/.f32 s (*.f32 u u))) (*.f32 (*.f32 s 3) (-.f32 (neg.f32 (log.f32 u)) (log.f32 -4/3)))))
(fma.f32 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) 4)) 1/18) (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) 4)) 1/18)) (/.f32 3 u) (fma.f32 3/2 (/.f32 s (*.f32 u u)) (*.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (log.f32 u))))))
(fma.f32 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) 4)) 1/18) (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) 4)) 1/18)) (/.f32 3 u) (*.f32 s (+.f32 (/.f32 3/2 (*.f32 u u)) (*.f32 -3 (+.f32 (log.f32 -4/3) (log.f32 u))))))
(-.f32 (+.f32 (*.f32 3 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 -4/3) (log.f32 (/.f32 1 u))) 4)) 1/9) (/.f32 1 u))) (+.f32 (*.f32 3 (*.f32 s (log.f32 (/.f32 1 u)))) (+.f32 (/.f32 s (pow.f32 u 3)) (*.f32 3/2 (/.f32 s (pow.f32 u 2)))))) (*.f32 3 (*.f32 s (log.f32 -4/3))))
(+.f32 (fma.f32 3 (*.f32 (/.f32 1 u) (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 -4/3) (neg.f32 (log.f32 u))) 4)) 1/18) (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 -4/3) (neg.f32 (log.f32 u))) 4)) 1/18))) (fma.f32 3 (*.f32 s (neg.f32 (log.f32 u))) (+.f32 (*.f32 3/2 (/.f32 s (*.f32 u u))) (/.f32 s (pow.f32 u 3))))) (*.f32 -3 (*.f32 s (log.f32 -4/3))))
(fma.f32 3 (/.f32 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) 4)) 1/18) (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) 4)) 1/18)) u) (+.f32 (fma.f32 3/2 (/.f32 s (*.f32 u u)) (/.f32 s (pow.f32 u 3))) (*.f32 (*.f32 s 3) (-.f32 (neg.f32 (log.f32 u)) (log.f32 -4/3)))))
(+.f32 (/.f32 s (pow.f32 u 3)) (fma.f32 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) 4)) 1/18) (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) 4)) 1/18)) (/.f32 3 u) (fma.f32 3/2 (/.f32 s (*.f32 u u)) (*.f32 -3 (*.f32 s (+.f32 (log.f32 -4/3) (log.f32 u)))))))
(+.f32 (/.f32 s (pow.f32 u 3)) (fma.f32 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) 4)) 1/18) (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (+.f32 (log.f32 -4/3) (log.f32 u)) 4)) 1/18)) (/.f32 3 u) (*.f32 s (+.f32 (/.f32 3/2 (*.f32 u u)) (*.f32 -3 (+.f32 (log.f32 -4/3) (log.f32 u)))))))
(*.f32 -3 (*.f32 s (-.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 (*.f32 3 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 4)) 1/9) (/.f32 1 u))) (*.f32 3 (*.f32 s (log.f32 (/.f32 -1 u))))) (*.f32 3 (*.f32 s (log.f32 4/3))))
(+.f32 (*.f32 3 (+.f32 (*.f32 (/.f32 1 u) (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 4)) 1/18) (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 4)) 1/18))) (*.f32 s (log.f32 (/.f32 -1 u))))) (*.f32 (*.f32 -3 s) (log.f32 4/3)))
(fma.f32 3 (/.f32 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 4)) 1/18) (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 4)) 1/18)) u) (*.f32 (*.f32 s 3) (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4/3))))
(*.f32 3 (+.f32 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 4)) 1/18) (/.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 4)) 1/18) u)) (*.f32 s (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4/3)))))
(*.f32 3 (+.f32 (*.f32 s (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4/3))) (/.f32 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 4)) 1/18) (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 4)) 1/18)) u)))
(-.f32 (+.f32 (*.f32 3 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 4)) 1/9) (/.f32 1 u))) (+.f32 (*.f32 3 (*.f32 s (log.f32 (/.f32 -1 u)))) (*.f32 3/2 (/.f32 s (pow.f32 u 2))))) (*.f32 3 (*.f32 s (log.f32 4/3))))
(+.f32 (fma.f32 3 (*.f32 (/.f32 1 u) (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 4)) 1/18) (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 4)) 1/18))) (fma.f32 3 (*.f32 s (log.f32 (/.f32 -1 u))) (*.f32 3/2 (/.f32 s (*.f32 u u))))) (*.f32 (*.f32 -3 s) (log.f32 4/3)))
(fma.f32 3 (/.f32 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 4)) 1/18) (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 4)) 1/18)) u) (+.f32 (*.f32 3/2 (/.f32 s (*.f32 u u))) (*.f32 (*.f32 s 3) (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4/3)))))
(fma.f32 3 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 4)) 1/18) (/.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 4)) 1/18) u)) (fma.f32 3/2 (/.f32 s (*.f32 u u)) (*.f32 3 (*.f32 s (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4/3))))))
(fma.f32 3 (/.f32 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 4)) 1/18) (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 4)) 1/18)) u) (fma.f32 3/2 (/.f32 s (*.f32 u u)) (*.f32 s (*.f32 3 (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4/3))))))
(-.f32 (+.f32 (*.f32 3 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 4)) 1/9) (/.f32 1 u))) (+.f32 (*.f32 3 (*.f32 s (log.f32 (/.f32 -1 u)))) (+.f32 (/.f32 s (pow.f32 u 3)) (*.f32 3/2 (/.f32 s (pow.f32 u 2)))))) (*.f32 3 (*.f32 s (log.f32 4/3))))
(+.f32 (fma.f32 3 (*.f32 (/.f32 1 u) (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 4)) 1/18) (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 4)) 1/18))) (fma.f32 3 (*.f32 s (log.f32 (/.f32 -1 u))) (+.f32 (*.f32 3/2 (/.f32 s (*.f32 u u))) (/.f32 s (pow.f32 u 3))))) (*.f32 (*.f32 -3 s) (log.f32 4/3)))
(fma.f32 3 (/.f32 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 4)) 1/18) (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 4)) 1/18)) u) (+.f32 (fma.f32 3/2 (/.f32 s (*.f32 u u)) (/.f32 s (pow.f32 u 3))) (*.f32 (*.f32 s 3) (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4/3)))))
(fma.f32 -3 (*.f32 s (log.f32 4/3)) (fma.f32 3 (fma.f32 s (log.f32 (/.f32 -1 u)) (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 4)) 1/18) (/.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 4)) 1/18) u))) (fma.f32 3/2 (/.f32 s (*.f32 u u)) (/.f32 s (pow.f32 u 3)))))
(+.f32 (fma.f32 3/2 (/.f32 s (*.f32 u u)) (/.f32 s (pow.f32 u 3))) (*.f32 3 (+.f32 (*.f32 s (-.f32 (log.f32 (/.f32 -1 u)) (log.f32 4/3))) (/.f32 (*.f32 (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 4)) 1/18) (pow.f32 (*.f32 (pow.f32 s 13) (pow.f32 (-.f32 (log.f32 4/3) (log.f32 (/.f32 -1 u))) 4)) 1/18)) u))))

prune117.0ms (2.7%)

Pruning

13 alts after pruning (10 fresh and 3 done)

PrunedKeptTotal
New1623165
Fresh279
Picked101
Done033
Total16513178
Error
0.0b
Counts
178 → 13
Alt Table
StatusErrorProgram
1.0b
(*.f32 (*.f32 (*.f32 s -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.7b
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))
0.7b
(*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))
0.8b
(*.f32 (pow.f32 (cbrt.f32 -3) 3) (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))
1.1b
(*.f32 (log.f32 (fma.f32 u -4/3 4/3)) (*.f32 -3 s))
0.9b
(*.f32 (cbrt.f32 -3) (*.f32 (cbrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s)) (pow.f32 (cbrt.f32 (*.f32 -3 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) s))) 2)))
1.1b
(*.f32 -3 (*.f32 s (log.f32 (fma.f32 u -4/3 4/3))))
1.1b
(pow.f32 (cbrt.f32 (*.f32 -3 (*.f32 (log1p.f32 (log1p.f32 (expm1.f32 (fma.f32 u -4/3 1/3)))) s))) 3)
1.3b
(*.f32 (*.f32 3 s) (log.f32 (/.f32 1 (-.f32 1 (/.f32 (-.f32 u 1/4) 3/4)))))
1.0b
(*.f32 (pow.f32 (cbrt.f32 (log1p.f32 (fma.f32 u -4/3 1/3))) 3) (*.f32 s -3))
1.0b
(*.f32 (pow.f32 (cbrt.f32 (*.f32 s -3)) 2) (*.f32 (cbrt.f32 (*.f32 s -3)) (log1p.f32 (fma.f32 u -4/3 1/3))))
0.9b
(pow.f32 (sqrt.f32 (*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))) 2)
8.5b
(*.f32 (-.f32 (exp.f32 (log1p.f32 (log1p.f32 (fma.f32 u -4/3 1/3)))) 1) (*.f32 s -3))
Compiler

Compiled 3511 to 2860 computations (18.5% saved)

regimes702.0ms (15.9%)

Accuracy

Total 0.7b remaining (95.2%)

Threshold costs 0.7b (95.2%)

Counts
75 → 1
Compiler

Compiled 10159 to 8663 computations (14.7% saved)

simplify2.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01013
11213
Stop Event
saturated
Calls
Call 1
Inputs
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))
Outputs
(*.f32 (log1p.f32 (fma.f32 u -4/3 1/3)) (*.f32 s -3))

end157.0ms (3.6%)

Stop Event
fuel
Compiler

Compiled 221 to 187 computations (15.4% saved)

Profiling

Loading profile data...