Average Error: 0.2 → 0.0
Time: 16.3s
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(1 - 3 \cdot a\right)\right)\right) - 1\]
\[\left(\left(\left(1 - 3 \cdot a\right) \cdot \left(b \cdot b\right) + \left(a + 1\right) \cdot \left(a \cdot a\right)\right) \cdot 4 + \left(\left({a}^{4} + \left(\left(b \cdot b\right) \cdot \left(a \cdot a\right)\right) \cdot 2\right) + {b}^{4}\right)\right) - 1\]
\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(1 - 3 \cdot a\right) \cdot \left(b \cdot b\right) + \left(a + 1\right) \cdot \left(a \cdot a\right)\right) \cdot 4 + \left(\left({a}^{4} + \left(\left(b \cdot b\right) \cdot \left(a \cdot a\right)\right) \cdot 2\right) + {b}^{4}\right)\right) - 1
double f(double a, double b) {
        double r5187403 = a;
        double r5187404 = r5187403 * r5187403;
        double r5187405 = b;
        double r5187406 = r5187405 * r5187405;
        double r5187407 = r5187404 + r5187406;
        double r5187408 = 2.0;
        double r5187409 = pow(r5187407, r5187408);
        double r5187410 = 4.0;
        double r5187411 = 1.0;
        double r5187412 = r5187411 + r5187403;
        double r5187413 = r5187404 * r5187412;
        double r5187414 = 3.0;
        double r5187415 = r5187414 * r5187403;
        double r5187416 = r5187411 - r5187415;
        double r5187417 = r5187406 * r5187416;
        double r5187418 = r5187413 + r5187417;
        double r5187419 = r5187410 * r5187418;
        double r5187420 = r5187409 + r5187419;
        double r5187421 = r5187420 - r5187411;
        return r5187421;
}

double f(double a, double b) {
        double r5187422 = 1.0;
        double r5187423 = 3.0;
        double r5187424 = a;
        double r5187425 = r5187423 * r5187424;
        double r5187426 = r5187422 - r5187425;
        double r5187427 = b;
        double r5187428 = r5187427 * r5187427;
        double r5187429 = r5187426 * r5187428;
        double r5187430 = r5187424 + r5187422;
        double r5187431 = r5187424 * r5187424;
        double r5187432 = r5187430 * r5187431;
        double r5187433 = r5187429 + r5187432;
        double r5187434 = 4.0;
        double r5187435 = r5187433 * r5187434;
        double r5187436 = pow(r5187424, r5187434);
        double r5187437 = r5187428 * r5187431;
        double r5187438 = 2.0;
        double r5187439 = r5187437 * r5187438;
        double r5187440 = r5187436 + r5187439;
        double r5187441 = pow(r5187427, r5187434);
        double r5187442 = r5187440 + r5187441;
        double r5187443 = r5187435 + r5187442;
        double r5187444 = r5187443 - r5187422;
        return r5187444;
}

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(1 - 3 \cdot a\right)\right)\right) - 1\]
  2. Taylor expanded around 0 0.0

    \[\leadsto \left(\color{blue}{\left({b}^{4} + \left(2 \cdot \left({a}^{2} \cdot {b}^{2}\right) + {a}^{4}\right)\right)} + 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\]
  3. Simplified0.2

    \[\leadsto \left(\color{blue}{\left(\left(b \cdot b\right) \cdot \left(b \cdot b\right) + \left(\left(a \cdot a\right) \cdot \left(a \cdot a\right) + 2 \cdot \left(\left(a \cdot a\right) \cdot \left(b \cdot b\right)\right)\right)\right)} + 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\]
  4. Using strategy rm
  5. Applied pow10.2

    \[\leadsto \left(\left(\left(b \cdot b\right) \cdot \left(b \cdot b\right) + \left(\left(a \cdot a\right) \cdot \left(a \cdot \color{blue}{{a}^{1}}\right) + 2 \cdot \left(\left(a \cdot a\right) \cdot \left(b \cdot b\right)\right)\right)\right) + 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\]
  6. Applied pow10.2

    \[\leadsto \left(\left(\left(b \cdot b\right) \cdot \left(b \cdot b\right) + \left(\left(a \cdot a\right) \cdot \left(\color{blue}{{a}^{1}} \cdot {a}^{1}\right) + 2 \cdot \left(\left(a \cdot a\right) \cdot \left(b \cdot b\right)\right)\right)\right) + 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\]
  7. Applied pow-prod-up0.2

    \[\leadsto \left(\left(\left(b \cdot b\right) \cdot \left(b \cdot b\right) + \left(\left(a \cdot a\right) \cdot \color{blue}{{a}^{\left(1 + 1\right)}} + 2 \cdot \left(\left(a \cdot a\right) \cdot \left(b \cdot b\right)\right)\right)\right) + 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\]
  8. Applied pow10.2

    \[\leadsto \left(\left(\left(b \cdot b\right) \cdot \left(b \cdot b\right) + \left(\left(a \cdot \color{blue}{{a}^{1}}\right) \cdot {a}^{\left(1 + 1\right)} + 2 \cdot \left(\left(a \cdot a\right) \cdot \left(b \cdot b\right)\right)\right)\right) + 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\]
  9. Applied pow10.2

    \[\leadsto \left(\left(\left(b \cdot b\right) \cdot \left(b \cdot b\right) + \left(\left(\color{blue}{{a}^{1}} \cdot {a}^{1}\right) \cdot {a}^{\left(1 + 1\right)} + 2 \cdot \left(\left(a \cdot a\right) \cdot \left(b \cdot b\right)\right)\right)\right) + 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\]
  10. Applied pow-prod-up0.2

    \[\leadsto \left(\left(\left(b \cdot b\right) \cdot \left(b \cdot b\right) + \left(\color{blue}{{a}^{\left(1 + 1\right)}} \cdot {a}^{\left(1 + 1\right)} + 2 \cdot \left(\left(a \cdot a\right) \cdot \left(b \cdot b\right)\right)\right)\right) + 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\]
  11. Applied pow-prod-up0.1

    \[\leadsto \left(\left(\left(b \cdot b\right) \cdot \left(b \cdot b\right) + \left(\color{blue}{{a}^{\left(\left(1 + 1\right) + \left(1 + 1\right)\right)}} + 2 \cdot \left(\left(a \cdot a\right) \cdot \left(b \cdot b\right)\right)\right)\right) + 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\]
  12. Simplified0.1

    \[\leadsto \left(\left(\left(b \cdot b\right) \cdot \left(b \cdot b\right) + \left({a}^{\color{blue}{4}} + 2 \cdot \left(\left(a \cdot a\right) \cdot \left(b \cdot b\right)\right)\right)\right) + 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\]
  13. Using strategy rm
  14. Applied pow10.1

    \[\leadsto \left(\left(\left(b \cdot b\right) \cdot \left(b \cdot \color{blue}{{b}^{1}}\right) + \left({a}^{4} + 2 \cdot \left(\left(a \cdot a\right) \cdot \left(b \cdot b\right)\right)\right)\right) + 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\]
  15. Applied pow10.1

    \[\leadsto \left(\left(\left(b \cdot b\right) \cdot \left(\color{blue}{{b}^{1}} \cdot {b}^{1}\right) + \left({a}^{4} + 2 \cdot \left(\left(a \cdot a\right) \cdot \left(b \cdot b\right)\right)\right)\right) + 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\]
  16. Applied pow-prod-up0.1

    \[\leadsto \left(\left(\left(b \cdot b\right) \cdot \color{blue}{{b}^{\left(1 + 1\right)}} + \left({a}^{4} + 2 \cdot \left(\left(a \cdot a\right) \cdot \left(b \cdot b\right)\right)\right)\right) + 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\]
  17. Applied pow10.1

    \[\leadsto \left(\left(\left(b \cdot \color{blue}{{b}^{1}}\right) \cdot {b}^{\left(1 + 1\right)} + \left({a}^{4} + 2 \cdot \left(\left(a \cdot a\right) \cdot \left(b \cdot b\right)\right)\right)\right) + 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\]
  18. Applied pow10.1

    \[\leadsto \left(\left(\left(\color{blue}{{b}^{1}} \cdot {b}^{1}\right) \cdot {b}^{\left(1 + 1\right)} + \left({a}^{4} + 2 \cdot \left(\left(a \cdot a\right) \cdot \left(b \cdot b\right)\right)\right)\right) + 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\]
  19. Applied pow-prod-up0.1

    \[\leadsto \left(\left(\color{blue}{{b}^{\left(1 + 1\right)}} \cdot {b}^{\left(1 + 1\right)} + \left({a}^{4} + 2 \cdot \left(\left(a \cdot a\right) \cdot \left(b \cdot b\right)\right)\right)\right) + 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\]
  20. Applied pow-prod-up0.0

    \[\leadsto \left(\left(\color{blue}{{b}^{\left(\left(1 + 1\right) + \left(1 + 1\right)\right)}} + \left({a}^{4} + 2 \cdot \left(\left(a \cdot a\right) \cdot \left(b \cdot b\right)\right)\right)\right) + 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\]
  21. Simplified0.0

    \[\leadsto \left(\left({b}^{\color{blue}{4}} + \left({a}^{4} + 2 \cdot \left(\left(a \cdot a\right) \cdot \left(b \cdot b\right)\right)\right)\right) + 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\]
  22. Final simplification0.0

    \[\leadsto \left(\left(\left(1 - 3 \cdot a\right) \cdot \left(b \cdot b\right) + \left(a + 1\right) \cdot \left(a \cdot a\right)\right) \cdot 4 + \left(\left({a}^{4} + \left(\left(b \cdot b\right) \cdot \left(a \cdot a\right)\right) \cdot 2\right) + {b}^{4}\right)\right) - 1\]

Reproduce

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