Average Error: 28.8 → 29.1
Time: 8.2s
Precision: 64
\[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.764470499998\right) \cdot y + 230661.510616000014\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i}\]
\[\frac{1}{\left(\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i\right) \cdot \frac{1}{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.764470499998\right) \cdot y + 230661.510616000014\right) \cdot y + t}}\]
\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.764470499998\right) \cdot y + 230661.510616000014\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i}
\frac{1}{\left(\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i\right) \cdot \frac{1}{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.764470499998\right) \cdot y + 230661.510616000014\right) \cdot y + t}}
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
        double r67989 = x;
        double r67990 = y;
        double r67991 = r67989 * r67990;
        double r67992 = z;
        double r67993 = r67991 + r67992;
        double r67994 = r67993 * r67990;
        double r67995 = 27464.7644705;
        double r67996 = r67994 + r67995;
        double r67997 = r67996 * r67990;
        double r67998 = 230661.510616;
        double r67999 = r67997 + r67998;
        double r68000 = r67999 * r67990;
        double r68001 = t;
        double r68002 = r68000 + r68001;
        double r68003 = a;
        double r68004 = r67990 + r68003;
        double r68005 = r68004 * r67990;
        double r68006 = b;
        double r68007 = r68005 + r68006;
        double r68008 = r68007 * r67990;
        double r68009 = c;
        double r68010 = r68008 + r68009;
        double r68011 = r68010 * r67990;
        double r68012 = i;
        double r68013 = r68011 + r68012;
        double r68014 = r68002 / r68013;
        return r68014;
}

double f(double x, double y, double z, double t, double a, double b, double c, double i) {
        double r68015 = 1.0;
        double r68016 = y;
        double r68017 = a;
        double r68018 = r68016 + r68017;
        double r68019 = r68018 * r68016;
        double r68020 = b;
        double r68021 = r68019 + r68020;
        double r68022 = r68021 * r68016;
        double r68023 = c;
        double r68024 = r68022 + r68023;
        double r68025 = r68024 * r68016;
        double r68026 = i;
        double r68027 = r68025 + r68026;
        double r68028 = x;
        double r68029 = r68028 * r68016;
        double r68030 = z;
        double r68031 = r68029 + r68030;
        double r68032 = r68031 * r68016;
        double r68033 = 27464.7644705;
        double r68034 = r68032 + r68033;
        double r68035 = r68034 * r68016;
        double r68036 = 230661.510616;
        double r68037 = r68035 + r68036;
        double r68038 = r68037 * r68016;
        double r68039 = t;
        double r68040 = r68038 + r68039;
        double r68041 = r68015 / r68040;
        double r68042 = r68027 * r68041;
        double r68043 = r68015 / r68042;
        return r68043;
}

Error

Bits error versus x

Bits error versus y

Bits error versus z

Bits error versus t

Bits error versus a

Bits error versus b

Bits error versus c

Bits error versus i

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 28.8

    \[\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.764470499998\right) \cdot y + 230661.510616000014\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i}\]
  2. Using strategy rm
  3. Applied clear-num29.1

    \[\leadsto \color{blue}{\frac{1}{\frac{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i}{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.764470499998\right) \cdot y + 230661.510616000014\right) \cdot y + t}}}\]
  4. Using strategy rm
  5. Applied div-inv29.1

    \[\leadsto \frac{1}{\color{blue}{\left(\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i\right) \cdot \frac{1}{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.764470499998\right) \cdot y + 230661.510616000014\right) \cdot y + t}}}\]
  6. Final simplification29.1

    \[\leadsto \frac{1}{\left(\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i\right) \cdot \frac{1}{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.764470499998\right) \cdot y + 230661.510616000014\right) \cdot y + t}}\]

Reproduce

herbie shell --seed 2020018 
(FPCore (x y z t a b c i)
  :name "Numeric.SpecFunctions:logGamma from math-functions-0.1.5.2"
  :precision binary64
  (/ (+ (* (+ (* (+ (* (+ (* x y) z) y) 27464.7644705) y) 230661.510616) y) t) (+ (* (+ (* (+ (* (+ y a) y) b) y) c) y) i)))