Average Error: 14.7 → 7.3
Time: 7.2s
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.156506321277581653214891910831195950706 \cdot 10^{-297}:\\ \;\;\;\;x + \left(\left(y - z\right) \cdot \frac{\sqrt[3]{1} \cdot \sqrt[3]{1}}{a - z}\right) \cdot \frac{\sqrt[3]{1}}{\frac{1}{t - x}}\\ \mathbf{elif}\;x + \left(y - z\right) \cdot \frac{t - x}{a - z} \le 0.0:\\ \;\;\;\;\left(\frac{x \cdot y}{z} + t\right) - \frac{t \cdot y}{z}\\ \mathbf{else}:\\ \;\;\;\;x + \frac{\left(y - z\right) \cdot \left(\frac{\sqrt[3]{1} \cdot \sqrt[3]{1}}{a - z} \cdot \sqrt[3]{1}\right)}{\frac{1}{t - x}}\\ \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.156506321277581653214891910831195950706 \cdot 10^{-297}:\\
\;\;\;\;x + \left(\left(y - z\right) \cdot \frac{\sqrt[3]{1} \cdot \sqrt[3]{1}}{a - z}\right) \cdot \frac{\sqrt[3]{1}}{\frac{1}{t - x}}\\

\mathbf{elif}\;x + \left(y - z\right) \cdot \frac{t - x}{a - z} \le 0.0:\\
\;\;\;\;\left(\frac{x \cdot y}{z} + t\right) - \frac{t \cdot y}{z}\\

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

\end{array}
double f(double x, double y, double z, double t, double a) {
        double r149090 = x;
        double r149091 = y;
        double r149092 = z;
        double r149093 = r149091 - r149092;
        double r149094 = t;
        double r149095 = r149094 - r149090;
        double r149096 = a;
        double r149097 = r149096 - r149092;
        double r149098 = r149095 / r149097;
        double r149099 = r149093 * r149098;
        double r149100 = r149090 + r149099;
        return r149100;
}

double f(double x, double y, double z, double t, double a) {
        double r149101 = x;
        double r149102 = y;
        double r149103 = z;
        double r149104 = r149102 - r149103;
        double r149105 = t;
        double r149106 = r149105 - r149101;
        double r149107 = a;
        double r149108 = r149107 - r149103;
        double r149109 = r149106 / r149108;
        double r149110 = r149104 * r149109;
        double r149111 = r149101 + r149110;
        double r149112 = -1.1565063212775817e-297;
        bool r149113 = r149111 <= r149112;
        double r149114 = 1.0;
        double r149115 = cbrt(r149114);
        double r149116 = r149115 * r149115;
        double r149117 = r149116 / r149108;
        double r149118 = r149104 * r149117;
        double r149119 = r149114 / r149106;
        double r149120 = r149115 / r149119;
        double r149121 = r149118 * r149120;
        double r149122 = r149101 + r149121;
        double r149123 = 0.0;
        bool r149124 = r149111 <= r149123;
        double r149125 = r149101 * r149102;
        double r149126 = r149125 / r149103;
        double r149127 = r149126 + r149105;
        double r149128 = r149105 * r149102;
        double r149129 = r149128 / r149103;
        double r149130 = r149127 - r149129;
        double r149131 = r149117 * r149115;
        double r149132 = r149104 * r149131;
        double r149133 = r149132 / r149119;
        double r149134 = r149101 + r149133;
        double r149135 = r149124 ? r149130 : r149134;
        double r149136 = r149113 ? r149122 : r149135;
        return r149136;
}

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 3 regimes
  2. if (+ x (* (- y z) (/ (- t x) (- a z)))) < -1.1565063212775817e-297

    1. Initial program 7.3

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

      \[\leadsto x + \left(y - z\right) \cdot \color{blue}{\frac{1}{\frac{a - z}{t - x}}}\]
    4. Using strategy rm
    5. Applied div-inv7.7

      \[\leadsto x + \left(y - z\right) \cdot \frac{1}{\color{blue}{\left(a - z\right) \cdot \frac{1}{t - x}}}\]
    6. Applied add-cube-cbrt7.7

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

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

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

    if -1.1565063212775817e-297 < (+ x (* (- y z) (/ (- t x) (- a z)))) < 0.0

    1. Initial program 61.2

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

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

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

    1. Initial program 7.4

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

      \[\leadsto x + \left(y - z\right) \cdot \color{blue}{\frac{1}{\frac{a - z}{t - x}}}\]
    4. Using strategy rm
    5. Applied div-inv7.7

      \[\leadsto x + \left(y - z\right) \cdot \frac{1}{\color{blue}{\left(a - z\right) \cdot \frac{1}{t - x}}}\]
    6. Applied add-cube-cbrt7.7

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

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

      \[\leadsto x + \color{blue}{\left(\left(y - z\right) \cdot \frac{\sqrt[3]{1} \cdot \sqrt[3]{1}}{a - z}\right) \cdot \frac{\sqrt[3]{1}}{\frac{1}{t - x}}}\]
    9. Using strategy rm
    10. Applied associate-*r/3.7

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

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

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

Reproduce

herbie shell --seed 2020001 
(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)))))