\left({\left(a \cdot a + b \cdot b\right)}^{2} + 4 \cdot \left(\left(a \cdot a\right) \cdot \left(1 + a\right) + \left(b \cdot b\right) \cdot \left(1 - 3 \cdot a\right)\right)\right) - 1\left({\left(\sqrt[3]{a \cdot a + b \cdot b} \cdot \sqrt[3]{a \cdot a + b \cdot b}\right)}^{2} \cdot {\left(\sqrt[3]{\sqrt{a \cdot a + b \cdot b}} \cdot \sqrt[3]{\sqrt{a \cdot a + b \cdot b}}\right)}^{2} + 4 \cdot \left(\left(a \cdot a\right) \cdot \left(1 + a\right) + \left(b \cdot b\right) \cdot \left(1 - 3 \cdot a\right)\right)\right) - 1double f(double a, double b) {
double r165102 = a;
double r165103 = r165102 * r165102;
double r165104 = b;
double r165105 = r165104 * r165104;
double r165106 = r165103 + r165105;
double r165107 = 2.0;
double r165108 = pow(r165106, r165107);
double r165109 = 4.0;
double r165110 = 1.0;
double r165111 = r165110 + r165102;
double r165112 = r165103 * r165111;
double r165113 = 3.0;
double r165114 = r165113 * r165102;
double r165115 = r165110 - r165114;
double r165116 = r165105 * r165115;
double r165117 = r165112 + r165116;
double r165118 = r165109 * r165117;
double r165119 = r165108 + r165118;
double r165120 = r165119 - r165110;
return r165120;
}
double f(double a, double b) {
double r165121 = a;
double r165122 = r165121 * r165121;
double r165123 = b;
double r165124 = r165123 * r165123;
double r165125 = r165122 + r165124;
double r165126 = cbrt(r165125);
double r165127 = r165126 * r165126;
double r165128 = 2.0;
double r165129 = pow(r165127, r165128);
double r165130 = sqrt(r165125);
double r165131 = cbrt(r165130);
double r165132 = r165131 * r165131;
double r165133 = pow(r165132, r165128);
double r165134 = r165129 * r165133;
double r165135 = 4.0;
double r165136 = 1.0;
double r165137 = r165136 + r165121;
double r165138 = r165122 * r165137;
double r165139 = 3.0;
double r165140 = r165139 * r165121;
double r165141 = r165136 - r165140;
double r165142 = r165124 * r165141;
double r165143 = r165138 + r165142;
double r165144 = r165135 * r165143;
double r165145 = r165134 + r165144;
double r165146 = r165145 - r165136;
return r165146;
}



Bits error versus a



Bits error versus b
Results
Initial program 0.2
rmApplied add-cube-cbrt0.7
Applied unpow-prod-down0.7
rmApplied add-sqr-sqrt0.7
Applied cbrt-prod0.7
Final simplification0.7
herbie shell --seed 2020047
(FPCore (a b)
:name "Bouland and Aaronson, Equation (25)"
:precision binary64
(- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (+ 1 a)) (* (* b b) (- 1 (* 3 a)))))) 1))