\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}\left(\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.764470499998\right) \cdot y + 230661.510616000014\right) \cdot y + t\right) \cdot \frac{1}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i}double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r54039 = x;
double r54040 = y;
double r54041 = r54039 * r54040;
double r54042 = z;
double r54043 = r54041 + r54042;
double r54044 = r54043 * r54040;
double r54045 = 27464.7644705;
double r54046 = r54044 + r54045;
double r54047 = r54046 * r54040;
double r54048 = 230661.510616;
double r54049 = r54047 + r54048;
double r54050 = r54049 * r54040;
double r54051 = t;
double r54052 = r54050 + r54051;
double r54053 = a;
double r54054 = r54040 + r54053;
double r54055 = r54054 * r54040;
double r54056 = b;
double r54057 = r54055 + r54056;
double r54058 = r54057 * r54040;
double r54059 = c;
double r54060 = r54058 + r54059;
double r54061 = r54060 * r54040;
double r54062 = i;
double r54063 = r54061 + r54062;
double r54064 = r54052 / r54063;
return r54064;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r54065 = x;
double r54066 = y;
double r54067 = r54065 * r54066;
double r54068 = z;
double r54069 = r54067 + r54068;
double r54070 = r54069 * r54066;
double r54071 = 27464.7644705;
double r54072 = r54070 + r54071;
double r54073 = r54072 * r54066;
double r54074 = 230661.510616;
double r54075 = r54073 + r54074;
double r54076 = r54075 * r54066;
double r54077 = t;
double r54078 = r54076 + r54077;
double r54079 = 1.0;
double r54080 = a;
double r54081 = r54066 + r54080;
double r54082 = r54081 * r54066;
double r54083 = b;
double r54084 = r54082 + r54083;
double r54085 = r54084 * r54066;
double r54086 = c;
double r54087 = r54085 + r54086;
double r54088 = r54087 * r54066;
double r54089 = i;
double r54090 = r54088 + r54089;
double r54091 = r54079 / r54090;
double r54092 = r54078 * r54091;
return r54092;
}



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
Results
Initial program 28.9
rmApplied div-inv28.9
Final simplification28.9
herbie shell --seed 2020021
(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)))