Average Error: 33.0 → 25.1
Time: 1.0m
Precision: 64
Internal Precision: 576
\[\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}\;\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - \frac{\ell \cdot \ell}{Om} \cdot 2\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right) \le 0.0:\\ \;\;\;\;\left|\sqrt{(\left((\left(\frac{U}{Om}\right) \cdot \left(\ell \cdot n\right) + \left(2 \cdot \ell\right))_* - \frac{n}{Om} \cdot \left(U* \cdot \ell\right)\right) \cdot \left(\frac{U \cdot \ell}{\frac{Om}{n}} \cdot -2\right) + \left(\left(2 \cdot n\right) \cdot \left(U \cdot t\right)\right))_*}\right|\\ \mathbf{elif}\;\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - \frac{\ell \cdot \ell}{Om} \cdot 2\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right) \le 5.5576464861754915 \cdot 10^{+306}:\\ \;\;\;\;\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - \frac{\ell \cdot \ell}{Om} \cdot 2\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right)}\\ \mathbf{else}:\\ \;\;\;\;\left|\sqrt{(\left((\left(\frac{U}{Om}\right) \cdot \left(\ell \cdot n\right) + \left(2 \cdot \ell\right))_* - \frac{n}{Om} \cdot \left(U* \cdot \ell\right)\right) \cdot \left(\frac{U \cdot \ell}{\frac{Om}{n}} \cdot -2\right) + \left(\left(2 \cdot n\right) \cdot \left(U \cdot t\right)\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 (* (* (* 2 n) U) (- (- t (* 2 (/ (* l l) Om))) (* (* n (pow (/ l Om) 2)) (- U U*)))) < 0.0 or 5.5576464861754915e+306 < (* (* (* 2 n) U) (- (- t (* 2 (/ (* l l) Om))) (* (* n (pow (/ l Om) 2)) (- U U*))))

    1. Initial program 59.2

      \[\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 simplification54.0

      \[\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-neg54.0

      \[\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-in54.0

      \[\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. Simplified48.2

      \[\leadsto \sqrt{t \cdot \left(2 \cdot \left(U \cdot n\right)\right) + \color{blue}{\left(\left(\left(n \cdot U\right) \cdot \left(-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. Taylor expanded around inf 47.4

      \[\leadsto \sqrt{t \cdot \left(2 \cdot \left(U \cdot n\right)\right) + \color{blue}{\left(-2 \cdot \frac{U \cdot \left(n \cdot \ell\right)}{Om}\right)} \cdot (\left(n \cdot \left(U - U*\right)\right) \cdot \left(\frac{\ell}{Om}\right) + \left(2 \cdot \ell\right))_*}\]
    8. Taylor expanded around 0 49.1

      \[\leadsto \sqrt{t \cdot \left(2 \cdot \left(U \cdot n\right)\right) + \left(-2 \cdot \frac{U \cdot \left(n \cdot \ell\right)}{Om}\right) \cdot \color{blue}{\left(\left(\frac{U \cdot \left(n \cdot \ell\right)}{Om} + 2 \cdot \ell\right) - \frac{n \cdot \left(U* \cdot \ell\right)}{Om}\right)}}\]
    9. Simplified50.0

      \[\leadsto \sqrt{t \cdot \left(2 \cdot \left(U \cdot n\right)\right) + \left(-2 \cdot \frac{U \cdot \left(n \cdot \ell\right)}{Om}\right) \cdot \color{blue}{(\left(\ell \cdot U*\right) \cdot \left(-\frac{n}{Om}\right) + \left((\left(\frac{n}{Om}\right) \cdot \left(U \cdot \ell\right) + \left(2 \cdot \ell\right))_*\right))_*}}\]
    10. Using strategy rm
    11. Applied add-sqr-sqrt50.0

      \[\leadsto \sqrt{\color{blue}{\sqrt{t \cdot \left(2 \cdot \left(U \cdot n\right)\right) + \left(-2 \cdot \frac{U \cdot \left(n \cdot \ell\right)}{Om}\right) \cdot (\left(\ell \cdot U*\right) \cdot \left(-\frac{n}{Om}\right) + \left((\left(\frac{n}{Om}\right) \cdot \left(U \cdot \ell\right) + \left(2 \cdot \ell\right))_*\right))_*} \cdot \sqrt{t \cdot \left(2 \cdot \left(U \cdot n\right)\right) + \left(-2 \cdot \frac{U \cdot \left(n \cdot \ell\right)}{Om}\right) \cdot (\left(\ell \cdot U*\right) \cdot \left(-\frac{n}{Om}\right) + \left((\left(\frac{n}{Om}\right) \cdot \left(U \cdot \ell\right) + \left(2 \cdot \ell\right))_*\right))_*}}}\]
    12. Applied rem-sqrt-square50.0

      \[\leadsto \color{blue}{\left|\sqrt{t \cdot \left(2 \cdot \left(U \cdot n\right)\right) + \left(-2 \cdot \frac{U \cdot \left(n \cdot \ell\right)}{Om}\right) \cdot (\left(\ell \cdot U*\right) \cdot \left(-\frac{n}{Om}\right) + \left((\left(\frac{n}{Om}\right) \cdot \left(U \cdot \ell\right) + \left(2 \cdot \ell\right))_*\right))_*}\right|}\]
    13. Simplified44.8

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

    if 0.0 < (* (* (* 2 n) U) (- (- t (* 2 (/ (* l l) Om))) (* (* n (pow (/ l Om) 2)) (- U U*)))) < 5.5576464861754915e+306

    1. Initial program 1.7

      \[\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)}\]
  3. Recombined 2 regimes into one program.
  4. Final simplification25.1

    \[\leadsto \begin{array}{l} \mathbf{if}\;\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - \frac{\ell \cdot \ell}{Om} \cdot 2\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right) \le 0.0:\\ \;\;\;\;\left|\sqrt{(\left((\left(\frac{U}{Om}\right) \cdot \left(\ell \cdot n\right) + \left(2 \cdot \ell\right))_* - \frac{n}{Om} \cdot \left(U* \cdot \ell\right)\right) \cdot \left(\frac{U \cdot \ell}{\frac{Om}{n}} \cdot -2\right) + \left(\left(2 \cdot n\right) \cdot \left(U \cdot t\right)\right))_*}\right|\\ \mathbf{elif}\;\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - \frac{\ell \cdot \ell}{Om} \cdot 2\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right) \le 5.5576464861754915 \cdot 10^{+306}:\\ \;\;\;\;\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - \frac{\ell \cdot \ell}{Om} \cdot 2\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right)}\\ \mathbf{else}:\\ \;\;\;\;\left|\sqrt{(\left((\left(\frac{U}{Om}\right) \cdot \left(\ell \cdot n\right) + \left(2 \cdot \ell\right))_* - \frac{n}{Om} \cdot \left(U* \cdot \ell\right)\right) \cdot \left(\frac{U \cdot \ell}{\frac{Om}{n}} \cdot -2\right) + \left(\left(2 \cdot n\right) \cdot \left(U \cdot t\right)\right))_*}\right|\\ \end{array}\]

Runtime

Time bar (total: 1.0m)Debug logProfile

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