Average Error: 11.9 → 12.1
Time: 59.6s
Precision: 64
\[\left(x \cdot \left(y \cdot z - t \cdot a\right) - b \cdot \left(c \cdot z - i \cdot a\right)\right) + j \cdot \left(c \cdot t - i \cdot y\right)\]
\[\begin{array}{l} \mathbf{if}\;x \le -1.8877308795147688 \cdot 10^{-211}:\\ \;\;\;\;\left(\left(y \cdot z - a \cdot t\right) \cdot x - b \cdot \left(z \cdot c - i \cdot a\right)\right) + \left(\left(\left(\sqrt[3]{\sqrt[3]{c \cdot t - i \cdot y} \cdot \sqrt[3]{c \cdot t - i \cdot y}} \cdot \sqrt[3]{\sqrt[3]{c \cdot t - i \cdot y}}\right) \cdot \sqrt[3]{c \cdot t - i \cdot y}\right) \cdot j\right) \cdot \sqrt[3]{c \cdot t - i \cdot y}\\ \mathbf{elif}\;x \le 1.1906924505533202 \cdot 10^{-234}:\\ \;\;\;\;\left(-b\right) \cdot \left(z \cdot c - i \cdot a\right) + j \cdot \left(c \cdot t - i \cdot y\right)\\ \mathbf{else}:\\ \;\;\;\;\left(\left(y \cdot z - a \cdot t\right) \cdot x - \left(\sqrt[3]{b} \cdot \sqrt[3]{b}\right) \cdot \left(\sqrt[3]{b} \cdot \left(z \cdot c - i \cdot a\right)\right)\right) + j \cdot \left(c \cdot t - i \cdot y\right)\\ \end{array}\]
\left(x \cdot \left(y \cdot z - t \cdot a\right) - b \cdot \left(c \cdot z - i \cdot a\right)\right) + j \cdot \left(c \cdot t - i \cdot y\right)
\begin{array}{l}
\mathbf{if}\;x \le -1.8877308795147688 \cdot 10^{-211}:\\
\;\;\;\;\left(\left(y \cdot z - a \cdot t\right) \cdot x - b \cdot \left(z \cdot c - i \cdot a\right)\right) + \left(\left(\left(\sqrt[3]{\sqrt[3]{c \cdot t - i \cdot y} \cdot \sqrt[3]{c \cdot t - i \cdot y}} \cdot \sqrt[3]{\sqrt[3]{c \cdot t - i \cdot y}}\right) \cdot \sqrt[3]{c \cdot t - i \cdot y}\right) \cdot j\right) \cdot \sqrt[3]{c \cdot t - i \cdot y}\\

\mathbf{elif}\;x \le 1.1906924505533202 \cdot 10^{-234}:\\
\;\;\;\;\left(-b\right) \cdot \left(z \cdot c - i \cdot a\right) + j \cdot \left(c \cdot t - i \cdot y\right)\\

\mathbf{else}:\\
\;\;\;\;\left(\left(y \cdot z - a \cdot t\right) \cdot x - \left(\sqrt[3]{b} \cdot \sqrt[3]{b}\right) \cdot \left(\sqrt[3]{b} \cdot \left(z \cdot c - i \cdot a\right)\right)\right) + j \cdot \left(c \cdot t - i \cdot y\right)\\

\end{array}
double f(double x, double y, double z, double t, double a, double b, double c, double i, double j) {
        double r14713770 = x;
        double r14713771 = y;
        double r14713772 = z;
        double r14713773 = r14713771 * r14713772;
        double r14713774 = t;
        double r14713775 = a;
        double r14713776 = r14713774 * r14713775;
        double r14713777 = r14713773 - r14713776;
        double r14713778 = r14713770 * r14713777;
        double r14713779 = b;
        double r14713780 = c;
        double r14713781 = r14713780 * r14713772;
        double r14713782 = i;
        double r14713783 = r14713782 * r14713775;
        double r14713784 = r14713781 - r14713783;
        double r14713785 = r14713779 * r14713784;
        double r14713786 = r14713778 - r14713785;
        double r14713787 = j;
        double r14713788 = r14713780 * r14713774;
        double r14713789 = r14713782 * r14713771;
        double r14713790 = r14713788 - r14713789;
        double r14713791 = r14713787 * r14713790;
        double r14713792 = r14713786 + r14713791;
        return r14713792;
}

double f(double x, double y, double z, double t, double a, double b, double c, double i, double j) {
        double r14713793 = x;
        double r14713794 = -1.8877308795147688e-211;
        bool r14713795 = r14713793 <= r14713794;
        double r14713796 = y;
        double r14713797 = z;
        double r14713798 = r14713796 * r14713797;
        double r14713799 = a;
        double r14713800 = t;
        double r14713801 = r14713799 * r14713800;
        double r14713802 = r14713798 - r14713801;
        double r14713803 = r14713802 * r14713793;
        double r14713804 = b;
        double r14713805 = c;
        double r14713806 = r14713797 * r14713805;
        double r14713807 = i;
        double r14713808 = r14713807 * r14713799;
        double r14713809 = r14713806 - r14713808;
        double r14713810 = r14713804 * r14713809;
        double r14713811 = r14713803 - r14713810;
        double r14713812 = r14713805 * r14713800;
        double r14713813 = r14713807 * r14713796;
        double r14713814 = r14713812 - r14713813;
        double r14713815 = cbrt(r14713814);
        double r14713816 = r14713815 * r14713815;
        double r14713817 = cbrt(r14713816);
        double r14713818 = cbrt(r14713815);
        double r14713819 = r14713817 * r14713818;
        double r14713820 = r14713819 * r14713815;
        double r14713821 = j;
        double r14713822 = r14713820 * r14713821;
        double r14713823 = r14713822 * r14713815;
        double r14713824 = r14713811 + r14713823;
        double r14713825 = 1.1906924505533202e-234;
        bool r14713826 = r14713793 <= r14713825;
        double r14713827 = -r14713804;
        double r14713828 = r14713827 * r14713809;
        double r14713829 = r14713821 * r14713814;
        double r14713830 = r14713828 + r14713829;
        double r14713831 = cbrt(r14713804);
        double r14713832 = r14713831 * r14713831;
        double r14713833 = r14713831 * r14713809;
        double r14713834 = r14713832 * r14713833;
        double r14713835 = r14713803 - r14713834;
        double r14713836 = r14713835 + r14713829;
        double r14713837 = r14713826 ? r14713830 : r14713836;
        double r14713838 = r14713795 ? r14713824 : r14713837;
        return r14713838;
}

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

Bits error versus j

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Split input into 3 regimes
  2. if x < -1.8877308795147688e-211

    1. Initial program 10.5

      \[\left(x \cdot \left(y \cdot z - t \cdot a\right) - b \cdot \left(c \cdot z - i \cdot a\right)\right) + j \cdot \left(c \cdot t - i \cdot y\right)\]
    2. Using strategy rm
    3. Applied add-cube-cbrt10.8

      \[\leadsto \left(x \cdot \left(y \cdot z - t \cdot a\right) - b \cdot \left(c \cdot z - i \cdot a\right)\right) + j \cdot \color{blue}{\left(\left(\sqrt[3]{c \cdot t - i \cdot y} \cdot \sqrt[3]{c \cdot t - i \cdot y}\right) \cdot \sqrt[3]{c \cdot t - i \cdot y}\right)}\]
    4. Applied associate-*r*10.8

      \[\leadsto \left(x \cdot \left(y \cdot z - t \cdot a\right) - b \cdot \left(c \cdot z - i \cdot a\right)\right) + \color{blue}{\left(j \cdot \left(\sqrt[3]{c \cdot t - i \cdot y} \cdot \sqrt[3]{c \cdot t - i \cdot y}\right)\right) \cdot \sqrt[3]{c \cdot t - i \cdot y}}\]
    5. Using strategy rm
    6. Applied add-cube-cbrt10.8

      \[\leadsto \left(x \cdot \left(y \cdot z - t \cdot a\right) - b \cdot \left(c \cdot z - i \cdot a\right)\right) + \left(j \cdot \left(\sqrt[3]{c \cdot t - i \cdot y} \cdot \sqrt[3]{\color{blue}{\left(\sqrt[3]{c \cdot t - i \cdot y} \cdot \sqrt[3]{c \cdot t - i \cdot y}\right) \cdot \sqrt[3]{c \cdot t - i \cdot y}}}\right)\right) \cdot \sqrt[3]{c \cdot t - i \cdot y}\]
    7. Applied cbrt-prod10.8

      \[\leadsto \left(x \cdot \left(y \cdot z - t \cdot a\right) - b \cdot \left(c \cdot z - i \cdot a\right)\right) + \left(j \cdot \left(\sqrt[3]{c \cdot t - i \cdot y} \cdot \color{blue}{\left(\sqrt[3]{\sqrt[3]{c \cdot t - i \cdot y} \cdot \sqrt[3]{c \cdot t - i \cdot y}} \cdot \sqrt[3]{\sqrt[3]{c \cdot t - i \cdot y}}\right)}\right)\right) \cdot \sqrt[3]{c \cdot t - i \cdot y}\]

    if -1.8877308795147688e-211 < x < 1.1906924505533202e-234

    1. Initial program 17.9

      \[\left(x \cdot \left(y \cdot z - t \cdot a\right) - b \cdot \left(c \cdot z - i \cdot a\right)\right) + j \cdot \left(c \cdot t - i \cdot y\right)\]
    2. Taylor expanded around 0 17.6

      \[\leadsto \left(\color{blue}{0} - b \cdot \left(c \cdot z - i \cdot a\right)\right) + j \cdot \left(c \cdot t - i \cdot y\right)\]

    if 1.1906924505533202e-234 < x

    1. Initial program 10.5

      \[\left(x \cdot \left(y \cdot z - t \cdot a\right) - b \cdot \left(c \cdot z - i \cdot a\right)\right) + j \cdot \left(c \cdot t - i \cdot y\right)\]
    2. Using strategy rm
    3. Applied add-cube-cbrt10.8

      \[\leadsto \left(x \cdot \left(y \cdot z - t \cdot a\right) - \color{blue}{\left(\left(\sqrt[3]{b} \cdot \sqrt[3]{b}\right) \cdot \sqrt[3]{b}\right)} \cdot \left(c \cdot z - i \cdot a\right)\right) + j \cdot \left(c \cdot t - i \cdot y\right)\]
    4. Applied associate-*l*10.8

      \[\leadsto \left(x \cdot \left(y \cdot z - t \cdot a\right) - \color{blue}{\left(\sqrt[3]{b} \cdot \sqrt[3]{b}\right) \cdot \left(\sqrt[3]{b} \cdot \left(c \cdot z - i \cdot a\right)\right)}\right) + j \cdot \left(c \cdot t - i \cdot y\right)\]
  3. Recombined 3 regimes into one program.
  4. Final simplification12.1

    \[\leadsto \begin{array}{l} \mathbf{if}\;x \le -1.8877308795147688 \cdot 10^{-211}:\\ \;\;\;\;\left(\left(y \cdot z - a \cdot t\right) \cdot x - b \cdot \left(z \cdot c - i \cdot a\right)\right) + \left(\left(\left(\sqrt[3]{\sqrt[3]{c \cdot t - i \cdot y} \cdot \sqrt[3]{c \cdot t - i \cdot y}} \cdot \sqrt[3]{\sqrt[3]{c \cdot t - i \cdot y}}\right) \cdot \sqrt[3]{c \cdot t - i \cdot y}\right) \cdot j\right) \cdot \sqrt[3]{c \cdot t - i \cdot y}\\ \mathbf{elif}\;x \le 1.1906924505533202 \cdot 10^{-234}:\\ \;\;\;\;\left(-b\right) \cdot \left(z \cdot c - i \cdot a\right) + j \cdot \left(c \cdot t - i \cdot y\right)\\ \mathbf{else}:\\ \;\;\;\;\left(\left(y \cdot z - a \cdot t\right) \cdot x - \left(\sqrt[3]{b} \cdot \sqrt[3]{b}\right) \cdot \left(\sqrt[3]{b} \cdot \left(z \cdot c - i \cdot a\right)\right)\right) + j \cdot \left(c \cdot t - i \cdot y\right)\\ \end{array}\]

Reproduce

herbie shell --seed 2019120 +o rules:numerics
(FPCore (x y z t a b c i j)
  :name "Linear.Matrix:det33 from linear-1.19.1.3"
  (+ (- (* x (- (* y z) (* t a))) (* b (- (* c z) (* i a)))) (* j (- (* c t) (* i y)))))