Average Error: 33.0 → 28.1
Time: 3.7m
Precision: 64
Ground Truth: 128
\[\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{{\ell}^2}{Om}\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^2\right) \cdot \left(U - U*\right)\right)}\]
\[\begin{array}{l} \mathbf{if}\;U \le -9.413841577815897 \cdot 10^{-68}:\\ \;\;\;\;\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\ell}{\frac{Om}{\ell}}\right) - \left(\left(n \cdot \frac{\ell}{Om}\right) \cdot \frac{\ell}{Om}\right) \cdot \left(U - U*\right)\right)}\\ \mathbf{if}\;U \le 3.115465228339452 \cdot 10^{-122}:\\ \;\;\;\;\sqrt{\left(2 \cdot n\right) \cdot \left(U \cdot \left(\left(t - 2 \cdot \frac{\ell}{\frac{Om}{\ell}}\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^2\right) \cdot \left(U - U*\right)\right)\right)}\\ \mathbf{else}:\\ \;\;\;\;\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\ell}{\frac{Om}{\ell}}\right) - \left(\left(n \cdot \frac{\ell}{Om}\right) \cdot \frac{\ell}{Om}\right) \cdot \left(U - U*\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 U < -9.413841577815897e-68 or 3.115465228339452e-122 < U

    1. Initial program 28.1

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

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\color{blue}{\ell \cdot \ell}}{Om}\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^2\right) \cdot \left(U - U*\right)\right)}\]
    4. Applied associate-/l* 25.3

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \color{blue}{\frac{\ell}{\frac{Om}{\ell}}}\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^2\right) \cdot \left(U - U*\right)\right)}\]
    5. Using strategy rm
    6. Applied square-mult 25.3

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\ell}{\frac{Om}{\ell}}\right) - \left(n \cdot \color{blue}{\left(\frac{\ell}{Om} \cdot \frac{\ell}{Om}\right)}\right) \cdot \left(U - U*\right)\right)}\]
    7. Applied associate-*r* 24.5

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

    if -9.413841577815897e-68 < U < 3.115465228339452e-122

    1. Initial program 39.1

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

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\color{blue}{\ell \cdot \ell}}{Om}\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^2\right) \cdot \left(U - U*\right)\right)}\]
    4. Applied associate-/l* 37.0

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

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

Runtime

Total time: 3.7m Debug log

Please include this information when filing a bug report:

herbie --seed '#(1695846949 2735213804 4288839980 2123456474 168282222 639857141)'
(FPCore (n U t l Om U*)
  :name "Toniolo and Linder, Equation (13)"
  (sqrt (* (* (* 2 n) U) (- (- t (* 2 (/ (sqr l) Om))) (* (* n (sqr (/ l Om))) (- U U*))))))