Average Error: 35.1 → 32.0
Time: 1.3m
Precision: 64
\[\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 9.479964460137454483482579161478165635978 \cdot 10^{-259}:\\ \;\;\;\;\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right)\right) - \left(\sqrt[3]{n} \cdot \sqrt[3]{n}\right) \cdot \left(\sqrt[3]{n} \cdot \left({\left(\frac{\ell}{Om}\right)}^{2} \cdot \left(U - U*\right)\right)\right)\right)}\\ \mathbf{else}:\\ \;\;\;\;\sqrt{\left(2 \cdot n\right) \cdot U} \cdot \sqrt{\left(t - 2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right)\right) - n \cdot \left({\left(\frac{\ell}{Om}\right)}^{2} \cdot \left(U - U*\right)\right)}\\ \end{array}\]
\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 9.479964460137454483482579161478165635978 \cdot 10^{-259}:\\
\;\;\;\;\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right)\right) - \left(\sqrt[3]{n} \cdot \sqrt[3]{n}\right) \cdot \left(\sqrt[3]{n} \cdot \left({\left(\frac{\ell}{Om}\right)}^{2} \cdot \left(U - U*\right)\right)\right)\right)}\\

\mathbf{else}:\\
\;\;\;\;\sqrt{\left(2 \cdot n\right) \cdot U} \cdot \sqrt{\left(t - 2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right)\right) - n \cdot \left({\left(\frac{\ell}{Om}\right)}^{2} \cdot \left(U - U*\right)\right)}\\

\end{array}
double f(double n, double U, double t, double l, double Om, double U_) {
        double r7404930 = 2.0;
        double r7404931 = n;
        double r7404932 = r7404930 * r7404931;
        double r7404933 = U;
        double r7404934 = r7404932 * r7404933;
        double r7404935 = t;
        double r7404936 = l;
        double r7404937 = r7404936 * r7404936;
        double r7404938 = Om;
        double r7404939 = r7404937 / r7404938;
        double r7404940 = r7404930 * r7404939;
        double r7404941 = r7404935 - r7404940;
        double r7404942 = r7404936 / r7404938;
        double r7404943 = pow(r7404942, r7404930);
        double r7404944 = r7404931 * r7404943;
        double r7404945 = U_;
        double r7404946 = r7404933 - r7404945;
        double r7404947 = r7404944 * r7404946;
        double r7404948 = r7404941 - r7404947;
        double r7404949 = r7404934 * r7404948;
        double r7404950 = sqrt(r7404949);
        return r7404950;
}

double f(double n, double U, double t, double l, double Om, double U_) {
        double r7404951 = t;
        double r7404952 = 9.479964460137454e-259;
        bool r7404953 = r7404951 <= r7404952;
        double r7404954 = 2.0;
        double r7404955 = n;
        double r7404956 = r7404954 * r7404955;
        double r7404957 = U;
        double r7404958 = r7404956 * r7404957;
        double r7404959 = l;
        double r7404960 = Om;
        double r7404961 = r7404959 / r7404960;
        double r7404962 = r7404959 * r7404961;
        double r7404963 = r7404954 * r7404962;
        double r7404964 = r7404951 - r7404963;
        double r7404965 = cbrt(r7404955);
        double r7404966 = r7404965 * r7404965;
        double r7404967 = pow(r7404961, r7404954);
        double r7404968 = U_;
        double r7404969 = r7404957 - r7404968;
        double r7404970 = r7404967 * r7404969;
        double r7404971 = r7404965 * r7404970;
        double r7404972 = r7404966 * r7404971;
        double r7404973 = r7404964 - r7404972;
        double r7404974 = r7404958 * r7404973;
        double r7404975 = sqrt(r7404974);
        double r7404976 = sqrt(r7404958);
        double r7404977 = r7404955 * r7404970;
        double r7404978 = r7404964 - r7404977;
        double r7404979 = sqrt(r7404978);
        double r7404980 = r7404976 * r7404979;
        double r7404981 = r7404953 ? r7404975 : r7404980;
        return r7404981;
}

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*

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Split input into 2 regimes
  2. if t < 9.479964460137454e-259

    1. Initial program 35.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. Using strategy rm
    3. Applied *-un-lft-identity35.2

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

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \color{blue}{\left(\frac{\ell}{1} \cdot \frac{\ell}{Om}\right)}\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right)}\]
    5. Simplified32.7

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

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right)\right) - \color{blue}{n \cdot \left({\left(\frac{\ell}{Om}\right)}^{2} \cdot \left(U - U*\right)\right)}\right)}\]
    8. Using strategy rm
    9. Applied add-cube-cbrt33.6

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

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

    if 9.479964460137454e-259 < t

    1. Initial program 34.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. Using strategy rm
    3. Applied *-un-lft-identity34.8

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

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \color{blue}{\left(\frac{\ell}{1} \cdot \frac{\ell}{Om}\right)}\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right)}\]
    5. Simplified32.0

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

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right)\right) - \color{blue}{n \cdot \left({\left(\frac{\ell}{Om}\right)}^{2} \cdot \left(U - U*\right)\right)}\right)}\]
    8. Using strategy rm
    9. Applied sqrt-prod30.2

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

    \[\leadsto \begin{array}{l} \mathbf{if}\;t \le 9.479964460137454483482579161478165635978 \cdot 10^{-259}:\\ \;\;\;\;\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right)\right) - \left(\sqrt[3]{n} \cdot \sqrt[3]{n}\right) \cdot \left(\sqrt[3]{n} \cdot \left({\left(\frac{\ell}{Om}\right)}^{2} \cdot \left(U - U*\right)\right)\right)\right)}\\ \mathbf{else}:\\ \;\;\;\;\sqrt{\left(2 \cdot n\right) \cdot U} \cdot \sqrt{\left(t - 2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right)\right) - n \cdot \left({\left(\frac{\ell}{Om}\right)}^{2} \cdot \left(U - U*\right)\right)}\\ \end{array}\]

Reproduce

herbie shell --seed 2019173 
(FPCore (n U t l Om U*)
  :name "Toniolo and Linder, Equation (13)"
  (sqrt (* (* (* 2.0 n) U) (- (- t (* 2.0 (/ (* l l) Om))) (* (* n (pow (/ l Om) 2.0)) (- U U*))))))