Average Error: 11.9 → 12.1
Time: 52.5s
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 r14885327 = x;
        double r14885328 = y;
        double r14885329 = z;
        double r14885330 = r14885328 * r14885329;
        double r14885331 = t;
        double r14885332 = a;
        double r14885333 = r14885331 * r14885332;
        double r14885334 = r14885330 - r14885333;
        double r14885335 = r14885327 * r14885334;
        double r14885336 = b;
        double r14885337 = c;
        double r14885338 = r14885337 * r14885329;
        double r14885339 = i;
        double r14885340 = r14885339 * r14885332;
        double r14885341 = r14885338 - r14885340;
        double r14885342 = r14885336 * r14885341;
        double r14885343 = r14885335 - r14885342;
        double r14885344 = j;
        double r14885345 = r14885337 * r14885331;
        double r14885346 = r14885339 * r14885328;
        double r14885347 = r14885345 - r14885346;
        double r14885348 = r14885344 * r14885347;
        double r14885349 = r14885343 + r14885348;
        return r14885349;
}

double f(double x, double y, double z, double t, double a, double b, double c, double i, double j) {
        double r14885350 = x;
        double r14885351 = -1.8877308795147688e-211;
        bool r14885352 = r14885350 <= r14885351;
        double r14885353 = y;
        double r14885354 = z;
        double r14885355 = r14885353 * r14885354;
        double r14885356 = a;
        double r14885357 = t;
        double r14885358 = r14885356 * r14885357;
        double r14885359 = r14885355 - r14885358;
        double r14885360 = r14885359 * r14885350;
        double r14885361 = b;
        double r14885362 = c;
        double r14885363 = r14885354 * r14885362;
        double r14885364 = i;
        double r14885365 = r14885364 * r14885356;
        double r14885366 = r14885363 - r14885365;
        double r14885367 = r14885361 * r14885366;
        double r14885368 = r14885360 - r14885367;
        double r14885369 = r14885362 * r14885357;
        double r14885370 = r14885364 * r14885353;
        double r14885371 = r14885369 - r14885370;
        double r14885372 = cbrt(r14885371);
        double r14885373 = r14885372 * r14885372;
        double r14885374 = cbrt(r14885373);
        double r14885375 = cbrt(r14885372);
        double r14885376 = r14885374 * r14885375;
        double r14885377 = r14885376 * r14885372;
        double r14885378 = j;
        double r14885379 = r14885377 * r14885378;
        double r14885380 = r14885379 * r14885372;
        double r14885381 = r14885368 + r14885380;
        double r14885382 = 1.1906924505533202e-234;
        bool r14885383 = r14885350 <= r14885382;
        double r14885384 = -r14885361;
        double r14885385 = r14885384 * r14885366;
        double r14885386 = r14885378 * r14885371;
        double r14885387 = r14885385 + r14885386;
        double r14885388 = cbrt(r14885361);
        double r14885389 = r14885388 * r14885388;
        double r14885390 = r14885388 * r14885366;
        double r14885391 = r14885389 * r14885390;
        double r14885392 = r14885360 - r14885391;
        double r14885393 = r14885392 + r14885386;
        double r14885394 = r14885383 ? r14885387 : r14885393;
        double r14885395 = r14885352 ? r14885381 : r14885394;
        return r14885395;
}

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 
(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)))))