\left(\sqrt{\left(\frac{x}{\left(1\right)}\right)}\right) - \left(\sqrt{x}\right)\frac{x + \left(1 - x\right)}{\sqrt{x + 1} + \sqrt{x}}double f(double x) {
double r2638947 = x;
double r2638948 = 1.0;
double r2638949 = /* ERROR: no posit support in C */;
double r2638950 = r2638947 + r2638949;
double r2638951 = sqrt(r2638950);
double r2638952 = sqrt(r2638947);
double r2638953 = r2638951 - r2638952;
return r2638953;
}
double f(double x) {
double r2638954 = x;
double r2638955 = 1.0;
double r2638956 = r2638955 - r2638954;
double r2638957 = r2638954 + r2638956;
double r2638958 = r2638954 + r2638955;
double r2638959 = sqrt(r2638958);
double r2638960 = sqrt(r2638954);
double r2638961 = r2638959 + r2638960;
double r2638962 = r2638957 / r2638961;
return r2638962;
}



Bits error versus x
Initial program 0.8
rmApplied p16-flip--0.6
rmApplied sqrt-sqrd.p160.5
rmApplied sqrt-sqrd.p160.4
rmApplied associate--l+0.3
Final simplification0.3
herbie shell --seed 2019119
(FPCore (x)
:name "2sqrt (example 3.1)"
(-.p16 (sqrt.p16 (+.p16 x (real->posit16 1))) (sqrt.p16 x)))