Average Error: 16.4 → 10.2
Time: 19.0s
Precision: 64
\[\left(x + y\right) - \frac{\left(z - t\right) \cdot y}{a - t}\]
\[\begin{array}{l} \mathbf{if}\;a \le -0.1719272129792268344328221019168267957866:\\ \;\;\;\;\left(x + y\right) - \left(\sqrt[3]{\frac{z - t}{\left(\sqrt[3]{a - t} \cdot \sqrt[3]{\sqrt[3]{a - t} \cdot \sqrt[3]{a - t}}\right) \cdot \sqrt[3]{\sqrt[3]{a - t}}}} \cdot \sqrt[3]{\frac{z - t}{\left(\sqrt[3]{a - t} \cdot \sqrt[3]{\sqrt[3]{a - t} \cdot \sqrt[3]{a - t}}\right) \cdot \sqrt[3]{\sqrt[3]{a - t}}}}\right) \cdot \left(\sqrt[3]{\frac{z - t}{\left(\sqrt[3]{a - t} \cdot \sqrt[3]{\sqrt[3]{a - t} \cdot \sqrt[3]{a - t}}\right) \cdot \sqrt[3]{\sqrt[3]{a - t}}}} \cdot \frac{y}{\sqrt[3]{a - t}}\right)\\ \mathbf{elif}\;a \le 9.681339001705814034487368068305981538246 \cdot 10^{-139}:\\ \;\;\;\;\frac{z \cdot y}{t} + x\\ \mathbf{else}:\\ \;\;\;\;\left(x + y\right) - \frac{\sqrt[3]{z - t} \cdot \sqrt[3]{z - t}}{\sqrt[3]{a - t} \cdot \sqrt[3]{\sqrt[3]{a - t} \cdot \sqrt[3]{a - t}}} \cdot \left(\frac{\sqrt[3]{z - t}}{\sqrt[3]{\sqrt[3]{a - t}}} \cdot \frac{y}{\sqrt[3]{a - t}}\right)\\ \end{array}\]
\left(x + y\right) - \frac{\left(z - t\right) \cdot y}{a - t}
\begin{array}{l}
\mathbf{if}\;a \le -0.1719272129792268344328221019168267957866:\\
\;\;\;\;\left(x + y\right) - \left(\sqrt[3]{\frac{z - t}{\left(\sqrt[3]{a - t} \cdot \sqrt[3]{\sqrt[3]{a - t} \cdot \sqrt[3]{a - t}}\right) \cdot \sqrt[3]{\sqrt[3]{a - t}}}} \cdot \sqrt[3]{\frac{z - t}{\left(\sqrt[3]{a - t} \cdot \sqrt[3]{\sqrt[3]{a - t} \cdot \sqrt[3]{a - t}}\right) \cdot \sqrt[3]{\sqrt[3]{a - t}}}}\right) \cdot \left(\sqrt[3]{\frac{z - t}{\left(\sqrt[3]{a - t} \cdot \sqrt[3]{\sqrt[3]{a - t} \cdot \sqrt[3]{a - t}}\right) \cdot \sqrt[3]{\sqrt[3]{a - t}}}} \cdot \frac{y}{\sqrt[3]{a - t}}\right)\\

\mathbf{elif}\;a \le 9.681339001705814034487368068305981538246 \cdot 10^{-139}:\\
\;\;\;\;\frac{z \cdot y}{t} + x\\

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

\end{array}
double f(double x, double y, double z, double t, double a) {
        double r479794 = x;
        double r479795 = y;
        double r479796 = r479794 + r479795;
        double r479797 = z;
        double r479798 = t;
        double r479799 = r479797 - r479798;
        double r479800 = r479799 * r479795;
        double r479801 = a;
        double r479802 = r479801 - r479798;
        double r479803 = r479800 / r479802;
        double r479804 = r479796 - r479803;
        return r479804;
}

double f(double x, double y, double z, double t, double a) {
        double r479805 = a;
        double r479806 = -0.17192721297922683;
        bool r479807 = r479805 <= r479806;
        double r479808 = x;
        double r479809 = y;
        double r479810 = r479808 + r479809;
        double r479811 = z;
        double r479812 = t;
        double r479813 = r479811 - r479812;
        double r479814 = r479805 - r479812;
        double r479815 = cbrt(r479814);
        double r479816 = r479815 * r479815;
        double r479817 = cbrt(r479816);
        double r479818 = r479815 * r479817;
        double r479819 = cbrt(r479815);
        double r479820 = r479818 * r479819;
        double r479821 = r479813 / r479820;
        double r479822 = cbrt(r479821);
        double r479823 = r479822 * r479822;
        double r479824 = r479809 / r479815;
        double r479825 = r479822 * r479824;
        double r479826 = r479823 * r479825;
        double r479827 = r479810 - r479826;
        double r479828 = 9.681339001705814e-139;
        bool r479829 = r479805 <= r479828;
        double r479830 = r479811 * r479809;
        double r479831 = r479830 / r479812;
        double r479832 = r479831 + r479808;
        double r479833 = cbrt(r479813);
        double r479834 = r479833 * r479833;
        double r479835 = r479834 / r479818;
        double r479836 = r479833 / r479819;
        double r479837 = r479836 * r479824;
        double r479838 = r479835 * r479837;
        double r479839 = r479810 - r479838;
        double r479840 = r479829 ? r479832 : r479839;
        double r479841 = r479807 ? r479827 : r479840;
        return r479841;
}

Error

Bits error versus x

Bits error versus y

Bits error versus z

Bits error versus t

Bits error versus a

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Target

Original16.4
Target8.4
Herbie10.2
\[\begin{array}{l} \mathbf{if}\;\left(x + y\right) - \frac{\left(z - t\right) \cdot y}{a - t} \lt -1.366497088939072697550672266103566343531 \cdot 10^{-7}:\\ \;\;\;\;\left(y + x\right) - \left(\left(z - t\right) \cdot \frac{1}{a - t}\right) \cdot y\\ \mathbf{elif}\;\left(x + y\right) - \frac{\left(z - t\right) \cdot y}{a - t} \lt 1.475429344457723334351036314450840066235 \cdot 10^{-239}:\\ \;\;\;\;\frac{y \cdot \left(a - z\right) - x \cdot t}{a - t}\\ \mathbf{else}:\\ \;\;\;\;\left(y + x\right) - \left(\left(z - t\right) \cdot \frac{1}{a - t}\right) \cdot y\\ \end{array}\]

Derivation

  1. Split input into 3 regimes
  2. if a < -0.17192721297922683

    1. Initial program 14.4

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

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

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

      \[\leadsto \left(x + y\right) - \frac{z - t}{\sqrt[3]{a - t} \cdot \sqrt[3]{\color{blue}{\left(\sqrt[3]{a - t} \cdot \sqrt[3]{a - t}\right) \cdot \sqrt[3]{a - t}}}} \cdot \frac{y}{\sqrt[3]{a - t}}\]
    7. Applied cbrt-prod5.9

      \[\leadsto \left(x + y\right) - \frac{z - t}{\sqrt[3]{a - t} \cdot \color{blue}{\left(\sqrt[3]{\sqrt[3]{a - t} \cdot \sqrt[3]{a - t}} \cdot \sqrt[3]{\sqrt[3]{a - t}}\right)}} \cdot \frac{y}{\sqrt[3]{a - t}}\]
    8. Applied associate-*r*5.9

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

      \[\leadsto \left(x + y\right) - \color{blue}{\left(\left(\sqrt[3]{\frac{z - t}{\left(\sqrt[3]{a - t} \cdot \sqrt[3]{\sqrt[3]{a - t} \cdot \sqrt[3]{a - t}}\right) \cdot \sqrt[3]{\sqrt[3]{a - t}}}} \cdot \sqrt[3]{\frac{z - t}{\left(\sqrt[3]{a - t} \cdot \sqrt[3]{\sqrt[3]{a - t} \cdot \sqrt[3]{a - t}}\right) \cdot \sqrt[3]{\sqrt[3]{a - t}}}}\right) \cdot \sqrt[3]{\frac{z - t}{\left(\sqrt[3]{a - t} \cdot \sqrt[3]{\sqrt[3]{a - t} \cdot \sqrt[3]{a - t}}\right) \cdot \sqrt[3]{\sqrt[3]{a - t}}}}\right)} \cdot \frac{y}{\sqrt[3]{a - t}}\]
    11. Applied associate-*l*5.9

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

    if -0.17192721297922683 < a < 9.681339001705814e-139

    1. Initial program 19.2

      \[\left(x + y\right) - \frac{\left(z - t\right) \cdot y}{a - t}\]
    2. Taylor expanded around inf 14.3

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

    if 9.681339001705814e-139 < a

    1. Initial program 15.2

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

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

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

      \[\leadsto \left(x + y\right) - \frac{z - t}{\sqrt[3]{a - t} \cdot \sqrt[3]{\color{blue}{\left(\sqrt[3]{a - t} \cdot \sqrt[3]{a - t}\right) \cdot \sqrt[3]{a - t}}}} \cdot \frac{y}{\sqrt[3]{a - t}}\]
    7. Applied cbrt-prod9.4

      \[\leadsto \left(x + y\right) - \frac{z - t}{\sqrt[3]{a - t} \cdot \color{blue}{\left(\sqrt[3]{\sqrt[3]{a - t} \cdot \sqrt[3]{a - t}} \cdot \sqrt[3]{\sqrt[3]{a - t}}\right)}} \cdot \frac{y}{\sqrt[3]{a - t}}\]
    8. Applied associate-*r*9.4

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

      \[\leadsto \left(x + y\right) - \frac{\color{blue}{\left(\sqrt[3]{z - t} \cdot \sqrt[3]{z - t}\right) \cdot \sqrt[3]{z - t}}}{\left(\sqrt[3]{a - t} \cdot \sqrt[3]{\sqrt[3]{a - t} \cdot \sqrt[3]{a - t}}\right) \cdot \sqrt[3]{\sqrt[3]{a - t}}} \cdot \frac{y}{\sqrt[3]{a - t}}\]
    11. Applied times-frac9.5

      \[\leadsto \left(x + y\right) - \color{blue}{\left(\frac{\sqrt[3]{z - t} \cdot \sqrt[3]{z - t}}{\sqrt[3]{a - t} \cdot \sqrt[3]{\sqrt[3]{a - t} \cdot \sqrt[3]{a - t}}} \cdot \frac{\sqrt[3]{z - t}}{\sqrt[3]{\sqrt[3]{a - t}}}\right)} \cdot \frac{y}{\sqrt[3]{a - t}}\]
    12. Applied associate-*l*9.2

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

    \[\leadsto \begin{array}{l} \mathbf{if}\;a \le -0.1719272129792268344328221019168267957866:\\ \;\;\;\;\left(x + y\right) - \left(\sqrt[3]{\frac{z - t}{\left(\sqrt[3]{a - t} \cdot \sqrt[3]{\sqrt[3]{a - t} \cdot \sqrt[3]{a - t}}\right) \cdot \sqrt[3]{\sqrt[3]{a - t}}}} \cdot \sqrt[3]{\frac{z - t}{\left(\sqrt[3]{a - t} \cdot \sqrt[3]{\sqrt[3]{a - t} \cdot \sqrt[3]{a - t}}\right) \cdot \sqrt[3]{\sqrt[3]{a - t}}}}\right) \cdot \left(\sqrt[3]{\frac{z - t}{\left(\sqrt[3]{a - t} \cdot \sqrt[3]{\sqrt[3]{a - t} \cdot \sqrt[3]{a - t}}\right) \cdot \sqrt[3]{\sqrt[3]{a - t}}}} \cdot \frac{y}{\sqrt[3]{a - t}}\right)\\ \mathbf{elif}\;a \le 9.681339001705814034487368068305981538246 \cdot 10^{-139}:\\ \;\;\;\;\frac{z \cdot y}{t} + x\\ \mathbf{else}:\\ \;\;\;\;\left(x + y\right) - \frac{\sqrt[3]{z - t} \cdot \sqrt[3]{z - t}}{\sqrt[3]{a - t} \cdot \sqrt[3]{\sqrt[3]{a - t} \cdot \sqrt[3]{a - t}}} \cdot \left(\frac{\sqrt[3]{z - t}}{\sqrt[3]{\sqrt[3]{a - t}}} \cdot \frac{y}{\sqrt[3]{a - t}}\right)\\ \end{array}\]

Reproduce

herbie shell --seed 2019350 
(FPCore (x y z t a)
  :name "Graphics.Rendering.Plot.Render.Plot.Axis:renderAxisTick from plot-0.2.3.4, B"
  :precision binary64

  :herbie-target
  (if (< (- (+ x y) (/ (* (- z t) y) (- a t))) -1.3664970889390727e-07) (- (+ y x) (* (* (- z t) (/ 1 (- a t))) y)) (if (< (- (+ x y) (/ (* (- z t) y) (- a t))) 1.4754293444577233e-239) (/ (- (* y (- a z)) (* x t)) (- a t)) (- (+ y x) (* (* (- z t) (/ 1 (- a t))) y))))

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