Average Error: 5.1 → 4.5
Time: 23.4s
Precision: 64
\[\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 7.404784423365476984151156392838614414705 \cdot 10^{68}:\\ \;\;\;\;\left(\left(\left(x \cdot \left(y \cdot 18\right)\right) \cdot \left(z \cdot t\right) + t \cdot \left(-a \cdot 4\right)\right) + b \cdot c\right) - \left(\left(x \cdot 4\right) \cdot i + \left(j \cdot 27\right) \cdot k\right)\\ \mathbf{else}:\\ \;\;\;\;\left(\left(18 \cdot \left(x \cdot \left(z \cdot y\right)\right) - a \cdot 4\right) \cdot t + b \cdot c\right) - \left(\left(x \cdot 4\right) \cdot i + \left(j \cdot 27\right) \cdot k\right)\\ \end{array}\]
\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 7.404784423365476984151156392838614414705 \cdot 10^{68}:\\
\;\;\;\;\left(\left(\left(x \cdot \left(y \cdot 18\right)\right) \cdot \left(z \cdot t\right) + t \cdot \left(-a \cdot 4\right)\right) + b \cdot c\right) - \left(\left(x \cdot 4\right) \cdot i + \left(j \cdot 27\right) \cdot k\right)\\

\mathbf{else}:\\
\;\;\;\;\left(\left(18 \cdot \left(x \cdot \left(z \cdot y\right)\right) - a \cdot 4\right) \cdot t + b \cdot c\right) - \left(\left(x \cdot 4\right) \cdot i + \left(j \cdot 27\right) \cdot k\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 r101987 = x;
        double r101988 = 18.0;
        double r101989 = r101987 * r101988;
        double r101990 = y;
        double r101991 = r101989 * r101990;
        double r101992 = z;
        double r101993 = r101991 * r101992;
        double r101994 = t;
        double r101995 = r101993 * r101994;
        double r101996 = a;
        double r101997 = 4.0;
        double r101998 = r101996 * r101997;
        double r101999 = r101998 * r101994;
        double r102000 = r101995 - r101999;
        double r102001 = b;
        double r102002 = c;
        double r102003 = r102001 * r102002;
        double r102004 = r102000 + r102003;
        double r102005 = r101987 * r101997;
        double r102006 = i;
        double r102007 = r102005 * r102006;
        double r102008 = r102004 - r102007;
        double r102009 = j;
        double r102010 = 27.0;
        double r102011 = r102009 * r102010;
        double r102012 = k;
        double r102013 = r102011 * r102012;
        double r102014 = r102008 - r102013;
        return r102014;
}

double f(double x, double y, double z, double t, double a, double b, double c, double i, double j, double k) {
        double r102015 = t;
        double r102016 = 7.404784423365477e+68;
        bool r102017 = r102015 <= r102016;
        double r102018 = x;
        double r102019 = y;
        double r102020 = 18.0;
        double r102021 = r102019 * r102020;
        double r102022 = r102018 * r102021;
        double r102023 = z;
        double r102024 = r102023 * r102015;
        double r102025 = r102022 * r102024;
        double r102026 = a;
        double r102027 = 4.0;
        double r102028 = r102026 * r102027;
        double r102029 = -r102028;
        double r102030 = r102015 * r102029;
        double r102031 = r102025 + r102030;
        double r102032 = b;
        double r102033 = c;
        double r102034 = r102032 * r102033;
        double r102035 = r102031 + r102034;
        double r102036 = r102018 * r102027;
        double r102037 = i;
        double r102038 = r102036 * r102037;
        double r102039 = j;
        double r102040 = 27.0;
        double r102041 = r102039 * r102040;
        double r102042 = k;
        double r102043 = r102041 * r102042;
        double r102044 = r102038 + r102043;
        double r102045 = r102035 - r102044;
        double r102046 = r102023 * r102019;
        double r102047 = r102018 * r102046;
        double r102048 = r102020 * r102047;
        double r102049 = r102048 - r102028;
        double r102050 = r102049 * r102015;
        double r102051 = r102050 + r102034;
        double r102052 = r102051 - r102044;
        double r102053 = r102017 ? r102045 : r102052;
        return r102053;
}

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 2 regimes
  2. if t < 7.404784423365477e+68

    1. Initial program 5.6

      \[\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\]
    2. Simplified5.6

      \[\leadsto \color{blue}{\left(t \cdot \left(\left(\left(x \cdot 18\right) \cdot y\right) \cdot z - a \cdot 4\right) + b \cdot c\right) - \left(\left(x \cdot 4\right) \cdot i + \left(j \cdot 27\right) \cdot k\right)}\]
    3. Using strategy rm
    4. Applied associate-*l*5.6

      \[\leadsto \left(t \cdot \left(\color{blue}{\left(x \cdot \left(18 \cdot y\right)\right)} \cdot z - a \cdot 4\right) + b \cdot c\right) - \left(\left(x \cdot 4\right) \cdot i + \left(j \cdot 27\right) \cdot k\right)\]
    5. Simplified5.6

      \[\leadsto \left(t \cdot \left(\left(x \cdot \color{blue}{\left(y \cdot 18\right)}\right) \cdot z - a \cdot 4\right) + b \cdot c\right) - \left(\left(x \cdot 4\right) \cdot i + \left(j \cdot 27\right) \cdot k\right)\]
    6. Using strategy rm
    7. Applied sub-neg5.6

      \[\leadsto \left(t \cdot \color{blue}{\left(\left(x \cdot \left(y \cdot 18\right)\right) \cdot z + \left(-a \cdot 4\right)\right)} + b \cdot c\right) - \left(\left(x \cdot 4\right) \cdot i + \left(j \cdot 27\right) \cdot k\right)\]
    8. Applied distribute-lft-in5.6

      \[\leadsto \left(\color{blue}{\left(t \cdot \left(\left(x \cdot \left(y \cdot 18\right)\right) \cdot z\right) + t \cdot \left(-a \cdot 4\right)\right)} + b \cdot c\right) - \left(\left(x \cdot 4\right) \cdot i + \left(j \cdot 27\right) \cdot k\right)\]
    9. Simplified4.9

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

    if 7.404784423365477e+68 < t

    1. Initial program 1.4

      \[\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\]
    2. Simplified1.4

      \[\leadsto \color{blue}{\left(t \cdot \left(\left(\left(x \cdot 18\right) \cdot y\right) \cdot z - a \cdot 4\right) + b \cdot c\right) - \left(\left(x \cdot 4\right) \cdot i + \left(j \cdot 27\right) \cdot k\right)}\]
    3. Using strategy rm
    4. Applied pow11.4

      \[\leadsto \left(t \cdot \left(\left(\left(x \cdot 18\right) \cdot y\right) \cdot \color{blue}{{z}^{1}} - a \cdot 4\right) + b \cdot c\right) - \left(\left(x \cdot 4\right) \cdot i + \left(j \cdot 27\right) \cdot k\right)\]
    5. Applied pow11.4

      \[\leadsto \left(t \cdot \left(\left(\left(x \cdot 18\right) \cdot \color{blue}{{y}^{1}}\right) \cdot {z}^{1} - a \cdot 4\right) + b \cdot c\right) - \left(\left(x \cdot 4\right) \cdot i + \left(j \cdot 27\right) \cdot k\right)\]
    6. Applied pow11.4

      \[\leadsto \left(t \cdot \left(\left(\left(x \cdot \color{blue}{{18}^{1}}\right) \cdot {y}^{1}\right) \cdot {z}^{1} - a \cdot 4\right) + b \cdot c\right) - \left(\left(x \cdot 4\right) \cdot i + \left(j \cdot 27\right) \cdot k\right)\]
    7. Applied pow11.4

      \[\leadsto \left(t \cdot \left(\left(\left(\color{blue}{{x}^{1}} \cdot {18}^{1}\right) \cdot {y}^{1}\right) \cdot {z}^{1} - a \cdot 4\right) + b \cdot c\right) - \left(\left(x \cdot 4\right) \cdot i + \left(j \cdot 27\right) \cdot k\right)\]
    8. Applied pow-prod-down1.4

      \[\leadsto \left(t \cdot \left(\left(\color{blue}{{\left(x \cdot 18\right)}^{1}} \cdot {y}^{1}\right) \cdot {z}^{1} - a \cdot 4\right) + b \cdot c\right) - \left(\left(x \cdot 4\right) \cdot i + \left(j \cdot 27\right) \cdot k\right)\]
    9. Applied pow-prod-down1.4

      \[\leadsto \left(t \cdot \left(\color{blue}{{\left(\left(x \cdot 18\right) \cdot y\right)}^{1}} \cdot {z}^{1} - a \cdot 4\right) + b \cdot c\right) - \left(\left(x \cdot 4\right) \cdot i + \left(j \cdot 27\right) \cdot k\right)\]
    10. Applied pow-prod-down1.4

      \[\leadsto \left(t \cdot \left(\color{blue}{{\left(\left(\left(x \cdot 18\right) \cdot y\right) \cdot z\right)}^{1}} - a \cdot 4\right) + b \cdot c\right) - \left(\left(x \cdot 4\right) \cdot i + \left(j \cdot 27\right) \cdot k\right)\]
    11. Simplified1.7

      \[\leadsto \left(t \cdot \left({\color{blue}{\left(18 \cdot \left(x \cdot \left(z \cdot y\right)\right)\right)}}^{1} - a \cdot 4\right) + b \cdot c\right) - \left(\left(x \cdot 4\right) \cdot i + \left(j \cdot 27\right) \cdot k\right)\]
  3. Recombined 2 regimes into one program.
  4. Final simplification4.5

    \[\leadsto \begin{array}{l} \mathbf{if}\;t \le 7.404784423365476984151156392838614414705 \cdot 10^{68}:\\ \;\;\;\;\left(\left(\left(x \cdot \left(y \cdot 18\right)\right) \cdot \left(z \cdot t\right) + t \cdot \left(-a \cdot 4\right)\right) + b \cdot c\right) - \left(\left(x \cdot 4\right) \cdot i + \left(j \cdot 27\right) \cdot k\right)\\ \mathbf{else}:\\ \;\;\;\;\left(\left(18 \cdot \left(x \cdot \left(z \cdot y\right)\right) - a \cdot 4\right) \cdot t + b \cdot c\right) - \left(\left(x \cdot 4\right) \cdot i + \left(j \cdot 27\right) \cdot k\right)\\ \end{array}\]

Reproduce

herbie shell --seed 2019209 
(FPCore (x y z t a b c i j k)
  :name "Diagrams.Solve.Polynomial:cubForm  from diagrams-solve-0.1"
  :precision binary64
  (- (- (+ (- (* (* (* (* x 18) y) z) t) (* (* a 4) t)) (* b c)) (* (* x 4) i)) (* (* j 27) k)))