Average Error: 58.1 → 57.1
Time: 19.6s
Precision: 64
\[x = 77617 \land y = 33096\]
\[\left(\left(333.75 \cdot {y}^{6} + \left(x \cdot x\right) \cdot \left(\left(\left(\left(\left(\left(11 \cdot x\right) \cdot x\right) \cdot y\right) \cdot y - {y}^{6}\right) - 121 \cdot {y}^{4}\right) - 2\right)\right) + 5.5 \cdot {y}^{8}\right) + \frac{x}{2 \cdot y}\]
\[-2 \cdot \left(x \cdot x\right) + \frac{x}{2 \cdot y}\]
\left(\left(333.75 \cdot {y}^{6} + \left(x \cdot x\right) \cdot \left(\left(\left(\left(\left(\left(11 \cdot x\right) \cdot x\right) \cdot y\right) \cdot y - {y}^{6}\right) - 121 \cdot {y}^{4}\right) - 2\right)\right) + 5.5 \cdot {y}^{8}\right) + \frac{x}{2 \cdot y}
-2 \cdot \left(x \cdot x\right) + \frac{x}{2 \cdot y}
double f(double x, double y) {
        double r685891 = 333.75;
        double r685892 = y;
        double r685893 = 6.0;
        double r685894 = pow(r685892, r685893);
        double r685895 = r685891 * r685894;
        double r685896 = x;
        double r685897 = r685896 * r685896;
        double r685898 = 11.0;
        double r685899 = r685898 * r685896;
        double r685900 = r685899 * r685896;
        double r685901 = r685900 * r685892;
        double r685902 = r685901 * r685892;
        double r685903 = r685902 - r685894;
        double r685904 = 121.0;
        double r685905 = 4.0;
        double r685906 = pow(r685892, r685905);
        double r685907 = r685904 * r685906;
        double r685908 = r685903 - r685907;
        double r685909 = 2.0;
        double r685910 = r685908 - r685909;
        double r685911 = r685897 * r685910;
        double r685912 = r685895 + r685911;
        double r685913 = 5.5;
        double r685914 = 8.0;
        double r685915 = pow(r685892, r685914);
        double r685916 = r685913 * r685915;
        double r685917 = r685912 + r685916;
        double r685918 = r685909 * r685892;
        double r685919 = r685896 / r685918;
        double r685920 = r685917 + r685919;
        return r685920;
}

double f(double x, double y) {
        double r685921 = -2.0;
        double r685922 = x;
        double r685923 = r685922 * r685922;
        double r685924 = r685921 * r685923;
        double r685925 = 2.0;
        double r685926 = y;
        double r685927 = r685925 * r685926;
        double r685928 = r685922 / r685927;
        double r685929 = r685924 + r685928;
        return r685929;
}

Error

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 58.1

    \[\left(\left(333.75 \cdot {y}^{6} + \left(x \cdot x\right) \cdot \left(\left(\left(\left(\left(\left(11 \cdot x\right) \cdot x\right) \cdot y\right) \cdot y - {y}^{6}\right) - 121 \cdot {y}^{4}\right) - 2\right)\right) + 5.5 \cdot {y}^{8}\right) + \frac{x}{2 \cdot y}\]
  2. Taylor expanded around 0 57.1

    \[\leadsto \color{blue}{-2 \cdot {x}^{2}} + \frac{x}{2 \cdot y}\]
  3. Simplified57.1

    \[\leadsto \color{blue}{-2 \cdot \left(x \cdot x\right)} + \frac{x}{2 \cdot y}\]
  4. Final simplification57.1

    \[\leadsto -2 \cdot \left(x \cdot x\right) + \frac{x}{2 \cdot y}\]

Reproduce

herbie shell --seed 2019172 +o rules:numerics
(FPCore (x y)
  :name "Rump's expression from Stadtherr's award speech"
  :pre (and (== x 77617.0) (== y 33096.0))
  (+ (+ (+ (* 333.75 (pow y 6.0)) (* (* x x) (- (- (- (* (* (* (* 11.0 x) x) y) y) (pow y 6.0)) (* 121.0 (pow y 4.0))) 2.0))) (* 5.5 (pow y 8.0))) (/ x (* 2.0 y))))