\left({\left(a \cdot a + b \cdot b\right)}^{2} + 4 \cdot \left(b \cdot b\right)\right) - 1\left({\left(\sqrt{b \cdot b + a \cdot a}\right)}^{4} + -1\right) - -4 \cdot \left(b \cdot b\right)double f(double a, double b) {
double r7645554 = a;
double r7645555 = r7645554 * r7645554;
double r7645556 = b;
double r7645557 = r7645556 * r7645556;
double r7645558 = r7645555 + r7645557;
double r7645559 = 2.0;
double r7645560 = pow(r7645558, r7645559);
double r7645561 = 4.0;
double r7645562 = r7645561 * r7645557;
double r7645563 = r7645560 + r7645562;
double r7645564 = 1.0;
double r7645565 = r7645563 - r7645564;
return r7645565;
}
double f(double a, double b) {
double r7645566 = b;
double r7645567 = r7645566 * r7645566;
double r7645568 = a;
double r7645569 = r7645568 * r7645568;
double r7645570 = r7645567 + r7645569;
double r7645571 = sqrt(r7645570);
double r7645572 = 4.0;
double r7645573 = pow(r7645571, r7645572);
double r7645574 = -1.0;
double r7645575 = r7645573 + r7645574;
double r7645576 = -4.0;
double r7645577 = r7645576 * r7645567;
double r7645578 = r7645575 - r7645577;
return r7645578;
}



Bits error versus a



Bits error versus b
Results
Initial program 0.2
Simplified0.2
rmApplied add-sqr-sqrt0.2
Applied associate-*r*0.1
rmApplied pow10.1
Applied add-sqr-sqrt0.1
Applied pow30.1
Applied pow-prod-up0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2019168
(FPCore (a b)
:name "Bouland and Aaronson, Equation (26)"
(- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (* b b))) 1))