Average Error: 20.3 → 8.1
Time: 7.1s
Precision: 64
\[\frac{\left(\left(x \cdot 9\right) \cdot y - \left(\left(z \cdot 4\right) \cdot t\right) \cdot a\right) + b}{z \cdot c}\]
\[\begin{array}{l} \mathbf{if}\;z \le -1.2968195247031482 \cdot 10^{259}:\\ \;\;\;\;\left(\frac{\sqrt[3]{b} \cdot \sqrt[3]{b}}{z} \cdot \frac{\sqrt[3]{b}}{c} + 9 \cdot \left(\frac{\sqrt[3]{x} \cdot \sqrt[3]{x}}{\frac{z}{\sqrt[3]{y} \cdot \sqrt[3]{y}}} \cdot \frac{\sqrt[3]{x}}{\frac{c}{\sqrt[3]{y}}}\right)\right) - 4 \cdot \frac{a \cdot t}{c}\\ \mathbf{elif}\;z \le -1.75501527398249654 \cdot 10^{179}:\\ \;\;\;\;\left(\frac{b}{z \cdot c} + 9 \cdot \frac{x}{\frac{z \cdot c}{y}}\right) - 4 \cdot \frac{a}{\frac{c}{t}}\\ \mathbf{elif}\;z \le -1.30643333571272192 \cdot 10^{-133}:\\ \;\;\;\;\left(\frac{b}{z \cdot c} + \left(9 \cdot \frac{x}{z}\right) \cdot \frac{y}{c}\right) - 4 \cdot \frac{a \cdot t}{c}\\ \mathbf{elif}\;z \le 8.4931605539463159 \cdot 10^{67}:\\ \;\;\;\;\left(\frac{b}{z \cdot c} + 9 \cdot \frac{x}{\frac{z \cdot c}{y}}\right) - 4 \cdot \frac{a}{\frac{c}{t}}\\ \mathbf{else}:\\ \;\;\;\;\left(\frac{\sqrt[3]{b} \cdot \sqrt[3]{b}}{z} \cdot \frac{\sqrt[3]{b}}{c} + 9 \cdot \left(\frac{\sqrt[3]{x} \cdot \sqrt[3]{x}}{\frac{z}{\sqrt[3]{y} \cdot \sqrt[3]{y}}} \cdot \frac{\sqrt[3]{x}}{\frac{c}{\sqrt[3]{y}}}\right)\right) - 4 \cdot \frac{a \cdot t}{c}\\ \end{array}\]
\frac{\left(\left(x \cdot 9\right) \cdot y - \left(\left(z \cdot 4\right) \cdot t\right) \cdot a\right) + b}{z \cdot c}
\begin{array}{l}
\mathbf{if}\;z \le -1.2968195247031482 \cdot 10^{259}:\\
\;\;\;\;\left(\frac{\sqrt[3]{b} \cdot \sqrt[3]{b}}{z} \cdot \frac{\sqrt[3]{b}}{c} + 9 \cdot \left(\frac{\sqrt[3]{x} \cdot \sqrt[3]{x}}{\frac{z}{\sqrt[3]{y} \cdot \sqrt[3]{y}}} \cdot \frac{\sqrt[3]{x}}{\frac{c}{\sqrt[3]{y}}}\right)\right) - 4 \cdot \frac{a \cdot t}{c}\\

\mathbf{elif}\;z \le -1.75501527398249654 \cdot 10^{179}:\\
\;\;\;\;\left(\frac{b}{z \cdot c} + 9 \cdot \frac{x}{\frac{z \cdot c}{y}}\right) - 4 \cdot \frac{a}{\frac{c}{t}}\\

\mathbf{elif}\;z \le -1.30643333571272192 \cdot 10^{-133}:\\
\;\;\;\;\left(\frac{b}{z \cdot c} + \left(9 \cdot \frac{x}{z}\right) \cdot \frac{y}{c}\right) - 4 \cdot \frac{a \cdot t}{c}\\

\mathbf{elif}\;z \le 8.4931605539463159 \cdot 10^{67}:\\
\;\;\;\;\left(\frac{b}{z \cdot c} + 9 \cdot \frac{x}{\frac{z \cdot c}{y}}\right) - 4 \cdot \frac{a}{\frac{c}{t}}\\

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

\end{array}
double f(double x, double y, double z, double t, double a, double b, double c) {
        double r654448 = x;
        double r654449 = 9.0;
        double r654450 = r654448 * r654449;
        double r654451 = y;
        double r654452 = r654450 * r654451;
        double r654453 = z;
        double r654454 = 4.0;
        double r654455 = r654453 * r654454;
        double r654456 = t;
        double r654457 = r654455 * r654456;
        double r654458 = a;
        double r654459 = r654457 * r654458;
        double r654460 = r654452 - r654459;
        double r654461 = b;
        double r654462 = r654460 + r654461;
        double r654463 = c;
        double r654464 = r654453 * r654463;
        double r654465 = r654462 / r654464;
        return r654465;
}

double f(double x, double y, double z, double t, double a, double b, double c) {
        double r654466 = z;
        double r654467 = -1.2968195247031482e+259;
        bool r654468 = r654466 <= r654467;
        double r654469 = b;
        double r654470 = cbrt(r654469);
        double r654471 = r654470 * r654470;
        double r654472 = r654471 / r654466;
        double r654473 = c;
        double r654474 = r654470 / r654473;
        double r654475 = r654472 * r654474;
        double r654476 = 9.0;
        double r654477 = x;
        double r654478 = cbrt(r654477);
        double r654479 = r654478 * r654478;
        double r654480 = y;
        double r654481 = cbrt(r654480);
        double r654482 = r654481 * r654481;
        double r654483 = r654466 / r654482;
        double r654484 = r654479 / r654483;
        double r654485 = r654473 / r654481;
        double r654486 = r654478 / r654485;
        double r654487 = r654484 * r654486;
        double r654488 = r654476 * r654487;
        double r654489 = r654475 + r654488;
        double r654490 = 4.0;
        double r654491 = a;
        double r654492 = t;
        double r654493 = r654491 * r654492;
        double r654494 = r654493 / r654473;
        double r654495 = r654490 * r654494;
        double r654496 = r654489 - r654495;
        double r654497 = -1.7550152739824965e+179;
        bool r654498 = r654466 <= r654497;
        double r654499 = r654466 * r654473;
        double r654500 = r654469 / r654499;
        double r654501 = r654499 / r654480;
        double r654502 = r654477 / r654501;
        double r654503 = r654476 * r654502;
        double r654504 = r654500 + r654503;
        double r654505 = r654473 / r654492;
        double r654506 = r654491 / r654505;
        double r654507 = r654490 * r654506;
        double r654508 = r654504 - r654507;
        double r654509 = -1.306433335712722e-133;
        bool r654510 = r654466 <= r654509;
        double r654511 = r654477 / r654466;
        double r654512 = r654476 * r654511;
        double r654513 = r654480 / r654473;
        double r654514 = r654512 * r654513;
        double r654515 = r654500 + r654514;
        double r654516 = r654515 - r654495;
        double r654517 = 8.493160553946316e+67;
        bool r654518 = r654466 <= r654517;
        double r654519 = r654518 ? r654508 : r654496;
        double r654520 = r654510 ? r654516 : r654519;
        double r654521 = r654498 ? r654508 : r654520;
        double r654522 = r654468 ? r654496 : r654521;
        return r654522;
}

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

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Target

Original20.3
Target14.4
Herbie8.1
\[\begin{array}{l} \mathbf{if}\;\frac{\left(\left(x \cdot 9\right) \cdot y - \left(\left(z \cdot 4\right) \cdot t\right) \cdot a\right) + b}{z \cdot c} \lt -1.10015674080410512 \cdot 10^{-171}:\\ \;\;\;\;\frac{\left(\left(x \cdot 9\right) \cdot y - \left(z \cdot 4\right) \cdot \left(t \cdot a\right)\right) + b}{z \cdot c}\\ \mathbf{elif}\;\frac{\left(\left(x \cdot 9\right) \cdot y - \left(\left(z \cdot 4\right) \cdot t\right) \cdot a\right) + b}{z \cdot c} \lt -0.0:\\ \;\;\;\;\frac{\frac{\left(\left(x \cdot 9\right) \cdot y - \left(\left(z \cdot 4\right) \cdot t\right) \cdot a\right) + b}{z}}{c}\\ \mathbf{elif}\;\frac{\left(\left(x \cdot 9\right) \cdot y - \left(\left(z \cdot 4\right) \cdot t\right) \cdot a\right) + b}{z \cdot c} \lt 1.17088779117474882 \cdot 10^{-53}:\\ \;\;\;\;\frac{\left(\left(x \cdot 9\right) \cdot y - \left(z \cdot 4\right) \cdot \left(t \cdot a\right)\right) + b}{z \cdot c}\\ \mathbf{elif}\;\frac{\left(\left(x \cdot 9\right) \cdot y - \left(\left(z \cdot 4\right) \cdot t\right) \cdot a\right) + b}{z \cdot c} \lt 2.8768236795461372 \cdot 10^{130}:\\ \;\;\;\;\left(\left(9 \cdot \frac{y}{c}\right) \cdot \frac{x}{z} + \frac{b}{c \cdot z}\right) - 4 \cdot \frac{a \cdot t}{c}\\ \mathbf{elif}\;\frac{\left(\left(x \cdot 9\right) \cdot y - \left(\left(z \cdot 4\right) \cdot t\right) \cdot a\right) + b}{z \cdot c} \lt 1.3838515042456319 \cdot 10^{158}:\\ \;\;\;\;\frac{\left(\left(x \cdot 9\right) \cdot y - \left(z \cdot 4\right) \cdot \left(t \cdot a\right)\right) + b}{z \cdot c}\\ \mathbf{else}:\\ \;\;\;\;\left(9 \cdot \left(\frac{y}{c \cdot z} \cdot x\right) + \frac{b}{c \cdot z}\right) - 4 \cdot \frac{a \cdot t}{c}\\ \end{array}\]

Derivation

  1. Split input into 3 regimes
  2. if z < -1.2968195247031482e+259 or 8.493160553946316e+67 < z

    1. Initial program 35.4

      \[\frac{\left(\left(x \cdot 9\right) \cdot y - \left(\left(z \cdot 4\right) \cdot t\right) \cdot a\right) + b}{z \cdot c}\]
    2. Taylor expanded around 0 15.2

      \[\leadsto \color{blue}{\left(\frac{b}{z \cdot c} + 9 \cdot \frac{x \cdot y}{z \cdot c}\right) - 4 \cdot \frac{a \cdot t}{c}}\]
    3. Using strategy rm
    4. Applied associate-/l*12.3

      \[\leadsto \left(\frac{b}{z \cdot c} + 9 \cdot \color{blue}{\frac{x}{\frac{z \cdot c}{y}}}\right) - 4 \cdot \frac{a \cdot t}{c}\]
    5. Using strategy rm
    6. Applied add-cube-cbrt12.4

      \[\leadsto \left(\frac{b}{z \cdot c} + 9 \cdot \frac{x}{\frac{z \cdot c}{\color{blue}{\left(\sqrt[3]{y} \cdot \sqrt[3]{y}\right) \cdot \sqrt[3]{y}}}}\right) - 4 \cdot \frac{a \cdot t}{c}\]
    7. Applied times-frac9.7

      \[\leadsto \left(\frac{b}{z \cdot c} + 9 \cdot \frac{x}{\color{blue}{\frac{z}{\sqrt[3]{y} \cdot \sqrt[3]{y}} \cdot \frac{c}{\sqrt[3]{y}}}}\right) - 4 \cdot \frac{a \cdot t}{c}\]
    8. Applied add-cube-cbrt9.8

      \[\leadsto \left(\frac{b}{z \cdot c} + 9 \cdot \frac{\color{blue}{\left(\sqrt[3]{x} \cdot \sqrt[3]{x}\right) \cdot \sqrt[3]{x}}}{\frac{z}{\sqrt[3]{y} \cdot \sqrt[3]{y}} \cdot \frac{c}{\sqrt[3]{y}}}\right) - 4 \cdot \frac{a \cdot t}{c}\]
    9. Applied times-frac8.5

      \[\leadsto \left(\frac{b}{z \cdot c} + 9 \cdot \color{blue}{\left(\frac{\sqrt[3]{x} \cdot \sqrt[3]{x}}{\frac{z}{\sqrt[3]{y} \cdot \sqrt[3]{y}}} \cdot \frac{\sqrt[3]{x}}{\frac{c}{\sqrt[3]{y}}}\right)}\right) - 4 \cdot \frac{a \cdot t}{c}\]
    10. Using strategy rm
    11. Applied add-cube-cbrt8.6

      \[\leadsto \left(\frac{\color{blue}{\left(\sqrt[3]{b} \cdot \sqrt[3]{b}\right) \cdot \sqrt[3]{b}}}{z \cdot c} + 9 \cdot \left(\frac{\sqrt[3]{x} \cdot \sqrt[3]{x}}{\frac{z}{\sqrt[3]{y} \cdot \sqrt[3]{y}}} \cdot \frac{\sqrt[3]{x}}{\frac{c}{\sqrt[3]{y}}}\right)\right) - 4 \cdot \frac{a \cdot t}{c}\]
    12. Applied times-frac6.3

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

    if -1.2968195247031482e+259 < z < -1.7550152739824965e+179 or -1.306433335712722e-133 < z < 8.493160553946316e+67

    1. Initial program 12.7

      \[\frac{\left(\left(x \cdot 9\right) \cdot y - \left(\left(z \cdot 4\right) \cdot t\right) \cdot a\right) + b}{z \cdot c}\]
    2. Taylor expanded around 0 9.5

      \[\leadsto \color{blue}{\left(\frac{b}{z \cdot c} + 9 \cdot \frac{x \cdot y}{z \cdot c}\right) - 4 \cdot \frac{a \cdot t}{c}}\]
    3. Using strategy rm
    4. Applied associate-/l*10.1

      \[\leadsto \left(\frac{b}{z \cdot c} + 9 \cdot \color{blue}{\frac{x}{\frac{z \cdot c}{y}}}\right) - 4 \cdot \frac{a \cdot t}{c}\]
    5. Using strategy rm
    6. Applied associate-/l*8.3

      \[\leadsto \left(\frac{b}{z \cdot c} + 9 \cdot \frac{x}{\frac{z \cdot c}{y}}\right) - 4 \cdot \color{blue}{\frac{a}{\frac{c}{t}}}\]

    if -1.7550152739824965e+179 < z < -1.306433335712722e-133

    1. Initial program 16.2

      \[\frac{\left(\left(x \cdot 9\right) \cdot y - \left(\left(z \cdot 4\right) \cdot t\right) \cdot a\right) + b}{z \cdot c}\]
    2. Taylor expanded around 0 10.8

      \[\leadsto \color{blue}{\left(\frac{b}{z \cdot c} + 9 \cdot \frac{x \cdot y}{z \cdot c}\right) - 4 \cdot \frac{a \cdot t}{c}}\]
    3. Using strategy rm
    4. Applied times-frac9.9

      \[\leadsto \left(\frac{b}{z \cdot c} + 9 \cdot \color{blue}{\left(\frac{x}{z} \cdot \frac{y}{c}\right)}\right) - 4 \cdot \frac{a \cdot t}{c}\]
    5. Applied associate-*r*9.9

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

    \[\leadsto \begin{array}{l} \mathbf{if}\;z \le -1.2968195247031482 \cdot 10^{259}:\\ \;\;\;\;\left(\frac{\sqrt[3]{b} \cdot \sqrt[3]{b}}{z} \cdot \frac{\sqrt[3]{b}}{c} + 9 \cdot \left(\frac{\sqrt[3]{x} \cdot \sqrt[3]{x}}{\frac{z}{\sqrt[3]{y} \cdot \sqrt[3]{y}}} \cdot \frac{\sqrt[3]{x}}{\frac{c}{\sqrt[3]{y}}}\right)\right) - 4 \cdot \frac{a \cdot t}{c}\\ \mathbf{elif}\;z \le -1.75501527398249654 \cdot 10^{179}:\\ \;\;\;\;\left(\frac{b}{z \cdot c} + 9 \cdot \frac{x}{\frac{z \cdot c}{y}}\right) - 4 \cdot \frac{a}{\frac{c}{t}}\\ \mathbf{elif}\;z \le -1.30643333571272192 \cdot 10^{-133}:\\ \;\;\;\;\left(\frac{b}{z \cdot c} + \left(9 \cdot \frac{x}{z}\right) \cdot \frac{y}{c}\right) - 4 \cdot \frac{a \cdot t}{c}\\ \mathbf{elif}\;z \le 8.4931605539463159 \cdot 10^{67}:\\ \;\;\;\;\left(\frac{b}{z \cdot c} + 9 \cdot \frac{x}{\frac{z \cdot c}{y}}\right) - 4 \cdot \frac{a}{\frac{c}{t}}\\ \mathbf{else}:\\ \;\;\;\;\left(\frac{\sqrt[3]{b} \cdot \sqrt[3]{b}}{z} \cdot \frac{\sqrt[3]{b}}{c} + 9 \cdot \left(\frac{\sqrt[3]{x} \cdot \sqrt[3]{x}}{\frac{z}{\sqrt[3]{y} \cdot \sqrt[3]{y}}} \cdot \frac{\sqrt[3]{x}}{\frac{c}{\sqrt[3]{y}}}\right)\right) - 4 \cdot \frac{a \cdot t}{c}\\ \end{array}\]

Reproduce

herbie shell --seed 2020064 
(FPCore (x y z t a b c)
  :name "Diagrams.Solve.Polynomial:cubForm  from diagrams-solve-0.1, J"
  :precision binary64

  :herbie-target
  (if (< (/ (+ (- (* (* x 9) y) (* (* (* z 4) t) a)) b) (* z c)) -1.1001567408041051e-171) (/ (+ (- (* (* x 9) y) (* (* z 4) (* t a))) b) (* z c)) (if (< (/ (+ (- (* (* x 9) y) (* (* (* z 4) t) a)) b) (* z c)) -0.0) (/ (/ (+ (- (* (* x 9) y) (* (* (* z 4) t) a)) b) z) c) (if (< (/ (+ (- (* (* x 9) y) (* (* (* z 4) t) a)) b) (* z c)) 1.1708877911747488e-53) (/ (+ (- (* (* x 9) y) (* (* z 4) (* t a))) b) (* z c)) (if (< (/ (+ (- (* (* x 9) y) (* (* (* z 4) t) a)) b) (* z c)) 2.876823679546137e+130) (- (+ (* (* 9 (/ y c)) (/ x z)) (/ b (* c z))) (* 4 (/ (* a t) c))) (if (< (/ (+ (- (* (* x 9) y) (* (* (* z 4) t) a)) b) (* z c)) 1.3838515042456319e+158) (/ (+ (- (* (* x 9) y) (* (* z 4) (* t a))) b) (* z c)) (- (+ (* 9 (* (/ y (* c z)) x)) (/ b (* c z))) (* 4 (/ (* a t) c))))))))

  (/ (+ (- (* (* x 9) y) (* (* (* z 4) t) a)) b) (* z c)))