\frac{\left(\left(\frac{\left(1\right)}{\left(\frac{x}{\left(1\right)}\right)}\right) - \left(\frac{\left(2\right)}{x}\right)\right)}{\left(\frac{\left(1\right)}{\left(x - \left(1\right)\right)}\right)}\frac{1}{x + 1} - \left(\frac{2}{x} - \frac{1}{x - 1}\right)double f(double x) {
double r1782698 = 1.0;
double r1782699 = /* ERROR: no posit support in C */;
double r1782700 = x;
double r1782701 = r1782700 + r1782699;
double r1782702 = r1782699 / r1782701;
double r1782703 = 2.0;
double r1782704 = /* ERROR: no posit support in C */;
double r1782705 = r1782704 / r1782700;
double r1782706 = r1782702 - r1782705;
double r1782707 = r1782700 - r1782699;
double r1782708 = r1782699 / r1782707;
double r1782709 = r1782706 + r1782708;
return r1782709;
}
double f(double x) {
double r1782710 = 1.0;
double r1782711 = x;
double r1782712 = r1782711 + r1782710;
double r1782713 = r1782710 / r1782712;
double r1782714 = 2.0;
double r1782715 = r1782714 / r1782711;
double r1782716 = r1782711 - r1782710;
double r1782717 = r1782710 / r1782716;
double r1782718 = r1782715 - r1782717;
double r1782719 = r1782713 - r1782718;
return r1782719;
}



Bits error versus x
Initial program 1.0
rmApplied associate-+l-1.0
Final simplification1.0
herbie shell --seed 2019124 +o rules:numerics
(FPCore (x)
:name "3frac (problem 3.3.3)"
(+.p16 (-.p16 (/.p16 (real->posit16 1) (+.p16 x (real->posit16 1))) (/.p16 (real->posit16 2) x)) (/.p16 (real->posit16 1) (-.p16 x (real->posit16 1)))))