\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644704999984242022037506103515625\right) \cdot y + 230661.5106160000141244381666183471679688\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.7644704999984242022037506103515625\right) \cdot y + 230661.5106160000141244381666183471679688\right) \cdot y + t\right) \cdot \frac{1}{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(y + a, y, b\right), y, c\right), y, i\right) \cdot 1}double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r65125 = x;
double r65126 = y;
double r65127 = r65125 * r65126;
double r65128 = z;
double r65129 = r65127 + r65128;
double r65130 = r65129 * r65126;
double r65131 = 27464.7644705;
double r65132 = r65130 + r65131;
double r65133 = r65132 * r65126;
double r65134 = 230661.510616;
double r65135 = r65133 + r65134;
double r65136 = r65135 * r65126;
double r65137 = t;
double r65138 = r65136 + r65137;
double r65139 = a;
double r65140 = r65126 + r65139;
double r65141 = r65140 * r65126;
double r65142 = b;
double r65143 = r65141 + r65142;
double r65144 = r65143 * r65126;
double r65145 = c;
double r65146 = r65144 + r65145;
double r65147 = r65146 * r65126;
double r65148 = i;
double r65149 = r65147 + r65148;
double r65150 = r65138 / r65149;
return r65150;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r65151 = x;
double r65152 = y;
double r65153 = r65151 * r65152;
double r65154 = z;
double r65155 = r65153 + r65154;
double r65156 = r65155 * r65152;
double r65157 = 27464.7644705;
double r65158 = r65156 + r65157;
double r65159 = r65158 * r65152;
double r65160 = 230661.510616;
double r65161 = r65159 + r65160;
double r65162 = r65161 * r65152;
double r65163 = t;
double r65164 = r65162 + r65163;
double r65165 = 1.0;
double r65166 = a;
double r65167 = r65152 + r65166;
double r65168 = b;
double r65169 = fma(r65167, r65152, r65168);
double r65170 = c;
double r65171 = fma(r65169, r65152, r65170);
double r65172 = i;
double r65173 = fma(r65171, r65152, r65172);
double r65174 = r65173 * r65165;
double r65175 = r65165 / r65174;
double r65176 = r65164 * r65175;
return r65176;
}



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
Initial program 29.1
rmApplied div-inv29.2
Simplified29.2
Final simplification29.2
herbie shell --seed 2020001 +o rules:numerics
(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)))