Average Error: 0.2 → 1.0
Time: 18.2s
Precision: 64
\[\left({\left(a \cdot a + b \cdot b\right)}^{2} + 4 \cdot \left(b \cdot b\right)\right) - 1\]
\[\left({a}^{4} + \left({b}^{4} + 2 \cdot \left({a}^{2} \cdot {b}^{2}\right)\right)\right) - 1\]
\left({\left(a \cdot a + b \cdot b\right)}^{2} + 4 \cdot \left(b \cdot b\right)\right) - 1
\left({a}^{4} + \left({b}^{4} + 2 \cdot \left({a}^{2} \cdot {b}^{2}\right)\right)\right) - 1
double f(double a, double b) {
        double r143841 = a;
        double r143842 = r143841 * r143841;
        double r143843 = b;
        double r143844 = r143843 * r143843;
        double r143845 = r143842 + r143844;
        double r143846 = 2.0;
        double r143847 = pow(r143845, r143846);
        double r143848 = 4.0;
        double r143849 = r143848 * r143844;
        double r143850 = r143847 + r143849;
        double r143851 = 1.0;
        double r143852 = r143850 - r143851;
        return r143852;
}

double f(double a, double b) {
        double r143853 = a;
        double r143854 = 4.0;
        double r143855 = pow(r143853, r143854);
        double r143856 = b;
        double r143857 = pow(r143856, r143854);
        double r143858 = 2.0;
        double r143859 = pow(r143853, r143858);
        double r143860 = pow(r143856, r143858);
        double r143861 = r143859 * r143860;
        double r143862 = r143858 * r143861;
        double r143863 = r143857 + r143862;
        double r143864 = r143855 + r143863;
        double r143865 = 1.0;
        double r143866 = r143864 - r143865;
        return r143866;
}

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(b \cdot b\right)\right) - 1\]
  2. Taylor expanded around inf 1.0

    \[\leadsto \color{blue}{\left({a}^{4} + \left({b}^{4} + 2 \cdot \left({a}^{2} \cdot {b}^{2}\right)\right)\right)} - 1\]
  3. Final simplification1.0

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

Reproduce

herbie shell --seed 2019323 
(FPCore (a b)
  :name "Bouland and Aaronson, Equation (26)"
  :precision binary64
  (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (* b b))) 1))