Average Error: 32.0 → 14.3
Time: 15.4s
Precision: binary64
\[\frac{2}{\left(\left(\frac{{t}^{3}}{\ell \cdot \ell} \cdot \sin k\right) \cdot \tan k\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) + 1\right)} \]
\[\begin{array}{l} t_1 := 2 + {\left(\frac{k}{t}\right)}^{2}\\ t_2 := \frac{2}{{\left(\frac{t}{\sqrt[3]{\frac{\ell \cdot \ell}{\sin k}}} \cdot \sqrt[3]{\tan k \cdot t_1}\right)}^{3}}\\ t_3 := {\left(\sqrt[3]{\ell}\right)}^{2}\\ t_4 := \frac{2}{\left({\left(\frac{t}{\frac{t_3}{\sqrt[3]{\sin k}}}\right)}^{3} \cdot \tan k\right) \cdot t_1}\\ \mathbf{if}\;\ell \leq -2.3666527635593354 \cdot 10^{+118}:\\ \;\;\;\;t_4\\ \mathbf{elif}\;\ell \leq -4.91448157463651 \cdot 10^{-196}:\\ \;\;\;\;t_2\\ \mathbf{elif}\;\ell \leq 5.490168916135092 \cdot 10^{-162}:\\ \;\;\;\;\frac{2}{t_1 \cdot \left(\tan k \cdot {\left(\frac{t}{\frac{t_3}{\mathsf{fma}\left(\sqrt[3]{{k}^{7}}, -0.05555555555555555, \sqrt[3]{k}\right)}}\right)}^{3}\right)}\\ \mathbf{elif}\;\ell \leq 2.2186256439908187 \cdot 10^{+77}:\\ \;\;\;\;t_2\\ \mathbf{else}:\\ \;\;\;\;t_4\\ \end{array} \]
(FPCore (t l k)
 :precision binary64
 (/
  2.0
  (*
   (* (* (/ (pow t 3.0) (* l l)) (sin k)) (tan k))
   (+ (+ 1.0 (pow (/ k t) 2.0)) 1.0))))
(FPCore (t l k)
 :precision binary64
 (let* ((t_1 (+ 2.0 (pow (/ k t) 2.0)))
        (t_2
         (/
          2.0
          (pow
           (* (/ t (cbrt (/ (* l l) (sin k)))) (cbrt (* (tan k) t_1)))
           3.0)))
        (t_3 (pow (cbrt l) 2.0))
        (t_4
         (/ 2.0 (* (* (pow (/ t (/ t_3 (cbrt (sin k)))) 3.0) (tan k)) t_1))))
   (if (<= l -2.3666527635593354e+118)
     t_4
     (if (<= l -4.91448157463651e-196)
       t_2
       (if (<= l 5.490168916135092e-162)
         (/
          2.0
          (*
           t_1
           (*
            (tan k)
            (pow
             (/
              t
              (/ t_3 (fma (cbrt (pow k 7.0)) -0.05555555555555555 (cbrt k))))
             3.0))))
         (if (<= l 2.2186256439908187e+77) t_2 t_4))))))
double code(double t, double l, double k) {
	return 2.0 / ((((pow(t, 3.0) / (l * l)) * sin(k)) * tan(k)) * ((1.0 + pow((k / t), 2.0)) + 1.0));
}
double code(double t, double l, double k) {
	double t_1 = 2.0 + pow((k / t), 2.0);
	double t_2 = 2.0 / pow(((t / cbrt(((l * l) / sin(k)))) * cbrt((tan(k) * t_1))), 3.0);
	double t_3 = pow(cbrt(l), 2.0);
	double t_4 = 2.0 / ((pow((t / (t_3 / cbrt(sin(k)))), 3.0) * tan(k)) * t_1);
	double tmp;
	if (l <= -2.3666527635593354e+118) {
		tmp = t_4;
	} else if (l <= -4.91448157463651e-196) {
		tmp = t_2;
	} else if (l <= 5.490168916135092e-162) {
		tmp = 2.0 / (t_1 * (tan(k) * pow((t / (t_3 / fma(cbrt(pow(k, 7.0)), -0.05555555555555555, cbrt(k)))), 3.0)));
	} else if (l <= 2.2186256439908187e+77) {
		tmp = t_2;
	} else {
		tmp = t_4;
	}
	return tmp;
}
function code(t, l, k)
	return Float64(2.0 / Float64(Float64(Float64(Float64((t ^ 3.0) / Float64(l * l)) * sin(k)) * tan(k)) * Float64(Float64(1.0 + (Float64(k / t) ^ 2.0)) + 1.0)))
end
function code(t, l, k)
	t_1 = Float64(2.0 + (Float64(k / t) ^ 2.0))
	t_2 = Float64(2.0 / (Float64(Float64(t / cbrt(Float64(Float64(l * l) / sin(k)))) * cbrt(Float64(tan(k) * t_1))) ^ 3.0))
	t_3 = cbrt(l) ^ 2.0
	t_4 = Float64(2.0 / Float64(Float64((Float64(t / Float64(t_3 / cbrt(sin(k)))) ^ 3.0) * tan(k)) * t_1))
	tmp = 0.0
	if (l <= -2.3666527635593354e+118)
		tmp = t_4;
	elseif (l <= -4.91448157463651e-196)
		tmp = t_2;
	elseif (l <= 5.490168916135092e-162)
		tmp = Float64(2.0 / Float64(t_1 * Float64(tan(k) * (Float64(t / Float64(t_3 / fma(cbrt((k ^ 7.0)), -0.05555555555555555, cbrt(k)))) ^ 3.0))));
	elseif (l <= 2.2186256439908187e+77)
		tmp = t_2;
	else
		tmp = t_4;
	end
	return tmp
end
code[t_, l_, k_] := N[(2.0 / N[(N[(N[(N[(N[Power[t, 3.0], $MachinePrecision] / N[(l * l), $MachinePrecision]), $MachinePrecision] * N[Sin[k], $MachinePrecision]), $MachinePrecision] * N[Tan[k], $MachinePrecision]), $MachinePrecision] * N[(N[(1.0 + N[Power[N[(k / t), $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision] + 1.0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
code[t_, l_, k_] := Block[{t$95$1 = N[(2.0 + N[Power[N[(k / t), $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(2.0 / N[Power[N[(N[(t / N[Power[N[(N[(l * l), $MachinePrecision] / N[Sin[k], $MachinePrecision]), $MachinePrecision], 1/3], $MachinePrecision]), $MachinePrecision] * N[Power[N[(N[Tan[k], $MachinePrecision] * t$95$1), $MachinePrecision], 1/3], $MachinePrecision]), $MachinePrecision], 3.0], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$3 = N[Power[N[Power[l, 1/3], $MachinePrecision], 2.0], $MachinePrecision]}, Block[{t$95$4 = N[(2.0 / N[(N[(N[Power[N[(t / N[(t$95$3 / N[Power[N[Sin[k], $MachinePrecision], 1/3], $MachinePrecision]), $MachinePrecision]), $MachinePrecision], 3.0], $MachinePrecision] * N[Tan[k], $MachinePrecision]), $MachinePrecision] * t$95$1), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[l, -2.3666527635593354e+118], t$95$4, If[LessEqual[l, -4.91448157463651e-196], t$95$2, If[LessEqual[l, 5.490168916135092e-162], N[(2.0 / N[(t$95$1 * N[(N[Tan[k], $MachinePrecision] * N[Power[N[(t / N[(t$95$3 / N[(N[Power[N[Power[k, 7.0], $MachinePrecision], 1/3], $MachinePrecision] * -0.05555555555555555 + N[Power[k, 1/3], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], 3.0], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[l, 2.2186256439908187e+77], t$95$2, t$95$4]]]]]]]]
\frac{2}{\left(\left(\frac{{t}^{3}}{\ell \cdot \ell} \cdot \sin k\right) \cdot \tan k\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) + 1\right)}
\begin{array}{l}
t_1 := 2 + {\left(\frac{k}{t}\right)}^{2}\\
t_2 := \frac{2}{{\left(\frac{t}{\sqrt[3]{\frac{\ell \cdot \ell}{\sin k}}} \cdot \sqrt[3]{\tan k \cdot t_1}\right)}^{3}}\\
t_3 := {\left(\sqrt[3]{\ell}\right)}^{2}\\
t_4 := \frac{2}{\left({\left(\frac{t}{\frac{t_3}{\sqrt[3]{\sin k}}}\right)}^{3} \cdot \tan k\right) \cdot t_1}\\
\mathbf{if}\;\ell \leq -2.3666527635593354 \cdot 10^{+118}:\\
\;\;\;\;t_4\\

\mathbf{elif}\;\ell \leq -4.91448157463651 \cdot 10^{-196}:\\
\;\;\;\;t_2\\

\mathbf{elif}\;\ell \leq 5.490168916135092 \cdot 10^{-162}:\\
\;\;\;\;\frac{2}{t_1 \cdot \left(\tan k \cdot {\left(\frac{t}{\frac{t_3}{\mathsf{fma}\left(\sqrt[3]{{k}^{7}}, -0.05555555555555555, \sqrt[3]{k}\right)}}\right)}^{3}\right)}\\

\mathbf{elif}\;\ell \leq 2.2186256439908187 \cdot 10^{+77}:\\
\;\;\;\;t_2\\

\mathbf{else}:\\
\;\;\;\;t_4\\


\end{array}

Error

Bits error versus t

Bits error versus l

Bits error versus k

Derivation

  1. Split input into 3 regimes
  2. if l < -2.36665276355933544e118 or 2.2186256439908187e77 < l

    1. Initial program 55.7

      \[\frac{2}{\left(\left(\frac{{t}^{3}}{\ell \cdot \ell} \cdot \sin k\right) \cdot \tan k\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) + 1\right)} \]
    2. Simplified55.7

      \[\leadsto \color{blue}{\frac{2}{\left(\left(\frac{{t}^{3}}{\ell \cdot \ell} \cdot \sin k\right) \cdot \tan k\right) \cdot \left(2 + {\left(\frac{k}{t}\right)}^{2}\right)}} \]
    3. Applied egg-rr23.6

      \[\leadsto \frac{2}{\left(\color{blue}{{\left(\frac{t}{{\left(\sqrt[3]{\ell}\right)}^{2}} \cdot \sqrt[3]{\sin k}\right)}^{3}} \cdot \tan k\right) \cdot \left(2 + {\left(\frac{k}{t}\right)}^{2}\right)} \]
    4. Applied egg-rr23.6

      \[\leadsto \frac{2}{\left({\color{blue}{\left(\frac{t}{\frac{{\left(\sqrt[3]{\ell}\right)}^{2}}{\sqrt[3]{\sin k}}}\right)}}^{3} \cdot \tan k\right) \cdot \left(2 + {\left(\frac{k}{t}\right)}^{2}\right)} \]

    if -2.36665276355933544e118 < l < -4.9144815746365102e-196 or 5.490168916135092e-162 < l < 2.2186256439908187e77

    1. Initial program 24.6

      \[\frac{2}{\left(\left(\frac{{t}^{3}}{\ell \cdot \ell} \cdot \sin k\right) \cdot \tan k\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) + 1\right)} \]
    2. Simplified24.6

      \[\leadsto \color{blue}{\frac{2}{\left(\left(\frac{{t}^{3}}{\ell \cdot \ell} \cdot \sin k\right) \cdot \tan k\right) \cdot \left(2 + {\left(\frac{k}{t}\right)}^{2}\right)}} \]
    3. Applied egg-rr18.0

      \[\leadsto \frac{2}{\left(\color{blue}{{\left(\frac{t}{{\left(\sqrt[3]{\ell}\right)}^{2}} \cdot \sqrt[3]{\sin k}\right)}^{3}} \cdot \tan k\right) \cdot \left(2 + {\left(\frac{k}{t}\right)}^{2}\right)} \]
    4. Applied egg-rr18.0

      \[\leadsto \frac{2}{\left({\color{blue}{\left(\frac{t}{\frac{{\left(\sqrt[3]{\ell}\right)}^{2}}{\sqrt[3]{\sin k}}}\right)}}^{3} \cdot \tan k\right) \cdot \left(2 + {\left(\frac{k}{t}\right)}^{2}\right)} \]
    5. Applied egg-rr13.7

      \[\leadsto \frac{2}{\color{blue}{{\left(\frac{t}{\sqrt[3]{\frac{\ell \cdot \ell}{\sin k}}} \cdot \sqrt[3]{\tan k \cdot \left(2 + {\left(\frac{k}{t}\right)}^{2}\right)}\right)}^{3}}} \]

    if -4.9144815746365102e-196 < l < 5.490168916135092e-162

    1. Initial program 23.8

      \[\frac{2}{\left(\left(\frac{{t}^{3}}{\ell \cdot \ell} \cdot \sin k\right) \cdot \tan k\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) + 1\right)} \]
    2. Simplified23.8

      \[\leadsto \color{blue}{\frac{2}{\left(\left(\frac{{t}^{3}}{\ell \cdot \ell} \cdot \sin k\right) \cdot \tan k\right) \cdot \left(2 + {\left(\frac{k}{t}\right)}^{2}\right)}} \]
    3. Applied egg-rr8.1

      \[\leadsto \frac{2}{\left(\color{blue}{{\left(\frac{t}{{\left(\sqrt[3]{\ell}\right)}^{2}} \cdot \sqrt[3]{\sin k}\right)}^{3}} \cdot \tan k\right) \cdot \left(2 + {\left(\frac{k}{t}\right)}^{2}\right)} \]
    4. Applied egg-rr8.1

      \[\leadsto \frac{2}{\left({\color{blue}{\left(\frac{t}{\frac{{\left(\sqrt[3]{\ell}\right)}^{2}}{\sqrt[3]{\sin k}}}\right)}}^{3} \cdot \tan k\right) \cdot \left(2 + {\left(\frac{k}{t}\right)}^{2}\right)} \]
    5. Taylor expanded in k around 0 34.7

      \[\leadsto \frac{2}{\left({\left(\frac{t}{\frac{{\left(\sqrt[3]{\ell}\right)}^{2}}{\color{blue}{{k}^{0.3333333333333333} - 0.05555555555555555 \cdot {\left({k}^{7}\right)}^{0.3333333333333333}}}}\right)}^{3} \cdot \tan k\right) \cdot \left(2 + {\left(\frac{k}{t}\right)}^{2}\right)} \]
    6. Simplified6.7

      \[\leadsto \frac{2}{\left({\left(\frac{t}{\frac{{\left(\sqrt[3]{\ell}\right)}^{2}}{\color{blue}{\mathsf{fma}\left(\sqrt[3]{{k}^{7}}, -0.05555555555555555, \sqrt[3]{k}\right)}}}\right)}^{3} \cdot \tan k\right) \cdot \left(2 + {\left(\frac{k}{t}\right)}^{2}\right)} \]
  3. Recombined 3 regimes into one program.
  4. Final simplification14.3

    \[\leadsto \begin{array}{l} \mathbf{if}\;\ell \leq -2.3666527635593354 \cdot 10^{+118}:\\ \;\;\;\;\frac{2}{\left({\left(\frac{t}{\frac{{\left(\sqrt[3]{\ell}\right)}^{2}}{\sqrt[3]{\sin k}}}\right)}^{3} \cdot \tan k\right) \cdot \left(2 + {\left(\frac{k}{t}\right)}^{2}\right)}\\ \mathbf{elif}\;\ell \leq -4.91448157463651 \cdot 10^{-196}:\\ \;\;\;\;\frac{2}{{\left(\frac{t}{\sqrt[3]{\frac{\ell \cdot \ell}{\sin k}}} \cdot \sqrt[3]{\tan k \cdot \left(2 + {\left(\frac{k}{t}\right)}^{2}\right)}\right)}^{3}}\\ \mathbf{elif}\;\ell \leq 5.490168916135092 \cdot 10^{-162}:\\ \;\;\;\;\frac{2}{\left(2 + {\left(\frac{k}{t}\right)}^{2}\right) \cdot \left(\tan k \cdot {\left(\frac{t}{\frac{{\left(\sqrt[3]{\ell}\right)}^{2}}{\mathsf{fma}\left(\sqrt[3]{{k}^{7}}, -0.05555555555555555, \sqrt[3]{k}\right)}}\right)}^{3}\right)}\\ \mathbf{elif}\;\ell \leq 2.2186256439908187 \cdot 10^{+77}:\\ \;\;\;\;\frac{2}{{\left(\frac{t}{\sqrt[3]{\frac{\ell \cdot \ell}{\sin k}}} \cdot \sqrt[3]{\tan k \cdot \left(2 + {\left(\frac{k}{t}\right)}^{2}\right)}\right)}^{3}}\\ \mathbf{else}:\\ \;\;\;\;\frac{2}{\left({\left(\frac{t}{\frac{{\left(\sqrt[3]{\ell}\right)}^{2}}{\sqrt[3]{\sin k}}}\right)}^{3} \cdot \tan k\right) \cdot \left(2 + {\left(\frac{k}{t}\right)}^{2}\right)}\\ \end{array} \]

Reproduce

herbie shell --seed 2022133 
(FPCore (t l k)
  :name "Toniolo and Linder, Equation (10+)"
  :precision binary64
  (/ 2.0 (* (* (* (/ (pow t 3.0) (* l l)) (sin k)) (tan k)) (+ (+ 1.0 (pow (/ k t) 2.0)) 1.0))))