Details

Time bar (total: 25.9s)

analyze273.0ms (1.1%)

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)

sample47.0ms (0.2%)

Algorithm
intervals
Results
23.0ms256×body128valid
7.0ms256×pre128true
Compiler

Compiled 51 to 39 computations (23.5% saved)

simplify158.0ms (0.6%)

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)

localize39.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

series510.0ms (2%)

Counts
4 → 80
Calls

4 calls:

264.0ms
(*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v))))))
175.0ms
(log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))))
69.0ms
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))))))
2.0ms
(exp.f32 (/.f32 -2 v))

rewrite18.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
21×add-sqr-sqrt_binary32
19×*-un-lft-identity_binary32
19×add-cube-cbrt_binary32
15×log-prod_binary32
13×exp-prod_binary32
Counts
4 → 88
Calls

4 calls:

5.0ms
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))))))
5.0ms
(*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v))))))
2.0ms
(exp.f32 (/.f32 -2 v))
2.0ms
(log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))))

simplify135.0ms (0.5%)

Algorithm
egg-herbie
Rules
415×fma-neg_binary32
305×fma-def_binary32
276×+-commutative_binary32
243×times-frac_binary32
203×associate-+r+_binary32
Counts
168 → 243
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
04065800
112085365
247045361
350325361

prune321.0ms (1.2%)

Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New2367243
Fresh101
Picked101
Done000
Total2387245
Error
0.0b
Counts
245 → 7
Alt Table
StatusErrorProgram
0.2b
(+.f32 1 (*.f32 (*.f32 (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)))) (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u))))) (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u))))))
29.1b
(-.f32 (+.f32 (*.f32 2/3 (/.f32 u (pow.f32 v 3))) (+.f32 (*.f32 2 (/.f32 u v)) (+.f32 (*.f32 2 u) (+.f32 (*.f32 4/3 (/.f32 u (pow.f32 v 2))) (+.f32 (*.f32 8/3 (/.f32 (pow.f32 u 3) (pow.f32 v 2))) (*.f32 8 (/.f32 (pow.f32 u 3) (pow.f32 v 3)))))))) (+.f32 (*.f32 4 (/.f32 (pow.f32 u 4) (pow.f32 v 3))) (+.f32 1 (+.f32 (*.f32 2 (/.f32 (pow.f32 u 2) v)) (+.f32 (*.f32 4 (/.f32 (pow.f32 u 2) (pow.f32 v 2))) (*.f32 14/3 (/.f32 (pow.f32 u 2) (pow.f32 v 3))))))))
0.3b
(*.f32 (*.f32 (cbrt.f32 (fma.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)) 1)) (cbrt.f32 (fma.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)) 1))) (cbrt.f32 (fma.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)) 1)))
28.8b
(-.f32 (fma.f32 2 (/.f32 u v) (fma.f32 8/3 (/.f32 (pow.f32 u 3) (*.f32 v v)) (fma.f32 u 2 (*.f32 4/3 (/.f32 u (*.f32 v v)))))) (fma.f32 4 (*.f32 (/.f32 u v) (/.f32 u v)) (fma.f32 2 (/.f32 (*.f32 u u) v) 1)))
0.3b
(*.f32 (*.f32 (cbrt.f32 (+.f32 1 (*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))))))) (cbrt.f32 (+.f32 1 (*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v))))))))) (cbrt.f32 (+.f32 1 (*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))))))))
0.2b
(+.f32 1 (*.f32 (*.f32 (cbrt.f32 v) (cbrt.f32 v)) (*.f32 (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)) (cbrt.f32 v))))
1.0b
(log.f32 (*.f32 (pow.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u) v) (E.f32)))
Compiler

Compiled 8247 to 6032 computations (26.9% saved)

localize49.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u))))
0.3b
(*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)))
0.3b
(*.f32 (*.f32 (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)))) (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u))))) (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)))))
0.5b
(*.f32 (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)))) (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)))))

series2.2s (8.4%)

Counts
4 → 96
Calls

4 calls:

1.1s
(*.f32 (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)))) (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)))))
614.0ms
(cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u))))
246.0ms
(*.f32 (*.f32 (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)))) (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u))))) (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)))))
236.0ms
(*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)))

rewrite23.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
33×pow1_binary32
18×add-sqr-sqrt_binary32
16×pow1/3_binary32
13×*-un-lft-identity_binary32
13×add-cube-cbrt_binary32
Counts
4 → 106
Calls

4 calls:

6.0ms
(*.f32 (*.f32 (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)))) (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u))))) (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)))))
4.0ms
(*.f32 (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)))) (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)))))
3.0ms
(*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)))
2.0ms
(cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u))))

simplify334.0ms (1.3%)

Algorithm
egg-herbie
Rules
501×*-commutative_binary32
298×+-commutative_binary32
269×fma-def_binary32
234×associate-+r+_binary32
216×associate-*r*_binary32
Counts
202 → 228
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0121617870
1427117253
2498517253
3496717253

prune1.2s (4.7%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New3822384
Fresh156
Picked011
Done000
Total3838391
Error
0b
Counts
391 → 8
Alt Table
StatusErrorProgram
0.2b
(+.f32 1 (*.f32 (*.f32 (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)))) (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u))))) (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u))))))
29.1b
(-.f32 (+.f32 (*.f32 2/3 (/.f32 u (pow.f32 v 3))) (+.f32 (*.f32 2 (/.f32 u v)) (+.f32 (*.f32 2 u) (+.f32 (*.f32 4/3 (/.f32 u (pow.f32 v 2))) (+.f32 (*.f32 8/3 (/.f32 (pow.f32 u 3) (pow.f32 v 2))) (*.f32 8 (/.f32 (pow.f32 u 3) (pow.f32 v 3)))))))) (+.f32 (*.f32 4 (/.f32 (pow.f32 u 4) (pow.f32 v 3))) (+.f32 1 (+.f32 (*.f32 2 (/.f32 (pow.f32 u 2) v)) (+.f32 (*.f32 4 (/.f32 (pow.f32 u 2) (pow.f32 v 2))) (*.f32 14/3 (/.f32 (pow.f32 u 2) (pow.f32 v 3))))))))
0.3b
(*.f32 (*.f32 (cbrt.f32 (fma.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)) 1)) (cbrt.f32 (fma.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)) 1))) (cbrt.f32 (fma.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)) 1)))
28.8b
(-.f32 (fma.f32 2 (/.f32 u v) (fma.f32 8/3 (/.f32 (pow.f32 u 3) (*.f32 v v)) (fma.f32 u 2 (*.f32 4/3 (/.f32 u (*.f32 v v)))))) (fma.f32 4 (*.f32 (/.f32 u v) (/.f32 u v)) (fma.f32 2 (/.f32 (*.f32 u u) v) 1)))
0.2b
(+.f32 1 (*.f32 (*.f32 (*.f32 (cbrt.f32 (*.f32 (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)))) (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)))))) (cbrt.f32 (*.f32 (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)))) (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u))))))) (cbrt.f32 (*.f32 (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)))) (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u))))))) (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u))))))
0.3b
(*.f32 (*.f32 (cbrt.f32 (+.f32 1 (*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))))))) (cbrt.f32 (+.f32 1 (*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v))))))))) (cbrt.f32 (+.f32 1 (*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))))))))
0.1b
(+.f32 1 (*.f32 (exp.f32 (*.f32 1/3 (fma.f32 2 (log.f32 v) (log.f32 (pow.f32 (log.f32 (-.f32 (+.f32 (exp.f32 (/.f32 -2 v)) u) (*.f32 (exp.f32 (/.f32 -2 v)) u))) 2))))) (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u))))))
1.0b
(log.f32 (*.f32 (pow.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u) v) (E.f32)))
Compiler

Compiled 43169 to 33677 computations (22% saved)

localize215.0ms (0.8%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f32 (exp.f32 (*.f32 1/3 (fma.f32 2 (log.f32 v) (log.f32 (pow.f32 (log.f32 (-.f32 (+.f32 (exp.f32 (/.f32 -2 v)) u) (*.f32 (exp.f32 (/.f32 -2 v)) u))) 2))))) (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)))))
0.4b
(*.f32 1/3 (fma.f32 2 (log.f32 v) (log.f32 (pow.f32 (log.f32 (-.f32 (+.f32 (exp.f32 (/.f32 -2 v)) u) (*.f32 (exp.f32 (/.f32 -2 v)) u))) 2))))
0.6b
(pow.f32 (log.f32 (-.f32 (+.f32 (exp.f32 (/.f32 -2 v)) u) (*.f32 (exp.f32 (/.f32 -2 v)) u))) 2)
2.4b
(exp.f32 (*.f32 1/3 (fma.f32 2 (log.f32 v) (log.f32 (pow.f32 (log.f32 (-.f32 (+.f32 (exp.f32 (/.f32 -2 v)) u) (*.f32 (exp.f32 (/.f32 -2 v)) u))) 2)))))

series4.4s (17%)

Counts
4 → 92
Calls

4 calls:

2.6s
(*.f32 (exp.f32 (*.f32 1/3 (fma.f32 2 (log.f32 v) (log.f32 (pow.f32 (log.f32 (-.f32 (+.f32 (exp.f32 (/.f32 -2 v)) u) (*.f32 (exp.f32 (/.f32 -2 v)) u))) 2))))) (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)))))
860.0ms
(exp.f32 (*.f32 1/3 (fma.f32 2 (log.f32 v) (log.f32 (pow.f32 (log.f32 (-.f32 (+.f32 (exp.f32 (/.f32 -2 v)) u) (*.f32 (exp.f32 (/.f32 -2 v)) u))) 2)))))
768.0ms
(*.f32 1/3 (fma.f32 2 (log.f32 v) (log.f32 (pow.f32 (log.f32 (-.f32 (+.f32 (exp.f32 (/.f32 -2 v)) u) (*.f32 (exp.f32 (/.f32 -2 v)) u))) 2))))
208.0ms
(pow.f32 (log.f32 (-.f32 (+.f32 (exp.f32 (/.f32 -2 v)) u) (*.f32 (exp.f32 (/.f32 -2 v)) u))) 2)

rewrite18.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
14×add-sqr-sqrt_binary32
10×*-un-lft-identity_binary32
10×add-cube-cbrt_binary32
10×pow1_binary32
associate-*l*_binary32
Counts
4 → 80
Calls

4 calls:

5.0ms
(*.f32 (exp.f32 (*.f32 1/3 (fma.f32 2 (log.f32 v) (log.f32 (pow.f32 (log.f32 (-.f32 (+.f32 (exp.f32 (/.f32 -2 v)) u) (*.f32 (exp.f32 (/.f32 -2 v)) u))) 2))))) (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)))))
3.0ms
(pow.f32 (log.f32 (-.f32 (+.f32 (exp.f32 (/.f32 -2 v)) u) (*.f32 (exp.f32 (/.f32 -2 v)) u))) 2)
3.0ms
(*.f32 1/3 (fma.f32 2 (log.f32 v) (log.f32 (pow.f32 (log.f32 (-.f32 (+.f32 (exp.f32 (/.f32 -2 v)) u) (*.f32 (exp.f32 (/.f32 -2 v)) u))) 2))))
3.0ms
(exp.f32 (*.f32 1/3 (fma.f32 2 (log.f32 v) (log.f32 (pow.f32 (log.f32 (-.f32 (+.f32 (exp.f32 (/.f32 -2 v)) u) (*.f32 (exp.f32 (/.f32 -2 v)) u))) 2)))))

simplify428.0ms (1.7%)

Algorithm
egg-herbie
Rules
688×fma-def_binary32
351×associate-*r/_binary32
273×associate-/r*_binary32
209×associate-/l*_binary32
163×times-frac_binary32
Counts
172 → 245
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0238844574
1548744574

prune1.6s (6.1%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New2441245
Fresh156
Picked101
Done011
Total2467253
Error
0b
Counts
253 → 7
Alt Table
StatusErrorProgram
0.2b
(+.f32 1 (*.f32 (*.f32 (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)))) (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u))))) (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u))))))
29.1b
(-.f32 (+.f32 (*.f32 2/3 (/.f32 u (pow.f32 v 3))) (+.f32 (*.f32 2 (/.f32 u v)) (+.f32 (*.f32 2 u) (+.f32 (*.f32 4/3 (/.f32 u (pow.f32 v 2))) (+.f32 (*.f32 8/3 (/.f32 (pow.f32 u 3) (pow.f32 v 2))) (*.f32 8 (/.f32 (pow.f32 u 3) (pow.f32 v 3)))))))) (+.f32 (*.f32 4 (/.f32 (pow.f32 u 4) (pow.f32 v 3))) (+.f32 1 (+.f32 (*.f32 2 (/.f32 (pow.f32 u 2) v)) (+.f32 (*.f32 4 (/.f32 (pow.f32 u 2) (pow.f32 v 2))) (*.f32 14/3 (/.f32 (pow.f32 u 2) (pow.f32 v 3))))))))
0.3b
(*.f32 (*.f32 (cbrt.f32 (fma.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)) 1)) (cbrt.f32 (fma.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)) 1))) (cbrt.f32 (fma.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)) 1)))
28.8b
(-.f32 (fma.f32 2 (/.f32 u v) (fma.f32 8/3 (/.f32 (pow.f32 u 3) (*.f32 v v)) (fma.f32 u 2 (*.f32 4/3 (/.f32 u (*.f32 v v)))))) (fma.f32 4 (*.f32 (/.f32 u v) (/.f32 u v)) (fma.f32 2 (/.f32 (*.f32 u u) v) 1)))
0.3b
(*.f32 (*.f32 (cbrt.f32 (+.f32 1 (*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))))))) (cbrt.f32 (+.f32 1 (*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v))))))))) (cbrt.f32 (+.f32 1 (*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))))))))
1.0b
(log.f32 (*.f32 (pow.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u) v) (E.f32)))
0.1b
(+.f32 1 (*.f32 (cbrt.f32 (*.f32 (exp.f32 (+.f32 (*.f32 1/3 (fma.f32 2 (log.f32 v) (log.f32 (pow.f32 (log.f32 (-.f32 (+.f32 (exp.f32 (/.f32 -2 v)) u) (*.f32 (exp.f32 (/.f32 -2 v)) u))) 2)))) (*.f32 1/3 (fma.f32 2 (log.f32 v) (log.f32 (pow.f32 (log.f32 (-.f32 (+.f32 (exp.f32 (/.f32 -2 v)) u) (*.f32 (exp.f32 (/.f32 -2 v)) u))) 2)))))) (exp.f32 (*.f32 1/3 (fma.f32 2 (log.f32 v) (log.f32 (pow.f32 (log.f32 (-.f32 (+.f32 (exp.f32 (/.f32 -2 v)) u) (*.f32 (exp.f32 (/.f32 -2 v)) u))) 2))))))) (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u))))))
Compiler

Compiled 61598 to 49599 computations (19.5% saved)

localize110.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.6b
(pow.f32 (log.f32 (-.f32 (+.f32 (exp.f32 (/.f32 -2 v)) u) (*.f32 (exp.f32 (/.f32 -2 v)) u))) 2)
2.0b
(exp.f32 (+.f32 (*.f32 1/3 (fma.f32 2 (log.f32 v) (log.f32 (pow.f32 (log.f32 (-.f32 (+.f32 (exp.f32 (/.f32 -2 v)) u) (*.f32 (exp.f32 (/.f32 -2 v)) u))) 2)))) (*.f32 1/3 (fma.f32 2 (log.f32 v) (log.f32 (pow.f32 (log.f32 (-.f32 (+.f32 (exp.f32 (/.f32 -2 v)) u) (*.f32 (exp.f32 (/.f32 -2 v)) u))) 2))))))
2.4b
(exp.f32 (*.f32 1/3 (fma.f32 2 (log.f32 v) (log.f32 (pow.f32 (log.f32 (-.f32 (+.f32 (exp.f32 (/.f32 -2 v)) u) (*.f32 (exp.f32 (/.f32 -2 v)) u))) 2)))))
12.4b
(cbrt.f32 (*.f32 (exp.f32 (+.f32 (*.f32 1/3 (fma.f32 2 (log.f32 v) (log.f32 (pow.f32 (log.f32 (-.f32 (+.f32 (exp.f32 (/.f32 -2 v)) u) (*.f32 (exp.f32 (/.f32 -2 v)) u))) 2)))) (*.f32 1/3 (fma.f32 2 (log.f32 v) (log.f32 (pow.f32 (log.f32 (-.f32 (+.f32 (exp.f32 (/.f32 -2 v)) u) (*.f32 (exp.f32 (/.f32 -2 v)) u))) 2)))))) (exp.f32 (*.f32 1/3 (fma.f32 2 (log.f32 v) (log.f32 (pow.f32 (log.f32 (-.f32 (+.f32 (exp.f32 (/.f32 -2 v)) u) (*.f32 (exp.f32 (/.f32 -2 v)) u))) 2)))))))

series6.8s (26.2%)

Counts
2 → 48
Calls

2 calls:

5.1s
(cbrt.f32 (*.f32 (exp.f32 (+.f32 (*.f32 1/3 (fma.f32 2 (log.f32 v) (log.f32 (pow.f32 (log.f32 (-.f32 (+.f32 (exp.f32 (/.f32 -2 v)) u) (*.f32 (exp.f32 (/.f32 -2 v)) u))) 2)))) (*.f32 1/3 (fma.f32 2 (log.f32 v) (log.f32 (pow.f32 (log.f32 (-.f32 (+.f32 (exp.f32 (/.f32 -2 v)) u) (*.f32 (exp.f32 (/.f32 -2 v)) u))) 2)))))) (exp.f32 (*.f32 1/3 (fma.f32 2 (log.f32 v) (log.f32 (pow.f32 (log.f32 (-.f32 (+.f32 (exp.f32 (/.f32 -2 v)) u) (*.f32 (exp.f32 (/.f32 -2 v)) u))) 2)))))))
1.7s
(exp.f32 (+.f32 (*.f32 1/3 (fma.f32 2 (log.f32 v) (log.f32 (pow.f32 (log.f32 (-.f32 (+.f32 (exp.f32 (/.f32 -2 v)) u) (*.f32 (exp.f32 (/.f32 -2 v)) u))) 2)))) (*.f32 1/3 (fma.f32 2 (log.f32 v) (log.f32 (pow.f32 (log.f32 (-.f32 (+.f32 (exp.f32 (/.f32 -2 v)) u) (*.f32 (exp.f32 (/.f32 -2 v)) u))) 2))))))

rewrite26.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
exp-prod_binary32
add-log-exp_binary32
*-un-lft-identity_binary32
add-sqr-sqrt_binary32
add-cube-cbrt_binary32
Counts
2 → 30
Calls

2 calls:

12.0ms
(cbrt.f32 (*.f32 (exp.f32 (+.f32 (*.f32 1/3 (fma.f32 2 (log.f32 v) (log.f32 (pow.f32 (log.f32 (-.f32 (+.f32 (exp.f32 (/.f32 -2 v)) u) (*.f32 (exp.f32 (/.f32 -2 v)) u))) 2)))) (*.f32 1/3 (fma.f32 2 (log.f32 v) (log.f32 (pow.f32 (log.f32 (-.f32 (+.f32 (exp.f32 (/.f32 -2 v)) u) (*.f32 (exp.f32 (/.f32 -2 v)) u))) 2)))))) (exp.f32 (*.f32 1/3 (fma.f32 2 (log.f32 v) (log.f32 (pow.f32 (log.f32 (-.f32 (+.f32 (exp.f32 (/.f32 -2 v)) u) (*.f32 (exp.f32 (/.f32 -2 v)) u))) 2)))))))
9.0ms
(exp.f32 (+.f32 (*.f32 1/3 (fma.f32 2 (log.f32 v) (log.f32 (pow.f32 (log.f32 (-.f32 (+.f32 (exp.f32 (/.f32 -2 v)) u) (*.f32 (exp.f32 (/.f32 -2 v)) u))) 2)))) (*.f32 1/3 (fma.f32 2 (log.f32 v) (log.f32 (pow.f32 (log.f32 (-.f32 (+.f32 (exp.f32 (/.f32 -2 v)) u) (*.f32 (exp.f32 (/.f32 -2 v)) u))) 2))))))

simplify575.0ms (2.2%)

Algorithm
egg-herbie
Rules
582×*-commutative_binary32
362×+-commutative_binary32
335×fma-def_binary32
305×associate-+r+_binary32
244×associate-*r*_binary32
Counts
78 → 128
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0141329582
1527229582

prune3.3s (12.7%)

Pruning

7 alts after pruning (5 fresh and 2 done)

PrunedKeptTotal
New3520352
Fresh055
Picked011
Done011
Total3527359
Error
0b
Counts
359 → 7
Alt Table
StatusErrorProgram
0.2b
(+.f32 1 (*.f32 (*.f32 (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)))) (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u))))) (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u))))))
29.1b
(-.f32 (+.f32 (*.f32 2/3 (/.f32 u (pow.f32 v 3))) (+.f32 (*.f32 2 (/.f32 u v)) (+.f32 (*.f32 2 u) (+.f32 (*.f32 4/3 (/.f32 u (pow.f32 v 2))) (+.f32 (*.f32 8/3 (/.f32 (pow.f32 u 3) (pow.f32 v 2))) (*.f32 8 (/.f32 (pow.f32 u 3) (pow.f32 v 3)))))))) (+.f32 (*.f32 4 (/.f32 (pow.f32 u 4) (pow.f32 v 3))) (+.f32 1 (+.f32 (*.f32 2 (/.f32 (pow.f32 u 2) v)) (+.f32 (*.f32 4 (/.f32 (pow.f32 u 2) (pow.f32 v 2))) (*.f32 14/3 (/.f32 (pow.f32 u 2) (pow.f32 v 3))))))))
0.3b
(*.f32 (*.f32 (cbrt.f32 (fma.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)) 1)) (cbrt.f32 (fma.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)) 1))) (cbrt.f32 (fma.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u)) 1)))
28.8b
(-.f32 (fma.f32 2 (/.f32 u v) (fma.f32 8/3 (/.f32 (pow.f32 u 3) (*.f32 v v)) (fma.f32 u 2 (*.f32 4/3 (/.f32 u (*.f32 v v)))))) (fma.f32 4 (*.f32 (/.f32 u v) (/.f32 u v)) (fma.f32 2 (/.f32 (*.f32 u u) v) 1)))
0.3b
(*.f32 (*.f32 (cbrt.f32 (+.f32 1 (*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))))))) (cbrt.f32 (+.f32 1 (*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v))))))))) (cbrt.f32 (+.f32 1 (*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))))))))
1.0b
(log.f32 (*.f32 (pow.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u) v) (E.f32)))
0.1b
(+.f32 1 (*.f32 (cbrt.f32 (*.f32 (exp.f32 (+.f32 (*.f32 1/3 (fma.f32 2 (log.f32 v) (log.f32 (pow.f32 (log.f32 (-.f32 (+.f32 (exp.f32 (/.f32 -2 v)) u) (*.f32 (exp.f32 (/.f32 -2 v)) u))) 2)))) (*.f32 1/3 (fma.f32 2 (log.f32 v) (log.f32 (pow.f32 (log.f32 (-.f32 (+.f32 (exp.f32 (/.f32 -2 v)) u) (*.f32 (exp.f32 (/.f32 -2 v)) u))) 2)))))) (exp.f32 (*.f32 1/3 (fma.f32 2 (log.f32 v) (log.f32 (pow.f32 (log.f32 (-.f32 (+.f32 (exp.f32 (/.f32 -2 v)) u) (*.f32 (exp.f32 (/.f32 -2 v)) u))) 2))))))) (cbrt.f32 (*.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u) u))))))
Compiler

Compiled 86713 to 68983 computations (20.4% saved)

regimes1.4s (5.3%)

Accuracy

Total 0.1b remaining (74.8%)

Threshold costs 0.1b (74.8%)

Counts
215 → 1
Compiler

Compiled 37103 to 28307 computations (23.7% saved)

simplify5.0ms (0%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
032107
149107
260107
366107
469107
568107

end2.0ms (0%)

Compiler

Compiled 69 to 54 computations (21.7% saved)

sample1.8s (6.9%)

Algorithm
intervals
Results
799.0ms8000×body128valid
214.0ms8000×pre128true
Compiler

Compiled 485 to 363 computations (25.2% saved)

Profiling

Loading profile data...