\left(\left(\left(\left(\left(\left(x \cdot 18\right) \cdot y\right) \cdot z\right) \cdot t - \left(a \cdot 4\right) \cdot t\right) + b \cdot c\right) - \left(x \cdot 4\right) \cdot i\right) - \left(j \cdot 27\right) \cdot k
\begin{array}{l}
\mathbf{if}\;t \le -7702228306921125838848:\\
\;\;\;\;\left(\left(b \cdot c + \left(\left(z \cdot \left(\left(y \cdot x\right) \cdot 18\right)\right) \cdot t - t \cdot \left(a \cdot 4\right)\right)\right) - \left(x \cdot 4\right) \cdot i\right) - j \cdot \left(27 \cdot k\right)\\
\mathbf{elif}\;t \le 1.806883127258244205731970851622029403045 \cdot 10^{-164}:\\
\;\;\;\;\mathsf{fma}\left(y \cdot \left(\left(18 \cdot t\right) \cdot x\right), z, b \cdot c - \mathsf{fma}\left(4, \mathsf{fma}\left(t, a, i \cdot x\right), \left(j \cdot k\right) \cdot 27\right)\right)\\
\mathbf{else}:\\
\;\;\;\;\left(\left(b \cdot c + \left(18 \cdot \left(t \cdot \left(x \cdot \left(y \cdot z\right)\right)\right) - t \cdot \left(a \cdot 4\right)\right)\right) - \left(x \cdot 4\right) \cdot i\right) - k \cdot \left(j \cdot 27\right)\\
\end{array}double f(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k) {
double r4554789 = x;
double r4554790 = 18.0;
double r4554791 = r4554789 * r4554790;
double r4554792 = y;
double r4554793 = r4554791 * r4554792;
double r4554794 = z;
double r4554795 = r4554793 * r4554794;
double r4554796 = t;
double r4554797 = r4554795 * r4554796;
double r4554798 = a;
double r4554799 = 4.0;
double r4554800 = r4554798 * r4554799;
double r4554801 = r4554800 * r4554796;
double r4554802 = r4554797 - r4554801;
double r4554803 = b;
double r4554804 = c;
double r4554805 = r4554803 * r4554804;
double r4554806 = r4554802 + r4554805;
double r4554807 = r4554789 * r4554799;
double r4554808 = i;
double r4554809 = r4554807 * r4554808;
double r4554810 = r4554806 - r4554809;
double r4554811 = j;
double r4554812 = 27.0;
double r4554813 = r4554811 * r4554812;
double r4554814 = k;
double r4554815 = r4554813 * r4554814;
double r4554816 = r4554810 - r4554815;
return r4554816;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k) {
double r4554817 = t;
double r4554818 = -7.702228306921126e+21;
bool r4554819 = r4554817 <= r4554818;
double r4554820 = b;
double r4554821 = c;
double r4554822 = r4554820 * r4554821;
double r4554823 = z;
double r4554824 = y;
double r4554825 = x;
double r4554826 = r4554824 * r4554825;
double r4554827 = 18.0;
double r4554828 = r4554826 * r4554827;
double r4554829 = r4554823 * r4554828;
double r4554830 = r4554829 * r4554817;
double r4554831 = a;
double r4554832 = 4.0;
double r4554833 = r4554831 * r4554832;
double r4554834 = r4554817 * r4554833;
double r4554835 = r4554830 - r4554834;
double r4554836 = r4554822 + r4554835;
double r4554837 = r4554825 * r4554832;
double r4554838 = i;
double r4554839 = r4554837 * r4554838;
double r4554840 = r4554836 - r4554839;
double r4554841 = j;
double r4554842 = 27.0;
double r4554843 = k;
double r4554844 = r4554842 * r4554843;
double r4554845 = r4554841 * r4554844;
double r4554846 = r4554840 - r4554845;
double r4554847 = 1.8068831272582442e-164;
bool r4554848 = r4554817 <= r4554847;
double r4554849 = r4554827 * r4554817;
double r4554850 = r4554849 * r4554825;
double r4554851 = r4554824 * r4554850;
double r4554852 = r4554838 * r4554825;
double r4554853 = fma(r4554817, r4554831, r4554852);
double r4554854 = r4554841 * r4554843;
double r4554855 = r4554854 * r4554842;
double r4554856 = fma(r4554832, r4554853, r4554855);
double r4554857 = r4554822 - r4554856;
double r4554858 = fma(r4554851, r4554823, r4554857);
double r4554859 = r4554824 * r4554823;
double r4554860 = r4554825 * r4554859;
double r4554861 = r4554817 * r4554860;
double r4554862 = r4554827 * r4554861;
double r4554863 = r4554862 - r4554834;
double r4554864 = r4554822 + r4554863;
double r4554865 = r4554864 - r4554839;
double r4554866 = r4554841 * r4554842;
double r4554867 = r4554843 * r4554866;
double r4554868 = r4554865 - r4554867;
double r4554869 = r4554848 ? r4554858 : r4554868;
double r4554870 = r4554819 ? r4554846 : r4554869;
return r4554870;
}



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



Bits error versus j



Bits error versus k
if t < -7.702228306921126e+21Initial program 2.1
Taylor expanded around 0 2.1
rmApplied associate-*l*2.1
if -7.702228306921126e+21 < t < 1.8068831272582442e-164Initial program 8.2
Simplified4.2
rmApplied associate-*l*4.2
rmApplied associate-*l*1.6
if 1.8068831272582442e-164 < t Initial program 3.8
Taylor expanded around inf 4.4
Final simplification2.7
herbie shell --seed 2019200 +o rules:numerics
(FPCore (x y z t a b c i j k)
:name "Diagrams.Solve.Polynomial:cubForm from diagrams-solve-0.1"
(- (- (+ (- (* (* (* (* x 18.0) y) z) t) (* (* a 4.0) t)) (* b c)) (* (* x 4.0) i)) (* (* j 27.0) k)))