Average Error: 0.2 → 0.2
Time: 24.2s
Precision: 64
\[\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(3 + a\right)\right)\right) - 1\]
\[\left(-1 + \left(\sqrt{\left(b \cdot b + a \cdot a\right) + \left(4 - 4 \cdot a\right)} \cdot \left(a \cdot a\right)\right) \cdot \sqrt{\left(b \cdot b + a \cdot a\right) + \left(4 - 4 \cdot a\right)}\right) + \sqrt{\left(12 + 4 \cdot a\right) + \left(b \cdot b + a \cdot a\right)} \cdot \left(\left(\sqrt{\sqrt{\left(12 + 4 \cdot a\right) + \left(b \cdot b + a \cdot a\right)}} \cdot b\right) \cdot \left(\sqrt{\sqrt{\left(12 + 4 \cdot a\right) + \left(b \cdot b + a \cdot a\right)}} \cdot b\right)\right)\]
\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(3 + a\right)\right)\right) - 1
\left(-1 + \left(\sqrt{\left(b \cdot b + a \cdot a\right) + \left(4 - 4 \cdot a\right)} \cdot \left(a \cdot a\right)\right) \cdot \sqrt{\left(b \cdot b + a \cdot a\right) + \left(4 - 4 \cdot a\right)}\right) + \sqrt{\left(12 + 4 \cdot a\right) + \left(b \cdot b + a \cdot a\right)} \cdot \left(\left(\sqrt{\sqrt{\left(12 + 4 \cdot a\right) + \left(b \cdot b + a \cdot a\right)}} \cdot b\right) \cdot \left(\sqrt{\sqrt{\left(12 + 4 \cdot a\right) + \left(b \cdot b + a \cdot a\right)}} \cdot b\right)\right)
double f(double a, double b) {
        double r12650291 = a;
        double r12650292 = r12650291 * r12650291;
        double r12650293 = b;
        double r12650294 = r12650293 * r12650293;
        double r12650295 = r12650292 + r12650294;
        double r12650296 = 2.0;
        double r12650297 = pow(r12650295, r12650296);
        double r12650298 = 4.0;
        double r12650299 = 1.0;
        double r12650300 = r12650299 - r12650291;
        double r12650301 = r12650292 * r12650300;
        double r12650302 = 3.0;
        double r12650303 = r12650302 + r12650291;
        double r12650304 = r12650294 * r12650303;
        double r12650305 = r12650301 + r12650304;
        double r12650306 = r12650298 * r12650305;
        double r12650307 = r12650297 + r12650306;
        double r12650308 = r12650307 - r12650299;
        return r12650308;
}

double f(double a, double b) {
        double r12650309 = -1.0;
        double r12650310 = b;
        double r12650311 = r12650310 * r12650310;
        double r12650312 = a;
        double r12650313 = r12650312 * r12650312;
        double r12650314 = r12650311 + r12650313;
        double r12650315 = 4.0;
        double r12650316 = r12650315 * r12650312;
        double r12650317 = r12650315 - r12650316;
        double r12650318 = r12650314 + r12650317;
        double r12650319 = sqrt(r12650318);
        double r12650320 = r12650319 * r12650313;
        double r12650321 = r12650320 * r12650319;
        double r12650322 = r12650309 + r12650321;
        double r12650323 = 12.0;
        double r12650324 = r12650323 + r12650316;
        double r12650325 = r12650324 + r12650314;
        double r12650326 = sqrt(r12650325);
        double r12650327 = sqrt(r12650326);
        double r12650328 = r12650327 * r12650310;
        double r12650329 = r12650328 * r12650328;
        double r12650330 = r12650326 * r12650329;
        double r12650331 = r12650322 + r12650330;
        return r12650331;
}

Error

Bits error versus a

Bits error versus b

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.2

    \[\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(3 + a\right)\right)\right) - 1\]
  2. Simplified0.2

    \[\leadsto \color{blue}{\left(b \cdot b\right) \cdot \left(\left(a \cdot a + b \cdot b\right) + \left(12 + 4 \cdot a\right)\right) + \left(\left(a \cdot a\right) \cdot \left(\left(a \cdot a + b \cdot b\right) + \left(4 - 4 \cdot a\right)\right) + -1\right)}\]
  3. Using strategy rm
  4. Applied add-sqr-sqrt0.2

    \[\leadsto \left(b \cdot b\right) \cdot \left(\left(a \cdot a + b \cdot b\right) + \left(12 + 4 \cdot a\right)\right) + \left(\left(a \cdot a\right) \cdot \color{blue}{\left(\sqrt{\left(a \cdot a + b \cdot b\right) + \left(4 - 4 \cdot a\right)} \cdot \sqrt{\left(a \cdot a + b \cdot b\right) + \left(4 - 4 \cdot a\right)}\right)} + -1\right)\]
  5. Applied associate-*r*0.2

    \[\leadsto \left(b \cdot b\right) \cdot \left(\left(a \cdot a + b \cdot b\right) + \left(12 + 4 \cdot a\right)\right) + \left(\color{blue}{\left(\left(a \cdot a\right) \cdot \sqrt{\left(a \cdot a + b \cdot b\right) + \left(4 - 4 \cdot a\right)}\right) \cdot \sqrt{\left(a \cdot a + b \cdot b\right) + \left(4 - 4 \cdot a\right)}} + -1\right)\]
  6. Using strategy rm
  7. Applied add-sqr-sqrt0.2

    \[\leadsto \left(b \cdot b\right) \cdot \color{blue}{\left(\sqrt{\left(a \cdot a + b \cdot b\right) + \left(12 + 4 \cdot a\right)} \cdot \sqrt{\left(a \cdot a + b \cdot b\right) + \left(12 + 4 \cdot a\right)}\right)} + \left(\left(\left(a \cdot a\right) \cdot \sqrt{\left(a \cdot a + b \cdot b\right) + \left(4 - 4 \cdot a\right)}\right) \cdot \sqrt{\left(a \cdot a + b \cdot b\right) + \left(4 - 4 \cdot a\right)} + -1\right)\]
  8. Applied associate-*r*0.1

    \[\leadsto \color{blue}{\left(\left(b \cdot b\right) \cdot \sqrt{\left(a \cdot a + b \cdot b\right) + \left(12 + 4 \cdot a\right)}\right) \cdot \sqrt{\left(a \cdot a + b \cdot b\right) + \left(12 + 4 \cdot a\right)}} + \left(\left(\left(a \cdot a\right) \cdot \sqrt{\left(a \cdot a + b \cdot b\right) + \left(4 - 4 \cdot a\right)}\right) \cdot \sqrt{\left(a \cdot a + b \cdot b\right) + \left(4 - 4 \cdot a\right)} + -1\right)\]
  9. Using strategy rm
  10. Applied add-sqr-sqrt0.2

    \[\leadsto \left(\left(b \cdot b\right) \cdot \color{blue}{\left(\sqrt{\sqrt{\left(a \cdot a + b \cdot b\right) + \left(12 + 4 \cdot a\right)}} \cdot \sqrt{\sqrt{\left(a \cdot a + b \cdot b\right) + \left(12 + 4 \cdot a\right)}}\right)}\right) \cdot \sqrt{\left(a \cdot a + b \cdot b\right) + \left(12 + 4 \cdot a\right)} + \left(\left(\left(a \cdot a\right) \cdot \sqrt{\left(a \cdot a + b \cdot b\right) + \left(4 - 4 \cdot a\right)}\right) \cdot \sqrt{\left(a \cdot a + b \cdot b\right) + \left(4 - 4 \cdot a\right)} + -1\right)\]
  11. Applied unswap-sqr0.2

    \[\leadsto \color{blue}{\left(\left(b \cdot \sqrt{\sqrt{\left(a \cdot a + b \cdot b\right) + \left(12 + 4 \cdot a\right)}}\right) \cdot \left(b \cdot \sqrt{\sqrt{\left(a \cdot a + b \cdot b\right) + \left(12 + 4 \cdot a\right)}}\right)\right)} \cdot \sqrt{\left(a \cdot a + b \cdot b\right) + \left(12 + 4 \cdot a\right)} + \left(\left(\left(a \cdot a\right) \cdot \sqrt{\left(a \cdot a + b \cdot b\right) + \left(4 - 4 \cdot a\right)}\right) \cdot \sqrt{\left(a \cdot a + b \cdot b\right) + \left(4 - 4 \cdot a\right)} + -1\right)\]
  12. Final simplification0.2

    \[\leadsto \left(-1 + \left(\sqrt{\left(b \cdot b + a \cdot a\right) + \left(4 - 4 \cdot a\right)} \cdot \left(a \cdot a\right)\right) \cdot \sqrt{\left(b \cdot b + a \cdot a\right) + \left(4 - 4 \cdot a\right)}\right) + \sqrt{\left(12 + 4 \cdot a\right) + \left(b \cdot b + a \cdot a\right)} \cdot \left(\left(\sqrt{\sqrt{\left(12 + 4 \cdot a\right) + \left(b \cdot b + a \cdot a\right)}} \cdot b\right) \cdot \left(\sqrt{\sqrt{\left(12 + 4 \cdot a\right) + \left(b \cdot b + a \cdot a\right)}} \cdot b\right)\right)\]

Reproduce

herbie shell --seed 2019149 
(FPCore (a b)
  :name "Bouland and Aaronson, Equation (24)"
  (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1))