Average Error: 7.3 → 2.6
Time: 10.2s
Precision: 64
\[\frac{x + \frac{y \cdot z - x}{t \cdot z - x}}{x + 1}\]
\[\begin{array}{l} \mathbf{if}\;t \le -3.1254816444432774 \cdot 10^{97}:\\ \;\;\;\;\frac{x + \frac{y}{t}}{x + 1}\\ \mathbf{elif}\;t \le 4.5818239141886201 \cdot 10^{140}:\\ \;\;\;\;\frac{x + \left(y \cdot \frac{z}{t \cdot z - x} - \sqrt[3]{{\left(\frac{1}{\frac{t \cdot z - x}{x}}\right)}^{3}}\right)}{x + 1}\\ \mathbf{else}:\\ \;\;\;\;\left(\sqrt[3]{\frac{x + \left(y \cdot \frac{z}{t \cdot z - x} - \frac{x}{t \cdot z - x}\right)}{x + 1}} \cdot \sqrt[3]{\frac{x + \left(y \cdot \frac{z}{t \cdot z - x} - \frac{x}{t \cdot z - x}\right)}{x + 1}}\right) \cdot \sqrt[3]{\frac{x + \left(y \cdot \frac{z}{t \cdot z - x} - \frac{x}{t \cdot z - x}\right)}{x + 1}}\\ \end{array}\]
\frac{x + \frac{y \cdot z - x}{t \cdot z - x}}{x + 1}
\begin{array}{l}
\mathbf{if}\;t \le -3.1254816444432774 \cdot 10^{97}:\\
\;\;\;\;\frac{x + \frac{y}{t}}{x + 1}\\

\mathbf{elif}\;t \le 4.5818239141886201 \cdot 10^{140}:\\
\;\;\;\;\frac{x + \left(y \cdot \frac{z}{t \cdot z - x} - \sqrt[3]{{\left(\frac{1}{\frac{t \cdot z - x}{x}}\right)}^{3}}\right)}{x + 1}\\

\mathbf{else}:\\
\;\;\;\;\left(\sqrt[3]{\frac{x + \left(y \cdot \frac{z}{t \cdot z - x} - \frac{x}{t \cdot z - x}\right)}{x + 1}} \cdot \sqrt[3]{\frac{x + \left(y \cdot \frac{z}{t \cdot z - x} - \frac{x}{t \cdot z - x}\right)}{x + 1}}\right) \cdot \sqrt[3]{\frac{x + \left(y \cdot \frac{z}{t \cdot z - x} - \frac{x}{t \cdot z - x}\right)}{x + 1}}\\

\end{array}
double f(double x, double y, double z, double t) {
        double r793110 = x;
        double r793111 = y;
        double r793112 = z;
        double r793113 = r793111 * r793112;
        double r793114 = r793113 - r793110;
        double r793115 = t;
        double r793116 = r793115 * r793112;
        double r793117 = r793116 - r793110;
        double r793118 = r793114 / r793117;
        double r793119 = r793110 + r793118;
        double r793120 = 1.0;
        double r793121 = r793110 + r793120;
        double r793122 = r793119 / r793121;
        return r793122;
}

double f(double x, double y, double z, double t) {
        double r793123 = t;
        double r793124 = -3.1254816444432774e+97;
        bool r793125 = r793123 <= r793124;
        double r793126 = x;
        double r793127 = y;
        double r793128 = r793127 / r793123;
        double r793129 = r793126 + r793128;
        double r793130 = 1.0;
        double r793131 = r793126 + r793130;
        double r793132 = r793129 / r793131;
        double r793133 = 4.58182391418862e+140;
        bool r793134 = r793123 <= r793133;
        double r793135 = z;
        double r793136 = r793123 * r793135;
        double r793137 = r793136 - r793126;
        double r793138 = r793135 / r793137;
        double r793139 = r793127 * r793138;
        double r793140 = 1.0;
        double r793141 = r793137 / r793126;
        double r793142 = r793140 / r793141;
        double r793143 = 3.0;
        double r793144 = pow(r793142, r793143);
        double r793145 = cbrt(r793144);
        double r793146 = r793139 - r793145;
        double r793147 = r793126 + r793146;
        double r793148 = r793147 / r793131;
        double r793149 = r793126 / r793137;
        double r793150 = r793139 - r793149;
        double r793151 = r793126 + r793150;
        double r793152 = r793151 / r793131;
        double r793153 = cbrt(r793152);
        double r793154 = r793153 * r793153;
        double r793155 = r793154 * r793153;
        double r793156 = r793134 ? r793148 : r793155;
        double r793157 = r793125 ? r793132 : r793156;
        return r793157;
}

Error

Bits error versus x

Bits error versus y

Bits error versus z

Bits error versus t

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Target

Original7.3
Target0.4
Herbie2.6
\[\frac{x + \left(\frac{y}{t - \frac{x}{z}} - \frac{x}{t \cdot z - x}\right)}{x + 1}\]

Derivation

  1. Split input into 3 regimes
  2. if t < -3.1254816444432774e+97

    1. Initial program 9.3

      \[\frac{x + \frac{y \cdot z - x}{t \cdot z - x}}{x + 1}\]
    2. Taylor expanded around inf 4.6

      \[\leadsto \frac{x + \color{blue}{\frac{y}{t}}}{x + 1}\]

    if -3.1254816444432774e+97 < t < 4.58182391418862e+140

    1. Initial program 6.5

      \[\frac{x + \frac{y \cdot z - x}{t \cdot z - x}}{x + 1}\]
    2. Using strategy rm
    3. Applied div-sub6.5

      \[\leadsto \frac{x + \color{blue}{\left(\frac{y \cdot z}{t \cdot z - x} - \frac{x}{t \cdot z - x}\right)}}{x + 1}\]
    4. Simplified1.1

      \[\leadsto \frac{x + \left(\color{blue}{y \cdot \frac{z}{t \cdot z - x}} - \frac{x}{t \cdot z - x}\right)}{x + 1}\]
    5. Using strategy rm
    6. Applied add-cbrt-cube9.9

      \[\leadsto \frac{x + \left(y \cdot \frac{z}{t \cdot z - x} - \frac{x}{\color{blue}{\sqrt[3]{\left(\left(t \cdot z - x\right) \cdot \left(t \cdot z - x\right)\right) \cdot \left(t \cdot z - x\right)}}}\right)}{x + 1}\]
    7. Applied add-cbrt-cube33.5

      \[\leadsto \frac{x + \left(y \cdot \frac{z}{t \cdot z - x} - \frac{\color{blue}{\sqrt[3]{\left(x \cdot x\right) \cdot x}}}{\sqrt[3]{\left(\left(t \cdot z - x\right) \cdot \left(t \cdot z - x\right)\right) \cdot \left(t \cdot z - x\right)}}\right)}{x + 1}\]
    8. Applied cbrt-undiv33.5

      \[\leadsto \frac{x + \left(y \cdot \frac{z}{t \cdot z - x} - \color{blue}{\sqrt[3]{\frac{\left(x \cdot x\right) \cdot x}{\left(\left(t \cdot z - x\right) \cdot \left(t \cdot z - x\right)\right) \cdot \left(t \cdot z - x\right)}}}\right)}{x + 1}\]
    9. Simplified1.6

      \[\leadsto \frac{x + \left(y \cdot \frac{z}{t \cdot z - x} - \sqrt[3]{\color{blue}{{\left(\frac{x}{t \cdot z - x}\right)}^{3}}}\right)}{x + 1}\]
    10. Using strategy rm
    11. Applied clear-num1.6

      \[\leadsto \frac{x + \left(y \cdot \frac{z}{t \cdot z - x} - \sqrt[3]{{\color{blue}{\left(\frac{1}{\frac{t \cdot z - x}{x}}\right)}}^{3}}\right)}{x + 1}\]

    if 4.58182391418862e+140 < t

    1. Initial program 8.7

      \[\frac{x + \frac{y \cdot z - x}{t \cdot z - x}}{x + 1}\]
    2. Using strategy rm
    3. Applied div-sub8.7

      \[\leadsto \frac{x + \color{blue}{\left(\frac{y \cdot z}{t \cdot z - x} - \frac{x}{t \cdot z - x}\right)}}{x + 1}\]
    4. Simplified4.5

      \[\leadsto \frac{x + \left(\color{blue}{y \cdot \frac{z}{t \cdot z - x}} - \frac{x}{t \cdot z - x}\right)}{x + 1}\]
    5. Using strategy rm
    6. Applied add-cube-cbrt5.1

      \[\leadsto \color{blue}{\left(\sqrt[3]{\frac{x + \left(y \cdot \frac{z}{t \cdot z - x} - \frac{x}{t \cdot z - x}\right)}{x + 1}} \cdot \sqrt[3]{\frac{x + \left(y \cdot \frac{z}{t \cdot z - x} - \frac{x}{t \cdot z - x}\right)}{x + 1}}\right) \cdot \sqrt[3]{\frac{x + \left(y \cdot \frac{z}{t \cdot z - x} - \frac{x}{t \cdot z - x}\right)}{x + 1}}}\]
  3. Recombined 3 regimes into one program.
  4. Final simplification2.6

    \[\leadsto \begin{array}{l} \mathbf{if}\;t \le -3.1254816444432774 \cdot 10^{97}:\\ \;\;\;\;\frac{x + \frac{y}{t}}{x + 1}\\ \mathbf{elif}\;t \le 4.5818239141886201 \cdot 10^{140}:\\ \;\;\;\;\frac{x + \left(y \cdot \frac{z}{t \cdot z - x} - \sqrt[3]{{\left(\frac{1}{\frac{t \cdot z - x}{x}}\right)}^{3}}\right)}{x + 1}\\ \mathbf{else}:\\ \;\;\;\;\left(\sqrt[3]{\frac{x + \left(y \cdot \frac{z}{t \cdot z - x} - \frac{x}{t \cdot z - x}\right)}{x + 1}} \cdot \sqrt[3]{\frac{x + \left(y \cdot \frac{z}{t \cdot z - x} - \frac{x}{t \cdot z - x}\right)}{x + 1}}\right) \cdot \sqrt[3]{\frac{x + \left(y \cdot \frac{z}{t \cdot z - x} - \frac{x}{t \cdot z - x}\right)}{x + 1}}\\ \end{array}\]

Reproduce

herbie shell --seed 2020046 
(FPCore (x y z t)
  :name "Diagrams.Trail:splitAtParam  from diagrams-lib-1.3.0.3, A"
  :precision binary64

  :herbie-target
  (/ (+ x (- (/ y (- t (/ x z))) (/ x (- (* t z) x)))) (+ x 1))

  (/ (+ x (/ (- (* y z) x) (- (* t z) x))) (+ x 1)))