Average Error: 11.8 → 5.5
Time: 12.5s
Precision: 64
\[x - \frac{\left(y \cdot 2\right) \cdot z}{\left(z \cdot 2\right) \cdot z - y \cdot t}\]
\[\begin{array}{l} \mathbf{if}\;\frac{\left(y \cdot 2\right) \cdot z}{\left(z \cdot 2\right) \cdot z - y \cdot t} \le 2.464886803267391919927686813979327944665 \cdot 10^{169}:\\ \;\;\;\;x - \frac{y \cdot 2}{\sqrt[3]{\left(z \cdot 2\right) \cdot z - y \cdot t} \cdot \sqrt[3]{\left(z \cdot 2\right) \cdot z - y \cdot t}} \cdot \frac{z}{\sqrt[3]{\left(z \cdot 2\right) \cdot z - y \cdot t}}\\ \mathbf{else}:\\ \;\;\;\;x - 0\\ \end{array}\]
x - \frac{\left(y \cdot 2\right) \cdot z}{\left(z \cdot 2\right) \cdot z - y \cdot t}
\begin{array}{l}
\mathbf{if}\;\frac{\left(y \cdot 2\right) \cdot z}{\left(z \cdot 2\right) \cdot z - y \cdot t} \le 2.464886803267391919927686813979327944665 \cdot 10^{169}:\\
\;\;\;\;x - \frac{y \cdot 2}{\sqrt[3]{\left(z \cdot 2\right) \cdot z - y \cdot t} \cdot \sqrt[3]{\left(z \cdot 2\right) \cdot z - y \cdot t}} \cdot \frac{z}{\sqrt[3]{\left(z \cdot 2\right) \cdot z - y \cdot t}}\\

\mathbf{else}:\\
\;\;\;\;x - 0\\

\end{array}
double f(double x, double y, double z, double t) {
        double r399137 = x;
        double r399138 = y;
        double r399139 = 2.0;
        double r399140 = r399138 * r399139;
        double r399141 = z;
        double r399142 = r399140 * r399141;
        double r399143 = r399141 * r399139;
        double r399144 = r399143 * r399141;
        double r399145 = t;
        double r399146 = r399138 * r399145;
        double r399147 = r399144 - r399146;
        double r399148 = r399142 / r399147;
        double r399149 = r399137 - r399148;
        return r399149;
}

double f(double x, double y, double z, double t) {
        double r399150 = y;
        double r399151 = 2.0;
        double r399152 = r399150 * r399151;
        double r399153 = z;
        double r399154 = r399152 * r399153;
        double r399155 = r399153 * r399151;
        double r399156 = r399155 * r399153;
        double r399157 = t;
        double r399158 = r399150 * r399157;
        double r399159 = r399156 - r399158;
        double r399160 = r399154 / r399159;
        double r399161 = 2.464886803267392e+169;
        bool r399162 = r399160 <= r399161;
        double r399163 = x;
        double r399164 = cbrt(r399159);
        double r399165 = r399164 * r399164;
        double r399166 = r399152 / r399165;
        double r399167 = r399153 / r399164;
        double r399168 = r399166 * r399167;
        double r399169 = r399163 - r399168;
        double r399170 = 0.0;
        double r399171 = r399163 - r399170;
        double r399172 = r399162 ? r399169 : r399171;
        return r399172;
}

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

Original11.8
Target0.1
Herbie5.5
\[x - \frac{1}{\frac{z}{y} - \frac{\frac{t}{2}}{z}}\]

Derivation

  1. Split input into 2 regimes
  2. if (/ (* (* y 2.0) z) (- (* (* z 2.0) z) (* y t))) < 2.464886803267392e+169

    1. Initial program 2.6

      \[x - \frac{\left(y \cdot 2\right) \cdot z}{\left(z \cdot 2\right) \cdot z - y \cdot t}\]
    2. Using strategy rm
    3. Applied add-cube-cbrt2.8

      \[\leadsto x - \frac{\left(y \cdot 2\right) \cdot z}{\color{blue}{\left(\sqrt[3]{\left(z \cdot 2\right) \cdot z - y \cdot t} \cdot \sqrt[3]{\left(z \cdot 2\right) \cdot z - y \cdot t}\right) \cdot \sqrt[3]{\left(z \cdot 2\right) \cdot z - y \cdot t}}}\]
    4. Applied times-frac1.5

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

    if 2.464886803267392e+169 < (/ (* (* y 2.0) z) (- (* (* z 2.0) z) (* y t)))

    1. Initial program 61.7

      \[x - \frac{\left(y \cdot 2\right) \cdot z}{\left(z \cdot 2\right) \cdot z - y \cdot t}\]
    2. Taylor expanded around 0 27.3

      \[\leadsto x - \color{blue}{0}\]
  3. Recombined 2 regimes into one program.
  4. Final simplification5.5

    \[\leadsto \begin{array}{l} \mathbf{if}\;\frac{\left(y \cdot 2\right) \cdot z}{\left(z \cdot 2\right) \cdot z - y \cdot t} \le 2.464886803267391919927686813979327944665 \cdot 10^{169}:\\ \;\;\;\;x - \frac{y \cdot 2}{\sqrt[3]{\left(z \cdot 2\right) \cdot z - y \cdot t} \cdot \sqrt[3]{\left(z \cdot 2\right) \cdot z - y \cdot t}} \cdot \frac{z}{\sqrt[3]{\left(z \cdot 2\right) \cdot z - y \cdot t}}\\ \mathbf{else}:\\ \;\;\;\;x - 0\\ \end{array}\]

Reproduce

herbie shell --seed 2019303 
(FPCore (x y z t)
  :name "Numeric.AD.Rank1.Halley:findZero from ad-4.2.4"
  :precision binary64

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

  (- x (/ (* (* y 2) z) (- (* (* z 2) z) (* y t)))))