Average Error: 58.1 → 57.1
Time: 11.3s
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}\]
\[x \cdot \left(\frac{0.5}{y} - 2 \cdot x\right)\]
\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}
x \cdot \left(\frac{0.5}{y} - 2 \cdot x\right)
double f(double x, double y) {
        double r19162 = 333.75;
        double r19163 = y;
        double r19164 = 6.0;
        double r19165 = pow(r19163, r19164);
        double r19166 = r19162 * r19165;
        double r19167 = x;
        double r19168 = r19167 * r19167;
        double r19169 = 11.0;
        double r19170 = r19169 * r19167;
        double r19171 = r19170 * r19167;
        double r19172 = r19171 * r19163;
        double r19173 = r19172 * r19163;
        double r19174 = r19173 - r19165;
        double r19175 = 121.0;
        double r19176 = 4.0;
        double r19177 = pow(r19163, r19176);
        double r19178 = r19175 * r19177;
        double r19179 = r19174 - r19178;
        double r19180 = 2.0;
        double r19181 = r19179 - r19180;
        double r19182 = r19168 * r19181;
        double r19183 = r19166 + r19182;
        double r19184 = 5.5;
        double r19185 = 8.0;
        double r19186 = pow(r19163, r19185);
        double r19187 = r19184 * r19186;
        double r19188 = r19183 + r19187;
        double r19189 = r19180 * r19163;
        double r19190 = r19167 / r19189;
        double r19191 = r19188 + r19190;
        return r19191;
}

double f(double x, double y) {
        double r19192 = x;
        double r19193 = 0.5;
        double r19194 = y;
        double r19195 = r19193 / r19194;
        double r19196 = 2.0;
        double r19197 = r19196 * r19192;
        double r19198 = r19195 - r19197;
        double r19199 = r19192 * r19198;
        return r19199;
}

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. Simplified58.1

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

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

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

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

Reproduce

herbie shell --seed 2019323 +o rules:numerics
(FPCore (x y)
  :name "Rump's expression from Stadtherr's award speech"
  :precision binary64
  :pre (and (== x 77617) (== y 33096))
  (+ (+ (+ (* 333.75 (pow y 6)) (* (* x x) (- (- (- (* (* (* (* 11 x) x) y) y) (pow y 6)) (* 121 (pow y 4))) 2))) (* 5.5 (pow y 8))) (/ x (* 2 y))))