Details

Time bar (total: 5.6s)

analyze16.0ms (0.3%)

Algorithm
search
Search
TrueOtherFalseIter
0%25%75%0
0%25%75%1
0%25%75%2
0%12.5%87.5%3
0%6.3%93.7%4
0%3.1%96.9%5
0%1.6%98.4%6
0%0.8%99.2%7
0%0.4%99.6%8
0.1%0.2%99.7%9
0.1%0.1%99.8%10
0.1%0%99.8%11
0.1%0%99.8%12
0.1%0%99.9%13
0.1%0%99.9%14
Compiler

Compiled 107 to 71 computations (33.6% saved)

sample2.6s (47%)

Results
2.5s8256×body128valid
95.0ms321×body128invalid
Compiler

Compiled 214 to 142 computations (33.6% saved)

preprocess28.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
Calls
Call 1
Inputs
0
Outputs
0
Call 2
Inputs
(*.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))))))
Outputs
(*.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))))))
(*.f64 (/.f64 1 (sqrt.f64 (PI.f64))) (*.f64 (exp.f64 (*.f64 x x)) (+.f64 (+.f64 (+.f64 (/.f64 1 (fabs.f64 x)) (*.f64 1/2 (*.f64 (/.f64 1 (fabs.f64 x)) (*.f64 (/.f64 1 (fabs.f64 x)) (/.f64 1 (fabs.f64 x)))))) (*.f64 3/4 (*.f64 (/.f64 1 (fabs.f64 x)) (*.f64 (/.f64 1 (fabs.f64 x)) (*.f64 (/.f64 1 (fabs.f64 x)) (*.f64 (/.f64 1 (fabs.f64 x)) (/.f64 1 (fabs.f64 x)))))))) (*.f64 15/8 (*.f64 (/.f64 1 (fabs.f64 x)) (*.f64 (/.f64 1 (fabs.f64 x)) (*.f64 (/.f64 1 (fabs.f64 x)) (*.f64 (/.f64 1 (fabs.f64 x)) (*.f64 (/.f64 1 (fabs.f64 x)) (*.f64 (/.f64 1 (fabs.f64 x)) (/.f64 1 (fabs.f64 x))))))))))))
(*.f64 (/.f64 (exp.f64 (*.f64 x x)) (sqrt.f64 (PI.f64))) (fma.f64 15/8 (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 3) (/.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 3) (fabs.f64 x))) (fma.f64 3/4 (/.f64 (/.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 3) (fabs.f64 x)) (fabs.f64 x)) (fma.f64 1/2 (pow.f64 (/.f64 1 (fabs.f64 x)) 3) (/.f64 1 (fabs.f64 x))))))
(*.f64 (/.f64 (exp.f64 (*.f64 x x)) (sqrt.f64 (PI.f64))) (fma.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (/.f64 1 (fabs.f64 x)) (*.f64 (/.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 4) (fabs.f64 x)) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))))
(*.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 104 to 69 computations (33.7% saved)

simplify17.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
Calls
Call 1
Inputs
(*.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))))))
Outputs
(*.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))))))
(*.f64 (/.f64 1 (sqrt.f64 (PI.f64))) (*.f64 (exp.f64 (*.f64 x x)) (+.f64 (+.f64 (+.f64 (/.f64 1 (fabs.f64 x)) (*.f64 1/2 (*.f64 (/.f64 1 (fabs.f64 x)) (*.f64 (/.f64 1 (fabs.f64 x)) (/.f64 1 (fabs.f64 x)))))) (*.f64 3/4 (*.f64 (/.f64 1 (fabs.f64 x)) (*.f64 (/.f64 1 (fabs.f64 x)) (*.f64 (/.f64 1 (fabs.f64 x)) (*.f64 (/.f64 1 (fabs.f64 x)) (/.f64 1 (fabs.f64 x)))))))) (*.f64 15/8 (*.f64 (/.f64 1 (fabs.f64 x)) (*.f64 (/.f64 1 (fabs.f64 x)) (*.f64 (/.f64 1 (fabs.f64 x)) (*.f64 (/.f64 1 (fabs.f64 x)) (*.f64 (/.f64 1 (fabs.f64 x)) (*.f64 (/.f64 1 (fabs.f64 x)) (/.f64 1 (fabs.f64 x))))))))))))
(*.f64 (/.f64 (exp.f64 (*.f64 x x)) (sqrt.f64 (PI.f64))) (fma.f64 15/8 (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 3) (/.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 3) (fabs.f64 x))) (fma.f64 3/4 (/.f64 (/.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 3) (fabs.f64 x)) (fabs.f64 x)) (fma.f64 1/2 (pow.f64 (/.f64 1 (fabs.f64 x)) 3) (/.f64 1 (fabs.f64 x))))))
(*.f64 (/.f64 (exp.f64 (*.f64 x x)) (sqrt.f64 (PI.f64))) (fma.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (/.f64 1 (fabs.f64 x)) (*.f64 (/.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 4) (fabs.f64 x)) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))))
(*.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)))))

prune8.0ms (0.1%)

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)

series87.0ms (1.5%)

Counts
4 → 36
Calls

9 calls:

TimeVariablePointExpression
28.0ms
x
@-inf
(*.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)))))
28.0ms
x
@inf
(*.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)))))
11.0ms
x
@0
(*.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)))))
7.0ms
x
@-inf
(pow.f64 (/.f64 1 (fabs.f64 x)) 5)
6.0ms
x
@inf
(pow.f64 (/.f64 1 (fabs.f64 x)) 5)

rewrite33.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
289×add-sqr-sqrt_binary64
275×pow1_binary64
274×*-un-lft-identity_binary64
272×add-log-exp_binary64
270×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02571
157871
Stop Event
node limit
Counts
4 → 37
Calls
Call 1
Inputs
(pow.f64 (/.f64 1 (fabs.f64 x)) 5)
(pow.f64 (exp.f64 x) x)
(sqrt.f64 (PI.f64))
(*.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)))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (/.f64 1 (fabs.f64 x)) 5))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5)) (cbrt.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5))) (cbrt.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5)) (sqrt.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5/2) (pow.f64 (/.f64 1 (fabs.f64 x)) 5/2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (pow.f64 (/.f64 1 (fabs.f64 x)) 5)) (pow.f64 (/.f64 1 (fabs.f64 x)) 5)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 1 (fabs.f64 x))) 5))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5)))))))
((#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (exp.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 x) x)) (cbrt.f64 (pow.f64 (exp.f64 x) x))) (cbrt.f64 (pow.f64 (exp.f64 x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (exp.f64 x) x)) (sqrt.f64 (pow.f64 (exp.f64 x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 x) (/.f64 x 2)) (pow.f64 (exp.f64 x) (/.f64 x 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (exp.f64 x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 (exp.f64 x) x)) (pow.f64 (exp.f64 x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (exp.f64 x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (exp.f64 x) x)))))))
((#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (sqrt.f64 (PI.f64))) (cbrt.f64 (sqrt.f64 (PI.f64)))) (cbrt.f64 (sqrt.f64 (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sqrt.f64 (PI.f64))) (sqrt.f64 (sqrt.f64 (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (PI.f64) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (PI.f64)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (PI.f64) (sqrt.f64 (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (PI.f64))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (PI.f64))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (/.f64 (pow.f64 (exp.f64 x) x) (sqrt.f64 (PI.f64)))) (*.f64 (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 15/8 (*.f64 x x)))) (/.f64 (pow.f64 (exp.f64 x) x) (sqrt.f64 (PI.f64)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (sqrt.f64 (PI.f64))) (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x))) (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (sqrt.f64 (PI.f64))) (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (exp.f64 x) x) (+.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 15/8 (*.f64 x x)))))) (sqrt.f64 (PI.f64)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.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 15/8 (*.f64 x x)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.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 15/8 (*.f64 x x))))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (*.f64 (*.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 15/8 (*.f64 x x)))))) (*.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 15/8 (*.f64 x x))))))) (*.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 15/8 (*.f64 x x))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.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 15/8 (*.f64 x x))))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.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 15/8 (*.f64 x x))))))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.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 15/8 (*.f64 x x))))))))))))

simplify44.0ms (0.8%)

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
73 → 61
Calls
Call 1
Inputs
(/.f64 1 (pow.f64 (fabs.f64 x) 5))
(/.f64 1 (pow.f64 (fabs.f64 x) 5))
(/.f64 1 (pow.f64 (fabs.f64 x) 5))
(/.f64 1 (pow.f64 (fabs.f64 x) 5))
(/.f64 1 (pow.f64 (fabs.f64 x) 5))
(/.f64 1 (pow.f64 (fabs.f64 x) 5))
(/.f64 1 (pow.f64 (fabs.f64 x) 5))
(/.f64 1 (pow.f64 (fabs.f64 x) 5))
(/.f64 1 (pow.f64 (fabs.f64 x) 5))
(/.f64 1 (pow.f64 (fabs.f64 x) 5))
(/.f64 1 (pow.f64 (fabs.f64 x) 5))
(/.f64 1 (pow.f64 (fabs.f64 x) 5))
1
(+.f64 1 (pow.f64 x 2))
(+.f64 (*.f64 1/2 (pow.f64 x 4)) (+.f64 1 (pow.f64 x 2)))
(+.f64 (*.f64 1/2 (pow.f64 x 4)) (+.f64 1 (+.f64 (*.f64 1/6 (pow.f64 x 6)) (pow.f64 x 2))))
(exp.f64 (pow.f64 x 2))
(exp.f64 (pow.f64 x 2))
(exp.f64 (pow.f64 x 2))
(exp.f64 (pow.f64 x 2))
(exp.f64 (pow.f64 x 2))
(exp.f64 (pow.f64 x 2))
(exp.f64 (pow.f64 x 2))
(exp.f64 (pow.f64 x 2))
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (fabs.f64 x))) (*.f64 15/8 (/.f64 1 (pow.f64 (fabs.f64 x) 5)))) (pow.f64 x 2)))
(+.f64 (*.f64 3/2 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 1 (fabs.f64 x)))) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 1 (*.f64 (fabs.f64 x) (pow.f64 x 2))))) (+.f64 (*.f64 21/8 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 1 (pow.f64 (fabs.f64 x) 5)))) (*.f64 15/8 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 1 (*.f64 (pow.f64 (fabs.f64 x) 5) (pow.f64 x 2))))))))
(+.f64 (*.f64 3/2 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 1 (fabs.f64 x)))) (+.f64 (*.f64 27/16 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (pow.f64 x 2) (pow.f64 (fabs.f64 x) 5)))) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 1 (*.f64 (fabs.f64 x) (pow.f64 x 2))))) (+.f64 (*.f64 21/8 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 1 (pow.f64 (fabs.f64 x) 5)))) (+.f64 (*.f64 5/4 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (pow.f64 x 2) (fabs.f64 x)))) (*.f64 15/8 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 1 (*.f64 (pow.f64 (fabs.f64 x) 5) (pow.f64 x 2))))))))))
(+.f64 (*.f64 3/2 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 1 (fabs.f64 x)))) (+.f64 (*.f64 27/16 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (pow.f64 x 2) (pow.f64 (fabs.f64 x) 5)))) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 1 (*.f64 (fabs.f64 x) (pow.f64 x 2))))) (+.f64 (*.f64 21/8 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 1 (pow.f64 (fabs.f64 x) 5)))) (+.f64 (*.f64 7/12 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (pow.f64 x 4) (fabs.f64 x)))) (+.f64 (*.f64 11/16 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (pow.f64 x 4) (pow.f64 (fabs.f64 x) 5)))) (+.f64 (*.f64 5/4 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (pow.f64 x 2) (fabs.f64 x)))) (*.f64 15/8 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 1 (*.f64 (pow.f64 (fabs.f64 x) 5) (pow.f64 x 2))))))))))))
(*.f64 (*.f64 (exp.f64 (pow.f64 x 2)) (+.f64 (/.f64 1 (fabs.f64 x)) (*.f64 3/4 (/.f64 1 (pow.f64 (fabs.f64 x) 5))))) (sqrt.f64 (/.f64 1 (PI.f64))))
(+.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))))))))
(+.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))))))))
(+.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))))))))
(*.f64 (*.f64 (exp.f64 (pow.f64 x 2)) (+.f64 (*.f64 3/4 (/.f64 1 (pow.f64 (fabs.f64 x) 5))) (/.f64 1 (fabs.f64 x)))) (sqrt.f64 (/.f64 1 (PI.f64))))
(+.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))))))))
(+.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))))))))
(+.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))))))))
Outputs
(/.f64 1 (pow.f64 (fabs.f64 x) 5))
(/.f64 1 (pow.f64 x 5))
(/.f64 1 (pow.f64 (fabs.f64 x) 5))
(/.f64 1 (pow.f64 x 5))
(/.f64 1 (pow.f64 (fabs.f64 x) 5))
(/.f64 1 (pow.f64 x 5))
(/.f64 1 (pow.f64 (fabs.f64 x) 5))
(/.f64 1 (pow.f64 x 5))
(/.f64 1 (pow.f64 (fabs.f64 x) 5))
(/.f64 1 (pow.f64 x 5))
(/.f64 1 (pow.f64 (fabs.f64 x) 5))
(/.f64 1 (pow.f64 x 5))
(/.f64 1 (pow.f64 (fabs.f64 x) 5))
(/.f64 1 (pow.f64 x 5))
(/.f64 1 (pow.f64 (fabs.f64 x) 5))
(/.f64 1 (pow.f64 x 5))
(/.f64 1 (pow.f64 (fabs.f64 x) 5))
(/.f64 1 (pow.f64 x 5))
(/.f64 1 (pow.f64 (fabs.f64 x) 5))
(/.f64 1 (pow.f64 x 5))
(/.f64 1 (pow.f64 (fabs.f64 x) 5))
(/.f64 1 (pow.f64 x 5))
(/.f64 1 (pow.f64 (fabs.f64 x) 5))
(/.f64 1 (pow.f64 x 5))
1
(+.f64 1 (pow.f64 x 2))
(+.f64 1 (*.f64 x x))
(fma.f64 x x 1)
(+.f64 (*.f64 1/2 (pow.f64 x 4)) (+.f64 1 (pow.f64 x 2)))
(fma.f64 1/2 (pow.f64 x 4) (+.f64 1 (*.f64 x x)))
(fma.f64 1/2 (pow.f64 x 4) (fma.f64 x x 1))
(fma.f64 x x (fma.f64 1/2 (pow.f64 x 4) 1))
(+.f64 (*.f64 1/2 (pow.f64 x 4)) (+.f64 1 (+.f64 (*.f64 1/6 (pow.f64 x 6)) (pow.f64 x 2))))
(fma.f64 1/2 (pow.f64 x 4) (+.f64 1 (fma.f64 1/6 (pow.f64 x 6) (*.f64 x x))))
(+.f64 (fma.f64 x x (*.f64 1/6 (pow.f64 x 6))) (fma.f64 1/2 (pow.f64 x 4) 1))
(fma.f64 1/2 (pow.f64 x 4) (fma.f64 x x (fma.f64 1/6 (pow.f64 x 6) 1)))
(fma.f64 1/2 (pow.f64 x 4) (fma.f64 1/6 (pow.f64 x 6) (fma.f64 x x 1)))
(exp.f64 (pow.f64 x 2))
(exp.f64 (*.f64 x x))
(pow.f64 (exp.f64 x) x)
(exp.f64 (pow.f64 x 2))
(exp.f64 (*.f64 x x))
(pow.f64 (exp.f64 x) x)
(exp.f64 (pow.f64 x 2))
(exp.f64 (*.f64 x x))
(pow.f64 (exp.f64 x) x)
(exp.f64 (pow.f64 x 2))
(exp.f64 (*.f64 x x))
(pow.f64 (exp.f64 x) x)
(exp.f64 (pow.f64 x 2))
(exp.f64 (*.f64 x x))
(pow.f64 (exp.f64 x) x)
(exp.f64 (pow.f64 x 2))
(exp.f64 (*.f64 x x))
(pow.f64 (exp.f64 x) x)
(exp.f64 (pow.f64 x 2))
(exp.f64 (*.f64 x x))
(pow.f64 (exp.f64 x) x)
(exp.f64 (pow.f64 x 2))
(exp.f64 (*.f64 x x))
(pow.f64 (exp.f64 x) x)
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (fabs.f64 x))) (*.f64 15/8 (/.f64 1 (pow.f64 (fabs.f64 x) 5)))) (pow.f64 x 2)))
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (+.f64 (/.f64 1/2 (fabs.f64 x)) (/.f64 15/8 (pow.f64 (fabs.f64 x) 5))) (*.f64 x x)))
(*.f64 (/.f64 (sqrt.f64 (/.f64 1 (PI.f64))) x) (/.f64 (+.f64 (/.f64 1/2 (fabs.f64 x)) (/.f64 15/8 (pow.f64 (fabs.f64 x) 5))) x))
(*.f64 (/.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (*.f64 x x)) (+.f64 (/.f64 15/8 (pow.f64 x 5)) (/.f64 1/2 x)))
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 1/2 (pow.f64 x 3)) (/.f64 15/8 (*.f64 x (pow.f64 x 6)))))
(+.f64 (*.f64 3/2 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 1 (fabs.f64 x)))) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 1 (*.f64 (fabs.f64 x) (pow.f64 x 2))))) (+.f64 (*.f64 21/8 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 1 (pow.f64 (fabs.f64 x) 5)))) (*.f64 15/8 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 1 (*.f64 (pow.f64 (fabs.f64 x) 5) (pow.f64 x 2))))))))
(fma.f64 3/2 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 1 (fabs.f64 x))) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 1 (*.f64 (fabs.f64 x) (*.f64 x x)))) (fma.f64 21/8 (*.f64 (/.f64 1 (pow.f64 (fabs.f64 x) 5)) (sqrt.f64 (/.f64 1 (PI.f64)))) (*.f64 15/8 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 1 (*.f64 (pow.f64 (fabs.f64 x) 5) (*.f64 x x))))))))
(fma.f64 3/2 (/.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (fabs.f64 x)) (fma.f64 1/2 (/.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (*.f64 (fabs.f64 x) (*.f64 x x))) (fma.f64 15/8 (/.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (*.f64 (pow.f64 (fabs.f64 x) 5) (*.f64 x x))) (*.f64 21/8 (/.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (pow.f64 (fabs.f64 x) 5))))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 15/8 (*.f64 (pow.f64 x 5) (*.f64 x x))) (/.f64 21/8 (pow.f64 x 5)))) (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 1/2 (pow.f64 x 3)) (/.f64 3/2 x))))
(+.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (pow.f64 x 5)) (+.f64 21/8 (/.f64 15/8 (*.f64 x x)))) (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 1/2 (pow.f64 x 3)) (/.f64 3/2 x))))
(+.f64 (*.f64 3/2 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 1 (fabs.f64 x)))) (+.f64 (*.f64 27/16 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (pow.f64 x 2) (pow.f64 (fabs.f64 x) 5)))) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 1 (*.f64 (fabs.f64 x) (pow.f64 x 2))))) (+.f64 (*.f64 21/8 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 1 (pow.f64 (fabs.f64 x) 5)))) (+.f64 (*.f64 5/4 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (pow.f64 x 2) (fabs.f64 x)))) (*.f64 15/8 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 1 (*.f64 (pow.f64 (fabs.f64 x) 5) (pow.f64 x 2))))))))))
(fma.f64 3/2 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 1 (fabs.f64 x))) (fma.f64 27/16 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (*.f64 x x) (pow.f64 (fabs.f64 x) 5))) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 1 (*.f64 (fabs.f64 x) (*.f64 x x)))) (fma.f64 21/8 (*.f64 (/.f64 1 (pow.f64 (fabs.f64 x) 5)) (sqrt.f64 (/.f64 1 (PI.f64)))) (fma.f64 5/4 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (*.f64 x x) (fabs.f64 x))) (*.f64 15/8 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 1 (*.f64 (pow.f64 (fabs.f64 x) 5) (*.f64 x x))))))))))
(fma.f64 3/2 (/.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (fabs.f64 x)) (fma.f64 27/16 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (*.f64 x x) (pow.f64 (fabs.f64 x) 5))) (fma.f64 1/2 (/.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (*.f64 (fabs.f64 x) (*.f64 x x))) (fma.f64 21/8 (/.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (pow.f64 (fabs.f64 x) 5)) (fma.f64 15/8 (/.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (*.f64 (pow.f64 (fabs.f64 x) 5) (*.f64 x x))) (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (*.f64 (/.f64 x (/.f64 (fabs.f64 x) x)) 5/4)))))))
(+.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (*.f64 5/4 (*.f64 (/.f64 x x) x)) (/.f64 21/8 (pow.f64 x 5)))) (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 1/2 (pow.f64 x 3)) (/.f64 15/8 (*.f64 (pow.f64 x 5) (*.f64 x x)))))) (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (*.f64 27/16 (/.f64 (*.f64 x x) (pow.f64 x 5))) (/.f64 3/2 x))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 1/2 (pow.f64 x 3)) (*.f64 27/16 (/.f64 (*.f64 x x) (pow.f64 x 5))))) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (*.f64 x 5/4) (/.f64 21/8 (pow.f64 x 5)))) (*.f64 (/.f64 (sqrt.f64 (/.f64 1 (PI.f64))) x) (+.f64 3/2 (/.f64 15/8 (pow.f64 x 6))))))
(+.f64 (*.f64 3/2 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 1 (fabs.f64 x)))) (+.f64 (*.f64 27/16 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (pow.f64 x 2) (pow.f64 (fabs.f64 x) 5)))) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 1 (*.f64 (fabs.f64 x) (pow.f64 x 2))))) (+.f64 (*.f64 21/8 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 1 (pow.f64 (fabs.f64 x) 5)))) (+.f64 (*.f64 7/12 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (pow.f64 x 4) (fabs.f64 x)))) (+.f64 (*.f64 11/16 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (pow.f64 x 4) (pow.f64 (fabs.f64 x) 5)))) (+.f64 (*.f64 5/4 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (pow.f64 x 2) (fabs.f64 x)))) (*.f64 15/8 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 1 (*.f64 (pow.f64 (fabs.f64 x) 5) (pow.f64 x 2))))))))))))
(fma.f64 3/2 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 1 (fabs.f64 x))) (fma.f64 27/16 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (*.f64 x x) (pow.f64 (fabs.f64 x) 5))) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 1 (*.f64 (fabs.f64 x) (*.f64 x x)))) (fma.f64 21/8 (*.f64 (/.f64 1 (pow.f64 (fabs.f64 x) 5)) (sqrt.f64 (/.f64 1 (PI.f64)))) (fma.f64 7/12 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (pow.f64 x 4) (fabs.f64 x))) (fma.f64 11/16 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (pow.f64 x 4) (pow.f64 (fabs.f64 x) 5))) (fma.f64 5/4 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (*.f64 x x) (fabs.f64 x))) (*.f64 15/8 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 1 (*.f64 (pow.f64 (fabs.f64 x) 5) (*.f64 x x))))))))))))
(fma.f64 3/2 (/.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (fabs.f64 x)) (fma.f64 27/16 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (*.f64 x x) (pow.f64 (fabs.f64 x) 5))) (fma.f64 1/2 (/.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (*.f64 (fabs.f64 x) (*.f64 x x))) (fma.f64 21/8 (/.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (pow.f64 (fabs.f64 x) 5)) (fma.f64 7/12 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (pow.f64 x 4) (fabs.f64 x))) (fma.f64 11/16 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (pow.f64 x 4) (pow.f64 (fabs.f64 x) 5))) (fma.f64 15/8 (/.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (*.f64 (pow.f64 (fabs.f64 x) 5) (*.f64 x x))) (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (*.f64 (/.f64 x (/.f64 (fabs.f64 x) x)) 5/4)))))))))
(+.f64 (+.f64 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 15/8 (*.f64 (pow.f64 x 5) (*.f64 x x))) (*.f64 5/4 (*.f64 (/.f64 x x) x)))) (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (*.f64 (pow.f64 x 4) 7/12) x) (/.f64 (*.f64 (pow.f64 x 4) 11/16) (pow.f64 x 5))))) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 1/2 (pow.f64 x 3)) (/.f64 21/8 (pow.f64 x 5)))) (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (*.f64 27/16 (/.f64 (*.f64 x x) (pow.f64 x 5))) (/.f64 3/2 x)))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 1/2 (pow.f64 x 3)) (*.f64 27/16 (/.f64 (*.f64 x x) (pow.f64 x 5))))) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (*.f64 7/12 (pow.f64 x 3)) (/.f64 (*.f64 (pow.f64 x 4) 11/16) (pow.f64 x 5)))) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (*.f64 x 5/4) (/.f64 21/8 (pow.f64 x 5)))) (*.f64 (/.f64 (sqrt.f64 (/.f64 1 (PI.f64))) x) (+.f64 3/2 (/.f64 15/8 (pow.f64 x 6)))))))
(*.f64 (*.f64 (exp.f64 (pow.f64 x 2)) (+.f64 (/.f64 1 (fabs.f64 x)) (*.f64 3/4 (/.f64 1 (pow.f64 (fabs.f64 x) 5))))) (sqrt.f64 (/.f64 1 (PI.f64))))
(*.f64 (exp.f64 (*.f64 x x)) (*.f64 (+.f64 (/.f64 1 (fabs.f64 x)) (/.f64 3/4 (pow.f64 (fabs.f64 x) 5))) (sqrt.f64 (/.f64 1 (PI.f64)))))
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (*.f64 (exp.f64 (*.f64 x x)) (+.f64 (/.f64 1 (fabs.f64 x)) (/.f64 3/4 (pow.f64 (fabs.f64 x) 5)))))
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (*.f64 (pow.f64 (exp.f64 x) x) (+.f64 (/.f64 1 x) (/.f64 3/4 (pow.f64 x 5)))))
(+.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))))))))
(fma.f64 3/4 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 (fabs.f64 x) 5))) (fma.f64 15/8 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (exp.f64 (*.f64 x x)) (*.f64 (pow.f64 (fabs.f64 x) 5) (*.f64 x x)))) (fma.f64 (/.f64 (exp.f64 (*.f64 x x)) (fabs.f64 x)) (sqrt.f64 (/.f64 1 (PI.f64))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (exp.f64 (*.f64 x x)) (*.f64 (fabs.f64 x) (*.f64 x x))))))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (exp.f64 (*.f64 x x)) (fabs.f64 x)) (/.f64 (*.f64 1/2 (exp.f64 (*.f64 x x))) (*.f64 (fabs.f64 x) (*.f64 x x))))) (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (*.f64 (exp.f64 (*.f64 x x)) (/.f64 3/4 (pow.f64 (fabs.f64 x) 5))) (*.f64 15/8 (/.f64 (exp.f64 (*.f64 x x)) (*.f64 (pow.f64 (fabs.f64 x) 5) (*.f64 x x)))))))
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (fma.f64 1/2 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 3)) (/.f64 (pow.f64 (exp.f64 x) x) x)) (fma.f64 (pow.f64 (exp.f64 x) x) (/.f64 3/4 (pow.f64 x 5)) (*.f64 15/8 (/.f64 (pow.f64 (exp.f64 x) x) (*.f64 (pow.f64 x 5) (*.f64 x x)))))))
(*.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))))))
(+.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))))))))
(fma.f64 3/4 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 (fabs.f64 x) 5))) (fma.f64 15/8 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (exp.f64 (*.f64 x x)) (*.f64 (pow.f64 (fabs.f64 x) 5) (*.f64 x x)))) (fma.f64 (/.f64 (exp.f64 (*.f64 x x)) (fabs.f64 x)) (sqrt.f64 (/.f64 1 (PI.f64))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (exp.f64 (*.f64 x x)) (*.f64 (fabs.f64 x) (*.f64 x x))))))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (exp.f64 (*.f64 x x)) (fabs.f64 x)) (/.f64 (*.f64 1/2 (exp.f64 (*.f64 x x))) (*.f64 (fabs.f64 x) (*.f64 x x))))) (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (*.f64 (exp.f64 (*.f64 x x)) (/.f64 3/4 (pow.f64 (fabs.f64 x) 5))) (*.f64 15/8 (/.f64 (exp.f64 (*.f64 x x)) (*.f64 (pow.f64 (fabs.f64 x) 5) (*.f64 x x)))))))
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (fma.f64 1/2 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 3)) (/.f64 (pow.f64 (exp.f64 x) x) x)) (fma.f64 (pow.f64 (exp.f64 x) x) (/.f64 3/4 (pow.f64 x 5)) (*.f64 15/8 (/.f64 (pow.f64 (exp.f64 x) x) (*.f64 (pow.f64 x 5) (*.f64 x x)))))))
(*.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))))))
(+.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))))))))
(fma.f64 3/4 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 (fabs.f64 x) 5))) (fma.f64 15/8 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (exp.f64 (*.f64 x x)) (*.f64 (pow.f64 (fabs.f64 x) 5) (*.f64 x x)))) (fma.f64 (/.f64 (exp.f64 (*.f64 x x)) (fabs.f64 x)) (sqrt.f64 (/.f64 1 (PI.f64))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (exp.f64 (*.f64 x x)) (*.f64 (fabs.f64 x) (*.f64 x x))))))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (exp.f64 (*.f64 x x)) (fabs.f64 x)) (/.f64 (*.f64 1/2 (exp.f64 (*.f64 x x))) (*.f64 (fabs.f64 x) (*.f64 x x))))) (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (*.f64 (exp.f64 (*.f64 x x)) (/.f64 3/4 (pow.f64 (fabs.f64 x) 5))) (*.f64 15/8 (/.f64 (exp.f64 (*.f64 x x)) (*.f64 (pow.f64 (fabs.f64 x) 5) (*.f64 x x)))))))
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (fma.f64 1/2 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 3)) (/.f64 (pow.f64 (exp.f64 x) x) x)) (fma.f64 (pow.f64 (exp.f64 x) x) (/.f64 3/4 (pow.f64 x 5)) (*.f64 15/8 (/.f64 (pow.f64 (exp.f64 x) x) (*.f64 (pow.f64 x 5) (*.f64 x x)))))))
(*.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))))))
(*.f64 (*.f64 (exp.f64 (pow.f64 x 2)) (+.f64 (*.f64 3/4 (/.f64 1 (pow.f64 (fabs.f64 x) 5))) (/.f64 1 (fabs.f64 x)))) (sqrt.f64 (/.f64 1 (PI.f64))))
(*.f64 (exp.f64 (*.f64 x x)) (*.f64 (+.f64 (/.f64 1 (fabs.f64 x)) (/.f64 3/4 (pow.f64 (fabs.f64 x) 5))) (sqrt.f64 (/.f64 1 (PI.f64)))))
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (*.f64 (exp.f64 (*.f64 x x)) (+.f64 (/.f64 1 (fabs.f64 x)) (/.f64 3/4 (pow.f64 (fabs.f64 x) 5)))))
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (*.f64 (pow.f64 (exp.f64 x) x) (+.f64 (/.f64 1 x) (/.f64 3/4 (pow.f64 x 5)))))
(+.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))))))))
(fma.f64 3/4 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 (fabs.f64 x) 5))) (fma.f64 15/8 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (exp.f64 (*.f64 x x)) (*.f64 (pow.f64 (fabs.f64 x) 5) (*.f64 x x)))) (fma.f64 (/.f64 (exp.f64 (*.f64 x x)) (fabs.f64 x)) (sqrt.f64 (/.f64 1 (PI.f64))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (exp.f64 (*.f64 x x)) (*.f64 (fabs.f64 x) (*.f64 x x))))))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (exp.f64 (*.f64 x x)) (fabs.f64 x)) (/.f64 (*.f64 1/2 (exp.f64 (*.f64 x x))) (*.f64 (fabs.f64 x) (*.f64 x x))))) (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (*.f64 (exp.f64 (*.f64 x x)) (/.f64 3/4 (pow.f64 (fabs.f64 x) 5))) (*.f64 15/8 (/.f64 (exp.f64 (*.f64 x x)) (*.f64 (pow.f64 (fabs.f64 x) 5) (*.f64 x x)))))))
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (fma.f64 1/2 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 3)) (/.f64 (pow.f64 (exp.f64 x) x) x)) (fma.f64 (pow.f64 (exp.f64 x) x) (/.f64 3/4 (pow.f64 x 5)) (*.f64 15/8 (/.f64 (pow.f64 (exp.f64 x) x) (*.f64 (pow.f64 x 5) (*.f64 x x)))))))
(*.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))))))
(+.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))))))))
(fma.f64 3/4 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 (fabs.f64 x) 5))) (fma.f64 15/8 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (exp.f64 (*.f64 x x)) (*.f64 (pow.f64 (fabs.f64 x) 5) (*.f64 x x)))) (fma.f64 (/.f64 (exp.f64 (*.f64 x x)) (fabs.f64 x)) (sqrt.f64 (/.f64 1 (PI.f64))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (exp.f64 (*.f64 x x)) (*.f64 (fabs.f64 x) (*.f64 x x))))))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (exp.f64 (*.f64 x x)) (fabs.f64 x)) (/.f64 (*.f64 1/2 (exp.f64 (*.f64 x x))) (*.f64 (fabs.f64 x) (*.f64 x x))))) (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (*.f64 (exp.f64 (*.f64 x x)) (/.f64 3/4 (pow.f64 (fabs.f64 x) 5))) (*.f64 15/8 (/.f64 (exp.f64 (*.f64 x x)) (*.f64 (pow.f64 (fabs.f64 x) 5) (*.f64 x x)))))))
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (fma.f64 1/2 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 3)) (/.f64 (pow.f64 (exp.f64 x) x) x)) (fma.f64 (pow.f64 (exp.f64 x) x) (/.f64 3/4 (pow.f64 x 5)) (*.f64 15/8 (/.f64 (pow.f64 (exp.f64 x) x) (*.f64 (pow.f64 x 5) (*.f64 x x)))))))
(*.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))))))
(+.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))))))))
(fma.f64 3/4 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 (fabs.f64 x) 5))) (fma.f64 15/8 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (exp.f64 (*.f64 x x)) (*.f64 (pow.f64 (fabs.f64 x) 5) (*.f64 x x)))) (fma.f64 (/.f64 (exp.f64 (*.f64 x x)) (fabs.f64 x)) (sqrt.f64 (/.f64 1 (PI.f64))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (/.f64 (exp.f64 (*.f64 x x)) (*.f64 (fabs.f64 x) (*.f64 x x))))))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (exp.f64 (*.f64 x x)) (fabs.f64 x)) (/.f64 (*.f64 1/2 (exp.f64 (*.f64 x x))) (*.f64 (fabs.f64 x) (*.f64 x x))))) (*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (*.f64 (exp.f64 (*.f64 x x)) (/.f64 3/4 (pow.f64 (fabs.f64 x) 5))) (*.f64 15/8 (/.f64 (exp.f64 (*.f64 x x)) (*.f64 (pow.f64 (fabs.f64 x) 5) (*.f64 x x)))))))
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (fma.f64 1/2 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 3)) (/.f64 (pow.f64 (exp.f64 x) x) x)) (fma.f64 (pow.f64 (exp.f64 x) x) (/.f64 3/4 (pow.f64 x 5)) (*.f64 15/8 (/.f64 (pow.f64 (exp.f64 x) x) (*.f64 (pow.f64 x 5) (*.f64 x x)))))))
(*.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))))))

prune85.0ms (1.5%)

Pruning

13 alts after pruning (13 fresh and 0 done)

PrunedKeptTotal
New481361
Fresh101
Picked101
Done000
Total501363
Error
0.4b
Counts
63 → 13
Alt Table
StatusErrorProgram
2.6b
(expm1.f64 (log1p.f64 (*.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 15/8 (*.f64 x x))))))))
1.6b
(*.f64 (/.f64 (*.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 x) x)) (cbrt.f64 (pow.f64 (exp.f64 x) x))) (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.3b
(/.f64 (*.f64 (pow.f64 (exp.f64 x) x) (+.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 15/8 (*.f64 x x)))))) (sqrt.f64 (PI.f64)))
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))))))
1.3b
(+.f64 (*.f64 (/.f64 (+.f64 1 (/.f64 1/2 (*.f64 x x))) (fabs.f64 x)) (/.f64 (pow.f64 (exp.f64 x) x) (sqrt.f64 (PI.f64)))) (*.f64 (*.f64 (pow.f64 (/.f64 1 (fabs.f64 x)) 5) (+.f64 3/4 (/.f64 15/8 (*.f64 x x)))) (/.f64 (pow.f64 (exp.f64 x) x) (sqrt.f64 (PI.f64)))))
2.6b
(+.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.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.6b
(*.f64 (/.f64 (exp.f64 (pow.f64 x 2)) (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 (*.f64 (sqrt.f64 (pow.f64 (exp.f64 x) x)) (sqrt.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.4b
(*.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 (/.f64 1 (fabs.f64 x)) 5))) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
9.1b
(cbrt.f64 (*.f64 (*.f64 (*.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 15/8 (*.f64 x x)))))) (*.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 15/8 (*.f64 x x))))))) (*.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 15/8 (*.f64 x x))))))))
1.3b
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (*.f64 (sqrt.f64 (sqrt.f64 (PI.f64))) (sqrt.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.2b
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (PI.f64))) (cbrt.f64 (sqrt.f64 (PI.f64)))) (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 3675 to 2299 computations (37.4% saved)

localize22.0ms (0.4%)

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 (/.f64 1/2 (*.f64 x x)) 1) (/.f64 (pow.f64 (exp.f64 x) x) x))
1.1b
(pow.f64 (exp.f64 x) x)

series35.0ms (0.6%)

Counts
3 → 36
Calls

9 calls:

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

rewrite37.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
216×add-sqr-sqrt_binary64
205×add-log-exp_binary64
203×add-exp-log_binary64
203×pow1_binary64
203×log1p-expm1-u_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01957
143753
Stop Event
node limit
Counts
3 → 90
Calls
Call 1
Inputs
(*.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))))
(/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (/.f64 (pow.f64 (exp.f64 x) x) x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 1/8 (pow.f64 (pow.f64 x -2) 3)) 1) (*.f64 (/.f64 x (pow.f64 (exp.f64 x) x)) (+.f64 (/.f64 1/4 (pow.f64 x 4)) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 x -2)) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (/.f64 1/4 (pow.f64 x 4)) 1) (*.f64 (/.f64 x (pow.f64 (exp.f64 x) x)) (fma.f64 1/2 (pow.f64 x -2) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (pow.f64 (exp.f64 x) x)) x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (pow.f64 (exp.f64 x) x))) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 (pow.f64 x -2) 3)) 1) 1) (*.f64 (+.f64 (/.f64 1/4 (pow.f64 x 4)) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 x -2)) 1))) (/.f64 x (pow.f64 (exp.f64 x) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (/.f64 1/4 (pow.f64 x 4)) 1) 1) (*.f64 (fma.f64 1/2 (pow.f64 x -2) -1) (/.f64 x (pow.f64 (exp.f64 x) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 (pow.f64 x -2) 3)) 1) (pow.f64 (exp.f64 x) x)) (*.f64 (+.f64 (/.f64 1/4 (pow.f64 x 4)) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 x -2)) 1))) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (/.f64 1/4 (pow.f64 x 4)) 1) (pow.f64 (exp.f64 x) x)) (*.f64 (fma.f64 1/2 (pow.f64 x -2) -1) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 (pow.f64 x -2) 3)) 1) (neg.f64 (pow.f64 (exp.f64 x) x))) (*.f64 (+.f64 (/.f64 1/4 (pow.f64 x 4)) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 x -2)) 1))) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (/.f64 1/4 (pow.f64 x 4)) 1) (neg.f64 (pow.f64 (exp.f64 x) x))) (*.f64 (fma.f64 1/2 (pow.f64 x -2) -1) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (exp.f64 x) x) (+.f64 (*.f64 1/8 (pow.f64 (pow.f64 x -2) 3)) 1)) (*.f64 x (+.f64 (/.f64 1/4 (pow.f64 x 4)) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 x -2)) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (pow.f64 (exp.f64 x) x)) (+.f64 (*.f64 1/8 (pow.f64 (pow.f64 x -2) 3)) 1)) (*.f64 (neg.f64 x) (+.f64 (/.f64 1/4 (pow.f64 x 4)) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 x -2)) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (exp.f64 x) x) (-.f64 (/.f64 1/4 (pow.f64 x 4)) 1)) (*.f64 x (fma.f64 1/2 (pow.f64 x -2) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (pow.f64 (exp.f64 x) x)) (-.f64 (/.f64 1/4 (pow.f64 x 4)) 1)) (*.f64 (neg.f64 x) (fma.f64 1/2 (pow.f64 x -2) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (/.f64 (pow.f64 (exp.f64 x) x) x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (/.f64 (pow.f64 (exp.f64 x) x) x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (/.f64 (pow.f64 (exp.f64 x) x) x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (/.f64 (pow.f64 (exp.f64 x) x) x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (/.f64 (pow.f64 (exp.f64 x) x) x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (fma.f64 1/2 (pow.f64 x -2) 1)) (/.f64 (pow.f64 (exp.f64 x) x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (/.f64 (pow.f64 (exp.f64 x) x) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (/.f64 (pow.f64 (exp.f64 x) x) x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/2 (pow.f64 x -2) 1) 3) (pow.f64 (/.f64 (pow.f64 (exp.f64 x) x) x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 x) x) x) 3) (pow.f64 (fma.f64 1/2 (pow.f64 x -2) 1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (/.f64 (pow.f64 (exp.f64 x) x) x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (-.f64 (*.f64 x x) (log.f64 x)) (log1p.f64 (*.f64 1/2 (pow.f64 x -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (+.f64 (-.f64 (*.f64 x x) (log.f64 x)) (log1p.f64 (*.f64 1/2 (pow.f64 x -2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (/.f64 (pow.f64 (exp.f64 x) x) x))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 3/4 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5))) (*.f64 (*.f64 15/8 (pow.f64 x -2)) (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) 3/4) (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) (*.f64 15/8 (pow.f64 x -2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) (fma.f64 15/8 (pow.f64 x -2) 3/4)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 27/64 (*.f64 3375/512 (pow.f64 (pow.f64 x -2) 3))) (*.f64 (/.f64 (pow.f64 x 5) (pow.f64 (exp.f64 x) x)) (+.f64 9/16 (-.f64 (/.f64 225/64 (pow.f64 x 4)) (*.f64 3/4 (*.f64 15/8 (pow.f64 x -2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 9/16 (/.f64 225/64 (pow.f64 x 4))) (*.f64 (/.f64 (pow.f64 x 5) (pow.f64 (exp.f64 x) x)) (-.f64 3/4 (*.f64 15/8 (pow.f64 x -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (exp.f64 x) x) (fma.f64 15/8 (pow.f64 x -2) 3/4)) (pow.f64 x 5))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (pow.f64 (exp.f64 x) x) (fma.f64 15/8 (pow.f64 x -2) 3/4))) (neg.f64 (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (exp.f64 x) x) (+.f64 27/64 (*.f64 3375/512 (pow.f64 (pow.f64 x -2) 3)))) (*.f64 (pow.f64 x 5) (+.f64 9/16 (-.f64 (/.f64 225/64 (pow.f64 x 4)) (*.f64 3/4 (*.f64 15/8 (pow.f64 x -2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (pow.f64 (exp.f64 x) x)) (+.f64 27/64 (*.f64 3375/512 (pow.f64 (pow.f64 x -2) 3)))) (*.f64 (neg.f64 (pow.f64 x 5)) (+.f64 9/16 (-.f64 (/.f64 225/64 (pow.f64 x 4)) (*.f64 3/4 (*.f64 15/8 (pow.f64 x -2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (exp.f64 x) x) (-.f64 9/16 (/.f64 225/64 (pow.f64 x 4)))) (*.f64 (pow.f64 x 5) (-.f64 3/4 (*.f64 15/8 (pow.f64 x -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (pow.f64 (exp.f64 x) x)) (-.f64 9/16 (/.f64 225/64 (pow.f64 x 4)))) (*.f64 (neg.f64 (pow.f64 x 5)) (-.f64 3/4 (*.f64 15/8 (pow.f64 x -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 27/64 (*.f64 3375/512 (pow.f64 (pow.f64 x -2) 3))) 1) (*.f64 (+.f64 9/16 (-.f64 (/.f64 225/64 (pow.f64 x 4)) (*.f64 3/4 (*.f64 15/8 (pow.f64 x -2))))) (/.f64 (pow.f64 x 5) (pow.f64 (exp.f64 x) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 9/16 (/.f64 225/64 (pow.f64 x 4))) 1) (*.f64 (-.f64 3/4 (*.f64 15/8 (pow.f64 x -2))) (/.f64 (pow.f64 x 5) (pow.f64 (exp.f64 x) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 27/64 (*.f64 3375/512 (pow.f64 (pow.f64 x -2) 3))) (pow.f64 (exp.f64 x) x)) (*.f64 (+.f64 9/16 (-.f64 (/.f64 225/64 (pow.f64 x 4)) (*.f64 3/4 (*.f64 15/8 (pow.f64 x -2))))) (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 9/16 (/.f64 225/64 (pow.f64 x 4))) (pow.f64 (exp.f64 x) x)) (*.f64 (-.f64 3/4 (*.f64 15/8 (pow.f64 x -2))) (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 27/64 (*.f64 3375/512 (pow.f64 (pow.f64 x -2) 3))) (neg.f64 (pow.f64 (exp.f64 x) x))) (*.f64 (+.f64 9/16 (-.f64 (/.f64 225/64 (pow.f64 x 4)) (*.f64 3/4 (*.f64 15/8 (pow.f64 x -2))))) (neg.f64 (pow.f64 x 5))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 9/16 (/.f64 225/64 (pow.f64 x 4))) (neg.f64 (pow.f64 (exp.f64 x) x))) (*.f64 (-.f64 3/4 (*.f64 15/8 (pow.f64 x -2))) (neg.f64 (pow.f64 x 5))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 3/4 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5))) 3) (pow.f64 (*.f64 (*.f64 15/8 (pow.f64 x -2)) (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5))) 3)) (+.f64 (*.f64 (*.f64 3/4 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5))) (*.f64 3/4 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)))) (-.f64 (*.f64 (*.f64 (*.f64 15/8 (pow.f64 x -2)) (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5))) (*.f64 (*.f64 15/8 (pow.f64 x -2)) (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)))) (*.f64 (*.f64 3/4 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5))) (*.f64 (*.f64 15/8 (pow.f64 x -2)) (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) 3/4) 3) (pow.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) (*.f64 15/8 (pow.f64 x -2))) 3)) (+.f64 (*.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) 3/4) (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) 3/4)) (-.f64 (*.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) (*.f64 15/8 (pow.f64 x -2))) (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) (*.f64 15/8 (pow.f64 x -2)))) (*.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) 3/4) (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) (*.f64 15/8 (pow.f64 x -2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) (fma.f64 15/8 (pow.f64 x -2) 3/4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) (fma.f64 15/8 (pow.f64 x -2) 3/4)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) (fma.f64 15/8 (pow.f64 x -2) 3/4))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 (*.f64 (pow.f64 (exp.f64 x) x) (fma.f64 15/8 (pow.f64 x -2) 3/4))) (pow.f64 x 5/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) (fma.f64 15/8 (pow.f64 x -2) 3/4)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (fma.f64 15/8 (pow.f64 x -2) 3/4)) (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) (fma.f64 15/8 (pow.f64 x -2) 3/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) (fma.f64 15/8 (pow.f64 x -2) 3/4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) 3) (pow.f64 (fma.f64 15/8 (pow.f64 x -2) 3/4) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (fma.f64 15/8 (pow.f64 x -2) 3/4) 3) (pow.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) (fma.f64 15/8 (pow.f64 x -2) 3/4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) 3/4 (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) (*.f64 15/8 (pow.f64 x -2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 3/4 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) (*.f64 (*.f64 15/8 (pow.f64 x -2)) (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (fma.f64 15/8 (pow.f64 x -2) 3/4)) (-.f64 (*.f64 x x) (*.f64 5 (log.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (+.f64 (log.f64 (fma.f64 15/8 (pow.f64 x -2) 3/4)) (-.f64 (*.f64 x x) (*.f64 5 (log.f64 x)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) (fma.f64 15/8 (pow.f64 x -2) 3/4))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (pow.f64 (exp.f64 x) (+.f64 x x)) (pow.f64 x 10))) (cbrt.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5))) (sqrt.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (exp.f64 x) (+.f64 x x))) 1) (/.f64 (cbrt.f64 (pow.f64 (exp.f64 x) x)) (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (pow.f64 (exp.f64 x) x)) 1) (/.f64 (sqrt.f64 (pow.f64 (exp.f64 x) x)) (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 x 10))) (/.f64 (pow.f64 (exp.f64 x) x) (cbrt.f64 (pow.f64 x 5))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (exp.f64 x) (+.f64 x x))) (cbrt.f64 (pow.f64 x 10))) (cbrt.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (pow.f64 (exp.f64 x) x)) (cbrt.f64 (pow.f64 x 10))) (/.f64 (sqrt.f64 (pow.f64 (exp.f64 x) x)) (cbrt.f64 (pow.f64 x 5))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 x 5/2)) (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (exp.f64 x) (+.f64 x x))) (pow.f64 x 5/2)) (/.f64 (cbrt.f64 (pow.f64 (exp.f64 x) x)) (pow.f64 x 5/2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 x 5) (pow.f64 (exp.f64 x) x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 (pow.f64 (exp.f64 x) (+.f64 x x)) (pow.f64 x 10)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (pow.f64 (exp.f64 x) x)) (pow.f64 x -5)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (pow.f64 (exp.f64 x) x) 3) (pow.f64 (pow.f64 x 5) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 x x) (*.f64 5 (log.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (-.f64 (*.f64 x x) (*.f64 5 (log.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5))))))))

simplify35.0ms (0.6%)

Algorithm
egg-herbie
Rules
703×associate-*l*_binary64
687×associate-*l/_binary64
626×fma-def_binary64
460×associate-*r/_binary64
281×associate-/r/_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
065685
1163681
2366661
3831625
42300625
Stop Event
node limit
Counts
126 → 121
Calls
Call 1
Inputs
(/.f64 1/2 (pow.f64 x 3))
(+.f64 (*.f64 3/2 (/.f64 1 x)) (*.f64 1/2 (/.f64 1 (pow.f64 x 3))))
(+.f64 (*.f64 3/2 (/.f64 1 x)) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 x 3))) (*.f64 5/4 x)))
(+.f64 (*.f64 3/2 (/.f64 1 x)) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 7/12 (pow.f64 x 3)) (*.f64 5/4 x))))
(/.f64 (exp.f64 (pow.f64 x 2)) x)
(+.f64 (*.f64 1/2 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 3))) (/.f64 (exp.f64 (pow.f64 x 2)) x))
(+.f64 (*.f64 1/2 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 3))) (/.f64 (exp.f64 (pow.f64 x 2)) x))
(+.f64 (*.f64 1/2 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 3))) (/.f64 (exp.f64 (pow.f64 x 2)) x))
(/.f64 (exp.f64 (pow.f64 x 2)) x)
(+.f64 (*.f64 1/2 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 3))) (/.f64 (exp.f64 (pow.f64 x 2)) x))
(+.f64 (*.f64 1/2 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 3))) (/.f64 (exp.f64 (pow.f64 x 2)) x))
(+.f64 (*.f64 1/2 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 3))) (/.f64 (exp.f64 (pow.f64 x 2)) x))
(/.f64 15/8 (pow.f64 x 7))
(+.f64 (*.f64 21/8 (/.f64 1 (pow.f64 x 5))) (*.f64 15/8 (/.f64 1 (pow.f64 x 7))))
(+.f64 (*.f64 21/8 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 15/8 (/.f64 1 (pow.f64 x 7))) (*.f64 27/16 (/.f64 1 (pow.f64 x 3)))))
(+.f64 (*.f64 21/8 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 15/8 (/.f64 1 (pow.f64 x 7))) (+.f64 (*.f64 11/16 (/.f64 1 x)) (*.f64 27/16 (/.f64 1 (pow.f64 x 3))))))
(*.f64 3/4 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5)))
(+.f64 (*.f64 15/8 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 7))) (*.f64 3/4 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))))
(+.f64 (*.f64 15/8 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 7))) (*.f64 3/4 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))))
(+.f64 (*.f64 15/8 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 7))) (*.f64 3/4 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))))
(*.f64 3/4 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5)))
(+.f64 (*.f64 15/8 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 7))) (*.f64 3/4 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))))
(+.f64 (*.f64 15/8 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 7))) (*.f64 3/4 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))))
(+.f64 (*.f64 15/8 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 7))) (*.f64 3/4 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))))
(/.f64 1 (pow.f64 x 5))
(+.f64 (/.f64 1 (pow.f64 x 5)) (/.f64 1 (pow.f64 x 3)))
(+.f64 (/.f64 1 (pow.f64 x 5)) (+.f64 (*.f64 1/2 (/.f64 1 x)) (/.f64 1 (pow.f64 x 3))))
(+.f64 (/.f64 1 (pow.f64 x 5)) (+.f64 (*.f64 1/2 (/.f64 1 x)) (+.f64 (/.f64 1 (pow.f64 x 3)) (*.f64 1/6 x))))
(/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))
(/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))
(/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))
(/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))
(/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))
(/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))
(/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))
(/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))
Outputs
(/.f64 1/2 (pow.f64 x 3))
(+.f64 (*.f64 3/2 (/.f64 1 x)) (*.f64 1/2 (/.f64 1 (pow.f64 x 3))))
(+.f64 (/.f64 3/2 x) (/.f64 1/2 (pow.f64 x 3)))
(+.f64 (*.f64 3/2 (/.f64 1 x)) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 x 3))) (*.f64 5/4 x)))
(+.f64 (/.f64 3/2 x) (+.f64 (/.f64 1/2 (pow.f64 x 3)) (*.f64 x 5/4)))
(+.f64 (/.f64 3/2 x) (fma.f64 x 5/4 (/.f64 1/2 (pow.f64 x 3))))
(+.f64 (/.f64 1/2 (pow.f64 x 3)) (fma.f64 x 5/4 (/.f64 3/2 x)))
(+.f64 (*.f64 3/2 (/.f64 1 x)) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 7/12 (pow.f64 x 3)) (*.f64 5/4 x))))
(+.f64 (/.f64 3/2 x) (+.f64 (/.f64 1/2 (pow.f64 x 3)) (fma.f64 7/12 (pow.f64 x 3) (*.f64 x 5/4))))
(+.f64 (fma.f64 x 5/4 (*.f64 (pow.f64 x 3) 7/12)) (+.f64 (/.f64 3/2 x) (/.f64 1/2 (pow.f64 x 3))))
(+.f64 (/.f64 3/2 x) (fma.f64 x 5/4 (fma.f64 (pow.f64 x 3) 7/12 (/.f64 1/2 (pow.f64 x 3)))))
(+.f64 (/.f64 1/2 (pow.f64 x 3)) (fma.f64 x (fma.f64 7/12 (*.f64 x x) 5/4) (/.f64 3/2 x)))
(/.f64 (exp.f64 (pow.f64 x 2)) x)
(/.f64 (exp.f64 (*.f64 x x)) x)
(/.f64 (pow.f64 (exp.f64 x) x) x)
(+.f64 (*.f64 1/2 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 3))) (/.f64 (exp.f64 (pow.f64 x 2)) x))
(fma.f64 1/2 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 3)) (/.f64 (exp.f64 (*.f64 x x)) x))
(fma.f64 1/2 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 3)) (/.f64 (pow.f64 (exp.f64 x) x) x))
(*.f64 (+.f64 (/.f64 (/.f64 1/2 x) x) 1) (/.f64 (pow.f64 (exp.f64 x) x) x))
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) x) (+.f64 1 (/.f64 (/.f64 1/2 x) x)))
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) x) (+.f64 1 (/.f64 1/2 (*.f64 x x))))
(+.f64 (*.f64 1/2 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 3))) (/.f64 (exp.f64 (pow.f64 x 2)) x))
(fma.f64 1/2 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 3)) (/.f64 (exp.f64 (*.f64 x x)) x))
(fma.f64 1/2 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 3)) (/.f64 (pow.f64 (exp.f64 x) x) x))
(*.f64 (+.f64 (/.f64 (/.f64 1/2 x) x) 1) (/.f64 (pow.f64 (exp.f64 x) x) x))
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) x) (+.f64 1 (/.f64 (/.f64 1/2 x) x)))
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) x) (+.f64 1 (/.f64 1/2 (*.f64 x x))))
(+.f64 (*.f64 1/2 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 3))) (/.f64 (exp.f64 (pow.f64 x 2)) x))
(fma.f64 1/2 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 3)) (/.f64 (exp.f64 (*.f64 x x)) x))
(fma.f64 1/2 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 3)) (/.f64 (pow.f64 (exp.f64 x) x) x))
(*.f64 (+.f64 (/.f64 (/.f64 1/2 x) x) 1) (/.f64 (pow.f64 (exp.f64 x) x) x))
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) x) (+.f64 1 (/.f64 (/.f64 1/2 x) x)))
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) x) (+.f64 1 (/.f64 1/2 (*.f64 x x))))
(/.f64 (exp.f64 (pow.f64 x 2)) x)
(/.f64 (exp.f64 (*.f64 x x)) x)
(/.f64 (pow.f64 (exp.f64 x) x) x)
(+.f64 (*.f64 1/2 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 3))) (/.f64 (exp.f64 (pow.f64 x 2)) x))
(fma.f64 1/2 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 3)) (/.f64 (exp.f64 (*.f64 x x)) x))
(fma.f64 1/2 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 3)) (/.f64 (pow.f64 (exp.f64 x) x) x))
(*.f64 (+.f64 (/.f64 (/.f64 1/2 x) x) 1) (/.f64 (pow.f64 (exp.f64 x) x) x))
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) x) (+.f64 1 (/.f64 (/.f64 1/2 x) x)))
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) x) (+.f64 1 (/.f64 1/2 (*.f64 x x))))
(+.f64 (*.f64 1/2 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 3))) (/.f64 (exp.f64 (pow.f64 x 2)) x))
(fma.f64 1/2 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 3)) (/.f64 (exp.f64 (*.f64 x x)) x))
(fma.f64 1/2 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 3)) (/.f64 (pow.f64 (exp.f64 x) x) x))
(*.f64 (+.f64 (/.f64 (/.f64 1/2 x) x) 1) (/.f64 (pow.f64 (exp.f64 x) x) x))
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) x) (+.f64 1 (/.f64 (/.f64 1/2 x) x)))
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) x) (+.f64 1 (/.f64 1/2 (*.f64 x x))))
(+.f64 (*.f64 1/2 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 3))) (/.f64 (exp.f64 (pow.f64 x 2)) x))
(fma.f64 1/2 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 3)) (/.f64 (exp.f64 (*.f64 x x)) x))
(fma.f64 1/2 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 3)) (/.f64 (pow.f64 (exp.f64 x) x) x))
(*.f64 (+.f64 (/.f64 (/.f64 1/2 x) x) 1) (/.f64 (pow.f64 (exp.f64 x) x) x))
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) x) (+.f64 1 (/.f64 (/.f64 1/2 x) x)))
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) x) (+.f64 1 (/.f64 1/2 (*.f64 x x))))
(/.f64 15/8 (pow.f64 x 7))
(+.f64 (*.f64 21/8 (/.f64 1 (pow.f64 x 5))) (*.f64 15/8 (/.f64 1 (pow.f64 x 7))))
(+.f64 (/.f64 21/8 (pow.f64 x 5)) (/.f64 15/8 (pow.f64 x 7)))
(+.f64 (*.f64 21/8 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 15/8 (/.f64 1 (pow.f64 x 7))) (*.f64 27/16 (/.f64 1 (pow.f64 x 3)))))
(+.f64 (/.f64 21/8 (pow.f64 x 5)) (+.f64 (/.f64 15/8 (pow.f64 x 7)) (/.f64 27/16 (pow.f64 x 3))))
(+.f64 (*.f64 21/8 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 15/8 (/.f64 1 (pow.f64 x 7))) (+.f64 (*.f64 11/16 (/.f64 1 x)) (*.f64 27/16 (/.f64 1 (pow.f64 x 3))))))
(+.f64 (/.f64 21/8 (pow.f64 x 5)) (+.f64 (/.f64 15/8 (pow.f64 x 7)) (+.f64 (/.f64 27/16 (pow.f64 x 3)) (/.f64 11/16 x))))
(+.f64 (+.f64 (/.f64 27/16 (pow.f64 x 3)) (/.f64 11/16 x)) (+.f64 (/.f64 21/8 (pow.f64 x 5)) (/.f64 15/8 (pow.f64 x 7))))
(+.f64 (+.f64 (/.f64 15/8 (pow.f64 x 7)) (/.f64 27/16 (pow.f64 x 3))) (+.f64 (/.f64 21/8 (pow.f64 x 5)) (/.f64 11/16 x)))
(+.f64 (/.f64 11/16 x) (+.f64 (/.f64 21/8 (pow.f64 x 5)) (+.f64 (/.f64 15/8 (pow.f64 x 7)) (/.f64 27/16 (pow.f64 x 3)))))
(*.f64 3/4 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5)))
(*.f64 3/4 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 5)))
(*.f64 3/4 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)))
(*.f64 (pow.f64 (exp.f64 x) x) (/.f64 3/4 (pow.f64 x 5)))
(+.f64 (*.f64 15/8 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 7))) (*.f64 3/4 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))))
(fma.f64 15/8 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 7)) (*.f64 3/4 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 5))))
(fma.f64 15/8 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 7)) (*.f64 3/4 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5))))
(*.f64 (pow.f64 (exp.f64 x) x) (+.f64 (/.f64 15/8 (pow.f64 x 7)) (/.f64 3/4 (pow.f64 x 5))))
(*.f64 (pow.f64 (exp.f64 x) x) (+.f64 (/.f64 3/4 (pow.f64 x 5)) (/.f64 15/8 (pow.f64 x 7))))
(+.f64 (*.f64 15/8 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 7))) (*.f64 3/4 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))))
(fma.f64 15/8 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 7)) (*.f64 3/4 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 5))))
(fma.f64 15/8 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 7)) (*.f64 3/4 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5))))
(*.f64 (pow.f64 (exp.f64 x) x) (+.f64 (/.f64 15/8 (pow.f64 x 7)) (/.f64 3/4 (pow.f64 x 5))))
(*.f64 (pow.f64 (exp.f64 x) x) (+.f64 (/.f64 3/4 (pow.f64 x 5)) (/.f64 15/8 (pow.f64 x 7))))
(+.f64 (*.f64 15/8 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 7))) (*.f64 3/4 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))))
(fma.f64 15/8 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 7)) (*.f64 3/4 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 5))))
(fma.f64 15/8 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 7)) (*.f64 3/4 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5))))
(*.f64 (pow.f64 (exp.f64 x) x) (+.f64 (/.f64 15/8 (pow.f64 x 7)) (/.f64 3/4 (pow.f64 x 5))))
(*.f64 (pow.f64 (exp.f64 x) x) (+.f64 (/.f64 3/4 (pow.f64 x 5)) (/.f64 15/8 (pow.f64 x 7))))
(*.f64 3/4 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5)))
(*.f64 3/4 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 5)))
(*.f64 3/4 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)))
(*.f64 (pow.f64 (exp.f64 x) x) (/.f64 3/4 (pow.f64 x 5)))
(+.f64 (*.f64 15/8 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 7))) (*.f64 3/4 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))))
(fma.f64 15/8 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 7)) (*.f64 3/4 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 5))))
(fma.f64 15/8 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 7)) (*.f64 3/4 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5))))
(*.f64 (pow.f64 (exp.f64 x) x) (+.f64 (/.f64 15/8 (pow.f64 x 7)) (/.f64 3/4 (pow.f64 x 5))))
(*.f64 (pow.f64 (exp.f64 x) x) (+.f64 (/.f64 3/4 (pow.f64 x 5)) (/.f64 15/8 (pow.f64 x 7))))
(+.f64 (*.f64 15/8 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 7))) (*.f64 3/4 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))))
(fma.f64 15/8 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 7)) (*.f64 3/4 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 5))))
(fma.f64 15/8 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 7)) (*.f64 3/4 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5))))
(*.f64 (pow.f64 (exp.f64 x) x) (+.f64 (/.f64 15/8 (pow.f64 x 7)) (/.f64 3/4 (pow.f64 x 5))))
(*.f64 (pow.f64 (exp.f64 x) x) (+.f64 (/.f64 3/4 (pow.f64 x 5)) (/.f64 15/8 (pow.f64 x 7))))
(+.f64 (*.f64 15/8 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 7))) (*.f64 3/4 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))))
(fma.f64 15/8 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 7)) (*.f64 3/4 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 5))))
(fma.f64 15/8 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 7)) (*.f64 3/4 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5))))
(*.f64 (pow.f64 (exp.f64 x) x) (+.f64 (/.f64 15/8 (pow.f64 x 7)) (/.f64 3/4 (pow.f64 x 5))))
(*.f64 (pow.f64 (exp.f64 x) x) (+.f64 (/.f64 3/4 (pow.f64 x 5)) (/.f64 15/8 (pow.f64 x 7))))
(/.f64 1 (pow.f64 x 5))
(+.f64 (/.f64 1 (pow.f64 x 5)) (/.f64 1 (pow.f64 x 3)))
(+.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 (pow.f64 x 5)))
(+.f64 (/.f64 1 (pow.f64 x 5)) (+.f64 (*.f64 1/2 (/.f64 1 x)) (/.f64 1 (pow.f64 x 3))))
(+.f64 (+.f64 (/.f64 1 (pow.f64 x 5)) (/.f64 1/2 x)) (/.f64 1 (pow.f64 x 3)))
(+.f64 (/.f64 1 (pow.f64 x 3)) (+.f64 (/.f64 1 (pow.f64 x 5)) (/.f64 1/2 x)))
(+.f64 (/.f64 1 (pow.f64 x 5)) (+.f64 (*.f64 1/2 (/.f64 1 x)) (+.f64 (/.f64 1 (pow.f64 x 3)) (*.f64 1/6 x))))
(+.f64 (+.f64 (/.f64 1 (pow.f64 x 5)) (/.f64 1/2 x)) (+.f64 (/.f64 1 (pow.f64 x 3)) (*.f64 x 1/6)))
(+.f64 (/.f64 1 (pow.f64 x 5)) (+.f64 (/.f64 1/2 x) (fma.f64 x 1/6 (/.f64 1 (pow.f64 x 3)))))
(+.f64 (/.f64 1 (pow.f64 x 3)) (+.f64 (fma.f64 x 1/6 (/.f64 1/2 x)) (/.f64 1 (pow.f64 x 5))))
(+.f64 (/.f64 1 (pow.f64 x 3)) (+.f64 (/.f64 1 (pow.f64 x 5)) (fma.f64 x 1/6 (/.f64 1/2 x))))
(/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))
(/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 5))
(/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5))
(/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))
(/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 5))
(/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5))
(/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))
(/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 5))
(/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5))
(/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))
(/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 5))
(/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5))
(/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))
(/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 5))
(/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5))
(/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))
(/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 5))
(/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5))
(/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))
(/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 5))
(/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5))
(/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))
(/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 5))
(/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5))

prune222.0ms (3.9%)

Pruning

21 alts after pruning (21 fresh and 0 done)

PrunedKeptTotal
New14611157
Fresh21012
Picked101
Done000
Total14921170
Error
0.3b
Counts
170 → 21
Alt Table
StatusErrorProgram
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))))))
1.2b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 (pow.f64 x -2) 3)) 1) (*.f64 (/.f64 x (pow.f64 (exp.f64 x) x)) (+.f64 (/.f64 1/4 (pow.f64 x 4)) (-.f64 1 (*.f64 (*.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))))))
2.6b
(expm1.f64 (log1p.f64 (*.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 15/8 (*.f64 x x))))))))
1.6b
(*.f64 (/.f64 (*.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 x) x)) (cbrt.f64 (pow.f64 (exp.f64 x) x))) (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)) (pow.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) (fma.f64 15/8 (pow.f64 x -2) 3/4)) 1)))
1.2b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (/.f64 (pow.f64 (exp.f64 x) x) x))) 2) (*.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) (+.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 15/8 (*.f64 x x)))))) (sqrt.f64 (PI.f64)))
1.5b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (pow.f64 (cbrt.f64 (*.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (/.f64 (pow.f64 (exp.f64 x) x) x))) 3) (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)) (+.f64 3/4 (/.f64 15/8 (*.f64 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.6b
(*.f64 (/.f64 (exp.f64 (pow.f64 x 2)) (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.4b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (*.f64 (+.f64 (/.f64 1/2 (*.f64 x x)) 1) (/.f64 (*.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 x) x)) (cbrt.f64 (pow.f64 (exp.f64 x) x))) (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.3b
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (*.f64 (sqrt.f64 (sqrt.f64 (PI.f64))) (sqrt.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 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (*.f64 (+.f64 (/.f64 1/2 (*.f64 x x)) 1) (/.f64 (*.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 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 (pow.f64 x -2) 3)) 1) (pow.f64 (exp.f64 x) x)) (*.f64 (+.f64 (/.f64 1/4 (pow.f64 x 4)) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 x -2)) 1))) x)) (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))))
2.2b
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (PI.f64))) (cbrt.f64 (sqrt.f64 (PI.f64)))) (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 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (*.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (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 (log1p.f64 (*.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (/.f64 (pow.f64 (exp.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))))))
1.4b
(*.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 (/.f64 1 (fabs.f64 x)) 5))) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
9.1b
(cbrt.f64 (*.f64 (*.f64 (*.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 15/8 (*.f64 x x)))))) (*.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 15/8 (*.f64 x x))))))) (*.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 15/8 (*.f64 x x))))))))
2.6b
(+.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.2b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (*.f64 (-.f64 (/.f64 1/4 (pow.f64 x 4)) 1) (pow.f64 (exp.f64 x) x)) (*.f64 (fma.f64 1/2 (pow.f64 x -2) -1) x)) (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))))
Compiler

Compiled 8515 to 5162 computations (39.4% saved)

localize23.0ms (0.4%)

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)) (fma.f64 15/8 (pow.f64 x -2) 3/4))
0.4b
(*.f64 (+.f64 (/.f64 1/2 (*.f64 x x)) 1) (/.f64 (pow.f64 (exp.f64 x) x) x))
1.1b
(pow.f64 (exp.f64 x) x)

series14.0ms (0.2%)

Counts
2 → 24
Calls

6 calls:

TimeVariablePointExpression
4.0ms
x
@-inf
(*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) (fma.f64 15/8 (pow.f64 x -2) 3/4))
3.0ms
x
@-inf
(*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5))
2.0ms
x
@inf
(*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) (fma.f64 15/8 (pow.f64 x -2) 3/4))
2.0ms
x
@inf
(*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5))
1.0ms
x
@0
(*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) (fma.f64 15/8 (pow.f64 x -2) 3/4))

rewrite48.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
564×log-prod_binary64
226×expm1-udef_binary64
226×log1p-udef_binary64
200×log-pow_binary64
132×add-sqr-sqrt_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01334
127634
2308134
Stop Event
node limit
Counts
2 → 40
Calls
Call 1
Inputs
(*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) (fma.f64 15/8 (pow.f64 x -2) 3/4))
(*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (pow.f64 (exp.f64 x) x) (*.f64 (pow.f64 x -5) (fma.f64 15/8 (pow.f64 x -2) 3/4))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 15/8 (pow.f64 x -2)) (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5))) (*.f64 3/4 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) (*.f64 15/8 (pow.f64 x -2))) (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) 3/4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (pow.f64 x -5)) (pow.f64 (exp.f64 x) x)) (fma.f64 15/8 (pow.f64 x -2) 3/4))) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (pow.f64 x -5)) (pow.f64 (exp.f64 x) x)) (fma.f64 15/8 (pow.f64 x -2) 3/4))))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (pow.f64 x -5)) (pow.f64 (exp.f64 x) x)) (fma.f64 15/8 (pow.f64 x -2) 3/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (pow.f64 x -5)) (pow.f64 (exp.f64 x) x)) (fma.f64 15/8 (pow.f64 x -2) 3/4)))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (pow.f64 x -5)) (pow.f64 (exp.f64 x) x)) (fma.f64 15/8 (pow.f64 x -2) 3/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 (exp.f64 x) x) (*.f64 (pow.f64 x -5) (fma.f64 15/8 (pow.f64 x -2) 3/4))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (exp.f64 x) x) (*.f64 (pow.f64 x -5) (fma.f64 15/8 (pow.f64 x -2) 3/4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 x) x) (*.f64 (pow.f64 x -5) (fma.f64 15/8 (pow.f64 x -2) 3/4))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (pow.f64 (exp.f64 x) x) (*.f64 (pow.f64 x -5) (fma.f64 15/8 (pow.f64 x -2) 3/4)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (pow.f64 (exp.f64 x) x) (*.f64 (pow.f64 x -5) (fma.f64 15/8 (pow.f64 x -2) 3/4)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 x) x) (*.f64 (pow.f64 x -5) (fma.f64 15/8 (pow.f64 x -2) 3/4))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 (pow.f64 x -5)) (pow.f64 (exp.f64 x) x)) (fma.f64 15/8 (pow.f64 x -2) 3/4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (exp.f64 x) x) (*.f64 (pow.f64 x -5) (fma.f64 15/8 (pow.f64 x -2) 3/4))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 x) x) (*.f64 (pow.f64 x -5) (fma.f64 15/8 (pow.f64 x -2) 3/4))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) 3) (pow.f64 (fma.f64 15/8 (pow.f64 x -2) 3/4) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (fma.f64 15/8 (pow.f64 x -2) 3/4) 3) (pow.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (pow.f64 (exp.f64 x) x) (*.f64 (pow.f64 x -5) (fma.f64 15/8 (pow.f64 x -2) 3/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) (*.f64 15/8 (pow.f64 x -2)) (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) 3/4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 15/8 (pow.f64 x -2)) (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) (*.f64 3/4 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (fma.f64 x x (fma.f64 -5 (log.f64 x) (log.f64 (fma.f64 15/8 (pow.f64 x -2) 3/4)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (fma.f64 x x (fma.f64 -5 (log.f64 x) (log.f64 (fma.f64 15/8 (pow.f64 x -2) 3/4)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (pow.f64 (exp.f64 x) x) (*.f64 (pow.f64 x -5) (fma.f64 15/8 (pow.f64 x -2) 3/4)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 x -5)) (pow.f64 (exp.f64 x) x))) (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 x -5)) (pow.f64 (exp.f64 x) x))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 x -5)) (pow.f64 (exp.f64 x) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (pow.f64 x -5)) (pow.f64 (exp.f64 x) x)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (pow.f64 x -5)) (pow.f64 (exp.f64 x) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 x -5/2) (sqrt.f64 (pow.f64 (exp.f64 x) x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 x -10) (pow.f64 (exp.f64 x) (+.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (pow.f64 x -5)) (pow.f64 (exp.f64 x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (pow.f64 (exp.f64 x) x) 3) (pow.f64 (pow.f64 x -5) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (pow.f64 x -5) 3) (pow.f64 (pow.f64 (exp.f64 x) x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (fma.f64 -5 (log.f64 x) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (fma.f64 -5 (log.f64 x) (*.f64 x x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5))))))))

simplify26.0ms (0.5%)

Algorithm
egg-herbie
Rules
601×associate-/r*_binary64
538×times-frac_binary64
435×associate-/l/_binary64
366×associate-/l*_binary64
273×associate-*l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
047458
1119456
2249456
3508420
41225420
Stop Event
node limit
Counts
64 → 59
Calls
Call 1
Inputs
(/.f64 15/8 (pow.f64 x 7))
(+.f64 (*.f64 21/8 (/.f64 1 (pow.f64 x 5))) (*.f64 15/8 (/.f64 1 (pow.f64 x 7))))
(+.f64 (*.f64 21/8 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 15/8 (/.f64 1 (pow.f64 x 7))) (*.f64 27/16 (/.f64 1 (pow.f64 x 3)))))
(+.f64 (*.f64 21/8 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 15/8 (/.f64 1 (pow.f64 x 7))) (+.f64 (*.f64 11/16 (/.f64 1 x)) (*.f64 27/16 (/.f64 1 (pow.f64 x 3))))))
(*.f64 3/4 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5)))
(+.f64 (*.f64 15/8 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 7))) (*.f64 3/4 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))))
(+.f64 (*.f64 15/8 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 7))) (*.f64 3/4 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))))
(+.f64 (*.f64 15/8 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 7))) (*.f64 3/4 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))))
(*.f64 3/4 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5)))
(+.f64 (*.f64 15/8 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 7))) (*.f64 3/4 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))))
(+.f64 (*.f64 15/8 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 7))) (*.f64 3/4 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))))
(+.f64 (*.f64 15/8 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 7))) (*.f64 3/4 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))))
(/.f64 1 (pow.f64 x 5))
(+.f64 (/.f64 1 (pow.f64 x 5)) (/.f64 1 (pow.f64 x 3)))
(+.f64 (/.f64 1 (pow.f64 x 5)) (+.f64 (*.f64 1/2 (/.f64 1 x)) (/.f64 1 (pow.f64 x 3))))
(+.f64 (/.f64 1 (pow.f64 x 5)) (+.f64 (*.f64 1/2 (/.f64 1 x)) (+.f64 (/.f64 1 (pow.f64 x 3)) (*.f64 1/6 x))))
(/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))
(/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))
(/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))
(/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))
(/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))
(/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))
(/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))
(/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))
Outputs
(/.f64 15/8 (pow.f64 x 7))
(+.f64 (*.f64 21/8 (/.f64 1 (pow.f64 x 5))) (*.f64 15/8 (/.f64 1 (pow.f64 x 7))))
(+.f64 (/.f64 21/8 (pow.f64 x 5)) (/.f64 15/8 (pow.f64 x 7)))
(+.f64 (*.f64 21/8 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 15/8 (/.f64 1 (pow.f64 x 7))) (*.f64 27/16 (/.f64 1 (pow.f64 x 3)))))
(+.f64 (/.f64 21/8 (pow.f64 x 5)) (+.f64 (/.f64 15/8 (pow.f64 x 7)) (/.f64 27/16 (pow.f64 x 3))))
(+.f64 (*.f64 21/8 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 15/8 (/.f64 1 (pow.f64 x 7))) (+.f64 (*.f64 11/16 (/.f64 1 x)) (*.f64 27/16 (/.f64 1 (pow.f64 x 3))))))
(+.f64 (/.f64 21/8 (pow.f64 x 5)) (+.f64 (/.f64 15/8 (pow.f64 x 7)) (+.f64 (/.f64 27/16 (pow.f64 x 3)) (/.f64 11/16 x))))
(+.f64 (/.f64 15/8 (pow.f64 x 7)) (+.f64 (/.f64 21/8 (pow.f64 x 5)) (+.f64 (/.f64 27/16 (pow.f64 x 3)) (/.f64 11/16 x))))
(+.f64 (/.f64 27/16 (pow.f64 x 3)) (+.f64 (/.f64 15/8 (pow.f64 x 7)) (+.f64 (/.f64 21/8 (pow.f64 x 5)) (/.f64 11/16 x))))
(*.f64 3/4 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5)))
(*.f64 3/4 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 5)))
(*.f64 3/4 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)))
(+.f64 (*.f64 15/8 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 7))) (*.f64 3/4 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))))
(fma.f64 15/8 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 7)) (*.f64 3/4 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 5))))
(fma.f64 15/8 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 7)) (*.f64 3/4 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5))))
(*.f64 (pow.f64 (exp.f64 x) x) (+.f64 (/.f64 3/4 (pow.f64 x 5)) (/.f64 15/8 (pow.f64 x 7))))
(+.f64 (*.f64 15/8 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 7))) (*.f64 3/4 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))))
(fma.f64 15/8 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 7)) (*.f64 3/4 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 5))))
(fma.f64 15/8 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 7)) (*.f64 3/4 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5))))
(*.f64 (pow.f64 (exp.f64 x) x) (+.f64 (/.f64 3/4 (pow.f64 x 5)) (/.f64 15/8 (pow.f64 x 7))))
(+.f64 (*.f64 15/8 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 7))) (*.f64 3/4 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))))
(fma.f64 15/8 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 7)) (*.f64 3/4 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 5))))
(fma.f64 15/8 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 7)) (*.f64 3/4 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5))))
(*.f64 (pow.f64 (exp.f64 x) x) (+.f64 (/.f64 3/4 (pow.f64 x 5)) (/.f64 15/8 (pow.f64 x 7))))
(*.f64 3/4 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5)))
(*.f64 3/4 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 5)))
(*.f64 3/4 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)))
(+.f64 (*.f64 15/8 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 7))) (*.f64 3/4 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))))
(fma.f64 15/8 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 7)) (*.f64 3/4 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 5))))
(fma.f64 15/8 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 7)) (*.f64 3/4 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5))))
(*.f64 (pow.f64 (exp.f64 x) x) (+.f64 (/.f64 3/4 (pow.f64 x 5)) (/.f64 15/8 (pow.f64 x 7))))
(+.f64 (*.f64 15/8 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 7))) (*.f64 3/4 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))))
(fma.f64 15/8 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 7)) (*.f64 3/4 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 5))))
(fma.f64 15/8 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 7)) (*.f64 3/4 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5))))
(*.f64 (pow.f64 (exp.f64 x) x) (+.f64 (/.f64 3/4 (pow.f64 x 5)) (/.f64 15/8 (pow.f64 x 7))))
(+.f64 (*.f64 15/8 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 7))) (*.f64 3/4 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))))
(fma.f64 15/8 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 7)) (*.f64 3/4 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 5))))
(fma.f64 15/8 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 7)) (*.f64 3/4 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5))))
(*.f64 (pow.f64 (exp.f64 x) x) (+.f64 (/.f64 3/4 (pow.f64 x 5)) (/.f64 15/8 (pow.f64 x 7))))
(/.f64 1 (pow.f64 x 5))
(+.f64 (/.f64 1 (pow.f64 x 5)) (/.f64 1 (pow.f64 x 3)))
(+.f64 (/.f64 1 (pow.f64 x 5)) (+.f64 (*.f64 1/2 (/.f64 1 x)) (/.f64 1 (pow.f64 x 3))))
(+.f64 (+.f64 (/.f64 1 (pow.f64 x 5)) (/.f64 1/2 x)) (/.f64 1 (pow.f64 x 3)))
(+.f64 (/.f64 1 (pow.f64 x 5)) (+.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1/2 x)))
(+.f64 (/.f64 1 (pow.f64 x 5)) (+.f64 (*.f64 1/2 (/.f64 1 x)) (+.f64 (/.f64 1 (pow.f64 x 3)) (*.f64 1/6 x))))
(+.f64 (/.f64 1 (pow.f64 x 5)) (+.f64 (/.f64 1/2 x) (+.f64 (/.f64 1 (pow.f64 x 3)) (*.f64 x 1/6))))
(+.f64 (/.f64 1 (pow.f64 x 5)) (+.f64 (/.f64 1/2 x) (fma.f64 x 1/6 (/.f64 1 (pow.f64 x 3)))))
(+.f64 (/.f64 1/2 x) (+.f64 (/.f64 1 (pow.f64 x 5)) (fma.f64 x 1/6 (/.f64 1 (pow.f64 x 3)))))
(+.f64 (+.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1/2 x)) (fma.f64 x 1/6 (/.f64 1 (pow.f64 x 5))))
(+.f64 (/.f64 1 (pow.f64 x 3)) (+.f64 (/.f64 1 (pow.f64 x 5)) (fma.f64 x 1/6 (/.f64 1/2 x))))
(/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))
(/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 5))
(/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5))
(/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))
(/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 5))
(/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5))
(/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))
(/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 5))
(/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5))
(/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))
(/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 5))
(/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5))
(/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))
(/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 5))
(/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5))
(/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))
(/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 5))
(/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5))
(/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))
(/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 5))
(/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5))
(/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 5))
(/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 5))
(/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5))

prune202.0ms (3.6%)

Pruning

19 alts after pruning (19 fresh and 0 done)

PrunedKeptTotal
New1296135
Fresh71320
Picked101
Done000
Total13719156
Error
0.3b
Counts
156 → 19
Alt Table
StatusErrorProgram
2.6b
(expm1.f64 (log1p.f64 (*.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 15/8 (*.f64 x x))))))))
1.6b
(*.f64 (/.f64 (*.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 x) x)) (cbrt.f64 (pow.f64 (exp.f64 x) x))) (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)))))
9.1b
(cbrt.f64 (*.f64 (*.f64 (*.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 15/8 (*.f64 x x)))))) (*.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 15/8 (*.f64 x x))))))) (*.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 15/8 (*.f64 x x))))))))
2.5b
(*.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)) (pow.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) (fma.f64 15/8 (pow.f64 x -2) 3/4)) 1)))
2.6b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (expm1.f64 (log1p.f64 (*.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (/.f64 (pow.f64 (exp.f64 x) x) x)))) (pow.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) (fma.f64 15/8 (pow.f64 x -2) 3/4)) 1)))
1.2b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (/.f64 (pow.f64 (exp.f64 x) x) x))) 2) (*.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) (+.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 15/8 (*.f64 x x)))))) (sqrt.f64 (PI.f64)))
1.5b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (pow.f64 (cbrt.f64 (*.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (/.f64 (pow.f64 (exp.f64 x) x) x))) 3) (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))))
1.4b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (*.f64 (+.f64 (/.f64 1/2 (*.f64 x x)) 1) (/.f64 (*.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 x) x)) (cbrt.f64 (pow.f64 (exp.f64 x) x))) (cbrt.f64 (pow.f64 (exp.f64 x) x))) x)) (pow.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) (fma.f64 15/8 (pow.f64 x -2) 3/4)) 1)))
1.2b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 (pow.f64 x -2) 3)) 1) (pow.f64 (exp.f64 x) x)) (*.f64 (+.f64 (/.f64 1/4 (pow.f64 x 4)) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 x -2)) 1))) 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) (*.f64 (sqrt.f64 (sqrt.f64 (PI.f64))) (sqrt.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.2b
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (PI.f64))) (cbrt.f64 (sqrt.f64 (PI.f64)))) (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 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 x) x) (-.f64 (/.f64 1/4 (pow.f64 x 4)) 1)) (*.f64 x (fma.f64 1/2 (pow.f64 x -2) -1))) (pow.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) (fma.f64 15/8 (pow.f64 x -2) 3/4)) 1)))
1.2b
(*.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)) (pow.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) (fma.f64 15/8 (pow.f64 x -2) 3/4)) 1)))
1.2b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 (pow.f64 x -2) 3)) 1) (*.f64 (/.f64 x (pow.f64 (exp.f64 x) x)) (+.f64 (/.f64 1/4 (pow.f64 x 4)) (-.f64 1 (*.f64 (*.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))))))
9.2b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (*.f64 (+.f64 (/.f64 1/2 (*.f64 x x)) 1) (/.f64 (cbrt.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 (exp.f64 x) x)) (pow.f64 (exp.f64 x) x))) x)) (pow.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) (fma.f64 15/8 (pow.f64 x -2) 3/4)) 1)))
1.4b
(*.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 (/.f64 1 (fabs.f64 x)) 5))) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
2.6b
(+.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.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)))))
Compiler

Compiled 7423 to 4791 computations (35.5% saved)

localize34.0ms (0.6%)

Local error

Found 4 expressions with local error:

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

series9.0ms (0.2%)

Counts
2 → 24
Calls

6 calls:

TimeVariablePointExpression
2.0ms
x
@-inf
(*.f64 (+.f64 (*.f64 1/8 (pow.f64 (pow.f64 x -2) 3)) 1) (pow.f64 (exp.f64 x) x))
2.0ms
x
@inf
(*.f64 (+.f64 (*.f64 1/8 (pow.f64 (pow.f64 x -2) 3)) 1) (pow.f64 (exp.f64 x) x))
1.0ms
x
@0
(*.f64 (+.f64 (*.f64 1/8 (pow.f64 (pow.f64 x -2) 3)) 1) (pow.f64 (exp.f64 x) x))
1.0ms
x
@-inf
(pow.f64 (pow.f64 x -2) 3)
1.0ms
x
@inf
(pow.f64 (pow.f64 x -2) 3)

rewrite46.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
539×log-prod_binary64
236×prod-diff_binary64
214×log1p-udef_binary64
213×expm1-udef_binary64
204×fma-def_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01320
128120
2313519
Stop Event
node limit
Counts
2 → 71
Calls
Call 1
Inputs
(pow.f64 (pow.f64 x -2) 3)
(*.f64 (+.f64 (*.f64 1/8 (pow.f64 (pow.f64 x -2) 3)) 1) (pow.f64 (exp.f64 x) x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 x -6))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (pow.f64 x -6))) (cbrt.f64 (exp.f64 (pow.f64 x -6))))) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 x -6)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 x -6)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 x -6)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 x -6))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 x -2) (pow.f64 x -4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 x -6) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 x -6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 x -4) (pow.f64 x -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 x -4)) (*.f64 (cbrt.f64 (pow.f64 x -2)) (pow.f64 x -4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 x) (*.f64 (/.f64 1 x) (pow.f64 x -4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 x -3) (pow.f64 x -3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 x) 2) -6) (pow.f64 (cbrt.f64 x) -6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 x) -6) (pow.f64 (sqrt.f64 x) -6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 x -4)) 3) (pow.f64 x -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 1 x) 3) (pow.f64 (/.f64 1 x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 x -4) 1) (pow.f64 x -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 x -4) (cbrt.f64 (pow.f64 x -4))) (cbrt.f64 (pow.f64 x -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 x -4) (/.f64 1 x)) (/.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 x -12))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 x -6)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 x -6))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 x -6) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 x -6)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 -6 (log.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 x) -6))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 -6 (log.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 x -6)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (exp.f64 (*.f64 x x)) (*.f64 (*.f64 (pow.f64 x -6) 1/8) (exp.f64 (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (exp.f64 (*.f64 x x)) (*.f64 (exp.f64 (*.f64 x x)) (*.f64 (pow.f64 x -6) 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (exp.f64 (fma.f64 x x (log1p.f64 (*.f64 (pow.f64 x -6) 1/8)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (pow.f64 x -6) 1/8) (exp.f64 (*.f64 x x))) (exp.f64 (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (exp.f64 (*.f64 x x)) (*.f64 (pow.f64 x -6) 1/8)) (exp.f64 (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (exp.f64 (fma.f64 x x (log1p.f64 (*.f64 (pow.f64 x -6) 1/8)))))) (cbrt.f64 (exp.f64 (exp.f64 (fma.f64 x x (log1p.f64 (*.f64 (pow.f64 x -6) 1/8)))))))) (log.f64 (cbrt.f64 (exp.f64 (exp.f64 (fma.f64 x x (log1p.f64 (*.f64 (pow.f64 x -6) 1/8))))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (exp.f64 (fma.f64 x x (log1p.f64 (*.f64 (pow.f64 x -6) 1/8))))))) (log.f64 (sqrt.f64 (exp.f64 (exp.f64 (fma.f64 x x (log1p.f64 (*.f64 (pow.f64 x -6) 1/8))))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (exp.f64 (fma.f64 x x (log1p.f64 (*.f64 (pow.f64 x -6) 1/8)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 (pow.f64 (pow.f64 x -6) 3) 1/512 1) (exp.f64 (*.f64 x x))) (-.f64 (fma.f64 (pow.f64 x -12) 1/64 1) (*.f64 (pow.f64 x -6) 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 (pow.f64 x -12) 1/64 -1) (exp.f64 (*.f64 x x))) (fma.f64 (pow.f64 x -6) 1/8 -1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (exp.f64 (*.f64 x x)) (fma.f64 (pow.f64 (pow.f64 x -6) 3) 1/512 1)) (-.f64 (fma.f64 (pow.f64 x -12) 1/64 1) (*.f64 (pow.f64 x -6) 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (exp.f64 (*.f64 x x)) (fma.f64 (pow.f64 x -12) 1/64 -1)) (fma.f64 (pow.f64 x -6) 1/8 -1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (fma.f64 x x (log1p.f64 (*.f64 (pow.f64 x -6) 1/8)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (fma.f64 x x (log1p.f64 (*.f64 (pow.f64 x -6) 1/8)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (exp.f64 (fma.f64 x x (log1p.f64 (*.f64 (pow.f64 x -6) 1/8))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (exp.f64 (fma.f64 x x (log1p.f64 (*.f64 (pow.f64 x -6) 1/8))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (exp.f64 (fma.f64 x x (log1p.f64 (*.f64 (pow.f64 x -6) 1/8)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (exp.f64 (fma.f64 x x (log1p.f64 (*.f64 (pow.f64 x -6) 1/8))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (exp.f64 (fma.f64 x x (log1p.f64 (*.f64 (pow.f64 x -6) 1/8)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (exp.f64 (fma.f64 x x (log1p.f64 (*.f64 (pow.f64 x -6) 1/8)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (fma.f64 (pow.f64 x -6) 1/8 1) 3) (pow.f64 (exp.f64 (*.f64 x x)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 x x)) 3) (pow.f64 (fma.f64 (pow.f64 x -6) 1/8 1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (exp.f64 (fma.f64 x x (log1p.f64 (*.f64 (pow.f64 x -6) 1/8))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 x -6) 1/8) (exp.f64 (*.f64 x x)) (exp.f64 (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (exp.f64 (*.f64 x x)) (*.f64 (*.f64 (pow.f64 x -6) 1/8) (exp.f64 (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (exp.f64 (*.f64 x x)) (*.f64 (exp.f64 (*.f64 x x)) (*.f64 (pow.f64 x -6) 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (exp.f64 (*.f64 x x)) (*.f64 (pow.f64 x -6) 1/8) (exp.f64 (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (exp.f64 (*.f64 x x)) 1 (*.f64 (*.f64 (pow.f64 x -6) 1/8) (exp.f64 (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (exp.f64 (*.f64 x x)) 1 (*.f64 (exp.f64 (*.f64 x x)) (*.f64 (pow.f64 x -6) 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (exp.f64 (*.f64 x x))) (pow.f64 (cbrt.f64 (exp.f64 (*.f64 x x))) 2) (*.f64 (*.f64 (pow.f64 x -6) 1/8) (exp.f64 (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (exp.f64 (*.f64 x x))) (pow.f64 (cbrt.f64 (exp.f64 (*.f64 x x))) 2) (*.f64 (exp.f64 (*.f64 x x)) (*.f64 (pow.f64 x -6) 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (exp.f64 (*.f64 x x))) 2) (cbrt.f64 (exp.f64 (*.f64 x x))) (*.f64 (*.f64 (pow.f64 x -6) 1/8) (exp.f64 (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (exp.f64 (*.f64 x x))) 2) (cbrt.f64 (exp.f64 (*.f64 x x))) (*.f64 (exp.f64 (*.f64 x x)) (*.f64 (pow.f64 x -6) 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (exp.f64 (*.f64 x x))) (sqrt.f64 (exp.f64 (*.f64 x x))) (*.f64 (*.f64 (pow.f64 x -6) 1/8) (exp.f64 (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (exp.f64 (*.f64 x x))) (sqrt.f64 (exp.f64 (*.f64 x x))) (*.f64 (exp.f64 (*.f64 x x)) (*.f64 (pow.f64 x -6) 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 1 x) (exp.f64 (*.f64 x x)) (*.f64 (*.f64 (pow.f64 x -6) 1/8) (exp.f64 (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 1 x) (exp.f64 (*.f64 x x)) (*.f64 (exp.f64 (*.f64 x x)) (*.f64 (pow.f64 x -6) 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (pow.f64 (cbrt.f64 (exp.f64 x)) 2) x) (pow.f64 (cbrt.f64 (exp.f64 x)) x) (*.f64 (*.f64 (pow.f64 x -6) 1/8) (exp.f64 (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (pow.f64 (cbrt.f64 (exp.f64 x)) 2) x) (pow.f64 (cbrt.f64 (exp.f64 x)) x) (*.f64 (exp.f64 (*.f64 x x)) (*.f64 (pow.f64 x -6) 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (sqrt.f64 (exp.f64 x)) x) (pow.f64 (sqrt.f64 (exp.f64 x)) x) (*.f64 (*.f64 (pow.f64 x -6) 1/8) (exp.f64 (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (sqrt.f64 (exp.f64 x)) x) (pow.f64 (sqrt.f64 (exp.f64 x)) x) (*.f64 (exp.f64 (*.f64 x x)) (*.f64 (pow.f64 x -6) 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (fma.f64 x x (log1p.f64 (*.f64 (pow.f64 x -6) 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (fma.f64 x x (log1p.f64 (*.f64 (pow.f64 x -6) 1/8))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (exp.f64 (fma.f64 x x (log1p.f64 (*.f64 (pow.f64 x -6) 1/8))))))))))

simplify25.0ms (0.4%)

Algorithm
egg-herbie
Rules
623×associate-*l*_binary64
559×associate-*l/_binary64
449×associate-*r*_binary64
350×associate-*r/_binary64
294×unswap-sqr_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
028298
168298
2147298
3342280
41381280
Stop Event
node limit
Counts
95 → 83
Calls
Call 1
Inputs
(/.f64 1 (pow.f64 x 6))
(/.f64 1 (pow.f64 x 6))
(/.f64 1 (pow.f64 x 6))
(/.f64 1 (pow.f64 x 6))
(/.f64 1 (pow.f64 x 6))
(/.f64 1 (pow.f64 x 6))
(/.f64 1 (pow.f64 x 6))
(/.f64 1 (pow.f64 x 6))
(/.f64 1 (pow.f64 x 6))
(/.f64 1 (pow.f64 x 6))
(/.f64 1 (pow.f64 x 6))
(/.f64 1 (pow.f64 x 6))
(/.f64 1/8 (pow.f64 x 6))
(+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 4))) (*.f64 1/8 (/.f64 1 (pow.f64 x 6))))
(+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 6))) (*.f64 1/16 (/.f64 1 (pow.f64 x 2)))))
(+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 4))) (+.f64 49/48 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 6))) (*.f64 1/16 (/.f64 1 (pow.f64 x 2))))))
(exp.f64 (pow.f64 x 2))
(+.f64 (*.f64 1/8 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 6))) (exp.f64 (pow.f64 x 2)))
(+.f64 (*.f64 1/8 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 6))) (exp.f64 (pow.f64 x 2)))
(+.f64 (*.f64 1/8 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 6))) (exp.f64 (pow.f64 x 2)))
(exp.f64 (pow.f64 x 2))
(+.f64 (*.f64 1/8 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 6))) (exp.f64 (pow.f64 x 2)))
(+.f64 (*.f64 1/8 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 6))) (exp.f64 (pow.f64 x 2)))
(+.f64 (*.f64 1/8 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 6))) (exp.f64 (pow.f64 x 2)))
Outputs
(/.f64 1 (pow.f64 x 6))
(/.f64 1 (pow.f64 x 6))
(/.f64 1 (pow.f64 x 6))
(/.f64 1 (pow.f64 x 6))
(/.f64 1 (pow.f64 x 6))
(/.f64 1 (pow.f64 x 6))
(/.f64 1 (pow.f64 x 6))
(/.f64 1 (pow.f64 x 6))
(/.f64 1 (pow.f64 x 6))
(/.f64 1 (pow.f64 x 6))
(/.f64 1 (pow.f64 x 6))
(/.f64 1 (pow.f64 x 6))
(/.f64 1/8 (pow.f64 x 6))
(+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 4))) (*.f64 1/8 (/.f64 1 (pow.f64 x 6))))
(+.f64 (/.f64 1/8 (pow.f64 x 4)) (/.f64 1/8 (pow.f64 x 6)))
(+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 6))) (*.f64 1/16 (/.f64 1 (pow.f64 x 2)))))
(+.f64 (/.f64 1/8 (pow.f64 x 4)) (+.f64 (/.f64 1/8 (pow.f64 x 6)) (/.f64 1/16 (*.f64 x x))))
(+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 4))) (+.f64 49/48 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 6))) (*.f64 1/16 (/.f64 1 (pow.f64 x 2))))))
(+.f64 (+.f64 (/.f64 1/8 (pow.f64 x 4)) 49/48) (+.f64 (/.f64 1/8 (pow.f64 x 6)) (/.f64 1/16 (*.f64 x x))))
(+.f64 (/.f64 1/8 (pow.f64 x 4)) (+.f64 (/.f64 1/8 (pow.f64 x 6)) (+.f64 (/.f64 1/16 (*.f64 x x)) 49/48)))
(+.f64 (/.f64 1/8 (pow.f64 x 6)) (+.f64 (/.f64 1/8 (pow.f64 x 4)) (+.f64 (/.f64 1/16 (*.f64 x x)) 49/48)))
(exp.f64 (pow.f64 x 2))
(exp.f64 (*.f64 x x))
(pow.f64 (exp.f64 x) x)
(+.f64 (*.f64 1/8 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 6))) (exp.f64 (pow.f64 x 2)))
(fma.f64 1/8 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 6)) (exp.f64 (*.f64 x x)))
(*.f64 (+.f64 (/.f64 1/8 (pow.f64 x 6)) 1) (exp.f64 (*.f64 x x)))
(*.f64 (+.f64 (/.f64 1/8 (pow.f64 x 6)) 1) (pow.f64 (exp.f64 x) x))
(+.f64 (*.f64 1/8 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 6))) (exp.f64 (pow.f64 x 2)))
(fma.f64 1/8 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 6)) (exp.f64 (*.f64 x x)))
(*.f64 (+.f64 (/.f64 1/8 (pow.f64 x 6)) 1) (exp.f64 (*.f64 x x)))
(*.f64 (+.f64 (/.f64 1/8 (pow.f64 x 6)) 1) (pow.f64 (exp.f64 x) x))
(+.f64 (*.f64 1/8 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 6))) (exp.f64 (pow.f64 x 2)))
(fma.f64 1/8 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 6)) (exp.f64 (*.f64 x x)))
(*.f64 (+.f64 (/.f64 1/8 (pow.f64 x 6)) 1) (exp.f64 (*.f64 x x)))
(*.f64 (+.f64 (/.f64 1/8 (pow.f64 x 6)) 1) (pow.f64 (exp.f64 x) x))
(exp.f64 (pow.f64 x 2))
(exp.f64 (*.f64 x x))
(pow.f64 (exp.f64 x) x)
(+.f64 (*.f64 1/8 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 6))) (exp.f64 (pow.f64 x 2)))
(fma.f64 1/8 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 6)) (exp.f64 (*.f64 x x)))
(*.f64 (+.f64 (/.f64 1/8 (pow.f64 x 6)) 1) (exp.f64 (*.f64 x x)))
(*.f64 (+.f64 (/.f64 1/8 (pow.f64 x 6)) 1) (pow.f64 (exp.f64 x) x))
(+.f64 (*.f64 1/8 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 6))) (exp.f64 (pow.f64 x 2)))
(fma.f64 1/8 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 6)) (exp.f64 (*.f64 x x)))
(*.f64 (+.f64 (/.f64 1/8 (pow.f64 x 6)) 1) (exp.f64 (*.f64 x x)))
(*.f64 (+.f64 (/.f64 1/8 (pow.f64 x 6)) 1) (pow.f64 (exp.f64 x) x))
(+.f64 (*.f64 1/8 (/.f64 (exp.f64 (pow.f64 x 2)) (pow.f64 x 6))) (exp.f64 (pow.f64 x 2)))
(fma.f64 1/8 (/.f64 (exp.f64 (*.f64 x x)) (pow.f64 x 6)) (exp.f64 (*.f64 x x)))
(*.f64 (+.f64 (/.f64 1/8 (pow.f64 x 6)) 1) (exp.f64 (*.f64 x x)))
(*.f64 (+.f64 (/.f64 1/8 (pow.f64 x 6)) 1) (pow.f64 (exp.f64 x) x))

prune341.0ms (6.1%)

Pruning

21 alts after pruning (20 fresh and 1 done)

PrunedKeptTotal
New1596165
Fresh41418
Picked011
Done000
Total16321184
Error
0.3b
Counts
184 → 21
Alt Table
StatusErrorProgram
2.8b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (expm1.f64 (log1p.f64 (exp.f64 (fma.f64 x x (log1p.f64 (*.f64 (pow.f64 x -6) 1/8)))))) (*.f64 (+.f64 (/.f64 1/4 (pow.f64 x 4)) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 x -2)) 1))) x)) (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))))
9.2b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (*.f64 (+.f64 (/.f64 1/2 (*.f64 x x)) 1) (/.f64 (cbrt.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 (exp.f64 x) x)) (pow.f64 (exp.f64 x) x))) x)) (pow.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) (fma.f64 15/8 (pow.f64 x -2) 3/4)) 1)))
2.6b
(expm1.f64 (log1p.f64 (*.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 15/8 (*.f64 x x))))))))
1.6b
(*.f64 (/.f64 (*.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 x) x)) (cbrt.f64 (pow.f64 (exp.f64 x) x))) (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.6b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (fma.f64 (pow.f64 (pow.f64 (cbrt.f64 (exp.f64 x)) 2) x) (pow.f64 (cbrt.f64 (exp.f64 x)) x) (*.f64 (*.f64 (pow.f64 x -6) 1/8) (exp.f64 (*.f64 x x)))) (*.f64 (+.f64 (/.f64 1/4 (pow.f64 x 4)) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 x -2)) 1))) x)) (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))))
1.4b
(*.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 (/.f64 1 (fabs.f64 x)) 5))) (+.f64 3/4 (/.f64 (/.f64 15/8 x) x)))))
2.6b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (expm1.f64 (log1p.f64 (*.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (/.f64 (pow.f64 (exp.f64 x) x) x)))) (pow.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) (fma.f64 15/8 (pow.f64 x -2) 3/4)) 1)))
1.2b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (pow.f64 (sqrt.f64 (*.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (/.f64 (pow.f64 (exp.f64 x) x) x))) 2) (*.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) (+.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 15/8 (*.f64 x x)))))) (sqrt.f64 (PI.f64)))
1.5b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (pow.f64 (cbrt.f64 (*.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (/.f64 (pow.f64 (exp.f64 x) x) x))) 3) (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))))
1.4b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (*.f64 (+.f64 (/.f64 1/2 (*.f64 x x)) 1) (/.f64 (*.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 x) x)) (cbrt.f64 (pow.f64 (exp.f64 x) x))) (cbrt.f64 (pow.f64 (exp.f64 x) x))) x)) (pow.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) (fma.f64 15/8 (pow.f64 x -2) 3/4)) 1)))
1.2b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 (pow.f64 x -2) 3)) 1) (pow.f64 (exp.f64 x) x)) (*.f64 (+.f64 (/.f64 1/4 (pow.f64 x 4)) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 x -2)) 1))) x)) (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))))
10.3b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (pow.f64 (pow.f64 (exp.f64 (fma.f64 x x (log1p.f64 (*.f64 (pow.f64 x -6) 1/8)))) 3) 1/3) (*.f64 (+.f64 (/.f64 1/4 (pow.f64 x 4)) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 x -2)) 1))) 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) (*.f64 (sqrt.f64 (sqrt.f64 (PI.f64))) (sqrt.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.4b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 (pow.f64 x -2) 3)) 1) (*.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 x) x)) (cbrt.f64 (pow.f64 (exp.f64 x) x))) (cbrt.f64 (pow.f64 (exp.f64 x) x)))) (*.f64 (+.f64 (/.f64 1/4 (pow.f64 x 4)) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 x -2)) 1))) x)) (*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x 5)) (+.f64 3/4 (/.f64 15/8 (*.f64 x x))))))
2.2b
(*.f64 (/.f64 (pow.f64 (exp.f64 x) x) (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (PI.f64))) (cbrt.f64 (sqrt.f64 (PI.f64)))) (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 (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)) (pow.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) (fma.f64 15/8 (pow.f64 x -2) 3/4)) 1)))
2.6b
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 (pow.f64 x -2) 3)) 1) (expm1.f64 (log1p.f64 (pow.f64 (exp.f64 x) x)))) (*.f64 (+.f64 (/.f64 1/4 (pow.f64 x 4)) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 x -2)) 1))) 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 (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 (pow.f64 x -6) 1/8) (exp.f64 (*.f64 x x)))) (*.f64 (+.f64 (/.f64 1/4 (pow.f64 x 4)) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 x -2)) 1))) 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 (*.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.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)))))
Compiler

Compiled 10749 to 7497 computations (30.3% saved)

regimes903.0ms (16%)

Accuracy

Total 0.9b remaining (68.5%)

Threshold costs 0.9b (68.5%)

Counts
168 → 1
Compiler

Compiled 22841 to 16548 computations (27.6% saved)

simplify2.0ms (0%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
02452
13252
Stop Event
saturated
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (*.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (pow.f64 (exp.f64 x) x)) x) (pow.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) (fma.f64 15/8 (pow.f64 x -2) 3/4)) 1)))
Outputs
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (*.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (pow.f64 (exp.f64 x) x)) x) (pow.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) (fma.f64 15/8 (pow.f64 x -2) 3/4)) 1)))
(*.f64 (sqrt.f64 (/.f64 1 (PI.f64))) (+.f64 (/.f64 (*.f64 (fma.f64 1/2 (pow.f64 x -2) 1) (pow.f64 (exp.f64 x) x)) x) (*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 x -5)) (fma.f64 15/8 (pow.f64 x -2) 3/4))))

end622.0ms (11%)

Stop Event
fuel
Compiler

Compiled 1087 to 769 computations (29.3% saved)

Profiling

Loading profile data...