Average Error: 42.5 → 8.7
Time: 41.5s
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 -2.2121121680339957 \cdot 10^{+126}:\\ \;\;\;\;\frac{\sqrt{2} \cdot t}{\frac{1}{\sqrt{2}} \cdot \frac{t}{x \cdot x} - (t \cdot \left(\sqrt{2}\right) + \left(\frac{2}{\sqrt{2}} \cdot \left(\frac{t}{x} + \frac{t}{x \cdot x}\right)\right))_*}\\ \mathbf{elif}\;t \le 1.853799998927771 \cdot 10^{+116}:\\ \;\;\;\;\frac{\left(t \cdot \left(\sqrt[3]{\sqrt{2}} \cdot \sqrt[3]{\sqrt{2}}\right)\right) \cdot \sqrt[3]{\sqrt{2}}}{\sqrt{(\left((\left(\frac{\ell}{x}\right) \cdot \ell + \left(t \cdot t\right))_*\right) \cdot 2 + \left(\frac{4 \cdot \left(t \cdot t\right)}{x}\right))_*}}\\ \mathbf{else}:\\ \;\;\;\;\frac{\sqrt{2} \cdot t}{\frac{\frac{2}{x}}{x} \cdot \left(\frac{t}{\sqrt{2}} - \frac{\frac{t}{\sqrt{2}}}{2}\right) + (\left(\frac{t}{\sqrt{2} \cdot x}\right) \cdot 2 + \left(\sqrt{2} \cdot t\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 -2.2121121680339957 \cdot 10^{+126}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\frac{1}{\sqrt{2}} \cdot \frac{t}{x \cdot x} - (t \cdot \left(\sqrt{2}\right) + \left(\frac{2}{\sqrt{2}} \cdot \left(\frac{t}{x} + \frac{t}{x \cdot x}\right)\right))_*}\\

\mathbf{elif}\;t \le 1.853799998927771 \cdot 10^{+116}:\\
\;\;\;\;\frac{\left(t \cdot \left(\sqrt[3]{\sqrt{2}} \cdot \sqrt[3]{\sqrt{2}}\right)\right) \cdot \sqrt[3]{\sqrt{2}}}{\sqrt{(\left((\left(\frac{\ell}{x}\right) \cdot \ell + \left(t \cdot t\right))_*\right) \cdot 2 + \left(\frac{4 \cdot \left(t \cdot t\right)}{x}\right))_*}}\\

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

\end{array}
double f(double x, double l, double t) {
        double r1568128 = 2.0;
        double r1568129 = sqrt(r1568128);
        double r1568130 = t;
        double r1568131 = r1568129 * r1568130;
        double r1568132 = x;
        double r1568133 = 1.0;
        double r1568134 = r1568132 + r1568133;
        double r1568135 = r1568132 - r1568133;
        double r1568136 = r1568134 / r1568135;
        double r1568137 = l;
        double r1568138 = r1568137 * r1568137;
        double r1568139 = r1568130 * r1568130;
        double r1568140 = r1568128 * r1568139;
        double r1568141 = r1568138 + r1568140;
        double r1568142 = r1568136 * r1568141;
        double r1568143 = r1568142 - r1568138;
        double r1568144 = sqrt(r1568143);
        double r1568145 = r1568131 / r1568144;
        return r1568145;
}

double f(double x, double l, double t) {
        double r1568146 = t;
        double r1568147 = -2.2121121680339957e+126;
        bool r1568148 = r1568146 <= r1568147;
        double r1568149 = 2.0;
        double r1568150 = sqrt(r1568149);
        double r1568151 = r1568150 * r1568146;
        double r1568152 = 1.0;
        double r1568153 = r1568152 / r1568150;
        double r1568154 = x;
        double r1568155 = r1568154 * r1568154;
        double r1568156 = r1568146 / r1568155;
        double r1568157 = r1568153 * r1568156;
        double r1568158 = r1568149 / r1568150;
        double r1568159 = r1568146 / r1568154;
        double r1568160 = r1568159 + r1568156;
        double r1568161 = r1568158 * r1568160;
        double r1568162 = fma(r1568146, r1568150, r1568161);
        double r1568163 = r1568157 - r1568162;
        double r1568164 = r1568151 / r1568163;
        double r1568165 = 1.853799998927771e+116;
        bool r1568166 = r1568146 <= r1568165;
        double r1568167 = cbrt(r1568150);
        double r1568168 = r1568167 * r1568167;
        double r1568169 = r1568146 * r1568168;
        double r1568170 = r1568169 * r1568167;
        double r1568171 = l;
        double r1568172 = r1568171 / r1568154;
        double r1568173 = r1568146 * r1568146;
        double r1568174 = fma(r1568172, r1568171, r1568173);
        double r1568175 = 4.0;
        double r1568176 = r1568175 * r1568173;
        double r1568177 = r1568176 / r1568154;
        double r1568178 = fma(r1568174, r1568149, r1568177);
        double r1568179 = sqrt(r1568178);
        double r1568180 = r1568170 / r1568179;
        double r1568181 = r1568149 / r1568154;
        double r1568182 = r1568181 / r1568154;
        double r1568183 = r1568146 / r1568150;
        double r1568184 = r1568183 / r1568149;
        double r1568185 = r1568183 - r1568184;
        double r1568186 = r1568182 * r1568185;
        double r1568187 = r1568150 * r1568154;
        double r1568188 = r1568146 / r1568187;
        double r1568189 = fma(r1568188, r1568149, r1568151);
        double r1568190 = r1568186 + r1568189;
        double r1568191 = r1568151 / r1568190;
        double r1568192 = r1568166 ? r1568180 : r1568191;
        double r1568193 = r1568148 ? r1568164 : r1568192;
        return r1568193;
}

Error

Bits error versus x

Bits error versus l

Bits error versus t

Derivation

  1. Split input into 3 regimes
  2. if t < -2.2121121680339957e+126

    1. Initial program 55.9

      \[\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.3

      \[\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(t \cdot \sqrt{2} + 2 \cdot \frac{t}{\sqrt{2} \cdot x}\right)\right)}}\]
    3. Simplified2.3

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

    if -2.2121121680339957e+126 < t < 1.853799998927771e+116

    1. Initial program 35.5

      \[\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 16.7

      \[\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. Simplified12.4

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

      \[\leadsto \frac{\color{blue}{t \cdot \sqrt{2}}}{\sqrt{(\left((\left(\frac{\ell}{x}\right) \cdot \ell + \left(t \cdot t\right))_*\right) \cdot 2 + \left(\frac{\left(t \cdot t\right) \cdot 4}{x}\right))_*}}\]
    6. Using strategy rm
    7. Applied add-cube-cbrt12.4

      \[\leadsto \frac{t \cdot \color{blue}{\left(\left(\sqrt[3]{\sqrt{2}} \cdot \sqrt[3]{\sqrt{2}}\right) \cdot \sqrt[3]{\sqrt{2}}\right)}}{\sqrt{(\left((\left(\frac{\ell}{x}\right) \cdot \ell + \left(t \cdot t\right))_*\right) \cdot 2 + \left(\frac{\left(t \cdot t\right) \cdot 4}{x}\right))_*}}\]
    8. Applied associate-*r*12.4

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

    if 1.853799998927771e+116 < t

    1. Initial program 53.0

      \[\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.4

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

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

    \[\leadsto \begin{array}{l} \mathbf{if}\;t \le -2.2121121680339957 \cdot 10^{+126}:\\ \;\;\;\;\frac{\sqrt{2} \cdot t}{\frac{1}{\sqrt{2}} \cdot \frac{t}{x \cdot x} - (t \cdot \left(\sqrt{2}\right) + \left(\frac{2}{\sqrt{2}} \cdot \left(\frac{t}{x} + \frac{t}{x \cdot x}\right)\right))_*}\\ \mathbf{elif}\;t \le 1.853799998927771 \cdot 10^{+116}:\\ \;\;\;\;\frac{\left(t \cdot \left(\sqrt[3]{\sqrt{2}} \cdot \sqrt[3]{\sqrt{2}}\right)\right) \cdot \sqrt[3]{\sqrt{2}}}{\sqrt{(\left((\left(\frac{\ell}{x}\right) \cdot \ell + \left(t \cdot t\right))_*\right) \cdot 2 + \left(\frac{4 \cdot \left(t \cdot t\right)}{x}\right))_*}}\\ \mathbf{else}:\\ \;\;\;\;\frac{\sqrt{2} \cdot t}{\frac{\frac{2}{x}}{x} \cdot \left(\frac{t}{\sqrt{2}} - \frac{\frac{t}{\sqrt{2}}}{2}\right) + (\left(\frac{t}{\sqrt{2} \cdot x}\right) \cdot 2 + \left(\sqrt{2} \cdot t\right))_*}\\ \end{array}\]

Reproduce

herbie shell --seed 2019104 +o rules:numerics
(FPCore (x l t)
  :name "Toniolo and Linder, Equation (7)"
  (/ (* (sqrt 2) t) (sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l)))))