Average Error: 43.3 → 9.6
Time: 15.3s
Precision: 64
\[\frac{\sqrt{2} \cdot t}{\sqrt{\frac{x + 1}{x - 1} \cdot \left(\ell \cdot \ell + 2 \cdot \left(t \cdot t\right)\right) - \ell \cdot \ell}}\]
\[\begin{array}{l} \mathbf{if}\;t \le -3.6475491705472148 \cdot 10^{125}:\\ \;\;\;\;\frac{\sqrt{2} \cdot t}{\left(2 \cdot \frac{t}{{\left(\sqrt{2}\right)}^{3} \cdot {x}^{2}} - 2 \cdot \left(\frac{t}{\sqrt{2} \cdot {x}^{2}} + \frac{t}{\sqrt{2} \cdot x}\right)\right) - \sqrt{2} \cdot t}\\ \mathbf{elif}\;t \le 2.0489990719913409 \cdot 10^{-272} \lor \neg \left(t \le 2.59765205302792963 \cdot 10^{-253}\right) \land t \le 3.4577470562944996 \cdot 10^{98}:\\ \;\;\;\;\frac{\sqrt{2} \cdot t}{\sqrt{2 \cdot {t}^{2} + \left(2 \cdot \left(\left|\ell\right| \cdot \frac{\left|\ell\right|}{x}\right) + 4 \cdot \frac{{t}^{2}}{x}\right)}}\\ \mathbf{else}:\\ \;\;\;\;\frac{\sqrt{2} \cdot t}{2 \cdot \left(\frac{t}{\sqrt{2} \cdot {x}^{2}} + \frac{t}{\sqrt{2} \cdot x}\right) + \left(\sqrt{2} \cdot t - 2 \cdot \frac{t}{{\left(\sqrt{2}\right)}^{3} \cdot {x}^{2}}\right)}\\ \end{array}\]
\frac{\sqrt{2} \cdot t}{\sqrt{\frac{x + 1}{x - 1} \cdot \left(\ell \cdot \ell + 2 \cdot \left(t \cdot t\right)\right) - \ell \cdot \ell}}
\begin{array}{l}
\mathbf{if}\;t \le -3.6475491705472148 \cdot 10^{125}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\left(2 \cdot \frac{t}{{\left(\sqrt{2}\right)}^{3} \cdot {x}^{2}} - 2 \cdot \left(\frac{t}{\sqrt{2} \cdot {x}^{2}} + \frac{t}{\sqrt{2} \cdot x}\right)\right) - \sqrt{2} \cdot t}\\

\mathbf{elif}\;t \le 2.0489990719913409 \cdot 10^{-272} \lor \neg \left(t \le 2.59765205302792963 \cdot 10^{-253}\right) \land t \le 3.4577470562944996 \cdot 10^{98}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\sqrt{2 \cdot {t}^{2} + \left(2 \cdot \left(\left|\ell\right| \cdot \frac{\left|\ell\right|}{x}\right) + 4 \cdot \frac{{t}^{2}}{x}\right)}}\\

\mathbf{else}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{2 \cdot \left(\frac{t}{\sqrt{2} \cdot {x}^{2}} + \frac{t}{\sqrt{2} \cdot x}\right) + \left(\sqrt{2} \cdot t - 2 \cdot \frac{t}{{\left(\sqrt{2}\right)}^{3} \cdot {x}^{2}}\right)}\\

\end{array}
double f(double x, double l, double t) {
        double r35996 = 2.0;
        double r35997 = sqrt(r35996);
        double r35998 = t;
        double r35999 = r35997 * r35998;
        double r36000 = x;
        double r36001 = 1.0;
        double r36002 = r36000 + r36001;
        double r36003 = r36000 - r36001;
        double r36004 = r36002 / r36003;
        double r36005 = l;
        double r36006 = r36005 * r36005;
        double r36007 = r35998 * r35998;
        double r36008 = r35996 * r36007;
        double r36009 = r36006 + r36008;
        double r36010 = r36004 * r36009;
        double r36011 = r36010 - r36006;
        double r36012 = sqrt(r36011);
        double r36013 = r35999 / r36012;
        return r36013;
}

double f(double x, double l, double t) {
        double r36014 = t;
        double r36015 = -3.647549170547215e+125;
        bool r36016 = r36014 <= r36015;
        double r36017 = 2.0;
        double r36018 = sqrt(r36017);
        double r36019 = r36018 * r36014;
        double r36020 = 3.0;
        double r36021 = pow(r36018, r36020);
        double r36022 = x;
        double r36023 = 2.0;
        double r36024 = pow(r36022, r36023);
        double r36025 = r36021 * r36024;
        double r36026 = r36014 / r36025;
        double r36027 = r36017 * r36026;
        double r36028 = r36018 * r36024;
        double r36029 = r36014 / r36028;
        double r36030 = r36018 * r36022;
        double r36031 = r36014 / r36030;
        double r36032 = r36029 + r36031;
        double r36033 = r36017 * r36032;
        double r36034 = r36027 - r36033;
        double r36035 = r36034 - r36019;
        double r36036 = r36019 / r36035;
        double r36037 = 2.048999071991341e-272;
        bool r36038 = r36014 <= r36037;
        double r36039 = 2.5976520530279296e-253;
        bool r36040 = r36014 <= r36039;
        double r36041 = !r36040;
        double r36042 = 3.4577470562944996e+98;
        bool r36043 = r36014 <= r36042;
        bool r36044 = r36041 && r36043;
        bool r36045 = r36038 || r36044;
        double r36046 = pow(r36014, r36023);
        double r36047 = r36017 * r36046;
        double r36048 = l;
        double r36049 = fabs(r36048);
        double r36050 = r36049 / r36022;
        double r36051 = r36049 * r36050;
        double r36052 = r36017 * r36051;
        double r36053 = 4.0;
        double r36054 = r36046 / r36022;
        double r36055 = r36053 * r36054;
        double r36056 = r36052 + r36055;
        double r36057 = r36047 + r36056;
        double r36058 = sqrt(r36057);
        double r36059 = r36019 / r36058;
        double r36060 = r36019 - r36027;
        double r36061 = r36033 + r36060;
        double r36062 = r36019 / r36061;
        double r36063 = r36045 ? r36059 : r36062;
        double r36064 = r36016 ? r36036 : r36063;
        return r36064;
}

Error

Bits error versus x

Bits error versus l

Bits error versus t

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Split input into 3 regimes
  2. if t < -3.647549170547215e+125

    1. Initial program 54.1

      \[\frac{\sqrt{2} \cdot t}{\sqrt{\frac{x + 1}{x - 1} \cdot \left(\ell \cdot \ell + 2 \cdot \left(t \cdot t\right)\right) - \ell \cdot \ell}}\]
    2. Taylor expanded around -inf 2.6

      \[\leadsto \frac{\sqrt{2} \cdot t}{\color{blue}{2 \cdot \frac{t}{{\left(\sqrt{2}\right)}^{3} \cdot {x}^{2}} - \left(2 \cdot \frac{t}{\sqrt{2} \cdot {x}^{2}} + \left(2 \cdot \frac{t}{\sqrt{2} \cdot x} + t \cdot \sqrt{2}\right)\right)}}\]
    3. Simplified2.6

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

    if -3.647549170547215e+125 < t < 2.048999071991341e-272 or 2.5976520530279296e-253 < t < 3.4577470562944996e+98

    1. Initial program 37.1

      \[\frac{\sqrt{2} \cdot t}{\sqrt{\frac{x + 1}{x - 1} \cdot \left(\ell \cdot \ell + 2 \cdot \left(t \cdot t\right)\right) - \ell \cdot \ell}}\]
    2. Taylor expanded around inf 17.5

      \[\leadsto \frac{\sqrt{2} \cdot t}{\sqrt{\color{blue}{2 \cdot {t}^{2} + \left(2 \cdot \frac{{\ell}^{2}}{x} + 4 \cdot \frac{{t}^{2}}{x}\right)}}}\]
    3. Using strategy rm
    4. Applied *-un-lft-identity17.5

      \[\leadsto \frac{\sqrt{2} \cdot t}{\sqrt{2 \cdot {t}^{2} + \left(2 \cdot \frac{{\ell}^{2}}{\color{blue}{1 \cdot x}} + 4 \cdot \frac{{t}^{2}}{x}\right)}}\]
    5. Applied add-sqr-sqrt17.5

      \[\leadsto \frac{\sqrt{2} \cdot t}{\sqrt{2 \cdot {t}^{2} + \left(2 \cdot \frac{\color{blue}{\sqrt{{\ell}^{2}} \cdot \sqrt{{\ell}^{2}}}}{1 \cdot x} + 4 \cdot \frac{{t}^{2}}{x}\right)}}\]
    6. Applied times-frac17.5

      \[\leadsto \frac{\sqrt{2} \cdot t}{\sqrt{2 \cdot {t}^{2} + \left(2 \cdot \color{blue}{\left(\frac{\sqrt{{\ell}^{2}}}{1} \cdot \frac{\sqrt{{\ell}^{2}}}{x}\right)} + 4 \cdot \frac{{t}^{2}}{x}\right)}}\]
    7. Simplified17.5

      \[\leadsto \frac{\sqrt{2} \cdot t}{\sqrt{2 \cdot {t}^{2} + \left(2 \cdot \left(\color{blue}{\left|\ell\right|} \cdot \frac{\sqrt{{\ell}^{2}}}{x}\right) + 4 \cdot \frac{{t}^{2}}{x}\right)}}\]
    8. Simplified13.2

      \[\leadsto \frac{\sqrt{2} \cdot t}{\sqrt{2 \cdot {t}^{2} + \left(2 \cdot \left(\left|\ell\right| \cdot \color{blue}{\frac{\left|\ell\right|}{x}}\right) + 4 \cdot \frac{{t}^{2}}{x}\right)}}\]

    if 2.048999071991341e-272 < t < 2.5976520530279296e-253 or 3.4577470562944996e+98 < t

    1. Initial program 52.2

      \[\frac{\sqrt{2} \cdot t}{\sqrt{\frac{x + 1}{x - 1} \cdot \left(\ell \cdot \ell + 2 \cdot \left(t \cdot t\right)\right) - \ell \cdot \ell}}\]
    2. Taylor expanded around inf 4.8

      \[\leadsto \frac{\sqrt{2} \cdot t}{\color{blue}{\left(2 \cdot \frac{t}{\sqrt{2} \cdot {x}^{2}} + \left(2 \cdot \frac{t}{\sqrt{2} \cdot x} + t \cdot \sqrt{2}\right)\right) - 2 \cdot \frac{t}{{\left(\sqrt{2}\right)}^{3} \cdot {x}^{2}}}}\]
    3. Simplified4.8

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

    \[\leadsto \begin{array}{l} \mathbf{if}\;t \le -3.6475491705472148 \cdot 10^{125}:\\ \;\;\;\;\frac{\sqrt{2} \cdot t}{\left(2 \cdot \frac{t}{{\left(\sqrt{2}\right)}^{3} \cdot {x}^{2}} - 2 \cdot \left(\frac{t}{\sqrt{2} \cdot {x}^{2}} + \frac{t}{\sqrt{2} \cdot x}\right)\right) - \sqrt{2} \cdot t}\\ \mathbf{elif}\;t \le 2.0489990719913409 \cdot 10^{-272} \lor \neg \left(t \le 2.59765205302792963 \cdot 10^{-253}\right) \land t \le 3.4577470562944996 \cdot 10^{98}:\\ \;\;\;\;\frac{\sqrt{2} \cdot t}{\sqrt{2 \cdot {t}^{2} + \left(2 \cdot \left(\left|\ell\right| \cdot \frac{\left|\ell\right|}{x}\right) + 4 \cdot \frac{{t}^{2}}{x}\right)}}\\ \mathbf{else}:\\ \;\;\;\;\frac{\sqrt{2} \cdot t}{2 \cdot \left(\frac{t}{\sqrt{2} \cdot {x}^{2}} + \frac{t}{\sqrt{2} \cdot x}\right) + \left(\sqrt{2} \cdot t - 2 \cdot \frac{t}{{\left(\sqrt{2}\right)}^{3} \cdot {x}^{2}}\right)}\\ \end{array}\]

Reproduce

herbie shell --seed 2020043 
(FPCore (x l t)
  :name "Toniolo and Linder, Equation (7)"
  :precision binary64
  (/ (* (sqrt 2) t) (sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l)))))