\left({\left(a \cdot a + b \cdot b\right)}^{2} + 4 \cdot \left(b \cdot b\right)\right) - 1\left(\sqrt[3]{\sqrt{\left(b \cdot b\right) \cdot 4 + {\left(a \cdot a + b \cdot b\right)}^{2}}} \cdot \left(\sqrt[3]{\left(b \cdot b\right) \cdot 4 + {\left(a \cdot a + b \cdot b\right)}^{2}} \cdot \sqrt[3]{\left(\sqrt[3]{\sqrt{\left(b \cdot b\right) \cdot 4 + {\left(a \cdot a + b \cdot b\right)}^{2}}} \cdot \sqrt[3]{\sqrt{\left(b \cdot b\right) \cdot 4 + {\left(a \cdot a + b \cdot b\right)}^{2}}}\right) \cdot \sqrt[3]{\sqrt{\left(b \cdot b\right) \cdot 4 + {\left(a \cdot a + b \cdot b\right)}^{2}}}}\right)\right) \cdot \left(\sqrt{\sqrt[3]{\left(b \cdot b\right) \cdot 4 + {\left(a \cdot a + b \cdot b\right)}^{2}}} \cdot \sqrt{\sqrt[3]{\left(b \cdot b\right) \cdot 4 + {\left(a \cdot a + b \cdot b\right)}^{2}}}\right) - 1double f(double a, double b) {
double r13933082 = a;
double r13933083 = r13933082 * r13933082;
double r13933084 = b;
double r13933085 = r13933084 * r13933084;
double r13933086 = r13933083 + r13933085;
double r13933087 = 2.0;
double r13933088 = pow(r13933086, r13933087);
double r13933089 = 4.0;
double r13933090 = r13933089 * r13933085;
double r13933091 = r13933088 + r13933090;
double r13933092 = 1.0;
double r13933093 = r13933091 - r13933092;
return r13933093;
}
double f(double a, double b) {
double r13933094 = b;
double r13933095 = r13933094 * r13933094;
double r13933096 = 4.0;
double r13933097 = r13933095 * r13933096;
double r13933098 = a;
double r13933099 = r13933098 * r13933098;
double r13933100 = r13933099 + r13933095;
double r13933101 = 2.0;
double r13933102 = pow(r13933100, r13933101);
double r13933103 = r13933097 + r13933102;
double r13933104 = sqrt(r13933103);
double r13933105 = cbrt(r13933104);
double r13933106 = cbrt(r13933103);
double r13933107 = r13933105 * r13933105;
double r13933108 = r13933107 * r13933105;
double r13933109 = cbrt(r13933108);
double r13933110 = r13933106 * r13933109;
double r13933111 = r13933105 * r13933110;
double r13933112 = sqrt(r13933106);
double r13933113 = r13933112 * r13933112;
double r13933114 = r13933111 * r13933113;
double r13933115 = 1.0;
double r13933116 = r13933114 - r13933115;
return r13933116;
}



Bits error versus a



Bits error versus b
Results
Initial program 0.2
rmApplied add-cube-cbrt0.5
rmApplied add-sqr-sqrt0.5
Applied cbrt-prod0.5
Applied associate-*r*0.5
rmApplied add-cube-cbrt0.5
rmApplied add-sqr-sqrt0.5
Final simplification0.5
herbie shell --seed 2019171
(FPCore (a b)
:name "Bouland and Aaronson, Equation (26)"
(- (+ (pow (+ (* a a) (* b b)) 2.0) (* 4.0 (* b b))) 1.0))