Details

Time bar (total: 5.5s)

analyze1.0ms (0%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%25.7%74.3%0%0%0%0
100%25.7%0%74.3%0%0%0%1
Compiler

Compiled 26 to 19 computations (26.9% saved)

sample2.4s (44.3%)

Results
1.7s7144×body256valid
453.0ms544×body1024valid
197.0ms547×body512valid
11.0ms21×body2048valid
Bogosity

preprocess70.0ms (1.3%)

Algorithm
egg-herbie
Rules
718×fma-def_binary64
664×unswap-sqr_binary64
446×distribute-rgt-in_binary64
422×distribute-lft-in_binary64
374×fma-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01226
12926
26226
313626
439626
5165826
6529426
022
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
Outputs
0
1
Call 2
Inputs
(-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))
(-.f64 (pow.f64 (+.f64 eps x) 5) (pow.f64 eps 5))
Outputs
(-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))
(-.f64 (pow.f64 (+.f64 eps x) 5) (pow.f64 eps 5))
(-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 eps 5))
Compiler

Compiled 13 to 10 computations (23.1% saved)

simplify63.0ms (1.1%)

Algorithm
egg-herbie
Rules
673×distribute-rgt-neg-in_binary64
582×distribute-lft-neg-in_binary64
436×unswap-sqr_binary64
376×fma-def_binary64
275×*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0813
11813
23813
38013
422813
594213
6296713
7550413
Stop Event
node limit
Counts
1 → 1
Calls
Call 1
Inputs
(-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))
Outputs
(-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))

eval1.0ms (0%)

Compiler

Compiled 11 to 8 computations (27.3% saved)

prune2.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
7.0b
Counts
2 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
7.0b
(-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))
Compiler

Compiled 11 to 8 computations (27.3% saved)

localize20.0ms (0.4%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(pow.f64 (+.f64 x eps) 5)
0.5b
(-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))
Compiler

Compiled 25 to 13 computations (48% saved)

series16.0ms (0.3%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
3.0ms
x
@-inf
(-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))
2.0ms
x
@0
(-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))
2.0ms
x
@inf
(-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))
2.0ms
eps
@0
(-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))
1.0ms
eps
@-inf
(-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))

rewrite107.0ms (2%)

Algorithm
batch-egg-rewrite
Rules
907×prod-diff_binary64
425×log-prod_binary64
325×fma-def_binary64
294×pow-prod-down_binary64
258×pow2_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0820
119020
2267520
Stop Event
node limit
Counts
2 → 118
Calls
Call 1
Inputs
(-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))
(pow.f64 (+.f64 x eps) 5)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (+.f64 x eps) 5) (neg.f64 (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (+.f64 x eps) 5) (*.f64 (neg.f64 (pow.f64 x 5)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5)) (fma.f64 (neg.f64 (pow.f64 x 5)) 1 (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5)) (fma.f64 (neg.f64 (cbrt.f64 (pow.f64 x 5))) (cbrt.f64 (pow.f64 x 10)) (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5)) (+.f64 (neg.f64 (pow.f64 x 5)) (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5)) (fma.f64 -1 (pow.f64 x 5) (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5)) (fma.f64 (neg.f64 (cbrt.f64 (pow.f64 x 10))) (cbrt.f64 (pow.f64 x 5)) (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (pow.f64 x 5)) (pow.f64 (+.f64 x eps) 5))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (+.f64 x eps) 5) 1 (neg.f64 (*.f64 (cbrt.f64 (pow.f64 x 5)) (pow.f64 (cbrt.f64 x) 10)))) (fma.f64 (neg.f64 (cbrt.f64 (pow.f64 x 5))) (pow.f64 (cbrt.f64 x) 10) (*.f64 (cbrt.f64 (pow.f64 x 5)) (pow.f64 (cbrt.f64 x) 10))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (pow.f64 (+.f64 x eps) 5) (neg.f64 (*.f64 (cbrt.f64 (pow.f64 x 5)) (pow.f64 (cbrt.f64 x) 10)))) (fma.f64 (neg.f64 (cbrt.f64 (pow.f64 x 5))) (pow.f64 (cbrt.f64 x) 10) (*.f64 (cbrt.f64 (pow.f64 x 5)) (pow.f64 (cbrt.f64 x) 10))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (+.f64 x eps)) 5) (cbrt.f64 (pow.f64 (+.f64 x eps) 10)) (neg.f64 (*.f64 (cbrt.f64 (pow.f64 x 5)) (pow.f64 (cbrt.f64 x) 10)))) (fma.f64 (neg.f64 (cbrt.f64 (pow.f64 x 5))) (pow.f64 (cbrt.f64 x) 10) (*.f64 (cbrt.f64 (pow.f64 x 5)) (pow.f64 (cbrt.f64 x) 10))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (pow.f64 (+.f64 x eps) 10)) (pow.f64 (cbrt.f64 (+.f64 x eps)) 5) (neg.f64 (*.f64 (cbrt.f64 (pow.f64 x 5)) (pow.f64 (cbrt.f64 x) 10)))) (fma.f64 (neg.f64 (cbrt.f64 (pow.f64 x 5))) (pow.f64 (cbrt.f64 x) 10) (*.f64 (cbrt.f64 (pow.f64 x 5)) (pow.f64 (cbrt.f64 x) 10))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (+.f64 x eps) 5/2) (pow.f64 (+.f64 x eps) 5/2) (neg.f64 (*.f64 (cbrt.f64 (pow.f64 x 5)) (pow.f64 (cbrt.f64 x) 10)))) (fma.f64 (neg.f64 (cbrt.f64 (pow.f64 x 5))) (pow.f64 (cbrt.f64 x) 10) (*.f64 (cbrt.f64 (pow.f64 x 5)) (pow.f64 (cbrt.f64 x) 10))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (+.f64 x eps)) 10) (pow.f64 (cbrt.f64 (+.f64 x eps)) 5) (neg.f64 (*.f64 (cbrt.f64 (pow.f64 x 5)) (pow.f64 (cbrt.f64 x) 10)))) (fma.f64 (neg.f64 (cbrt.f64 (pow.f64 x 5))) (pow.f64 (cbrt.f64 x) 10) (*.f64 (cbrt.f64 (pow.f64 x 5)) (pow.f64 (cbrt.f64 x) 10))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))) (pow.f64 (cbrt.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))) 2) (cbrt.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))) (sqrt.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (+.f64 x eps) 15) (pow.f64 x 15)) (/.f64 1 (+.f64 (+.f64 (pow.f64 (+.f64 x eps) 10) (pow.f64 x 10)) (pow.f64 (*.f64 (+.f64 x eps) x) 5))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (+.f64 x eps) 10) (pow.f64 x 10)) (/.f64 1 (+.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (+.f64 x eps) 5/2) (pow.f64 x 5/2)) (-.f64 (pow.f64 (+.f64 x eps) 5/2) (pow.f64 x 5/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (+.f64 (pow.f64 (+.f64 x eps) 10) (pow.f64 x 10)) (pow.f64 (*.f64 (+.f64 x eps) x) 5)) (-.f64 (pow.f64 (+.f64 x eps) 15) (pow.f64 x 15))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5)) (-.f64 (pow.f64 (+.f64 x eps) 10) (pow.f64 x 10))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (+.f64 x eps) 15) (pow.f64 x 15)) (+.f64 (+.f64 (pow.f64 (+.f64 x eps) 10) (pow.f64 x 10)) (pow.f64 (*.f64 (+.f64 x eps) x) 5)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (+.f64 x eps) 10) (pow.f64 x 10)) (+.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (+.f64 x eps) 15) (pow.f64 x 15))) (neg.f64 (+.f64 (+.f64 (pow.f64 (+.f64 x eps) 10) (pow.f64 x 10)) (pow.f64 (*.f64 (+.f64 x eps) x) 5))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (+.f64 x eps) 10) (pow.f64 x 10))) (neg.f64 (+.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (+.f64 x eps) 15) (pow.f64 (neg.f64 (pow.f64 x 5)) 3)) (+.f64 (pow.f64 (+.f64 x eps) 10) (-.f64 (pow.f64 (neg.f64 (pow.f64 x 5)) 2) (*.f64 (pow.f64 (+.f64 x eps) 5) (neg.f64 (pow.f64 x 5))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (+.f64 x eps) 10) (pow.f64 (neg.f64 (pow.f64 x 5)) 2)) (-.f64 (pow.f64 (+.f64 x eps) 5) (neg.f64 (pow.f64 x 5))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 (+.f64 (pow.f64 (+.f64 x eps) 10) (pow.f64 x 10)) (pow.f64 (*.f64 (+.f64 x eps) x) 5)) (-.f64 (pow.f64 (+.f64 x eps) 15) (pow.f64 x 15))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5)) (-.f64 (pow.f64 (+.f64 x eps) 10) (pow.f64 x 10))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (pow.f64 (+.f64 x eps) 5))) (exp.f64 (pow.f64 x 5))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (pow.f64 (+.f64 x eps) 5)) (+.f64 1 (expm1.f64 (pow.f64 x 5)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (pow.f64 (+.f64 x eps) 5))) (+.f64 1 (expm1.f64 (pow.f64 x 5)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (pow.f64 (+.f64 x eps) 5))) (exp.f64 (neg.f64 (pow.f64 x 5)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (pow.f64 (+.f64 x eps) 5))) (/.f64 1 (exp.f64 (pow.f64 x 5)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 (pow.f64 x 5))) (exp.f64 (pow.f64 (+.f64 x eps) 5))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 (pow.f64 x 5))) (+.f64 1 (expm1.f64 (pow.f64 (+.f64 x eps) 5)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 (pow.f64 x 5))) (+.f64 1 (expm1.f64 (pow.f64 (+.f64 x eps) 5)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (+.f64 x eps) 5) 1 (neg.f64 (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (+.f64 x eps) 5) 1 (*.f64 (neg.f64 (pow.f64 x 5)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5)) 1 (fma.f64 (neg.f64 (pow.f64 x 5)) 1 (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5)) 1 (fma.f64 (neg.f64 (cbrt.f64 (pow.f64 x 5))) (cbrt.f64 (pow.f64 x 10)) (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5)) 1 (+.f64 (neg.f64 (pow.f64 x 5)) (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (pow.f64 (+.f64 x eps) 5) (neg.f64 (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (pow.f64 (+.f64 x eps) 5) (*.f64 (neg.f64 (pow.f64 x 5)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5)) (fma.f64 (neg.f64 (pow.f64 x 5)) 1 (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5)) (fma.f64 (neg.f64 (cbrt.f64 (pow.f64 x 5))) (cbrt.f64 (pow.f64 x 10)) (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5)) (+.f64 (neg.f64 (pow.f64 x 5)) (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 (pow.f64 x 5)) (pow.f64 (+.f64 x eps) 5))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))) (pow.f64 (cbrt.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))) 2) (fma.f64 (neg.f64 (pow.f64 x 5)) 1 (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))) (pow.f64 (cbrt.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))) 2) (fma.f64 (neg.f64 (cbrt.f64 (pow.f64 x 5))) (cbrt.f64 (pow.f64 x 10)) (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))) (pow.f64 (cbrt.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))) 2) (+.f64 (neg.f64 (pow.f64 x 5)) (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))) 2) (cbrt.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))) (fma.f64 (neg.f64 (pow.f64 x 5)) 1 (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))) 2) (cbrt.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))) (fma.f64 (neg.f64 (cbrt.f64 (pow.f64 x 5))) (cbrt.f64 (pow.f64 x 10)) (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))) 2) (cbrt.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))) (+.f64 (neg.f64 (pow.f64 x 5)) (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 x eps)) 5) (cbrt.f64 (pow.f64 (+.f64 x eps) 10)) (neg.f64 (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 x eps)) 5) (cbrt.f64 (pow.f64 (+.f64 x eps) 10)) (*.f64 (neg.f64 (pow.f64 x 5)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (+.f64 x eps) 10)) (pow.f64 (cbrt.f64 (+.f64 x eps)) 5) (neg.f64 (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (+.f64 x eps) 10)) (pow.f64 (cbrt.f64 (+.f64 x eps)) 5) (*.f64 (neg.f64 (pow.f64 x 5)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 x 10)) (neg.f64 (cbrt.f64 (pow.f64 x 5))) (pow.f64 (+.f64 x eps) 5))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))) (sqrt.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))) (fma.f64 (neg.f64 (pow.f64 x 5)) 1 (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))) (sqrt.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))) (fma.f64 (neg.f64 (cbrt.f64 (pow.f64 x 5))) (cbrt.f64 (pow.f64 x 10)) (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))) (sqrt.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))) (+.f64 (neg.f64 (pow.f64 x 5)) (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (+.f64 x eps) 15) (pow.f64 x 15)) (/.f64 1 (+.f64 (+.f64 (pow.f64 (+.f64 x eps) 10) (pow.f64 x 10)) (pow.f64 (*.f64 (+.f64 x eps) x) 5))) (fma.f64 (neg.f64 (pow.f64 x 5)) 1 (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (+.f64 x eps) 15) (pow.f64 x 15)) (/.f64 1 (+.f64 (+.f64 (pow.f64 (+.f64 x eps) 10) (pow.f64 x 10)) (pow.f64 (*.f64 (+.f64 x eps) x) 5))) (fma.f64 (neg.f64 (cbrt.f64 (pow.f64 x 5))) (cbrt.f64 (pow.f64 x 10)) (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (+.f64 x eps) 15) (pow.f64 x 15)) (/.f64 1 (+.f64 (+.f64 (pow.f64 (+.f64 x eps) 10) (pow.f64 x 10)) (pow.f64 (*.f64 (+.f64 x eps) x) 5))) (+.f64 (neg.f64 (pow.f64 x 5)) (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (+.f64 x eps) 10) (pow.f64 x 10)) (/.f64 1 (+.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))) (fma.f64 (neg.f64 (pow.f64 x 5)) 1 (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (+.f64 x eps) 10) (pow.f64 x 10)) (/.f64 1 (+.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))) (fma.f64 (neg.f64 (cbrt.f64 (pow.f64 x 5))) (cbrt.f64 (pow.f64 x 10)) (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (+.f64 x eps) 10) (pow.f64 x 10)) (/.f64 1 (+.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))) (+.f64 (neg.f64 (pow.f64 x 5)) (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (+.f64 x eps) 5/2) (pow.f64 (+.f64 x eps) 5/2) (neg.f64 (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (+.f64 x eps) 5/2) (pow.f64 (+.f64 x eps) 5/2) (*.f64 (neg.f64 (pow.f64 x 5)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x 5/2) (neg.f64 (pow.f64 x 5/2)) (pow.f64 (+.f64 x eps) 5))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (neg.f64 (pow.f64 x 5))) 2) (cbrt.f64 (neg.f64 (pow.f64 x 5))) (pow.f64 (+.f64 x eps) 5))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (neg.f64 (pow.f64 x 5))) (sqrt.f64 (neg.f64 (pow.f64 x 5))) (pow.f64 (+.f64 x eps) 5))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 x 5/2)) (pow.f64 x 5/2) (pow.f64 (+.f64 x eps) 5))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 x eps)) 10) (pow.f64 (cbrt.f64 (+.f64 x eps)) 5) (neg.f64 (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 x eps)) 10) (pow.f64 (cbrt.f64 (+.f64 x eps)) 5) (*.f64 (neg.f64 (pow.f64 x 5)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (pow.f64 x 5) (pow.f64 (+.f64 x eps) 5))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 (+.f64 x eps) 5/2) (pow.f64 x 5/2)) (-.f64 (pow.f64 (+.f64 x eps) 5/2) (pow.f64 x 5/2)) (fma.f64 (neg.f64 (pow.f64 x 5)) 1 (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 (+.f64 x eps) 5/2) (pow.f64 x 5/2)) (-.f64 (pow.f64 (+.f64 x eps) 5/2) (pow.f64 x 5/2)) (fma.f64 (neg.f64 (cbrt.f64 (pow.f64 x 5))) (cbrt.f64 (pow.f64 x 10)) (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 (+.f64 x eps) 5/2) (pow.f64 x 5/2)) (-.f64 (pow.f64 (+.f64 x eps) 5/2) (pow.f64 x 5/2)) (+.f64 (neg.f64 (pow.f64 x 5)) (pow.f64 x 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 (pow.f64 x 10))) (cbrt.f64 (pow.f64 x 5)) (pow.f64 (+.f64 x eps) 5))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (+.f64 x eps) 5))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (+.f64 x eps) 5))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (+.f64 x eps) 5)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (+.f64 x eps) 5)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (+.f64 x eps) 5)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (+.f64 x eps) 5))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (+.f64 x eps) 5) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (+.f64 x eps) 5))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 x eps)) 5) (cbrt.f64 (pow.f64 (+.f64 x eps) 10)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (+.f64 x eps) 10)) (pow.f64 (cbrt.f64 (+.f64 x eps)) 5))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (+.f64 x eps) 5/2) (pow.f64 (+.f64 x eps) 5/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 x eps)) 10) (pow.f64 (cbrt.f64 (+.f64 x eps)) 5))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 x eps) 10))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (+.f64 x eps) 5)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (+.f64 x eps) 5))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 x eps) 15))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (+.f64 x eps) 5)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (+.f64 x eps) 5)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 5 (log.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 5 (log.f64 (+.f64 x eps))) 1))))))

simplify98.0ms (1.8%)

Algorithm
egg-herbie
Rules
677×associate-+l+_binary64
636×associate-*l*_binary64
569×associate-*r*_binary64
551×associate-+r+_binary64
226×unsub-neg_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01101374
13771293
215251107
367691107
Stop Event
node limit
Counts
166 → 157
Calls
Call 1
Inputs
(pow.f64 eps 5)
(+.f64 (pow.f64 eps 5) (*.f64 (+.f64 (*.f64 4 (pow.f64 eps 4)) (pow.f64 eps 4)) x))
(+.f64 (pow.f64 eps 5) (+.f64 (*.f64 (+.f64 (*.f64 4 (pow.f64 eps 4)) (pow.f64 eps 4)) x) (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 4 (pow.f64 eps 2))) eps) (*.f64 4 (pow.f64 eps 3))) (pow.f64 x 2))))
(+.f64 (pow.f64 eps 5) (+.f64 (*.f64 (+.f64 (*.f64 4 (pow.f64 eps 4)) (pow.f64 eps 4)) x) (+.f64 (*.f64 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 8 (pow.f64 eps 2))) (pow.f64 x 3)) (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 4 (pow.f64 eps 2))) eps) (*.f64 4 (pow.f64 eps 3))) (pow.f64 x 2)))))
(*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4))
(+.f64 (*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4)) (*.f64 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 8 (pow.f64 eps 2))) (pow.f64 x 3)))
(+.f64 (*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4)) (+.f64 (*.f64 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 8 (pow.f64 eps 2))) (pow.f64 x 3)) (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 4 (pow.f64 eps 2))) eps) (*.f64 4 (pow.f64 eps 3))) (pow.f64 x 2))))
(+.f64 (*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4)) (+.f64 (*.f64 (+.f64 (pow.f64 eps 4) (*.f64 4 (pow.f64 eps 4))) x) (+.f64 (*.f64 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 8 (pow.f64 eps 2))) (pow.f64 x 3)) (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 4 (pow.f64 eps 2))) eps) (*.f64 4 (pow.f64 eps 3))) (pow.f64 x 2)))))
(*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 4 (pow.f64 eps 2)))) (*.f64 -4 (pow.f64 eps 2))) (pow.f64 x 3))) (*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 4 (pow.f64 eps 2)))) (*.f64 -4 (pow.f64 eps 2))) (pow.f64 x 3))) (+.f64 (*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4)) (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 4 (pow.f64 eps 2))) eps) (*.f64 4 (pow.f64 eps 3))) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 4 (pow.f64 eps 2)))) (*.f64 -4 (pow.f64 eps 2))) (pow.f64 x 3))) (+.f64 (*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -4 (pow.f64 eps 4)) (*.f64 -1 (pow.f64 eps 4))) x)) (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 4 (pow.f64 eps 2))) eps) (*.f64 4 (pow.f64 eps 3))) (pow.f64 x 2)))))
(*.f64 eps (+.f64 (*.f64 4 (pow.f64 x 4)) (pow.f64 x 4)))
(+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 4 (pow.f64 x 3)) (*.f64 (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 4 (pow.f64 x 2))) x))) (*.f64 eps (+.f64 (*.f64 4 (pow.f64 x 4)) (pow.f64 x 4))))
(+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 4 (pow.f64 x 3)) (*.f64 (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 4 (pow.f64 x 2))) x))) (+.f64 (*.f64 eps (+.f64 (*.f64 4 (pow.f64 x 4)) (pow.f64 x 4))) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 8 (pow.f64 x 2))))))
(+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 4 (pow.f64 x 3)) (*.f64 (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 4 (pow.f64 x 2))) x))) (+.f64 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 4 x) x)) (+.f64 (*.f64 eps (+.f64 (*.f64 4 (pow.f64 x 4)) (pow.f64 x 4))) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 8 (pow.f64 x 2)))))))
(pow.f64 eps 5)
(+.f64 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 4 x) x)) (pow.f64 eps 5))
(+.f64 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 4 x) x)) (+.f64 (pow.f64 eps 5) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 8 (pow.f64 x 2))))))
(+.f64 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 4 x) x)) (+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 4 (pow.f64 x 3)) (*.f64 (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 4 (pow.f64 x 2))) x))) (+.f64 (pow.f64 eps 5) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 8 (pow.f64 x 2)))))))
(pow.f64 eps 5)
(+.f64 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 4 x) x)) (pow.f64 eps 5))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -4 (pow.f64 x 2)) (*.f64 -1 (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 4 (pow.f64 x 2))))))) (+.f64 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 4 x) x)) (pow.f64 eps 5)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -4 (pow.f64 x 2)) (*.f64 -1 (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 4 (pow.f64 x 2))))))) (+.f64 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 4 x) x)) (+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 4 (pow.f64 x 3)) (*.f64 (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 4 (pow.f64 x 2))) x))) (pow.f64 eps 5))))
(pow.f64 eps 5)
(+.f64 (pow.f64 eps 5) (*.f64 (+.f64 (*.f64 4 (pow.f64 eps 4)) (pow.f64 eps 4)) x))
(+.f64 (pow.f64 eps 5) (+.f64 (*.f64 (+.f64 (*.f64 4 (pow.f64 eps 4)) (pow.f64 eps 4)) x) (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 4 (pow.f64 eps 2))) eps) (*.f64 4 (pow.f64 eps 3))) (pow.f64 x 2))))
(+.f64 (pow.f64 eps 5) (+.f64 (*.f64 (+.f64 (*.f64 4 (pow.f64 eps 4)) (pow.f64 eps 4)) x) (+.f64 (*.f64 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 8 (pow.f64 eps 2))) (pow.f64 x 3)) (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 4 (pow.f64 eps 2))) eps) (*.f64 4 (pow.f64 eps 3))) (pow.f64 x 2)))))
(pow.f64 x 5)
(+.f64 (pow.f64 x 5) (*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4)))
(+.f64 (pow.f64 x 5) (+.f64 (*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4)) (*.f64 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 8 (pow.f64 eps 2))) (pow.f64 x 3))))
(+.f64 (pow.f64 x 5) (+.f64 (*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4)) (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 4 (pow.f64 eps 2))) eps) (*.f64 4 (pow.f64 eps 3))) (pow.f64 x 2)) (*.f64 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 8 (pow.f64 eps 2))) (pow.f64 x 3)))))
(pow.f64 x 5)
(+.f64 (pow.f64 x 5) (*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4)))
(+.f64 (pow.f64 x 5) (+.f64 (*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4)) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 4 (pow.f64 eps 2)))) (*.f64 -4 (pow.f64 eps 2))) (pow.f64 x 3)))))
(+.f64 (pow.f64 x 5) (+.f64 (*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 4 (pow.f64 eps 2)))) (*.f64 -4 (pow.f64 eps 2))) (pow.f64 x 3))) (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 4 (pow.f64 eps 2))) eps) (*.f64 4 (pow.f64 eps 3))) (pow.f64 x 2)))))
(pow.f64 x 5)
(+.f64 (pow.f64 x 5) (*.f64 eps (+.f64 (*.f64 4 (pow.f64 x 4)) (pow.f64 x 4))))
(+.f64 (pow.f64 x 5) (+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 4 (pow.f64 x 3)) (*.f64 (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 4 (pow.f64 x 2))) x))) (*.f64 eps (+.f64 (*.f64 4 (pow.f64 x 4)) (pow.f64 x 4)))))
(+.f64 (pow.f64 x 5) (+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 4 (pow.f64 x 3)) (*.f64 (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 4 (pow.f64 x 2))) x))) (+.f64 (*.f64 eps (+.f64 (*.f64 4 (pow.f64 x 4)) (pow.f64 x 4))) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 8 (pow.f64 x 2)))))))
(pow.f64 eps 5)
(+.f64 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 4 x) x)) (pow.f64 eps 5))
(+.f64 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 4 x) x)) (+.f64 (pow.f64 eps 5) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 8 (pow.f64 x 2))))))
(+.f64 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 4 x) x)) (+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 4 (pow.f64 x 3)) (*.f64 (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 4 (pow.f64 x 2))) x))) (+.f64 (pow.f64 eps 5) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 8 (pow.f64 x 2)))))))
(pow.f64 eps 5)
(+.f64 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 4 x) x)) (pow.f64 eps 5))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -4 (pow.f64 x 2)) (*.f64 -1 (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 4 (pow.f64 x 2))))))) (+.f64 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 4 x) x)) (pow.f64 eps 5)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -4 (pow.f64 x 2)) (*.f64 -1 (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 4 (pow.f64 x 2))))))) (+.f64 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 4 x) x)) (+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 4 (pow.f64 x 3)) (*.f64 (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 4 (pow.f64 x 2))) x))) (pow.f64 eps 5))))
Outputs
(pow.f64 eps 5)
(+.f64 (pow.f64 eps 5) (*.f64 (+.f64 (*.f64 4 (pow.f64 eps 4)) (pow.f64 eps 4)) x))
(+.f64 (pow.f64 eps 5) (*.f64 (*.f64 5 (pow.f64 eps 4)) x))
(fma.f64 (pow.f64 eps 4) (*.f64 5 x) (pow.f64 eps 5))
(+.f64 (pow.f64 eps 5) (+.f64 (*.f64 (+.f64 (*.f64 4 (pow.f64 eps 4)) (pow.f64 eps 4)) x) (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 4 (pow.f64 eps 2))) eps) (*.f64 4 (pow.f64 eps 3))) (pow.f64 x 2))))
(+.f64 (pow.f64 eps 5) (fma.f64 (*.f64 5 (pow.f64 eps 4)) x (*.f64 (fma.f64 (*.f64 (*.f64 eps eps) 6) eps (*.f64 4 (pow.f64 eps 3))) (*.f64 x x))))
(+.f64 (*.f64 x (*.f64 x (fma.f64 4 (pow.f64 eps 3) (*.f64 (pow.f64 eps 3) 6)))) (fma.f64 (pow.f64 eps 4) (*.f64 5 x) (pow.f64 eps 5)))
(fma.f64 (pow.f64 eps 4) (*.f64 5 x) (fma.f64 (pow.f64 eps 3) (*.f64 x (*.f64 x 10)) (pow.f64 eps 5)))
(+.f64 (pow.f64 eps 5) (+.f64 (*.f64 (+.f64 (*.f64 4 (pow.f64 eps 4)) (pow.f64 eps 4)) x) (+.f64 (*.f64 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 8 (pow.f64 eps 2))) (pow.f64 x 3)) (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 4 (pow.f64 eps 2))) eps) (*.f64 4 (pow.f64 eps 3))) (pow.f64 x 2)))))
(+.f64 (pow.f64 eps 5) (fma.f64 (*.f64 5 (pow.f64 eps 4)) x (fma.f64 (fma.f64 (*.f64 (*.f64 eps eps) 6) eps (*.f64 4 (pow.f64 eps 3))) (*.f64 x x) (*.f64 (*.f64 (*.f64 eps eps) 10) (pow.f64 x 3)))))
(+.f64 (pow.f64 eps 5) (fma.f64 (*.f64 5 (pow.f64 eps 4)) x (fma.f64 (fma.f64 4 (pow.f64 eps 3) (*.f64 (pow.f64 eps 3) 6)) (*.f64 x x) (*.f64 (*.f64 eps eps) (*.f64 10 (pow.f64 x 3))))))
(fma.f64 (pow.f64 eps 4) (*.f64 5 x) (fma.f64 (*.f64 eps eps) (*.f64 (pow.f64 x 3) 10) (fma.f64 (pow.f64 eps 3) (*.f64 x (*.f64 x 10)) (pow.f64 eps 5))))
(*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 eps (*.f64 5 (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(+.f64 (*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4)) (*.f64 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 8 (pow.f64 eps 2))) (pow.f64 x 3)))
(fma.f64 (*.f64 5 eps) (pow.f64 x 4) (*.f64 (*.f64 (*.f64 eps eps) 10) (pow.f64 x 3)))
(fma.f64 (*.f64 eps (*.f64 eps 10)) (pow.f64 x 3) (*.f64 eps (*.f64 5 (pow.f64 x 4))))
(*.f64 eps (+.f64 (*.f64 5 (pow.f64 x 4)) (*.f64 eps (*.f64 (pow.f64 x 3) 10))))
(+.f64 (*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4)) (+.f64 (*.f64 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 8 (pow.f64 eps 2))) (pow.f64 x 3)) (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 4 (pow.f64 eps 2))) eps) (*.f64 4 (pow.f64 eps 3))) (pow.f64 x 2))))
(fma.f64 (*.f64 5 eps) (pow.f64 x 4) (fma.f64 (fma.f64 (*.f64 (*.f64 eps eps) 6) eps (*.f64 4 (pow.f64 eps 3))) (*.f64 x x) (*.f64 (*.f64 (*.f64 eps eps) 10) (pow.f64 x 3))))
(fma.f64 (*.f64 eps 5) (pow.f64 x 4) (fma.f64 (fma.f64 4 (pow.f64 eps 3) (*.f64 (pow.f64 eps 3) 6)) (*.f64 x x) (*.f64 (*.f64 eps eps) (*.f64 10 (pow.f64 x 3)))))
(fma.f64 (*.f64 eps 5) (pow.f64 x 4) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 (*.f64 x x) (*.f64 eps 10)) (*.f64 (pow.f64 x 3) 10))))
(+.f64 (*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4)) (+.f64 (*.f64 (+.f64 (pow.f64 eps 4) (*.f64 4 (pow.f64 eps 4))) x) (+.f64 (*.f64 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 8 (pow.f64 eps 2))) (pow.f64 x 3)) (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 4 (pow.f64 eps 2))) eps) (*.f64 4 (pow.f64 eps 3))) (pow.f64 x 2)))))
(fma.f64 (*.f64 5 eps) (pow.f64 x 4) (fma.f64 (*.f64 5 (pow.f64 eps 4)) x (fma.f64 (fma.f64 (*.f64 (*.f64 eps eps) 6) eps (*.f64 4 (pow.f64 eps 3))) (*.f64 x x) (*.f64 (*.f64 (*.f64 eps eps) 10) (pow.f64 x 3)))))
(fma.f64 (*.f64 eps 5) (pow.f64 x 4) (fma.f64 (*.f64 5 (pow.f64 eps 4)) x (fma.f64 (fma.f64 4 (pow.f64 eps 3) (*.f64 (pow.f64 eps 3) 6)) (*.f64 x x) (*.f64 (*.f64 eps eps) (*.f64 10 (pow.f64 x 3))))))
(fma.f64 (*.f64 eps eps) (*.f64 (pow.f64 x 3) 10) (fma.f64 (*.f64 eps 5) (pow.f64 x 4) (*.f64 x (-.f64 (*.f64 x (*.f64 (pow.f64 eps 3) 10)) (*.f64 (pow.f64 eps 4) -5)))))
(fma.f64 (*.f64 eps eps) (*.f64 (pow.f64 x 3) 10) (fma.f64 (*.f64 eps 5) (pow.f64 x 4) (*.f64 x (+.f64 (*.f64 x (*.f64 (pow.f64 eps 3) 10)) (*.f64 5 (pow.f64 eps 4))))))
(*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 eps (*.f64 5 (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 4 (pow.f64 eps 2)))) (*.f64 -4 (pow.f64 eps 2))) (pow.f64 x 3))) (*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4)))
(fma.f64 (*.f64 5 eps) (pow.f64 x 4) (*.f64 (*.f64 (*.f64 eps eps) 10) (pow.f64 x 3)))
(fma.f64 (*.f64 eps (*.f64 eps 10)) (pow.f64 x 3) (*.f64 eps (*.f64 5 (pow.f64 x 4))))
(*.f64 eps (+.f64 (*.f64 5 (pow.f64 x 4)) (*.f64 eps (*.f64 (pow.f64 x 3) 10))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 4 (pow.f64 eps 2)))) (*.f64 -4 (pow.f64 eps 2))) (pow.f64 x 3))) (+.f64 (*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4)) (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 4 (pow.f64 eps 2))) eps) (*.f64 4 (pow.f64 eps 3))) (pow.f64 x 2))))
(fma.f64 (*.f64 5 eps) (pow.f64 x 4) (fma.f64 (fma.f64 (*.f64 (*.f64 eps eps) 6) eps (*.f64 4 (pow.f64 eps 3))) (*.f64 x x) (*.f64 (*.f64 (*.f64 eps eps) 10) (pow.f64 x 3))))
(fma.f64 (*.f64 eps 5) (pow.f64 x 4) (fma.f64 (fma.f64 4 (pow.f64 eps 3) (*.f64 (pow.f64 eps 3) 6)) (*.f64 x x) (*.f64 (*.f64 eps eps) (*.f64 10 (pow.f64 x 3)))))
(fma.f64 (*.f64 eps 5) (pow.f64 x 4) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 (*.f64 x x) (*.f64 eps 10)) (*.f64 (pow.f64 x 3) 10))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 4 (pow.f64 eps 2)))) (*.f64 -4 (pow.f64 eps 2))) (pow.f64 x 3))) (+.f64 (*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -4 (pow.f64 eps 4)) (*.f64 -1 (pow.f64 eps 4))) x)) (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 4 (pow.f64 eps 2))) eps) (*.f64 4 (pow.f64 eps 3))) (pow.f64 x 2)))))
(fma.f64 (*.f64 5 eps) (pow.f64 x 4) (fma.f64 (*.f64 5 (pow.f64 eps 4)) x (fma.f64 (fma.f64 (*.f64 (*.f64 eps eps) 6) eps (*.f64 4 (pow.f64 eps 3))) (*.f64 x x) (*.f64 (*.f64 (*.f64 eps eps) 10) (pow.f64 x 3)))))
(fma.f64 (*.f64 eps 5) (pow.f64 x 4) (fma.f64 (*.f64 5 (pow.f64 eps 4)) x (fma.f64 (fma.f64 4 (pow.f64 eps 3) (*.f64 (pow.f64 eps 3) 6)) (*.f64 x x) (*.f64 (*.f64 eps eps) (*.f64 10 (pow.f64 x 3))))))
(fma.f64 (*.f64 eps eps) (*.f64 (pow.f64 x 3) 10) (fma.f64 (*.f64 eps 5) (pow.f64 x 4) (*.f64 x (-.f64 (*.f64 x (*.f64 (pow.f64 eps 3) 10)) (*.f64 (pow.f64 eps 4) -5)))))
(fma.f64 (*.f64 eps eps) (*.f64 (pow.f64 x 3) 10) (fma.f64 (*.f64 eps 5) (pow.f64 x 4) (*.f64 x (+.f64 (*.f64 x (*.f64 (pow.f64 eps 3) 10)) (*.f64 5 (pow.f64 eps 4))))))
(*.f64 eps (+.f64 (*.f64 4 (pow.f64 x 4)) (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 eps (*.f64 5 (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 4 (pow.f64 x 3)) (*.f64 (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 4 (pow.f64 x 2))) x))) (*.f64 eps (+.f64 (*.f64 4 (pow.f64 x 4)) (pow.f64 x 4))))
(fma.f64 (*.f64 5 eps) (pow.f64 x 4) (*.f64 (*.f64 (*.f64 eps eps) 10) (pow.f64 x 3)))
(fma.f64 (*.f64 eps (*.f64 eps 10)) (pow.f64 x 3) (*.f64 eps (*.f64 5 (pow.f64 x 4))))
(*.f64 eps (+.f64 (*.f64 5 (pow.f64 x 4)) (*.f64 eps (*.f64 (pow.f64 x 3) 10))))
(+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 4 (pow.f64 x 3)) (*.f64 (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 4 (pow.f64 x 2))) x))) (+.f64 (*.f64 eps (+.f64 (*.f64 4 (pow.f64 x 4)) (pow.f64 x 4))) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 8 (pow.f64 x 2))))))
(fma.f64 (*.f64 5 eps) (pow.f64 x 4) (fma.f64 (fma.f64 (*.f64 (*.f64 eps eps) 6) eps (*.f64 4 (pow.f64 eps 3))) (*.f64 x x) (*.f64 (*.f64 (*.f64 eps eps) 10) (pow.f64 x 3))))
(fma.f64 (*.f64 eps 5) (pow.f64 x 4) (fma.f64 (fma.f64 4 (pow.f64 eps 3) (*.f64 (pow.f64 eps 3) 6)) (*.f64 x x) (*.f64 (*.f64 eps eps) (*.f64 10 (pow.f64 x 3)))))
(fma.f64 (*.f64 eps 5) (pow.f64 x 4) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 (*.f64 x x) (*.f64 eps 10)) (*.f64 (pow.f64 x 3) 10))))
(+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 4 (pow.f64 x 3)) (*.f64 (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 4 (pow.f64 x 2))) x))) (+.f64 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 4 x) x)) (+.f64 (*.f64 eps (+.f64 (*.f64 4 (pow.f64 x 4)) (pow.f64 x 4))) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 8 (pow.f64 x 2)))))))
(fma.f64 (*.f64 5 eps) (pow.f64 x 4) (fma.f64 (*.f64 5 (pow.f64 eps 4)) x (fma.f64 (fma.f64 (*.f64 (*.f64 eps eps) 6) eps (*.f64 4 (pow.f64 eps 3))) (*.f64 x x) (*.f64 (*.f64 (*.f64 eps eps) 10) (pow.f64 x 3)))))
(fma.f64 (*.f64 eps 5) (pow.f64 x 4) (fma.f64 (*.f64 5 (pow.f64 eps 4)) x (fma.f64 (fma.f64 4 (pow.f64 eps 3) (*.f64 (pow.f64 eps 3) 6)) (*.f64 x x) (*.f64 (*.f64 eps eps) (*.f64 10 (pow.f64 x 3))))))
(fma.f64 (*.f64 eps eps) (*.f64 (pow.f64 x 3) 10) (fma.f64 (*.f64 eps 5) (pow.f64 x 4) (*.f64 x (-.f64 (*.f64 x (*.f64 (pow.f64 eps 3) 10)) (*.f64 (pow.f64 eps 4) -5)))))
(fma.f64 (*.f64 eps eps) (*.f64 (pow.f64 x 3) 10) (fma.f64 (*.f64 eps 5) (pow.f64 x 4) (*.f64 x (+.f64 (*.f64 x (*.f64 (pow.f64 eps 3) 10)) (*.f64 5 (pow.f64 eps 4))))))
(pow.f64 eps 5)
(+.f64 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 4 x) x)) (pow.f64 eps 5))
(+.f64 (pow.f64 eps 5) (*.f64 (*.f64 5 (pow.f64 eps 4)) x))
(fma.f64 (pow.f64 eps 4) (*.f64 5 x) (pow.f64 eps 5))
(+.f64 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 4 x) x)) (+.f64 (pow.f64 eps 5) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 8 (pow.f64 x 2))))))
(+.f64 (pow.f64 eps 5) (fma.f64 (*.f64 5 (pow.f64 eps 4)) x (*.f64 (fma.f64 (*.f64 (*.f64 eps eps) 6) eps (*.f64 4 (pow.f64 eps 3))) (*.f64 x x))))
(+.f64 (*.f64 x (*.f64 x (fma.f64 4 (pow.f64 eps 3) (*.f64 (pow.f64 eps 3) 6)))) (fma.f64 (pow.f64 eps 4) (*.f64 5 x) (pow.f64 eps 5)))
(fma.f64 (pow.f64 eps 4) (*.f64 5 x) (fma.f64 (pow.f64 eps 3) (*.f64 x (*.f64 x 10)) (pow.f64 eps 5)))
(+.f64 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 4 x) x)) (+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 4 (pow.f64 x 3)) (*.f64 (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 4 (pow.f64 x 2))) x))) (+.f64 (pow.f64 eps 5) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 8 (pow.f64 x 2)))))))
(+.f64 (pow.f64 eps 5) (fma.f64 (*.f64 5 (pow.f64 eps 4)) x (fma.f64 (fma.f64 (*.f64 (*.f64 eps eps) 6) eps (*.f64 4 (pow.f64 eps 3))) (*.f64 x x) (*.f64 (*.f64 (*.f64 eps eps) 10) (pow.f64 x 3)))))
(+.f64 (pow.f64 eps 5) (fma.f64 (*.f64 5 (pow.f64 eps 4)) x (fma.f64 (fma.f64 4 (pow.f64 eps 3) (*.f64 (pow.f64 eps 3) 6)) (*.f64 x x) (*.f64 (*.f64 eps eps) (*.f64 10 (pow.f64 x 3))))))
(fma.f64 (pow.f64 eps 4) (*.f64 5 x) (fma.f64 (*.f64 eps eps) (*.f64 (pow.f64 x 3) 10) (fma.f64 (pow.f64 eps 3) (*.f64 x (*.f64 x 10)) (pow.f64 eps 5))))
(pow.f64 eps 5)
(+.f64 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 4 x) x)) (pow.f64 eps 5))
(+.f64 (pow.f64 eps 5) (*.f64 (*.f64 5 (pow.f64 eps 4)) x))
(fma.f64 (pow.f64 eps 4) (*.f64 5 x) (pow.f64 eps 5))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -4 (pow.f64 x 2)) (*.f64 -1 (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 4 (pow.f64 x 2))))))) (+.f64 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 4 x) x)) (pow.f64 eps 5)))
(+.f64 (pow.f64 eps 5) (fma.f64 (*.f64 5 (pow.f64 eps 4)) x (*.f64 (fma.f64 (*.f64 (*.f64 eps eps) 6) eps (*.f64 4 (pow.f64 eps 3))) (*.f64 x x))))
(+.f64 (*.f64 x (*.f64 x (fma.f64 4 (pow.f64 eps 3) (*.f64 (pow.f64 eps 3) 6)))) (fma.f64 (pow.f64 eps 4) (*.f64 5 x) (pow.f64 eps 5)))
(fma.f64 (pow.f64 eps 4) (*.f64 5 x) (fma.f64 (pow.f64 eps 3) (*.f64 x (*.f64 x 10)) (pow.f64 eps 5)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -4 (pow.f64 x 2)) (*.f64 -1 (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 4 (pow.f64 x 2))))))) (+.f64 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 4 x) x)) (+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 4 (pow.f64 x 3)) (*.f64 (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 4 (pow.f64 x 2))) x))) (pow.f64 eps 5))))
(+.f64 (pow.f64 eps 5) (fma.f64 (*.f64 5 (pow.f64 eps 4)) x (fma.f64 (fma.f64 (*.f64 (*.f64 eps eps) 6) eps (*.f64 4 (pow.f64 eps 3))) (*.f64 x x) (*.f64 (*.f64 (*.f64 eps eps) 10) (pow.f64 x 3)))))
(+.f64 (pow.f64 eps 5) (fma.f64 (*.f64 5 (pow.f64 eps 4)) x (fma.f64 (fma.f64 4 (pow.f64 eps 3) (*.f64 (pow.f64 eps 3) 6)) (*.f64 x x) (*.f64 (*.f64 eps eps) (*.f64 10 (pow.f64 x 3))))))
(fma.f64 (pow.f64 eps 4) (*.f64 5 x) (fma.f64 (*.f64 eps eps) (*.f64 (pow.f64 x 3) 10) (fma.f64 (pow.f64 eps 3) (*.f64 x (*.f64 x 10)) (pow.f64 eps 5))))
(pow.f64 eps 5)
(+.f64 (pow.f64 eps 5) (*.f64 (+.f64 (*.f64 4 (pow.f64 eps 4)) (pow.f64 eps 4)) x))
(+.f64 (pow.f64 eps 5) (*.f64 (*.f64 5 (pow.f64 eps 4)) x))
(fma.f64 (pow.f64 eps 4) (*.f64 5 x) (pow.f64 eps 5))
(+.f64 (pow.f64 eps 5) (+.f64 (*.f64 (+.f64 (*.f64 4 (pow.f64 eps 4)) (pow.f64 eps 4)) x) (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 4 (pow.f64 eps 2))) eps) (*.f64 4 (pow.f64 eps 3))) (pow.f64 x 2))))
(+.f64 (pow.f64 eps 5) (fma.f64 (*.f64 5 (pow.f64 eps 4)) x (*.f64 (fma.f64 (*.f64 (*.f64 eps eps) 6) eps (*.f64 4 (pow.f64 eps 3))) (*.f64 x x))))
(+.f64 (*.f64 x (*.f64 x (fma.f64 4 (pow.f64 eps 3) (*.f64 (pow.f64 eps 3) 6)))) (fma.f64 (pow.f64 eps 4) (*.f64 5 x) (pow.f64 eps 5)))
(fma.f64 (pow.f64 eps 4) (*.f64 5 x) (fma.f64 (pow.f64 eps 3) (*.f64 x (*.f64 x 10)) (pow.f64 eps 5)))
(+.f64 (pow.f64 eps 5) (+.f64 (*.f64 (+.f64 (*.f64 4 (pow.f64 eps 4)) (pow.f64 eps 4)) x) (+.f64 (*.f64 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 8 (pow.f64 eps 2))) (pow.f64 x 3)) (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 4 (pow.f64 eps 2))) eps) (*.f64 4 (pow.f64 eps 3))) (pow.f64 x 2)))))
(+.f64 (pow.f64 eps 5) (fma.f64 (*.f64 5 (pow.f64 eps 4)) x (fma.f64 (fma.f64 (*.f64 (*.f64 eps eps) 6) eps (*.f64 4 (pow.f64 eps 3))) (*.f64 x x) (*.f64 (*.f64 (*.f64 eps eps) 10) (pow.f64 x 3)))))
(+.f64 (pow.f64 eps 5) (fma.f64 (*.f64 5 (pow.f64 eps 4)) x (fma.f64 (fma.f64 4 (pow.f64 eps 3) (*.f64 (pow.f64 eps 3) 6)) (*.f64 x x) (*.f64 (*.f64 eps eps) (*.f64 10 (pow.f64 x 3))))))
(fma.f64 (pow.f64 eps 4) (*.f64 5 x) (fma.f64 (*.f64 eps eps) (*.f64 (pow.f64 x 3) 10) (fma.f64 (pow.f64 eps 3) (*.f64 x (*.f64 x 10)) (pow.f64 eps 5))))
(pow.f64 x 5)
(+.f64 (pow.f64 x 5) (*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4)))
(+.f64 (*.f64 (*.f64 5 eps) (pow.f64 x 4)) (pow.f64 x 5))
(fma.f64 eps (*.f64 5 (pow.f64 x 4)) (pow.f64 x 5))
(+.f64 (pow.f64 x 5) (+.f64 (*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4)) (*.f64 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 8 (pow.f64 eps 2))) (pow.f64 x 3))))
(+.f64 (fma.f64 (*.f64 5 eps) (pow.f64 x 4) (*.f64 (*.f64 (*.f64 eps eps) 10) (pow.f64 x 3))) (pow.f64 x 5))
(+.f64 (*.f64 (*.f64 eps eps) (*.f64 10 (pow.f64 x 3))) (fma.f64 eps (*.f64 5 (pow.f64 x 4)) (pow.f64 x 5)))
(+.f64 (*.f64 eps (+.f64 (*.f64 5 (pow.f64 x 4)) (*.f64 eps (*.f64 (pow.f64 x 3) 10)))) (pow.f64 x 5))
(+.f64 (pow.f64 x 5) (+.f64 (*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4)) (+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 4 (pow.f64 eps 2))) eps) (*.f64 4 (pow.f64 eps 3))) (pow.f64 x 2)) (*.f64 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 8 (pow.f64 eps 2))) (pow.f64 x 3)))))
(+.f64 (pow.f64 x 5) (fma.f64 (*.f64 5 eps) (pow.f64 x 4) (fma.f64 (fma.f64 (*.f64 (*.f64 eps eps) 6) eps (*.f64 4 (pow.f64 eps 3))) (*.f64 x x) (*.f64 (*.f64 (*.f64 eps eps) 10) (pow.f64 x 3)))))
(+.f64 (fma.f64 (fma.f64 4 (pow.f64 eps 3) (*.f64 (pow.f64 eps 3) 6)) (*.f64 x x) (*.f64 (*.f64 eps eps) (*.f64 10 (pow.f64 x 3)))) (fma.f64 eps (*.f64 5 (pow.f64 x 4)) (pow.f64 x 5)))
(+.f64 (fma.f64 (*.f64 eps 5) (pow.f64 x 4) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 (*.f64 x x) (*.f64 eps 10)) (*.f64 (pow.f64 x 3) 10)))) (pow.f64 x 5))
(pow.f64 x 5)
(+.f64 (pow.f64 x 5) (*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4)))
(+.f64 (*.f64 (*.f64 5 eps) (pow.f64 x 4)) (pow.f64 x 5))
(fma.f64 eps (*.f64 5 (pow.f64 x 4)) (pow.f64 x 5))
(+.f64 (pow.f64 x 5) (+.f64 (*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4)) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 4 (pow.f64 eps 2)))) (*.f64 -4 (pow.f64 eps 2))) (pow.f64 x 3)))))
(+.f64 (fma.f64 (*.f64 5 eps) (pow.f64 x 4) (*.f64 (*.f64 (*.f64 eps eps) 10) (pow.f64 x 3))) (pow.f64 x 5))
(+.f64 (*.f64 (*.f64 eps eps) (*.f64 10 (pow.f64 x 3))) (fma.f64 eps (*.f64 5 (pow.f64 x 4)) (pow.f64 x 5)))
(+.f64 (*.f64 eps (+.f64 (*.f64 5 (pow.f64 x 4)) (*.f64 eps (*.f64 (pow.f64 x 3) 10)))) (pow.f64 x 5))
(+.f64 (pow.f64 x 5) (+.f64 (*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 4 (pow.f64 eps 2)))) (*.f64 -4 (pow.f64 eps 2))) (pow.f64 x 3))) (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 2 (pow.f64 eps 2)) (*.f64 4 (pow.f64 eps 2))) eps) (*.f64 4 (pow.f64 eps 3))) (pow.f64 x 2)))))
(+.f64 (pow.f64 x 5) (fma.f64 (*.f64 5 eps) (pow.f64 x 4) (fma.f64 (fma.f64 (*.f64 (*.f64 eps eps) 6) eps (*.f64 4 (pow.f64 eps 3))) (*.f64 x x) (*.f64 (*.f64 (*.f64 eps eps) 10) (pow.f64 x 3)))))
(+.f64 (fma.f64 (fma.f64 4 (pow.f64 eps 3) (*.f64 (pow.f64 eps 3) 6)) (*.f64 x x) (*.f64 (*.f64 eps eps) (*.f64 10 (pow.f64 x 3)))) (fma.f64 eps (*.f64 5 (pow.f64 x 4)) (pow.f64 x 5)))
(+.f64 (fma.f64 (*.f64 eps 5) (pow.f64 x 4) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 (*.f64 x x) (*.f64 eps 10)) (*.f64 (pow.f64 x 3) 10)))) (pow.f64 x 5))
(pow.f64 x 5)
(+.f64 (pow.f64 x 5) (*.f64 eps (+.f64 (*.f64 4 (pow.f64 x 4)) (pow.f64 x 4))))
(+.f64 (*.f64 (*.f64 5 eps) (pow.f64 x 4)) (pow.f64 x 5))
(fma.f64 eps (*.f64 5 (pow.f64 x 4)) (pow.f64 x 5))
(+.f64 (pow.f64 x 5) (+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 4 (pow.f64 x 3)) (*.f64 (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 4 (pow.f64 x 2))) x))) (*.f64 eps (+.f64 (*.f64 4 (pow.f64 x 4)) (pow.f64 x 4)))))
(+.f64 (fma.f64 (*.f64 5 eps) (pow.f64 x 4) (*.f64 (*.f64 (*.f64 eps eps) 10) (pow.f64 x 3))) (pow.f64 x 5))
(+.f64 (*.f64 (*.f64 eps eps) (*.f64 10 (pow.f64 x 3))) (fma.f64 eps (*.f64 5 (pow.f64 x 4)) (pow.f64 x 5)))
(+.f64 (*.f64 eps (+.f64 (*.f64 5 (pow.f64 x 4)) (*.f64 eps (*.f64 (pow.f64 x 3) 10)))) (pow.f64 x 5))
(+.f64 (pow.f64 x 5) (+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 4 (pow.f64 x 3)) (*.f64 (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 4 (pow.f64 x 2))) x))) (+.f64 (*.f64 eps (+.f64 (*.f64 4 (pow.f64 x 4)) (pow.f64 x 4))) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 8 (pow.f64 x 2)))))))
(+.f64 (pow.f64 x 5) (fma.f64 (*.f64 5 eps) (pow.f64 x 4) (fma.f64 (fma.f64 (*.f64 (*.f64 eps eps) 6) eps (*.f64 4 (pow.f64 eps 3))) (*.f64 x x) (*.f64 (*.f64 (*.f64 eps eps) 10) (pow.f64 x 3)))))
(+.f64 (fma.f64 (fma.f64 4 (pow.f64 eps 3) (*.f64 (pow.f64 eps 3) 6)) (*.f64 x x) (*.f64 (*.f64 eps eps) (*.f64 10 (pow.f64 x 3)))) (fma.f64 eps (*.f64 5 (pow.f64 x 4)) (pow.f64 x 5)))
(+.f64 (fma.f64 (*.f64 eps 5) (pow.f64 x 4) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 (*.f64 x x) (*.f64 eps 10)) (*.f64 (pow.f64 x 3) 10)))) (pow.f64 x 5))
(pow.f64 eps 5)
(+.f64 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 4 x) x)) (pow.f64 eps 5))
(+.f64 (pow.f64 eps 5) (*.f64 (*.f64 5 (pow.f64 eps 4)) x))
(fma.f64 (pow.f64 eps 4) (*.f64 5 x) (pow.f64 eps 5))
(+.f64 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 4 x) x)) (+.f64 (pow.f64 eps 5) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 8 (pow.f64 x 2))))))
(+.f64 (pow.f64 eps 5) (fma.f64 (*.f64 5 (pow.f64 eps 4)) x (*.f64 (fma.f64 (*.f64 (*.f64 eps eps) 6) eps (*.f64 4 (pow.f64 eps 3))) (*.f64 x x))))
(+.f64 (*.f64 x (*.f64 x (fma.f64 4 (pow.f64 eps 3) (*.f64 (pow.f64 eps 3) 6)))) (fma.f64 (pow.f64 eps 4) (*.f64 5 x) (pow.f64 eps 5)))
(fma.f64 (pow.f64 eps 4) (*.f64 5 x) (fma.f64 (pow.f64 eps 3) (*.f64 x (*.f64 x 10)) (pow.f64 eps 5)))
(+.f64 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 4 x) x)) (+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 4 (pow.f64 x 3)) (*.f64 (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 4 (pow.f64 x 2))) x))) (+.f64 (pow.f64 eps 5) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 8 (pow.f64 x 2)))))))
(+.f64 (pow.f64 eps 5) (fma.f64 (*.f64 5 (pow.f64 eps 4)) x (fma.f64 (fma.f64 (*.f64 (*.f64 eps eps) 6) eps (*.f64 4 (pow.f64 eps 3))) (*.f64 x x) (*.f64 (*.f64 (*.f64 eps eps) 10) (pow.f64 x 3)))))
(+.f64 (pow.f64 eps 5) (fma.f64 (*.f64 5 (pow.f64 eps 4)) x (fma.f64 (fma.f64 4 (pow.f64 eps 3) (*.f64 (pow.f64 eps 3) 6)) (*.f64 x x) (*.f64 (*.f64 eps eps) (*.f64 10 (pow.f64 x 3))))))
(fma.f64 (pow.f64 eps 4) (*.f64 5 x) (fma.f64 (*.f64 eps eps) (*.f64 (pow.f64 x 3) 10) (fma.f64 (pow.f64 eps 3) (*.f64 x (*.f64 x 10)) (pow.f64 eps 5))))
(pow.f64 eps 5)
(+.f64 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 4 x) x)) (pow.f64 eps 5))
(+.f64 (pow.f64 eps 5) (*.f64 (*.f64 5 (pow.f64 eps 4)) x))
(fma.f64 (pow.f64 eps 4) (*.f64 5 x) (pow.f64 eps 5))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -4 (pow.f64 x 2)) (*.f64 -1 (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 4 (pow.f64 x 2))))))) (+.f64 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 4 x) x)) (pow.f64 eps 5)))
(+.f64 (pow.f64 eps 5) (fma.f64 (*.f64 5 (pow.f64 eps 4)) x (*.f64 (fma.f64 (*.f64 (*.f64 eps eps) 6) eps (*.f64 4 (pow.f64 eps 3))) (*.f64 x x))))
(+.f64 (*.f64 x (*.f64 x (fma.f64 4 (pow.f64 eps 3) (*.f64 (pow.f64 eps 3) 6)))) (fma.f64 (pow.f64 eps 4) (*.f64 5 x) (pow.f64 eps 5)))
(fma.f64 (pow.f64 eps 4) (*.f64 5 x) (fma.f64 (pow.f64 eps 3) (*.f64 x (*.f64 x 10)) (pow.f64 eps 5)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -4 (pow.f64 x 2)) (*.f64 -1 (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 4 (pow.f64 x 2))))))) (+.f64 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 4 x) x)) (+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 4 (pow.f64 x 3)) (*.f64 (+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 4 (pow.f64 x 2))) x))) (pow.f64 eps 5))))
(+.f64 (pow.f64 eps 5) (fma.f64 (*.f64 5 (pow.f64 eps 4)) x (fma.f64 (fma.f64 (*.f64 (*.f64 eps eps) 6) eps (*.f64 4 (pow.f64 eps 3))) (*.f64 x x) (*.f64 (*.f64 (*.f64 eps eps) 10) (pow.f64 x 3)))))
(+.f64 (pow.f64 eps 5) (fma.f64 (*.f64 5 (pow.f64 eps 4)) x (fma.f64 (fma.f64 4 (pow.f64 eps 3) (*.f64 (pow.f64 eps 3) 6)) (*.f64 x x) (*.f64 (*.f64 eps eps) (*.f64 10 (pow.f64 x 3))))))
(fma.f64 (pow.f64 eps 4) (*.f64 5 x) (fma.f64 (*.f64 eps eps) (*.f64 (pow.f64 x 3) 10) (fma.f64 (pow.f64 eps 3) (*.f64 x (*.f64 x 10)) (pow.f64 eps 5))))

eval130.0ms (2.4%)

Compiler

Compiled 3716 to 2549 computations (31.4% saved)

prune32.0ms (0.6%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New1525157
Fresh000
Picked011
Done000
Total1526158
Error
0.0b
Counts
158 → 6
Alt Table
Click to see full alt table
StatusErrorProgram
11.6b
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
7.1b
(pow.f64 eps 5)
7.0b
(-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))
11.6b
(*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4))
7.0b
(fma.f64 (pow.f64 eps 4) (*.f64 5 x) (fma.f64 (pow.f64 eps 3) (*.f64 x (*.f64 x 10)) (pow.f64 eps 5)))
11.6b
(*.f64 eps (+.f64 (*.f64 4 (pow.f64 x 4)) (pow.f64 x 4)))
Compiler

Compiled 129 to 96 computations (25.6% saved)

localize28.0ms (0.5%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 (pow.f64 eps 3) (*.f64 x (*.f64 x 10)) (pow.f64 eps 5))
0.1b
(*.f64 x (*.f64 x 10))
Compiler

Compiled 59 to 40 computations (32.2% saved)

series10.0ms (0.2%)

Counts
2 → 36
Calls

9 calls:

TimeVariablePointExpression
5.0ms
eps
@-inf
(fma.f64 (pow.f64 eps 3) (*.f64 x (*.f64 x 10)) (pow.f64 eps 5))
1.0ms
eps
@inf
(fma.f64 (pow.f64 eps 3) (*.f64 x (*.f64 x 10)) (pow.f64 eps 5))
1.0ms
eps
@0
(fma.f64 (pow.f64 eps 3) (*.f64 x (*.f64 x 10)) (pow.f64 eps 5))
1.0ms
x
@0
(fma.f64 (pow.f64 eps 3) (*.f64 x (*.f64 x 10)) (pow.f64 eps 5))
1.0ms
x
@0
(*.f64 x (*.f64 x 10))

rewrite67.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
479×log-prod_binary64
367×exp-prod_binary64
330×prod-exp_binary64
301×pow-prod-down_binary64
272×pow2_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01124
123624
2255624
Stop Event
node limit
Counts
2 → 52
Calls
Call 1
Inputs
(*.f64 x (*.f64 x 10))
(fma.f64 (pow.f64 eps 3) (*.f64 x (*.f64 x 10)) (pow.f64 eps 5))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 x (*.f64 x 10)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 20) x) x))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 x) (*.f64 x 10)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 x) (*.f64 x 10)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 x) (*.f64 x 10)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 x (*.f64 x 10))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (*.f64 x 10)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 x 4) 100) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x (sqrt.f64 10)) 6) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 x (*.f64 x 10))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (sqrt.f64 10)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (log.f64 (*.f64 x (*.f64 x 10))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 x (*.f64 x 10)))) 2)) (cbrt.f64 (log.f64 (*.f64 x (*.f64 x 10)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 x (*.f64 x 10))))) (sqrt.f64 (log.f64 (*.f64 x (*.f64 x 10)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 x 4) 100))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 x) (*.f64 x 10)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 x (sqrt.f64 10)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 x (*.f64 x 10))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 x (*.f64 x 10))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 x (*.f64 x 10))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 x (sqrt.f64 10)) 6)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 x (*.f64 x 10)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 x (sqrt.f64 10))) 2))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 eps 5) (*.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3)) (pow.f64 eps 5))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3) (pow.f64 eps 5)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3)) 1) (pow.f64 eps 5))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3) (pow.f64 eps 5)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3) (pow.f64 eps 5))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3) (pow.f64 eps 5))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3) (pow.f64 eps 5))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3) (pow.f64 eps 5))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3) (pow.f64 eps 5)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3) (pow.f64 eps 5)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3) (pow.f64 eps 5))) (pow.f64 (cbrt.f64 (fma.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3) (pow.f64 eps 5))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3) (pow.f64 eps 5))) 2) (cbrt.f64 (fma.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3) (pow.f64 eps 5))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 (pow.f64 eps 5/2) (*.f64 (pow.f64 eps 3/2) (*.f64 x (sqrt.f64 10)))) (hypot.f64 (pow.f64 eps 5/2) (*.f64 (pow.f64 eps 3/2) (*.f64 x (sqrt.f64 10)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (pow.f64 eps 9) (pow.f64 (*.f64 x (sqrt.f64 10)) 6)) (pow.f64 eps 15)) (+.f64 (pow.f64 (*.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3)) 2) (-.f64 (pow.f64 eps 10) (*.f64 (*.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3)) (pow.f64 eps 5)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3)) 2) (pow.f64 eps 10)) (-.f64 (*.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3)) (pow.f64 eps 5)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3) (pow.f64 eps 5)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3) (pow.f64 eps 5)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3) (pow.f64 eps 5)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3) (pow.f64 eps 5))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 (pow.f64 eps 5/2) (*.f64 (pow.f64 eps 3/2) (*.f64 x (sqrt.f64 10)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (log.f64 (fma.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3) (pow.f64 eps 5))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (fma.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3) (pow.f64 eps 5)))) 2)) (cbrt.f64 (log.f64 (fma.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3) (pow.f64 eps 5)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (fma.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3) (pow.f64 eps 5))))) (sqrt.f64 (log.f64 (fma.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3) (pow.f64 eps 5)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3) (pow.f64 eps 5)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3) (pow.f64 eps 5))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3) (pow.f64 eps 5)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3) (pow.f64 eps 5))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3) (pow.f64 eps 5))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3) (pow.f64 eps 5))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3) (pow.f64 eps 5)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3) (pow.f64 eps 5)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (hypot.f64 (pow.f64 eps 5/2) (*.f64 (pow.f64 eps 3/2) (*.f64 x (sqrt.f64 10))))) 2))))))

simplify194.0ms (3.5%)

Algorithm
egg-herbie
Rules
1056×unswap-sqr_binary64
734×sqr-pow_binary64
576×cube-prod_binary64
439×fabs-mul_binary64
387×*-commutative_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
014477
136441
294441
3294441
41239441
51985441
62057441
72167441
82302441
92444441
102622441
114387441
124718441
135092441
145500441
155948441
166564441
176962441
187303441
197643441
207967441
Stop Event
node limit
Counts
88 → 59
Calls
Call 1
Inputs
(*.f64 10 (pow.f64 x 2))
(*.f64 10 (pow.f64 x 2))
(*.f64 10 (pow.f64 x 2))
(*.f64 10 (pow.f64 x 2))
(*.f64 10 (pow.f64 x 2))
(*.f64 10 (pow.f64 x 2))
(*.f64 10 (pow.f64 x 2))
(*.f64 10 (pow.f64 x 2))
(*.f64 10 (pow.f64 x 2))
(*.f64 10 (pow.f64 x 2))
(*.f64 10 (pow.f64 x 2))
(*.f64 10 (pow.f64 x 2))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(+.f64 (pow.f64 eps 5) (*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))))
(+.f64 (pow.f64 eps 5) (*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))))
(+.f64 (pow.f64 eps 5) (*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))))
(pow.f64 eps 5)
(+.f64 (pow.f64 eps 5) (*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))))
(+.f64 (pow.f64 eps 5) (*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))))
(+.f64 (pow.f64 eps 5) (*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))))
(pow.f64 eps 5)
(+.f64 (pow.f64 eps 5) (*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))))
(+.f64 (pow.f64 eps 5) (*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))))
(+.f64 (pow.f64 eps 5) (*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))))
(pow.f64 eps 5)
(+.f64 (pow.f64 eps 5) (*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))))
(+.f64 (pow.f64 eps 5) (*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))))
(+.f64 (pow.f64 eps 5) (*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(+.f64 (pow.f64 eps 5) (*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))))
(+.f64 (pow.f64 eps 5) (*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))))
(+.f64 (pow.f64 eps 5) (*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(+.f64 (pow.f64 eps 5) (*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))))
(+.f64 (pow.f64 eps 5) (*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))))
(+.f64 (pow.f64 eps 5) (*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))))
Outputs
(*.f64 10 (pow.f64 x 2))
(*.f64 10 (*.f64 x x))
(*.f64 10 (pow.f64 x 2))
(*.f64 10 (*.f64 x x))
(*.f64 10 (pow.f64 x 2))
(*.f64 10 (*.f64 x x))
(*.f64 10 (pow.f64 x 2))
(*.f64 10 (*.f64 x x))
(*.f64 10 (pow.f64 x 2))
(*.f64 10 (*.f64 x x))
(*.f64 10 (pow.f64 x 2))
(*.f64 10 (*.f64 x x))
(*.f64 10 (pow.f64 x 2))
(*.f64 10 (*.f64 x x))
(*.f64 10 (pow.f64 x 2))
(*.f64 10 (*.f64 x x))
(*.f64 10 (pow.f64 x 2))
(*.f64 10 (*.f64 x x))
(*.f64 10 (pow.f64 x 2))
(*.f64 10 (*.f64 x x))
(*.f64 10 (pow.f64 x 2))
(*.f64 10 (*.f64 x x))
(*.f64 10 (pow.f64 x 2))
(*.f64 10 (*.f64 x x))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3)))
(*.f64 10 (*.f64 x (*.f64 x (pow.f64 eps 3))))
(*.f64 x (*.f64 (pow.f64 eps 3) (*.f64 10 x)))
(+.f64 (pow.f64 eps 5) (*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))))
(+.f64 (*.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3))) (pow.f64 eps 5))
(fma.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3)) (pow.f64 eps 5))
(fma.f64 10 (*.f64 x (*.f64 x (pow.f64 eps 3))) (pow.f64 eps 5))
(+.f64 (pow.f64 eps 5) (*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))))
(+.f64 (*.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3))) (pow.f64 eps 5))
(fma.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3)) (pow.f64 eps 5))
(fma.f64 10 (*.f64 x (*.f64 x (pow.f64 eps 3))) (pow.f64 eps 5))
(+.f64 (pow.f64 eps 5) (*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))))
(+.f64 (*.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3))) (pow.f64 eps 5))
(fma.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3)) (pow.f64 eps 5))
(fma.f64 10 (*.f64 x (*.f64 x (pow.f64 eps 3))) (pow.f64 eps 5))
(pow.f64 eps 5)
(+.f64 (pow.f64 eps 5) (*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))))
(+.f64 (*.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3))) (pow.f64 eps 5))
(fma.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3)) (pow.f64 eps 5))
(fma.f64 10 (*.f64 x (*.f64 x (pow.f64 eps 3))) (pow.f64 eps 5))
(+.f64 (pow.f64 eps 5) (*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))))
(+.f64 (*.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3))) (pow.f64 eps 5))
(fma.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3)) (pow.f64 eps 5))
(fma.f64 10 (*.f64 x (*.f64 x (pow.f64 eps 3))) (pow.f64 eps 5))
(+.f64 (pow.f64 eps 5) (*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))))
(+.f64 (*.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3))) (pow.f64 eps 5))
(fma.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3)) (pow.f64 eps 5))
(fma.f64 10 (*.f64 x (*.f64 x (pow.f64 eps 3))) (pow.f64 eps 5))
(pow.f64 eps 5)
(+.f64 (pow.f64 eps 5) (*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))))
(+.f64 (*.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3))) (pow.f64 eps 5))
(fma.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3)) (pow.f64 eps 5))
(fma.f64 10 (*.f64 x (*.f64 x (pow.f64 eps 3))) (pow.f64 eps 5))
(+.f64 (pow.f64 eps 5) (*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))))
(+.f64 (*.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3))) (pow.f64 eps 5))
(fma.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3)) (pow.f64 eps 5))
(fma.f64 10 (*.f64 x (*.f64 x (pow.f64 eps 3))) (pow.f64 eps 5))
(+.f64 (pow.f64 eps 5) (*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))))
(+.f64 (*.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3))) (pow.f64 eps 5))
(fma.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3)) (pow.f64 eps 5))
(fma.f64 10 (*.f64 x (*.f64 x (pow.f64 eps 3))) (pow.f64 eps 5))
(pow.f64 eps 5)
(+.f64 (pow.f64 eps 5) (*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))))
(+.f64 (*.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3))) (pow.f64 eps 5))
(fma.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3)) (pow.f64 eps 5))
(fma.f64 10 (*.f64 x (*.f64 x (pow.f64 eps 3))) (pow.f64 eps 5))
(+.f64 (pow.f64 eps 5) (*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))))
(+.f64 (*.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3))) (pow.f64 eps 5))
(fma.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3)) (pow.f64 eps 5))
(fma.f64 10 (*.f64 x (*.f64 x (pow.f64 eps 3))) (pow.f64 eps 5))
(+.f64 (pow.f64 eps 5) (*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))))
(+.f64 (*.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3))) (pow.f64 eps 5))
(fma.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3)) (pow.f64 eps 5))
(fma.f64 10 (*.f64 x (*.f64 x (pow.f64 eps 3))) (pow.f64 eps 5))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3)))
(*.f64 10 (*.f64 x (*.f64 x (pow.f64 eps 3))))
(*.f64 x (*.f64 (pow.f64 eps 3) (*.f64 10 x)))
(+.f64 (pow.f64 eps 5) (*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))))
(+.f64 (*.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3))) (pow.f64 eps 5))
(fma.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3)) (pow.f64 eps 5))
(fma.f64 10 (*.f64 x (*.f64 x (pow.f64 eps 3))) (pow.f64 eps 5))
(+.f64 (pow.f64 eps 5) (*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))))
(+.f64 (*.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3))) (pow.f64 eps 5))
(fma.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3)) (pow.f64 eps 5))
(fma.f64 10 (*.f64 x (*.f64 x (pow.f64 eps 3))) (pow.f64 eps 5))
(+.f64 (pow.f64 eps 5) (*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))))
(+.f64 (*.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3))) (pow.f64 eps 5))
(fma.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3)) (pow.f64 eps 5))
(fma.f64 10 (*.f64 x (*.f64 x (pow.f64 eps 3))) (pow.f64 eps 5))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3)))
(*.f64 10 (*.f64 x (*.f64 x (pow.f64 eps 3))))
(*.f64 x (*.f64 (pow.f64 eps 3) (*.f64 10 x)))
(+.f64 (pow.f64 eps 5) (*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))))
(+.f64 (*.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3))) (pow.f64 eps 5))
(fma.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3)) (pow.f64 eps 5))
(fma.f64 10 (*.f64 x (*.f64 x (pow.f64 eps 3))) (pow.f64 eps 5))
(+.f64 (pow.f64 eps 5) (*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))))
(+.f64 (*.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3))) (pow.f64 eps 5))
(fma.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3)) (pow.f64 eps 5))
(fma.f64 10 (*.f64 x (*.f64 x (pow.f64 eps 3))) (pow.f64 eps 5))
(+.f64 (pow.f64 eps 5) (*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))))
(+.f64 (*.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3))) (pow.f64 eps 5))
(fma.f64 10 (*.f64 (*.f64 x x) (pow.f64 eps 3)) (pow.f64 eps 5))
(fma.f64 10 (*.f64 x (*.f64 x (pow.f64 eps 3))) (pow.f64 eps 5))

localize3.0ms (0.1%)

Compiler

Compiled 7 to 5 computations (28.6% saved)

localize9.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(*.f64 eps (pow.f64 x 4))
0.1b
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
Compiler

Compiled 21 to 14 computations (33.3% saved)

series7.0ms (0.1%)

Counts
2 → 0
Calls

12 calls:

TimeVariablePointExpression
2.0ms
eps
@0
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
1.0ms
x
@0
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
1.0ms
eps
@inf
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
1.0ms
x
@inf
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
0.0ms
eps
@-inf
(*.f64 5 (*.f64 eps (pow.f64 x 4)))

rewrite55.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
699×pow1_binary64
647×add-log-exp_binary64
647×log1p-expm1-u_binary64
647×expm1-log1p-u_binary64
633×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0817
116717
2183917
Stop Event
node limit
Counts
2 → 24
Calls
Call 1
Inputs
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 eps (pow.f64 x 4))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 5 (*.f64 eps (pow.f64 x 4)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 5 (*.f64 eps (pow.f64 x 4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 5 (*.f64 eps (pow.f64 x 4))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 5 (*.f64 eps (pow.f64 x 4)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 (*.f64 5 eps)) (*.f64 x x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 25 (*.f64 (pow.f64 x 8) (*.f64 eps eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (*.f64 5 eps)) (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 5 (*.f64 eps (pow.f64 x 4))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 5 (*.f64 eps (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 5 (*.f64 eps (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 5 (*.f64 eps (pow.f64 x 4)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 eps (pow.f64 x 4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 eps (pow.f64 x 4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 eps (pow.f64 x 4)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 eps (pow.f64 x 4))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 x x) (sqrt.f64 eps)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 x 8) (*.f64 eps eps)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (pow.f64 x 4)) eps))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 eps (pow.f64 x 4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 eps 3) (pow.f64 (pow.f64 x 4) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (pow.f64 x 4) 3) (pow.f64 eps 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 eps (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 eps (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 eps (pow.f64 x 4))))))))

simplify17.0ms (0.3%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
000
Stop Event
saturated
Counts
24 → 24
Calls
Call 1
Inputs
Outputs

localize11.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4))
Compiler

Compiled 25 to 16 computations (36% saved)

series3.0ms (0.1%)

Counts
1 → 12
Calls

6 calls:

TimeVariablePointExpression
1.0ms
eps
@0
(*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4))
1.0ms
x
@0
(*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4))
1.0ms
x
@inf
(*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4))
0.0ms
eps
@inf
(*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4))
0.0ms
eps
@-inf
(*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4))

rewrite54.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
886×pow1_binary64
827×add-log-exp_binary64
826×log1p-expm1-u_binary64
826×expm1-log1p-u_binary64
808×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0810
117910
2230910
Stop Event
node limit
Counts
1 → 21
Calls
Call 1
Inputs
(*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 eps (pow.f64 x 4)) (*.f64 (*.f64 4 eps) (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 4 eps) (pow.f64 x 4)) (*.f64 eps (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 x 4) eps) (*.f64 (pow.f64 x 4) (*.f64 4 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 x 4) (*.f64 4 eps)) (*.f64 (pow.f64 x 4) eps))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (*.f64 (pow.f64 x 4) 5) eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 64 (pow.f64 eps 3)) (pow.f64 eps 3)) (pow.f64 x 4)) (+.f64 (*.f64 16 (*.f64 eps eps)) (*.f64 eps (-.f64 eps (*.f64 4 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (*.f64 eps 5) (*.f64 eps 3)) (pow.f64 x 4)) (*.f64 eps 3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 x 4) (+.f64 (*.f64 64 (pow.f64 eps 3)) (pow.f64 eps 3))) (+.f64 (*.f64 16 (*.f64 eps eps)) (*.f64 eps (-.f64 eps (*.f64 4 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 x 4) (*.f64 (*.f64 eps 5) (*.f64 eps 3))) (*.f64 eps 3))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 (pow.f64 x 4) 5) eps) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 x 4) 5) eps) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (*.f64 (pow.f64 x 4) 5) eps)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 x x) (sqrt.f64 (*.f64 eps 5))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (*.f64 25 (*.f64 eps eps)) (pow.f64 x 8)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 5) eps) (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 x 4) 5) eps) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 eps 5) 3) (pow.f64 (pow.f64 x 4) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (pow.f64 x 4) 3) (pow.f64 (*.f64 eps 5) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (*.f64 (pow.f64 x 4) 5) eps)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (*.f64 (pow.f64 x 4) 5) eps)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (*.f64 (pow.f64 x 4) 5) eps)))))))

simplify123.0ms (2.2%)

Algorithm
egg-herbie
Rules
852×cube-prod_binary64
758×unswap-sqr_binary64
748×sqr-pow_binary64
500×fabs-mul_binary64
416×unpow3_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
08120
116120
235120
377120
4215120
5732120
6956120
71299120
81379120
91487120
101619120
111810120
122055120
133465120
143971120
154652120
165400120
176335120
186907120
197612120
Stop Event
node limit
Counts
33 → 23
Calls
Call 1
Inputs
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
Outputs
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 eps (*.f64 (pow.f64 x 4) 5))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 eps (*.f64 (pow.f64 x 4) 5))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 eps (*.f64 (pow.f64 x 4) 5))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 eps (*.f64 (pow.f64 x 4) 5))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 eps (*.f64 (pow.f64 x 4) 5))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 eps (*.f64 (pow.f64 x 4) 5))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 eps (*.f64 (pow.f64 x 4) 5))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 eps (*.f64 (pow.f64 x 4) 5))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 eps (*.f64 (pow.f64 x 4) 5))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 eps (*.f64 (pow.f64 x 4) 5))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 eps (*.f64 (pow.f64 x 4) 5))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 eps (*.f64 (pow.f64 x 4) 5))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))

localize13.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(*.f64 4 (pow.f64 x 4))
0.0b
(*.f64 eps (+.f64 (*.f64 4 (pow.f64 x 4)) (pow.f64 x 4)))
0.1b
(+.f64 (*.f64 4 (pow.f64 x 4)) (pow.f64 x 4))
Compiler

Compiled 33 to 24 computations (27.3% saved)

series7.0ms (0.1%)

Counts
3 → 24
Calls

12 calls:

TimeVariablePointExpression
1.0ms
x
@inf
(+.f64 (*.f64 4 (pow.f64 x 4)) (pow.f64 x 4))
1.0ms
eps
@0
(*.f64 eps (+.f64 (*.f64 4 (pow.f64 x 4)) (pow.f64 x 4)))
1.0ms
x
@-inf
(+.f64 (*.f64 4 (pow.f64 x 4)) (pow.f64 x 4))
1.0ms
eps
@inf
(*.f64 eps (+.f64 (*.f64 4 (pow.f64 x 4)) (pow.f64 x 4)))
1.0ms
x
@inf
(*.f64 4 (pow.f64 x 4))

rewrite79.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
952×pow1_binary64
892×add-log-exp_binary64
891×log1p-expm1-u_binary64
891×expm1-log1p-u_binary64
92×add-sqr-sqrt_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0824
118524
2254424
Stop Event
node limit
Counts
3 → 77
Calls
Call 1
Inputs
(+.f64 (*.f64 4 (pow.f64 x 4)) (pow.f64 x 4))
(*.f64 eps (+.f64 (*.f64 4 (pow.f64 x 4)) (pow.f64 x 4)))
(*.f64 4 (pow.f64 x 4))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 x 4) 5))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 16 (pow.f64 x 8)) (*.f64 (pow.f64 x 4) 3)) (/.f64 (pow.f64 x 8) (*.f64 (pow.f64 x 4) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 x 4) 5)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 x 4) 5) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (pow.f64 x 4) 5))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (pow.f64 x 4) 5)) (cbrt.f64 (*.f64 25 (pow.f64 x 8))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 25 (pow.f64 x 8))) (cbrt.f64 (*.f64 (pow.f64 x 4) 5)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 5) (*.f64 x x)) (*.f64 (sqrt.f64 5) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 64 (pow.f64 x 12)) (pow.f64 x 12)) (/.f64 1 (-.f64 (+.f64 (*.f64 16 (pow.f64 x 8)) (pow.f64 x 8)) (*.f64 4 (pow.f64 x 8)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 16 (pow.f64 x 8)) (pow.f64 x 8)) (/.f64 1 (*.f64 (pow.f64 x 4) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 5 (pow.f64 x 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 5 (cbrt.f64 (pow.f64 x 8))) (cbrt.f64 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 5 (*.f64 x x)) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (+.f64 (*.f64 16 (pow.f64 x 8)) (pow.f64 x 8)) (*.f64 4 (pow.f64 x 8))) (+.f64 (*.f64 64 (pow.f64 x 12)) (pow.f64 x 12))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (*.f64 (pow.f64 x 4) 3) (-.f64 (*.f64 16 (pow.f64 x 8)) (pow.f64 x 8))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 64 (pow.f64 x 12)) (pow.f64 x 12)) (-.f64 (+.f64 (*.f64 16 (pow.f64 x 8)) (pow.f64 x 8)) (*.f64 4 (pow.f64 x 8))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 64 (pow.f64 x 12)) (pow.f64 x 12)) (+.f64 (pow.f64 x 8) (-.f64 (*.f64 16 (pow.f64 x 8)) (*.f64 4 (pow.f64 x 8)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 16 (pow.f64 x 8)) (pow.f64 x 8)) (*.f64 (pow.f64 x 4) 3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (*.f64 64 (pow.f64 x 12)) (pow.f64 x 12))) (neg.f64 (-.f64 (+.f64 (*.f64 16 (pow.f64 x 8)) (pow.f64 x 8)) (*.f64 4 (pow.f64 x 8)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 16 (pow.f64 x 8)) (pow.f64 x 8))) (neg.f64 (*.f64 (pow.f64 x 4) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 x 8) (*.f64 16 (pow.f64 x 8))) (-.f64 (pow.f64 x 4) (*.f64 4 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 x 4) 5) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (pow.f64 x 4) 5) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (pow.f64 x 4) 5)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 5) (*.f64 x x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 25 (pow.f64 x 8)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 5) (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 x 4) 5))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (pow.f64 x 4) 5) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (pow.f64 x 4) 5)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (pow.f64 x 4) 5)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (pow.f64 x 4) 5)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 4 (pow.f64 x 4) (pow.f64 x 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x 4) 4 (pow.f64 x 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (pow.f64 x 4) (*.f64 4 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 4 (pow.f64 x 4)) (pow.f64 x 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 16 (pow.f64 x 8))) (cbrt.f64 (*.f64 4 (pow.f64 x 4))) (pow.f64 x 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 x 8)) (cbrt.f64 (pow.f64 x 4)) (*.f64 4 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 2 (*.f64 x x)) (*.f64 2 (*.f64 x x)) (pow.f64 x 4))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x x) (*.f64 x x) (*.f64 4 (pow.f64 x 4)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 x 4) eps) (*.f64 4 (*.f64 (pow.f64 x 4) eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 4 (*.f64 (pow.f64 x 4) eps)) (*.f64 (pow.f64 x 4) eps))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 4 (*.f64 (pow.f64 x 4) eps)) 1) (*.f64 (*.f64 (pow.f64 x 4) eps) 1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 (pow.f64 x 4) 5) eps))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 4 (*.f64 (pow.f64 x 4) eps)) 3) (pow.f64 (*.f64 (pow.f64 x 4) eps) 3)) (+.f64 (*.f64 (*.f64 4 (*.f64 (pow.f64 x 4) eps)) (*.f64 4 (*.f64 (pow.f64 x 4) eps))) (-.f64 (*.f64 (*.f64 (pow.f64 x 4) eps) (*.f64 (pow.f64 x 4) eps)) (*.f64 (*.f64 4 (*.f64 (pow.f64 x 4) eps)) (*.f64 (pow.f64 x 4) eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 4 (*.f64 (pow.f64 x 4) eps)) (*.f64 4 (*.f64 (pow.f64 x 4) eps))) (*.f64 (*.f64 (pow.f64 x 4) eps) (*.f64 (pow.f64 x 4) eps))) (-.f64 (*.f64 4 (*.f64 (pow.f64 x 4) eps)) (*.f64 (pow.f64 x 4) eps)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 64 (pow.f64 x 12)) (pow.f64 x 12)) eps) (-.f64 (+.f64 (*.f64 16 (pow.f64 x 8)) (pow.f64 x 8)) (*.f64 4 (pow.f64 x 8))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 16 (pow.f64 x 8)) (pow.f64 x 8)) eps) (*.f64 (pow.f64 x 4) 3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 eps (+.f64 (*.f64 64 (pow.f64 x 12)) (pow.f64 x 12))) (-.f64 (+.f64 (*.f64 16 (pow.f64 x 8)) (pow.f64 x 8)) (*.f64 4 (pow.f64 x 8))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 eps (-.f64 (*.f64 16 (pow.f64 x 8)) (pow.f64 x 8))) (*.f64 (pow.f64 x 4) 3))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 (pow.f64 x 4) 5) eps) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 x 4) 5) eps) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (*.f64 (pow.f64 x 4) 5) eps)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (*.f64 (pow.f64 x 4) 5) eps)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (*.f64 25 (pow.f64 x 8)) (*.f64 eps eps)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 5) (pow.f64 x 4)) eps))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 (pow.f64 x 4) 5) eps))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 x 4) 5) eps) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 (pow.f64 x 4) 5) 3) (pow.f64 eps 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 eps 3) (pow.f64 (*.f64 (pow.f64 x 4) 5) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (*.f64 (pow.f64 x 4) 5) eps)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (*.f64 (pow.f64 x 4) 5) eps)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (*.f64 (pow.f64 x 4) 5) eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 4 (pow.f64 x 4)) eps (*.f64 (pow.f64 x 4) eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 eps (*.f64 4 (pow.f64 x 4)) (*.f64 (pow.f64 x 4) eps))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 4 (pow.f64 x 4)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 4 (pow.f64 x 4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 4 (pow.f64 x 4))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 2 (*.f64 x x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 64 (pow.f64 x 12)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 16 (pow.f64 x 8)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 4) (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 4 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 64 (pow.f64 x 12)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 4 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 4 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 4 (pow.f64 x 4))))))))

simplify132.0ms (2.4%)

Algorithm
egg-herbie
Rules
852×cube-prod_binary64
770×unswap-sqr_binary64
748×sqr-pow_binary64
455×fabs-mul_binary64
416×unpow3_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
09204
118204
239204
389204
4252204
5827204
61014204
71357204
81437204
91545204
101680204
111871204
122116204
133552204
144055204
154731204
165481204
176418204
186986204
197687204
Stop Event
node limit
Counts
101 → 79
Calls
Call 1
Inputs
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
Outputs
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))

eval71.0ms (1.3%)

Compiler

Compiled 3110 to 2304 computations (25.9% saved)

prune51.0ms (0.9%)

Pruning

6 alts after pruning (3 fresh and 3 done)

PrunedKeptTotal
New1823185
Fresh000
Picked101
Done235
Total1856191
Error
0b
Counts
191 → 6
Alt Table
Click to see full alt table
StatusErrorProgram
11.6b
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
7.1b
(pow.f64 eps 5)
7.0b
(fma.f64 (pow.f64 eps 4) (*.f64 5 x) (+.f64 (pow.f64 eps 5) (*.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3))))
11.6b
(*.f64 eps (*.f64 (pow.f64 x 4) 5))
7.0b
(-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))
11.6b
(*.f64 eps (*.f64 (*.f64 5 (*.f64 x x)) (*.f64 x x)))
Compiler

Compiled 69 to 49 computations (29% saved)

localize10.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(*.f64 eps (*.f64 (*.f64 5 (*.f64 x x)) (*.f64 x x)))
0.1b
(*.f64 (*.f64 5 (*.f64 x x)) (*.f64 x x))
0.1b
(*.f64 5 (*.f64 x x))
Compiler

Compiled 33 to 13 computations (60.6% saved)

series4.0ms (0.1%)

Counts
3 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
x
@0
(*.f64 5 (*.f64 x x))
0.0ms
x
@inf
(*.f64 5 (*.f64 x x))
0.0ms
x
@inf
(*.f64 (*.f64 5 (*.f64 x x)) (*.f64 x x))
0.0ms
x
@0
(*.f64 (*.f64 5 (*.f64 x x)) (*.f64 x x))
0.0ms
x
@-inf
(*.f64 5 (*.f64 x x))

rewrite90.0ms (1.6%)

Algorithm
batch-egg-rewrite
Rules
774×pow1_binary64
715×add-log-exp_binary64
715×log1p-expm1-u_binary64
715×expm1-log1p-u_binary64
698×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0836
116624
2201624
Stop Event
node limit
Counts
3 → 37
Calls
Call 1
Inputs
(*.f64 5 (*.f64 x x))
(*.f64 (*.f64 5 (*.f64 x x)) (*.f64 x x))
(*.f64 eps (*.f64 (*.f64 5 (*.f64 x x)) (*.f64 x x)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 5 (*.f64 x x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 5 (*.f64 x x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 5 (*.f64 x x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 5 (*.f64 x x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (sqrt.f64 5)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 25 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 5) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 5 (*.f64 x x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 5 (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 5 (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 5 (*.f64 x x))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 5 (pow.f64 x 4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 5 (pow.f64 x 4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 5 (pow.f64 x 4)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 5 (pow.f64 x 4))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (*.f64 x (sqrt.f64 5))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 5 (pow.f64 x 4)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 5) (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 5 (pow.f64 x 4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 5 (*.f64 x x)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 5 (*.f64 x x)) 3) (pow.f64 (*.f64 x x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 5 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 5 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 5 (pow.f64 x 4))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 5 (*.f64 (pow.f64 x 4) eps))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 5 (*.f64 (pow.f64 x 4) eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 5 (*.f64 (pow.f64 x 4) eps)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 5 (*.f64 (pow.f64 x 4) eps))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 5 (*.f64 (pow.f64 x 4) eps))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 5 (*.f64 (pow.f64 x 4) eps)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 5) (pow.f64 x 4)) eps))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 5 (*.f64 (pow.f64 x 4) eps)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 5 (pow.f64 x 4)) 3) (pow.f64 eps 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 eps 3) (pow.f64 (*.f64 5 (pow.f64 x 4)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 5 (*.f64 (pow.f64 x 4) eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 5 (*.f64 (pow.f64 x 4) eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 5 (*.f64 (pow.f64 x 4) eps))))))))

simplify156.0ms (2.8%)

Algorithm
egg-herbie
Rules
852×cube-prod_binary64
762×unswap-sqr_binary64
748×sqr-pow_binary64
509×fabs-mul_binary64
491×unpow3_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
012408
125408
254408
3153408
4577408
5773408
61116408
71196408
81304408
91436408
101629408
111874408
123294408
133807408
144488408
155236408
166173408
176747408
187448408
197908408
Stop Event
node limit
Counts
85 → 42
Calls
Call 1
Inputs
(*.f64 5 (pow.f64 x 2))
(*.f64 5 (pow.f64 x 2))
(*.f64 5 (pow.f64 x 2))
(*.f64 5 (pow.f64 x 2))
(*.f64 5 (pow.f64 x 2))
(*.f64 5 (pow.f64 x 2))
(*.f64 5 (pow.f64 x 2))
(*.f64 5 (pow.f64 x 2))
(*.f64 5 (pow.f64 x 2))
(*.f64 5 (pow.f64 x 2))
(*.f64 5 (pow.f64 x 2))
(*.f64 5 (pow.f64 x 2))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
Outputs
(*.f64 5 (pow.f64 x 2))
(*.f64 5 (*.f64 x x))
(*.f64 5 (pow.f64 x 2))
(*.f64 5 (*.f64 x x))
(*.f64 5 (pow.f64 x 2))
(*.f64 5 (*.f64 x x))
(*.f64 5 (pow.f64 x 2))
(*.f64 5 (*.f64 x x))
(*.f64 5 (pow.f64 x 2))
(*.f64 5 (*.f64 x x))
(*.f64 5 (pow.f64 x 2))
(*.f64 5 (*.f64 x x))
(*.f64 5 (pow.f64 x 2))
(*.f64 5 (*.f64 x x))
(*.f64 5 (pow.f64 x 2))
(*.f64 5 (*.f64 x x))
(*.f64 5 (pow.f64 x 2))
(*.f64 5 (*.f64 x x))
(*.f64 5 (pow.f64 x 2))
(*.f64 5 (*.f64 x x))
(*.f64 5 (pow.f64 x 2))
(*.f64 5 (*.f64 x x))
(*.f64 5 (pow.f64 x 2))
(*.f64 5 (*.f64 x x))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))

localize9.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(*.f64 eps (*.f64 (pow.f64 x 4) 5))
0.1b
(*.f64 (pow.f64 x 4) 5)
Compiler

Compiled 21 to 15 computations (28.6% saved)

series2.0ms (0%)

Counts
2 → 36
Calls

9 calls:

TimeVariablePointExpression
0.0ms
x
@0
(*.f64 (pow.f64 x 4) 5)
0.0ms
eps
@0
(*.f64 eps (*.f64 (pow.f64 x 4) 5))
0.0ms
x
@inf
(*.f64 (pow.f64 x 4) 5)
0.0ms
x
@-inf
(*.f64 (pow.f64 x 4) 5)
0.0ms
x
@0
(*.f64 eps (*.f64 (pow.f64 x 4) 5))

rewrite70.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
701×pow1_binary64
649×add-log-exp_binary64
649×log1p-expm1-u_binary64
649×expm1-log1p-u_binary64
634×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0817
116717
2184317
Stop Event
node limit
Counts
2 → 24
Calls
Call 1
Inputs
(*.f64 (pow.f64 x 4) 5)
(*.f64 eps (*.f64 (pow.f64 x 4) 5))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (pow.f64 x 4) 5)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 x 4) 5) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (pow.f64 x 4) 5) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (pow.f64 x 4) 5)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 x x) (sqrt.f64 5)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 25 (pow.f64 x 8)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 5) (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (pow.f64 x 4) 5) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (pow.f64 x 4) 5)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (pow.f64 x 4) 5)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (pow.f64 x 4) 5)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (*.f64 eps 5) (pow.f64 x 4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 eps 5) (pow.f64 x 4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (*.f64 eps 5) (pow.f64 x 4)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (*.f64 eps 5) (pow.f64 x 4))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (*.f64 eps 5) (pow.f64 x 4))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (*.f64 25 (pow.f64 x 8)) (*.f64 eps eps)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 5) (pow.f64 x 4)) eps))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (*.f64 eps 5) (pow.f64 x 4)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 (pow.f64 x 4) 5) 3) (pow.f64 eps 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 eps 3) (pow.f64 (*.f64 (pow.f64 x 4) 5) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (*.f64 eps 5) (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (*.f64 eps 5) (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (*.f64 eps 5) (pow.f64 x 4))))))))

simplify143.0ms (2.6%)

Algorithm
egg-herbie
Rules
852×cube-prod_binary64
770×unswap-sqr_binary64
748×sqr-pow_binary64
455×fabs-mul_binary64
416×unpow3_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
09324
118324
239324
389324
4252324
5827324
61014324
71357324
81437324
91545324
101680324
111871324
122116324
133552324
144055324
154731324
165481324
176418324
186986324
197687324
Stop Event
node limit
Counts
60 → 27
Calls
Call 1
Inputs
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
Outputs
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (pow.f64 x 4))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (*.f64 5 eps) (pow.f64 x 4))
(*.f64 (pow.f64 x 4) (*.f64 5 eps))
(*.f64 5 (*.f64 (pow.f64 x 4) eps))

localize30.0ms (0.6%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3))
0.1b
(*.f64 x (*.f64 x 10))
Compiler

Compiled 70 to 48 computations (31.4% saved)

series4.0ms (0.1%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
x
@0
(*.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3))
1.0ms
eps
@0
(*.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3))
1.0ms
eps
@inf
(*.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3))
1.0ms
x
@inf
(*.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3))
0.0ms
eps
@-inf
(*.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3))

rewrite53.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
825×pow1_binary64
768×add-log-exp_binary64
768×log1p-expm1-u_binary64
768×expm1-log1p-u_binary64
751×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0913
119113
2212913
Stop Event
node limit
Counts
1 → 13
Calls
Call 1
Inputs
(*.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 x (*.f64 x (*.f64 10 (pow.f64 eps 3))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (*.f64 x (*.f64 10 (pow.f64 eps 3)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x (*.f64 x (*.f64 10 (pow.f64 eps 3)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 eps (cbrt.f64 (*.f64 x (*.f64 x 10)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 x (sqrt.f64 10)) (pow.f64 eps 3/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 eps 6) (pow.f64 (*.f64 x (*.f64 x 10)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (pow.f64 eps 3)) (*.f64 x (*.f64 x 10))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 x (*.f64 x (*.f64 10 (pow.f64 eps 3)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 x (*.f64 x 10)) 3) (pow.f64 (pow.f64 eps 3) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 3) (pow.f64 (*.f64 x (*.f64 x 10)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 x (*.f64 x (*.f64 10 (pow.f64 eps 3))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 x (*.f64 x (*.f64 10 (pow.f64 eps 3))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 x (*.f64 x (*.f64 10 (pow.f64 eps 3))))))))))

simplify184.0ms (3.3%)

Algorithm
egg-herbie
Rules
976×unswap-sqr_binary64
806×sqr-pow_binary64
631×cube-prod_binary64
475×fabs-mul_binary64
359×*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
010312
126312
273312
3253312
41104312
51740312
61797312
71889312
82001312
92113312
102249312
113823312
124071312
134360312
144673312
155023312
165504312
176129312
186789312
197110312
207442312
217788312
Stop Event
node limit
Counts
37 → 15
Calls
Call 1
Inputs
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
Outputs
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 10 (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 x (*.f64 10 x)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 10 (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 x (*.f64 10 x)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 10 (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 x (*.f64 10 x)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 10 (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 x (*.f64 10 x)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 10 (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 x (*.f64 10 x)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 10 (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 x (*.f64 10 x)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 10 (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 x (*.f64 10 x)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 10 (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 x (*.f64 10 x)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 10 (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 x (*.f64 10 x)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 10 (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 x (*.f64 10 x)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 10 (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 x (*.f64 10 x)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 10 (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 x (*.f64 10 x)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 10 (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 x (*.f64 10 x)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 10 (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 x (*.f64 10 x)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 10 (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 x (*.f64 10 x)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 10 (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 x (*.f64 10 x)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 10 (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 x (*.f64 10 x)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 10 (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 x (*.f64 10 x)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 10 (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 x (*.f64 10 x)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 10 (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 x (*.f64 10 x)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 10 (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 x (*.f64 10 x)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 10 (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 x (*.f64 10 x)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 10 (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 x (*.f64 10 x)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (pow.f64 x 2)))
(*.f64 10 (*.f64 (pow.f64 eps 3) (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 10 (*.f64 x x)))
(*.f64 (pow.f64 eps 3) (*.f64 x (*.f64 10 x)))

eval38.0ms (0.7%)

Compiler

Compiled 1607 to 1167 computations (27.4% saved)

prune18.0ms (0.3%)

Pruning

6 alts after pruning (0 fresh and 6 done)

PrunedKeptTotal
New1070107
Fresh000
Picked011
Done055
Total1076113
Error
0b
Counts
113 → 6
Alt Table
Click to see full alt table
StatusErrorProgram
11.6b
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
7.1b
(pow.f64 eps 5)
7.0b
(fma.f64 (pow.f64 eps 4) (*.f64 5 x) (+.f64 (pow.f64 eps 5) (*.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3))))
11.6b
(*.f64 eps (*.f64 (pow.f64 x 4) 5))
7.0b
(-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))
11.6b
(*.f64 eps (*.f64 (*.f64 5 (*.f64 x x)) (*.f64 x x)))
Compiler

Compiled 69 to 49 computations (29% saved)

regimes42.0ms (0.8%)

Counts
9 → 3
Calls
Call 1
Inputs
(*.f64 eps (*.f64 (*.f64 5 (*.f64 x x)) (*.f64 x x)))
(pow.f64 eps 5)
(*.f64 eps (*.f64 (pow.f64 x 4) 5))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4))
(-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))
(*.f64 eps (+.f64 (*.f64 4 (pow.f64 x 4)) (pow.f64 x 4)))
(fma.f64 (pow.f64 eps 4) (*.f64 5 x) (+.f64 (pow.f64 eps 5) (*.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3))))
(fma.f64 (pow.f64 eps 4) (*.f64 5 x) (fma.f64 (pow.f64 eps 3) (*.f64 x (*.f64 x 10)) (pow.f64 eps 5)))
Outputs
(pow.f64 eps 5)
(*.f64 eps (*.f64 (pow.f64 x 4) 5))
(fma.f64 (pow.f64 eps 4) (*.f64 5 x) (+.f64 (pow.f64 eps 5) (*.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3))))
Calls

3 calls:

15.0ms
x
15.0ms
eps
7.0ms
(-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))
Results
ErrorSegmentsBranch
0.3b3x
1.2b3eps
0.0b3(-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))
Compiler

Compiled 115 to 78 computations (32.2% saved)

bsearch0.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
3e-323
0.0ms
-5e-324
0.0
Compiler

Compiled 16 to 12 computations (25% saved)

regimes38.0ms (0.7%)

Counts
7 → 3
Calls
Call 1
Inputs
(*.f64 eps (*.f64 (*.f64 5 (*.f64 x x)) (*.f64 x x)))
(pow.f64 eps 5)
(*.f64 eps (*.f64 (pow.f64 x 4) 5))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4))
(-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))
(*.f64 eps (+.f64 (*.f64 4 (pow.f64 x 4)) (pow.f64 x 4)))
Outputs
(pow.f64 eps 5)
(*.f64 eps (*.f64 (pow.f64 x 4) 5))
(-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))
Calls

3 calls:

15.0ms
x
14.0ms
eps
6.0ms
(-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))
Results
ErrorSegmentsBranch
0.3b3x
1.2b3eps
0.0b3(-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))
Compiler

Compiled 76 to 51 computations (32.9% saved)

bsearch0.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
3e-323
0.0ms
-5e-324
0.0
Compiler

Compiled 16 to 12 computations (25% saved)

regimes26.0ms (0.5%)

Counts
5 → 3
Calls
Call 1
Inputs
(*.f64 eps (*.f64 (*.f64 5 (*.f64 x x)) (*.f64 x x)))
(pow.f64 eps 5)
(*.f64 eps (*.f64 (pow.f64 x 4) 5))
(*.f64 5 (*.f64 eps (pow.f64 x 4)))
(*.f64 (+.f64 (*.f64 4 eps) eps) (pow.f64 x 4))
Outputs
(*.f64 eps (*.f64 (pow.f64 x 4) 5))
(pow.f64 eps 5)
(*.f64 eps (*.f64 (pow.f64 x 4) 5))
Calls

2 calls:

12.0ms
eps
12.0ms
x
Results
ErrorSegmentsBranch
0.4b3x
1.3b3eps
Compiler

Compiled 45 to 29 computations (35.6% saved)

bsearch86.0ms (1.6%)

Algorithm
binary-search
Steps
TimeLeftRight
20.0ms
4.833899510803369e-67
4.710570163584182e-65
66.0ms
-3.4543307649496044e-21
-4.3003710032365165e-38
Compiler

Compiled 16 to 12 computations (25% saved)

regimes19.0ms (0.3%)

Accuracy

Total -18.2b remaining (-4505.3%)

Threshold costs -18.2b (-4505.3%)

Counts
2 → 3
Calls
Call 1
Inputs
(*.f64 eps (*.f64 (*.f64 5 (*.f64 x x)) (*.f64 x x)))
(pow.f64 eps 5)
Outputs
(*.f64 eps (*.f64 (*.f64 5 (*.f64 x x)) (*.f64 x x)))
(pow.f64 eps 5)
(*.f64 eps (*.f64 (*.f64 5 (*.f64 x x)) (*.f64 x x)))
Calls

2 calls:

9.0ms
x
9.0ms
eps
Results
ErrorSegmentsBranch
0.4b3x
1.3b3eps
Compiler

Compiled 22 to 13 computations (40.9% saved)

bsearch85.0ms (1.5%)

Algorithm
binary-search
Steps
TimeLeftRight
20.0ms
4.833899510803369e-67
4.710570163584182e-65
65.0ms
-3.4543307649496044e-21
-4.3003710032365165e-38
Compiler

Compiled 16 to 12 computations (25% saved)

simplify11.0ms (0.2%)

Algorithm
egg-herbie
Rules
10×*-commutative_binary64
+-commutative_binary64
sub-neg_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
044242
157242
261242
363242
464242
Stop Event
done
saturated
Calls
Call 1
Inputs
(if (<=.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5)) -1/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784) (pow.f64 eps 5) (if (<=.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5)) 0) (*.f64 eps (*.f64 (pow.f64 x 4) 5)) (fma.f64 (pow.f64 eps 4) (*.f64 5 x) (+.f64 (pow.f64 eps 5) (*.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3))))))
(if (<=.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5)) -1/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784) (pow.f64 eps 5) (if (<=.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5)) 0) (*.f64 eps (*.f64 (pow.f64 x 4) 5)) (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))))
(if (<=.f64 x -2295796579736069/664613997892457936451903530140172288) (*.f64 eps (*.f64 (pow.f64 x 4) 5)) (if (<=.f64 x 7336457974830371/15177100720513508366558296147058741458143803430094840009779784451085189728165691392) (pow.f64 eps 5) (*.f64 eps (*.f64 (pow.f64 x 4) 5))))
(if (<=.f64 x -2295796579736069/664613997892457936451903530140172288) (*.f64 eps (*.f64 (*.f64 5 (*.f64 x x)) (*.f64 x x))) (if (<=.f64 x 7336457974830371/15177100720513508366558296147058741458143803430094840009779784451085189728165691392) (pow.f64 eps 5) (*.f64 eps (*.f64 (*.f64 5 (*.f64 x x)) (*.f64 x x)))))
(*.f64 eps (*.f64 (*.f64 5 (*.f64 x x)) (*.f64 x x)))
Outputs
(if (<=.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5)) -1/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784) (pow.f64 eps 5) (if (<=.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5)) 0) (*.f64 eps (*.f64 (pow.f64 x 4) 5)) (fma.f64 (pow.f64 eps 4) (*.f64 5 x) (+.f64 (pow.f64 eps 5) (*.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3))))))
(if (<=.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5)) -1/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784) (pow.f64 eps 5) (if (<=.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5)) 0) (*.f64 eps (*.f64 5 (pow.f64 x 4))) (fma.f64 (pow.f64 eps 4) (*.f64 x 5) (+.f64 (pow.f64 eps 5) (*.f64 (*.f64 x (*.f64 x 10)) (pow.f64 eps 3))))))
(if (<=.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5)) -1/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784) (pow.f64 eps 5) (if (<=.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5)) 0) (*.f64 eps (*.f64 (pow.f64 x 4) 5)) (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))))
(if (<=.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5)) -1/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784) (pow.f64 eps 5) (if (<=.f64 (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5)) 0) (*.f64 eps (*.f64 5 (pow.f64 x 4))) (-.f64 (pow.f64 (+.f64 x eps) 5) (pow.f64 x 5))))
(if (<=.f64 x -2295796579736069/664613997892457936451903530140172288) (*.f64 eps (*.f64 (pow.f64 x 4) 5)) (if (<=.f64 x 7336457974830371/15177100720513508366558296147058741458143803430094840009779784451085189728165691392) (pow.f64 eps 5) (*.f64 eps (*.f64 (pow.f64 x 4) 5))))
(if (<=.f64 x -2295796579736069/664613997892457936451903530140172288) (*.f64 eps (*.f64 5 (pow.f64 x 4))) (if (<=.f64 x 7336457974830371/15177100720513508366558296147058741458143803430094840009779784451085189728165691392) (pow.f64 eps 5) (*.f64 eps (*.f64 5 (pow.f64 x 4)))))
(if (<=.f64 x -2295796579736069/664613997892457936451903530140172288) (*.f64 eps (*.f64 (*.f64 5 (*.f64 x x)) (*.f64 x x))) (if (<=.f64 x 7336457974830371/15177100720513508366558296147058741458143803430094840009779784451085189728165691392) (pow.f64 eps 5) (*.f64 eps (*.f64 (*.f64 5 (*.f64 x x)) (*.f64 x x)))))
(if (<=.f64 x -2295796579736069/664613997892457936451903530140172288) (*.f64 eps (*.f64 (*.f64 x x) (*.f64 5 (*.f64 x x)))) (if (<=.f64 x 7336457974830371/15177100720513508366558296147058741458143803430094840009779784451085189728165691392) (pow.f64 eps 5) (*.f64 eps (*.f64 (*.f64 x x) (*.f64 5 (*.f64 x x))))))
(*.f64 eps (*.f64 (*.f64 5 (*.f64 x x)) (*.f64 x x)))
(*.f64 eps (*.f64 (*.f64 x x) (*.f64 5 (*.f64 x x))))
Compiler

Compiled 176 to 117 computations (33.5% saved)

soundness108.0ms (2%)

Algorithm
egg-herbie
Rules
677×associate-+l+_binary64
636×associate-*l*_binary64
569×associate-*r*_binary64
551×associate-+r+_binary64
226×unsub-neg_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01101374
13771293
215251107
367691107
Stop Event
node limit
Compiler

Compiled 991 to 758 computations (23.5% saved)

end355.0ms (6.5%)

Compiler

Compiled 168 to 107 computations (36.3% saved)

Profiling

Loading profile data...