Details

Time bar (total: 3.7s)

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.0s (54.9%)

Results
1.2s6137×body256valid
465.0ms999×body1024valid
345.0ms1101×body512valid
8.0ms19×body2048valid
Bogosity

preprocess62.0ms (1.7%)

Algorithm
egg-herbie
Rules
1004×distribute-lft-out
996×distribute-lft-neg-in
992×associate-*r*
944×distribute-rgt-neg-in
830×associate-*l*
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01350
13450
27950
326550
4119238
5468038
022
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
Outputs
0
1
Call 2
Inputs
(-.f64 (pow.f64 (+.f64 x eps) 2) (pow.f64 x 2))
(-.f64 (pow.f64 (+.f64 eps x) 2) (pow.f64 eps 2))
Outputs
(-.f64 (pow.f64 (+.f64 x eps) 2) (pow.f64 x 2))
(-.f64 (pow.f64 (+.f64 x eps) 2) (*.f64 x x))
(*.f64 eps (+.f64 x (+.f64 x eps)))
(-.f64 (pow.f64 (+.f64 eps x) 2) (pow.f64 eps 2))
(-.f64 (pow.f64 (+.f64 x eps) 2) (*.f64 eps eps))
(*.f64 x (+.f64 x (+.f64 eps eps)))
Compiler

Compiled 13 to 10 computations (23.1% saved)

simplify42.0ms (1.1%)

Algorithm
egg-herbie
Rules
1174×distribute-lft-in
1074×distribute-rgt-in
1026×cancel-sign-sub-inv
942×fma-def
940×fma-neg
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0925
12125
25225
316425
465215
5289915
Stop Event
node limit
Counts
1 → 3
Calls
Call 1
Inputs
(-.f64 (pow.f64 (+.f64 x eps) 2) (pow.f64 x 2))
Outputs
(-.f64 (pow.f64 (+.f64 x eps) 2) (pow.f64 x 2))
(-.f64 (pow.f64 (+.f64 x eps) 2) (*.f64 x x))
(*.f64 eps (fma.f64 2 x eps))

eval1.0ms (0%)

Compiler

Compiled 26 to 15 computations (42.3% saved)

prune1.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New213
Fresh101
Picked000
Done000
Total314
Accurracy
100.0%
Counts
4 → 1
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(*.f64 eps (fma.f64 2 x eps))
Compiler

Compiled 8 to 5 computations (37.5% saved)

localize6.0ms (0.2%)

Local Accuracy

Found 1 expressions with local accuracy:

NewAccuracyProgram
100.0%
(*.f64 eps (fma.f64 2 x eps))
Compiler

Compiled 15 to 8 computations (46.7% saved)

series3.0ms (0.1%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
0.0ms
eps
@-inf
(*.f64 eps (fma.f64 2 x eps))
0.0ms
x
@0
(*.f64 eps (fma.f64 2 x eps))
0.0ms
eps
@inf
(*.f64 eps (fma.f64 2 x eps))
0.0ms
eps
@0
(*.f64 eps (fma.f64 2 x eps))
0.0ms
x
@inf
(*.f64 eps (fma.f64 2 x eps))

rewrite92.0ms (2.5%)

Algorithm
batch-egg-rewrite
Rules
1472×pow1
1344×add-exp-log
1344×log1p-expm1-u
1344×expm1-log1p-u
1314×add-log-exp
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0815
115915
2181815
Stop Event
node limit
Counts
1 → 13
Calls
Call 1
Inputs
(*.f64 eps (fma.f64 2 x eps))
Outputs
(+.f64 (*.f64 (*.f64 2 x) eps) (*.f64 eps eps))
(+.f64 (*.f64 eps (*.f64 2 x)) (*.f64 eps eps))
(-.f64 (+.f64 1 (*.f64 eps (fma.f64 2 x eps))) 1)
(pow.f64 (*.f64 eps (fma.f64 2 x eps)) 1)
(pow.f64 (cbrt.f64 (*.f64 eps (fma.f64 2 x eps))) 3)
(pow.f64 (pow.f64 (*.f64 eps (fma.f64 2 x eps)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 eps (fma.f64 2 x eps))) 2)
(sqrt.f64 (pow.f64 (*.f64 eps (fma.f64 2 x eps)) 2))
(log.f64 (pow.f64 (exp.f64 eps) (fma.f64 2 x eps)))
(cbrt.f64 (pow.f64 (*.f64 eps (fma.f64 2 x eps)) 3))
(expm1.f64 (log1p.f64 (*.f64 eps (fma.f64 2 x eps))))
(exp.f64 (log.f64 (*.f64 eps (fma.f64 2 x eps))))
(log1p.f64 (expm1.f64 (*.f64 eps (fma.f64 2 x eps))))

simplify53.0ms (1.4%)

Algorithm
egg-herbie
Rules
1576×fma-def
1172×log-prod
650×*-commutative
638×associate-*r*
626×distribute-lft-out
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
043525
1104525
2334525
32351525
45603525
Stop Event
node limit
Counts
37 → 19
Calls
Call 1
Inputs
(*.f64 2 (*.f64 eps x))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(pow.f64 eps 2)
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(pow.f64 eps 2)
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(pow.f64 eps 2)
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(*.f64 2 (*.f64 eps x))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(*.f64 2 (*.f64 eps x))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 (*.f64 2 x) eps) (*.f64 eps eps))
(+.f64 (*.f64 eps (*.f64 2 x)) (*.f64 eps eps))
(-.f64 (+.f64 1 (*.f64 eps (fma.f64 2 x eps))) 1)
(pow.f64 (*.f64 eps (fma.f64 2 x eps)) 1)
(pow.f64 (cbrt.f64 (*.f64 eps (fma.f64 2 x eps))) 3)
(pow.f64 (pow.f64 (*.f64 eps (fma.f64 2 x eps)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 eps (fma.f64 2 x eps))) 2)
(sqrt.f64 (pow.f64 (*.f64 eps (fma.f64 2 x eps)) 2))
(log.f64 (pow.f64 (exp.f64 eps) (fma.f64 2 x eps)))
(cbrt.f64 (pow.f64 (*.f64 eps (fma.f64 2 x eps)) 3))
(expm1.f64 (log1p.f64 (*.f64 eps (fma.f64 2 x eps))))
(exp.f64 (log.f64 (*.f64 eps (fma.f64 2 x eps))))
(log1p.f64 (expm1.f64 (*.f64 eps (fma.f64 2 x eps))))
Outputs
(*.f64 2 (*.f64 eps x))
(*.f64 eps (*.f64 2 x))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(*.f64 eps (fma.f64 2 x eps))
(pow.f64 eps 2)
(*.f64 eps eps)
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(*.f64 eps (fma.f64 2 x eps))
(pow.f64 eps 2)
(*.f64 eps eps)
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(*.f64 eps (fma.f64 2 x eps))
(pow.f64 eps 2)
(*.f64 eps eps)
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(*.f64 eps (fma.f64 2 x eps))
(*.f64 2 (*.f64 eps x))
(*.f64 eps (*.f64 2 x))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(*.f64 eps (fma.f64 2 x eps))
(*.f64 2 (*.f64 eps x))
(*.f64 eps (*.f64 2 x))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (*.f64 (*.f64 2 x) eps) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (*.f64 eps (*.f64 2 x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(-.f64 (+.f64 1 (*.f64 eps (fma.f64 2 x eps))) 1)
(*.f64 eps (fma.f64 2 x eps))
(pow.f64 (*.f64 eps (fma.f64 2 x eps)) 1)
(*.f64 eps (fma.f64 2 x eps))
(pow.f64 (cbrt.f64 (*.f64 eps (fma.f64 2 x eps))) 3)
(*.f64 eps (fma.f64 2 x eps))
(pow.f64 (pow.f64 (*.f64 eps (fma.f64 2 x eps)) 3) 1/3)
(*.f64 eps (fma.f64 2 x eps))
(pow.f64 (sqrt.f64 (*.f64 eps (fma.f64 2 x eps))) 2)
(*.f64 eps (fma.f64 2 x eps))
(sqrt.f64 (pow.f64 (*.f64 eps (fma.f64 2 x eps)) 2))
(*.f64 eps (fma.f64 2 x eps))
(log.f64 (pow.f64 (exp.f64 eps) (fma.f64 2 x eps)))
(*.f64 eps (fma.f64 2 x eps))
(cbrt.f64 (pow.f64 (*.f64 eps (fma.f64 2 x eps)) 3))
(*.f64 eps (fma.f64 2 x eps))
(expm1.f64 (log1p.f64 (*.f64 eps (fma.f64 2 x eps))))
(*.f64 eps (fma.f64 2 x eps))
(exp.f64 (log.f64 (*.f64 eps (fma.f64 2 x eps))))
(*.f64 eps (fma.f64 2 x eps))
(log1p.f64 (expm1.f64 (*.f64 eps (fma.f64 2 x eps))))
(*.f64 eps (fma.f64 2 x eps))

eval3.0ms (0.1%)

Compiler

Compiled 147 to 90 computations (38.8% saved)

prune4.0ms (0.1%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New16319
Fresh000
Picked011
Done000
Total16420
Accurracy
100.0%
Counts
20 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(+.f64 (*.f64 (*.f64 2 x) eps) (*.f64 eps eps))
100.0%
(*.f64 eps (fma.f64 2 x eps))
63.7%
(*.f64 eps (*.f64 2 x))
72.9%
(*.f64 eps eps)
Compiler

Compiled 31 to 20 computations (35.5% saved)

localize2.0ms (0.1%)

Compiler

Compiled 6 to 3 computations (50% saved)

localize14.0ms (0.4%)

Compiler

Compiled 13 to 8 computations (38.5% saved)

localize9.0ms (0.2%)

Local Accuracy

Found 1 expressions with local accuracy:

NewAccuracyProgram
100.0%
(+.f64 (*.f64 (*.f64 2 x) eps) (*.f64 eps eps))
Compiler

Compiled 25 to 13 computations (48% saved)

series2.0ms (0.1%)

Counts
1 → 24
Calls

6 calls:

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

rewrite84.0ms (2.3%)

Algorithm
batch-egg-rewrite
Rules
968×log-prod
796×prod-exp
746×fma-def
700×exp-prod
682×pow-prod-down
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0919
119515
2259315
Stop Event
node limit
Counts
1 → 78
Calls
Call 1
Inputs
(+.f64 (*.f64 (*.f64 2 x) eps) (*.f64 eps eps))
Outputs
(-.f64 (exp.f64 (log1p.f64 (*.f64 eps (fma.f64 2 x eps)))) 1)
(-.f64 (/.f64 (*.f64 4 (pow.f64 (*.f64 x eps) 2)) (*.f64 eps (-.f64 (+.f64 x x) eps))) (/.f64 (pow.f64 eps 4) (*.f64 eps (-.f64 (+.f64 x x) eps))))
(*.f64 eps (fma.f64 2 x eps))
(*.f64 (*.f64 eps (fma.f64 2 x eps)) 1)
(*.f64 1 (*.f64 eps (fma.f64 2 x eps)))
(*.f64 (pow.f64 (cbrt.f64 eps) 2) (*.f64 (cbrt.f64 eps) (fma.f64 2 x eps)))
(*.f64 (cbrt.f64 (*.f64 eps (fma.f64 2 x eps))) (pow.f64 (cbrt.f64 (*.f64 eps (fma.f64 2 x eps))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 eps (fma.f64 2 x eps))) 2) (cbrt.f64 (*.f64 eps (fma.f64 2 x eps))))
(*.f64 (sqrt.f64 (*.f64 eps (fma.f64 2 x eps))) (sqrt.f64 (*.f64 eps (fma.f64 2 x eps))))
(*.f64 (sqrt.f64 eps) (*.f64 (sqrt.f64 eps) (fma.f64 2 x eps)))
(*.f64 (fma.f64 8 (pow.f64 (*.f64 x eps) 3) (pow.f64 eps 6)) (/.f64 1 (-.f64 (fma.f64 4 (pow.f64 (*.f64 x eps) 2) (pow.f64 eps 4)) (*.f64 (+.f64 x x) (pow.f64 eps 3)))))
(*.f64 (-.f64 (*.f64 4 (pow.f64 (*.f64 x eps) 2)) (pow.f64 eps 4)) (/.f64 1 (*.f64 eps (-.f64 (+.f64 x x) eps))))
(*.f64 (fma.f64 2 x eps) eps)
(/.f64 1 (/.f64 (-.f64 (fma.f64 4 (pow.f64 (*.f64 x eps) 2) (pow.f64 eps 4)) (*.f64 (+.f64 x x) (pow.f64 eps 3))) (fma.f64 8 (pow.f64 (*.f64 x eps) 3) (pow.f64 eps 6))))
(/.f64 1 (/.f64 (*.f64 eps (-.f64 (+.f64 x x) eps)) (-.f64 (*.f64 4 (pow.f64 (*.f64 x eps) 2)) (pow.f64 eps 4))))
(/.f64 (fma.f64 8 (pow.f64 (*.f64 x eps) 3) (pow.f64 eps 6)) (-.f64 (fma.f64 4 (pow.f64 (*.f64 x eps) 2) (pow.f64 eps 4)) (*.f64 (+.f64 x x) (pow.f64 eps 3))))
(/.f64 (fma.f64 8 (pow.f64 (*.f64 x eps) 3) (pow.f64 eps 6)) (+.f64 (pow.f64 eps 4) (-.f64 (*.f64 4 (pow.f64 (*.f64 x eps) 2)) (*.f64 (+.f64 x x) (pow.f64 eps 3)))))
(/.f64 (-.f64 (*.f64 4 (pow.f64 (*.f64 x eps) 2)) (pow.f64 eps 4)) (*.f64 eps (-.f64 (+.f64 x x) eps)))
(/.f64 (neg.f64 (fma.f64 8 (pow.f64 (*.f64 x eps) 3) (pow.f64 eps 6))) (neg.f64 (-.f64 (fma.f64 4 (pow.f64 (*.f64 x eps) 2) (pow.f64 eps 4)) (*.f64 (+.f64 x x) (pow.f64 eps 3)))))
(/.f64 (neg.f64 (-.f64 (*.f64 4 (pow.f64 (*.f64 x eps) 2)) (pow.f64 eps 4))) (neg.f64 (*.f64 eps (-.f64 (+.f64 x x) eps))))
(/.f64 (-.f64 (pow.f64 eps 4) (*.f64 4 (pow.f64 (*.f64 x eps) 2))) (-.f64 (*.f64 eps eps) (*.f64 2 (*.f64 x eps))))
(pow.f64 (*.f64 eps (fma.f64 2 x eps)) 1)
(pow.f64 (cbrt.f64 (*.f64 eps (fma.f64 2 x eps))) 3)
(pow.f64 (pow.f64 (*.f64 eps (fma.f64 2 x eps)) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 eps (fma.f64 2 x eps)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 eps (fma.f64 2 x eps))) 2)
(pow.f64 (exp.f64 1) (log.f64 (*.f64 eps (fma.f64 2 x eps))))
(pow.f64 (/.f64 (-.f64 (fma.f64 4 (pow.f64 (*.f64 x eps) 2) (pow.f64 eps 4)) (*.f64 (+.f64 x x) (pow.f64 eps 3))) (fma.f64 8 (pow.f64 (*.f64 x eps) 3) (pow.f64 eps 6))) -1)
(pow.f64 (/.f64 (*.f64 eps (-.f64 (+.f64 x x) eps)) (-.f64 (*.f64 4 (pow.f64 (*.f64 x eps) 2)) (pow.f64 eps 4))) -1)
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 eps (fma.f64 2 x eps)))) 2)) (cbrt.f64 (log.f64 (*.f64 eps (fma.f64 2 x eps)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 eps (fma.f64 2 x eps))))) (sqrt.f64 (log.f64 (*.f64 eps (fma.f64 2 x eps)))))
(sqrt.f64 (pow.f64 (*.f64 eps (fma.f64 2 x eps)) 2))
(log.f64 (pow.f64 (exp.f64 eps) (fma.f64 2 x eps)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 eps (fma.f64 2 x eps)))))
(log.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 eps 2)) x) (+.f64 1 (expm1.f64 (*.f64 eps eps)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 2 (*.f64 x eps)))) (pow.f64 (exp.f64 eps) eps)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 2 (*.f64 x eps)))) (+.f64 1 (expm1.f64 (*.f64 eps eps)))))
(log.f64 (*.f64 (pow.f64 (exp.f64 eps) eps) (+.f64 1 (expm1.f64 (*.f64 2 (*.f64 x eps))))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 eps eps))) (pow.f64 (exp.f64 (*.f64 eps 2)) x)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 eps eps))) (+.f64 1 (expm1.f64 (*.f64 2 (*.f64 x eps))))))
(cbrt.f64 (pow.f64 (*.f64 eps (fma.f64 2 x eps)) 3))
(expm1.f64 (log1p.f64 (*.f64 eps (fma.f64 2 x eps))))
(exp.f64 (log.f64 (*.f64 eps (fma.f64 2 x eps))))
(exp.f64 (*.f64 (log.f64 (*.f64 eps (fma.f64 2 x eps))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 eps (fma.f64 2 x eps))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 eps (fma.f64 2 x eps)))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 eps (fma.f64 2 x eps)))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 eps (fma.f64 2 x eps)))) 2))
(exp.f64 (+.f64 (*.f64 (log.f64 eps) 1) (log.f64 (fma.f64 2 x eps))))
(exp.f64 (+.f64 (log.f64 (fma.f64 2 x eps)) (*.f64 (log.f64 eps) 1)))
(log1p.f64 (expm1.f64 (*.f64 eps (fma.f64 2 x eps))))
(fma.f64 2 (*.f64 x eps) (*.f64 eps eps))
(fma.f64 x (*.f64 2 eps) (*.f64 eps eps))
(fma.f64 (+.f64 x x) eps (*.f64 eps eps))
(fma.f64 eps (+.f64 x x) (*.f64 eps eps))
(fma.f64 eps eps (*.f64 2 (*.f64 x eps)))
(fma.f64 (*.f64 2 (*.f64 x eps)) 1 (*.f64 eps eps))
(fma.f64 (*.f64 eps eps) 1 (*.f64 2 (*.f64 x eps)))
(fma.f64 1 (*.f64 2 (*.f64 x eps)) (*.f64 eps eps))
(fma.f64 1 (*.f64 eps eps) (*.f64 2 (*.f64 x eps)))
(fma.f64 (pow.f64 (cbrt.f64 eps) 2) (*.f64 (cbrt.f64 eps) eps) (*.f64 2 (*.f64 x eps)))
(fma.f64 (pow.f64 (cbrt.f64 eps) 2) (*.f64 (cbrt.f64 eps) (+.f64 x x)) (*.f64 eps eps))
(fma.f64 (*.f64 (cbrt.f64 eps) eps) (pow.f64 (cbrt.f64 eps) 2) (*.f64 2 (*.f64 x eps)))
(fma.f64 (pow.f64 (cbrt.f64 (+.f64 x x)) 2) (*.f64 (cbrt.f64 (+.f64 x x)) eps) (*.f64 eps eps))
(fma.f64 (cbrt.f64 (*.f64 2 (*.f64 x eps))) (pow.f64 (cbrt.f64 (*.f64 2 (*.f64 x eps))) 2) (*.f64 eps eps))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 2 (*.f64 x eps))) 2) (cbrt.f64 (*.f64 2 (*.f64 x eps))) (*.f64 eps eps))
(fma.f64 (sqrt.f64 (+.f64 x x)) (*.f64 (sqrt.f64 (+.f64 x x)) eps) (*.f64 eps eps))
(fma.f64 (sqrt.f64 eps) (pow.f64 eps 3/2) (*.f64 2 (*.f64 x eps)))
(fma.f64 (sqrt.f64 eps) (*.f64 (sqrt.f64 eps) (+.f64 x x)) (*.f64 eps eps))
(fma.f64 (sqrt.f64 (*.f64 2 (*.f64 x eps))) (sqrt.f64 (*.f64 2 (*.f64 x eps))) (*.f64 eps eps))
(fma.f64 (*.f64 x eps) 2 (*.f64 eps eps))
(fma.f64 (pow.f64 eps 3/2) (sqrt.f64 eps) (*.f64 2 (*.f64 x eps)))
(fma.f64 (pow.f64 (cbrt.f64 eps) 5) (cbrt.f64 eps) (*.f64 2 (*.f64 x eps)))
(fma.f64 (*.f64 (+.f64 x x) (pow.f64 (cbrt.f64 eps) 2)) (cbrt.f64 eps) (*.f64 eps eps))
(fma.f64 (*.f64 (+.f64 x x) (sqrt.f64 eps)) (sqrt.f64 eps) (*.f64 eps eps))
(fma.f64 (*.f64 eps 2) x (*.f64 eps eps))
(fma.f64 (*.f64 eps (pow.f64 (cbrt.f64 (+.f64 x x)) 2)) (cbrt.f64 (+.f64 x x)) (*.f64 eps eps))
(fma.f64 (*.f64 eps (sqrt.f64 (+.f64 x x))) (sqrt.f64 (+.f64 x x)) (*.f64 eps eps))

simplify83.0ms (2.2%)

Algorithm
egg-herbie
Rules
1070×fma-neg
930×times-frac
810×fma-def
666×log-prod
494×distribute-rgt-in
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01992796
15322274
214292158
364402158
Stop Event
node limit
Counts
102 → 93
Calls
Call 1
Inputs
(pow.f64 eps 2)
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(*.f64 2 (*.f64 eps x))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(*.f64 2 (*.f64 eps x))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(*.f64 2 (*.f64 eps x))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(pow.f64 eps 2)
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(pow.f64 eps 2)
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 eps (fma.f64 2 x eps)))) 1)
(-.f64 (/.f64 (*.f64 4 (pow.f64 (*.f64 x eps) 2)) (*.f64 eps (-.f64 (+.f64 x x) eps))) (/.f64 (pow.f64 eps 4) (*.f64 eps (-.f64 (+.f64 x x) eps))))
(*.f64 eps (fma.f64 2 x eps))
(*.f64 (*.f64 eps (fma.f64 2 x eps)) 1)
(*.f64 1 (*.f64 eps (fma.f64 2 x eps)))
(*.f64 (pow.f64 (cbrt.f64 eps) 2) (*.f64 (cbrt.f64 eps) (fma.f64 2 x eps)))
(*.f64 (cbrt.f64 (*.f64 eps (fma.f64 2 x eps))) (pow.f64 (cbrt.f64 (*.f64 eps (fma.f64 2 x eps))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 eps (fma.f64 2 x eps))) 2) (cbrt.f64 (*.f64 eps (fma.f64 2 x eps))))
(*.f64 (sqrt.f64 (*.f64 eps (fma.f64 2 x eps))) (sqrt.f64 (*.f64 eps (fma.f64 2 x eps))))
(*.f64 (sqrt.f64 eps) (*.f64 (sqrt.f64 eps) (fma.f64 2 x eps)))
(*.f64 (fma.f64 8 (pow.f64 (*.f64 x eps) 3) (pow.f64 eps 6)) (/.f64 1 (-.f64 (fma.f64 4 (pow.f64 (*.f64 x eps) 2) (pow.f64 eps 4)) (*.f64 (+.f64 x x) (pow.f64 eps 3)))))
(*.f64 (-.f64 (*.f64 4 (pow.f64 (*.f64 x eps) 2)) (pow.f64 eps 4)) (/.f64 1 (*.f64 eps (-.f64 (+.f64 x x) eps))))
(*.f64 (fma.f64 2 x eps) eps)
(/.f64 1 (/.f64 (-.f64 (fma.f64 4 (pow.f64 (*.f64 x eps) 2) (pow.f64 eps 4)) (*.f64 (+.f64 x x) (pow.f64 eps 3))) (fma.f64 8 (pow.f64 (*.f64 x eps) 3) (pow.f64 eps 6))))
(/.f64 1 (/.f64 (*.f64 eps (-.f64 (+.f64 x x) eps)) (-.f64 (*.f64 4 (pow.f64 (*.f64 x eps) 2)) (pow.f64 eps 4))))
(/.f64 (fma.f64 8 (pow.f64 (*.f64 x eps) 3) (pow.f64 eps 6)) (-.f64 (fma.f64 4 (pow.f64 (*.f64 x eps) 2) (pow.f64 eps 4)) (*.f64 (+.f64 x x) (pow.f64 eps 3))))
(/.f64 (fma.f64 8 (pow.f64 (*.f64 x eps) 3) (pow.f64 eps 6)) (+.f64 (pow.f64 eps 4) (-.f64 (*.f64 4 (pow.f64 (*.f64 x eps) 2)) (*.f64 (+.f64 x x) (pow.f64 eps 3)))))
(/.f64 (-.f64 (*.f64 4 (pow.f64 (*.f64 x eps) 2)) (pow.f64 eps 4)) (*.f64 eps (-.f64 (+.f64 x x) eps)))
(/.f64 (neg.f64 (fma.f64 8 (pow.f64 (*.f64 x eps) 3) (pow.f64 eps 6))) (neg.f64 (-.f64 (fma.f64 4 (pow.f64 (*.f64 x eps) 2) (pow.f64 eps 4)) (*.f64 (+.f64 x x) (pow.f64 eps 3)))))
(/.f64 (neg.f64 (-.f64 (*.f64 4 (pow.f64 (*.f64 x eps) 2)) (pow.f64 eps 4))) (neg.f64 (*.f64 eps (-.f64 (+.f64 x x) eps))))
(/.f64 (-.f64 (pow.f64 eps 4) (*.f64 4 (pow.f64 (*.f64 x eps) 2))) (-.f64 (*.f64 eps eps) (*.f64 2 (*.f64 x eps))))
(pow.f64 (*.f64 eps (fma.f64 2 x eps)) 1)
(pow.f64 (cbrt.f64 (*.f64 eps (fma.f64 2 x eps))) 3)
(pow.f64 (pow.f64 (*.f64 eps (fma.f64 2 x eps)) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 eps (fma.f64 2 x eps)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 eps (fma.f64 2 x eps))) 2)
(pow.f64 (exp.f64 1) (log.f64 (*.f64 eps (fma.f64 2 x eps))))
(pow.f64 (/.f64 (-.f64 (fma.f64 4 (pow.f64 (*.f64 x eps) 2) (pow.f64 eps 4)) (*.f64 (+.f64 x x) (pow.f64 eps 3))) (fma.f64 8 (pow.f64 (*.f64 x eps) 3) (pow.f64 eps 6))) -1)
(pow.f64 (/.f64 (*.f64 eps (-.f64 (+.f64 x x) eps)) (-.f64 (*.f64 4 (pow.f64 (*.f64 x eps) 2)) (pow.f64 eps 4))) -1)
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 eps (fma.f64 2 x eps)))) 2)) (cbrt.f64 (log.f64 (*.f64 eps (fma.f64 2 x eps)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 eps (fma.f64 2 x eps))))) (sqrt.f64 (log.f64 (*.f64 eps (fma.f64 2 x eps)))))
(sqrt.f64 (pow.f64 (*.f64 eps (fma.f64 2 x eps)) 2))
(log.f64 (pow.f64 (exp.f64 eps) (fma.f64 2 x eps)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 eps (fma.f64 2 x eps)))))
(log.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 eps 2)) x) (+.f64 1 (expm1.f64 (*.f64 eps eps)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 2 (*.f64 x eps)))) (pow.f64 (exp.f64 eps) eps)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 2 (*.f64 x eps)))) (+.f64 1 (expm1.f64 (*.f64 eps eps)))))
(log.f64 (*.f64 (pow.f64 (exp.f64 eps) eps) (+.f64 1 (expm1.f64 (*.f64 2 (*.f64 x eps))))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 eps eps))) (pow.f64 (exp.f64 (*.f64 eps 2)) x)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 eps eps))) (+.f64 1 (expm1.f64 (*.f64 2 (*.f64 x eps))))))
(cbrt.f64 (pow.f64 (*.f64 eps (fma.f64 2 x eps)) 3))
(expm1.f64 (log1p.f64 (*.f64 eps (fma.f64 2 x eps))))
(exp.f64 (log.f64 (*.f64 eps (fma.f64 2 x eps))))
(exp.f64 (*.f64 (log.f64 (*.f64 eps (fma.f64 2 x eps))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 eps (fma.f64 2 x eps))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 eps (fma.f64 2 x eps)))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 eps (fma.f64 2 x eps)))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 eps (fma.f64 2 x eps)))) 2))
(exp.f64 (+.f64 (*.f64 (log.f64 eps) 1) (log.f64 (fma.f64 2 x eps))))
(exp.f64 (+.f64 (log.f64 (fma.f64 2 x eps)) (*.f64 (log.f64 eps) 1)))
(log1p.f64 (expm1.f64 (*.f64 eps (fma.f64 2 x eps))))
(fma.f64 2 (*.f64 x eps) (*.f64 eps eps))
(fma.f64 x (*.f64 2 eps) (*.f64 eps eps))
(fma.f64 (+.f64 x x) eps (*.f64 eps eps))
(fma.f64 eps (+.f64 x x) (*.f64 eps eps))
(fma.f64 eps eps (*.f64 2 (*.f64 x eps)))
(fma.f64 (*.f64 2 (*.f64 x eps)) 1 (*.f64 eps eps))
(fma.f64 (*.f64 eps eps) 1 (*.f64 2 (*.f64 x eps)))
(fma.f64 1 (*.f64 2 (*.f64 x eps)) (*.f64 eps eps))
(fma.f64 1 (*.f64 eps eps) (*.f64 2 (*.f64 x eps)))
(fma.f64 (pow.f64 (cbrt.f64 eps) 2) (*.f64 (cbrt.f64 eps) eps) (*.f64 2 (*.f64 x eps)))
(fma.f64 (pow.f64 (cbrt.f64 eps) 2) (*.f64 (cbrt.f64 eps) (+.f64 x x)) (*.f64 eps eps))
(fma.f64 (*.f64 (cbrt.f64 eps) eps) (pow.f64 (cbrt.f64 eps) 2) (*.f64 2 (*.f64 x eps)))
(fma.f64 (pow.f64 (cbrt.f64 (+.f64 x x)) 2) (*.f64 (cbrt.f64 (+.f64 x x)) eps) (*.f64 eps eps))
(fma.f64 (cbrt.f64 (*.f64 2 (*.f64 x eps))) (pow.f64 (cbrt.f64 (*.f64 2 (*.f64 x eps))) 2) (*.f64 eps eps))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 2 (*.f64 x eps))) 2) (cbrt.f64 (*.f64 2 (*.f64 x eps))) (*.f64 eps eps))
(fma.f64 (sqrt.f64 (+.f64 x x)) (*.f64 (sqrt.f64 (+.f64 x x)) eps) (*.f64 eps eps))
(fma.f64 (sqrt.f64 eps) (pow.f64 eps 3/2) (*.f64 2 (*.f64 x eps)))
(fma.f64 (sqrt.f64 eps) (*.f64 (sqrt.f64 eps) (+.f64 x x)) (*.f64 eps eps))
(fma.f64 (sqrt.f64 (*.f64 2 (*.f64 x eps))) (sqrt.f64 (*.f64 2 (*.f64 x eps))) (*.f64 eps eps))
(fma.f64 (*.f64 x eps) 2 (*.f64 eps eps))
(fma.f64 (pow.f64 eps 3/2) (sqrt.f64 eps) (*.f64 2 (*.f64 x eps)))
(fma.f64 (pow.f64 (cbrt.f64 eps) 5) (cbrt.f64 eps) (*.f64 2 (*.f64 x eps)))
(fma.f64 (*.f64 (+.f64 x x) (pow.f64 (cbrt.f64 eps) 2)) (cbrt.f64 eps) (*.f64 eps eps))
(fma.f64 (*.f64 (+.f64 x x) (sqrt.f64 eps)) (sqrt.f64 eps) (*.f64 eps eps))
(fma.f64 (*.f64 eps 2) x (*.f64 eps eps))
(fma.f64 (*.f64 eps (pow.f64 (cbrt.f64 (+.f64 x x)) 2)) (cbrt.f64 (+.f64 x x)) (*.f64 eps eps))
(fma.f64 (*.f64 eps (sqrt.f64 (+.f64 x x))) (sqrt.f64 (+.f64 x x)) (*.f64 eps eps))
Outputs
(pow.f64 eps 2)
(*.f64 eps eps)
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(*.f64 2 (*.f64 eps x))
(*.f64 (+.f64 x x) eps)
(*.f64 eps (+.f64 x x))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(*.f64 2 (*.f64 eps x))
(*.f64 (+.f64 x x) eps)
(*.f64 eps (+.f64 x x))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(*.f64 2 (*.f64 eps x))
(*.f64 (+.f64 x x) eps)
(*.f64 eps (+.f64 x x))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(pow.f64 eps 2)
(*.f64 eps eps)
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(pow.f64 eps 2)
(*.f64 eps eps)
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(-.f64 (exp.f64 (log1p.f64 (*.f64 eps (fma.f64 2 x eps)))) 1)
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(-.f64 (/.f64 (*.f64 4 (pow.f64 (*.f64 x eps) 2)) (*.f64 eps (-.f64 (+.f64 x x) eps))) (/.f64 (pow.f64 eps 4) (*.f64 eps (-.f64 (+.f64 x x) eps))))
(/.f64 (-.f64 (*.f64 4 (pow.f64 (*.f64 eps x) 2)) (pow.f64 eps 4)) (*.f64 eps (+.f64 x (-.f64 x eps))))
(/.f64 (fma.f64 4 (pow.f64 (*.f64 eps x) 2) (neg.f64 (pow.f64 eps 4))) (*.f64 eps (+.f64 x (-.f64 x eps))))
(/.f64 (fma.f64 (pow.f64 (*.f64 eps x) 2) -4 (pow.f64 eps 4)) (*.f64 eps (fma.f64 -2 x eps)))
(/.f64 (fma.f64 (pow.f64 (*.f64 eps x) 2) -4 (pow.f64 eps 4)) (*.f64 eps (fma.f64 x -2 eps)))
(*.f64 eps (fma.f64 2 x eps))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 (*.f64 eps (fma.f64 2 x eps)) 1)
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(*.f64 1 (*.f64 eps (fma.f64 2 x eps)))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(*.f64 (pow.f64 (cbrt.f64 eps) 2) (*.f64 (cbrt.f64 eps) (fma.f64 2 x eps)))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(*.f64 (cbrt.f64 (*.f64 eps (fma.f64 2 x eps))) (pow.f64 (cbrt.f64 (*.f64 eps (fma.f64 2 x eps))) 2))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 eps (fma.f64 2 x eps))) 2) (cbrt.f64 (*.f64 eps (fma.f64 2 x eps))))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(*.f64 (sqrt.f64 (*.f64 eps (fma.f64 2 x eps))) (sqrt.f64 (*.f64 eps (fma.f64 2 x eps))))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(*.f64 (sqrt.f64 eps) (*.f64 (sqrt.f64 eps) (fma.f64 2 x eps)))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(*.f64 (fma.f64 8 (pow.f64 (*.f64 x eps) 3) (pow.f64 eps 6)) (/.f64 1 (-.f64 (fma.f64 4 (pow.f64 (*.f64 x eps) 2) (pow.f64 eps 4)) (*.f64 (+.f64 x x) (pow.f64 eps 3)))))
(*.f64 (fma.f64 8 (pow.f64 (*.f64 eps x) 3) (pow.f64 eps 6)) (/.f64 1 (-.f64 (fma.f64 4 (pow.f64 (*.f64 eps x) 2) (pow.f64 eps 4)) (*.f64 (+.f64 x x) (pow.f64 eps 3)))))
(/.f64 (fma.f64 8 (pow.f64 (*.f64 eps x) 3) (pow.f64 eps 6)) (+.f64 (pow.f64 eps 4) (fma.f64 4 (pow.f64 (*.f64 eps x) 2) (*.f64 (pow.f64 eps 3) (*.f64 -2 x)))))
(/.f64 (fma.f64 8 (pow.f64 (*.f64 eps x) 3) (pow.f64 eps 6)) (fma.f64 4 (pow.f64 (*.f64 eps x) 2) (*.f64 (pow.f64 eps 3) (fma.f64 -2 x eps))))
(/.f64 (fma.f64 8 (pow.f64 (*.f64 eps x) 3) (pow.f64 eps 6)) (fma.f64 4 (pow.f64 (*.f64 eps x) 2) (*.f64 (pow.f64 eps 3) (fma.f64 x -2 eps))))
(*.f64 (-.f64 (*.f64 4 (pow.f64 (*.f64 x eps) 2)) (pow.f64 eps 4)) (/.f64 1 (*.f64 eps (-.f64 (+.f64 x x) eps))))
(/.f64 (-.f64 (*.f64 4 (pow.f64 (*.f64 eps x) 2)) (pow.f64 eps 4)) (*.f64 eps (+.f64 x (-.f64 x eps))))
(/.f64 (fma.f64 4 (pow.f64 (*.f64 eps x) 2) (neg.f64 (pow.f64 eps 4))) (*.f64 eps (+.f64 x (-.f64 x eps))))
(/.f64 (fma.f64 (pow.f64 (*.f64 eps x) 2) -4 (pow.f64 eps 4)) (*.f64 eps (fma.f64 -2 x eps)))
(/.f64 (fma.f64 (pow.f64 (*.f64 eps x) 2) -4 (pow.f64 eps 4)) (*.f64 eps (fma.f64 x -2 eps)))
(*.f64 (fma.f64 2 x eps) eps)
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(/.f64 1 (/.f64 (-.f64 (fma.f64 4 (pow.f64 (*.f64 x eps) 2) (pow.f64 eps 4)) (*.f64 (+.f64 x x) (pow.f64 eps 3))) (fma.f64 8 (pow.f64 (*.f64 x eps) 3) (pow.f64 eps 6))))
(*.f64 (fma.f64 8 (pow.f64 (*.f64 eps x) 3) (pow.f64 eps 6)) (/.f64 1 (-.f64 (fma.f64 4 (pow.f64 (*.f64 eps x) 2) (pow.f64 eps 4)) (*.f64 (+.f64 x x) (pow.f64 eps 3)))))
(/.f64 (fma.f64 8 (pow.f64 (*.f64 eps x) 3) (pow.f64 eps 6)) (+.f64 (pow.f64 eps 4) (fma.f64 4 (pow.f64 (*.f64 eps x) 2) (*.f64 (pow.f64 eps 3) (*.f64 -2 x)))))
(/.f64 (fma.f64 8 (pow.f64 (*.f64 eps x) 3) (pow.f64 eps 6)) (fma.f64 4 (pow.f64 (*.f64 eps x) 2) (*.f64 (pow.f64 eps 3) (fma.f64 -2 x eps))))
(/.f64 (fma.f64 8 (pow.f64 (*.f64 eps x) 3) (pow.f64 eps 6)) (fma.f64 4 (pow.f64 (*.f64 eps x) 2) (*.f64 (pow.f64 eps 3) (fma.f64 x -2 eps))))
(/.f64 1 (/.f64 (*.f64 eps (-.f64 (+.f64 x x) eps)) (-.f64 (*.f64 4 (pow.f64 (*.f64 x eps) 2)) (pow.f64 eps 4))))
(/.f64 (-.f64 (*.f64 4 (pow.f64 (*.f64 eps x) 2)) (pow.f64 eps 4)) (*.f64 eps (+.f64 x (-.f64 x eps))))
(/.f64 (fma.f64 4 (pow.f64 (*.f64 eps x) 2) (neg.f64 (pow.f64 eps 4))) (*.f64 eps (+.f64 x (-.f64 x eps))))
(/.f64 (fma.f64 (pow.f64 (*.f64 eps x) 2) -4 (pow.f64 eps 4)) (*.f64 eps (fma.f64 -2 x eps)))
(/.f64 (fma.f64 (pow.f64 (*.f64 eps x) 2) -4 (pow.f64 eps 4)) (*.f64 eps (fma.f64 x -2 eps)))
(/.f64 (fma.f64 8 (pow.f64 (*.f64 x eps) 3) (pow.f64 eps 6)) (-.f64 (fma.f64 4 (pow.f64 (*.f64 x eps) 2) (pow.f64 eps 4)) (*.f64 (+.f64 x x) (pow.f64 eps 3))))
(*.f64 (fma.f64 8 (pow.f64 (*.f64 eps x) 3) (pow.f64 eps 6)) (/.f64 1 (-.f64 (fma.f64 4 (pow.f64 (*.f64 eps x) 2) (pow.f64 eps 4)) (*.f64 (+.f64 x x) (pow.f64 eps 3)))))
(/.f64 (fma.f64 8 (pow.f64 (*.f64 eps x) 3) (pow.f64 eps 6)) (+.f64 (pow.f64 eps 4) (fma.f64 4 (pow.f64 (*.f64 eps x) 2) (*.f64 (pow.f64 eps 3) (*.f64 -2 x)))))
(/.f64 (fma.f64 8 (pow.f64 (*.f64 eps x) 3) (pow.f64 eps 6)) (fma.f64 4 (pow.f64 (*.f64 eps x) 2) (*.f64 (pow.f64 eps 3) (fma.f64 -2 x eps))))
(/.f64 (fma.f64 8 (pow.f64 (*.f64 eps x) 3) (pow.f64 eps 6)) (fma.f64 4 (pow.f64 (*.f64 eps x) 2) (*.f64 (pow.f64 eps 3) (fma.f64 x -2 eps))))
(/.f64 (fma.f64 8 (pow.f64 (*.f64 x eps) 3) (pow.f64 eps 6)) (+.f64 (pow.f64 eps 4) (-.f64 (*.f64 4 (pow.f64 (*.f64 x eps) 2)) (*.f64 (+.f64 x x) (pow.f64 eps 3)))))
(*.f64 (fma.f64 8 (pow.f64 (*.f64 eps x) 3) (pow.f64 eps 6)) (/.f64 1 (-.f64 (fma.f64 4 (pow.f64 (*.f64 eps x) 2) (pow.f64 eps 4)) (*.f64 (+.f64 x x) (pow.f64 eps 3)))))
(/.f64 (fma.f64 8 (pow.f64 (*.f64 eps x) 3) (pow.f64 eps 6)) (+.f64 (pow.f64 eps 4) (fma.f64 4 (pow.f64 (*.f64 eps x) 2) (*.f64 (pow.f64 eps 3) (*.f64 -2 x)))))
(/.f64 (fma.f64 8 (pow.f64 (*.f64 eps x) 3) (pow.f64 eps 6)) (fma.f64 4 (pow.f64 (*.f64 eps x) 2) (*.f64 (pow.f64 eps 3) (fma.f64 -2 x eps))))
(/.f64 (fma.f64 8 (pow.f64 (*.f64 eps x) 3) (pow.f64 eps 6)) (fma.f64 4 (pow.f64 (*.f64 eps x) 2) (*.f64 (pow.f64 eps 3) (fma.f64 x -2 eps))))
(/.f64 (-.f64 (*.f64 4 (pow.f64 (*.f64 x eps) 2)) (pow.f64 eps 4)) (*.f64 eps (-.f64 (+.f64 x x) eps)))
(/.f64 (-.f64 (*.f64 4 (pow.f64 (*.f64 eps x) 2)) (pow.f64 eps 4)) (*.f64 eps (+.f64 x (-.f64 x eps))))
(/.f64 (fma.f64 4 (pow.f64 (*.f64 eps x) 2) (neg.f64 (pow.f64 eps 4))) (*.f64 eps (+.f64 x (-.f64 x eps))))
(/.f64 (fma.f64 (pow.f64 (*.f64 eps x) 2) -4 (pow.f64 eps 4)) (*.f64 eps (fma.f64 -2 x eps)))
(/.f64 (fma.f64 (pow.f64 (*.f64 eps x) 2) -4 (pow.f64 eps 4)) (*.f64 eps (fma.f64 x -2 eps)))
(/.f64 (neg.f64 (fma.f64 8 (pow.f64 (*.f64 x eps) 3) (pow.f64 eps 6))) (neg.f64 (-.f64 (fma.f64 4 (pow.f64 (*.f64 x eps) 2) (pow.f64 eps 4)) (*.f64 (+.f64 x x) (pow.f64 eps 3)))))
(*.f64 (fma.f64 8 (pow.f64 (*.f64 eps x) 3) (pow.f64 eps 6)) (/.f64 1 (-.f64 (fma.f64 4 (pow.f64 (*.f64 eps x) 2) (pow.f64 eps 4)) (*.f64 (+.f64 x x) (pow.f64 eps 3)))))
(/.f64 (fma.f64 8 (pow.f64 (*.f64 eps x) 3) (pow.f64 eps 6)) (+.f64 (pow.f64 eps 4) (fma.f64 4 (pow.f64 (*.f64 eps x) 2) (*.f64 (pow.f64 eps 3) (*.f64 -2 x)))))
(/.f64 (fma.f64 8 (pow.f64 (*.f64 eps x) 3) (pow.f64 eps 6)) (fma.f64 4 (pow.f64 (*.f64 eps x) 2) (*.f64 (pow.f64 eps 3) (fma.f64 -2 x eps))))
(/.f64 (fma.f64 8 (pow.f64 (*.f64 eps x) 3) (pow.f64 eps 6)) (fma.f64 4 (pow.f64 (*.f64 eps x) 2) (*.f64 (pow.f64 eps 3) (fma.f64 x -2 eps))))
(/.f64 (neg.f64 (-.f64 (*.f64 4 (pow.f64 (*.f64 x eps) 2)) (pow.f64 eps 4))) (neg.f64 (*.f64 eps (-.f64 (+.f64 x x) eps))))
(/.f64 (-.f64 (*.f64 4 (pow.f64 (*.f64 eps x) 2)) (pow.f64 eps 4)) (*.f64 eps (+.f64 x (-.f64 x eps))))
(/.f64 (fma.f64 4 (pow.f64 (*.f64 eps x) 2) (neg.f64 (pow.f64 eps 4))) (*.f64 eps (+.f64 x (-.f64 x eps))))
(/.f64 (fma.f64 (pow.f64 (*.f64 eps x) 2) -4 (pow.f64 eps 4)) (*.f64 eps (fma.f64 -2 x eps)))
(/.f64 (fma.f64 (pow.f64 (*.f64 eps x) 2) -4 (pow.f64 eps 4)) (*.f64 eps (fma.f64 x -2 eps)))
(/.f64 (-.f64 (pow.f64 eps 4) (*.f64 4 (pow.f64 (*.f64 x eps) 2))) (-.f64 (*.f64 eps eps) (*.f64 2 (*.f64 x eps))))
(/.f64 (-.f64 (*.f64 4 (pow.f64 (*.f64 eps x) 2)) (pow.f64 eps 4)) (*.f64 eps (+.f64 x (-.f64 x eps))))
(/.f64 (fma.f64 4 (pow.f64 (*.f64 eps x) 2) (neg.f64 (pow.f64 eps 4))) (*.f64 eps (+.f64 x (-.f64 x eps))))
(/.f64 (fma.f64 (pow.f64 (*.f64 eps x) 2) -4 (pow.f64 eps 4)) (*.f64 eps (fma.f64 -2 x eps)))
(/.f64 (fma.f64 (pow.f64 (*.f64 eps x) 2) -4 (pow.f64 eps 4)) (*.f64 eps (fma.f64 x -2 eps)))
(pow.f64 (*.f64 eps (fma.f64 2 x eps)) 1)
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(pow.f64 (cbrt.f64 (*.f64 eps (fma.f64 2 x eps))) 3)
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(pow.f64 (pow.f64 (*.f64 eps (fma.f64 2 x eps)) 2) 1/2)
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(pow.f64 (pow.f64 (*.f64 eps (fma.f64 2 x eps)) 3) 1/3)
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(pow.f64 (sqrt.f64 (*.f64 eps (fma.f64 2 x eps))) 2)
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(pow.f64 (exp.f64 1) (log.f64 (*.f64 eps (fma.f64 2 x eps))))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(pow.f64 (/.f64 (-.f64 (fma.f64 4 (pow.f64 (*.f64 x eps) 2) (pow.f64 eps 4)) (*.f64 (+.f64 x x) (pow.f64 eps 3))) (fma.f64 8 (pow.f64 (*.f64 x eps) 3) (pow.f64 eps 6))) -1)
(*.f64 (fma.f64 8 (pow.f64 (*.f64 eps x) 3) (pow.f64 eps 6)) (/.f64 1 (-.f64 (fma.f64 4 (pow.f64 (*.f64 eps x) 2) (pow.f64 eps 4)) (*.f64 (+.f64 x x) (pow.f64 eps 3)))))
(/.f64 (fma.f64 8 (pow.f64 (*.f64 eps x) 3) (pow.f64 eps 6)) (+.f64 (pow.f64 eps 4) (fma.f64 4 (pow.f64 (*.f64 eps x) 2) (*.f64 (pow.f64 eps 3) (*.f64 -2 x)))))
(/.f64 (fma.f64 8 (pow.f64 (*.f64 eps x) 3) (pow.f64 eps 6)) (fma.f64 4 (pow.f64 (*.f64 eps x) 2) (*.f64 (pow.f64 eps 3) (fma.f64 -2 x eps))))
(/.f64 (fma.f64 8 (pow.f64 (*.f64 eps x) 3) (pow.f64 eps 6)) (fma.f64 4 (pow.f64 (*.f64 eps x) 2) (*.f64 (pow.f64 eps 3) (fma.f64 x -2 eps))))
(pow.f64 (/.f64 (*.f64 eps (-.f64 (+.f64 x x) eps)) (-.f64 (*.f64 4 (pow.f64 (*.f64 x eps) 2)) (pow.f64 eps 4))) -1)
(/.f64 (-.f64 (*.f64 4 (pow.f64 (*.f64 eps x) 2)) (pow.f64 eps 4)) (*.f64 eps (+.f64 x (-.f64 x eps))))
(/.f64 (fma.f64 4 (pow.f64 (*.f64 eps x) 2) (neg.f64 (pow.f64 eps 4))) (*.f64 eps (+.f64 x (-.f64 x eps))))
(/.f64 (fma.f64 (pow.f64 (*.f64 eps x) 2) -4 (pow.f64 eps 4)) (*.f64 eps (fma.f64 -2 x eps)))
(/.f64 (fma.f64 (pow.f64 (*.f64 eps x) 2) -4 (pow.f64 eps 4)) (*.f64 eps (fma.f64 x -2 eps)))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 eps (fma.f64 2 x eps)))) 2)) (cbrt.f64 (log.f64 (*.f64 eps (fma.f64 2 x eps)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 eps (fma.f64 2 x eps))))) (sqrt.f64 (log.f64 (*.f64 eps (fma.f64 2 x eps)))))
(sqrt.f64 (pow.f64 (*.f64 eps (fma.f64 2 x eps)) 2))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(log.f64 (pow.f64 (exp.f64 eps) (fma.f64 2 x eps)))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 eps (fma.f64 2 x eps)))))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(log.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 eps 2)) x) (+.f64 1 (expm1.f64 (*.f64 eps eps)))))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 2 (*.f64 x eps)))) (pow.f64 (exp.f64 eps) eps)))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 2 (*.f64 x eps)))) (+.f64 1 (expm1.f64 (*.f64 eps eps)))))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(log.f64 (*.f64 (pow.f64 (exp.f64 eps) eps) (+.f64 1 (expm1.f64 (*.f64 2 (*.f64 x eps))))))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 eps eps))) (pow.f64 (exp.f64 (*.f64 eps 2)) x)))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 eps eps))) (+.f64 1 (expm1.f64 (*.f64 2 (*.f64 x eps))))))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(cbrt.f64 (pow.f64 (*.f64 eps (fma.f64 2 x eps)) 3))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(expm1.f64 (log1p.f64 (*.f64 eps (fma.f64 2 x eps))))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(exp.f64 (log.f64 (*.f64 eps (fma.f64 2 x eps))))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(exp.f64 (*.f64 (log.f64 (*.f64 eps (fma.f64 2 x eps))) 1))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 eps (fma.f64 2 x eps))) 1) 1))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 eps (fma.f64 2 x eps)))) 3))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 eps (fma.f64 2 x eps)))) 1/3))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 eps (fma.f64 2 x eps)))) 2))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(exp.f64 (+.f64 (*.f64 (log.f64 eps) 1) (log.f64 (fma.f64 2 x eps))))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(exp.f64 (+.f64 (log.f64 (fma.f64 2 x eps)) (*.f64 (log.f64 eps) 1)))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(log1p.f64 (expm1.f64 (*.f64 eps (fma.f64 2 x eps))))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(fma.f64 2 (*.f64 x eps) (*.f64 eps eps))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(fma.f64 x (*.f64 2 eps) (*.f64 eps eps))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(fma.f64 (+.f64 x x) eps (*.f64 eps eps))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(fma.f64 eps (+.f64 x x) (*.f64 eps eps))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(fma.f64 eps eps (*.f64 2 (*.f64 x eps)))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(fma.f64 (*.f64 2 (*.f64 x eps)) 1 (*.f64 eps eps))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(fma.f64 (*.f64 eps eps) 1 (*.f64 2 (*.f64 x eps)))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(fma.f64 1 (*.f64 2 (*.f64 x eps)) (*.f64 eps eps))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(fma.f64 1 (*.f64 eps eps) (*.f64 2 (*.f64 x eps)))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(fma.f64 (pow.f64 (cbrt.f64 eps) 2) (*.f64 (cbrt.f64 eps) eps) (*.f64 2 (*.f64 x eps)))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(fma.f64 (pow.f64 (cbrt.f64 eps) 2) (*.f64 (cbrt.f64 eps) (+.f64 x x)) (*.f64 eps eps))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(fma.f64 (*.f64 (cbrt.f64 eps) eps) (pow.f64 (cbrt.f64 eps) 2) (*.f64 2 (*.f64 x eps)))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(fma.f64 (pow.f64 (cbrt.f64 (+.f64 x x)) 2) (*.f64 (cbrt.f64 (+.f64 x x)) eps) (*.f64 eps eps))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(fma.f64 (cbrt.f64 (*.f64 2 (*.f64 x eps))) (pow.f64 (cbrt.f64 (*.f64 2 (*.f64 x eps))) 2) (*.f64 eps eps))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 2 (*.f64 x eps))) 2) (cbrt.f64 (*.f64 2 (*.f64 x eps))) (*.f64 eps eps))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(fma.f64 (sqrt.f64 (+.f64 x x)) (*.f64 (sqrt.f64 (+.f64 x x)) eps) (*.f64 eps eps))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(fma.f64 (sqrt.f64 eps) (pow.f64 eps 3/2) (*.f64 2 (*.f64 x eps)))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(fma.f64 (sqrt.f64 eps) (*.f64 (sqrt.f64 eps) (+.f64 x x)) (*.f64 eps eps))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(fma.f64 (sqrt.f64 (*.f64 2 (*.f64 x eps))) (sqrt.f64 (*.f64 2 (*.f64 x eps))) (*.f64 eps eps))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(fma.f64 (*.f64 x eps) 2 (*.f64 eps eps))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(fma.f64 (pow.f64 eps 3/2) (sqrt.f64 eps) (*.f64 2 (*.f64 x eps)))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(fma.f64 (pow.f64 (cbrt.f64 eps) 5) (cbrt.f64 eps) (*.f64 2 (*.f64 x eps)))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(fma.f64 (*.f64 (+.f64 x x) (pow.f64 (cbrt.f64 eps) 2)) (cbrt.f64 eps) (*.f64 eps eps))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(fma.f64 (*.f64 (+.f64 x x) (sqrt.f64 eps)) (sqrt.f64 eps) (*.f64 eps eps))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(fma.f64 (*.f64 eps 2) x (*.f64 eps eps))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(fma.f64 (*.f64 eps (pow.f64 (cbrt.f64 (+.f64 x x)) 2)) (cbrt.f64 (+.f64 x x)) (*.f64 eps eps))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))
(fma.f64 (*.f64 eps (sqrt.f64 (+.f64 x x))) (sqrt.f64 (+.f64 x x)) (*.f64 eps eps))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(*.f64 eps (fma.f64 2 x eps))

eval62.0ms (1.7%)

Compiler

Compiled 1309 to 691 computations (47.2% saved)

prune13.0ms (0.3%)

Pruning

5 alts after pruning (1 fresh and 4 done)

PrunedKeptTotal
New92193
Fresh000
Picked011
Done033
Total92597
Accurracy
100.0%
Counts
97 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
100.0%
(+.f64 (*.f64 (*.f64 2 x) eps) (*.f64 eps eps))
100.0%
(*.f64 eps (fma.f64 2 x eps))
63.7%
(*.f64 eps (*.f64 2 x))
72.9%
(*.f64 eps eps)
Compiler

Compiled 41 to 25 computations (39% saved)

localize6.0ms (0.2%)

Local Accuracy

Found 1 expressions with local accuracy:

NewAccuracyProgram
100.0%
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
Compiler

Compiled 20 to 5 computations (75% saved)

series1.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
0.0ms
eps
@0
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
0.0ms
eps
@-inf
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
0.0ms
eps
@inf
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
0.0ms
x
@0
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
0.0ms
x
@inf
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))

rewrite54.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
1586×pow1
1462×add-exp-log
1460×log1p-expm1-u
1460×expm1-log1p-u
1428×add-log-exp
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0821
116619
2223119
Stop Event
node limit
Counts
1 → 22
Calls
Call 1
Inputs
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
Outputs
(+.f64 (*.f64 eps (+.f64 x x)) (*.f64 eps eps))
(+.f64 (*.f64 eps eps) (*.f64 eps (+.f64 x x)))
(+.f64 (*.f64 (*.f64 eps eps) 1) (*.f64 eps (+.f64 x x)))
(-.f64 (+.f64 1 (*.f64 eps (+.f64 eps (+.f64 x x)))) 1)
(*.f64 eps (+.f64 eps (+.f64 x x)))
(*.f64 (*.f64 eps (+.f64 eps (+.f64 x x))) 1)
(*.f64 1 (*.f64 eps (+.f64 eps (+.f64 x x))))
(*.f64 (cbrt.f64 (*.f64 eps (+.f64 eps (+.f64 x x)))) (pow.f64 (cbrt.f64 (*.f64 eps (+.f64 eps (+.f64 x x)))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 eps (+.f64 eps (+.f64 x x)))) 2) (cbrt.f64 (*.f64 eps (+.f64 eps (+.f64 x x)))))
(*.f64 (hypot.f64 eps (*.f64 (+.f64 x x) (sqrt.f64 eps))) (hypot.f64 eps (*.f64 (+.f64 x x) (sqrt.f64 eps))))
(/.f64 (+.f64 (pow.f64 (*.f64 eps eps) 3) (pow.f64 (*.f64 eps (+.f64 x x)) 3)) (+.f64 (*.f64 (*.f64 eps eps) (*.f64 eps eps)) (-.f64 (*.f64 eps (*.f64 eps (+.f64 x x))) (*.f64 (*.f64 eps eps) (*.f64 eps (+.f64 x x))))))
(/.f64 (-.f64 (*.f64 (*.f64 eps eps) (*.f64 eps eps)) (*.f64 eps (*.f64 eps (+.f64 x x)))) (-.f64 (*.f64 eps eps) (*.f64 eps (+.f64 x x))))
(pow.f64 (*.f64 eps (+.f64 eps (+.f64 x x))) 1)
(pow.f64 (cbrt.f64 (*.f64 eps (+.f64 eps (+.f64 x x)))) 3)
(pow.f64 (pow.f64 (*.f64 eps (+.f64 eps (+.f64 x x))) 3) 1/3)
(pow.f64 (hypot.f64 eps (*.f64 (+.f64 x x) (sqrt.f64 eps))) 2)
(sqrt.f64 (pow.f64 (*.f64 eps (+.f64 eps (+.f64 x x))) 2))
(log.f64 (exp.f64 (*.f64 eps (+.f64 eps (+.f64 x x)))))
(cbrt.f64 (pow.f64 (*.f64 eps (+.f64 eps (+.f64 x x))) 3))
(expm1.f64 (log1p.f64 (*.f64 eps (+.f64 eps (+.f64 x x)))))
(exp.f64 (log.f64 (*.f64 eps (+.f64 eps (+.f64 x x)))))
(log1p.f64 (expm1.f64 (*.f64 eps (+.f64 eps (+.f64 x x)))))

simplify92.0ms (2.5%)

Algorithm
egg-herbie
Rules
756×associate-/r*
726×fma-neg
630×fma-def
580×cancel-sign-sub-inv
532×log-prod
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0621178
1182788
2794778
34017772
Stop Event
node limit
Counts
46 → 38
Calls
Call 1
Inputs
(*.f64 2 (*.f64 eps x))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(pow.f64 eps 2)
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(pow.f64 eps 2)
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(pow.f64 eps 2)
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(*.f64 2 (*.f64 eps x))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(*.f64 2 (*.f64 eps x))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 eps (+.f64 x x)) (*.f64 eps eps))
(+.f64 (*.f64 eps eps) (*.f64 eps (+.f64 x x)))
(+.f64 (*.f64 (*.f64 eps eps) 1) (*.f64 eps (+.f64 x x)))
(-.f64 (+.f64 1 (*.f64 eps (+.f64 eps (+.f64 x x)))) 1)
(*.f64 eps (+.f64 eps (+.f64 x x)))
(*.f64 (*.f64 eps (+.f64 eps (+.f64 x x))) 1)
(*.f64 1 (*.f64 eps (+.f64 eps (+.f64 x x))))
(*.f64 (cbrt.f64 (*.f64 eps (+.f64 eps (+.f64 x x)))) (pow.f64 (cbrt.f64 (*.f64 eps (+.f64 eps (+.f64 x x)))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 eps (+.f64 eps (+.f64 x x)))) 2) (cbrt.f64 (*.f64 eps (+.f64 eps (+.f64 x x)))))
(*.f64 (hypot.f64 eps (*.f64 (+.f64 x x) (sqrt.f64 eps))) (hypot.f64 eps (*.f64 (+.f64 x x) (sqrt.f64 eps))))
(/.f64 (+.f64 (pow.f64 (*.f64 eps eps) 3) (pow.f64 (*.f64 eps (+.f64 x x)) 3)) (+.f64 (*.f64 (*.f64 eps eps) (*.f64 eps eps)) (-.f64 (*.f64 eps (*.f64 eps (+.f64 x x))) (*.f64 (*.f64 eps eps) (*.f64 eps (+.f64 x x))))))
(/.f64 (-.f64 (*.f64 (*.f64 eps eps) (*.f64 eps eps)) (*.f64 eps (*.f64 eps (+.f64 x x)))) (-.f64 (*.f64 eps eps) (*.f64 eps (+.f64 x x))))
(pow.f64 (*.f64 eps (+.f64 eps (+.f64 x x))) 1)
(pow.f64 (cbrt.f64 (*.f64 eps (+.f64 eps (+.f64 x x)))) 3)
(pow.f64 (pow.f64 (*.f64 eps (+.f64 eps (+.f64 x x))) 3) 1/3)
(pow.f64 (hypot.f64 eps (*.f64 (+.f64 x x) (sqrt.f64 eps))) 2)
(sqrt.f64 (pow.f64 (*.f64 eps (+.f64 eps (+.f64 x x))) 2))
(log.f64 (exp.f64 (*.f64 eps (+.f64 eps (+.f64 x x)))))
(cbrt.f64 (pow.f64 (*.f64 eps (+.f64 eps (+.f64 x x))) 3))
(expm1.f64 (log1p.f64 (*.f64 eps (+.f64 eps (+.f64 x x)))))
(exp.f64 (log.f64 (*.f64 eps (+.f64 eps (+.f64 x x)))))
(log1p.f64 (expm1.f64 (*.f64 eps (+.f64 eps (+.f64 x x)))))
Outputs
(*.f64 2 (*.f64 eps x))
(*.f64 eps (+.f64 x x))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(pow.f64 eps 2)
(*.f64 eps eps)
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(pow.f64 eps 2)
(*.f64 eps eps)
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(pow.f64 eps 2)
(*.f64 eps eps)
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(*.f64 2 (*.f64 eps x))
(*.f64 eps (+.f64 x x))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(*.f64 2 (*.f64 eps x))
(*.f64 eps (+.f64 x x))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (*.f64 eps (+.f64 x x)) (*.f64 eps eps))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (*.f64 eps eps) (*.f64 eps (+.f64 x x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (*.f64 (*.f64 eps eps) 1) (*.f64 eps (+.f64 x x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(-.f64 (+.f64 1 (*.f64 eps (+.f64 eps (+.f64 x x)))) 1)
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(*.f64 eps (+.f64 eps (+.f64 x x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(*.f64 (*.f64 eps (+.f64 eps (+.f64 x x))) 1)
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(*.f64 1 (*.f64 eps (+.f64 eps (+.f64 x x))))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(*.f64 (cbrt.f64 (*.f64 eps (+.f64 eps (+.f64 x x)))) (pow.f64 (cbrt.f64 (*.f64 eps (+.f64 eps (+.f64 x x)))) 2))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 eps (+.f64 eps (+.f64 x x)))) 2) (cbrt.f64 (*.f64 eps (+.f64 eps (+.f64 x x)))))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(*.f64 (hypot.f64 eps (*.f64 (+.f64 x x) (sqrt.f64 eps))) (hypot.f64 eps (*.f64 (+.f64 x x) (sqrt.f64 eps))))
(pow.f64 (hypot.f64 eps (*.f64 (+.f64 x x) (sqrt.f64 eps))) 2)
(pow.f64 (hypot.f64 eps (*.f64 2 (*.f64 x (sqrt.f64 eps)))) 2)
(/.f64 (+.f64 (pow.f64 (*.f64 eps eps) 3) (pow.f64 (*.f64 eps (+.f64 x x)) 3)) (+.f64 (*.f64 (*.f64 eps eps) (*.f64 eps eps)) (-.f64 (*.f64 eps (*.f64 eps (+.f64 x x))) (*.f64 (*.f64 eps eps) (*.f64 eps (+.f64 x x))))))
(/.f64 (+.f64 (pow.f64 (*.f64 eps eps) 3) (pow.f64 (*.f64 eps (+.f64 x x)) 3)) (fma.f64 (*.f64 eps eps) (*.f64 eps eps) (*.f64 (*.f64 eps (+.f64 x x)) (-.f64 eps (*.f64 eps eps)))))
(/.f64 (+.f64 (pow.f64 eps 6) (pow.f64 (*.f64 eps (+.f64 x x)) 3)) (fma.f64 (*.f64 eps (+.f64 x x)) (-.f64 eps (*.f64 eps eps)) (pow.f64 eps 4)))
(/.f64 (+.f64 (pow.f64 eps 6) (pow.f64 (*.f64 eps (+.f64 x x)) 3)) (fma.f64 eps (*.f64 (+.f64 x x) (-.f64 eps (*.f64 eps eps))) (pow.f64 eps 4)))
(/.f64 (+.f64 (pow.f64 eps 6) (*.f64 8 (pow.f64 (*.f64 eps x) 3))) (fma.f64 eps (*.f64 (*.f64 eps x) (+.f64 2 (*.f64 eps -2))) (pow.f64 eps 4)))
(/.f64 (-.f64 (*.f64 (*.f64 eps eps) (*.f64 eps eps)) (*.f64 eps (*.f64 eps (+.f64 x x)))) (-.f64 (*.f64 eps eps) (*.f64 eps (+.f64 x x))))
(/.f64 (-.f64 (*.f64 (*.f64 eps eps) (*.f64 eps eps)) (*.f64 eps (*.f64 eps (+.f64 x x)))) (*.f64 eps (-.f64 eps (+.f64 x x))))
(/.f64 (-.f64 (pow.f64 eps 4) (*.f64 eps (*.f64 eps (+.f64 x x)))) (*.f64 eps (+.f64 eps (*.f64 -2 x))))
(*.f64 1 (/.f64 (*.f64 eps (fma.f64 eps eps (*.f64 x -2))) (+.f64 eps (*.f64 x -2))))
(*.f64 (/.f64 eps (-.f64 eps (+.f64 x x))) (fma.f64 eps eps (*.f64 x -2)))
(pow.f64 (*.f64 eps (+.f64 eps (+.f64 x x))) 1)
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(pow.f64 (cbrt.f64 (*.f64 eps (+.f64 eps (+.f64 x x)))) 3)
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(pow.f64 (pow.f64 (*.f64 eps (+.f64 eps (+.f64 x x))) 3) 1/3)
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(pow.f64 (hypot.f64 eps (*.f64 (+.f64 x x) (sqrt.f64 eps))) 2)
(pow.f64 (hypot.f64 eps (*.f64 2 (*.f64 x (sqrt.f64 eps)))) 2)
(sqrt.f64 (pow.f64 (*.f64 eps (+.f64 eps (+.f64 x x))) 2))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(log.f64 (exp.f64 (*.f64 eps (+.f64 eps (+.f64 x x)))))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(cbrt.f64 (pow.f64 (*.f64 eps (+.f64 eps (+.f64 x x))) 3))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(expm1.f64 (log1p.f64 (*.f64 eps (+.f64 eps (+.f64 x x)))))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(exp.f64 (log.f64 (*.f64 eps (+.f64 eps (+.f64 x x)))))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(log1p.f64 (expm1.f64 (*.f64 eps (+.f64 eps (+.f64 x x)))))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))

eval6.0ms (0.2%)

Compiler

Compiled 514 to 161 computations (68.7% saved)

prune6.0ms (0.2%)

Pruning

5 alts after pruning (1 fresh and 4 done)

PrunedKeptTotal
New37138
Fresh000
Picked011
Done134
Total38543
Accurracy
100.0%
Counts
43 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
100.0%
(+.f64 (*.f64 (*.f64 2 x) eps) (*.f64 eps eps))
100.0%
(*.f64 eps (+.f64 eps (+.f64 x x)))
63.7%
(*.f64 eps (*.f64 2 x))
72.9%
(*.f64 eps eps)
Compiler

Compiled 42 to 25 computations (40.5% saved)

localize39.0ms (1.1%)

Local Accuracy

Found 1 expressions with local accuracy:

NewAccuracyProgram
100.0%
(*.f64 eps (+.f64 eps (+.f64 x x)))
Compiler

Compiled 19 to 5 computations (73.7% saved)

series1.0ms (0%)

Counts
1 → 24
Calls

6 calls:

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

rewrite84.0ms (2.3%)

Algorithm
batch-egg-rewrite
Rules
1812×pow1
1694×add-exp-log
1692×log1p-expm1-u
1692×expm1-log1p-u
1660×add-log-exp
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0719
116215
2257515
Stop Event
node limit
Counts
1 → 25
Calls
Call 1
Inputs
(*.f64 eps (+.f64 eps (+.f64 x x)))
Outputs
(+.f64 (*.f64 eps eps) (*.f64 eps (+.f64 x x)))
(+.f64 (*.f64 eps (+.f64 x x)) (*.f64 eps eps))
(+.f64 (*.f64 eps (+.f64 eps x)) (*.f64 eps x))
(+.f64 (*.f64 (+.f64 eps x) eps) (*.f64 x eps))
(+.f64 (*.f64 (*.f64 eps eps) 1) (*.f64 (*.f64 eps (+.f64 x x)) 1))
(-.f64 (+.f64 1 (*.f64 eps (fma.f64 2 x eps))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 eps eps) 3) (pow.f64 (*.f64 eps (+.f64 x x)) 3)) (+.f64 (*.f64 (*.f64 eps eps) (*.f64 eps eps)) (-.f64 (*.f64 (*.f64 eps (+.f64 x x)) (*.f64 eps (+.f64 x x))) (*.f64 (*.f64 eps eps) (*.f64 eps (+.f64 x x))))))
(/.f64 (-.f64 (*.f64 (*.f64 eps eps) (*.f64 eps eps)) (*.f64 (*.f64 eps (+.f64 x x)) (*.f64 eps (+.f64 x x)))) (-.f64 (*.f64 eps eps) (*.f64 eps (+.f64 x x))))
(/.f64 (*.f64 eps (+.f64 (+.f64 x x) (pow.f64 eps 3))) (fma.f64 eps eps (-.f64 (+.f64 x x) (*.f64 eps (+.f64 x x)))))
(/.f64 (*.f64 eps (-.f64 (*.f64 eps eps) (+.f64 x x))) (+.f64 eps (*.f64 -2 x)))
(/.f64 (*.f64 (+.f64 (+.f64 x x) (pow.f64 eps 3)) eps) (fma.f64 eps eps (-.f64 (+.f64 x x) (*.f64 eps (+.f64 x x)))))
(/.f64 (*.f64 (-.f64 (*.f64 eps eps) (+.f64 x x)) eps) (+.f64 eps (*.f64 -2 x)))
(pow.f64 (*.f64 eps (fma.f64 2 x eps)) 1)
(pow.f64 (cbrt.f64 (*.f64 eps (fma.f64 2 x eps))) 3)
(pow.f64 (pow.f64 (*.f64 eps (fma.f64 2 x eps)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 eps (fma.f64 2 x eps))) 2)
(sqrt.f64 (pow.f64 (*.f64 eps (fma.f64 2 x eps)) 2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 2 x eps)) eps))
(cbrt.f64 (pow.f64 (*.f64 eps (fma.f64 2 x eps)) 3))
(cbrt.f64 (*.f64 (pow.f64 eps 3) (pow.f64 (fma.f64 2 x eps) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 2 x eps) 3) (pow.f64 eps 3)))
(expm1.f64 (log1p.f64 (*.f64 eps (fma.f64 2 x eps))))
(exp.f64 (log.f64 (*.f64 eps (fma.f64 2 x eps))))
(log1p.f64 (expm1.f64 (*.f64 eps (fma.f64 2 x eps))))
(fma.f64 eps eps (*.f64 eps (+.f64 x x)))

simplify58.0ms (1.6%)

Algorithm
egg-herbie
Rules
1068×fma-neg
944×div-sub
888×fma-def
840×times-frac
618×distribute-lft-in
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0851325
1254891
21050887
35638879
Stop Event
node limit
Counts
49 → 43
Calls
Call 1
Inputs
(*.f64 2 (*.f64 eps x))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(pow.f64 eps 2)
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(pow.f64 eps 2)
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(pow.f64 eps 2)
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(*.f64 2 (*.f64 eps x))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(*.f64 2 (*.f64 eps x))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 eps eps) (*.f64 eps (+.f64 x x)))
(+.f64 (*.f64 eps (+.f64 x x)) (*.f64 eps eps))
(+.f64 (*.f64 eps (+.f64 eps x)) (*.f64 eps x))
(+.f64 (*.f64 (+.f64 eps x) eps) (*.f64 x eps))
(+.f64 (*.f64 (*.f64 eps eps) 1) (*.f64 (*.f64 eps (+.f64 x x)) 1))
(-.f64 (+.f64 1 (*.f64 eps (fma.f64 2 x eps))) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 eps eps) 3) (pow.f64 (*.f64 eps (+.f64 x x)) 3)) (+.f64 (*.f64 (*.f64 eps eps) (*.f64 eps eps)) (-.f64 (*.f64 (*.f64 eps (+.f64 x x)) (*.f64 eps (+.f64 x x))) (*.f64 (*.f64 eps eps) (*.f64 eps (+.f64 x x))))))
(/.f64 (-.f64 (*.f64 (*.f64 eps eps) (*.f64 eps eps)) (*.f64 (*.f64 eps (+.f64 x x)) (*.f64 eps (+.f64 x x)))) (-.f64 (*.f64 eps eps) (*.f64 eps (+.f64 x x))))
(/.f64 (*.f64 eps (+.f64 (+.f64 x x) (pow.f64 eps 3))) (fma.f64 eps eps (-.f64 (+.f64 x x) (*.f64 eps (+.f64 x x)))))
(/.f64 (*.f64 eps (-.f64 (*.f64 eps eps) (+.f64 x x))) (+.f64 eps (*.f64 -2 x)))
(/.f64 (*.f64 (+.f64 (+.f64 x x) (pow.f64 eps 3)) eps) (fma.f64 eps eps (-.f64 (+.f64 x x) (*.f64 eps (+.f64 x x)))))
(/.f64 (*.f64 (-.f64 (*.f64 eps eps) (+.f64 x x)) eps) (+.f64 eps (*.f64 -2 x)))
(pow.f64 (*.f64 eps (fma.f64 2 x eps)) 1)
(pow.f64 (cbrt.f64 (*.f64 eps (fma.f64 2 x eps))) 3)
(pow.f64 (pow.f64 (*.f64 eps (fma.f64 2 x eps)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 eps (fma.f64 2 x eps))) 2)
(sqrt.f64 (pow.f64 (*.f64 eps (fma.f64 2 x eps)) 2))
(log.f64 (pow.f64 (exp.f64 (fma.f64 2 x eps)) eps))
(cbrt.f64 (pow.f64 (*.f64 eps (fma.f64 2 x eps)) 3))
(cbrt.f64 (*.f64 (pow.f64 eps 3) (pow.f64 (fma.f64 2 x eps) 3)))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 2 x eps) 3) (pow.f64 eps 3)))
(expm1.f64 (log1p.f64 (*.f64 eps (fma.f64 2 x eps))))
(exp.f64 (log.f64 (*.f64 eps (fma.f64 2 x eps))))
(log1p.f64 (expm1.f64 (*.f64 eps (fma.f64 2 x eps))))
(fma.f64 eps eps (*.f64 eps (+.f64 x x)))
Outputs
(*.f64 2 (*.f64 eps x))
(*.f64 eps (+.f64 x x))
(*.f64 x (+.f64 eps eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(pow.f64 eps 2)
(*.f64 eps eps)
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(pow.f64 eps 2)
(*.f64 eps eps)
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(pow.f64 eps 2)
(*.f64 eps eps)
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(*.f64 2 (*.f64 eps x))
(*.f64 eps (+.f64 x x))
(*.f64 x (+.f64 eps eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(*.f64 2 (*.f64 eps x))
(*.f64 eps (+.f64 x x))
(*.f64 x (+.f64 eps eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (pow.f64 eps 2) (*.f64 2 (*.f64 eps x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (*.f64 eps eps) (*.f64 eps (+.f64 x x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (*.f64 eps (+.f64 x x)) (*.f64 eps eps))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (*.f64 eps (+.f64 eps x)) (*.f64 eps x))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (*.f64 (+.f64 eps x) eps) (*.f64 x eps))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(+.f64 (*.f64 (*.f64 eps eps) 1) (*.f64 (*.f64 eps (+.f64 x x)) 1))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(-.f64 (+.f64 1 (*.f64 eps (fma.f64 2 x eps))) 1)
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(/.f64 (+.f64 (pow.f64 (*.f64 eps eps) 3) (pow.f64 (*.f64 eps (+.f64 x x)) 3)) (+.f64 (*.f64 (*.f64 eps eps) (*.f64 eps eps)) (-.f64 (*.f64 (*.f64 eps (+.f64 x x)) (*.f64 eps (+.f64 x x))) (*.f64 (*.f64 eps eps) (*.f64 eps (+.f64 x x))))))
(/.f64 (+.f64 (pow.f64 (*.f64 eps eps) 3) (pow.f64 (*.f64 eps (+.f64 x x)) 3)) (+.f64 (*.f64 eps (pow.f64 eps 3)) (*.f64 (*.f64 eps (+.f64 x x)) (-.f64 (*.f64 eps (+.f64 x x)) (*.f64 eps eps)))))
(/.f64 (+.f64 (pow.f64 eps 6) (pow.f64 (*.f64 eps (+.f64 x x)) 3)) (fma.f64 (*.f64 eps (+.f64 x x)) (*.f64 eps (-.f64 (+.f64 x x) eps)) (pow.f64 eps 4)))
(/.f64 (+.f64 (pow.f64 eps 6) (*.f64 8 (pow.f64 (*.f64 eps x) 3))) (fma.f64 eps (*.f64 (*.f64 x (+.f64 eps eps)) (+.f64 x (-.f64 x eps))) (pow.f64 eps 4)))
(/.f64 (-.f64 (*.f64 (*.f64 eps eps) (*.f64 eps eps)) (*.f64 (*.f64 eps (+.f64 x x)) (*.f64 eps (+.f64 x x)))) (-.f64 (*.f64 eps eps) (*.f64 eps (+.f64 x x))))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(/.f64 (*.f64 eps (+.f64 (+.f64 x x) (pow.f64 eps 3))) (fma.f64 eps eps (-.f64 (+.f64 x x) (*.f64 eps (+.f64 x x)))))
(/.f64 (*.f64 eps (+.f64 x (+.f64 x (pow.f64 eps 3)))) (fma.f64 eps eps (+.f64 x (-.f64 x (*.f64 eps (+.f64 x x))))))
(*.f64 (/.f64 eps (fma.f64 eps eps (fma.f64 2 x (*.f64 eps (*.f64 x -2))))) (fma.f64 2 x (pow.f64 eps 3)))
(*.f64 eps (/.f64 (fma.f64 2 x (pow.f64 eps 3)) (+.f64 (+.f64 x x) (*.f64 eps (fma.f64 x -2 eps)))))
(*.f64 eps (/.f64 (fma.f64 2 x (pow.f64 eps 3)) (fma.f64 2 x (*.f64 eps (fma.f64 x -2 eps)))))
(/.f64 (*.f64 eps (-.f64 (*.f64 eps eps) (+.f64 x x))) (+.f64 eps (*.f64 -2 x)))
(/.f64 eps (/.f64 (+.f64 eps (*.f64 x -2)) (-.f64 (*.f64 eps eps) (+.f64 x x))))
(*.f64 (/.f64 eps (fma.f64 x -2 eps)) (fma.f64 eps eps (*.f64 x -2)))
(*.f64 (fma.f64 eps eps (*.f64 x -2)) (/.f64 eps (fma.f64 x -2 eps)))
(/.f64 (*.f64 (+.f64 (+.f64 x x) (pow.f64 eps 3)) eps) (fma.f64 eps eps (-.f64 (+.f64 x x) (*.f64 eps (+.f64 x x)))))
(/.f64 (*.f64 eps (+.f64 x (+.f64 x (pow.f64 eps 3)))) (fma.f64 eps eps (+.f64 x (-.f64 x (*.f64 eps (+.f64 x x))))))
(*.f64 (/.f64 eps (fma.f64 eps eps (fma.f64 2 x (*.f64 eps (*.f64 x -2))))) (fma.f64 2 x (pow.f64 eps 3)))
(*.f64 eps (/.f64 (fma.f64 2 x (pow.f64 eps 3)) (+.f64 (+.f64 x x) (*.f64 eps (fma.f64 x -2 eps)))))
(*.f64 eps (/.f64 (fma.f64 2 x (pow.f64 eps 3)) (fma.f64 2 x (*.f64 eps (fma.f64 x -2 eps)))))
(/.f64 (*.f64 (-.f64 (*.f64 eps eps) (+.f64 x x)) eps) (+.f64 eps (*.f64 -2 x)))
(/.f64 eps (/.f64 (+.f64 eps (*.f64 x -2)) (-.f64 (*.f64 eps eps) (+.f64 x x))))
(*.f64 (/.f64 eps (fma.f64 x -2 eps)) (fma.f64 eps eps (*.f64 x -2)))
(*.f64 (fma.f64 eps eps (*.f64 x -2)) (/.f64 eps (fma.f64 x -2 eps)))
(pow.f64 (*.f64 eps (fma.f64 2 x eps)) 1)
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(pow.f64 (cbrt.f64 (*.f64 eps (fma.f64 2 x eps))) 3)
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(pow.f64 (pow.f64 (*.f64 eps (fma.f64 2 x eps)) 3) 1/3)
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(pow.f64 (sqrt.f64 (*.f64 eps (fma.f64 2 x eps))) 2)
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(sqrt.f64 (pow.f64 (*.f64 eps (fma.f64 2 x eps)) 2))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(log.f64 (pow.f64 (exp.f64 (fma.f64 2 x eps)) eps))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(cbrt.f64 (pow.f64 (*.f64 eps (fma.f64 2 x eps)) 3))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(cbrt.f64 (*.f64 (pow.f64 eps 3) (pow.f64 (fma.f64 2 x eps) 3)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 2 x eps) 3) (pow.f64 eps 3)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(expm1.f64 (log1p.f64 (*.f64 eps (fma.f64 2 x eps))))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(exp.f64 (log.f64 (*.f64 eps (fma.f64 2 x eps))))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(log1p.f64 (expm1.f64 (*.f64 eps (fma.f64 2 x eps))))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(fma.f64 eps eps (*.f64 eps (+.f64 x x)))
(+.f64 (*.f64 2 (*.f64 eps x)) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))

eval8.0ms (0.2%)

Compiler

Compiled 579 to 251 computations (56.6% saved)

prune15.0ms (0.4%)

Pruning

5 alts after pruning (0 fresh and 5 done)

PrunedKeptTotal
New43043
Fresh000
Picked011
Done044
Total43548
Accurracy
100.0%
Counts
48 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
100.0%
(+.f64 (*.f64 (*.f64 2 x) eps) (*.f64 eps eps))
100.0%
(*.f64 eps (+.f64 eps (+.f64 x x)))
63.7%
(*.f64 eps (*.f64 2 x))
72.9%
(*.f64 eps eps)
Compiler

Compiled 42 to 25 computations (40.5% saved)

regimes51.0ms (1.4%)

Counts
7 → 1
Calls
Call 1
Inputs
(*.f64 eps eps)
(*.f64 eps (*.f64 2 x))
(*.f64 eps (+.f64 eps (+.f64 x x)))
(+.f64 (*.f64 (*.f64 2 x) eps) (*.f64 eps eps))
(*.f64 eps (fma.f64 2 x eps))
(fma.f64 eps eps (*.f64 (+.f64 x x) eps))
(-.f64 (pow.f64 (+.f64 x eps) 2) (pow.f64 x 2))
Outputs
(*.f64 eps (+.f64 eps (+.f64 x x)))
Calls

3 calls:

42.0ms
eps
5.0ms
x
3.0ms
(-.f64 (pow.f64 (+.f64 x eps) 2) (pow.f64 x 2))
Results
AccuracySegmentsBranch
100.0%1x
100.0%1eps
100.0%1(-.f64 (pow.f64 (+.f64 x eps) 2) (pow.f64 x 2))
Compiler

Compiled 66 to 36 computations (45.5% saved)

regimes25.0ms (0.7%)

Accuracy

Total -33.6b remaining (-631.2%)

Threshold costs -33.6b (-631.2%)

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

2 calls:

13.0ms
eps
11.0ms
x
Results
AccuracySegmentsBranch
91.7%3x
86.9%5eps
Compiler

Compiled 16 to 10 computations (37.5% saved)

bsearch37.0ms (1%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
17.0ms
8.771185963833755e-82
7.459362577548398e-81
20.0ms
-1.4221300683090392e-98
-1.4900989696625029e-99
Results
13.0ms68×body512valid
11.0ms94×body256valid
8.0ms30×body1024valid
Compiler

Compiled 184 to 132 computations (28.3% saved)

simplify5.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative
+-commutative
if-if-or-not
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02071
12971
Stop Event
done
saturated
Calls
Call 1
Inputs
(*.f64 eps (+.f64 eps (+.f64 x x)))
(if (<=.f64 x -2924367647388653/307828173409331868845930000782371982852185463050511302093346042220669701339821957901673955116288403443801781174272) (*.f64 eps (*.f64 2 x)) (if (<=.f64 x 1922388332328819/2135987035920910082395021706169552114602704522356652769947041607822219725780640550022962086936576) (*.f64 eps eps) (*.f64 eps (*.f64 2 x))))
(*.f64 eps eps)
Outputs
(*.f64 eps (+.f64 eps (+.f64 x x)))
(if (<=.f64 x -2924367647388653/307828173409331868845930000782371982852185463050511302093346042220669701339821957901673955116288403443801781174272) (*.f64 eps (*.f64 2 x)) (if (<=.f64 x 1922388332328819/2135987035920910082395021706169552114602704522356652769947041607822219725780640550022962086936576) (*.f64 eps eps) (*.f64 eps (*.f64 2 x))))
(if (or (<=.f64 x -2924367647388653/307828173409331868845930000782371982852185463050511302093346042220669701339821957901673955116288403443801781174272) (not (<=.f64 x 1922388332328819/2135987035920910082395021706169552114602704522356652769947041607822219725780640550022962086936576))) (*.f64 eps (*.f64 x 2)) (*.f64 eps eps))
(*.f64 eps eps)
Compiler

Compiled 33 to 21 computations (36.4% saved)

soundness621.0ms (16.8%)

Rules
1586×pow1
1576×fma-def
1576×fma-def
1472×pow1
1462×add-exp-log
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0925
12125
25225
316425
465215
5289915
0815
115915
2181815
01992796
15322274
214292158
364402158
0821
116619
2223119
043525
1104525
2334525
32351525
45603525
043525
1104525
2334525
32351525
45603525
Stop Event
node limit
node limit
node limit
node limit
node limit
node limit
Compiler

Compiled 253 to 108 computations (57.3% saved)

end25.0ms (0.7%)

Compiler

Compiled 29 to 16 computations (44.8% saved)

Profiling

Loading profile data...