Average Error: 14.8 → 8.1
Time: 56.3s
Precision: 64
\[x + \left(y - z\right) \cdot \frac{t - x}{a - z}\]
\[\begin{array}{l} \mathbf{if}\;x + \left(y - z\right) \cdot \frac{t - x}{a - z} \le -1.914088505242243065504529285746814231003 \cdot 10^{-230} \lor \neg \left(x + \left(y - z\right) \cdot \frac{t - x}{a - z} \le 0.0\right):\\ \;\;\;\;x + \left(\left(y - z\right) \cdot \frac{\sqrt[3]{t - x} \cdot \sqrt[3]{t - x}}{\sqrt[3]{a - z} \cdot \sqrt[3]{a - z}}\right) \cdot \frac{\sqrt[3]{t - x}}{\sqrt[3]{a - z}}\\ \mathbf{else}:\\ \;\;\;\;\left(\frac{x \cdot y}{z} + t\right) - \frac{t \cdot y}{z}\\ \end{array}\]
x + \left(y - z\right) \cdot \frac{t - x}{a - z}
\begin{array}{l}
\mathbf{if}\;x + \left(y - z\right) \cdot \frac{t - x}{a - z} \le -1.914088505242243065504529285746814231003 \cdot 10^{-230} \lor \neg \left(x + \left(y - z\right) \cdot \frac{t - x}{a - z} \le 0.0\right):\\
\;\;\;\;x + \left(\left(y - z\right) \cdot \frac{\sqrt[3]{t - x} \cdot \sqrt[3]{t - x}}{\sqrt[3]{a - z} \cdot \sqrt[3]{a - z}}\right) \cdot \frac{\sqrt[3]{t - x}}{\sqrt[3]{a - z}}\\

\mathbf{else}:\\
\;\;\;\;\left(\frac{x \cdot y}{z} + t\right) - \frac{t \cdot y}{z}\\

\end{array}
double f(double x, double y, double z, double t, double a) {
        double r177241 = x;
        double r177242 = y;
        double r177243 = z;
        double r177244 = r177242 - r177243;
        double r177245 = t;
        double r177246 = r177245 - r177241;
        double r177247 = a;
        double r177248 = r177247 - r177243;
        double r177249 = r177246 / r177248;
        double r177250 = r177244 * r177249;
        double r177251 = r177241 + r177250;
        return r177251;
}

double f(double x, double y, double z, double t, double a) {
        double r177252 = x;
        double r177253 = y;
        double r177254 = z;
        double r177255 = r177253 - r177254;
        double r177256 = t;
        double r177257 = r177256 - r177252;
        double r177258 = a;
        double r177259 = r177258 - r177254;
        double r177260 = r177257 / r177259;
        double r177261 = r177255 * r177260;
        double r177262 = r177252 + r177261;
        double r177263 = -1.914088505242243e-230;
        bool r177264 = r177262 <= r177263;
        double r177265 = 0.0;
        bool r177266 = r177262 <= r177265;
        double r177267 = !r177266;
        bool r177268 = r177264 || r177267;
        double r177269 = cbrt(r177257);
        double r177270 = r177269 * r177269;
        double r177271 = cbrt(r177259);
        double r177272 = r177271 * r177271;
        double r177273 = r177270 / r177272;
        double r177274 = r177255 * r177273;
        double r177275 = r177269 / r177271;
        double r177276 = r177274 * r177275;
        double r177277 = r177252 + r177276;
        double r177278 = r177252 * r177253;
        double r177279 = r177278 / r177254;
        double r177280 = r177279 + r177256;
        double r177281 = r177256 * r177253;
        double r177282 = r177281 / r177254;
        double r177283 = r177280 - r177282;
        double r177284 = r177268 ? r177277 : r177283;
        return r177284;
}

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

Derivation

  1. Split input into 2 regimes
  2. if (+ x (* (- y z) (/ (- t x) (- a z)))) < -1.914088505242243e-230 or 0.0 < (+ x (* (- y z) (/ (- t x) (- a z))))

    1. Initial program 7.2

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

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

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

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

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

    if -1.914088505242243e-230 < (+ x (* (- y z) (/ (- t x) (- a z)))) < 0.0

    1. Initial program 57.9

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

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

    \[\leadsto \begin{array}{l} \mathbf{if}\;x + \left(y - z\right) \cdot \frac{t - x}{a - z} \le -1.914088505242243065504529285746814231003 \cdot 10^{-230} \lor \neg \left(x + \left(y - z\right) \cdot \frac{t - x}{a - z} \le 0.0\right):\\ \;\;\;\;x + \left(\left(y - z\right) \cdot \frac{\sqrt[3]{t - x} \cdot \sqrt[3]{t - x}}{\sqrt[3]{a - z} \cdot \sqrt[3]{a - z}}\right) \cdot \frac{\sqrt[3]{t - x}}{\sqrt[3]{a - z}}\\ \mathbf{else}:\\ \;\;\;\;\left(\frac{x \cdot y}{z} + t\right) - \frac{t \cdot y}{z}\\ \end{array}\]

Reproduce

herbie shell --seed 2019353 
(FPCore (x y z t a)
  :name "Numeric.Signal:interpolate   from hsignal-0.2.7.1"
  :precision binary64
  (+ x (* (- y z) (/ (- t x) (- a z)))))