Details

Time bar (total: 6.0s)

analyze8.0ms (0.1%)

Algorithm
search
Search
TrueOtherFalseIter
0%25%75%0
0%25%75%1
0%12.5%87.5%2
0%6.3%93.7%3
0%3.1%96.9%4
0%1.6%98.4%5
0%0.8%99.2%6
0%0.4%99.6%7
0%0.2%99.8%8
0.1%0.1%99.8%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 107 to 71 computations (33.6% saved)

sample2.7s (44.9%)

Results
2.6s8256×body128valid
46.0ms158×body128invalid
Compiler

Compiled 214 to 142 computations (33.6% saved)

preprocess27.0ms (0.5%)

Algorithm
egg-herbie
Rules
626×associate-*l/_binary64
457×associate-*r/_binary64
381×associate-/l*_binary64
344×distribute-rgt-in_binary64
324×distribute-lft-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
035152
19182
230558
3148152
011
Stop Event
saturated
node limit
Compiler

Compiled 104 to 69 computations (33.7% saved)

simplify18.0ms (0.3%)

Algorithm
egg-herbie
Rules
626×associate-*l/_binary64
457×associate-*r/_binary64
381×associate-/l*_binary64
344×distribute-rgt-in_binary64
324×distribute-lft-in_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
035152
19182
230558
3148152
Stop Event
node limit
Counts
1 → 2

prune10.0ms (0.2%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
1.2b
Counts
3 → 2
Alt Table
StatusErrorProgram
2.7b
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 (PI.f64))) (exp.f64 (*.f64 (fabs.f64 x) (fabs.f64 x)))) (+.f64 (+.f64 (+.f64 (/.f64 1 (fabs.f64 x)) (*.f64 (/.f64 1 2) (*.f64 (*.f64 (/.f64 1 (fabs.f64 x)) (/.f64 1 (fabs.f64 x))) (/.f64 1 (fabs.f64 x))))) (*.f64 (/.f64 3 4) (*.f64 (*.f64 (*.f64 (*.f64 (/.f64 1 (fabs.f64 x)) (/.f64 1 (fabs.f64 x))) (/.f64 1 (fabs.f64 x))) (/.f64 1 (fabs.f64 x))) (/.f64 1 (fabs.f64 x))))) (*.f64 (/.f64 15 8) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (/.f64 1 (fabs.f64 x)) (/.f64 1 (fabs.f64 x))) (/.f64 1 (fabs.f64 x))) (/.f64 1 (fabs.f64 x))) (/.f64 1 (fabs.f64 x))) (/.f64 1 (fabs.f64 x))) (/.f64 1 (fabs.f64 x))))))
1.3b
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (sqrt.f64 (PI.f64))) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
Compiler

Compiled 413 to 278 computations (32.7% saved)

localize23.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (sqrt.f64 (PI.f64))) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
1.0b
(sqrt.f64 (PI.f64))
1.1b
(pow.f64 (exp.f64 x) x)
1.1b
(pow.f64 (/.f64 1 (fabs.f64 x)) 5)

series83.0ms (1.4%)

Counts
4 → 36
Calls

9 calls:

27.0ms
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (sqrt.f64 (PI.f64))) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
x
-inf
26.0ms
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (sqrt.f64 (PI.f64))) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
x
inf
10.0ms
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (sqrt.f64 (PI.f64))) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
x
0
6.0ms
(pow.f64 (/.f64 1 (fabs.f64 x)) 5)
x
-inf
6.0ms
(pow.f64 (/.f64 1 (fabs.f64 x)) 5)
x
inf

rewrite38.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
270×log1p-expm1-u_binary64
270×expm1-log1p-u_binary64
268×add-cbrt-cube_binary64
266×add-log-exp_binary64
263×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02571
157961
Stop Event
node limit
Counts
4 → 65

simplify44.0ms (0.7%)

Algorithm
egg-herbie
Rules
598×fma-def_binary64
355×associate-/l/_binary64
340×associate-+l+_binary64
325×associate-+r+_binary64
221×times-frac_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0991346
12861234
2952956
34474833
Stop Event
node limit
Counts
101 → 89

prune119.0ms (2%)

Pruning

15 alts after pruning (15 fresh and 0 done)

PrunedKeptTotal
New741589
Fresh101
Picked101
Done000
Total761591
Error
0.3b
Counts
91 → 15
Alt Table
StatusErrorProgram
1.4b
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (cbrt.f64 (pow.f64 (PI.f64) 3/2))) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
1.7b
(*.f64 (/.f64 (*.f64 (pow.f64 (sqrt.f64 (exp.f64 x)) x) (pow.f64 (sqrt.f64 (exp.f64 x)) x)) (sqrt.f64 (PI.f64))) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
2.0b
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 (cbrt.f64 (sqrt.f64 (PI.f64))) 3)) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
1.5b
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (sqrt.f64 (PI.f64))) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (-.f64 (exp.f64 (log1p.f64 (pow.f64 (fabs.f64 x) -5))) 1) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
1.7b
(*.f64 (/.f64 (*.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 x) x)) 2) (cbrt.f64 (pow.f64 (exp.f64 x) x))) (sqrt.f64 (PI.f64))) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
1.2b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (*.f64 (+.f64 (/.f64 1/2 (*.f64 x x)) 1) (/.f64 (pow.f64 (exp.f64 x) x) x)) (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))))
11.4b
(pow.f64 (pow.f64 (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (sqrt.f64 (PI.f64))) (fma.f64 (pow.f64 (fabs.f64 x) -5) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))) (/.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (fabs.f64 x)))) 3) 1/3)
2.3b
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (*.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (PI.f64))) 2) (cbrt.f64 (sqrt.f64 (PI.f64))))) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
1.2b
(/.f64 (*.f64 (pow.f64 (exp.f64 x) x) (fma.f64 (pow.f64 (fabs.f64 x) -5) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))) (/.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (fabs.f64 x)))) (sqrt.f64 (PI.f64)))
1.3b
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (sqrt.f64 (PI.f64))) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (log.f64 (exp.f64 (pow.f64 (fabs.f64 x) -5))) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
1.5b
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (expm1.f64 (log1p.f64 (sqrt.f64 (PI.f64))))) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
2.7b
(*.f64 (/.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (exp.f64 x)) 2) x) (pow.f64 (cbrt.f64 (exp.f64 x)) x)) (sqrt.f64 (PI.f64))) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
1.3b
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 (sqrt.f64 (sqrt.f64 (PI.f64))) 2)) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
2.5b
(+.f64 (*.f64 3/4 (*.f64 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 (fabs.f64 x) 5)) (sqrt.f64 (/.f64 1 (PI.f64))))) (+.f64 (*.f64 15/8 (*.f64 (/.f64 (exp.f64 (pow.f64 x 2)) (*.f64 (pow.f64 (fabs.f64 x) 5) (pow.f64 x 2))) (sqrt.f64 (/.f64 1 (PI.f64))))) (+.f64 (*.f64 (/.f64 (exp.f64 (pow.f64 x 2)) (fabs.f64 x)) (sqrt.f64 (/.f64 1 (PI.f64)))) (*.f64 1/2 (*.f64 (/.f64 (exp.f64 (pow.f64 x 2)) (*.f64 (fabs.f64 x) (pow.f64 x 2))) (sqrt.f64 (/.f64 1 (PI.f64))))))))
1.7b
(pow.f64 (cbrt.f64 (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (sqrt.f64 (PI.f64))) (fma.f64 (pow.f64 (fabs.f64 x) -5) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))) (/.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (fabs.f64 x))))) 3)
Compiler

Compiled 4521 to 2838 computations (37.2% saved)

localize20.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5))
0.4b
(*.f64 (+.f64 (/.f64 1/2 (*.f64 x x)) 1) (/.f64 (pow.f64 (exp.f64 x) x) x))
0.4b
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))
1.1b
(pow.f64 (exp.f64 x) x)

series24.0ms (0.4%)

Counts
3 → 36
Calls

9 calls:

6.0ms
(*.f64 (+.f64 (/.f64 1/2 (*.f64 x x)) 1) (/.f64 (pow.f64 (exp.f64 x) x) x))
x
inf
4.0ms
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))
x
-inf
3.0ms
(*.f64 (+.f64 (/.f64 1/2 (*.f64 x x)) 1) (/.f64 (pow.f64 (exp.f64 x) x) x))
x
-inf
3.0ms
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))
x
inf
3.0ms
(/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5))
x
-inf

rewrite36.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
212×add-sqr-sqrt_binary64
203×log1p-expm1-u_binary64
203×expm1-log1p-u_binary64
201×add-cbrt-cube_binary64
201×add-log-exp_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01957
143753
Stop Event
node limit
Counts
3 → 90

simplify39.0ms (0.7%)

Algorithm
egg-herbie
Rules
688×associate-*l*_binary64
685×associate-*l/_binary64
626×fma-def_binary64
472×associate-*r/_binary64
282×associate-/r/_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
065685
1163681
2366661
3835625
42301625
Stop Event
node limit
Counts
126 → 120

prune207.0ms (3.5%)

Pruning

21 alts after pruning (21 fresh and 0 done)

PrunedKeptTotal
New1608168
Fresh11314
Picked101
Done000
Total16221183
Error
0.3b
Counts
183 → 21
Alt Table
StatusErrorProgram
1.4b
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (cbrt.f64 (pow.f64 (PI.f64) 3/2))) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
1.7b
(*.f64 (/.f64 (*.f64 (pow.f64 (sqrt.f64 (exp.f64 x)) x) (pow.f64 (sqrt.f64 (exp.f64 x)) x)) (sqrt.f64 (PI.f64))) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
2.5b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (-.f64 (/.f64 1/4 (pow.f64 x 4)) 1) (*.f64 (/.f64 x (exp.f64 (*.f64 x x))) (fma.f64 1/2 (pow.f64 x -2) -1))) (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))))
1.3b
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 (sqrt.f64 (sqrt.f64 (PI.f64))) 2)) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
2.7b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (/.f64 (exp.f64 (*.f64 x x)) x)))) 1) (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))))
2.0b
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 (cbrt.f64 (sqrt.f64 (PI.f64))) 3)) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
1.5b
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (sqrt.f64 (PI.f64))) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (-.f64 (exp.f64 (log1p.f64 (pow.f64 (fabs.f64 x) -5))) 1) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
1.7b
(*.f64 (/.f64 (*.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 x) x)) 2) (cbrt.f64 (pow.f64 (exp.f64 x) x))) (sqrt.f64 (PI.f64))) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
1.5b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (*.f64 (+.f64 (/.f64 1/2 (*.f64 x x)) 1) (/.f64 (*.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 x) x)) 2) (cbrt.f64 (pow.f64 (exp.f64 x) x))) x)) (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))))
1.2b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (*.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (pow.f64 (exp.f64 x) x)) x) (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))))
1.7b
(pow.f64 (cbrt.f64 (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (sqrt.f64 (PI.f64))) (fma.f64 (pow.f64 (fabs.f64 x) -5) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))) (/.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (fabs.f64 x))))) 3)
1.6b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (*.f64 (+.f64 (/.f64 1/2 (*.f64 x x)) 1) (/.f64 (*.f64 (pow.f64 (sqrt.f64 (exp.f64 x)) x) (pow.f64 (sqrt.f64 (exp.f64 x)) x)) x)) (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))))
11.4b
(pow.f64 (pow.f64 (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (sqrt.f64 (PI.f64))) (fma.f64 (pow.f64 (fabs.f64 x) -5) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))) (/.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (fabs.f64 x)))) 3) 1/3)
2.3b
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (*.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (PI.f64))) 2) (cbrt.f64 (sqrt.f64 (PI.f64))))) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
1.2b
(/.f64 (*.f64 (pow.f64 (exp.f64 x) x) (fma.f64 (pow.f64 (fabs.f64 x) -5) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))) (/.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (fabs.f64 x)))) (sqrt.f64 (PI.f64)))
1.3b
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (sqrt.f64 (PI.f64))) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (log.f64 (exp.f64 (pow.f64 (fabs.f64 x) -5))) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
1.5b
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (expm1.f64 (log1p.f64 (sqrt.f64 (PI.f64))))) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
2.7b
(*.f64 (/.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (exp.f64 x)) 2) x) (pow.f64 (cbrt.f64 (exp.f64 x)) x)) (sqrt.f64 (PI.f64))) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
1.3b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (*.f64 (+.f64 (/.f64 1/2 (*.f64 x x)) 1) (/.f64 (*.f64 (sqrt.f64 (pow.f64 (exp.f64 x) x)) (sqrt.f64 (pow.f64 (exp.f64 x) x))) x)) (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))))
1.2b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (*.f64 (+.f64 (/.f64 1/2 (*.f64 x x)) 1) (/.f64 (pow.f64 (exp.f64 x) x) x)) (*.f64 (pow.f64 (exp.f64 x) x) (+.f64 (/.f64 3/4 (pow.f64 x 5)) (/.f64 15/8 (pow.f64 x 7))))))
2.6b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (*.f64 (+.f64 (/.f64 1/2 (*.f64 x x)) 1) (/.f64 (expm1.f64 (log1p.f64 (pow.f64 (exp.f64 x) x))) x)) (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))))
Compiler

Compiled 8650 to 5207 computations (39.8% saved)

localize19.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5))
0.4b
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))
0.4b
(*.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (pow.f64 (exp.f64 x) x))
1.1b
(pow.f64 (exp.f64 x) x)

series6.0ms (0.1%)

Counts
1 → 12
Calls

3 calls:

3.0ms
(*.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (pow.f64 (exp.f64 x) x))
x
-inf
2.0ms
(*.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (pow.f64 (exp.f64 x) x))
x
inf
1.0ms
(*.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (pow.f64 (exp.f64 x) x))
x
0

rewrite40.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
440×log-prod_binary64
229×fma-def_binary64
175×prod-diff_binary64
172×expm1-udef_binary64
172×log1p-udef_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01018
121116
2261715
Stop Event
node limit
Counts
1 → 44

simplify33.0ms (0.6%)

Algorithm
egg-herbie
Rules
924×fma-def_binary64
434×associate-*l*_binary64
401×unswap-sqr_binary64
272×associate-*r*_binary64
233×times-frac_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
024208
150196
2113196
3270178
4798178
53314178
Stop Event
node limit
Counts
56 → 56

prune258.0ms (4.3%)

Pruning

22 alts after pruning (22 fresh and 0 done)

PrunedKeptTotal
New1777184
Fresh51520
Picked101
Done000
Total18322205
Error
0.3b
Counts
205 → 22
Alt Table
StatusErrorProgram
1.2b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (*.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (*.f64 (pow.f64 (exp.f64 x) (/.f64 x 2)) (pow.f64 (exp.f64 x) (/.f64 x 2)))) x) (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))))
1.2b
(/.f64 (*.f64 (pow.f64 (exp.f64 x) x) (fma.f64 (pow.f64 (fabs.f64 x) -5) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))) (/.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (fabs.f64 x)))) (sqrt.f64 (PI.f64)))
10.6b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (*.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 x) x) 3))) x) (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))))
1.3b
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (sqrt.f64 (PI.f64))) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (log.f64 (exp.f64 (pow.f64 (fabs.f64 x) -5))) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
1.1b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (*.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (pow.f64 (exp.f64 x) x)) x) (*.f64 (pow.f64 (exp.f64 x) x) (+.f64 (/.f64 3/4 (pow.f64 x 5)) (/.f64 15/8 (pow.f64 x 7))))))
1.4b
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (cbrt.f64 (pow.f64 (PI.f64) 3/2))) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
1.7b
(*.f64 (/.f64 (*.f64 (pow.f64 (sqrt.f64 (exp.f64 x)) x) (pow.f64 (sqrt.f64 (exp.f64 x)) x)) (sqrt.f64 (PI.f64))) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
2.5b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (-.f64 (/.f64 1/4 (pow.f64 x 4)) 1) (*.f64 (/.f64 x (exp.f64 (*.f64 x x))) (fma.f64 1/2 (pow.f64 x -2) -1))) (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))))
1.5b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (fma.f64 (pow.f64 (sqrt.f64 (exp.f64 x)) x) (pow.f64 (sqrt.f64 (exp.f64 x)) x) (*.f64 (/.f64 (/.f64 1/2 x) x) (pow.f64 (exp.f64 x) x))) x) (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))))
2.7b
(*.f64 (/.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (exp.f64 x)) 2) x) (pow.f64 (cbrt.f64 (exp.f64 x)) x)) (sqrt.f64 (PI.f64))) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
2.0b
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 (cbrt.f64 (sqrt.f64 (PI.f64))) 3)) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
1.5b
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (sqrt.f64 (PI.f64))) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (-.f64 (exp.f64 (log1p.f64 (pow.f64 (fabs.f64 x) -5))) 1) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
1.2b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (fma.f64 (sqrt.f64 (pow.f64 (exp.f64 x) x)) (sqrt.f64 (pow.f64 (exp.f64 x) x)) (*.f64 (/.f64 (/.f64 1/2 x) x) (pow.f64 (exp.f64 x) x))) x) (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))))
1.7b
(*.f64 (/.f64 (*.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 x) x)) 2) (cbrt.f64 (pow.f64 (exp.f64 x) x))) (sqrt.f64 (PI.f64))) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
1.5b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (*.f64 (+.f64 (/.f64 1/2 (*.f64 x x)) 1) (/.f64 (*.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 x) x)) 2) (cbrt.f64 (pow.f64 (exp.f64 x) x))) x)) (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))))
11.4b
(pow.f64 (pow.f64 (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (sqrt.f64 (PI.f64))) (fma.f64 (pow.f64 (fabs.f64 x) -5) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))) (/.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (fabs.f64 x)))) 3) 1/3)
2.3b
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (*.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (PI.f64))) 2) (cbrt.f64 (sqrt.f64 (PI.f64))))) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
1.5b
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (expm1.f64 (log1p.f64 (sqrt.f64 (PI.f64))))) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
2.7b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (/.f64 (exp.f64 (*.f64 x x)) x)))) 1) (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))))
7.7b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (fma.f64 (cbrt.f64 (pow.f64 (exp.f64 x) x)) (cbrt.f64 (pow.f64 (exp.f64 x) (+.f64 x x))) (*.f64 (/.f64 (/.f64 1/2 x) x) (pow.f64 (exp.f64 x) x))) x) (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))))
2.6b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (exp.f64 (fma.f64 x x (log1p.f64 (/.f64 (/.f64 1/2 x) x)))) x) (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))))
1.7b
(pow.f64 (cbrt.f64 (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (sqrt.f64 (PI.f64))) (fma.f64 (pow.f64 (fabs.f64 x) -5) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))) (/.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (fabs.f64 x))))) 3)
Compiler

Compiled 9401 to 5629 computations (40.1% saved)

localize21.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (*.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (pow.f64 (exp.f64 x) x)) x) (*.f64 (pow.f64 (exp.f64 x) x) (+.f64 (/.f64 3/4 (pow.f64 x 5)) (/.f64 15/8 (pow.f64 x 7))))))
0.3b
(*.f64 (pow.f64 (exp.f64 x) x) (+.f64 (/.f64 3/4 (pow.f64 x 5)) (/.f64 15/8 (pow.f64 x 7))))
0.4b
(*.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (pow.f64 (exp.f64 x) x))
1.1b
(pow.f64 (exp.f64 x) x)

series23.0ms (0.4%)

Counts
2 → 24
Calls

6 calls:

6.0ms
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (*.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (pow.f64 (exp.f64 x) x)) x) (*.f64 (pow.f64 (exp.f64 x) x) (+.f64 (/.f64 3/4 (pow.f64 x 5)) (/.f64 15/8 (pow.f64 x 7))))))
x
-inf
6.0ms
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (*.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (pow.f64 (exp.f64 x) x)) x) (*.f64 (pow.f64 (exp.f64 x) x) (+.f64 (/.f64 3/4 (pow.f64 x 5)) (/.f64 15/8 (pow.f64 x 7))))))
x
inf
3.0ms
(*.f64 (pow.f64 (exp.f64 x) x) (+.f64 (/.f64 3/4 (pow.f64 x 5)) (/.f64 15/8 (pow.f64 x 7))))
x
-inf
3.0ms
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (*.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (pow.f64 (exp.f64 x) x)) x) (*.f64 (pow.f64 (exp.f64 x) x) (+.f64 (/.f64 3/4 (pow.f64 x 5)) (/.f64 15/8 (pow.f64 x 7))))))
x
0
3.0ms
(*.f64 (pow.f64 (exp.f64 x) x) (+.f64 (/.f64 3/4 (pow.f64 x 5)) (/.f64 15/8 (pow.f64 x 7))))
x
inf

rewrite32.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
287×log1p-expm1-u_binary64
287×expm1-log1p-u_binary64
284×add-cbrt-cube_binary64
281×add-log-exp_binary64
278×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02680
160970
Stop Event
node limit
Counts
2 → 32

simplify31.0ms (0.5%)

Algorithm
egg-herbie
Rules
495×associate-*l/_binary64
470×associate-/r*_binary64
448×associate-/l*_binary64
396×associate-*r/_binary64
374×associate-*l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
069907
1189822
2532752
31773670
Stop Event
node limit
Counts
56 → 59

prune771.0ms (12.9%)

Pruning

20 alts after pruning (20 fresh and 0 done)

PrunedKeptTotal
New1594163
Fresh51621
Picked101
Done000
Total16520185
Error
0.3b
Counts
185 → 20
Alt Table
StatusErrorProgram
1.2b
(/.f64 (*.f64 (pow.f64 (exp.f64 x) x) (fma.f64 (pow.f64 (fabs.f64 x) -5) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))) (/.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (fabs.f64 x)))) (sqrt.f64 (PI.f64)))
1.3b
(pow.f64 (sqrt.f64 (*.f64 (pow.f64 (PI.f64) -1/2) (fma.f64 (pow.f64 (exp.f64 x) x) (fma.f64 15/8 (pow.f64 x -7) (*.f64 3/4 (pow.f64 x -5))) (/.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (/.f64 x (pow.f64 (exp.f64 x) x)))))) 2)
10.6b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (*.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 x) x) 3))) x) (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))))
1.3b
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (sqrt.f64 (PI.f64))) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (log.f64 (exp.f64 (pow.f64 (fabs.f64 x) -5))) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
1.4b
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (cbrt.f64 (pow.f64 (PI.f64) 3/2))) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
1.7b
(*.f64 (/.f64 (*.f64 (pow.f64 (sqrt.f64 (exp.f64 x)) x) (pow.f64 (sqrt.f64 (exp.f64 x)) x)) (sqrt.f64 (PI.f64))) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
2.5b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (-.f64 (/.f64 1/4 (pow.f64 x 4)) 1) (*.f64 (/.f64 x (exp.f64 (*.f64 x x))) (fma.f64 1/2 (pow.f64 x -2) -1))) (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))))
1.5b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (fma.f64 (pow.f64 (sqrt.f64 (exp.f64 x)) x) (pow.f64 (sqrt.f64 (exp.f64 x)) x) (*.f64 (/.f64 (/.f64 1/2 x) x) (pow.f64 (exp.f64 x) x))) x) (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))))
2.7b
(*.f64 (/.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (exp.f64 x)) 2) x) (pow.f64 (cbrt.f64 (exp.f64 x)) x)) (sqrt.f64 (PI.f64))) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
2.0b
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 (cbrt.f64 (sqrt.f64 (PI.f64))) 3)) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
1.5b
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (sqrt.f64 (PI.f64))) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (-.f64 (exp.f64 (log1p.f64 (pow.f64 (fabs.f64 x) -5))) 1) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
1.7b
(*.f64 (/.f64 (*.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 x) x)) 2) (cbrt.f64 (pow.f64 (exp.f64 x) x))) (sqrt.f64 (PI.f64))) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
2.5b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (+.f64 (exp.f64 (pow.f64 x 2)) (*.f64 1/2 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 2)))) x) (*.f64 (pow.f64 (exp.f64 x) x) (+.f64 (/.f64 3/4 (pow.f64 x 5)) (/.f64 15/8 (pow.f64 x 7))))))
1.5b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (*.f64 (+.f64 (/.f64 1/2 (*.f64 x x)) 1) (/.f64 (*.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 x) x)) 2) (cbrt.f64 (pow.f64 (exp.f64 x) x))) x)) (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))))
1.6b
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 (PI.f64) -1/2) (fma.f64 (pow.f64 (exp.f64 x) x) (fma.f64 15/8 (pow.f64 x -7) (*.f64 3/4 (pow.f64 x -5))) (/.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (/.f64 x (pow.f64 (exp.f64 x) x)))))) 3)
1.5b
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (expm1.f64 (log1p.f64 (sqrt.f64 (PI.f64))))) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
1.1b
(+.f64 (*.f64 (/.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (/.f64 x (pow.f64 (exp.f64 x) x))) (pow.f64 (PI.f64) -1/2)) (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (fma.f64 15/8 (pow.f64 x -7) (*.f64 3/4 (pow.f64 x -5)))) (pow.f64 (PI.f64) -1/2)))
2.7b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (/.f64 (exp.f64 (*.f64 x x)) x)))) 1) (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))))
7.7b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (fma.f64 (cbrt.f64 (pow.f64 (exp.f64 x) x)) (cbrt.f64 (pow.f64 (exp.f64 x) (+.f64 x x))) (*.f64 (/.f64 (/.f64 1/2 x) x) (pow.f64 (exp.f64 x) x))) x) (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))))
2.3b
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (*.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (PI.f64))) 2) (cbrt.f64 (sqrt.f64 (PI.f64))))) (+.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
Compiler

Compiled 6979 to 4386 computations (37.2% saved)

regimes855.0ms (14.3%)

Accuracy

Total 0.9b remaining (73.2%)

Threshold costs 0.9b (73.2%)

Counts
169 → 1
Compiler

Compiled 19775 to 14112 computations (28.6% saved)

simplify2.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
+-commutative_binary64
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02657
13357
Stop Event
saturated

end504.0ms (8.4%)

Stop Event
fuel
Compiler

Compiled 867 to 608 computations (29.9% saved)

Profiling

Loading profile data...