\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({\left(a \cdot a + b \cdot b\right)}^{2} + \left(\left(a \cdot a\right) \cdot \left(1 + a\right)\right) \cdot 4\right) + \left(\left(b \cdot b\right) \cdot \left(1 - 3 \cdot a\right)\right) \cdot 4\right) - 1double f(double a, double b) {
double r132139 = a;
double r132140 = r132139 * r132139;
double r132141 = b;
double r132142 = r132141 * r132141;
double r132143 = r132140 + r132142;
double r132144 = 2.0;
double r132145 = pow(r132143, r132144);
double r132146 = 4.0;
double r132147 = 1.0;
double r132148 = r132147 + r132139;
double r132149 = r132140 * r132148;
double r132150 = 3.0;
double r132151 = r132150 * r132139;
double r132152 = r132147 - r132151;
double r132153 = r132142 * r132152;
double r132154 = r132149 + r132153;
double r132155 = r132146 * r132154;
double r132156 = r132145 + r132155;
double r132157 = r132156 - r132147;
return r132157;
}
double f(double a, double b) {
double r132158 = a;
double r132159 = r132158 * r132158;
double r132160 = b;
double r132161 = r132160 * r132160;
double r132162 = r132159 + r132161;
double r132163 = 2.0;
double r132164 = pow(r132162, r132163);
double r132165 = 1.0;
double r132166 = r132165 + r132158;
double r132167 = r132159 * r132166;
double r132168 = 4.0;
double r132169 = r132167 * r132168;
double r132170 = r132164 + r132169;
double r132171 = 3.0;
double r132172 = r132171 * r132158;
double r132173 = r132165 - r132172;
double r132174 = r132161 * r132173;
double r132175 = r132174 * r132168;
double r132176 = r132170 + r132175;
double r132177 = r132176 - r132165;
return r132177;
}



Bits error versus a



Bits error versus b
Results
Initial program 0.2
rmApplied distribute-rgt-in0.2
Applied associate-+r+0.2
Final simplification0.2
herbie shell --seed 2020064
(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))