double f(double x, double y, double z, double t, double a, double b) {
double r10298745 = x;
double r10298746 = y;
double r10298747 = z;
double r10298748 = log(r10298747);
double r10298749 = r10298746 * r10298748;
double r10298750 = t;
double r10298751 = 1.0;
double r10298752 = r10298750 - r10298751;
double r10298753 = a;
double r10298754 = log(r10298753);
double r10298755 = r10298752 * r10298754;
double r10298756 = r10298749 + r10298755;
double r10298757 = b;
double r10298758 = r10298756 - r10298757;
double r10298759 = exp(r10298758);
double r10298760 = r10298745 * r10298759;
double r10298761 = r10298760 / r10298746;
return r10298761;
}
double f(double x, double y, double z, double t, double a, double b) {
double r10298762 = x;
double r10298763 = -5.595323073166741e+53;
bool r10298764 = r10298762 <= r10298763;
double r10298765 = a;
double r10298766 = log(r10298765);
double r10298767 = t;
double r10298768 = 1.0;
double r10298769 = r10298767 - r10298768;
double r10298770 = r10298766 * r10298769;
double r10298771 = y;
double r10298772 = z;
double r10298773 = log(r10298772);
double r10298774 = r10298771 * r10298773;
double r10298775 = r10298770 + r10298774;
double r10298776 = b;
double r10298777 = r10298775 - r10298776;
double r10298778 = exp(r10298777);
double r10298779 = r10298762 * r10298778;
double r10298780 = cbrt(r10298779);
double r10298781 = cbrt(r10298780);
double r10298782 = r10298781 * r10298781;
double r10298783 = r10298782 * r10298781;
double r10298784 = cbrt(r10298762);
double r10298785 = cbrt(r10298778);
double r10298786 = r10298784 * r10298785;
double r10298787 = r10298780 * r10298786;
double r10298788 = r10298783 * r10298787;
double r10298789 = r10298788 / r10298771;
double r10298790 = 2.2414839806053286e-132;
bool r10298791 = r10298762 <= r10298790;
double r10298792 = r10298766 * r10298767;
double r10298793 = r10298792 - r10298776;
double r10298794 = r10298766 * r10298768;
double r10298795 = r10298793 - r10298794;
double r10298796 = r10298795 + r10298774;
double r10298797 = exp(r10298796);
double r10298798 = r10298762 / r10298771;
double r10298799 = r10298797 * r10298798;
double r10298800 = 0.3333333333333333;
double r10298801 = -r10298768;
double r10298802 = r10298801 * r10298766;
double r10298803 = r10298776 - r10298792;
double r10298804 = r10298803 - r10298774;
double r10298805 = log(r10298762);
double r10298806 = r10298804 - r10298805;
double r10298807 = r10298802 - r10298806;
double r10298808 = r10298800 * r10298807;
double r10298809 = exp(r10298808);
double r10298810 = r10298780 * r10298780;
double r10298811 = r10298809 * r10298810;
double r10298812 = r10298811 / r10298771;
double r10298813 = r10298791 ? r10298799 : r10298812;
double r10298814 = r10298764 ? r10298789 : r10298813;
return r10298814;
}
\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}}{y}\begin{array}{l}
\mathbf{if}\;x \le -5.595323073166741 \cdot 10^{+53}:\\
\;\;\;\;\frac{\left(\left(\sqrt[3]{\sqrt[3]{x \cdot e^{\left(\log a \cdot \left(t - 1.0\right) + y \cdot \log z\right) - b}}} \cdot \sqrt[3]{\sqrt[3]{x \cdot e^{\left(\log a \cdot \left(t - 1.0\right) + y \cdot \log z\right) - b}}}\right) \cdot \sqrt[3]{\sqrt[3]{x \cdot e^{\left(\log a \cdot \left(t - 1.0\right) + y \cdot \log z\right) - b}}}\right) \cdot \left(\sqrt[3]{x \cdot e^{\left(\log a \cdot \left(t - 1.0\right) + y \cdot \log z\right) - b}} \cdot \left(\sqrt[3]{x} \cdot \sqrt[3]{e^{\left(\log a \cdot \left(t - 1.0\right) + y \cdot \log z\right) - b}}\right)\right)}{y}\\
\mathbf{elif}\;x \le 2.2414839806053286 \cdot 10^{-132}:\\
\;\;\;\;e^{\left(\left(\log a \cdot t - b\right) - \log a \cdot 1.0\right) + y \cdot \log z} \cdot \frac{x}{y}\\
\mathbf{else}:\\
\;\;\;\;\frac{e^{\frac{1}{3} \cdot \left(\left(-1.0\right) \cdot \log a - \left(\left(\left(b - \log a \cdot t\right) - y \cdot \log z\right) - \log x\right)\right)} \cdot \left(\sqrt[3]{x \cdot e^{\left(\log a \cdot \left(t - 1.0\right) + y \cdot \log z\right) - b}} \cdot \sqrt[3]{x \cdot e^{\left(\log a \cdot \left(t - 1.0\right) + y \cdot \log z\right) - b}}\right)}{y}\\
\end{array}


Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t



Bits error versus a



Bits error versus b
if x < -5.595323073166741e+53Initial program 0.8
rmApplied add-cube-cbrt0.8
rmApplied add-cube-cbrt0.8
rmApplied cbrt-prod0.8
if -5.595323073166741e+53 < x < 2.2414839806053286e-132Initial program 3.0
rmApplied add-cube-cbrt3.0
Taylor expanded around inf 3.0
Simplified1.3
if 2.2414839806053286e-132 < x Initial program 1.2
rmApplied add-cube-cbrt1.2
Taylor expanded around inf 1.3
Simplified1.2
Final simplification1.2
herbie shell --seed 2019102
(FPCore (x y z t a b)
:name "Numeric.SpecFunctions:incompleteBetaWorker from math-functions-0.1.5.2"
(/ (* x (exp (- (+ (* y (log z)) (* (- t 1.0) (log a))) b))) y))