Details

Time bar (total: 9.4s)

analyze122.0ms (1.3%)

Algorithm
search
Search
TrueOtherFalseIter
0%0.9%99.1%0
0%0.9%99.1%1
0%0.9%99.1%2
0.4%0.4%99.1%3
0.4%0.4%99.1%4
0.6%0.2%99.1%5
0.6%0.2%99.1%6
0.7%0.1%99.1%7
0.7%0.1%99.1%8
0.8%0.1%99.1%9
0.8%0.1%99.1%10
0.8%0%99.1%11
0.8%0%99.1%12
0.8%0%99.1%13
0.8%0%99.1%14
Compiler

Compiled 32 to 24 computations (25% saved)

sample2.2s (23.2%)

Results
2.0s8256×body128valid
Compiler

Compiled 81 to 61 computations (24.7% saved)

simplify181.0ms (1.9%)

Algorithm
egg-herbie
Rules
2879×fma-def_binary32
2626×associate-+l+_binary32
362×distribute-rgt-in_binary32
324×associate-+r+_binary32
323×distribute-rgt-out_binary32
Counts
1 → 2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01323
12119
23519
35419
411019
517319
624719
740519
850519
956319
1061319
1163619
1267219
1378119
1495919
15121819
16155019
17155619
18154819
19189619
20211319
21220819
22230719
23227519
24227519
25227519
26426519
27426519
28426519
29426519
30561919

prune4.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.1b
Counts
3 → 2
Alt Table
StatusErrorProgram
0.2b
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))))))
0.2b
(fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)
Compiler

Compiled 94 to 70 computations (25.5% saved)

localize34.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)
0.1b
(log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u))
0.1b
(fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)
0.1b
(exp.f32 (/.f32 -2 v))

series268.0ms (2.8%)

Counts
4 → 80
Calls

4 calls:

182.0ms
(log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u))
74.0ms
(fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)
9.0ms
(fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)
2.0ms
(exp.f32 (/.f32 -2 v))

rewrite303.0ms (3.2%)

Algorithm
egg-rewrite
Rules
60×egg
36×egg
27×egg
23×egg
Counts
4 → 146
Calls

4 calls:

86.0ms
(exp.f32 (/.f32 -2 v))
84.0ms
(fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)
80.0ms
(log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u))
49.0ms
(fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
056
11036
211716
348536
462206
01119
122419
2261819
3487219
4498819
01015
120315
2235515
3494415
4505115
0913
118713
2218413
3552813

simplify96.0ms (1%)

Algorithm
egg-herbie
Rules
629×cancel-sign-sub-inv_binary32
438×sub-neg_binary32
254×fma-def_binary32
231×+-commutative_binary32
225×fma-neg_binary32
Counts
226 → 232
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02633048
19122982
236302942
351572942

prune316.0ms (3.3%)

Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New2257232
Fresh101
Picked101
Done000
Total2277234
Error
0.0b
Counts
234 → 7
Alt Table
StatusErrorProgram
29.9b
(fma.f32 v (-.f32 (+.f32 (/.f32 (pow.f32 u 3) (exp.f32 (/.f32 -2 v))) (+.f32 (*.f32 1/3 (/.f32 (pow.f32 u 3) (pow.f32 (exp.f32 (/.f32 -2 v)) 3))) (+.f32 (/.f32 (pow.f32 u 2) (exp.f32 (/.f32 -2 v))) (/.f32 u (exp.f32 (/.f32 -2 v)))))) (+.f32 (*.f32 1/2 (/.f32 (pow.f32 u 2) (pow.f32 (exp.f32 (/.f32 -2 v)) 2))) (+.f32 (*.f32 1/3 (pow.f32 u 3)) (+.f32 (*.f32 1/2 (pow.f32 u 2)) (+.f32 (/.f32 (pow.f32 u 3) (pow.f32 (exp.f32 (/.f32 -2 v)) 2)) (+.f32 u (*.f32 2 (/.f32 1 v)))))))) 1)
28.8b
(-.f32 (fma.f32 2/3 (/.f32 u (pow.f32 v 3)) (fma.f32 2 (+.f32 u (/.f32 u v)) (fma.f32 4/3 (/.f32 u (*.f32 v v)) (fma.f32 8/3 (/.f32 (pow.f32 u 3) (*.f32 v v)) (*.f32 8 (pow.f32 (/.f32 u v) 3)))))) (fma.f32 4 (/.f32 (pow.f32 u 4) (pow.f32 v 3)) (+.f32 1 (fma.f32 2 (/.f32 (*.f32 u u) v) (fma.f32 4 (*.f32 (/.f32 u v) (/.f32 u v)) (*.f32 14/3 (/.f32 (*.f32 u u) (pow.f32 v 3))))))))
0.3b
(*.f32 (cbrt.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)) (pow.f32 (cbrt.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)) 2))
0.2b
(log1p.f32 (expm1.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)))
29.9b
(-.f32 (+.f32 (*.f32 1/3 (/.f32 (*.f32 v (pow.f32 u 3)) (pow.f32 (exp.f32 (/.f32 -2 v)) 3))) (+.f32 (/.f32 (*.f32 v u) (exp.f32 (/.f32 -2 v))) (+.f32 (/.f32 (*.f32 v (pow.f32 u 2)) (exp.f32 (/.f32 -2 v))) (/.f32 (*.f32 v (pow.f32 u 3)) (exp.f32 (/.f32 -2 v)))))) (+.f32 (*.f32 1/2 (*.f32 v (pow.f32 u 2))) (+.f32 1 (+.f32 (*.f32 1/3 (*.f32 v (pow.f32 u 3))) (+.f32 (*.f32 v u) (+.f32 (/.f32 (*.f32 v (pow.f32 u 3)) (pow.f32 (exp.f32 (/.f32 -2 v)) 2)) (*.f32 1/2 (/.f32 (*.f32 v (pow.f32 u 2)) (pow.f32 (exp.f32 (/.f32 -2 v)) 2)))))))))
29.9b
(-.f32 (+.f32 (/.f32 (*.f32 v u) (exp.f32 (/.f32 -2 v))) (/.f32 (*.f32 v (*.f32 u u)) (exp.f32 (/.f32 -2 v)))) (fma.f32 (*.f32 v (*.f32 u u)) 1/2 (+.f32 1 (fma.f32 v u (*.f32 1/2 (/.f32 (*.f32 v (*.f32 u u)) (pow.f32 (exp.f32 (/.f32 -2 v)) 2)))))))
2.8b
(exp.f32 (log1p.f32 (*.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)))))
Compiler

Compiled 6830 to 4995 computations (26.9% saved)

localize45.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)
0.1b
(log1p.f32 (expm1.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)))
0.1b
(exp.f32 (/.f32 -2 v))
0.8b
(expm1.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1))

series172.0ms (1.8%)

Counts
2 → 48
Calls

2 calls:

103.0ms
(expm1.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1))
68.0ms
(log1p.f32 (expm1.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)))

rewrite139.0ms (1.5%)

Algorithm
egg-rewrite
Rules
38×egg
27×egg
Counts
2 → 65
Calls

2 calls:

79.0ms
(expm1.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1))
58.0ms
(log1p.f32 (expm1.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01221
124121
2279921
3509521
01319
124319
2280819
3513819

simplify292.0ms (3.1%)

Algorithm
egg-herbie
Rules
565×times-frac_binary32
364×associate-/l*_binary32
360×fma-def_binary32
334×associate-/r*_binary32
289×associate-*r*_binary32
Counts
113 → 138
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03864531
113814345
249454334
349944334

prune471.0ms (5%)

Pruning

9 alts after pruning (9 fresh and 0 done)

PrunedKeptTotal
New2695274
Fresh246
Picked101
Done000
Total2729281
Error
0b
Counts
281 → 9
Alt Table
StatusErrorProgram
29.9b
(fma.f32 v (-.f32 (+.f32 (/.f32 (pow.f32 u 3) (exp.f32 (/.f32 -2 v))) (+.f32 (*.f32 1/3 (/.f32 (pow.f32 u 3) (pow.f32 (exp.f32 (/.f32 -2 v)) 3))) (+.f32 (/.f32 (pow.f32 u 2) (exp.f32 (/.f32 -2 v))) (/.f32 u (exp.f32 (/.f32 -2 v)))))) (+.f32 (*.f32 1/2 (/.f32 (pow.f32 u 2) (pow.f32 (exp.f32 (/.f32 -2 v)) 2))) (+.f32 (*.f32 1/3 (pow.f32 u 3)) (+.f32 (*.f32 1/2 (pow.f32 u 2)) (+.f32 (/.f32 (pow.f32 u 3) (pow.f32 (exp.f32 (/.f32 -2 v)) 2)) (+.f32 u (*.f32 2 (/.f32 1 v)))))))) 1)
28.8b
(-.f32 (fma.f32 2/3 (/.f32 u (pow.f32 v 3)) (fma.f32 2 (+.f32 u (/.f32 u v)) (fma.f32 4/3 (/.f32 u (*.f32 v v)) (fma.f32 8/3 (/.f32 (pow.f32 u 3) (*.f32 v v)) (*.f32 8 (pow.f32 (/.f32 u v) 3)))))) (fma.f32 4 (/.f32 (pow.f32 u 4) (pow.f32 v 3)) (+.f32 1 (fma.f32 2 (/.f32 (*.f32 u u) v) (fma.f32 4 (*.f32 (/.f32 u v) (/.f32 u v)) (*.f32 14/3 (/.f32 (*.f32 u u) (pow.f32 v 3))))))))
0.3b
(log1p.f32 (fma.f32 (exp.f32 (*.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)))) (E.f32) -1))
0.3b
(log1p.f32 (+.f32 (log.f32 (sqrt.f32 (exp.f32 (expm1.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1))))) (log.f32 (sqrt.f32 (exp.f32 (expm1.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)))))))
0.3b
(*.f32 (cbrt.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)) (pow.f32 (cbrt.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)) 2))
0.3b
(log1p.f32 (+.f32 (log.f32 (*.f32 (cbrt.f32 (exp.f32 (expm1.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)))) (cbrt.f32 (exp.f32 (expm1.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)))))) (log.f32 (cbrt.f32 (exp.f32 (expm1.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)))))))
0.2b
(+.f32 0 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1))
29.9b
(-.f32 (+.f32 (/.f32 (*.f32 v u) (exp.f32 (/.f32 -2 v))) (/.f32 (*.f32 v (*.f32 u u)) (exp.f32 (/.f32 -2 v)))) (fma.f32 (*.f32 v (*.f32 u u)) 1/2 (+.f32 1 (fma.f32 v u (*.f32 1/2 (/.f32 (*.f32 v (*.f32 u u)) (pow.f32 (exp.f32 (/.f32 -2 v)) 2)))))))
29.9b
(-.f32 (fma.f32 1/3 (/.f32 (*.f32 v (pow.f32 u 3)) (pow.f32 (exp.f32 (/.f32 -2 v)) 3)) (+.f32 (/.f32 (*.f32 v u) (exp.f32 (/.f32 -2 v))) (+.f32 (/.f32 (*.f32 v (*.f32 u u)) (exp.f32 (/.f32 -2 v))) (/.f32 (*.f32 v (pow.f32 u 3)) (exp.f32 (/.f32 -2 v)))))) (fma.f32 1/2 (*.f32 v (*.f32 u u)) (+.f32 1 (fma.f32 1/3 (*.f32 v (pow.f32 u 3)) (fma.f32 v u (fma.f32 1/2 (/.f32 (*.f32 v (*.f32 u u)) (pow.f32 (exp.f32 (/.f32 -2 v)) 2)) (/.f32 (*.f32 v (pow.f32 u 3)) (pow.f32 (exp.f32 (/.f32 -2 v)) 2))))))))
Compiler

Compiled 11382 to 8485 computations (25.5% saved)

localize42.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)
0.1b
(log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u))
0.1b
(fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)
0.1b
(exp.f32 (/.f32 -2 v))

prune361.0ms (3.8%)

Pruning

9 alts after pruning (8 fresh and 1 done)

PrunedKeptTotal
New2320232
Fresh088
Picked011
Done000
Total2329241
Error
0b
Counts
241 → 9
Alt Table
StatusErrorProgram
29.9b
(fma.f32 v (-.f32 (+.f32 (/.f32 (pow.f32 u 3) (exp.f32 (/.f32 -2 v))) (+.f32 (*.f32 1/3 (/.f32 (pow.f32 u 3) (pow.f32 (exp.f32 (/.f32 -2 v)) 3))) (+.f32 (/.f32 (pow.f32 u 2) (exp.f32 (/.f32 -2 v))) (/.f32 u (exp.f32 (/.f32 -2 v)))))) (+.f32 (*.f32 1/2 (/.f32 (pow.f32 u 2) (pow.f32 (exp.f32 (/.f32 -2 v)) 2))) (+.f32 (*.f32 1/3 (pow.f32 u 3)) (+.f32 (*.f32 1/2 (pow.f32 u 2)) (+.f32 (/.f32 (pow.f32 u 3) (pow.f32 (exp.f32 (/.f32 -2 v)) 2)) (+.f32 u (*.f32 2 (/.f32 1 v)))))))) 1)
28.8b
(-.f32 (fma.f32 2/3 (/.f32 u (pow.f32 v 3)) (fma.f32 2 (+.f32 u (/.f32 u v)) (fma.f32 4/3 (/.f32 u (*.f32 v v)) (fma.f32 8/3 (/.f32 (pow.f32 u 3) (*.f32 v v)) (*.f32 8 (pow.f32 (/.f32 u v) 3)))))) (fma.f32 4 (/.f32 (pow.f32 u 4) (pow.f32 v 3)) (+.f32 1 (fma.f32 2 (/.f32 (*.f32 u u) v) (fma.f32 4 (*.f32 (/.f32 u v) (/.f32 u v)) (*.f32 14/3 (/.f32 (*.f32 u u) (pow.f32 v 3))))))))
0.3b
(log1p.f32 (fma.f32 (exp.f32 (*.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)))) (E.f32) -1))
0.3b
(log1p.f32 (+.f32 (log.f32 (sqrt.f32 (exp.f32 (expm1.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1))))) (log.f32 (sqrt.f32 (exp.f32 (expm1.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)))))))
0.3b
(*.f32 (cbrt.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)) (pow.f32 (cbrt.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)) 2))
0.3b
(log1p.f32 (+.f32 (log.f32 (*.f32 (cbrt.f32 (exp.f32 (expm1.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)))) (cbrt.f32 (exp.f32 (expm1.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)))))) (log.f32 (cbrt.f32 (exp.f32 (expm1.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)))))))
0.2b
(+.f32 0 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1))
29.9b
(-.f32 (+.f32 (/.f32 (*.f32 v u) (exp.f32 (/.f32 -2 v))) (/.f32 (*.f32 v (*.f32 u u)) (exp.f32 (/.f32 -2 v)))) (fma.f32 (*.f32 v (*.f32 u u)) 1/2 (+.f32 1 (fma.f32 v u (*.f32 1/2 (/.f32 (*.f32 v (*.f32 u u)) (pow.f32 (exp.f32 (/.f32 -2 v)) 2)))))))
29.9b
(-.f32 (fma.f32 1/3 (/.f32 (*.f32 v (pow.f32 u 3)) (pow.f32 (exp.f32 (/.f32 -2 v)) 3)) (+.f32 (/.f32 (*.f32 v u) (exp.f32 (/.f32 -2 v))) (+.f32 (/.f32 (*.f32 v (*.f32 u u)) (exp.f32 (/.f32 -2 v))) (/.f32 (*.f32 v (pow.f32 u 3)) (exp.f32 (/.f32 -2 v)))))) (fma.f32 1/2 (*.f32 v (*.f32 u u)) (+.f32 1 (fma.f32 1/3 (*.f32 v (pow.f32 u 3)) (fma.f32 v u (fma.f32 1/2 (/.f32 (*.f32 v (*.f32 u u)) (pow.f32 (exp.f32 (/.f32 -2 v)) 2)) (/.f32 (*.f32 v (pow.f32 u 3)) (pow.f32 (exp.f32 (/.f32 -2 v)) 2))))))))
Compiler

Compiled 7459 to 5576 computations (25.2% saved)

localize61.0ms (0.6%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(log1p.f32 (+.f32 (log.f32 (sqrt.f32 (exp.f32 (expm1.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1))))) (log.f32 (sqrt.f32 (exp.f32 (expm1.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)))))))
0.1b
(exp.f32 (/.f32 -2 v))
0.2b
(log.f32 (sqrt.f32 (exp.f32 (expm1.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)))))
0.8b
(expm1.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1))

series1.1s (11.6%)

Counts
2 → 48
Calls

2 calls:

735.0ms
(log1p.f32 (+.f32 (log.f32 (sqrt.f32 (exp.f32 (expm1.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1))))) (log.f32 (sqrt.f32 (exp.f32 (expm1.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)))))))
353.0ms
(log.f32 (sqrt.f32 (exp.f32 (expm1.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)))))

rewrite157.0ms (1.7%)

Algorithm
egg-rewrite
Rules
25×egg
24×egg
Counts
2 → 49
Calls

2 calls:

93.0ms
(log.f32 (sqrt.f32 (exp.f32 (expm1.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)))))
63.0ms
(log1p.f32 (+.f32 (log.f32 (sqrt.f32 (exp.f32 (expm1.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1))))) (log.f32 (sqrt.f32 (exp.f32 (expm1.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)))))))
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01527
129224
2333024
3493424
4496524
01719
13076
234066
349986

simplify322.0ms (3.4%)

Algorithm
egg-herbie
Rules
814×fma-def_binary32
341×*-commutative_binary32
227×+-commutative_binary32
172×associate-+r+_binary32
149×associate-/l*_binary32
Counts
97 → 132
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
086714917
1322913522
2494913522
3497513522

prune1.3s (13.8%)

Pruning

9 alts after pruning (7 fresh and 2 done)

PrunedKeptTotal
New4640464
Fresh077
Picked011
Done011
Total4649473
Error
0b
Counts
473 → 9
Alt Table
StatusErrorProgram
29.9b
(fma.f32 v (-.f32 (+.f32 (/.f32 (pow.f32 u 3) (exp.f32 (/.f32 -2 v))) (+.f32 (*.f32 1/3 (/.f32 (pow.f32 u 3) (pow.f32 (exp.f32 (/.f32 -2 v)) 3))) (+.f32 (/.f32 (pow.f32 u 2) (exp.f32 (/.f32 -2 v))) (/.f32 u (exp.f32 (/.f32 -2 v)))))) (+.f32 (*.f32 1/2 (/.f32 (pow.f32 u 2) (pow.f32 (exp.f32 (/.f32 -2 v)) 2))) (+.f32 (*.f32 1/3 (pow.f32 u 3)) (+.f32 (*.f32 1/2 (pow.f32 u 2)) (+.f32 (/.f32 (pow.f32 u 3) (pow.f32 (exp.f32 (/.f32 -2 v)) 2)) (+.f32 u (*.f32 2 (/.f32 1 v)))))))) 1)
28.8b
(-.f32 (fma.f32 2/3 (/.f32 u (pow.f32 v 3)) (fma.f32 2 (+.f32 u (/.f32 u v)) (fma.f32 4/3 (/.f32 u (*.f32 v v)) (fma.f32 8/3 (/.f32 (pow.f32 u 3) (*.f32 v v)) (*.f32 8 (pow.f32 (/.f32 u v) 3)))))) (fma.f32 4 (/.f32 (pow.f32 u 4) (pow.f32 v 3)) (+.f32 1 (fma.f32 2 (/.f32 (*.f32 u u) v) (fma.f32 4 (*.f32 (/.f32 u v) (/.f32 u v)) (*.f32 14/3 (/.f32 (*.f32 u u) (pow.f32 v 3))))))))
0.3b
(log1p.f32 (fma.f32 (exp.f32 (*.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)))) (E.f32) -1))
0.3b
(log1p.f32 (+.f32 (log.f32 (sqrt.f32 (exp.f32 (expm1.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1))))) (log.f32 (sqrt.f32 (exp.f32 (expm1.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)))))))
0.3b
(*.f32 (cbrt.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)) (pow.f32 (cbrt.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)) 2))
0.3b
(log1p.f32 (+.f32 (log.f32 (*.f32 (cbrt.f32 (exp.f32 (expm1.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)))) (cbrt.f32 (exp.f32 (expm1.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)))))) (log.f32 (cbrt.f32 (exp.f32 (expm1.f32 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)))))))
0.2b
(+.f32 0 (fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1))
29.9b
(-.f32 (+.f32 (/.f32 (*.f32 v u) (exp.f32 (/.f32 -2 v))) (/.f32 (*.f32 v (*.f32 u u)) (exp.f32 (/.f32 -2 v)))) (fma.f32 (*.f32 v (*.f32 u u)) 1/2 (+.f32 1 (fma.f32 v u (*.f32 1/2 (/.f32 (*.f32 v (*.f32 u u)) (pow.f32 (exp.f32 (/.f32 -2 v)) 2)))))))
29.9b
(-.f32 (fma.f32 1/3 (/.f32 (*.f32 v (pow.f32 u 3)) (pow.f32 (exp.f32 (/.f32 -2 v)) 3)) (+.f32 (/.f32 (*.f32 v u) (exp.f32 (/.f32 -2 v))) (+.f32 (/.f32 (*.f32 v (*.f32 u u)) (exp.f32 (/.f32 -2 v))) (/.f32 (*.f32 v (pow.f32 u 3)) (exp.f32 (/.f32 -2 v)))))) (fma.f32 1/2 (*.f32 v (*.f32 u u)) (+.f32 1 (fma.f32 1/3 (*.f32 v (pow.f32 u 3)) (fma.f32 v u (fma.f32 1/2 (/.f32 (*.f32 v (*.f32 u u)) (pow.f32 (exp.f32 (/.f32 -2 v)) 2)) (/.f32 (*.f32 v (pow.f32 u 3)) (pow.f32 (exp.f32 (/.f32 -2 v)) 2))))))))
Compiler

Compiled 45111 to 36044 computations (20.1% saved)

regimes1.2s (12.7%)

Accuracy

Total 0.1b remaining (79.2%)

Threshold costs 0.1b (79.2%)

Counts
241 → 1
Compiler

Compiled 25964 to 19724 computations (24% saved)

simplify3.0ms (0%)

Algorithm
egg-herbie
Rules
+-commutative_binary32
*-commutative_binary32
sub-neg_binary32
+-lft-identity_binary32
neg-sub0_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01725
12325
22725
32925
43025
52925

end262.0ms (2.8%)

Compiler

Compiled 502 to 360 computations (28.3% saved)

Profiling

Loading profile data...