\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\frac{1}{\sqrt{k \cdot \left(10 + k\right) + 1}} \cdot \frac{a}{\frac{\sqrt{k \cdot \left(10 + k\right) + 1}}{{k}^{m}}}double f(double a, double k, double m) {
double r141062 = a;
double r141063 = k;
double r141064 = m;
double r141065 = pow(r141063, r141064);
double r141066 = r141062 * r141065;
double r141067 = 1.0;
double r141068 = 10.0;
double r141069 = r141068 * r141063;
double r141070 = r141067 + r141069;
double r141071 = r141063 * r141063;
double r141072 = r141070 + r141071;
double r141073 = r141066 / r141072;
return r141073;
}
double f(double a, double k, double m) {
double r141074 = 1.0;
double r141075 = k;
double r141076 = 10.0;
double r141077 = r141076 + r141075;
double r141078 = r141075 * r141077;
double r141079 = 1.0;
double r141080 = r141078 + r141079;
double r141081 = sqrt(r141080);
double r141082 = r141074 / r141081;
double r141083 = a;
double r141084 = m;
double r141085 = pow(r141075, r141084);
double r141086 = r141081 / r141085;
double r141087 = r141083 / r141086;
double r141088 = r141082 * r141087;
return r141088;
}



Bits error versus a



Bits error versus k



Bits error versus m
Results
Initial program 2.0
Simplified2.0
rmApplied *-un-lft-identity2.0
Applied unpow-prod-down2.0
Applied add-sqr-sqrt2.1
Applied times-frac2.1
Applied *-un-lft-identity2.1
Applied times-frac2.1
Simplified2.1
Final simplification2.1
herbie shell --seed 2019323
(FPCore (a k m)
:name "Falkner and Boettcher, Appendix A"
:precision binary64
(/ (* a (pow k m)) (+ (+ 1 (* 10 k)) (* k k))))