Average Error: 33.5 → 28.5
Time: 1.1m
Precision: 64
Internal Precision: 128
\[\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}\;t \le 2.2318158632983545 \cdot 10^{-253} \lor \neg \left(t \le 2.603655567032186 \cdot 10^{-132}\right):\\ \;\;\;\;{\left(\left(\left(\left(U \cdot -2\right) \cdot \frac{\ell}{Om}\right) \cdot n\right) \cdot (\left(n \cdot \left(U - U*\right)\right) \cdot \left(\frac{\ell}{Om}\right) + \left(2 \cdot \ell\right))_* + \left(2 \cdot \left(U \cdot n\right)\right) \cdot t\right)}^{\frac{1}{2}}\\ \mathbf{else}:\\ \;\;\;\;\sqrt{2 \cdot \left(U \cdot n\right)} \cdot \sqrt{t - (\left(\frac{\ell}{Om} \cdot \frac{\ell}{Om}\right) \cdot \left(n \cdot \left(U - U*\right)\right) + \left(\frac{\ell}{Om} \cdot \left(2 \cdot \ell\right)\right))_*}\\ \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 2 regimes
  2. if t < 2.2318158632983545e-253 or 2.603655567032186e-132 < t

    1. Initial program 33.3

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

      \[\leadsto \sqrt{\left(2 \cdot \left(U \cdot n\right)\right) \cdot \left(t - (\left(\frac{\ell}{Om} \cdot \frac{\ell}{Om}\right) \cdot \left(\left(U - U*\right) \cdot n\right) + \left(\frac{\ell}{Om} \cdot \left(2 \cdot \ell\right)\right))_*\right)}\]
    3. Using strategy rm
    4. Applied sub-neg32.3

      \[\leadsto \sqrt{\left(2 \cdot \left(U \cdot n\right)\right) \cdot \color{blue}{\left(t + \left(-(\left(\frac{\ell}{Om} \cdot \frac{\ell}{Om}\right) \cdot \left(\left(U - U*\right) \cdot n\right) + \left(\frac{\ell}{Om} \cdot \left(2 \cdot \ell\right)\right))_*\right)\right)}}\]
    5. Applied distribute-rgt-in32.3

      \[\leadsto \sqrt{\color{blue}{t \cdot \left(2 \cdot \left(U \cdot n\right)\right) + \left(-(\left(\frac{\ell}{Om} \cdot \frac{\ell}{Om}\right) \cdot \left(\left(U - U*\right) \cdot n\right) + \left(\frac{\ell}{Om} \cdot \left(2 \cdot \ell\right)\right))_*\right) \cdot \left(2 \cdot \left(U \cdot n\right)\right)}}\]
    6. Simplified29.3

      \[\leadsto \sqrt{t \cdot \left(2 \cdot \left(U \cdot n\right)\right) + \color{blue}{\left(\left(n \cdot \left(U \cdot -2\right)\right) \cdot \frac{\ell}{Om}\right) \cdot (\left(n \cdot \left(U - U*\right)\right) \cdot \left(\frac{\ell}{Om}\right) + \left(2 \cdot \ell\right))_*}}\]
    7. Using strategy rm
    8. Applied associate-*l*27.9

      \[\leadsto \sqrt{t \cdot \left(2 \cdot \left(U \cdot n\right)\right) + \color{blue}{\left(n \cdot \left(\left(U \cdot -2\right) \cdot \frac{\ell}{Om}\right)\right)} \cdot (\left(n \cdot \left(U - U*\right)\right) \cdot \left(\frac{\ell}{Om}\right) + \left(2 \cdot \ell\right))_*}\]
    9. Using strategy rm
    10. Applied pow1/227.9

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

    if 2.2318158632983545e-253 < t < 2.603655567032186e-132

    1. Initial program 34.6

      \[\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. Initial simplification31.5

      \[\leadsto \sqrt{\left(2 \cdot \left(U \cdot n\right)\right) \cdot \left(t - (\left(\frac{\ell}{Om} \cdot \frac{\ell}{Om}\right) \cdot \left(\left(U - U*\right) \cdot n\right) + \left(\frac{\ell}{Om} \cdot \left(2 \cdot \ell\right)\right))_*\right)}\]
    3. Using strategy rm
    4. Applied sqrt-prod33.7

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

    \[\leadsto \begin{array}{l} \mathbf{if}\;t \le 2.2318158632983545 \cdot 10^{-253} \lor \neg \left(t \le 2.603655567032186 \cdot 10^{-132}\right):\\ \;\;\;\;{\left(\left(\left(\left(U \cdot -2\right) \cdot \frac{\ell}{Om}\right) \cdot n\right) \cdot (\left(n \cdot \left(U - U*\right)\right) \cdot \left(\frac{\ell}{Om}\right) + \left(2 \cdot \ell\right))_* + \left(2 \cdot \left(U \cdot n\right)\right) \cdot t\right)}^{\frac{1}{2}}\\ \mathbf{else}:\\ \;\;\;\;\sqrt{2 \cdot \left(U \cdot n\right)} \cdot \sqrt{t - (\left(\frac{\ell}{Om} \cdot \frac{\ell}{Om}\right) \cdot \left(n \cdot \left(U - U*\right)\right) + \left(\frac{\ell}{Om} \cdot \left(2 \cdot \ell\right)\right))_*}\\ \end{array}\]

Runtime

Time bar (total: 1.1m)Debug logProfile

herbie shell --seed 2018336 +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*))))))