Average Error: 5.4 → 5.1
Time: 25.4s
Precision: 64
\[\left(\left(\left(\left(\left(\left(x \cdot 18.0\right) \cdot y\right) \cdot z\right) \cdot t - \left(a \cdot 4.0\right) \cdot t\right) + b \cdot c\right) - \left(x \cdot 4.0\right) \cdot i\right) - \left(j \cdot 27.0\right) \cdot k\]
\[\begin{array}{l} \mathbf{if}\;z \le -1.1315498986599681 \cdot 10^{-55}:\\ \;\;\;\;\left(b \cdot c - \left(\left(x \cdot 4.0\right) \cdot i + \left(27.0 \cdot j\right) \cdot k\right)\right) + \left(z \cdot \left(\left(x \cdot 18.0\right) \cdot y\right) - a \cdot 4.0\right) \cdot t\\ \mathbf{elif}\;z \le 2.7764126058213553 \cdot 10^{+165}:\\ \;\;\;\;\sqrt[3]{\left(\left(z \cdot 18.0\right) \cdot y\right) \cdot x - a \cdot 4.0} \cdot \left(\left(\sqrt[3]{\left(\left(z \cdot 18.0\right) \cdot y\right) \cdot x - a \cdot 4.0} \cdot \sqrt[3]{\left(\left(z \cdot 18.0\right) \cdot y\right) \cdot x - a \cdot 4.0}\right) \cdot t\right) + \left(b \cdot c - \left(27.0 \cdot \left(k \cdot j\right) + \left(x \cdot 4.0\right) \cdot i\right)\right)\\ \mathbf{else}:\\ \;\;\;\;\left(-t\right) \cdot \left(a \cdot 4.0\right) + \left(b \cdot c - \left(27.0 \cdot \left(k \cdot j\right) + \left(x \cdot 4.0\right) \cdot i\right)\right)\\ \end{array}\]
\left(\left(\left(\left(\left(\left(x \cdot 18.0\right) \cdot y\right) \cdot z\right) \cdot t - \left(a \cdot 4.0\right) \cdot t\right) + b \cdot c\right) - \left(x \cdot 4.0\right) \cdot i\right) - \left(j \cdot 27.0\right) \cdot k
\begin{array}{l}
\mathbf{if}\;z \le -1.1315498986599681 \cdot 10^{-55}:\\
\;\;\;\;\left(b \cdot c - \left(\left(x \cdot 4.0\right) \cdot i + \left(27.0 \cdot j\right) \cdot k\right)\right) + \left(z \cdot \left(\left(x \cdot 18.0\right) \cdot y\right) - a \cdot 4.0\right) \cdot t\\

\mathbf{elif}\;z \le 2.7764126058213553 \cdot 10^{+165}:\\
\;\;\;\;\sqrt[3]{\left(\left(z \cdot 18.0\right) \cdot y\right) \cdot x - a \cdot 4.0} \cdot \left(\left(\sqrt[3]{\left(\left(z \cdot 18.0\right) \cdot y\right) \cdot x - a \cdot 4.0} \cdot \sqrt[3]{\left(\left(z \cdot 18.0\right) \cdot y\right) \cdot x - a \cdot 4.0}\right) \cdot t\right) + \left(b \cdot c - \left(27.0 \cdot \left(k \cdot j\right) + \left(x \cdot 4.0\right) \cdot i\right)\right)\\

\mathbf{else}:\\
\;\;\;\;\left(-t\right) \cdot \left(a \cdot 4.0\right) + \left(b \cdot c - \left(27.0 \cdot \left(k \cdot j\right) + \left(x \cdot 4.0\right) \cdot i\right)\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 r6659901 = x;
        double r6659902 = 18.0;
        double r6659903 = r6659901 * r6659902;
        double r6659904 = y;
        double r6659905 = r6659903 * r6659904;
        double r6659906 = z;
        double r6659907 = r6659905 * r6659906;
        double r6659908 = t;
        double r6659909 = r6659907 * r6659908;
        double r6659910 = a;
        double r6659911 = 4.0;
        double r6659912 = r6659910 * r6659911;
        double r6659913 = r6659912 * r6659908;
        double r6659914 = r6659909 - r6659913;
        double r6659915 = b;
        double r6659916 = c;
        double r6659917 = r6659915 * r6659916;
        double r6659918 = r6659914 + r6659917;
        double r6659919 = r6659901 * r6659911;
        double r6659920 = i;
        double r6659921 = r6659919 * r6659920;
        double r6659922 = r6659918 - r6659921;
        double r6659923 = j;
        double r6659924 = 27.0;
        double r6659925 = r6659923 * r6659924;
        double r6659926 = k;
        double r6659927 = r6659925 * r6659926;
        double r6659928 = r6659922 - r6659927;
        return r6659928;
}

double f(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k) {
        double r6659929 = z;
        double r6659930 = -1.1315498986599681e-55;
        bool r6659931 = r6659929 <= r6659930;
        double r6659932 = b;
        double r6659933 = c;
        double r6659934 = r6659932 * r6659933;
        double r6659935 = x;
        double r6659936 = 4.0;
        double r6659937 = r6659935 * r6659936;
        double r6659938 = i;
        double r6659939 = r6659937 * r6659938;
        double r6659940 = 27.0;
        double r6659941 = j;
        double r6659942 = r6659940 * r6659941;
        double r6659943 = k;
        double r6659944 = r6659942 * r6659943;
        double r6659945 = r6659939 + r6659944;
        double r6659946 = r6659934 - r6659945;
        double r6659947 = 18.0;
        double r6659948 = r6659935 * r6659947;
        double r6659949 = y;
        double r6659950 = r6659948 * r6659949;
        double r6659951 = r6659929 * r6659950;
        double r6659952 = a;
        double r6659953 = r6659952 * r6659936;
        double r6659954 = r6659951 - r6659953;
        double r6659955 = t;
        double r6659956 = r6659954 * r6659955;
        double r6659957 = r6659946 + r6659956;
        double r6659958 = 2.7764126058213553e+165;
        bool r6659959 = r6659929 <= r6659958;
        double r6659960 = r6659929 * r6659947;
        double r6659961 = r6659960 * r6659949;
        double r6659962 = r6659961 * r6659935;
        double r6659963 = r6659962 - r6659953;
        double r6659964 = cbrt(r6659963);
        double r6659965 = r6659964 * r6659964;
        double r6659966 = r6659965 * r6659955;
        double r6659967 = r6659964 * r6659966;
        double r6659968 = r6659943 * r6659941;
        double r6659969 = r6659940 * r6659968;
        double r6659970 = r6659969 + r6659939;
        double r6659971 = r6659934 - r6659970;
        double r6659972 = r6659967 + r6659971;
        double r6659973 = -r6659955;
        double r6659974 = r6659973 * r6659953;
        double r6659975 = r6659974 + r6659971;
        double r6659976 = r6659959 ? r6659972 : r6659975;
        double r6659977 = r6659931 ? r6659957 : r6659976;
        return r6659977;
}

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

Bits error versus k

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Split input into 3 regimes
  2. if z < -1.1315498986599681e-55

    1. Initial program 6.3

      \[\left(\left(\left(\left(\left(\left(x \cdot 18.0\right) \cdot y\right) \cdot z\right) \cdot t - \left(a \cdot 4.0\right) \cdot t\right) + b \cdot c\right) - \left(x \cdot 4.0\right) \cdot i\right) - \left(j \cdot 27.0\right) \cdot k\]
    2. Simplified11.2

      \[\leadsto \color{blue}{\left(b \cdot c - \left(k \cdot \left(27.0 \cdot j\right) + i \cdot \left(4.0 \cdot x\right)\right)\right) + t \cdot \left(\left(y \cdot \left(z \cdot 18.0\right)\right) \cdot x - a \cdot 4.0\right)}\]
    3. Taylor expanded around inf 11.0

      \[\leadsto \left(b \cdot c - \left(k \cdot \left(27.0 \cdot j\right) + i \cdot \left(4.0 \cdot x\right)\right)\right) + \color{blue}{\left(18.0 \cdot \left(t \cdot \left(x \cdot \left(z \cdot y\right)\right)\right) - 4.0 \cdot \left(a \cdot t\right)\right)}\]
    4. Simplified6.3

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

    if -1.1315498986599681e-55 < z < 2.7764126058213553e+165

    1. Initial program 4.5

      \[\left(\left(\left(\left(\left(\left(x \cdot 18.0\right) \cdot y\right) \cdot z\right) \cdot t - \left(a \cdot 4.0\right) \cdot t\right) + b \cdot c\right) - \left(x \cdot 4.0\right) \cdot i\right) - \left(j \cdot 27.0\right) \cdot k\]
    2. Simplified2.5

      \[\leadsto \color{blue}{\left(b \cdot c - \left(k \cdot \left(27.0 \cdot j\right) + i \cdot \left(4.0 \cdot x\right)\right)\right) + t \cdot \left(\left(y \cdot \left(z \cdot 18.0\right)\right) \cdot x - a \cdot 4.0\right)}\]
    3. Taylor expanded around 0 2.4

      \[\leadsto \left(b \cdot c - \left(\color{blue}{27.0 \cdot \left(j \cdot k\right)} + i \cdot \left(4.0 \cdot x\right)\right)\right) + t \cdot \left(\left(y \cdot \left(z \cdot 18.0\right)\right) \cdot x - a \cdot 4.0\right)\]
    4. Using strategy rm
    5. Applied add-cube-cbrt2.8

      \[\leadsto \left(b \cdot c - \left(27.0 \cdot \left(j \cdot k\right) + i \cdot \left(4.0 \cdot x\right)\right)\right) + t \cdot \color{blue}{\left(\left(\sqrt[3]{\left(y \cdot \left(z \cdot 18.0\right)\right) \cdot x - a \cdot 4.0} \cdot \sqrt[3]{\left(y \cdot \left(z \cdot 18.0\right)\right) \cdot x - a \cdot 4.0}\right) \cdot \sqrt[3]{\left(y \cdot \left(z \cdot 18.0\right)\right) \cdot x - a \cdot 4.0}\right)}\]
    6. Applied associate-*r*2.8

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

    if 2.7764126058213553e+165 < z

    1. Initial program 9.6

      \[\left(\left(\left(\left(\left(\left(x \cdot 18.0\right) \cdot y\right) \cdot z\right) \cdot t - \left(a \cdot 4.0\right) \cdot t\right) + b \cdot c\right) - \left(x \cdot 4.0\right) \cdot i\right) - \left(j \cdot 27.0\right) \cdot k\]
    2. Simplified19.3

      \[\leadsto \color{blue}{\left(b \cdot c - \left(k \cdot \left(27.0 \cdot j\right) + i \cdot \left(4.0 \cdot x\right)\right)\right) + t \cdot \left(\left(y \cdot \left(z \cdot 18.0\right)\right) \cdot x - a \cdot 4.0\right)}\]
    3. Taylor expanded around 0 19.2

      \[\leadsto \left(b \cdot c - \left(\color{blue}{27.0 \cdot \left(j \cdot k\right)} + i \cdot \left(4.0 \cdot x\right)\right)\right) + t \cdot \left(\left(y \cdot \left(z \cdot 18.0\right)\right) \cdot x - a \cdot 4.0\right)\]
    4. Taylor expanded around 0 18.2

      \[\leadsto \left(b \cdot c - \left(27.0 \cdot \left(j \cdot k\right) + i \cdot \left(4.0 \cdot x\right)\right)\right) + t \cdot \left(\color{blue}{0} - a \cdot 4.0\right)\]
  3. Recombined 3 regimes into one program.
  4. Final simplification5.1

    \[\leadsto \begin{array}{l} \mathbf{if}\;z \le -1.1315498986599681 \cdot 10^{-55}:\\ \;\;\;\;\left(b \cdot c - \left(\left(x \cdot 4.0\right) \cdot i + \left(27.0 \cdot j\right) \cdot k\right)\right) + \left(z \cdot \left(\left(x \cdot 18.0\right) \cdot y\right) - a \cdot 4.0\right) \cdot t\\ \mathbf{elif}\;z \le 2.7764126058213553 \cdot 10^{+165}:\\ \;\;\;\;\sqrt[3]{\left(\left(z \cdot 18.0\right) \cdot y\right) \cdot x - a \cdot 4.0} \cdot \left(\left(\sqrt[3]{\left(\left(z \cdot 18.0\right) \cdot y\right) \cdot x - a \cdot 4.0} \cdot \sqrt[3]{\left(\left(z \cdot 18.0\right) \cdot y\right) \cdot x - a \cdot 4.0}\right) \cdot t\right) + \left(b \cdot c - \left(27.0 \cdot \left(k \cdot j\right) + \left(x \cdot 4.0\right) \cdot i\right)\right)\\ \mathbf{else}:\\ \;\;\;\;\left(-t\right) \cdot \left(a \cdot 4.0\right) + \left(b \cdot c - \left(27.0 \cdot \left(k \cdot j\right) + \left(x \cdot 4.0\right) \cdot i\right)\right)\\ \end{array}\]

Reproduce

herbie shell --seed 2019163 
(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)))