Average Error: 14.4 → 7.6
Time: 24.0s
Precision: 64
\[x + \left(y - z\right) \cdot \frac{t - x}{a - z}\]
\[\begin{array}{l} \mathbf{if}\;x + \frac{t - x}{a - z} \cdot \left(y - z\right) \le -3.0404789902267714 \cdot 10^{-273}:\\ \;\;\;\;\frac{\frac{\frac{\frac{y - z}{\sqrt[3]{a - z}}}{\sqrt[3]{\sqrt[3]{a - z} \cdot \sqrt[3]{a - z}}}}{\sqrt[3]{\sqrt[3]{a - z}}}}{\sqrt[3]{\sqrt[3]{a - z} \cdot \sqrt[3]{a - z}}} \cdot \frac{t - x}{\sqrt[3]{\sqrt[3]{a - z}}} + x\\ \mathbf{elif}\;x + \frac{t - x}{a - z} \cdot \left(y - z\right) \le 1.614867160905698 \cdot 10^{-291}:\\ \;\;\;\;\frac{x}{\frac{z}{y}} + \left(t - \frac{t}{\frac{z}{y}}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{\frac{\frac{y - z}{\sqrt[3]{a - z}}}{\sqrt[3]{\sqrt[3]{a - z} \cdot \sqrt[3]{a - z}}}}{\sqrt[3]{\sqrt[3]{a - z}}}}{\sqrt[3]{\sqrt[3]{a - z} \cdot \sqrt[3]{a - z}}} \cdot \frac{t - x}{\sqrt[3]{\sqrt[3]{a - z}}} + x\\ \end{array}\]
x + \left(y - z\right) \cdot \frac{t - x}{a - z}
\begin{array}{l}
\mathbf{if}\;x + \frac{t - x}{a - z} \cdot \left(y - z\right) \le -3.0404789902267714 \cdot 10^{-273}:\\
\;\;\;\;\frac{\frac{\frac{\frac{y - z}{\sqrt[3]{a - z}}}{\sqrt[3]{\sqrt[3]{a - z} \cdot \sqrt[3]{a - z}}}}{\sqrt[3]{\sqrt[3]{a - z}}}}{\sqrt[3]{\sqrt[3]{a - z} \cdot \sqrt[3]{a - z}}} \cdot \frac{t - x}{\sqrt[3]{\sqrt[3]{a - z}}} + x\\

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

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

\end{array}
double f(double x, double y, double z, double t, double a) {
        double r7608861 = x;
        double r7608862 = y;
        double r7608863 = z;
        double r7608864 = r7608862 - r7608863;
        double r7608865 = t;
        double r7608866 = r7608865 - r7608861;
        double r7608867 = a;
        double r7608868 = r7608867 - r7608863;
        double r7608869 = r7608866 / r7608868;
        double r7608870 = r7608864 * r7608869;
        double r7608871 = r7608861 + r7608870;
        return r7608871;
}

double f(double x, double y, double z, double t, double a) {
        double r7608872 = x;
        double r7608873 = t;
        double r7608874 = r7608873 - r7608872;
        double r7608875 = a;
        double r7608876 = z;
        double r7608877 = r7608875 - r7608876;
        double r7608878 = r7608874 / r7608877;
        double r7608879 = y;
        double r7608880 = r7608879 - r7608876;
        double r7608881 = r7608878 * r7608880;
        double r7608882 = r7608872 + r7608881;
        double r7608883 = -3.0404789902267714e-273;
        bool r7608884 = r7608882 <= r7608883;
        double r7608885 = cbrt(r7608877);
        double r7608886 = r7608880 / r7608885;
        double r7608887 = r7608885 * r7608885;
        double r7608888 = cbrt(r7608887);
        double r7608889 = r7608886 / r7608888;
        double r7608890 = cbrt(r7608885);
        double r7608891 = r7608889 / r7608890;
        double r7608892 = r7608891 / r7608888;
        double r7608893 = r7608874 / r7608890;
        double r7608894 = r7608892 * r7608893;
        double r7608895 = r7608894 + r7608872;
        double r7608896 = 1.614867160905698e-291;
        bool r7608897 = r7608882 <= r7608896;
        double r7608898 = r7608876 / r7608879;
        double r7608899 = r7608872 / r7608898;
        double r7608900 = r7608873 / r7608898;
        double r7608901 = r7608873 - r7608900;
        double r7608902 = r7608899 + r7608901;
        double r7608903 = r7608897 ? r7608902 : r7608895;
        double r7608904 = r7608884 ? r7608895 : r7608903;
        return r7608904;
}

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)))) < -3.0404789902267714e-273 or 1.614867160905698e-291 < (+ x (* (- y z) (/ (- t x) (- a z))))

    1. Initial program 7.1

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

      \[\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 *-un-lft-identity7.8

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

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

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

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

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

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

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

      \[\leadsto x + \frac{y - z}{\sqrt[3]{a - z} \cdot \left(\sqrt[3]{\sqrt[3]{a - z} \cdot \sqrt[3]{a - z}} \cdot \sqrt[3]{\sqrt[3]{a - z}}\right)} \cdot \frac{t - x}{\color{blue}{\sqrt[3]{\sqrt[3]{a - z} \cdot \sqrt[3]{a - z}} \cdot \sqrt[3]{\sqrt[3]{a - z}}}}\]
    14. Applied *-un-lft-identity5.5

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

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

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

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

    if -3.0404789902267714e-273 < (+ x (* (- y z) (/ (- t x) (- a z)))) < 1.614867160905698e-291

    1. Initial program 59.3

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

      \[\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 *-un-lft-identity59.1

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

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

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

      \[\leadsto x + \color{blue}{\frac{y - z}{\sqrt[3]{a - z} \cdot \sqrt[3]{a - z}}} \cdot \frac{t - x}{\sqrt[3]{a - z}}\]
    8. Using strategy rm
    9. Applied add-cube-cbrt56.9

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

      \[\leadsto x + \frac{y - z}{\sqrt[3]{a - z} \cdot \color{blue}{\left(\sqrt[3]{\sqrt[3]{a - z} \cdot \sqrt[3]{a - z}} \cdot \sqrt[3]{\sqrt[3]{a - z}}\right)}} \cdot \frac{t - x}{\sqrt[3]{a - z}}\]
    11. Taylor expanded around inf 26.7

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

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

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

Reproduce

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