Average Error: 29.1 → 29.3
Time: 7.5s
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}{\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}}\]
\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}{\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}}
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
        double r56942 = x;
        double r56943 = y;
        double r56944 = r56942 * r56943;
        double r56945 = z;
        double r56946 = r56944 + r56945;
        double r56947 = r56946 * r56943;
        double r56948 = 27464.7644705;
        double r56949 = r56947 + r56948;
        double r56950 = r56949 * r56943;
        double r56951 = 230661.510616;
        double r56952 = r56950 + r56951;
        double r56953 = r56952 * r56943;
        double r56954 = t;
        double r56955 = r56953 + r56954;
        double r56956 = a;
        double r56957 = r56943 + r56956;
        double r56958 = r56957 * r56943;
        double r56959 = b;
        double r56960 = r56958 + r56959;
        double r56961 = r56960 * r56943;
        double r56962 = c;
        double r56963 = r56961 + r56962;
        double r56964 = r56963 * r56943;
        double r56965 = i;
        double r56966 = r56964 + r56965;
        double r56967 = r56955 / r56966;
        return r56967;
}

double f(double x, double y, double z, double t, double a, double b, double c, double i) {
        double r56968 = 1.0;
        double r56969 = y;
        double r56970 = a;
        double r56971 = r56969 + r56970;
        double r56972 = r56971 * r56969;
        double r56973 = b;
        double r56974 = r56972 + r56973;
        double r56975 = r56974 * r56969;
        double r56976 = c;
        double r56977 = r56975 + r56976;
        double r56978 = r56977 * r56969;
        double r56979 = i;
        double r56980 = r56978 + r56979;
        double r56981 = x;
        double r56982 = r56981 * r56969;
        double r56983 = z;
        double r56984 = r56982 + r56983;
        double r56985 = r56984 * r56969;
        double r56986 = 27464.7644705;
        double r56987 = r56985 + r56986;
        double r56988 = r56987 * r56969;
        double r56989 = 230661.510616;
        double r56990 = r56988 + r56989;
        double r56991 = r56990 * r56969;
        double r56992 = t;
        double r56993 = r56991 + r56992;
        double r56994 = r56980 / r56993;
        double r56995 = r56968 / r56994;
        return r56995;
}

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 29.1

    \[\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.3

    \[\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. Final simplification29.3

    \[\leadsto \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}}\]

Reproduce

herbie shell --seed 2020059 
(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)))