\frac{\left(\left(-b\right) - \left(\sqrt{\left(\left(b \cdot b\right) - \left(4 \cdot \left(a \cdot c\right)\right)\right)}\right)\right)}{\left(2 \cdot a\right)}\frac{\left(\left(-b\right) - \left(\sqrt{\left(\left(\mathsf{qms}\left(\left(\left(b \cdot b\right)\right), \left(4 \cdot a\right), c\right)\right)\right)}\right)\right)}{\left(2 \cdot a\right)}double f(double a, double b, double c) {
double r2051868 = b;
double r2051869 = -r2051868;
double r2051870 = r2051868 * r2051868;
double r2051871 = /* ERROR: no support for value #<cpointer:posit16> in C */;
double r2051872 = a;
double r2051873 = c;
double r2051874 = r2051872 * r2051873;
double r2051875 = r2051871 * r2051874;
double r2051876 = r2051870 - r2051875;
double r2051877 = sqrt(r2051876);
double r2051878 = r2051869 - r2051877;
double r2051879 = /* ERROR: no support for value #<cpointer:posit16> in C */;
double r2051880 = r2051879 * r2051872;
double r2051881 = r2051878 / r2051880;
return r2051881;
}
double f(double a, double b, double c) {
double r2051882 = b;
double r2051883 = -r2051882;
double r2051884 = r2051882 * r2051882;
double r2051885 = /*Error: no posit support in C */;
double r2051886 = /* ERROR: no support for value #<cpointer:posit16> in C */;
double r2051887 = a;
double r2051888 = r2051886 * r2051887;
double r2051889 = c;
double r2051890 = /*Error: no posit support in C */;
double r2051891 = /*Error: no posit support in C */;
double r2051892 = sqrt(r2051891);
double r2051893 = r2051883 - r2051892;
double r2051894 = /* ERROR: no support for value #<cpointer:posit16> in C */;
double r2051895 = r2051894 * r2051887;
double r2051896 = r2051893 / r2051895;
return r2051896;
}



Bits error versus a



Bits error versus b



Bits error versus c
Initial program 1.6
rmApplied associate-*r*1.5
rmApplied introduce-quire1.5
Applied insert-quire-fdp-sub1.5
Final simplification1.5
herbie shell --seed 0
(FPCore (a b c)
:name "quadm (p42, negative)"
(/.p16 (-.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 #<cpointer:posit16> (*.p16 a c))))) (*.p16 #<cpointer:posit16> a)))