Average Error: 33.4 → 26.4
Time: 2.1m
Precision: 64
Internal Precision: 384
\[\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\ell \cdot \ell}{Om}\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right)}\]
\[\begin{array}{l} \mathbf{if}\;U \cdot \left(t - \frac{\ell + \ell}{\frac{Om}{\ell}}\right) = -\infty:\\ \;\;\;\;\sqrt{\left(U \cdot n\right) \cdot \left(t + t\right) - \frac{\ell \cdot 4}{\frac{\frac{Om}{U}}{n \cdot \ell}}}\\ \mathbf{if}\;U \cdot \left(t - \frac{\ell + \ell}{\frac{Om}{\ell}}\right) \le -5.013194552445523 \cdot 10^{-187}:\\ \;\;\;\;{\left(\left(n + n\right) \cdot \left(U \cdot \left(t - \frac{\ell + \ell}{\frac{Om}{\ell}}\right)\right)\right)}^{\frac{1}{2}}\\ \mathbf{if}\;U \cdot \left(t - \frac{\ell + \ell}{\frac{Om}{\ell}}\right) \le 4.319545791701079 \cdot 10^{-81}:\\ \;\;\;\;\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(t - 2 \cdot \frac{\ell \cdot \ell}{Om}\right) + \left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(-\left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right)}\\ \mathbf{if}\;U \cdot \left(t - \frac{\ell + \ell}{\frac{Om}{\ell}}\right) \le 8.09092421224839 \cdot 10^{+252}:\\ \;\;\;\;{\left(\left(n + n\right) \cdot \left(U \cdot \left(t - \frac{\ell + \ell}{\frac{Om}{\ell}}\right)\right)\right)}^{\frac{1}{2}}\\ \mathbf{else}:\\ \;\;\;\;\sqrt{\left(U \cdot n\right) \cdot \left(t + t\right) - \frac{\ell \cdot 4}{\frac{\frac{Om}{U}}{n \cdot \ell}}}\\ \end{array}\]

Error

Bits error versus n

Bits error versus U

Bits error versus t

Bits error versus l

Bits error versus Om

Bits error versus U*

Derivation

  1. Split input into 3 regimes
  2. if (* U (- t (/ (+ l l) (/ Om l)))) < -inf.0 or 8.09092421224839e+252 < (* U (- t (/ (+ l l) (/ Om l))))

    1. Initial program 49.8

      \[\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\ell \cdot \ell}{Om}\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right)}\]
    2. Taylor expanded around 0 49.8

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\ell \cdot \ell}{Om}\right) - \color{blue}{0}\right)}\]
    3. Applied simplify47.1

      \[\leadsto \color{blue}{\sqrt{\left(\left(n + n\right) \cdot U\right) \cdot \left(t - \frac{\ell + \ell}{\frac{Om}{\ell}}\right)}}\]
    4. Using strategy rm
    5. Applied pow1/247.1

      \[\leadsto \color{blue}{{\left(\left(\left(n + n\right) \cdot U\right) \cdot \left(t - \frac{\ell + \ell}{\frac{Om}{\ell}}\right)\right)}^{\frac{1}{2}}}\]
    6. Taylor expanded around inf 56.1

      \[\leadsto {\color{blue}{\left(2 \cdot \left(n \cdot \left(t \cdot U\right)\right) - 4 \cdot \frac{n \cdot \left({\ell}^{2} \cdot U\right)}{Om}\right)}}^{\frac{1}{2}}\]
    7. Applied simplify37.7

      \[\leadsto \color{blue}{\sqrt{\left(U \cdot n\right) \cdot \left(t + t\right) - \frac{\ell \cdot 4}{\frac{\frac{Om}{U}}{n \cdot \ell}}}}\]

    if -inf.0 < (* U (- t (/ (+ l l) (/ Om l)))) < -5.013194552445523e-187 or 4.319545791701079e-81 < (* U (- t (/ (+ l l) (/ Om l)))) < 8.09092421224839e+252

    1. Initial program 26.1

      \[\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\ell \cdot \ell}{Om}\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right)}\]
    2. Taylor expanded around 0 28.6

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\ell \cdot \ell}{Om}\right) - \color{blue}{0}\right)}\]
    3. Applied simplify25.2

      \[\leadsto \color{blue}{\sqrt{\left(\left(n + n\right) \cdot U\right) \cdot \left(t - \frac{\ell + \ell}{\frac{Om}{\ell}}\right)}}\]
    4. Using strategy rm
    5. Applied pow1/225.2

      \[\leadsto \color{blue}{{\left(\left(\left(n + n\right) \cdot U\right) \cdot \left(t - \frac{\ell + \ell}{\frac{Om}{\ell}}\right)\right)}^{\frac{1}{2}}}\]
    6. Using strategy rm
    7. Applied associate-*l*18.8

      \[\leadsto {\color{blue}{\left(\left(n + n\right) \cdot \left(U \cdot \left(t - \frac{\ell + \ell}{\frac{Om}{\ell}}\right)\right)\right)}}^{\frac{1}{2}}\]

    if -5.013194552445523e-187 < (* U (- t (/ (+ l l) (/ Om l)))) < 4.319545791701079e-81

    1. Initial program 30.1

      \[\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\ell \cdot \ell}{Om}\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right)}\]
    2. Using strategy rm
    3. Applied sub-neg30.1

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \color{blue}{\left(\left(t - 2 \cdot \frac{\ell \cdot \ell}{Om}\right) + \left(-\left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right)\right)}}\]
    4. Applied distribute-lft-in30.1

      \[\leadsto \sqrt{\color{blue}{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(t - 2 \cdot \frac{\ell \cdot \ell}{Om}\right) + \left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(-\left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right)}}\]
  3. Recombined 3 regimes into one program.

Runtime

Time bar (total: 2.1m)Debug logProfile

herbie shell --seed '#(1070355188 2193211668 3977393919 3454156579 3755371326 1656365382)' +o rules:numerics
(FPCore (n U t l Om U*)
  :name "Toniolo and Linder, Equation (13)"
  (sqrt (* (* (* 2 n) U) (- (- t (* 2 (/ (* l l) Om))) (* (* n (pow (/ l Om) 2)) (- U U*))))))