Toniolo and Linder, Equation (10-)

Percentage Accurate: 35.4% → 95.7%
Time: 8.1s
Alternatives: 15
Speedup: 4.4×

Specification

?
\[\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)} \]
(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))))
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));
}
module fmin_fmax_functions
    implicit none
    private
    public fmax
    public fmin

    interface fmax
        module procedure fmax88
        module procedure fmax44
        module procedure fmax84
        module procedure fmax48
    end interface
    interface fmin
        module procedure fmin88
        module procedure fmin44
        module procedure fmin84
        module procedure fmin48
    end interface
contains
    real(8) function fmax88(x, y) result (res)
        real(8), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(x, max(x, y), y /= y), x /= x)
    end function
    real(4) function fmax44(x, y) result (res)
        real(4), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(y, merge(x, max(x, y), y /= y), x /= x)
    end function
    real(8) function fmax84(x, y) result(res)
        real(8), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(dble(y), merge(x, max(x, dble(y)), y /= y), x /= x)
    end function
    real(8) function fmax48(x, y) result(res)
        real(4), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(dble(x), max(dble(x), y), y /= y), x /= x)
    end function
    real(8) function fmin88(x, y) result (res)
        real(8), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(x, min(x, y), y /= y), x /= x)
    end function
    real(4) function fmin44(x, y) result (res)
        real(4), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(y, merge(x, min(x, y), y /= y), x /= x)
    end function
    real(8) function fmin84(x, y) result(res)
        real(8), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(dble(y), merge(x, min(x, dble(y)), y /= y), x /= x)
    end function
    real(8) function fmin48(x, y) result(res)
        real(4), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(dble(x), min(dble(x), y), y /= y), x /= x)
    end function
end module

real(8) function code(t, l, k)
use fmin_fmax_functions
    real(8), intent (in) :: t
    real(8), intent (in) :: l
    real(8), intent (in) :: k
    code = 2.0d0 / (((((t ** 3.0d0) / (l * l)) * sin(k)) * tan(k)) * ((1.0d0 + ((k / t) ** 2.0d0)) - 1.0d0))
end function
public static double code(double t, double l, double k) {
	return 2.0 / ((((Math.pow(t, 3.0) / (l * l)) * Math.sin(k)) * Math.tan(k)) * ((1.0 + Math.pow((k / t), 2.0)) - 1.0));
}
def code(t, l, k):
	return 2.0 / ((((math.pow(t, 3.0) / (l * l)) * math.sin(k)) * math.tan(k)) * ((1.0 + math.pow((k / t), 2.0)) - 1.0))
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 tmp = code(t, l, k)
	tmp = 2.0 / (((((t ^ 3.0) / (l * l)) * sin(k)) * tan(k)) * ((1.0 + ((k / t) ^ 2.0)) - 1.0));
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]
\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)}

Local Percentage Accuracy vs ?

The average percentage accuracy by input value. Horizontal axis shows value of an input variable; the variable is choosen in the title. Vertical axis is accuracy; higher is better. Red represent the original program, while blue represents Herbie's suggestion. These can be toggled with buttons below the plot. The line is an average while dots represent individual samples.

Accuracy vs Speed?

Herbie found 15 alternatives:

AlternativeAccuracySpeedup
The accuracy (vertical axis) and speed (horizontal axis) of each alternatives. Up and to the right is better. The red square shows the initial program, and each blue circle shows an alternative.The line shows the best available speed-accuracy tradeoffs.

Initial Program: 35.4% accurate, 1.0× speedup?

\[\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)} \]
(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))))
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));
}
module fmin_fmax_functions
    implicit none
    private
    public fmax
    public fmin

    interface fmax
        module procedure fmax88
        module procedure fmax44
        module procedure fmax84
        module procedure fmax48
    end interface
    interface fmin
        module procedure fmin88
        module procedure fmin44
        module procedure fmin84
        module procedure fmin48
    end interface
contains
    real(8) function fmax88(x, y) result (res)
        real(8), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(x, max(x, y), y /= y), x /= x)
    end function
    real(4) function fmax44(x, y) result (res)
        real(4), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(y, merge(x, max(x, y), y /= y), x /= x)
    end function
    real(8) function fmax84(x, y) result(res)
        real(8), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(dble(y), merge(x, max(x, dble(y)), y /= y), x /= x)
    end function
    real(8) function fmax48(x, y) result(res)
        real(4), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(dble(x), max(dble(x), y), y /= y), x /= x)
    end function
    real(8) function fmin88(x, y) result (res)
        real(8), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(x, min(x, y), y /= y), x /= x)
    end function
    real(4) function fmin44(x, y) result (res)
        real(4), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(y, merge(x, min(x, y), y /= y), x /= x)
    end function
    real(8) function fmin84(x, y) result(res)
        real(8), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(dble(y), merge(x, min(x, dble(y)), y /= y), x /= x)
    end function
    real(8) function fmin48(x, y) result(res)
        real(4), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(dble(x), min(dble(x), y), y /= y), x /= x)
    end function
end module

real(8) function code(t, l, k)
use fmin_fmax_functions
    real(8), intent (in) :: t
    real(8), intent (in) :: l
    real(8), intent (in) :: k
    code = 2.0d0 / (((((t ** 3.0d0) / (l * l)) * sin(k)) * tan(k)) * ((1.0d0 + ((k / t) ** 2.0d0)) - 1.0d0))
end function
public static double code(double t, double l, double k) {
	return 2.0 / ((((Math.pow(t, 3.0) / (l * l)) * Math.sin(k)) * Math.tan(k)) * ((1.0 + Math.pow((k / t), 2.0)) - 1.0));
}
def code(t, l, k):
	return 2.0 / ((((math.pow(t, 3.0) / (l * l)) * math.sin(k)) * math.tan(k)) * ((1.0 + math.pow((k / t), 2.0)) - 1.0))
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 tmp = code(t, l, k)
	tmp = 2.0 / (((((t ^ 3.0) / (l * l)) * sin(k)) * tan(k)) * ((1.0 + ((k / t) ^ 2.0)) - 1.0));
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]
\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)}

Alternative 1: 95.7% accurate, 1.2× speedup?

\[\begin{array}{l} \mathbf{if}\;\left|k\right| \leq 7.1 \cdot 10^{-6}:\\ \;\;\;\;\left(\ell + \ell\right) \cdot \left(\frac{1}{\sin \left(\left|k\right|\right) \cdot \tan \left(\left|k\right|\right)} \cdot \frac{\ell}{\left(\left|k\right| \cdot \left|k\right|\right) \cdot t}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\ell}{\left|k\right|} \cdot \frac{\frac{\ell + \ell}{\left|k\right|} \cdot \cos \left(\left|k\right|\right)}{\mathsf{fma}\left(-0.5, \cos \left(\left|k\right| + \left|k\right|\right), 0.5\right) \cdot t}\\ \end{array} \]
(FPCore (t l k)
  :precision binary64
  (if (<= (fabs k) 7.1e-6)
  (*
   (+ l l)
   (*
    (/ 1.0 (* (sin (fabs k)) (tan (fabs k))))
    (/ l (* (* (fabs k) (fabs k)) t))))
  (*
   (/ l (fabs k))
   (/
    (* (/ (+ l l) (fabs k)) (cos (fabs k)))
    (* (fma -0.5 (cos (+ (fabs k) (fabs k))) 0.5) t)))))
double code(double t, double l, double k) {
	double tmp;
	if (fabs(k) <= 7.1e-6) {
		tmp = (l + l) * ((1.0 / (sin(fabs(k)) * tan(fabs(k)))) * (l / ((fabs(k) * fabs(k)) * t)));
	} else {
		tmp = (l / fabs(k)) * ((((l + l) / fabs(k)) * cos(fabs(k))) / (fma(-0.5, cos((fabs(k) + fabs(k))), 0.5) * t));
	}
	return tmp;
}
function code(t, l, k)
	tmp = 0.0
	if (abs(k) <= 7.1e-6)
		tmp = Float64(Float64(l + l) * Float64(Float64(1.0 / Float64(sin(abs(k)) * tan(abs(k)))) * Float64(l / Float64(Float64(abs(k) * abs(k)) * t))));
	else
		tmp = Float64(Float64(l / abs(k)) * Float64(Float64(Float64(Float64(l + l) / abs(k)) * cos(abs(k))) / Float64(fma(-0.5, cos(Float64(abs(k) + abs(k))), 0.5) * t)));
	end
	return tmp
end
code[t_, l_, k_] := If[LessEqual[N[Abs[k], $MachinePrecision], 7.1e-6], N[(N[(l + l), $MachinePrecision] * N[(N[(1.0 / N[(N[Sin[N[Abs[k], $MachinePrecision]], $MachinePrecision] * N[Tan[N[Abs[k], $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * N[(l / N[(N[(N[Abs[k], $MachinePrecision] * N[Abs[k], $MachinePrecision]), $MachinePrecision] * t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(N[(l / N[Abs[k], $MachinePrecision]), $MachinePrecision] * N[(N[(N[(N[(l + l), $MachinePrecision] / N[Abs[k], $MachinePrecision]), $MachinePrecision] * N[Cos[N[Abs[k], $MachinePrecision]], $MachinePrecision]), $MachinePrecision] / N[(N[(-0.5 * N[Cos[N[(N[Abs[k], $MachinePrecision] + N[Abs[k], $MachinePrecision]), $MachinePrecision]], $MachinePrecision] + 0.5), $MachinePrecision] * t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]
\begin{array}{l}
\mathbf{if}\;\left|k\right| \leq 7.1 \cdot 10^{-6}:\\
\;\;\;\;\left(\ell + \ell\right) \cdot \left(\frac{1}{\sin \left(\left|k\right|\right) \cdot \tan \left(\left|k\right|\right)} \cdot \frac{\ell}{\left(\left|k\right| \cdot \left|k\right|\right) \cdot t}\right)\\

\mathbf{else}:\\
\;\;\;\;\frac{\ell}{\left|k\right|} \cdot \frac{\frac{\ell + \ell}{\left|k\right|} \cdot \cos \left(\left|k\right|\right)}{\mathsf{fma}\left(-0.5, \cos \left(\left|k\right| + \left|k\right|\right), 0.5\right) \cdot t}\\


\end{array}
Derivation
  1. Split input into 2 regimes
  2. if k < 7.0999999999999998e-6

    1. Initial program 35.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)} \]
    2. Taylor expanded in t around 0

      \[\leadsto \color{blue}{2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
    3. Step-by-step derivation
      1. lower-*.f64N/A

        \[\leadsto 2 \cdot \color{blue}{\frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      2. lower-/.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      3. lower-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2}} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
      4. lower-pow.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{\color{blue}{k}}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
      5. lower-cos.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{\color{blue}{2}} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
      6. lower-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \color{blue}{\left(t \cdot {\sin k}^{2}\right)}} \]
      7. lower-pow.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(\color{blue}{t} \cdot {\sin k}^{2}\right)} \]
      8. lower-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot \color{blue}{{\sin k}^{2}}\right)} \]
      9. lower-pow.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{\color{blue}{2}}\right)} \]
      10. lower-sin.f6473.0%

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
    4. Applied rewrites73.0%

      \[\leadsto \color{blue}{2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
    5. Step-by-step derivation
      1. lift-*.f64N/A

        \[\leadsto 2 \cdot \color{blue}{\frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      2. lift-/.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      3. associate-*r/N/A

        \[\leadsto \frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{\color{blue}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      4. lift-*.f64N/A

        \[\leadsto \frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2} \cdot \color{blue}{\left(t \cdot {\sin k}^{2}\right)}} \]
      5. associate-/r*N/A

        \[\leadsto \frac{\frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2}}}{\color{blue}{t \cdot {\sin k}^{2}}} \]
      6. lower-/.f64N/A

        \[\leadsto \frac{\frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2}}}{\color{blue}{t \cdot {\sin k}^{2}}} \]
      7. lower-/.f64N/A

        \[\leadsto \frac{\frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2}}}{\color{blue}{t} \cdot {\sin k}^{2}} \]
      8. lift-*.f64N/A

        \[\leadsto \frac{\frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      9. *-commutativeN/A

        \[\leadsto \frac{\frac{2 \cdot \left(\cos k \cdot {\ell}^{2}\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      10. associate-*r*N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot {\ell}^{2}}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      11. lower-*.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot {\ell}^{2}}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      12. lower-*.f6473.9%

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot {\ell}^{2}}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      13. lift-pow.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot {\ell}^{2}}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      14. pow2N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      15. lift-*.f6473.9%

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      16. lift-pow.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      17. unpow2N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{t \cdot {\sin k}^{2}} \]
      18. lower-*.f6473.9%

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{t \cdot {\sin k}^{2}} \]
      19. lift-*.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{t \cdot \color{blue}{{\sin k}^{2}}} \]
    6. Applied rewrites67.7%

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{\color{blue}{\left(0.5 - 0.5 \cdot \cos \left(k + k\right)\right) \cdot t}} \]
    7. Step-by-step derivation
      1. lift-/.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{\color{blue}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)} \cdot t} \]
      2. lift-*.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{\left(\color{blue}{\frac{1}{2}} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      3. lift-*.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      4. associate-*r*N/A

        \[\leadsto \frac{\frac{\left(\left(2 \cdot \cos k\right) \cdot \ell\right) \cdot \ell}{k \cdot k}}{\left(\color{blue}{\frac{1}{2}} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      5. lift-*.f64N/A

        \[\leadsto \frac{\frac{\left(\left(2 \cdot \cos k\right) \cdot \ell\right) \cdot \ell}{k \cdot k}}{\left(\frac{1}{2} - \color{blue}{\frac{1}{2} \cdot \cos \left(k + k\right)}\right) \cdot t} \]
      6. times-fracN/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\color{blue}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)} \cdot t} \]
      7. lower-*.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\color{blue}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)} \cdot t} \]
      8. lower-/.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\left(\color{blue}{\frac{1}{2}} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      9. lift-*.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      10. *-commutativeN/A

        \[\leadsto \frac{\frac{\left(\cos k \cdot 2\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      11. associate-*l*N/A

        \[\leadsto \frac{\frac{\cos k \cdot \left(2 \cdot \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      12. lower-*.f64N/A

        \[\leadsto \frac{\frac{\cos k \cdot \left(2 \cdot \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      13. count-2-revN/A

        \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      14. lower-+.f64N/A

        \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      15. lower-/.f6483.0%

        \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(0.5 - \color{blue}{0.5 \cdot \cos \left(k + k\right)}\right) \cdot t} \]
    8. Applied rewrites83.0%

      \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{\color{blue}{\left(0.5 - 0.5 \cdot \cos \left(k + k\right)\right)} \cdot t} \]
    9. Applied rewrites83.6%

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

    if 7.0999999999999998e-6 < k

    1. Initial program 35.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)} \]
    2. Taylor expanded in t around 0

      \[\leadsto \color{blue}{2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
    3. Step-by-step derivation
      1. lower-*.f64N/A

        \[\leadsto 2 \cdot \color{blue}{\frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      2. lower-/.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      3. lower-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2}} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
      4. lower-pow.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{\color{blue}{k}}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
      5. lower-cos.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{\color{blue}{2}} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
      6. lower-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \color{blue}{\left(t \cdot {\sin k}^{2}\right)}} \]
      7. lower-pow.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(\color{blue}{t} \cdot {\sin k}^{2}\right)} \]
      8. lower-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot \color{blue}{{\sin k}^{2}}\right)} \]
      9. lower-pow.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{\color{blue}{2}}\right)} \]
      10. lower-sin.f6473.0%

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
    4. Applied rewrites73.0%

      \[\leadsto \color{blue}{2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
    5. Step-by-step derivation
      1. lift-*.f64N/A

        \[\leadsto 2 \cdot \color{blue}{\frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      2. lift-/.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      3. associate-*r/N/A

        \[\leadsto \frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{\color{blue}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      4. lift-*.f64N/A

        \[\leadsto \frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2} \cdot \color{blue}{\left(t \cdot {\sin k}^{2}\right)}} \]
      5. associate-/r*N/A

        \[\leadsto \frac{\frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2}}}{\color{blue}{t \cdot {\sin k}^{2}}} \]
      6. lower-/.f64N/A

        \[\leadsto \frac{\frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2}}}{\color{blue}{t \cdot {\sin k}^{2}}} \]
      7. lower-/.f64N/A

        \[\leadsto \frac{\frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2}}}{\color{blue}{t} \cdot {\sin k}^{2}} \]
      8. lift-*.f64N/A

        \[\leadsto \frac{\frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      9. *-commutativeN/A

        \[\leadsto \frac{\frac{2 \cdot \left(\cos k \cdot {\ell}^{2}\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      10. associate-*r*N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot {\ell}^{2}}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      11. lower-*.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot {\ell}^{2}}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      12. lower-*.f6473.9%

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot {\ell}^{2}}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      13. lift-pow.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot {\ell}^{2}}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      14. pow2N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      15. lift-*.f6473.9%

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      16. lift-pow.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      17. unpow2N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{t \cdot {\sin k}^{2}} \]
      18. lower-*.f6473.9%

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{t \cdot {\sin k}^{2}} \]
      19. lift-*.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{t \cdot \color{blue}{{\sin k}^{2}}} \]
    6. Applied rewrites67.7%

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{\color{blue}{\left(0.5 - 0.5 \cdot \cos \left(k + k\right)\right) \cdot t}} \]
    7. Step-by-step derivation
      1. lift-/.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{\color{blue}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)} \cdot t} \]
      2. lift-*.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{\left(\color{blue}{\frac{1}{2}} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      3. lift-*.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      4. associate-*r*N/A

        \[\leadsto \frac{\frac{\left(\left(2 \cdot \cos k\right) \cdot \ell\right) \cdot \ell}{k \cdot k}}{\left(\color{blue}{\frac{1}{2}} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      5. lift-*.f64N/A

        \[\leadsto \frac{\frac{\left(\left(2 \cdot \cos k\right) \cdot \ell\right) \cdot \ell}{k \cdot k}}{\left(\frac{1}{2} - \color{blue}{\frac{1}{2} \cdot \cos \left(k + k\right)}\right) \cdot t} \]
      6. times-fracN/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\color{blue}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)} \cdot t} \]
      7. lower-*.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\color{blue}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)} \cdot t} \]
      8. lower-/.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\left(\color{blue}{\frac{1}{2}} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      9. lift-*.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      10. *-commutativeN/A

        \[\leadsto \frac{\frac{\left(\cos k \cdot 2\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      11. associate-*l*N/A

        \[\leadsto \frac{\frac{\cos k \cdot \left(2 \cdot \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      12. lower-*.f64N/A

        \[\leadsto \frac{\frac{\cos k \cdot \left(2 \cdot \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      13. count-2-revN/A

        \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      14. lower-+.f64N/A

        \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      15. lower-/.f6483.0%

        \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(0.5 - \color{blue}{0.5 \cdot \cos \left(k + k\right)}\right) \cdot t} \]
    8. Applied rewrites83.0%

      \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{\color{blue}{\left(0.5 - 0.5 \cdot \cos \left(k + k\right)\right)} \cdot t} \]
    9. Step-by-step derivation
      1. lift-/.f64N/A

        \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{\color{blue}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t}} \]
      2. lift-*.f64N/A

        \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{\color{blue}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)} \cdot t} \]
      3. *-commutativeN/A

        \[\leadsto \frac{\frac{\ell}{k} \cdot \frac{\cos k \cdot \left(\ell + \ell\right)}{k}}{\color{blue}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)} \cdot t} \]
      4. associate-/l*N/A

        \[\leadsto \frac{\ell}{k} \cdot \color{blue}{\frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t}} \]
      5. lower-*.f64N/A

        \[\leadsto \frac{\ell}{k} \cdot \color{blue}{\frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t}} \]
      6. lower-/.f6487.3%

        \[\leadsto \frac{\ell}{k} \cdot \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k}}{\color{blue}{\left(0.5 - 0.5 \cdot \cos \left(k + k\right)\right) \cdot t}} \]
      7. lift-/.f64N/A

        \[\leadsto \frac{\ell}{k} \cdot \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k}}{\color{blue}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)} \cdot t} \]
      8. lift-*.f64N/A

        \[\leadsto \frac{\ell}{k} \cdot \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k}}{\left(\color{blue}{\frac{1}{2}} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      9. associate-/l*N/A

        \[\leadsto \frac{\ell}{k} \cdot \frac{\cos k \cdot \frac{\ell + \ell}{k}}{\color{blue}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)} \cdot t} \]
      10. *-commutativeN/A

        \[\leadsto \frac{\ell}{k} \cdot \frac{\frac{\ell + \ell}{k} \cdot \cos k}{\color{blue}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)} \cdot t} \]
      11. lower-*.f64N/A

        \[\leadsto \frac{\ell}{k} \cdot \frac{\frac{\ell + \ell}{k} \cdot \cos k}{\color{blue}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)} \cdot t} \]
      12. lower-/.f6487.3%

        \[\leadsto \frac{\ell}{k} \cdot \frac{\frac{\ell + \ell}{k} \cdot \cos k}{\left(\color{blue}{0.5} - 0.5 \cdot \cos \left(k + k\right)\right) \cdot t} \]
    10. Applied rewrites87.3%

      \[\leadsto \frac{\ell}{k} \cdot \color{blue}{\frac{\frac{\ell + \ell}{k} \cdot \cos k}{\mathsf{fma}\left(-0.5, \cos \left(k + k\right), 0.5\right) \cdot t}} \]
  3. Recombined 2 regimes into one program.
  4. Add Preprocessing

Alternative 2: 92.4% accurate, 1.2× speedup?

\[\begin{array}{l} \mathbf{if}\;\left|k\right| \leq 7.1 \cdot 10^{-6}:\\ \;\;\;\;\left(\ell + \ell\right) \cdot \left(\frac{1}{\sin \left(\left|k\right|\right) \cdot \tan \left(\left|k\right|\right)} \cdot \frac{\ell}{\left(\left|k\right| \cdot \left|k\right|\right) \cdot t}\right)\\ \mathbf{else}:\\ \;\;\;\;\cos \left(\left|k\right|\right) \cdot \left(\frac{\ell + \ell}{\left|k\right|} \cdot \frac{\ell}{\left|k\right| \cdot \left(\mathsf{fma}\left(-0.5, \cos \left(\left|k\right| + \left|k\right|\right), 0.5\right) \cdot t\right)}\right)\\ \end{array} \]
(FPCore (t l k)
  :precision binary64
  (if (<= (fabs k) 7.1e-6)
  (*
   (+ l l)
   (*
    (/ 1.0 (* (sin (fabs k)) (tan (fabs k))))
    (/ l (* (* (fabs k) (fabs k)) t))))
  (*
   (cos (fabs k))
   (*
    (/ (+ l l) (fabs k))
    (/
     l
     (* (fabs k) (* (fma -0.5 (cos (+ (fabs k) (fabs k))) 0.5) t)))))))
double code(double t, double l, double k) {
	double tmp;
	if (fabs(k) <= 7.1e-6) {
		tmp = (l + l) * ((1.0 / (sin(fabs(k)) * tan(fabs(k)))) * (l / ((fabs(k) * fabs(k)) * t)));
	} else {
		tmp = cos(fabs(k)) * (((l + l) / fabs(k)) * (l / (fabs(k) * (fma(-0.5, cos((fabs(k) + fabs(k))), 0.5) * t))));
	}
	return tmp;
}
function code(t, l, k)
	tmp = 0.0
	if (abs(k) <= 7.1e-6)
		tmp = Float64(Float64(l + l) * Float64(Float64(1.0 / Float64(sin(abs(k)) * tan(abs(k)))) * Float64(l / Float64(Float64(abs(k) * abs(k)) * t))));
	else
		tmp = Float64(cos(abs(k)) * Float64(Float64(Float64(l + l) / abs(k)) * Float64(l / Float64(abs(k) * Float64(fma(-0.5, cos(Float64(abs(k) + abs(k))), 0.5) * t)))));
	end
	return tmp
end
code[t_, l_, k_] := If[LessEqual[N[Abs[k], $MachinePrecision], 7.1e-6], N[(N[(l + l), $MachinePrecision] * N[(N[(1.0 / N[(N[Sin[N[Abs[k], $MachinePrecision]], $MachinePrecision] * N[Tan[N[Abs[k], $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * N[(l / N[(N[(N[Abs[k], $MachinePrecision] * N[Abs[k], $MachinePrecision]), $MachinePrecision] * t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(N[Cos[N[Abs[k], $MachinePrecision]], $MachinePrecision] * N[(N[(N[(l + l), $MachinePrecision] / N[Abs[k], $MachinePrecision]), $MachinePrecision] * N[(l / N[(N[Abs[k], $MachinePrecision] * N[(N[(-0.5 * N[Cos[N[(N[Abs[k], $MachinePrecision] + N[Abs[k], $MachinePrecision]), $MachinePrecision]], $MachinePrecision] + 0.5), $MachinePrecision] * t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]
\begin{array}{l}
\mathbf{if}\;\left|k\right| \leq 7.1 \cdot 10^{-6}:\\
\;\;\;\;\left(\ell + \ell\right) \cdot \left(\frac{1}{\sin \left(\left|k\right|\right) \cdot \tan \left(\left|k\right|\right)} \cdot \frac{\ell}{\left(\left|k\right| \cdot \left|k\right|\right) \cdot t}\right)\\

\mathbf{else}:\\
\;\;\;\;\cos \left(\left|k\right|\right) \cdot \left(\frac{\ell + \ell}{\left|k\right|} \cdot \frac{\ell}{\left|k\right| \cdot \left(\mathsf{fma}\left(-0.5, \cos \left(\left|k\right| + \left|k\right|\right), 0.5\right) \cdot t\right)}\right)\\


\end{array}
Derivation
  1. Split input into 2 regimes
  2. if k < 7.0999999999999998e-6

    1. Initial program 35.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)} \]
    2. Taylor expanded in t around 0

      \[\leadsto \color{blue}{2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
    3. Step-by-step derivation
      1. lower-*.f64N/A

        \[\leadsto 2 \cdot \color{blue}{\frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      2. lower-/.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      3. lower-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2}} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
      4. lower-pow.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{\color{blue}{k}}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
      5. lower-cos.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{\color{blue}{2}} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
      6. lower-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \color{blue}{\left(t \cdot {\sin k}^{2}\right)}} \]
      7. lower-pow.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(\color{blue}{t} \cdot {\sin k}^{2}\right)} \]
      8. lower-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot \color{blue}{{\sin k}^{2}}\right)} \]
      9. lower-pow.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{\color{blue}{2}}\right)} \]
      10. lower-sin.f6473.0%

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
    4. Applied rewrites73.0%

      \[\leadsto \color{blue}{2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
    5. Step-by-step derivation
      1. lift-*.f64N/A

        \[\leadsto 2 \cdot \color{blue}{\frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      2. lift-/.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      3. associate-*r/N/A

        \[\leadsto \frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{\color{blue}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      4. lift-*.f64N/A

        \[\leadsto \frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2} \cdot \color{blue}{\left(t \cdot {\sin k}^{2}\right)}} \]
      5. associate-/r*N/A

        \[\leadsto \frac{\frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2}}}{\color{blue}{t \cdot {\sin k}^{2}}} \]
      6. lower-/.f64N/A

        \[\leadsto \frac{\frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2}}}{\color{blue}{t \cdot {\sin k}^{2}}} \]
      7. lower-/.f64N/A

        \[\leadsto \frac{\frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2}}}{\color{blue}{t} \cdot {\sin k}^{2}} \]
      8. lift-*.f64N/A

        \[\leadsto \frac{\frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      9. *-commutativeN/A

        \[\leadsto \frac{\frac{2 \cdot \left(\cos k \cdot {\ell}^{2}\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      10. associate-*r*N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot {\ell}^{2}}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      11. lower-*.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot {\ell}^{2}}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      12. lower-*.f6473.9%

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot {\ell}^{2}}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      13. lift-pow.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot {\ell}^{2}}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      14. pow2N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      15. lift-*.f6473.9%

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      16. lift-pow.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      17. unpow2N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{t \cdot {\sin k}^{2}} \]
      18. lower-*.f6473.9%

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{t \cdot {\sin k}^{2}} \]
      19. lift-*.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{t \cdot \color{blue}{{\sin k}^{2}}} \]
    6. Applied rewrites67.7%

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{\color{blue}{\left(0.5 - 0.5 \cdot \cos \left(k + k\right)\right) \cdot t}} \]
    7. Step-by-step derivation
      1. lift-/.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{\color{blue}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)} \cdot t} \]
      2. lift-*.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{\left(\color{blue}{\frac{1}{2}} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      3. lift-*.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      4. associate-*r*N/A

        \[\leadsto \frac{\frac{\left(\left(2 \cdot \cos k\right) \cdot \ell\right) \cdot \ell}{k \cdot k}}{\left(\color{blue}{\frac{1}{2}} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      5. lift-*.f64N/A

        \[\leadsto \frac{\frac{\left(\left(2 \cdot \cos k\right) \cdot \ell\right) \cdot \ell}{k \cdot k}}{\left(\frac{1}{2} - \color{blue}{\frac{1}{2} \cdot \cos \left(k + k\right)}\right) \cdot t} \]
      6. times-fracN/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\color{blue}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)} \cdot t} \]
      7. lower-*.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\color{blue}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)} \cdot t} \]
      8. lower-/.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\left(\color{blue}{\frac{1}{2}} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      9. lift-*.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      10. *-commutativeN/A

        \[\leadsto \frac{\frac{\left(\cos k \cdot 2\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      11. associate-*l*N/A

        \[\leadsto \frac{\frac{\cos k \cdot \left(2 \cdot \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      12. lower-*.f64N/A

        \[\leadsto \frac{\frac{\cos k \cdot \left(2 \cdot \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      13. count-2-revN/A

        \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      14. lower-+.f64N/A

        \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      15. lower-/.f6483.0%

        \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(0.5 - \color{blue}{0.5 \cdot \cos \left(k + k\right)}\right) \cdot t} \]
    8. Applied rewrites83.0%

      \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{\color{blue}{\left(0.5 - 0.5 \cdot \cos \left(k + k\right)\right)} \cdot t} \]
    9. Applied rewrites83.6%

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

    if 7.0999999999999998e-6 < k

    1. Initial program 35.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)} \]
    2. Taylor expanded in t around 0

      \[\leadsto \color{blue}{2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
    3. Step-by-step derivation
      1. lower-*.f64N/A

        \[\leadsto 2 \cdot \color{blue}{\frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      2. lower-/.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      3. lower-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2}} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
      4. lower-pow.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{\color{blue}{k}}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
      5. lower-cos.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{\color{blue}{2}} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
      6. lower-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \color{blue}{\left(t \cdot {\sin k}^{2}\right)}} \]
      7. lower-pow.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(\color{blue}{t} \cdot {\sin k}^{2}\right)} \]
      8. lower-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot \color{blue}{{\sin k}^{2}}\right)} \]
      9. lower-pow.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{\color{blue}{2}}\right)} \]
      10. lower-sin.f6473.0%

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
    4. Applied rewrites73.0%

      \[\leadsto \color{blue}{2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
    5. Step-by-step derivation
      1. lift-*.f64N/A

        \[\leadsto 2 \cdot \color{blue}{\frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      2. lift-/.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      3. associate-*r/N/A

        \[\leadsto \frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{\color{blue}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      4. lift-*.f64N/A

        \[\leadsto \frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2} \cdot \color{blue}{\left(t \cdot {\sin k}^{2}\right)}} \]
      5. associate-/r*N/A

        \[\leadsto \frac{\frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2}}}{\color{blue}{t \cdot {\sin k}^{2}}} \]
      6. lower-/.f64N/A

        \[\leadsto \frac{\frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2}}}{\color{blue}{t \cdot {\sin k}^{2}}} \]
      7. lower-/.f64N/A

        \[\leadsto \frac{\frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2}}}{\color{blue}{t} \cdot {\sin k}^{2}} \]
      8. lift-*.f64N/A

        \[\leadsto \frac{\frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      9. *-commutativeN/A

        \[\leadsto \frac{\frac{2 \cdot \left(\cos k \cdot {\ell}^{2}\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      10. associate-*r*N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot {\ell}^{2}}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      11. lower-*.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot {\ell}^{2}}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      12. lower-*.f6473.9%

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot {\ell}^{2}}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      13. lift-pow.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot {\ell}^{2}}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      14. pow2N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      15. lift-*.f6473.9%

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      16. lift-pow.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      17. unpow2N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{t \cdot {\sin k}^{2}} \]
      18. lower-*.f6473.9%

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{t \cdot {\sin k}^{2}} \]
      19. lift-*.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{t \cdot \color{blue}{{\sin k}^{2}}} \]
    6. Applied rewrites67.7%

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{\color{blue}{\left(0.5 - 0.5 \cdot \cos \left(k + k\right)\right) \cdot t}} \]
    7. Step-by-step derivation
      1. lift-/.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{\color{blue}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)} \cdot t} \]
      2. lift-*.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{\left(\color{blue}{\frac{1}{2}} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      3. lift-*.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      4. associate-*r*N/A

        \[\leadsto \frac{\frac{\left(\left(2 \cdot \cos k\right) \cdot \ell\right) \cdot \ell}{k \cdot k}}{\left(\color{blue}{\frac{1}{2}} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      5. lift-*.f64N/A

        \[\leadsto \frac{\frac{\left(\left(2 \cdot \cos k\right) \cdot \ell\right) \cdot \ell}{k \cdot k}}{\left(\frac{1}{2} - \color{blue}{\frac{1}{2} \cdot \cos \left(k + k\right)}\right) \cdot t} \]
      6. times-fracN/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\color{blue}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)} \cdot t} \]
      7. lower-*.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\color{blue}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)} \cdot t} \]
      8. lower-/.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\left(\color{blue}{\frac{1}{2}} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      9. lift-*.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      10. *-commutativeN/A

        \[\leadsto \frac{\frac{\left(\cos k \cdot 2\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      11. associate-*l*N/A

        \[\leadsto \frac{\frac{\cos k \cdot \left(2 \cdot \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      12. lower-*.f64N/A

        \[\leadsto \frac{\frac{\cos k \cdot \left(2 \cdot \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      13. count-2-revN/A

        \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      14. lower-+.f64N/A

        \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      15. lower-/.f6483.0%

        \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(0.5 - \color{blue}{0.5 \cdot \cos \left(k + k\right)}\right) \cdot t} \]
    8. Applied rewrites83.0%

      \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{\color{blue}{\left(0.5 - 0.5 \cdot \cos \left(k + k\right)\right)} \cdot t} \]
    9. Step-by-step derivation
      1. lift-/.f64N/A

        \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{\color{blue}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t}} \]
      2. lift-*.f64N/A

        \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{\color{blue}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)} \cdot t} \]
      3. associate-/l*N/A

        \[\leadsto \frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \color{blue}{\frac{\frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t}} \]
      4. lift-/.f64N/A

        \[\leadsto \frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\color{blue}{\frac{\ell}{k}}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      5. lift-*.f64N/A

        \[\leadsto \frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\frac{\color{blue}{\ell}}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      6. associate-/l*N/A

        \[\leadsto \left(\cos k \cdot \frac{\ell + \ell}{k}\right) \cdot \frac{\color{blue}{\frac{\ell}{k}}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      7. associate-*l*N/A

        \[\leadsto \cos k \cdot \color{blue}{\left(\frac{\ell + \ell}{k} \cdot \frac{\frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t}\right)} \]
      8. lower-*.f64N/A

        \[\leadsto \cos k \cdot \color{blue}{\left(\frac{\ell + \ell}{k} \cdot \frac{\frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t}\right)} \]
      9. lower-*.f64N/A

        \[\leadsto \cos k \cdot \left(\frac{\ell + \ell}{k} \cdot \color{blue}{\frac{\frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t}}\right) \]
      10. lower-/.f64N/A

        \[\leadsto \cos k \cdot \left(\frac{\ell + \ell}{k} \cdot \frac{\color{blue}{\frac{\ell}{k}}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t}\right) \]
      11. lift-/.f64N/A

        \[\leadsto \cos k \cdot \left(\frac{\ell + \ell}{k} \cdot \frac{\frac{\ell}{k}}{\color{blue}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)} \cdot t}\right) \]
      12. associate-/l/N/A

        \[\leadsto \cos k \cdot \left(\frac{\ell + \ell}{k} \cdot \frac{\ell}{\color{blue}{k \cdot \left(\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t\right)}}\right) \]
      13. lower-/.f64N/A

        \[\leadsto \cos k \cdot \left(\frac{\ell + \ell}{k} \cdot \frac{\ell}{\color{blue}{k \cdot \left(\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t\right)}}\right) \]
    10. Applied rewrites84.0%

      \[\leadsto \cos k \cdot \color{blue}{\left(\frac{\ell + \ell}{k} \cdot \frac{\ell}{k \cdot \left(\mathsf{fma}\left(-0.5, \cos \left(k + k\right), 0.5\right) \cdot t\right)}\right)} \]
  3. Recombined 2 regimes into one program.
  4. Add Preprocessing

Alternative 3: 87.6% accurate, 1.3× speedup?

\[\begin{array}{l} t_1 := \frac{1}{\sin \left(\left|k\right|\right) \cdot \tan \left(\left|k\right|\right)}\\ \mathbf{if}\;\left|k\right| \leq 2 \cdot 10^{+33}:\\ \;\;\;\;\left(\ell + \ell\right) \cdot \left(t\_1 \cdot \frac{\ell}{\left(\left|k\right| \cdot \left|k\right|\right) \cdot t}\right)\\ \mathbf{else}:\\ \;\;\;\;\left(\ell + \ell\right) \cdot \left(\frac{\frac{t\_1}{\left|k\right|}}{\left|k\right| \cdot t} \cdot \ell\right)\\ \end{array} \]
(FPCore (t l k)
  :precision binary64
  (let* ((t_1 (/ 1.0 (* (sin (fabs k)) (tan (fabs k))))))
  (if (<= (fabs k) 2e+33)
    (* (+ l l) (* t_1 (/ l (* (* (fabs k) (fabs k)) t))))
    (* (+ l l) (* (/ (/ t_1 (fabs k)) (* (fabs k) t)) l)))))
double code(double t, double l, double k) {
	double t_1 = 1.0 / (sin(fabs(k)) * tan(fabs(k)));
	double tmp;
	if (fabs(k) <= 2e+33) {
		tmp = (l + l) * (t_1 * (l / ((fabs(k) * fabs(k)) * t)));
	} else {
		tmp = (l + l) * (((t_1 / fabs(k)) / (fabs(k) * t)) * l);
	}
	return tmp;
}
module fmin_fmax_functions
    implicit none
    private
    public fmax
    public fmin

    interface fmax
        module procedure fmax88
        module procedure fmax44
        module procedure fmax84
        module procedure fmax48
    end interface
    interface fmin
        module procedure fmin88
        module procedure fmin44
        module procedure fmin84
        module procedure fmin48
    end interface
contains
    real(8) function fmax88(x, y) result (res)
        real(8), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(x, max(x, y), y /= y), x /= x)
    end function
    real(4) function fmax44(x, y) result (res)
        real(4), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(y, merge(x, max(x, y), y /= y), x /= x)
    end function
    real(8) function fmax84(x, y) result(res)
        real(8), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(dble(y), merge(x, max(x, dble(y)), y /= y), x /= x)
    end function
    real(8) function fmax48(x, y) result(res)
        real(4), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(dble(x), max(dble(x), y), y /= y), x /= x)
    end function
    real(8) function fmin88(x, y) result (res)
        real(8), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(x, min(x, y), y /= y), x /= x)
    end function
    real(4) function fmin44(x, y) result (res)
        real(4), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(y, merge(x, min(x, y), y /= y), x /= x)
    end function
    real(8) function fmin84(x, y) result(res)
        real(8), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(dble(y), merge(x, min(x, dble(y)), y /= y), x /= x)
    end function
    real(8) function fmin48(x, y) result(res)
        real(4), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(dble(x), min(dble(x), y), y /= y), x /= x)
    end function
end module

real(8) function code(t, l, k)
use fmin_fmax_functions
    real(8), intent (in) :: t
    real(8), intent (in) :: l
    real(8), intent (in) :: k
    real(8) :: t_1
    real(8) :: tmp
    t_1 = 1.0d0 / (sin(abs(k)) * tan(abs(k)))
    if (abs(k) <= 2d+33) then
        tmp = (l + l) * (t_1 * (l / ((abs(k) * abs(k)) * t)))
    else
        tmp = (l + l) * (((t_1 / abs(k)) / (abs(k) * t)) * l)
    end if
    code = tmp
end function
public static double code(double t, double l, double k) {
	double t_1 = 1.0 / (Math.sin(Math.abs(k)) * Math.tan(Math.abs(k)));
	double tmp;
	if (Math.abs(k) <= 2e+33) {
		tmp = (l + l) * (t_1 * (l / ((Math.abs(k) * Math.abs(k)) * t)));
	} else {
		tmp = (l + l) * (((t_1 / Math.abs(k)) / (Math.abs(k) * t)) * l);
	}
	return tmp;
}
def code(t, l, k):
	t_1 = 1.0 / (math.sin(math.fabs(k)) * math.tan(math.fabs(k)))
	tmp = 0
	if math.fabs(k) <= 2e+33:
		tmp = (l + l) * (t_1 * (l / ((math.fabs(k) * math.fabs(k)) * t)))
	else:
		tmp = (l + l) * (((t_1 / math.fabs(k)) / (math.fabs(k) * t)) * l)
	return tmp
function code(t, l, k)
	t_1 = Float64(1.0 / Float64(sin(abs(k)) * tan(abs(k))))
	tmp = 0.0
	if (abs(k) <= 2e+33)
		tmp = Float64(Float64(l + l) * Float64(t_1 * Float64(l / Float64(Float64(abs(k) * abs(k)) * t))));
	else
		tmp = Float64(Float64(l + l) * Float64(Float64(Float64(t_1 / abs(k)) / Float64(abs(k) * t)) * l));
	end
	return tmp
end
function tmp_2 = code(t, l, k)
	t_1 = 1.0 / (sin(abs(k)) * tan(abs(k)));
	tmp = 0.0;
	if (abs(k) <= 2e+33)
		tmp = (l + l) * (t_1 * (l / ((abs(k) * abs(k)) * t)));
	else
		tmp = (l + l) * (((t_1 / abs(k)) / (abs(k) * t)) * l);
	end
	tmp_2 = tmp;
end
code[t_, l_, k_] := Block[{t$95$1 = N[(1.0 / N[(N[Sin[N[Abs[k], $MachinePrecision]], $MachinePrecision] * N[Tan[N[Abs[k], $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[N[Abs[k], $MachinePrecision], 2e+33], N[(N[(l + l), $MachinePrecision] * N[(t$95$1 * N[(l / N[(N[(N[Abs[k], $MachinePrecision] * N[Abs[k], $MachinePrecision]), $MachinePrecision] * t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(N[(l + l), $MachinePrecision] * N[(N[(N[(t$95$1 / N[Abs[k], $MachinePrecision]), $MachinePrecision] / N[(N[Abs[k], $MachinePrecision] * t), $MachinePrecision]), $MachinePrecision] * l), $MachinePrecision]), $MachinePrecision]]]
\begin{array}{l}
t_1 := \frac{1}{\sin \left(\left|k\right|\right) \cdot \tan \left(\left|k\right|\right)}\\
\mathbf{if}\;\left|k\right| \leq 2 \cdot 10^{+33}:\\
\;\;\;\;\left(\ell + \ell\right) \cdot \left(t\_1 \cdot \frac{\ell}{\left(\left|k\right| \cdot \left|k\right|\right) \cdot t}\right)\\

\mathbf{else}:\\
\;\;\;\;\left(\ell + \ell\right) \cdot \left(\frac{\frac{t\_1}{\left|k\right|}}{\left|k\right| \cdot t} \cdot \ell\right)\\


\end{array}
Derivation
  1. Split input into 2 regimes
  2. if k < 1.9999999999999999e33

    1. Initial program 35.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)} \]
    2. Taylor expanded in t around 0

      \[\leadsto \color{blue}{2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
    3. Step-by-step derivation
      1. lower-*.f64N/A

        \[\leadsto 2 \cdot \color{blue}{\frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      2. lower-/.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      3. lower-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2}} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
      4. lower-pow.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{\color{blue}{k}}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
      5. lower-cos.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{\color{blue}{2}} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
      6. lower-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \color{blue}{\left(t \cdot {\sin k}^{2}\right)}} \]
      7. lower-pow.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(\color{blue}{t} \cdot {\sin k}^{2}\right)} \]
      8. lower-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot \color{blue}{{\sin k}^{2}}\right)} \]
      9. lower-pow.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{\color{blue}{2}}\right)} \]
      10. lower-sin.f6473.0%

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
    4. Applied rewrites73.0%

      \[\leadsto \color{blue}{2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
    5. Step-by-step derivation
      1. lift-*.f64N/A

        \[\leadsto 2 \cdot \color{blue}{\frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      2. lift-/.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      3. associate-*r/N/A

        \[\leadsto \frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{\color{blue}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      4. lift-*.f64N/A

        \[\leadsto \frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2} \cdot \color{blue}{\left(t \cdot {\sin k}^{2}\right)}} \]
      5. associate-/r*N/A

        \[\leadsto \frac{\frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2}}}{\color{blue}{t \cdot {\sin k}^{2}}} \]
      6. lower-/.f64N/A

        \[\leadsto \frac{\frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2}}}{\color{blue}{t \cdot {\sin k}^{2}}} \]
      7. lower-/.f64N/A

        \[\leadsto \frac{\frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2}}}{\color{blue}{t} \cdot {\sin k}^{2}} \]
      8. lift-*.f64N/A

        \[\leadsto \frac{\frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      9. *-commutativeN/A

        \[\leadsto \frac{\frac{2 \cdot \left(\cos k \cdot {\ell}^{2}\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      10. associate-*r*N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot {\ell}^{2}}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      11. lower-*.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot {\ell}^{2}}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      12. lower-*.f6473.9%

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot {\ell}^{2}}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      13. lift-pow.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot {\ell}^{2}}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      14. pow2N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      15. lift-*.f6473.9%

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      16. lift-pow.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      17. unpow2N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{t \cdot {\sin k}^{2}} \]
      18. lower-*.f6473.9%

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{t \cdot {\sin k}^{2}} \]
      19. lift-*.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{t \cdot \color{blue}{{\sin k}^{2}}} \]
    6. Applied rewrites67.7%

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{\color{blue}{\left(0.5 - 0.5 \cdot \cos \left(k + k\right)\right) \cdot t}} \]
    7. Step-by-step derivation
      1. lift-/.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{\color{blue}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)} \cdot t} \]
      2. lift-*.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{\left(\color{blue}{\frac{1}{2}} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      3. lift-*.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      4. associate-*r*N/A

        \[\leadsto \frac{\frac{\left(\left(2 \cdot \cos k\right) \cdot \ell\right) \cdot \ell}{k \cdot k}}{\left(\color{blue}{\frac{1}{2}} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      5. lift-*.f64N/A

        \[\leadsto \frac{\frac{\left(\left(2 \cdot \cos k\right) \cdot \ell\right) \cdot \ell}{k \cdot k}}{\left(\frac{1}{2} - \color{blue}{\frac{1}{2} \cdot \cos \left(k + k\right)}\right) \cdot t} \]
      6. times-fracN/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\color{blue}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)} \cdot t} \]
      7. lower-*.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\color{blue}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)} \cdot t} \]
      8. lower-/.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\left(\color{blue}{\frac{1}{2}} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      9. lift-*.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      10. *-commutativeN/A

        \[\leadsto \frac{\frac{\left(\cos k \cdot 2\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      11. associate-*l*N/A

        \[\leadsto \frac{\frac{\cos k \cdot \left(2 \cdot \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      12. lower-*.f64N/A

        \[\leadsto \frac{\frac{\cos k \cdot \left(2 \cdot \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      13. count-2-revN/A

        \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      14. lower-+.f64N/A

        \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      15. lower-/.f6483.0%

        \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(0.5 - \color{blue}{0.5 \cdot \cos \left(k + k\right)}\right) \cdot t} \]
    8. Applied rewrites83.0%

      \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{\color{blue}{\left(0.5 - 0.5 \cdot \cos \left(k + k\right)\right)} \cdot t} \]
    9. Applied rewrites83.6%

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

    if 1.9999999999999999e33 < k

    1. Initial program 35.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)} \]
    2. Taylor expanded in t around 0

      \[\leadsto \color{blue}{2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
    3. Step-by-step derivation
      1. lower-*.f64N/A

        \[\leadsto 2 \cdot \color{blue}{\frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      2. lower-/.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      3. lower-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2}} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
      4. lower-pow.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{\color{blue}{k}}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
      5. lower-cos.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{\color{blue}{2}} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
      6. lower-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \color{blue}{\left(t \cdot {\sin k}^{2}\right)}} \]
      7. lower-pow.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(\color{blue}{t} \cdot {\sin k}^{2}\right)} \]
      8. lower-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot \color{blue}{{\sin k}^{2}}\right)} \]
      9. lower-pow.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{\color{blue}{2}}\right)} \]
      10. lower-sin.f6473.0%

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
    4. Applied rewrites73.0%

      \[\leadsto \color{blue}{2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
    5. Step-by-step derivation
      1. lift-/.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      2. lift-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2}} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
      3. associate-/l*N/A

        \[\leadsto 2 \cdot \left({\ell}^{2} \cdot \color{blue}{\frac{\cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}}\right) \]
      4. lift-pow.f64N/A

        \[\leadsto 2 \cdot \left({\ell}^{2} \cdot \frac{\color{blue}{\cos k}}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}\right) \]
      5. pow2N/A

        \[\leadsto 2 \cdot \left(\left(\ell \cdot \ell\right) \cdot \frac{\color{blue}{\cos k}}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}\right) \]
      6. associate-*l*N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \color{blue}{\left(\ell \cdot \frac{\cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}\right)}\right) \]
      7. lower-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \color{blue}{\left(\ell \cdot \frac{\cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}\right)}\right) \]
      8. lower-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \color{blue}{\frac{\cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}}\right)\right) \]
      9. lower-/.f6481.6%

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\color{blue}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}}\right)\right) \]
      10. lift-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{{k}^{2} \cdot \color{blue}{\left(t \cdot {\sin k}^{2}\right)}}\right)\right) \]
      11. lift-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{{k}^{2} \cdot \left(t \cdot \color{blue}{{\sin k}^{2}}\right)}\right)\right) \]
      12. associate-*r*N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left({k}^{2} \cdot t\right) \cdot \color{blue}{{\sin k}^{2}}}\right)\right) \]
      13. lower-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left({k}^{2} \cdot t\right) \cdot \color{blue}{{\sin k}^{2}}}\right)\right) \]
      14. lower-*.f6481.6%

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left({k}^{2} \cdot t\right) \cdot {\color{blue}{\sin k}}^{2}}\right)\right) \]
      15. lift-pow.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left({k}^{2} \cdot t\right) \cdot {\sin \color{blue}{k}}^{2}}\right)\right) \]
      16. unpow2N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot {\sin \color{blue}{k}}^{2}}\right)\right) \]
      17. lower-*.f6481.6%

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot {\sin \color{blue}{k}}^{2}}\right)\right) \]
      18. lift-pow.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot {\sin k}^{\color{blue}{2}}}\right)\right) \]
      19. unpow2N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(\sin k \cdot \color{blue}{\sin k}\right)}\right)\right) \]
      20. lift-sin.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(\sin k \cdot \sin \color{blue}{k}\right)}\right)\right) \]
      21. lift-sin.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(\sin k \cdot \sin k\right)}\right)\right) \]
      22. sqr-sin-aN/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(\frac{1}{2} - \color{blue}{\frac{1}{2} \cdot \cos \left(2 \cdot k\right)}\right)}\right)\right) \]
    6. Applied rewrites75.0%

      \[\leadsto 2 \cdot \left(\ell \cdot \color{blue}{\left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(0.5 - 0.5 \cdot \cos \left(k + k\right)\right)}\right)}\right) \]
    7. Step-by-step derivation
      1. lift-*.f64N/A

        \[\leadsto 2 \cdot \color{blue}{\left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)}\right)\right)} \]
      2. lift-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \color{blue}{\left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)}\right)}\right) \]
      3. associate-*r*N/A

        \[\leadsto \left(2 \cdot \ell\right) \cdot \color{blue}{\left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)}\right)} \]
      4. lower-*.f64N/A

        \[\leadsto \left(2 \cdot \ell\right) \cdot \color{blue}{\left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)}\right)} \]
      5. count-2-revN/A

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\color{blue}{\ell} \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)}\right) \]
      6. lower-+.f6475.0%

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\color{blue}{\ell} \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(0.5 - 0.5 \cdot \cos \left(k + k\right)\right)}\right) \]
      7. lift-*.f64N/A

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\ell \cdot \color{blue}{\frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)}}\right) \]
      8. *-commutativeN/A

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)} \cdot \color{blue}{\ell}\right) \]
      9. lower-*.f6475.0%

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(0.5 - 0.5 \cdot \cos \left(k + k\right)\right)} \cdot \color{blue}{\ell}\right) \]
    8. Applied rewrites75.0%

      \[\leadsto \left(\ell + \ell\right) \cdot \color{blue}{\left(\frac{\cos k}{\mathsf{fma}\left(-0.5, \cos \left(k + k\right), 0.5\right) \cdot \left(\left(k \cdot k\right) \cdot t\right)} \cdot \ell\right)} \]
    9. Step-by-step derivation
      1. lift-/.f64N/A

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\frac{\cos k}{\mathsf{fma}\left(\frac{-1}{2}, \cos \left(k + k\right), \frac{1}{2}\right) \cdot \left(\left(k \cdot k\right) \cdot t\right)} \cdot \ell\right) \]
      2. lift-*.f64N/A

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\frac{\cos k}{\mathsf{fma}\left(\frac{-1}{2}, \cos \left(k + k\right), \frac{1}{2}\right) \cdot \left(\left(k \cdot k\right) \cdot t\right)} \cdot \ell\right) \]
      3. associate-/r*N/A

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\frac{\frac{\cos k}{\mathsf{fma}\left(\frac{-1}{2}, \cos \left(k + k\right), \frac{1}{2}\right)}}{\left(k \cdot k\right) \cdot t} \cdot \ell\right) \]
      4. lift-*.f64N/A

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\frac{\frac{\cos k}{\mathsf{fma}\left(\frac{-1}{2}, \cos \left(k + k\right), \frac{1}{2}\right)}}{\left(k \cdot k\right) \cdot t} \cdot \ell\right) \]
      5. lift-*.f64N/A

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\frac{\frac{\cos k}{\mathsf{fma}\left(\frac{-1}{2}, \cos \left(k + k\right), \frac{1}{2}\right)}}{\left(k \cdot k\right) \cdot t} \cdot \ell\right) \]
      6. associate-*l*N/A

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\frac{\frac{\cos k}{\mathsf{fma}\left(\frac{-1}{2}, \cos \left(k + k\right), \frac{1}{2}\right)}}{k \cdot \left(k \cdot t\right)} \cdot \ell\right) \]
      7. associate-/r*N/A

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\frac{\frac{\frac{\cos k}{\mathsf{fma}\left(\frac{-1}{2}, \cos \left(k + k\right), \frac{1}{2}\right)}}{k}}{k \cdot t} \cdot \ell\right) \]
      8. lower-/.f64N/A

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\frac{\frac{\frac{\cos k}{\mathsf{fma}\left(\frac{-1}{2}, \cos \left(k + k\right), \frac{1}{2}\right)}}{k}}{k \cdot t} \cdot \ell\right) \]
    10. Applied rewrites85.1%

      \[\leadsto \left(\ell + \ell\right) \cdot \left(\frac{\frac{\frac{1}{\sin k \cdot \tan k}}{k}}{k \cdot t} \cdot \ell\right) \]
  3. Recombined 2 regimes into one program.
  4. Add Preprocessing

Alternative 4: 87.3% accurate, 1.3× speedup?

\[\begin{array}{l} \mathbf{if}\;\left|k\right| \leq 5 \cdot 10^{+130}:\\ \;\;\;\;\left(\ell + \ell\right) \cdot \left(\frac{1}{\sin \left(\left|k\right|\right) \cdot \tan \left(\left|k\right|\right)} \cdot \frac{\ell}{\left(\left|k\right| \cdot \left|k\right|\right) \cdot t}\right)\\ \mathbf{else}:\\ \;\;\;\;\left(\ell + \ell\right) \cdot \left(\frac{\cos \left(\left|k\right|\right)}{\left|k\right| \cdot \left(\left(\left|k\right| \cdot t\right) \cdot \mathsf{fma}\left(-0.5, \cos \left(\left|k\right| + \left|k\right|\right), 0.5\right)\right)} \cdot \ell\right)\\ \end{array} \]
(FPCore (t l k)
  :precision binary64
  (if (<= (fabs k) 5e+130)
  (*
   (+ l l)
   (*
    (/ 1.0 (* (sin (fabs k)) (tan (fabs k))))
    (/ l (* (* (fabs k) (fabs k)) t))))
  (*
   (+ l l)
   (*
    (/
     (cos (fabs k))
     (*
      (fabs k)
      (* (* (fabs k) t) (fma -0.5 (cos (+ (fabs k) (fabs k))) 0.5))))
    l))))
double code(double t, double l, double k) {
	double tmp;
	if (fabs(k) <= 5e+130) {
		tmp = (l + l) * ((1.0 / (sin(fabs(k)) * tan(fabs(k)))) * (l / ((fabs(k) * fabs(k)) * t)));
	} else {
		tmp = (l + l) * ((cos(fabs(k)) / (fabs(k) * ((fabs(k) * t) * fma(-0.5, cos((fabs(k) + fabs(k))), 0.5)))) * l);
	}
	return tmp;
}
function code(t, l, k)
	tmp = 0.0
	if (abs(k) <= 5e+130)
		tmp = Float64(Float64(l + l) * Float64(Float64(1.0 / Float64(sin(abs(k)) * tan(abs(k)))) * Float64(l / Float64(Float64(abs(k) * abs(k)) * t))));
	else
		tmp = Float64(Float64(l + l) * Float64(Float64(cos(abs(k)) / Float64(abs(k) * Float64(Float64(abs(k) * t) * fma(-0.5, cos(Float64(abs(k) + abs(k))), 0.5)))) * l));
	end
	return tmp
end
code[t_, l_, k_] := If[LessEqual[N[Abs[k], $MachinePrecision], 5e+130], N[(N[(l + l), $MachinePrecision] * N[(N[(1.0 / N[(N[Sin[N[Abs[k], $MachinePrecision]], $MachinePrecision] * N[Tan[N[Abs[k], $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * N[(l / N[(N[(N[Abs[k], $MachinePrecision] * N[Abs[k], $MachinePrecision]), $MachinePrecision] * t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(N[(l + l), $MachinePrecision] * N[(N[(N[Cos[N[Abs[k], $MachinePrecision]], $MachinePrecision] / N[(N[Abs[k], $MachinePrecision] * N[(N[(N[Abs[k], $MachinePrecision] * t), $MachinePrecision] * N[(-0.5 * N[Cos[N[(N[Abs[k], $MachinePrecision] + N[Abs[k], $MachinePrecision]), $MachinePrecision]], $MachinePrecision] + 0.5), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * l), $MachinePrecision]), $MachinePrecision]]
\begin{array}{l}
\mathbf{if}\;\left|k\right| \leq 5 \cdot 10^{+130}:\\
\;\;\;\;\left(\ell + \ell\right) \cdot \left(\frac{1}{\sin \left(\left|k\right|\right) \cdot \tan \left(\left|k\right|\right)} \cdot \frac{\ell}{\left(\left|k\right| \cdot \left|k\right|\right) \cdot t}\right)\\

\mathbf{else}:\\
\;\;\;\;\left(\ell + \ell\right) \cdot \left(\frac{\cos \left(\left|k\right|\right)}{\left|k\right| \cdot \left(\left(\left|k\right| \cdot t\right) \cdot \mathsf{fma}\left(-0.5, \cos \left(\left|k\right| + \left|k\right|\right), 0.5\right)\right)} \cdot \ell\right)\\


\end{array}
Derivation
  1. Split input into 2 regimes
  2. if k < 4.9999999999999996e130

    1. Initial program 35.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)} \]
    2. Taylor expanded in t around 0

      \[\leadsto \color{blue}{2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
    3. Step-by-step derivation
      1. lower-*.f64N/A

        \[\leadsto 2 \cdot \color{blue}{\frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      2. lower-/.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      3. lower-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2}} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
      4. lower-pow.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{\color{blue}{k}}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
      5. lower-cos.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{\color{blue}{2}} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
      6. lower-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \color{blue}{\left(t \cdot {\sin k}^{2}\right)}} \]
      7. lower-pow.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(\color{blue}{t} \cdot {\sin k}^{2}\right)} \]
      8. lower-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot \color{blue}{{\sin k}^{2}}\right)} \]
      9. lower-pow.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{\color{blue}{2}}\right)} \]
      10. lower-sin.f6473.0%

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
    4. Applied rewrites73.0%

      \[\leadsto \color{blue}{2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
    5. Step-by-step derivation
      1. lift-*.f64N/A

        \[\leadsto 2 \cdot \color{blue}{\frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      2. lift-/.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      3. associate-*r/N/A

        \[\leadsto \frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{\color{blue}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      4. lift-*.f64N/A

        \[\leadsto \frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2} \cdot \color{blue}{\left(t \cdot {\sin k}^{2}\right)}} \]
      5. associate-/r*N/A

        \[\leadsto \frac{\frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2}}}{\color{blue}{t \cdot {\sin k}^{2}}} \]
      6. lower-/.f64N/A

        \[\leadsto \frac{\frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2}}}{\color{blue}{t \cdot {\sin k}^{2}}} \]
      7. lower-/.f64N/A

        \[\leadsto \frac{\frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2}}}{\color{blue}{t} \cdot {\sin k}^{2}} \]
      8. lift-*.f64N/A

        \[\leadsto \frac{\frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      9. *-commutativeN/A

        \[\leadsto \frac{\frac{2 \cdot \left(\cos k \cdot {\ell}^{2}\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      10. associate-*r*N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot {\ell}^{2}}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      11. lower-*.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot {\ell}^{2}}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      12. lower-*.f6473.9%

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot {\ell}^{2}}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      13. lift-pow.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot {\ell}^{2}}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      14. pow2N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      15. lift-*.f6473.9%

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      16. lift-pow.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
      17. unpow2N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{t \cdot {\sin k}^{2}} \]
      18. lower-*.f6473.9%

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{t \cdot {\sin k}^{2}} \]
      19. lift-*.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{t \cdot \color{blue}{{\sin k}^{2}}} \]
    6. Applied rewrites67.7%

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{\color{blue}{\left(0.5 - 0.5 \cdot \cos \left(k + k\right)\right) \cdot t}} \]
    7. Step-by-step derivation
      1. lift-/.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{\color{blue}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)} \cdot t} \]
      2. lift-*.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{\left(\color{blue}{\frac{1}{2}} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      3. lift-*.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      4. associate-*r*N/A

        \[\leadsto \frac{\frac{\left(\left(2 \cdot \cos k\right) \cdot \ell\right) \cdot \ell}{k \cdot k}}{\left(\color{blue}{\frac{1}{2}} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      5. lift-*.f64N/A

        \[\leadsto \frac{\frac{\left(\left(2 \cdot \cos k\right) \cdot \ell\right) \cdot \ell}{k \cdot k}}{\left(\frac{1}{2} - \color{blue}{\frac{1}{2} \cdot \cos \left(k + k\right)}\right) \cdot t} \]
      6. times-fracN/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\color{blue}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)} \cdot t} \]
      7. lower-*.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\color{blue}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)} \cdot t} \]
      8. lower-/.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\left(\color{blue}{\frac{1}{2}} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      9. lift-*.f64N/A

        \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      10. *-commutativeN/A

        \[\leadsto \frac{\frac{\left(\cos k \cdot 2\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      11. associate-*l*N/A

        \[\leadsto \frac{\frac{\cos k \cdot \left(2 \cdot \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      12. lower-*.f64N/A

        \[\leadsto \frac{\frac{\cos k \cdot \left(2 \cdot \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      13. count-2-revN/A

        \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      14. lower-+.f64N/A

        \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
      15. lower-/.f6483.0%

        \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(0.5 - \color{blue}{0.5 \cdot \cos \left(k + k\right)}\right) \cdot t} \]
    8. Applied rewrites83.0%

      \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{\color{blue}{\left(0.5 - 0.5 \cdot \cos \left(k + k\right)\right)} \cdot t} \]
    9. Applied rewrites83.6%

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

    if 4.9999999999999996e130 < k

    1. Initial program 35.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)} \]
    2. Taylor expanded in t around 0

      \[\leadsto \color{blue}{2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
    3. Step-by-step derivation
      1. lower-*.f64N/A

        \[\leadsto 2 \cdot \color{blue}{\frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      2. lower-/.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      3. lower-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2}} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
      4. lower-pow.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{\color{blue}{k}}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
      5. lower-cos.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{\color{blue}{2}} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
      6. lower-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \color{blue}{\left(t \cdot {\sin k}^{2}\right)}} \]
      7. lower-pow.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(\color{blue}{t} \cdot {\sin k}^{2}\right)} \]
      8. lower-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot \color{blue}{{\sin k}^{2}}\right)} \]
      9. lower-pow.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{\color{blue}{2}}\right)} \]
      10. lower-sin.f6473.0%

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
    4. Applied rewrites73.0%

      \[\leadsto \color{blue}{2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
    5. Step-by-step derivation
      1. lift-/.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      2. lift-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2}} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
      3. associate-/l*N/A

        \[\leadsto 2 \cdot \left({\ell}^{2} \cdot \color{blue}{\frac{\cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}}\right) \]
      4. lift-pow.f64N/A

        \[\leadsto 2 \cdot \left({\ell}^{2} \cdot \frac{\color{blue}{\cos k}}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}\right) \]
      5. pow2N/A

        \[\leadsto 2 \cdot \left(\left(\ell \cdot \ell\right) \cdot \frac{\color{blue}{\cos k}}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}\right) \]
      6. associate-*l*N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \color{blue}{\left(\ell \cdot \frac{\cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}\right)}\right) \]
      7. lower-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \color{blue}{\left(\ell \cdot \frac{\cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}\right)}\right) \]
      8. lower-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \color{blue}{\frac{\cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}}\right)\right) \]
      9. lower-/.f6481.6%

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\color{blue}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}}\right)\right) \]
      10. lift-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{{k}^{2} \cdot \color{blue}{\left(t \cdot {\sin k}^{2}\right)}}\right)\right) \]
      11. lift-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{{k}^{2} \cdot \left(t \cdot \color{blue}{{\sin k}^{2}}\right)}\right)\right) \]
      12. associate-*r*N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left({k}^{2} \cdot t\right) \cdot \color{blue}{{\sin k}^{2}}}\right)\right) \]
      13. lower-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left({k}^{2} \cdot t\right) \cdot \color{blue}{{\sin k}^{2}}}\right)\right) \]
      14. lower-*.f6481.6%

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left({k}^{2} \cdot t\right) \cdot {\color{blue}{\sin k}}^{2}}\right)\right) \]
      15. lift-pow.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left({k}^{2} \cdot t\right) \cdot {\sin \color{blue}{k}}^{2}}\right)\right) \]
      16. unpow2N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot {\sin \color{blue}{k}}^{2}}\right)\right) \]
      17. lower-*.f6481.6%

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot {\sin \color{blue}{k}}^{2}}\right)\right) \]
      18. lift-pow.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot {\sin k}^{\color{blue}{2}}}\right)\right) \]
      19. unpow2N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(\sin k \cdot \color{blue}{\sin k}\right)}\right)\right) \]
      20. lift-sin.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(\sin k \cdot \sin \color{blue}{k}\right)}\right)\right) \]
      21. lift-sin.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(\sin k \cdot \sin k\right)}\right)\right) \]
      22. sqr-sin-aN/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(\frac{1}{2} - \color{blue}{\frac{1}{2} \cdot \cos \left(2 \cdot k\right)}\right)}\right)\right) \]
    6. Applied rewrites75.0%

      \[\leadsto 2 \cdot \left(\ell \cdot \color{blue}{\left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(0.5 - 0.5 \cdot \cos \left(k + k\right)\right)}\right)}\right) \]
    7. Step-by-step derivation
      1. lift-*.f64N/A

        \[\leadsto 2 \cdot \color{blue}{\left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)}\right)\right)} \]
      2. lift-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \color{blue}{\left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)}\right)}\right) \]
      3. associate-*r*N/A

        \[\leadsto \left(2 \cdot \ell\right) \cdot \color{blue}{\left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)}\right)} \]
      4. lower-*.f64N/A

        \[\leadsto \left(2 \cdot \ell\right) \cdot \color{blue}{\left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)}\right)} \]
      5. count-2-revN/A

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\color{blue}{\ell} \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)}\right) \]
      6. lower-+.f6475.0%

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\color{blue}{\ell} \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(0.5 - 0.5 \cdot \cos \left(k + k\right)\right)}\right) \]
      7. lift-*.f64N/A

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\ell \cdot \color{blue}{\frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)}}\right) \]
      8. *-commutativeN/A

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)} \cdot \color{blue}{\ell}\right) \]
      9. lower-*.f6475.0%

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(0.5 - 0.5 \cdot \cos \left(k + k\right)\right)} \cdot \color{blue}{\ell}\right) \]
    8. Applied rewrites75.0%

      \[\leadsto \left(\ell + \ell\right) \cdot \color{blue}{\left(\frac{\cos k}{\mathsf{fma}\left(-0.5, \cos \left(k + k\right), 0.5\right) \cdot \left(\left(k \cdot k\right) \cdot t\right)} \cdot \ell\right)} \]
    9. Step-by-step derivation
      1. lift-*.f64N/A

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\frac{\cos k}{\mathsf{fma}\left(\frac{-1}{2}, \cos \left(k + k\right), \frac{1}{2}\right) \cdot \left(\left(k \cdot k\right) \cdot t\right)} \cdot \ell\right) \]
      2. *-commutativeN/A

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \mathsf{fma}\left(\frac{-1}{2}, \cos \left(k + k\right), \frac{1}{2}\right)} \cdot \ell\right) \]
      3. lift-*.f64N/A

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \mathsf{fma}\left(\frac{-1}{2}, \cos \left(k + k\right), \frac{1}{2}\right)} \cdot \ell\right) \]
      4. lift-*.f64N/A

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \mathsf{fma}\left(\frac{-1}{2}, \cos \left(k + k\right), \frac{1}{2}\right)} \cdot \ell\right) \]
      5. associate-*l*N/A

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\frac{\cos k}{\left(k \cdot \left(k \cdot t\right)\right) \cdot \mathsf{fma}\left(\frac{-1}{2}, \cos \left(k + k\right), \frac{1}{2}\right)} \cdot \ell\right) \]
      6. associate-*l*N/A

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\frac{\cos k}{k \cdot \left(\left(k \cdot t\right) \cdot \mathsf{fma}\left(\frac{-1}{2}, \cos \left(k + k\right), \frac{1}{2}\right)\right)} \cdot \ell\right) \]
      7. lower-*.f64N/A

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\frac{\cos k}{k \cdot \left(\left(k \cdot t\right) \cdot \mathsf{fma}\left(\frac{-1}{2}, \cos \left(k + k\right), \frac{1}{2}\right)\right)} \cdot \ell\right) \]
      8. lower-*.f64N/A

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\frac{\cos k}{k \cdot \left(\left(k \cdot t\right) \cdot \mathsf{fma}\left(\frac{-1}{2}, \cos \left(k + k\right), \frac{1}{2}\right)\right)} \cdot \ell\right) \]
      9. lower-*.f6478.7%

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\frac{\cos k}{k \cdot \left(\left(k \cdot t\right) \cdot \mathsf{fma}\left(-0.5, \cos \left(k + k\right), 0.5\right)\right)} \cdot \ell\right) \]
    10. Applied rewrites78.7%

      \[\leadsto \left(\ell + \ell\right) \cdot \left(\frac{\cos k}{k \cdot \left(\left(k \cdot t\right) \cdot \mathsf{fma}\left(-0.5, \cos \left(k + k\right), 0.5\right)\right)} \cdot \ell\right) \]
  3. Recombined 2 regimes into one program.
  4. Add Preprocessing

Alternative 5: 83.6% accurate, 1.4× speedup?

\[\left(\ell + \ell\right) \cdot \left(\frac{1}{\sin k \cdot \tan k} \cdot \frac{\ell}{\left(k \cdot k\right) \cdot t}\right) \]
(FPCore (t l k)
  :precision binary64
  (* (+ l l) (* (/ 1.0 (* (sin k) (tan k))) (/ l (* (* k k) t)))))
double code(double t, double l, double k) {
	return (l + l) * ((1.0 / (sin(k) * tan(k))) * (l / ((k * k) * t)));
}
module fmin_fmax_functions
    implicit none
    private
    public fmax
    public fmin

    interface fmax
        module procedure fmax88
        module procedure fmax44
        module procedure fmax84
        module procedure fmax48
    end interface
    interface fmin
        module procedure fmin88
        module procedure fmin44
        module procedure fmin84
        module procedure fmin48
    end interface
contains
    real(8) function fmax88(x, y) result (res)
        real(8), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(x, max(x, y), y /= y), x /= x)
    end function
    real(4) function fmax44(x, y) result (res)
        real(4), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(y, merge(x, max(x, y), y /= y), x /= x)
    end function
    real(8) function fmax84(x, y) result(res)
        real(8), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(dble(y), merge(x, max(x, dble(y)), y /= y), x /= x)
    end function
    real(8) function fmax48(x, y) result(res)
        real(4), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(dble(x), max(dble(x), y), y /= y), x /= x)
    end function
    real(8) function fmin88(x, y) result (res)
        real(8), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(x, min(x, y), y /= y), x /= x)
    end function
    real(4) function fmin44(x, y) result (res)
        real(4), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(y, merge(x, min(x, y), y /= y), x /= x)
    end function
    real(8) function fmin84(x, y) result(res)
        real(8), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(dble(y), merge(x, min(x, dble(y)), y /= y), x /= x)
    end function
    real(8) function fmin48(x, y) result(res)
        real(4), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(dble(x), min(dble(x), y), y /= y), x /= x)
    end function
end module

real(8) function code(t, l, k)
use fmin_fmax_functions
    real(8), intent (in) :: t
    real(8), intent (in) :: l
    real(8), intent (in) :: k
    code = (l + l) * ((1.0d0 / (sin(k) * tan(k))) * (l / ((k * k) * t)))
end function
public static double code(double t, double l, double k) {
	return (l + l) * ((1.0 / (Math.sin(k) * Math.tan(k))) * (l / ((k * k) * t)));
}
def code(t, l, k):
	return (l + l) * ((1.0 / (math.sin(k) * math.tan(k))) * (l / ((k * k) * t)))
function code(t, l, k)
	return Float64(Float64(l + l) * Float64(Float64(1.0 / Float64(sin(k) * tan(k))) * Float64(l / Float64(Float64(k * k) * t))))
end
function tmp = code(t, l, k)
	tmp = (l + l) * ((1.0 / (sin(k) * tan(k))) * (l / ((k * k) * t)));
end
code[t_, l_, k_] := N[(N[(l + l), $MachinePrecision] * N[(N[(1.0 / N[(N[Sin[k], $MachinePrecision] * N[Tan[k], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * N[(l / N[(N[(k * k), $MachinePrecision] * t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
\left(\ell + \ell\right) \cdot \left(\frac{1}{\sin k \cdot \tan k} \cdot \frac{\ell}{\left(k \cdot k\right) \cdot t}\right)
Derivation
  1. Initial program 35.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)} \]
  2. Taylor expanded in t around 0

    \[\leadsto \color{blue}{2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
  3. Step-by-step derivation
    1. lower-*.f64N/A

      \[\leadsto 2 \cdot \color{blue}{\frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
    2. lower-/.f64N/A

      \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
    3. lower-*.f64N/A

      \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2}} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
    4. lower-pow.f64N/A

      \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{\color{blue}{k}}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
    5. lower-cos.f64N/A

      \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{\color{blue}{2}} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
    6. lower-*.f64N/A

      \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \color{blue}{\left(t \cdot {\sin k}^{2}\right)}} \]
    7. lower-pow.f64N/A

      \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(\color{blue}{t} \cdot {\sin k}^{2}\right)} \]
    8. lower-*.f64N/A

      \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot \color{blue}{{\sin k}^{2}}\right)} \]
    9. lower-pow.f64N/A

      \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{\color{blue}{2}}\right)} \]
    10. lower-sin.f6473.0%

      \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
  4. Applied rewrites73.0%

    \[\leadsto \color{blue}{2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
  5. Step-by-step derivation
    1. lift-*.f64N/A

      \[\leadsto 2 \cdot \color{blue}{\frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
    2. lift-/.f64N/A

      \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
    3. associate-*r/N/A

      \[\leadsto \frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{\color{blue}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
    4. lift-*.f64N/A

      \[\leadsto \frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2} \cdot \color{blue}{\left(t \cdot {\sin k}^{2}\right)}} \]
    5. associate-/r*N/A

      \[\leadsto \frac{\frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2}}}{\color{blue}{t \cdot {\sin k}^{2}}} \]
    6. lower-/.f64N/A

      \[\leadsto \frac{\frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2}}}{\color{blue}{t \cdot {\sin k}^{2}}} \]
    7. lower-/.f64N/A

      \[\leadsto \frac{\frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2}}}{\color{blue}{t} \cdot {\sin k}^{2}} \]
    8. lift-*.f64N/A

      \[\leadsto \frac{\frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
    9. *-commutativeN/A

      \[\leadsto \frac{\frac{2 \cdot \left(\cos k \cdot {\ell}^{2}\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
    10. associate-*r*N/A

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot {\ell}^{2}}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
    11. lower-*.f64N/A

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot {\ell}^{2}}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
    12. lower-*.f6473.9%

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot {\ell}^{2}}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
    13. lift-pow.f64N/A

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot {\ell}^{2}}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
    14. pow2N/A

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
    15. lift-*.f6473.9%

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
    16. lift-pow.f64N/A

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
    17. unpow2N/A

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{t \cdot {\sin k}^{2}} \]
    18. lower-*.f6473.9%

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{t \cdot {\sin k}^{2}} \]
    19. lift-*.f64N/A

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{t \cdot \color{blue}{{\sin k}^{2}}} \]
  6. Applied rewrites67.7%

    \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{\color{blue}{\left(0.5 - 0.5 \cdot \cos \left(k + k\right)\right) \cdot t}} \]
  7. Step-by-step derivation
    1. lift-/.f64N/A

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{\color{blue}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)} \cdot t} \]
    2. lift-*.f64N/A

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{\left(\color{blue}{\frac{1}{2}} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
    3. lift-*.f64N/A

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
    4. associate-*r*N/A

      \[\leadsto \frac{\frac{\left(\left(2 \cdot \cos k\right) \cdot \ell\right) \cdot \ell}{k \cdot k}}{\left(\color{blue}{\frac{1}{2}} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
    5. lift-*.f64N/A

      \[\leadsto \frac{\frac{\left(\left(2 \cdot \cos k\right) \cdot \ell\right) \cdot \ell}{k \cdot k}}{\left(\frac{1}{2} - \color{blue}{\frac{1}{2} \cdot \cos \left(k + k\right)}\right) \cdot t} \]
    6. times-fracN/A

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\color{blue}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)} \cdot t} \]
    7. lower-*.f64N/A

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\color{blue}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)} \cdot t} \]
    8. lower-/.f64N/A

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\left(\color{blue}{\frac{1}{2}} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
    9. lift-*.f64N/A

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
    10. *-commutativeN/A

      \[\leadsto \frac{\frac{\left(\cos k \cdot 2\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
    11. associate-*l*N/A

      \[\leadsto \frac{\frac{\cos k \cdot \left(2 \cdot \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
    12. lower-*.f64N/A

      \[\leadsto \frac{\frac{\cos k \cdot \left(2 \cdot \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
    13. count-2-revN/A

      \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
    14. lower-+.f64N/A

      \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
    15. lower-/.f6483.0%

      \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(0.5 - \color{blue}{0.5 \cdot \cos \left(k + k\right)}\right) \cdot t} \]
  8. Applied rewrites83.0%

    \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{\color{blue}{\left(0.5 - 0.5 \cdot \cos \left(k + k\right)\right)} \cdot t} \]
  9. Applied rewrites83.6%

    \[\leadsto \left(\ell + \ell\right) \cdot \color{blue}{\left(\frac{1}{\sin k \cdot \tan k} \cdot \frac{\ell}{\left(k \cdot k\right) \cdot t}\right)} \]
  10. Add Preprocessing

Alternative 6: 73.1% accurate, 1.8× speedup?

\[\frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{{k}^{2} \cdot t} \]
(FPCore (t l k)
  :precision binary64
  (/ (* (/ (* (cos k) (+ l l)) k) (/ l k)) (* (pow k 2.0) t)))
double code(double t, double l, double k) {
	return (((cos(k) * (l + l)) / k) * (l / k)) / (pow(k, 2.0) * t);
}
module fmin_fmax_functions
    implicit none
    private
    public fmax
    public fmin

    interface fmax
        module procedure fmax88
        module procedure fmax44
        module procedure fmax84
        module procedure fmax48
    end interface
    interface fmin
        module procedure fmin88
        module procedure fmin44
        module procedure fmin84
        module procedure fmin48
    end interface
contains
    real(8) function fmax88(x, y) result (res)
        real(8), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(x, max(x, y), y /= y), x /= x)
    end function
    real(4) function fmax44(x, y) result (res)
        real(4), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(y, merge(x, max(x, y), y /= y), x /= x)
    end function
    real(8) function fmax84(x, y) result(res)
        real(8), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(dble(y), merge(x, max(x, dble(y)), y /= y), x /= x)
    end function
    real(8) function fmax48(x, y) result(res)
        real(4), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(dble(x), max(dble(x), y), y /= y), x /= x)
    end function
    real(8) function fmin88(x, y) result (res)
        real(8), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(x, min(x, y), y /= y), x /= x)
    end function
    real(4) function fmin44(x, y) result (res)
        real(4), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(y, merge(x, min(x, y), y /= y), x /= x)
    end function
    real(8) function fmin84(x, y) result(res)
        real(8), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(dble(y), merge(x, min(x, dble(y)), y /= y), x /= x)
    end function
    real(8) function fmin48(x, y) result(res)
        real(4), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(dble(x), min(dble(x), y), y /= y), x /= x)
    end function
end module

real(8) function code(t, l, k)
use fmin_fmax_functions
    real(8), intent (in) :: t
    real(8), intent (in) :: l
    real(8), intent (in) :: k
    code = (((cos(k) * (l + l)) / k) * (l / k)) / ((k ** 2.0d0) * t)
end function
public static double code(double t, double l, double k) {
	return (((Math.cos(k) * (l + l)) / k) * (l / k)) / (Math.pow(k, 2.0) * t);
}
def code(t, l, k):
	return (((math.cos(k) * (l + l)) / k) * (l / k)) / (math.pow(k, 2.0) * t)
function code(t, l, k)
	return Float64(Float64(Float64(Float64(cos(k) * Float64(l + l)) / k) * Float64(l / k)) / Float64((k ^ 2.0) * t))
end
function tmp = code(t, l, k)
	tmp = (((cos(k) * (l + l)) / k) * (l / k)) / ((k ^ 2.0) * t);
end
code[t_, l_, k_] := N[(N[(N[(N[(N[Cos[k], $MachinePrecision] * N[(l + l), $MachinePrecision]), $MachinePrecision] / k), $MachinePrecision] * N[(l / k), $MachinePrecision]), $MachinePrecision] / N[(N[Power[k, 2.0], $MachinePrecision] * t), $MachinePrecision]), $MachinePrecision]
\frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{{k}^{2} \cdot t}
Derivation
  1. Initial program 35.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)} \]
  2. Taylor expanded in t around 0

    \[\leadsto \color{blue}{2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
  3. Step-by-step derivation
    1. lower-*.f64N/A

      \[\leadsto 2 \cdot \color{blue}{\frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
    2. lower-/.f64N/A

      \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
    3. lower-*.f64N/A

      \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2}} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
    4. lower-pow.f64N/A

      \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{\color{blue}{k}}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
    5. lower-cos.f64N/A

      \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{\color{blue}{2}} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
    6. lower-*.f64N/A

      \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \color{blue}{\left(t \cdot {\sin k}^{2}\right)}} \]
    7. lower-pow.f64N/A

      \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(\color{blue}{t} \cdot {\sin k}^{2}\right)} \]
    8. lower-*.f64N/A

      \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot \color{blue}{{\sin k}^{2}}\right)} \]
    9. lower-pow.f64N/A

      \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{\color{blue}{2}}\right)} \]
    10. lower-sin.f6473.0%

      \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
  4. Applied rewrites73.0%

    \[\leadsto \color{blue}{2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
  5. Step-by-step derivation
    1. lift-*.f64N/A

      \[\leadsto 2 \cdot \color{blue}{\frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
    2. lift-/.f64N/A

      \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
    3. associate-*r/N/A

      \[\leadsto \frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{\color{blue}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
    4. lift-*.f64N/A

      \[\leadsto \frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2} \cdot \color{blue}{\left(t \cdot {\sin k}^{2}\right)}} \]
    5. associate-/r*N/A

      \[\leadsto \frac{\frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2}}}{\color{blue}{t \cdot {\sin k}^{2}}} \]
    6. lower-/.f64N/A

      \[\leadsto \frac{\frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2}}}{\color{blue}{t \cdot {\sin k}^{2}}} \]
    7. lower-/.f64N/A

      \[\leadsto \frac{\frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2}}}{\color{blue}{t} \cdot {\sin k}^{2}} \]
    8. lift-*.f64N/A

      \[\leadsto \frac{\frac{2 \cdot \left({\ell}^{2} \cdot \cos k\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
    9. *-commutativeN/A

      \[\leadsto \frac{\frac{2 \cdot \left(\cos k \cdot {\ell}^{2}\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
    10. associate-*r*N/A

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot {\ell}^{2}}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
    11. lower-*.f64N/A

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot {\ell}^{2}}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
    12. lower-*.f6473.9%

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot {\ell}^{2}}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
    13. lift-pow.f64N/A

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot {\ell}^{2}}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
    14. pow2N/A

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
    15. lift-*.f6473.9%

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
    16. lift-pow.f64N/A

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{{k}^{2}}}{t \cdot {\sin k}^{2}} \]
    17. unpow2N/A

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{t \cdot {\sin k}^{2}} \]
    18. lower-*.f6473.9%

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{t \cdot {\sin k}^{2}} \]
    19. lift-*.f64N/A

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{t \cdot \color{blue}{{\sin k}^{2}}} \]
  6. Applied rewrites67.7%

    \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{\color{blue}{\left(0.5 - 0.5 \cdot \cos \left(k + k\right)\right) \cdot t}} \]
  7. Step-by-step derivation
    1. lift-/.f64N/A

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{\color{blue}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)} \cdot t} \]
    2. lift-*.f64N/A

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{\left(\color{blue}{\frac{1}{2}} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
    3. lift-*.f64N/A

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \left(\ell \cdot \ell\right)}{k \cdot k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
    4. associate-*r*N/A

      \[\leadsto \frac{\frac{\left(\left(2 \cdot \cos k\right) \cdot \ell\right) \cdot \ell}{k \cdot k}}{\left(\color{blue}{\frac{1}{2}} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
    5. lift-*.f64N/A

      \[\leadsto \frac{\frac{\left(\left(2 \cdot \cos k\right) \cdot \ell\right) \cdot \ell}{k \cdot k}}{\left(\frac{1}{2} - \color{blue}{\frac{1}{2} \cdot \cos \left(k + k\right)}\right) \cdot t} \]
    6. times-fracN/A

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\color{blue}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)} \cdot t} \]
    7. lower-*.f64N/A

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\color{blue}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)} \cdot t} \]
    8. lower-/.f64N/A

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\left(\color{blue}{\frac{1}{2}} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
    9. lift-*.f64N/A

      \[\leadsto \frac{\frac{\left(2 \cdot \cos k\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
    10. *-commutativeN/A

      \[\leadsto \frac{\frac{\left(\cos k \cdot 2\right) \cdot \ell}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
    11. associate-*l*N/A

      \[\leadsto \frac{\frac{\cos k \cdot \left(2 \cdot \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
    12. lower-*.f64N/A

      \[\leadsto \frac{\frac{\cos k \cdot \left(2 \cdot \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
    13. count-2-revN/A

      \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
    14. lower-+.f64N/A

      \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right) \cdot t} \]
    15. lower-/.f6483.0%

      \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{\left(0.5 - \color{blue}{0.5 \cdot \cos \left(k + k\right)}\right) \cdot t} \]
  8. Applied rewrites83.0%

    \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{\color{blue}{\left(0.5 - 0.5 \cdot \cos \left(k + k\right)\right)} \cdot t} \]
  9. Taylor expanded in k around 0

    \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{{k}^{2} \cdot t} \]
  10. Step-by-step derivation
    1. lower-pow.f6473.1%

      \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{{k}^{2} \cdot t} \]
  11. Applied rewrites73.1%

    \[\leadsto \frac{\frac{\cos k \cdot \left(\ell + \ell\right)}{k} \cdot \frac{\ell}{k}}{{k}^{2} \cdot t} \]
  12. Add Preprocessing

Alternative 7: 71.1% accurate, 2.0× speedup?

\[\begin{array}{l} \mathbf{if}\;\left|\ell\right| \leq 4.2 \cdot 10^{+177}:\\ \;\;\;\;2 \cdot \left(\left|\ell\right| \cdot \frac{{k}^{-4} \cdot \left|\ell\right|}{t}\right)\\ \mathbf{else}:\\ \;\;\;\;2 \cdot \left(\left|\ell\right| \cdot \left(\left|\ell\right| \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(0.5 - 0.5\right)}\right)\right)\\ \end{array} \]
(FPCore (t l k)
  :precision binary64
  (if (<= (fabs l) 4.2e+177)
  (* 2.0 (* (fabs l) (/ (* (pow k -4.0) (fabs l)) t)))
  (*
   2.0
   (*
    (fabs l)
    (* (fabs l) (/ (cos k) (* (* (* k k) t) (- 0.5 0.5))))))))
double code(double t, double l, double k) {
	double tmp;
	if (fabs(l) <= 4.2e+177) {
		tmp = 2.0 * (fabs(l) * ((pow(k, -4.0) * fabs(l)) / t));
	} else {
		tmp = 2.0 * (fabs(l) * (fabs(l) * (cos(k) / (((k * k) * t) * (0.5 - 0.5)))));
	}
	return tmp;
}
module fmin_fmax_functions
    implicit none
    private
    public fmax
    public fmin

    interface fmax
        module procedure fmax88
        module procedure fmax44
        module procedure fmax84
        module procedure fmax48
    end interface
    interface fmin
        module procedure fmin88
        module procedure fmin44
        module procedure fmin84
        module procedure fmin48
    end interface
contains
    real(8) function fmax88(x, y) result (res)
        real(8), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(x, max(x, y), y /= y), x /= x)
    end function
    real(4) function fmax44(x, y) result (res)
        real(4), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(y, merge(x, max(x, y), y /= y), x /= x)
    end function
    real(8) function fmax84(x, y) result(res)
        real(8), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(dble(y), merge(x, max(x, dble(y)), y /= y), x /= x)
    end function
    real(8) function fmax48(x, y) result(res)
        real(4), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(dble(x), max(dble(x), y), y /= y), x /= x)
    end function
    real(8) function fmin88(x, y) result (res)
        real(8), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(x, min(x, y), y /= y), x /= x)
    end function
    real(4) function fmin44(x, y) result (res)
        real(4), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(y, merge(x, min(x, y), y /= y), x /= x)
    end function
    real(8) function fmin84(x, y) result(res)
        real(8), intent (in) :: x
        real(4), intent (in) :: y
        res = merge(dble(y), merge(x, min(x, dble(y)), y /= y), x /= x)
    end function
    real(8) function fmin48(x, y) result(res)
        real(4), intent (in) :: x
        real(8), intent (in) :: y
        res = merge(y, merge(dble(x), min(dble(x), y), y /= y), x /= x)
    end function
end module

real(8) function code(t, l, k)
use fmin_fmax_functions
    real(8), intent (in) :: t
    real(8), intent (in) :: l
    real(8), intent (in) :: k
    real(8) :: tmp
    if (abs(l) <= 4.2d+177) then
        tmp = 2.0d0 * (abs(l) * (((k ** (-4.0d0)) * abs(l)) / t))
    else
        tmp = 2.0d0 * (abs(l) * (abs(l) * (cos(k) / (((k * k) * t) * (0.5d0 - 0.5d0)))))
    end if
    code = tmp
end function
public static double code(double t, double l, double k) {
	double tmp;
	if (Math.abs(l) <= 4.2e+177) {
		tmp = 2.0 * (Math.abs(l) * ((Math.pow(k, -4.0) * Math.abs(l)) / t));
	} else {
		tmp = 2.0 * (Math.abs(l) * (Math.abs(l) * (Math.cos(k) / (((k * k) * t) * (0.5 - 0.5)))));
	}
	return tmp;
}
def code(t, l, k):
	tmp = 0
	if math.fabs(l) <= 4.2e+177:
		tmp = 2.0 * (math.fabs(l) * ((math.pow(k, -4.0) * math.fabs(l)) / t))
	else:
		tmp = 2.0 * (math.fabs(l) * (math.fabs(l) * (math.cos(k) / (((k * k) * t) * (0.5 - 0.5)))))
	return tmp
function code(t, l, k)
	tmp = 0.0
	if (abs(l) <= 4.2e+177)
		tmp = Float64(2.0 * Float64(abs(l) * Float64(Float64((k ^ -4.0) * abs(l)) / t)));
	else
		tmp = Float64(2.0 * Float64(abs(l) * Float64(abs(l) * Float64(cos(k) / Float64(Float64(Float64(k * k) * t) * Float64(0.5 - 0.5))))));
	end
	return tmp
end
function tmp_2 = code(t, l, k)
	tmp = 0.0;
	if (abs(l) <= 4.2e+177)
		tmp = 2.0 * (abs(l) * (((k ^ -4.0) * abs(l)) / t));
	else
		tmp = 2.0 * (abs(l) * (abs(l) * (cos(k) / (((k * k) * t) * (0.5 - 0.5)))));
	end
	tmp_2 = tmp;
end
code[t_, l_, k_] := If[LessEqual[N[Abs[l], $MachinePrecision], 4.2e+177], N[(2.0 * N[(N[Abs[l], $MachinePrecision] * N[(N[(N[Power[k, -4.0], $MachinePrecision] * N[Abs[l], $MachinePrecision]), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(2.0 * N[(N[Abs[l], $MachinePrecision] * N[(N[Abs[l], $MachinePrecision] * N[(N[Cos[k], $MachinePrecision] / N[(N[(N[(k * k), $MachinePrecision] * t), $MachinePrecision] * N[(0.5 - 0.5), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]
\begin{array}{l}
\mathbf{if}\;\left|\ell\right| \leq 4.2 \cdot 10^{+177}:\\
\;\;\;\;2 \cdot \left(\left|\ell\right| \cdot \frac{{k}^{-4} \cdot \left|\ell\right|}{t}\right)\\

\mathbf{else}:\\
\;\;\;\;2 \cdot \left(\left|\ell\right| \cdot \left(\left|\ell\right| \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(0.5 - 0.5\right)}\right)\right)\\


\end{array}
Derivation
  1. Split input into 2 regimes
  2. if l < 4.2000000000000003e177

    1. Initial program 35.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)} \]
    2. Taylor expanded in k around 0

      \[\leadsto \color{blue}{2 \cdot \frac{{\ell}^{2}}{{k}^{4} \cdot t}} \]
    3. Step-by-step derivation
      1. lower-*.f64N/A

        \[\leadsto 2 \cdot \color{blue}{\frac{{\ell}^{2}}{{k}^{4} \cdot t}} \]
      2. lower-/.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2}}{\color{blue}{{k}^{4} \cdot t}} \]
      3. lower-pow.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2}}{\color{blue}{{k}^{4}} \cdot t} \]
      4. lower-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2}}{{k}^{4} \cdot \color{blue}{t}} \]
      5. lower-pow.f6462.4%

        \[\leadsto 2 \cdot \frac{{\ell}^{2}}{{k}^{4} \cdot t} \]
    4. Applied rewrites62.4%

      \[\leadsto \color{blue}{2 \cdot \frac{{\ell}^{2}}{{k}^{4} \cdot t}} \]
    5. Step-by-step derivation
      1. lift-/.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2}}{\color{blue}{{k}^{4} \cdot t}} \]
      2. mult-flipN/A

        \[\leadsto 2 \cdot \left({\ell}^{2} \cdot \color{blue}{\frac{1}{{k}^{4} \cdot t}}\right) \]
      3. lift-pow.f64N/A

        \[\leadsto 2 \cdot \left({\ell}^{2} \cdot \frac{\color{blue}{1}}{{k}^{4} \cdot t}\right) \]
      4. pow2N/A

        \[\leadsto 2 \cdot \left(\left(\ell \cdot \ell\right) \cdot \frac{\color{blue}{1}}{{k}^{4} \cdot t}\right) \]
      5. associate-*l*N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \color{blue}{\left(\ell \cdot \frac{1}{{k}^{4} \cdot t}\right)}\right) \]
      6. lower-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \color{blue}{\left(\ell \cdot \frac{1}{{k}^{4} \cdot t}\right)}\right) \]
      7. lower-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \color{blue}{\frac{1}{{k}^{4} \cdot t}}\right)\right) \]
      8. lift-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{1}{{k}^{4} \cdot \color{blue}{t}}\right)\right) \]
      9. associate-/r*N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\frac{1}{{k}^{4}}}{\color{blue}{t}}\right)\right) \]
      10. lower-/.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\frac{1}{{k}^{4}}}{\color{blue}{t}}\right)\right) \]
      11. lift-pow.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\frac{1}{{k}^{4}}}{t}\right)\right) \]
      12. pow-flipN/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{{k}^{\left(\mathsf{neg}\left(4\right)\right)}}{t}\right)\right) \]
      13. lower-pow.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{{k}^{\left(\mathsf{neg}\left(4\right)\right)}}{t}\right)\right) \]
      14. metadata-eval68.5%

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{{k}^{-4}}{t}\right)\right) \]
    6. Applied rewrites68.5%

      \[\leadsto 2 \cdot \left(\ell \cdot \color{blue}{\left(\ell \cdot \frac{{k}^{-4}}{t}\right)}\right) \]
    7. Step-by-step derivation
      1. lift-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \color{blue}{\frac{{k}^{-4}}{t}}\right)\right) \]
      2. lift-/.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{{k}^{-4}}{\color{blue}{t}}\right)\right) \]
      3. associate-*r/N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \frac{\ell \cdot {k}^{-4}}{\color{blue}{t}}\right) \]
      4. lower-/.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \frac{\ell \cdot {k}^{-4}}{\color{blue}{t}}\right) \]
      5. *-commutativeN/A

        \[\leadsto 2 \cdot \left(\ell \cdot \frac{{k}^{-4} \cdot \ell}{t}\right) \]
      6. lower-*.f6469.4%

        \[\leadsto 2 \cdot \left(\ell \cdot \frac{{k}^{-4} \cdot \ell}{t}\right) \]
    8. Applied rewrites69.4%

      \[\leadsto 2 \cdot \left(\ell \cdot \frac{{k}^{-4} \cdot \ell}{\color{blue}{t}}\right) \]

    if 4.2000000000000003e177 < l

    1. Initial program 35.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)} \]
    2. Taylor expanded in t around 0

      \[\leadsto \color{blue}{2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
    3. Step-by-step derivation
      1. lower-*.f64N/A

        \[\leadsto 2 \cdot \color{blue}{\frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      2. lower-/.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      3. lower-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2}} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
      4. lower-pow.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{\color{blue}{k}}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
      5. lower-cos.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{\color{blue}{2}} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
      6. lower-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \color{blue}{\left(t \cdot {\sin k}^{2}\right)}} \]
      7. lower-pow.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(\color{blue}{t} \cdot {\sin k}^{2}\right)} \]
      8. lower-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot \color{blue}{{\sin k}^{2}}\right)} \]
      9. lower-pow.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{\color{blue}{2}}\right)} \]
      10. lower-sin.f6473.0%

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
    4. Applied rewrites73.0%

      \[\leadsto \color{blue}{2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
    5. Step-by-step derivation
      1. lift-/.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      2. lift-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2}} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
      3. associate-/l*N/A

        \[\leadsto 2 \cdot \left({\ell}^{2} \cdot \color{blue}{\frac{\cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}}\right) \]
      4. lift-pow.f64N/A

        \[\leadsto 2 \cdot \left({\ell}^{2} \cdot \frac{\color{blue}{\cos k}}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}\right) \]
      5. pow2N/A

        \[\leadsto 2 \cdot \left(\left(\ell \cdot \ell\right) \cdot \frac{\color{blue}{\cos k}}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}\right) \]
      6. associate-*l*N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \color{blue}{\left(\ell \cdot \frac{\cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}\right)}\right) \]
      7. lower-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \color{blue}{\left(\ell \cdot \frac{\cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}\right)}\right) \]
      8. lower-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \color{blue}{\frac{\cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}}\right)\right) \]
      9. lower-/.f6481.6%

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\color{blue}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}}\right)\right) \]
      10. lift-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{{k}^{2} \cdot \color{blue}{\left(t \cdot {\sin k}^{2}\right)}}\right)\right) \]
      11. lift-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{{k}^{2} \cdot \left(t \cdot \color{blue}{{\sin k}^{2}}\right)}\right)\right) \]
      12. associate-*r*N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left({k}^{2} \cdot t\right) \cdot \color{blue}{{\sin k}^{2}}}\right)\right) \]
      13. lower-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left({k}^{2} \cdot t\right) \cdot \color{blue}{{\sin k}^{2}}}\right)\right) \]
      14. lower-*.f6481.6%

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left({k}^{2} \cdot t\right) \cdot {\color{blue}{\sin k}}^{2}}\right)\right) \]
      15. lift-pow.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left({k}^{2} \cdot t\right) \cdot {\sin \color{blue}{k}}^{2}}\right)\right) \]
      16. unpow2N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot {\sin \color{blue}{k}}^{2}}\right)\right) \]
      17. lower-*.f6481.6%

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot {\sin \color{blue}{k}}^{2}}\right)\right) \]
      18. lift-pow.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot {\sin k}^{\color{blue}{2}}}\right)\right) \]
      19. unpow2N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(\sin k \cdot \color{blue}{\sin k}\right)}\right)\right) \]
      20. lift-sin.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(\sin k \cdot \sin \color{blue}{k}\right)}\right)\right) \]
      21. lift-sin.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(\sin k \cdot \sin k\right)}\right)\right) \]
      22. sqr-sin-aN/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(\frac{1}{2} - \color{blue}{\frac{1}{2} \cdot \cos \left(2 \cdot k\right)}\right)}\right)\right) \]
    6. Applied rewrites75.0%

      \[\leadsto 2 \cdot \left(\ell \cdot \color{blue}{\left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(0.5 - 0.5 \cdot \cos \left(k + k\right)\right)}\right)}\right) \]
    7. Taylor expanded in k around 0

      \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(0.5 - \frac{1}{2}\right)}\right)\right) \]
    8. Step-by-step derivation
      1. Applied rewrites40.0%

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(0.5 - 0.5\right)}\right)\right) \]
    9. Recombined 2 regimes into one program.
    10. Add Preprocessing

    Alternative 8: 69.5% accurate, 2.0× speedup?

    \[\left(\ell + \ell\right) \cdot \left(\frac{\cos k}{{k}^{4} \cdot t} \cdot \ell\right) \]
    (FPCore (t l k)
      :precision binary64
      (* (+ l l) (* (/ (cos k) (* (pow k 4.0) t)) l)))
    double code(double t, double l, double k) {
    	return (l + l) * ((cos(k) / (pow(k, 4.0) * t)) * l);
    }
    
    module fmin_fmax_functions
        implicit none
        private
        public fmax
        public fmin
    
        interface fmax
            module procedure fmax88
            module procedure fmax44
            module procedure fmax84
            module procedure fmax48
        end interface
        interface fmin
            module procedure fmin88
            module procedure fmin44
            module procedure fmin84
            module procedure fmin48
        end interface
    contains
        real(8) function fmax88(x, y) result (res)
            real(8), intent (in) :: x
            real(8), intent (in) :: y
            res = merge(y, merge(x, max(x, y), y /= y), x /= x)
        end function
        real(4) function fmax44(x, y) result (res)
            real(4), intent (in) :: x
            real(4), intent (in) :: y
            res = merge(y, merge(x, max(x, y), y /= y), x /= x)
        end function
        real(8) function fmax84(x, y) result(res)
            real(8), intent (in) :: x
            real(4), intent (in) :: y
            res = merge(dble(y), merge(x, max(x, dble(y)), y /= y), x /= x)
        end function
        real(8) function fmax48(x, y) result(res)
            real(4), intent (in) :: x
            real(8), intent (in) :: y
            res = merge(y, merge(dble(x), max(dble(x), y), y /= y), x /= x)
        end function
        real(8) function fmin88(x, y) result (res)
            real(8), intent (in) :: x
            real(8), intent (in) :: y
            res = merge(y, merge(x, min(x, y), y /= y), x /= x)
        end function
        real(4) function fmin44(x, y) result (res)
            real(4), intent (in) :: x
            real(4), intent (in) :: y
            res = merge(y, merge(x, min(x, y), y /= y), x /= x)
        end function
        real(8) function fmin84(x, y) result(res)
            real(8), intent (in) :: x
            real(4), intent (in) :: y
            res = merge(dble(y), merge(x, min(x, dble(y)), y /= y), x /= x)
        end function
        real(8) function fmin48(x, y) result(res)
            real(4), intent (in) :: x
            real(8), intent (in) :: y
            res = merge(y, merge(dble(x), min(dble(x), y), y /= y), x /= x)
        end function
    end module
    
    real(8) function code(t, l, k)
    use fmin_fmax_functions
        real(8), intent (in) :: t
        real(8), intent (in) :: l
        real(8), intent (in) :: k
        code = (l + l) * ((cos(k) / ((k ** 4.0d0) * t)) * l)
    end function
    
    public static double code(double t, double l, double k) {
    	return (l + l) * ((Math.cos(k) / (Math.pow(k, 4.0) * t)) * l);
    }
    
    def code(t, l, k):
    	return (l + l) * ((math.cos(k) / (math.pow(k, 4.0) * t)) * l)
    
    function code(t, l, k)
    	return Float64(Float64(l + l) * Float64(Float64(cos(k) / Float64((k ^ 4.0) * t)) * l))
    end
    
    function tmp = code(t, l, k)
    	tmp = (l + l) * ((cos(k) / ((k ^ 4.0) * t)) * l);
    end
    
    code[t_, l_, k_] := N[(N[(l + l), $MachinePrecision] * N[(N[(N[Cos[k], $MachinePrecision] / N[(N[Power[k, 4.0], $MachinePrecision] * t), $MachinePrecision]), $MachinePrecision] * l), $MachinePrecision]), $MachinePrecision]
    
    \left(\ell + \ell\right) \cdot \left(\frac{\cos k}{{k}^{4} \cdot t} \cdot \ell\right)
    
    Derivation
    1. Initial program 35.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)} \]
    2. Taylor expanded in t around 0

      \[\leadsto \color{blue}{2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
    3. Step-by-step derivation
      1. lower-*.f64N/A

        \[\leadsto 2 \cdot \color{blue}{\frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      2. lower-/.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      3. lower-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2}} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
      4. lower-pow.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{\color{blue}{k}}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
      5. lower-cos.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{\color{blue}{2}} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
      6. lower-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \color{blue}{\left(t \cdot {\sin k}^{2}\right)}} \]
      7. lower-pow.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(\color{blue}{t} \cdot {\sin k}^{2}\right)} \]
      8. lower-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot \color{blue}{{\sin k}^{2}}\right)} \]
      9. lower-pow.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{\color{blue}{2}}\right)} \]
      10. lower-sin.f6473.0%

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
    4. Applied rewrites73.0%

      \[\leadsto \color{blue}{2 \cdot \frac{{\ell}^{2} \cdot \cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
    5. Step-by-step derivation
      1. lift-/.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}} \]
      2. lift-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2} \cdot \cos k}{\color{blue}{{k}^{2}} \cdot \left(t \cdot {\sin k}^{2}\right)} \]
      3. associate-/l*N/A

        \[\leadsto 2 \cdot \left({\ell}^{2} \cdot \color{blue}{\frac{\cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}}\right) \]
      4. lift-pow.f64N/A

        \[\leadsto 2 \cdot \left({\ell}^{2} \cdot \frac{\color{blue}{\cos k}}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}\right) \]
      5. pow2N/A

        \[\leadsto 2 \cdot \left(\left(\ell \cdot \ell\right) \cdot \frac{\color{blue}{\cos k}}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}\right) \]
      6. associate-*l*N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \color{blue}{\left(\ell \cdot \frac{\cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}\right)}\right) \]
      7. lower-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \color{blue}{\left(\ell \cdot \frac{\cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}\right)}\right) \]
      8. lower-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \color{blue}{\frac{\cos k}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}}\right)\right) \]
      9. lower-/.f6481.6%

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\color{blue}{{k}^{2} \cdot \left(t \cdot {\sin k}^{2}\right)}}\right)\right) \]
      10. lift-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{{k}^{2} \cdot \color{blue}{\left(t \cdot {\sin k}^{2}\right)}}\right)\right) \]
      11. lift-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{{k}^{2} \cdot \left(t \cdot \color{blue}{{\sin k}^{2}}\right)}\right)\right) \]
      12. associate-*r*N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left({k}^{2} \cdot t\right) \cdot \color{blue}{{\sin k}^{2}}}\right)\right) \]
      13. lower-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left({k}^{2} \cdot t\right) \cdot \color{blue}{{\sin k}^{2}}}\right)\right) \]
      14. lower-*.f6481.6%

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left({k}^{2} \cdot t\right) \cdot {\color{blue}{\sin k}}^{2}}\right)\right) \]
      15. lift-pow.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left({k}^{2} \cdot t\right) \cdot {\sin \color{blue}{k}}^{2}}\right)\right) \]
      16. unpow2N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot {\sin \color{blue}{k}}^{2}}\right)\right) \]
      17. lower-*.f6481.6%

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot {\sin \color{blue}{k}}^{2}}\right)\right) \]
      18. lift-pow.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot {\sin k}^{\color{blue}{2}}}\right)\right) \]
      19. unpow2N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(\sin k \cdot \color{blue}{\sin k}\right)}\right)\right) \]
      20. lift-sin.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(\sin k \cdot \sin \color{blue}{k}\right)}\right)\right) \]
      21. lift-sin.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(\sin k \cdot \sin k\right)}\right)\right) \]
      22. sqr-sin-aN/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(\frac{1}{2} - \color{blue}{\frac{1}{2} \cdot \cos \left(2 \cdot k\right)}\right)}\right)\right) \]
    6. Applied rewrites75.0%

      \[\leadsto 2 \cdot \left(\ell \cdot \color{blue}{\left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(0.5 - 0.5 \cdot \cos \left(k + k\right)\right)}\right)}\right) \]
    7. Step-by-step derivation
      1. lift-*.f64N/A

        \[\leadsto 2 \cdot \color{blue}{\left(\ell \cdot \left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)}\right)\right)} \]
      2. lift-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \color{blue}{\left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)}\right)}\right) \]
      3. associate-*r*N/A

        \[\leadsto \left(2 \cdot \ell\right) \cdot \color{blue}{\left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)}\right)} \]
      4. lower-*.f64N/A

        \[\leadsto \left(2 \cdot \ell\right) \cdot \color{blue}{\left(\ell \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)}\right)} \]
      5. count-2-revN/A

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\color{blue}{\ell} \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)}\right) \]
      6. lower-+.f6475.0%

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\color{blue}{\ell} \cdot \frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(0.5 - 0.5 \cdot \cos \left(k + k\right)\right)}\right) \]
      7. lift-*.f64N/A

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\ell \cdot \color{blue}{\frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)}}\right) \]
      8. *-commutativeN/A

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(\frac{1}{2} - \frac{1}{2} \cdot \cos \left(k + k\right)\right)} \cdot \color{blue}{\ell}\right) \]
      9. lower-*.f6475.0%

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\frac{\cos k}{\left(\left(k \cdot k\right) \cdot t\right) \cdot \left(0.5 - 0.5 \cdot \cos \left(k + k\right)\right)} \cdot \color{blue}{\ell}\right) \]
    8. Applied rewrites75.0%

      \[\leadsto \left(\ell + \ell\right) \cdot \color{blue}{\left(\frac{\cos k}{\mathsf{fma}\left(-0.5, \cos \left(k + k\right), 0.5\right) \cdot \left(\left(k \cdot k\right) \cdot t\right)} \cdot \ell\right)} \]
    9. Taylor expanded in k around 0

      \[\leadsto \left(\ell + \ell\right) \cdot \left(\frac{\cos k}{{k}^{4} \cdot t} \cdot \ell\right) \]
    10. Step-by-step derivation
      1. lower-*.f64N/A

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\frac{\cos k}{{k}^{4} \cdot t} \cdot \ell\right) \]
      2. lower-pow.f6469.5%

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\frac{\cos k}{{k}^{4} \cdot t} \cdot \ell\right) \]
    11. Applied rewrites69.5%

      \[\leadsto \left(\ell + \ell\right) \cdot \left(\frac{\cos k}{{k}^{4} \cdot t} \cdot \ell\right) \]
    12. Add Preprocessing

    Alternative 9: 69.4% accurate, 4.4× speedup?

    \[2 \cdot \left(\ell \cdot \frac{{k}^{-4} \cdot \ell}{t}\right) \]
    (FPCore (t l k)
      :precision binary64
      (* 2.0 (* l (/ (* (pow k -4.0) l) t))))
    double code(double t, double l, double k) {
    	return 2.0 * (l * ((pow(k, -4.0) * l) / t));
    }
    
    module fmin_fmax_functions
        implicit none
        private
        public fmax
        public fmin
    
        interface fmax
            module procedure fmax88
            module procedure fmax44
            module procedure fmax84
            module procedure fmax48
        end interface
        interface fmin
            module procedure fmin88
            module procedure fmin44
            module procedure fmin84
            module procedure fmin48
        end interface
    contains
        real(8) function fmax88(x, y) result (res)
            real(8), intent (in) :: x
            real(8), intent (in) :: y
            res = merge(y, merge(x, max(x, y), y /= y), x /= x)
        end function
        real(4) function fmax44(x, y) result (res)
            real(4), intent (in) :: x
            real(4), intent (in) :: y
            res = merge(y, merge(x, max(x, y), y /= y), x /= x)
        end function
        real(8) function fmax84(x, y) result(res)
            real(8), intent (in) :: x
            real(4), intent (in) :: y
            res = merge(dble(y), merge(x, max(x, dble(y)), y /= y), x /= x)
        end function
        real(8) function fmax48(x, y) result(res)
            real(4), intent (in) :: x
            real(8), intent (in) :: y
            res = merge(y, merge(dble(x), max(dble(x), y), y /= y), x /= x)
        end function
        real(8) function fmin88(x, y) result (res)
            real(8), intent (in) :: x
            real(8), intent (in) :: y
            res = merge(y, merge(x, min(x, y), y /= y), x /= x)
        end function
        real(4) function fmin44(x, y) result (res)
            real(4), intent (in) :: x
            real(4), intent (in) :: y
            res = merge(y, merge(x, min(x, y), y /= y), x /= x)
        end function
        real(8) function fmin84(x, y) result(res)
            real(8), intent (in) :: x
            real(4), intent (in) :: y
            res = merge(dble(y), merge(x, min(x, dble(y)), y /= y), x /= x)
        end function
        real(8) function fmin48(x, y) result(res)
            real(4), intent (in) :: x
            real(8), intent (in) :: y
            res = merge(y, merge(dble(x), min(dble(x), y), y /= y), x /= x)
        end function
    end module
    
    real(8) function code(t, l, k)
    use fmin_fmax_functions
        real(8), intent (in) :: t
        real(8), intent (in) :: l
        real(8), intent (in) :: k
        code = 2.0d0 * (l * (((k ** (-4.0d0)) * l) / t))
    end function
    
    public static double code(double t, double l, double k) {
    	return 2.0 * (l * ((Math.pow(k, -4.0) * l) / t));
    }
    
    def code(t, l, k):
    	return 2.0 * (l * ((math.pow(k, -4.0) * l) / t))
    
    function code(t, l, k)
    	return Float64(2.0 * Float64(l * Float64(Float64((k ^ -4.0) * l) / t)))
    end
    
    function tmp = code(t, l, k)
    	tmp = 2.0 * (l * (((k ^ -4.0) * l) / t));
    end
    
    code[t_, l_, k_] := N[(2.0 * N[(l * N[(N[(N[Power[k, -4.0], $MachinePrecision] * l), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
    
    2 \cdot \left(\ell \cdot \frac{{k}^{-4} \cdot \ell}{t}\right)
    
    Derivation
    1. Initial program 35.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)} \]
    2. Taylor expanded in k around 0

      \[\leadsto \color{blue}{2 \cdot \frac{{\ell}^{2}}{{k}^{4} \cdot t}} \]
    3. Step-by-step derivation
      1. lower-*.f64N/A

        \[\leadsto 2 \cdot \color{blue}{\frac{{\ell}^{2}}{{k}^{4} \cdot t}} \]
      2. lower-/.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2}}{\color{blue}{{k}^{4} \cdot t}} \]
      3. lower-pow.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2}}{\color{blue}{{k}^{4}} \cdot t} \]
      4. lower-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2}}{{k}^{4} \cdot \color{blue}{t}} \]
      5. lower-pow.f6462.4%

        \[\leadsto 2 \cdot \frac{{\ell}^{2}}{{k}^{4} \cdot t} \]
    4. Applied rewrites62.4%

      \[\leadsto \color{blue}{2 \cdot \frac{{\ell}^{2}}{{k}^{4} \cdot t}} \]
    5. Step-by-step derivation
      1. lift-/.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2}}{\color{blue}{{k}^{4} \cdot t}} \]
      2. mult-flipN/A

        \[\leadsto 2 \cdot \left({\ell}^{2} \cdot \color{blue}{\frac{1}{{k}^{4} \cdot t}}\right) \]
      3. lift-pow.f64N/A

        \[\leadsto 2 \cdot \left({\ell}^{2} \cdot \frac{\color{blue}{1}}{{k}^{4} \cdot t}\right) \]
      4. pow2N/A

        \[\leadsto 2 \cdot \left(\left(\ell \cdot \ell\right) \cdot \frac{\color{blue}{1}}{{k}^{4} \cdot t}\right) \]
      5. associate-*l*N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \color{blue}{\left(\ell \cdot \frac{1}{{k}^{4} \cdot t}\right)}\right) \]
      6. lower-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \color{blue}{\left(\ell \cdot \frac{1}{{k}^{4} \cdot t}\right)}\right) \]
      7. lower-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \color{blue}{\frac{1}{{k}^{4} \cdot t}}\right)\right) \]
      8. lift-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{1}{{k}^{4} \cdot \color{blue}{t}}\right)\right) \]
      9. associate-/r*N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\frac{1}{{k}^{4}}}{\color{blue}{t}}\right)\right) \]
      10. lower-/.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\frac{1}{{k}^{4}}}{\color{blue}{t}}\right)\right) \]
      11. lift-pow.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\frac{1}{{k}^{4}}}{t}\right)\right) \]
      12. pow-flipN/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{{k}^{\left(\mathsf{neg}\left(4\right)\right)}}{t}\right)\right) \]
      13. lower-pow.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{{k}^{\left(\mathsf{neg}\left(4\right)\right)}}{t}\right)\right) \]
      14. metadata-eval68.5%

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{{k}^{-4}}{t}\right)\right) \]
    6. Applied rewrites68.5%

      \[\leadsto 2 \cdot \left(\ell \cdot \color{blue}{\left(\ell \cdot \frac{{k}^{-4}}{t}\right)}\right) \]
    7. Step-by-step derivation
      1. lift-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \color{blue}{\frac{{k}^{-4}}{t}}\right)\right) \]
      2. lift-/.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{{k}^{-4}}{\color{blue}{t}}\right)\right) \]
      3. associate-*r/N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \frac{\ell \cdot {k}^{-4}}{\color{blue}{t}}\right) \]
      4. lower-/.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \frac{\ell \cdot {k}^{-4}}{\color{blue}{t}}\right) \]
      5. *-commutativeN/A

        \[\leadsto 2 \cdot \left(\ell \cdot \frac{{k}^{-4} \cdot \ell}{t}\right) \]
      6. lower-*.f6469.4%

        \[\leadsto 2 \cdot \left(\ell \cdot \frac{{k}^{-4} \cdot \ell}{t}\right) \]
    8. Applied rewrites69.4%

      \[\leadsto 2 \cdot \left(\ell \cdot \frac{{k}^{-4} \cdot \ell}{\color{blue}{t}}\right) \]
    9. Add Preprocessing

    Alternative 10: 68.7% accurate, 4.4× speedup?

    \[\frac{\left(\ell + \ell\right) \cdot \left({k}^{-4} \cdot \ell\right)}{t} \]
    (FPCore (t l k)
      :precision binary64
      (/ (* (+ l l) (* (pow k -4.0) l)) t))
    double code(double t, double l, double k) {
    	return ((l + l) * (pow(k, -4.0) * l)) / t;
    }
    
    module fmin_fmax_functions
        implicit none
        private
        public fmax
        public fmin
    
        interface fmax
            module procedure fmax88
            module procedure fmax44
            module procedure fmax84
            module procedure fmax48
        end interface
        interface fmin
            module procedure fmin88
            module procedure fmin44
            module procedure fmin84
            module procedure fmin48
        end interface
    contains
        real(8) function fmax88(x, y) result (res)
            real(8), intent (in) :: x
            real(8), intent (in) :: y
            res = merge(y, merge(x, max(x, y), y /= y), x /= x)
        end function
        real(4) function fmax44(x, y) result (res)
            real(4), intent (in) :: x
            real(4), intent (in) :: y
            res = merge(y, merge(x, max(x, y), y /= y), x /= x)
        end function
        real(8) function fmax84(x, y) result(res)
            real(8), intent (in) :: x
            real(4), intent (in) :: y
            res = merge(dble(y), merge(x, max(x, dble(y)), y /= y), x /= x)
        end function
        real(8) function fmax48(x, y) result(res)
            real(4), intent (in) :: x
            real(8), intent (in) :: y
            res = merge(y, merge(dble(x), max(dble(x), y), y /= y), x /= x)
        end function
        real(8) function fmin88(x, y) result (res)
            real(8), intent (in) :: x
            real(8), intent (in) :: y
            res = merge(y, merge(x, min(x, y), y /= y), x /= x)
        end function
        real(4) function fmin44(x, y) result (res)
            real(4), intent (in) :: x
            real(4), intent (in) :: y
            res = merge(y, merge(x, min(x, y), y /= y), x /= x)
        end function
        real(8) function fmin84(x, y) result(res)
            real(8), intent (in) :: x
            real(4), intent (in) :: y
            res = merge(dble(y), merge(x, min(x, dble(y)), y /= y), x /= x)
        end function
        real(8) function fmin48(x, y) result(res)
            real(4), intent (in) :: x
            real(8), intent (in) :: y
            res = merge(y, merge(dble(x), min(dble(x), y), y /= y), x /= x)
        end function
    end module
    
    real(8) function code(t, l, k)
    use fmin_fmax_functions
        real(8), intent (in) :: t
        real(8), intent (in) :: l
        real(8), intent (in) :: k
        code = ((l + l) * ((k ** (-4.0d0)) * l)) / t
    end function
    
    public static double code(double t, double l, double k) {
    	return ((l + l) * (Math.pow(k, -4.0) * l)) / t;
    }
    
    def code(t, l, k):
    	return ((l + l) * (math.pow(k, -4.0) * l)) / t
    
    function code(t, l, k)
    	return Float64(Float64(Float64(l + l) * Float64((k ^ -4.0) * l)) / t)
    end
    
    function tmp = code(t, l, k)
    	tmp = ((l + l) * ((k ^ -4.0) * l)) / t;
    end
    
    code[t_, l_, k_] := N[(N[(N[(l + l), $MachinePrecision] * N[(N[Power[k, -4.0], $MachinePrecision] * l), $MachinePrecision]), $MachinePrecision] / t), $MachinePrecision]
    
    \frac{\left(\ell + \ell\right) \cdot \left({k}^{-4} \cdot \ell\right)}{t}
    
    Derivation
    1. Initial program 35.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)} \]
    2. Taylor expanded in k around 0

      \[\leadsto \color{blue}{2 \cdot \frac{{\ell}^{2}}{{k}^{4} \cdot t}} \]
    3. Step-by-step derivation
      1. lower-*.f64N/A

        \[\leadsto 2 \cdot \color{blue}{\frac{{\ell}^{2}}{{k}^{4} \cdot t}} \]
      2. lower-/.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2}}{\color{blue}{{k}^{4} \cdot t}} \]
      3. lower-pow.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2}}{\color{blue}{{k}^{4}} \cdot t} \]
      4. lower-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2}}{{k}^{4} \cdot \color{blue}{t}} \]
      5. lower-pow.f6462.4%

        \[\leadsto 2 \cdot \frac{{\ell}^{2}}{{k}^{4} \cdot t} \]
    4. Applied rewrites62.4%

      \[\leadsto \color{blue}{2 \cdot \frac{{\ell}^{2}}{{k}^{4} \cdot t}} \]
    5. Step-by-step derivation
      1. lift-/.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2}}{\color{blue}{{k}^{4} \cdot t}} \]
      2. mult-flipN/A

        \[\leadsto 2 \cdot \left({\ell}^{2} \cdot \color{blue}{\frac{1}{{k}^{4} \cdot t}}\right) \]
      3. lift-pow.f64N/A

        \[\leadsto 2 \cdot \left({\ell}^{2} \cdot \frac{\color{blue}{1}}{{k}^{4} \cdot t}\right) \]
      4. pow2N/A

        \[\leadsto 2 \cdot \left(\left(\ell \cdot \ell\right) \cdot \frac{\color{blue}{1}}{{k}^{4} \cdot t}\right) \]
      5. associate-*l*N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \color{blue}{\left(\ell \cdot \frac{1}{{k}^{4} \cdot t}\right)}\right) \]
      6. lower-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \color{blue}{\left(\ell \cdot \frac{1}{{k}^{4} \cdot t}\right)}\right) \]
      7. lower-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \color{blue}{\frac{1}{{k}^{4} \cdot t}}\right)\right) \]
      8. lift-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{1}{{k}^{4} \cdot \color{blue}{t}}\right)\right) \]
      9. associate-/r*N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\frac{1}{{k}^{4}}}{\color{blue}{t}}\right)\right) \]
      10. lower-/.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\frac{1}{{k}^{4}}}{\color{blue}{t}}\right)\right) \]
      11. lift-pow.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\frac{1}{{k}^{4}}}{t}\right)\right) \]
      12. pow-flipN/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{{k}^{\left(\mathsf{neg}\left(4\right)\right)}}{t}\right)\right) \]
      13. lower-pow.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{{k}^{\left(\mathsf{neg}\left(4\right)\right)}}{t}\right)\right) \]
      14. metadata-eval68.5%

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{{k}^{-4}}{t}\right)\right) \]
    6. Applied rewrites68.5%

      \[\leadsto 2 \cdot \left(\ell \cdot \color{blue}{\left(\ell \cdot \frac{{k}^{-4}}{t}\right)}\right) \]
    7. Step-by-step derivation
      1. lift-*.f64N/A

        \[\leadsto 2 \cdot \color{blue}{\left(\ell \cdot \left(\ell \cdot \frac{{k}^{-4}}{t}\right)\right)} \]
      2. lift-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \color{blue}{\left(\ell \cdot \frac{{k}^{-4}}{t}\right)}\right) \]
      3. associate-*r*N/A

        \[\leadsto \left(2 \cdot \ell\right) \cdot \color{blue}{\left(\ell \cdot \frac{{k}^{-4}}{t}\right)} \]
      4. lift-*.f64N/A

        \[\leadsto \left(2 \cdot \ell\right) \cdot \left(\ell \cdot \color{blue}{\frac{{k}^{-4}}{t}}\right) \]
      5. lift-/.f64N/A

        \[\leadsto \left(2 \cdot \ell\right) \cdot \left(\ell \cdot \frac{{k}^{-4}}{\color{blue}{t}}\right) \]
      6. associate-*r/N/A

        \[\leadsto \left(2 \cdot \ell\right) \cdot \frac{\ell \cdot {k}^{-4}}{\color{blue}{t}} \]
      7. associate-*r/N/A

        \[\leadsto \frac{\left(2 \cdot \ell\right) \cdot \left(\ell \cdot {k}^{-4}\right)}{\color{blue}{t}} \]
      8. lower-/.f64N/A

        \[\leadsto \frac{\left(2 \cdot \ell\right) \cdot \left(\ell \cdot {k}^{-4}\right)}{\color{blue}{t}} \]
      9. lower-*.f64N/A

        \[\leadsto \frac{\left(2 \cdot \ell\right) \cdot \left(\ell \cdot {k}^{-4}\right)}{t} \]
      10. count-2-revN/A

        \[\leadsto \frac{\left(\ell + \ell\right) \cdot \left(\ell \cdot {k}^{-4}\right)}{t} \]
      11. lower-+.f64N/A

        \[\leadsto \frac{\left(\ell + \ell\right) \cdot \left(\ell \cdot {k}^{-4}\right)}{t} \]
      12. *-commutativeN/A

        \[\leadsto \frac{\left(\ell + \ell\right) \cdot \left({k}^{-4} \cdot \ell\right)}{t} \]
      13. lower-*.f6468.7%

        \[\leadsto \frac{\left(\ell + \ell\right) \cdot \left({k}^{-4} \cdot \ell\right)}{t} \]
    8. Applied rewrites68.7%

      \[\leadsto \frac{\left(\ell + \ell\right) \cdot \left({k}^{-4} \cdot \ell\right)}{\color{blue}{t}} \]
    9. Add Preprocessing

    Alternative 11: 68.5% accurate, 4.4× speedup?

    \[\left(\ell + \ell\right) \cdot \left(\frac{{k}^{-4}}{t} \cdot \ell\right) \]
    (FPCore (t l k)
      :precision binary64
      (* (+ l l) (* (/ (pow k -4.0) t) l)))
    double code(double t, double l, double k) {
    	return (l + l) * ((pow(k, -4.0) / t) * l);
    }
    
    module fmin_fmax_functions
        implicit none
        private
        public fmax
        public fmin
    
        interface fmax
            module procedure fmax88
            module procedure fmax44
            module procedure fmax84
            module procedure fmax48
        end interface
        interface fmin
            module procedure fmin88
            module procedure fmin44
            module procedure fmin84
            module procedure fmin48
        end interface
    contains
        real(8) function fmax88(x, y) result (res)
            real(8), intent (in) :: x
            real(8), intent (in) :: y
            res = merge(y, merge(x, max(x, y), y /= y), x /= x)
        end function
        real(4) function fmax44(x, y) result (res)
            real(4), intent (in) :: x
            real(4), intent (in) :: y
            res = merge(y, merge(x, max(x, y), y /= y), x /= x)
        end function
        real(8) function fmax84(x, y) result(res)
            real(8), intent (in) :: x
            real(4), intent (in) :: y
            res = merge(dble(y), merge(x, max(x, dble(y)), y /= y), x /= x)
        end function
        real(8) function fmax48(x, y) result(res)
            real(4), intent (in) :: x
            real(8), intent (in) :: y
            res = merge(y, merge(dble(x), max(dble(x), y), y /= y), x /= x)
        end function
        real(8) function fmin88(x, y) result (res)
            real(8), intent (in) :: x
            real(8), intent (in) :: y
            res = merge(y, merge(x, min(x, y), y /= y), x /= x)
        end function
        real(4) function fmin44(x, y) result (res)
            real(4), intent (in) :: x
            real(4), intent (in) :: y
            res = merge(y, merge(x, min(x, y), y /= y), x /= x)
        end function
        real(8) function fmin84(x, y) result(res)
            real(8), intent (in) :: x
            real(4), intent (in) :: y
            res = merge(dble(y), merge(x, min(x, dble(y)), y /= y), x /= x)
        end function
        real(8) function fmin48(x, y) result(res)
            real(4), intent (in) :: x
            real(8), intent (in) :: y
            res = merge(y, merge(dble(x), min(dble(x), y), y /= y), x /= x)
        end function
    end module
    
    real(8) function code(t, l, k)
    use fmin_fmax_functions
        real(8), intent (in) :: t
        real(8), intent (in) :: l
        real(8), intent (in) :: k
        code = (l + l) * (((k ** (-4.0d0)) / t) * l)
    end function
    
    public static double code(double t, double l, double k) {
    	return (l + l) * ((Math.pow(k, -4.0) / t) * l);
    }
    
    def code(t, l, k):
    	return (l + l) * ((math.pow(k, -4.0) / t) * l)
    
    function code(t, l, k)
    	return Float64(Float64(l + l) * Float64(Float64((k ^ -4.0) / t) * l))
    end
    
    function tmp = code(t, l, k)
    	tmp = (l + l) * (((k ^ -4.0) / t) * l);
    end
    
    code[t_, l_, k_] := N[(N[(l + l), $MachinePrecision] * N[(N[(N[Power[k, -4.0], $MachinePrecision] / t), $MachinePrecision] * l), $MachinePrecision]), $MachinePrecision]
    
    \left(\ell + \ell\right) \cdot \left(\frac{{k}^{-4}}{t} \cdot \ell\right)
    
    Derivation
    1. Initial program 35.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)} \]
    2. Taylor expanded in k around 0

      \[\leadsto \color{blue}{2 \cdot \frac{{\ell}^{2}}{{k}^{4} \cdot t}} \]
    3. Step-by-step derivation
      1. lower-*.f64N/A

        \[\leadsto 2 \cdot \color{blue}{\frac{{\ell}^{2}}{{k}^{4} \cdot t}} \]
      2. lower-/.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2}}{\color{blue}{{k}^{4} \cdot t}} \]
      3. lower-pow.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2}}{\color{blue}{{k}^{4}} \cdot t} \]
      4. lower-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2}}{{k}^{4} \cdot \color{blue}{t}} \]
      5. lower-pow.f6462.4%

        \[\leadsto 2 \cdot \frac{{\ell}^{2}}{{k}^{4} \cdot t} \]
    4. Applied rewrites62.4%

      \[\leadsto \color{blue}{2 \cdot \frac{{\ell}^{2}}{{k}^{4} \cdot t}} \]
    5. Step-by-step derivation
      1. lift-/.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2}}{\color{blue}{{k}^{4} \cdot t}} \]
      2. mult-flipN/A

        \[\leadsto 2 \cdot \left({\ell}^{2} \cdot \color{blue}{\frac{1}{{k}^{4} \cdot t}}\right) \]
      3. lift-pow.f64N/A

        \[\leadsto 2 \cdot \left({\ell}^{2} \cdot \frac{\color{blue}{1}}{{k}^{4} \cdot t}\right) \]
      4. pow2N/A

        \[\leadsto 2 \cdot \left(\left(\ell \cdot \ell\right) \cdot \frac{\color{blue}{1}}{{k}^{4} \cdot t}\right) \]
      5. associate-*l*N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \color{blue}{\left(\ell \cdot \frac{1}{{k}^{4} \cdot t}\right)}\right) \]
      6. lower-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \color{blue}{\left(\ell \cdot \frac{1}{{k}^{4} \cdot t}\right)}\right) \]
      7. lower-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \color{blue}{\frac{1}{{k}^{4} \cdot t}}\right)\right) \]
      8. lift-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{1}{{k}^{4} \cdot \color{blue}{t}}\right)\right) \]
      9. associate-/r*N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\frac{1}{{k}^{4}}}{\color{blue}{t}}\right)\right) \]
      10. lower-/.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\frac{1}{{k}^{4}}}{\color{blue}{t}}\right)\right) \]
      11. lift-pow.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\frac{1}{{k}^{4}}}{t}\right)\right) \]
      12. pow-flipN/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{{k}^{\left(\mathsf{neg}\left(4\right)\right)}}{t}\right)\right) \]
      13. lower-pow.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{{k}^{\left(\mathsf{neg}\left(4\right)\right)}}{t}\right)\right) \]
      14. metadata-eval68.5%

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{{k}^{-4}}{t}\right)\right) \]
    6. Applied rewrites68.5%

      \[\leadsto 2 \cdot \left(\ell \cdot \color{blue}{\left(\ell \cdot \frac{{k}^{-4}}{t}\right)}\right) \]
    7. Step-by-step derivation
      1. lift-*.f64N/A

        \[\leadsto 2 \cdot \color{blue}{\left(\ell \cdot \left(\ell \cdot \frac{{k}^{-4}}{t}\right)\right)} \]
      2. lift-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \color{blue}{\left(\ell \cdot \frac{{k}^{-4}}{t}\right)}\right) \]
      3. associate-*r*N/A

        \[\leadsto \left(2 \cdot \ell\right) \cdot \color{blue}{\left(\ell \cdot \frac{{k}^{-4}}{t}\right)} \]
      4. lower-*.f64N/A

        \[\leadsto \left(2 \cdot \ell\right) \cdot \color{blue}{\left(\ell \cdot \frac{{k}^{-4}}{t}\right)} \]
      5. count-2-revN/A

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\color{blue}{\ell} \cdot \frac{{k}^{-4}}{t}\right) \]
      6. lower-+.f6468.5%

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\color{blue}{\ell} \cdot \frac{{k}^{-4}}{t}\right) \]
      7. lift-*.f64N/A

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\ell \cdot \color{blue}{\frac{{k}^{-4}}{t}}\right) \]
      8. *-commutativeN/A

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\frac{{k}^{-4}}{t} \cdot \color{blue}{\ell}\right) \]
      9. lower-*.f6468.5%

        \[\leadsto \left(\ell + \ell\right) \cdot \left(\frac{{k}^{-4}}{t} \cdot \color{blue}{\ell}\right) \]
    8. Applied rewrites68.5%

      \[\leadsto \left(\ell + \ell\right) \cdot \color{blue}{\left(\frac{{k}^{-4}}{t} \cdot \ell\right)} \]
    9. Add Preprocessing

    Alternative 12: 62.3% accurate, 4.4× speedup?

    \[\left(\left(\ell + \ell\right) \cdot \ell\right) \cdot \frac{{k}^{-4}}{t} \]
    (FPCore (t l k)
      :precision binary64
      (* (* (+ l l) l) (/ (pow k -4.0) t)))
    double code(double t, double l, double k) {
    	return ((l + l) * l) * (pow(k, -4.0) / t);
    }
    
    module fmin_fmax_functions
        implicit none
        private
        public fmax
        public fmin
    
        interface fmax
            module procedure fmax88
            module procedure fmax44
            module procedure fmax84
            module procedure fmax48
        end interface
        interface fmin
            module procedure fmin88
            module procedure fmin44
            module procedure fmin84
            module procedure fmin48
        end interface
    contains
        real(8) function fmax88(x, y) result (res)
            real(8), intent (in) :: x
            real(8), intent (in) :: y
            res = merge(y, merge(x, max(x, y), y /= y), x /= x)
        end function
        real(4) function fmax44(x, y) result (res)
            real(4), intent (in) :: x
            real(4), intent (in) :: y
            res = merge(y, merge(x, max(x, y), y /= y), x /= x)
        end function
        real(8) function fmax84(x, y) result(res)
            real(8), intent (in) :: x
            real(4), intent (in) :: y
            res = merge(dble(y), merge(x, max(x, dble(y)), y /= y), x /= x)
        end function
        real(8) function fmax48(x, y) result(res)
            real(4), intent (in) :: x
            real(8), intent (in) :: y
            res = merge(y, merge(dble(x), max(dble(x), y), y /= y), x /= x)
        end function
        real(8) function fmin88(x, y) result (res)
            real(8), intent (in) :: x
            real(8), intent (in) :: y
            res = merge(y, merge(x, min(x, y), y /= y), x /= x)
        end function
        real(4) function fmin44(x, y) result (res)
            real(4), intent (in) :: x
            real(4), intent (in) :: y
            res = merge(y, merge(x, min(x, y), y /= y), x /= x)
        end function
        real(8) function fmin84(x, y) result(res)
            real(8), intent (in) :: x
            real(4), intent (in) :: y
            res = merge(dble(y), merge(x, min(x, dble(y)), y /= y), x /= x)
        end function
        real(8) function fmin48(x, y) result(res)
            real(4), intent (in) :: x
            real(8), intent (in) :: y
            res = merge(y, merge(dble(x), min(dble(x), y), y /= y), x /= x)
        end function
    end module
    
    real(8) function code(t, l, k)
    use fmin_fmax_functions
        real(8), intent (in) :: t
        real(8), intent (in) :: l
        real(8), intent (in) :: k
        code = ((l + l) * l) * ((k ** (-4.0d0)) / t)
    end function
    
    public static double code(double t, double l, double k) {
    	return ((l + l) * l) * (Math.pow(k, -4.0) / t);
    }
    
    def code(t, l, k):
    	return ((l + l) * l) * (math.pow(k, -4.0) / t)
    
    function code(t, l, k)
    	return Float64(Float64(Float64(l + l) * l) * Float64((k ^ -4.0) / t))
    end
    
    function tmp = code(t, l, k)
    	tmp = ((l + l) * l) * ((k ^ -4.0) / t);
    end
    
    code[t_, l_, k_] := N[(N[(N[(l + l), $MachinePrecision] * l), $MachinePrecision] * N[(N[Power[k, -4.0], $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision]
    
    \left(\left(\ell + \ell\right) \cdot \ell\right) \cdot \frac{{k}^{-4}}{t}
    
    Derivation
    1. Initial program 35.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)} \]
    2. Taylor expanded in k around 0

      \[\leadsto \color{blue}{2 \cdot \frac{{\ell}^{2}}{{k}^{4} \cdot t}} \]
    3. Step-by-step derivation
      1. lower-*.f64N/A

        \[\leadsto 2 \cdot \color{blue}{\frac{{\ell}^{2}}{{k}^{4} \cdot t}} \]
      2. lower-/.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2}}{\color{blue}{{k}^{4} \cdot t}} \]
      3. lower-pow.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2}}{\color{blue}{{k}^{4}} \cdot t} \]
      4. lower-*.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2}}{{k}^{4} \cdot \color{blue}{t}} \]
      5. lower-pow.f6462.4%

        \[\leadsto 2 \cdot \frac{{\ell}^{2}}{{k}^{4} \cdot t} \]
    4. Applied rewrites62.4%

      \[\leadsto \color{blue}{2 \cdot \frac{{\ell}^{2}}{{k}^{4} \cdot t}} \]
    5. Step-by-step derivation
      1. lift-/.f64N/A

        \[\leadsto 2 \cdot \frac{{\ell}^{2}}{\color{blue}{{k}^{4} \cdot t}} \]
      2. mult-flipN/A

        \[\leadsto 2 \cdot \left({\ell}^{2} \cdot \color{blue}{\frac{1}{{k}^{4} \cdot t}}\right) \]
      3. lift-pow.f64N/A

        \[\leadsto 2 \cdot \left({\ell}^{2} \cdot \frac{\color{blue}{1}}{{k}^{4} \cdot t}\right) \]
      4. pow2N/A

        \[\leadsto 2 \cdot \left(\left(\ell \cdot \ell\right) \cdot \frac{\color{blue}{1}}{{k}^{4} \cdot t}\right) \]
      5. associate-*l*N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \color{blue}{\left(\ell \cdot \frac{1}{{k}^{4} \cdot t}\right)}\right) \]
      6. lower-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \color{blue}{\left(\ell \cdot \frac{1}{{k}^{4} \cdot t}\right)}\right) \]
      7. lower-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \color{blue}{\frac{1}{{k}^{4} \cdot t}}\right)\right) \]
      8. lift-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{1}{{k}^{4} \cdot \color{blue}{t}}\right)\right) \]
      9. associate-/r*N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\frac{1}{{k}^{4}}}{\color{blue}{t}}\right)\right) \]
      10. lower-/.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\frac{1}{{k}^{4}}}{\color{blue}{t}}\right)\right) \]
      11. lift-pow.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{\frac{1}{{k}^{4}}}{t}\right)\right) \]
      12. pow-flipN/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{{k}^{\left(\mathsf{neg}\left(4\right)\right)}}{t}\right)\right) \]
      13. lower-pow.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{{k}^{\left(\mathsf{neg}\left(4\right)\right)}}{t}\right)\right) \]
      14. metadata-eval68.5%

        \[\leadsto 2 \cdot \left(\ell \cdot \left(\ell \cdot \frac{{k}^{-4}}{t}\right)\right) \]
    6. Applied rewrites68.5%

      \[\leadsto 2 \cdot \left(\ell \cdot \color{blue}{\left(\ell \cdot \frac{{k}^{-4}}{t}\right)}\right) \]
    7. Step-by-step derivation
      1. lift-*.f64N/A

        \[\leadsto 2 \cdot \color{blue}{\left(\ell \cdot \left(\ell \cdot \frac{{k}^{-4}}{t}\right)\right)} \]
      2. lift-*.f64N/A

        \[\leadsto 2 \cdot \left(\ell \cdot \color{blue}{\left(\ell \cdot \frac{{k}^{-4}}{t}\right)}\right) \]
      3. associate-*r*N/A

        \[\leadsto \left(2 \cdot \ell\right) \cdot \color{blue}{\left(\ell \cdot \frac{{k}^{-4}}{t}\right)} \]
      4. lift-*.f64N/A

        \[\leadsto \left(2 \cdot \ell\right) \cdot \left(\ell \cdot \color{blue}{\frac{{k}^{-4}}{t}}\right) \]
      5. associate-*r*N/A

        \[\leadsto \left(\left(2 \cdot \ell\right) \cdot \ell\right) \cdot \color{blue}{\frac{{k}^{-4}}{t}} \]
      6. lower-*.f64N/A

        \[\leadsto \left(\left(2 \cdot \ell\right) \cdot \ell\right) \cdot \color{blue}{\frac{{k}^{-4}}{t}} \]
      7. lower-*.f64N/A

        \[\leadsto \left(\left(2 \cdot \ell\right) \cdot \ell\right) \cdot \frac{\color{blue}{{k}^{-4}}}{t} \]
      8. count-2-revN/A

        \[\leadsto \left(\left(\ell + \ell\right) \cdot \ell\right) \cdot \frac{{\color{blue}{k}}^{-4}}{t} \]
      9. lower-+.f6462.3%

        \[\leadsto \left(\left(\ell + \ell\right) \cdot \ell\right) \cdot \frac{{\color{blue}{k}}^{-4}}{t} \]
    8. Applied rewrites62.3%

      \[\leadsto \left(\left(\ell + \ell\right) \cdot \ell\right) \cdot \color{blue}{\frac{{k}^{-4}}{t}} \]
    9. Add Preprocessing

    Alternative 13: 34.4% accurate, 3.1× speedup?

    \[\mathsf{copysign}\left(1, t\right) \cdot \begin{array}{l} \mathbf{if}\;\left|t\right| \leq 50000000:\\ \;\;\;\;\frac{2}{\left(\frac{\frac{\left|t\right|}{\ell} \cdot \left(\left|t\right| \cdot \left|t\right|\right)}{\ell} \cdot \left(k \cdot k\right)\right) \cdot \left(1 - 1\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{2}{\left(\left|t\right| \cdot \left(\frac{\left|t\right|}{\ell \cdot \ell} \cdot \left(\left(k \cdot k\right) \cdot \left|t\right|\right)\right)\right) \cdot \left(1 - 1\right)}\\ \end{array} \]
    (FPCore (t l k)
      :precision binary64
      (*
     (copysign 1.0 t)
     (if (<= (fabs t) 50000000.0)
       (/
        2.0
        (*
         (* (/ (* (/ (fabs t) l) (* (fabs t) (fabs t))) l) (* k k))
         (- 1.0 1.0)))
       (/
        2.0
        (*
         (* (fabs t) (* (/ (fabs t) (* l l)) (* (* k k) (fabs t))))
         (- 1.0 1.0))))))
    double code(double t, double l, double k) {
    	double tmp;
    	if (fabs(t) <= 50000000.0) {
    		tmp = 2.0 / (((((fabs(t) / l) * (fabs(t) * fabs(t))) / l) * (k * k)) * (1.0 - 1.0));
    	} else {
    		tmp = 2.0 / ((fabs(t) * ((fabs(t) / (l * l)) * ((k * k) * fabs(t)))) * (1.0 - 1.0));
    	}
    	return copysign(1.0, t) * tmp;
    }
    
    public static double code(double t, double l, double k) {
    	double tmp;
    	if (Math.abs(t) <= 50000000.0) {
    		tmp = 2.0 / (((((Math.abs(t) / l) * (Math.abs(t) * Math.abs(t))) / l) * (k * k)) * (1.0 - 1.0));
    	} else {
    		tmp = 2.0 / ((Math.abs(t) * ((Math.abs(t) / (l * l)) * ((k * k) * Math.abs(t)))) * (1.0 - 1.0));
    	}
    	return Math.copySign(1.0, t) * tmp;
    }
    
    def code(t, l, k):
    	tmp = 0
    	if math.fabs(t) <= 50000000.0:
    		tmp = 2.0 / (((((math.fabs(t) / l) * (math.fabs(t) * math.fabs(t))) / l) * (k * k)) * (1.0 - 1.0))
    	else:
    		tmp = 2.0 / ((math.fabs(t) * ((math.fabs(t) / (l * l)) * ((k * k) * math.fabs(t)))) * (1.0 - 1.0))
    	return math.copysign(1.0, t) * tmp
    
    function code(t, l, k)
    	tmp = 0.0
    	if (abs(t) <= 50000000.0)
    		tmp = Float64(2.0 / Float64(Float64(Float64(Float64(Float64(abs(t) / l) * Float64(abs(t) * abs(t))) / l) * Float64(k * k)) * Float64(1.0 - 1.0)));
    	else
    		tmp = Float64(2.0 / Float64(Float64(abs(t) * Float64(Float64(abs(t) / Float64(l * l)) * Float64(Float64(k * k) * abs(t)))) * Float64(1.0 - 1.0)));
    	end
    	return Float64(copysign(1.0, t) * tmp)
    end
    
    function tmp_2 = code(t, l, k)
    	tmp = 0.0;
    	if (abs(t) <= 50000000.0)
    		tmp = 2.0 / (((((abs(t) / l) * (abs(t) * abs(t))) / l) * (k * k)) * (1.0 - 1.0));
    	else
    		tmp = 2.0 / ((abs(t) * ((abs(t) / (l * l)) * ((k * k) * abs(t)))) * (1.0 - 1.0));
    	end
    	tmp_2 = (sign(t) * abs(1.0)) * tmp;
    end
    
    code[t_, l_, k_] := N[(N[With[{TMP1 = Abs[1.0], TMP2 = Sign[t]}, TMP1 * If[TMP2 == 0, 1, TMP2]], $MachinePrecision] * If[LessEqual[N[Abs[t], $MachinePrecision], 50000000.0], N[(2.0 / N[(N[(N[(N[(N[(N[Abs[t], $MachinePrecision] / l), $MachinePrecision] * N[(N[Abs[t], $MachinePrecision] * N[Abs[t], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / l), $MachinePrecision] * N[(k * k), $MachinePrecision]), $MachinePrecision] * N[(1.0 - 1.0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(2.0 / N[(N[(N[Abs[t], $MachinePrecision] * N[(N[(N[Abs[t], $MachinePrecision] / N[(l * l), $MachinePrecision]), $MachinePrecision] * N[(N[(k * k), $MachinePrecision] * N[Abs[t], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * N[(1.0 - 1.0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]), $MachinePrecision]
    
    \mathsf{copysign}\left(1, t\right) \cdot \begin{array}{l}
    \mathbf{if}\;\left|t\right| \leq 50000000:\\
    \;\;\;\;\frac{2}{\left(\frac{\frac{\left|t\right|}{\ell} \cdot \left(\left|t\right| \cdot \left|t\right|\right)}{\ell} \cdot \left(k \cdot k\right)\right) \cdot \left(1 - 1\right)}\\
    
    \mathbf{else}:\\
    \;\;\;\;\frac{2}{\left(\left|t\right| \cdot \left(\frac{\left|t\right|}{\ell \cdot \ell} \cdot \left(\left(k \cdot k\right) \cdot \left|t\right|\right)\right)\right) \cdot \left(1 - 1\right)}\\
    
    
    \end{array}
    
    Derivation
    1. Split input into 2 regimes
    2. if t < 5e7

      1. Initial program 35.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)} \]
      2. Taylor expanded in k around 0

        \[\leadsto \frac{2}{\color{blue}{\frac{{k}^{2} \cdot {t}^{3}}{{\ell}^{2}}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
      3. Step-by-step derivation
        1. lower-/.f64N/A

          \[\leadsto \frac{2}{\frac{{k}^{2} \cdot {t}^{3}}{\color{blue}{{\ell}^{2}}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        2. lower-*.f64N/A

          \[\leadsto \frac{2}{\frac{{k}^{2} \cdot {t}^{3}}{{\color{blue}{\ell}}^{2}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        3. lower-pow.f64N/A

          \[\leadsto \frac{2}{\frac{{k}^{2} \cdot {t}^{3}}{{\ell}^{2}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        4. lower-pow.f64N/A

          \[\leadsto \frac{2}{\frac{{k}^{2} \cdot {t}^{3}}{{\ell}^{2}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        5. lower-pow.f6434.0%

          \[\leadsto \frac{2}{\frac{{k}^{2} \cdot {t}^{3}}{{\ell}^{\color{blue}{2}}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
      4. Applied rewrites34.0%

        \[\leadsto \frac{2}{\color{blue}{\frac{{k}^{2} \cdot {t}^{3}}{{\ell}^{2}}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
      5. Step-by-step derivation
        1. lift-/.f64N/A

          \[\leadsto \frac{2}{\frac{{k}^{2} \cdot {t}^{3}}{\color{blue}{{\ell}^{2}}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        2. lift-*.f64N/A

          \[\leadsto \frac{2}{\frac{{k}^{2} \cdot {t}^{3}}{{\color{blue}{\ell}}^{2}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        3. associate-/l*N/A

          \[\leadsto \frac{2}{\left({k}^{2} \cdot \color{blue}{\frac{{t}^{3}}{{\ell}^{2}}}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        4. lift-pow.f64N/A

          \[\leadsto \frac{2}{\left({k}^{2} \cdot \frac{{t}^{3}}{{\color{blue}{\ell}}^{2}}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        5. lift-pow.f64N/A

          \[\leadsto \frac{2}{\left({k}^{2} \cdot \frac{{t}^{3}}{{\ell}^{\color{blue}{2}}}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        6. pow2N/A

          \[\leadsto \frac{2}{\left({k}^{2} \cdot \frac{{t}^{3}}{\ell \cdot \color{blue}{\ell}}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        7. *-commutativeN/A

          \[\leadsto \frac{2}{\left(\frac{{t}^{3}}{\ell \cdot \ell} \cdot \color{blue}{{k}^{2}}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        8. lower-*.f64N/A

          \[\leadsto \frac{2}{\left(\frac{{t}^{3}}{\ell \cdot \ell} \cdot \color{blue}{{k}^{2}}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        9. unpow3N/A

          \[\leadsto \frac{2}{\left(\frac{\left(t \cdot t\right) \cdot t}{\ell \cdot \ell} \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        10. lift-*.f64N/A

          \[\leadsto \frac{2}{\left(\frac{\left(t \cdot t\right) \cdot t}{\ell \cdot \ell} \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        11. pow2N/A

          \[\leadsto \frac{2}{\left(\frac{\left(t \cdot t\right) \cdot t}{{\ell}^{2}} \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        12. lift-pow.f64N/A

          \[\leadsto \frac{2}{\left(\frac{\left(t \cdot t\right) \cdot t}{{\ell}^{2}} \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        13. associate-*l/N/A

          \[\leadsto \frac{2}{\left(\left(\frac{t \cdot t}{{\ell}^{2}} \cdot t\right) \cdot {\color{blue}{k}}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        14. lift-*.f64N/A

          \[\leadsto \frac{2}{\left(\left(\frac{t \cdot t}{{\ell}^{2}} \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        15. associate-*r/N/A

          \[\leadsto \frac{2}{\left(\left(\left(t \cdot \frac{t}{{\ell}^{2}}\right) \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        16. lift-pow.f64N/A

          \[\leadsto \frac{2}{\left(\left(\left(t \cdot \frac{t}{{\ell}^{2}}\right) \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        17. pow2N/A

          \[\leadsto \frac{2}{\left(\left(\left(t \cdot \frac{t}{\ell \cdot \ell}\right) \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        18. lift-*.f64N/A

          \[\leadsto \frac{2}{\left(\left(\left(t \cdot \frac{t}{\ell \cdot \ell}\right) \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        19. lift-/.f64N/A

          \[\leadsto \frac{2}{\left(\left(\left(t \cdot \frac{t}{\ell \cdot \ell}\right) \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        20. lift-*.f64N/A

          \[\leadsto \frac{2}{\left(\left(\left(t \cdot \frac{t}{\ell \cdot \ell}\right) \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        21. lower-*.f6442.4%

          \[\leadsto \frac{2}{\left(\left(\left(t \cdot \frac{t}{\ell \cdot \ell}\right) \cdot t\right) \cdot {\color{blue}{k}}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        22. lift-*.f64N/A

          \[\leadsto \frac{2}{\left(\left(\left(t \cdot \frac{t}{\ell \cdot \ell}\right) \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        23. *-commutativeN/A

          \[\leadsto \frac{2}{\left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        24. lower-*.f6442.4%

          \[\leadsto \frac{2}{\left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        25. lift-pow.f64N/A

          \[\leadsto \frac{2}{\left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot t\right) \cdot {k}^{\color{blue}{2}}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
      6. Applied rewrites42.4%

        \[\leadsto \frac{2}{\left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot t\right) \cdot \color{blue}{\left(k \cdot k\right)}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
      7. Taylor expanded in t around inf

        \[\leadsto \frac{2}{\left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot t\right) \cdot \left(k \cdot k\right)\right) \cdot \left(\color{blue}{1} - 1\right)} \]
      8. Step-by-step derivation
        1. Applied rewrites28.5%

          \[\leadsto \frac{2}{\left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot t\right) \cdot \left(k \cdot k\right)\right) \cdot \left(\color{blue}{1} - 1\right)} \]
        2. Step-by-step derivation
          1. lift-*.f64N/A

            \[\leadsto \frac{2}{\left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot t\right) \cdot \left(\color{blue}{k} \cdot k\right)\right) \cdot \left(1 - 1\right)} \]
          2. lift-*.f64N/A

            \[\leadsto \frac{2}{\left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot t\right) \cdot \left(k \cdot k\right)\right) \cdot \left(1 - 1\right)} \]
          3. associate-*l*N/A

            \[\leadsto \frac{2}{\left(\left(\frac{t}{\ell \cdot \ell} \cdot \left(t \cdot t\right)\right) \cdot \left(\color{blue}{k} \cdot k\right)\right) \cdot \left(1 - 1\right)} \]
          4. lift-/.f64N/A

            \[\leadsto \frac{2}{\left(\left(\frac{t}{\ell \cdot \ell} \cdot \left(t \cdot t\right)\right) \cdot \left(k \cdot k\right)\right) \cdot \left(1 - 1\right)} \]
          5. lift-*.f64N/A

            \[\leadsto \frac{2}{\left(\left(\frac{t}{\ell \cdot \ell} \cdot \left(t \cdot t\right)\right) \cdot \left(k \cdot k\right)\right) \cdot \left(1 - 1\right)} \]
          6. associate-/r*N/A

            \[\leadsto \frac{2}{\left(\left(\frac{\frac{t}{\ell}}{\ell} \cdot \left(t \cdot t\right)\right) \cdot \left(k \cdot k\right)\right) \cdot \left(1 - 1\right)} \]
          7. associate-*l/N/A

            \[\leadsto \frac{2}{\left(\frac{\frac{t}{\ell} \cdot \left(t \cdot t\right)}{\ell} \cdot \left(\color{blue}{k} \cdot k\right)\right) \cdot \left(1 - 1\right)} \]
          8. lower-/.f64N/A

            \[\leadsto \frac{2}{\left(\frac{\frac{t}{\ell} \cdot \left(t \cdot t\right)}{\ell} \cdot \left(\color{blue}{k} \cdot k\right)\right) \cdot \left(1 - 1\right)} \]
          9. lower-*.f64N/A

            \[\leadsto \frac{2}{\left(\frac{\frac{t}{\ell} \cdot \left(t \cdot t\right)}{\ell} \cdot \left(k \cdot k\right)\right) \cdot \left(1 - 1\right)} \]
          10. lower-/.f64N/A

            \[\leadsto \frac{2}{\left(\frac{\frac{t}{\ell} \cdot \left(t \cdot t\right)}{\ell} \cdot \left(k \cdot k\right)\right) \cdot \left(1 - 1\right)} \]
          11. lower-*.f6428.0%

            \[\leadsto \frac{2}{\left(\frac{\frac{t}{\ell} \cdot \left(t \cdot t\right)}{\ell} \cdot \left(k \cdot k\right)\right) \cdot \left(1 - 1\right)} \]
        3. Applied rewrites28.0%

          \[\leadsto \frac{2}{\left(\frac{\frac{t}{\ell} \cdot \left(t \cdot t\right)}{\ell} \cdot \left(\color{blue}{k} \cdot k\right)\right) \cdot \left(1 - 1\right)} \]

        if 5e7 < t

        1. Initial program 35.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)} \]
        2. Taylor expanded in k around 0

          \[\leadsto \frac{2}{\color{blue}{\frac{{k}^{2} \cdot {t}^{3}}{{\ell}^{2}}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        3. Step-by-step derivation
          1. lower-/.f64N/A

            \[\leadsto \frac{2}{\frac{{k}^{2} \cdot {t}^{3}}{\color{blue}{{\ell}^{2}}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          2. lower-*.f64N/A

            \[\leadsto \frac{2}{\frac{{k}^{2} \cdot {t}^{3}}{{\color{blue}{\ell}}^{2}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          3. lower-pow.f64N/A

            \[\leadsto \frac{2}{\frac{{k}^{2} \cdot {t}^{3}}{{\ell}^{2}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          4. lower-pow.f64N/A

            \[\leadsto \frac{2}{\frac{{k}^{2} \cdot {t}^{3}}{{\ell}^{2}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          5. lower-pow.f6434.0%

            \[\leadsto \frac{2}{\frac{{k}^{2} \cdot {t}^{3}}{{\ell}^{\color{blue}{2}}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        4. Applied rewrites34.0%

          \[\leadsto \frac{2}{\color{blue}{\frac{{k}^{2} \cdot {t}^{3}}{{\ell}^{2}}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        5. Step-by-step derivation
          1. lift-/.f64N/A

            \[\leadsto \frac{2}{\frac{{k}^{2} \cdot {t}^{3}}{\color{blue}{{\ell}^{2}}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          2. lift-*.f64N/A

            \[\leadsto \frac{2}{\frac{{k}^{2} \cdot {t}^{3}}{{\color{blue}{\ell}}^{2}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          3. associate-/l*N/A

            \[\leadsto \frac{2}{\left({k}^{2} \cdot \color{blue}{\frac{{t}^{3}}{{\ell}^{2}}}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          4. lift-pow.f64N/A

            \[\leadsto \frac{2}{\left({k}^{2} \cdot \frac{{t}^{3}}{{\color{blue}{\ell}}^{2}}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          5. lift-pow.f64N/A

            \[\leadsto \frac{2}{\left({k}^{2} \cdot \frac{{t}^{3}}{{\ell}^{\color{blue}{2}}}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          6. pow2N/A

            \[\leadsto \frac{2}{\left({k}^{2} \cdot \frac{{t}^{3}}{\ell \cdot \color{blue}{\ell}}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          7. *-commutativeN/A

            \[\leadsto \frac{2}{\left(\frac{{t}^{3}}{\ell \cdot \ell} \cdot \color{blue}{{k}^{2}}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          8. lower-*.f64N/A

            \[\leadsto \frac{2}{\left(\frac{{t}^{3}}{\ell \cdot \ell} \cdot \color{blue}{{k}^{2}}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          9. unpow3N/A

            \[\leadsto \frac{2}{\left(\frac{\left(t \cdot t\right) \cdot t}{\ell \cdot \ell} \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          10. lift-*.f64N/A

            \[\leadsto \frac{2}{\left(\frac{\left(t \cdot t\right) \cdot t}{\ell \cdot \ell} \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          11. pow2N/A

            \[\leadsto \frac{2}{\left(\frac{\left(t \cdot t\right) \cdot t}{{\ell}^{2}} \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          12. lift-pow.f64N/A

            \[\leadsto \frac{2}{\left(\frac{\left(t \cdot t\right) \cdot t}{{\ell}^{2}} \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          13. associate-*l/N/A

            \[\leadsto \frac{2}{\left(\left(\frac{t \cdot t}{{\ell}^{2}} \cdot t\right) \cdot {\color{blue}{k}}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          14. lift-*.f64N/A

            \[\leadsto \frac{2}{\left(\left(\frac{t \cdot t}{{\ell}^{2}} \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          15. associate-*r/N/A

            \[\leadsto \frac{2}{\left(\left(\left(t \cdot \frac{t}{{\ell}^{2}}\right) \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          16. lift-pow.f64N/A

            \[\leadsto \frac{2}{\left(\left(\left(t \cdot \frac{t}{{\ell}^{2}}\right) \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          17. pow2N/A

            \[\leadsto \frac{2}{\left(\left(\left(t \cdot \frac{t}{\ell \cdot \ell}\right) \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          18. lift-*.f64N/A

            \[\leadsto \frac{2}{\left(\left(\left(t \cdot \frac{t}{\ell \cdot \ell}\right) \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          19. lift-/.f64N/A

            \[\leadsto \frac{2}{\left(\left(\left(t \cdot \frac{t}{\ell \cdot \ell}\right) \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          20. lift-*.f64N/A

            \[\leadsto \frac{2}{\left(\left(\left(t \cdot \frac{t}{\ell \cdot \ell}\right) \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          21. lower-*.f6442.4%

            \[\leadsto \frac{2}{\left(\left(\left(t \cdot \frac{t}{\ell \cdot \ell}\right) \cdot t\right) \cdot {\color{blue}{k}}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          22. lift-*.f64N/A

            \[\leadsto \frac{2}{\left(\left(\left(t \cdot \frac{t}{\ell \cdot \ell}\right) \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          23. *-commutativeN/A

            \[\leadsto \frac{2}{\left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          24. lower-*.f6442.4%

            \[\leadsto \frac{2}{\left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          25. lift-pow.f64N/A

            \[\leadsto \frac{2}{\left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot t\right) \cdot {k}^{\color{blue}{2}}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        6. Applied rewrites42.4%

          \[\leadsto \frac{2}{\left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot t\right) \cdot \color{blue}{\left(k \cdot k\right)}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        7. Taylor expanded in t around inf

          \[\leadsto \frac{2}{\left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot t\right) \cdot \left(k \cdot k\right)\right) \cdot \left(\color{blue}{1} - 1\right)} \]
        8. Step-by-step derivation
          1. Applied rewrites28.5%

            \[\leadsto \frac{2}{\left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot t\right) \cdot \left(k \cdot k\right)\right) \cdot \left(\color{blue}{1} - 1\right)} \]
          2. Step-by-step derivation
            1. lift-*.f64N/A

              \[\leadsto \frac{2}{\left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot t\right) \cdot \color{blue}{\left(k \cdot k\right)}\right) \cdot \left(1 - 1\right)} \]
            2. lift-*.f64N/A

              \[\leadsto \frac{2}{\left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot t\right) \cdot \left(\color{blue}{k} \cdot k\right)\right) \cdot \left(1 - 1\right)} \]
            3. associate-*l*N/A

              \[\leadsto \frac{2}{\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot \color{blue}{\left(t \cdot \left(k \cdot k\right)\right)}\right) \cdot \left(1 - 1\right)} \]
            4. lift-*.f64N/A

              \[\leadsto \frac{2}{\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot \left(\color{blue}{t} \cdot \left(k \cdot k\right)\right)\right) \cdot \left(1 - 1\right)} \]
            5. *-commutativeN/A

              \[\leadsto \frac{2}{\left(\left(t \cdot \frac{t}{\ell \cdot \ell}\right) \cdot \left(\color{blue}{t} \cdot \left(k \cdot k\right)\right)\right) \cdot \left(1 - 1\right)} \]
            6. *-commutativeN/A

              \[\leadsto \frac{2}{\left(\left(t \cdot \frac{t}{\ell \cdot \ell}\right) \cdot \left(\left(k \cdot k\right) \cdot \color{blue}{t}\right)\right) \cdot \left(1 - 1\right)} \]
            7. lift-*.f64N/A

              \[\leadsto \frac{2}{\left(\left(t \cdot \frac{t}{\ell \cdot \ell}\right) \cdot \left(\left(k \cdot k\right) \cdot \color{blue}{t}\right)\right) \cdot \left(1 - 1\right)} \]
            8. associate-*l*N/A

              \[\leadsto \frac{2}{\left(t \cdot \color{blue}{\left(\frac{t}{\ell \cdot \ell} \cdot \left(\left(k \cdot k\right) \cdot t\right)\right)}\right) \cdot \left(1 - 1\right)} \]
            9. lower-*.f64N/A

              \[\leadsto \frac{2}{\left(t \cdot \color{blue}{\left(\frac{t}{\ell \cdot \ell} \cdot \left(\left(k \cdot k\right) \cdot t\right)\right)}\right) \cdot \left(1 - 1\right)} \]
            10. lower-*.f6431.5%

              \[\leadsto \frac{2}{\left(t \cdot \left(\frac{t}{\ell \cdot \ell} \cdot \color{blue}{\left(\left(k \cdot k\right) \cdot t\right)}\right)\right) \cdot \left(1 - 1\right)} \]
          3. Applied rewrites31.5%

            \[\leadsto \frac{2}{\left(t \cdot \color{blue}{\left(\frac{t}{\ell \cdot \ell} \cdot \left(\left(k \cdot k\right) \cdot t\right)\right)}\right) \cdot \left(1 - 1\right)} \]
        9. Recombined 2 regimes into one program.
        10. Add Preprocessing

        Alternative 14: 31.5% accurate, 4.6× speedup?

        \[\frac{2}{\left(t \cdot \left(\frac{t}{\ell \cdot \ell} \cdot \left(\left(k \cdot k\right) \cdot t\right)\right)\right) \cdot \left(1 - 1\right)} \]
        (FPCore (t l k)
          :precision binary64
          (/ 2.0 (* (* t (* (/ t (* l l)) (* (* k k) t))) (- 1.0 1.0))))
        double code(double t, double l, double k) {
        	return 2.0 / ((t * ((t / (l * l)) * ((k * k) * t))) * (1.0 - 1.0));
        }
        
        module fmin_fmax_functions
            implicit none
            private
            public fmax
            public fmin
        
            interface fmax
                module procedure fmax88
                module procedure fmax44
                module procedure fmax84
                module procedure fmax48
            end interface
            interface fmin
                module procedure fmin88
                module procedure fmin44
                module procedure fmin84
                module procedure fmin48
            end interface
        contains
            real(8) function fmax88(x, y) result (res)
                real(8), intent (in) :: x
                real(8), intent (in) :: y
                res = merge(y, merge(x, max(x, y), y /= y), x /= x)
            end function
            real(4) function fmax44(x, y) result (res)
                real(4), intent (in) :: x
                real(4), intent (in) :: y
                res = merge(y, merge(x, max(x, y), y /= y), x /= x)
            end function
            real(8) function fmax84(x, y) result(res)
                real(8), intent (in) :: x
                real(4), intent (in) :: y
                res = merge(dble(y), merge(x, max(x, dble(y)), y /= y), x /= x)
            end function
            real(8) function fmax48(x, y) result(res)
                real(4), intent (in) :: x
                real(8), intent (in) :: y
                res = merge(y, merge(dble(x), max(dble(x), y), y /= y), x /= x)
            end function
            real(8) function fmin88(x, y) result (res)
                real(8), intent (in) :: x
                real(8), intent (in) :: y
                res = merge(y, merge(x, min(x, y), y /= y), x /= x)
            end function
            real(4) function fmin44(x, y) result (res)
                real(4), intent (in) :: x
                real(4), intent (in) :: y
                res = merge(y, merge(x, min(x, y), y /= y), x /= x)
            end function
            real(8) function fmin84(x, y) result(res)
                real(8), intent (in) :: x
                real(4), intent (in) :: y
                res = merge(dble(y), merge(x, min(x, dble(y)), y /= y), x /= x)
            end function
            real(8) function fmin48(x, y) result(res)
                real(4), intent (in) :: x
                real(8), intent (in) :: y
                res = merge(y, merge(dble(x), min(dble(x), y), y /= y), x /= x)
            end function
        end module
        
        real(8) function code(t, l, k)
        use fmin_fmax_functions
            real(8), intent (in) :: t
            real(8), intent (in) :: l
            real(8), intent (in) :: k
            code = 2.0d0 / ((t * ((t / (l * l)) * ((k * k) * t))) * (1.0d0 - 1.0d0))
        end function
        
        public static double code(double t, double l, double k) {
        	return 2.0 / ((t * ((t / (l * l)) * ((k * k) * t))) * (1.0 - 1.0));
        }
        
        def code(t, l, k):
        	return 2.0 / ((t * ((t / (l * l)) * ((k * k) * t))) * (1.0 - 1.0))
        
        function code(t, l, k)
        	return Float64(2.0 / Float64(Float64(t * Float64(Float64(t / Float64(l * l)) * Float64(Float64(k * k) * t))) * Float64(1.0 - 1.0)))
        end
        
        function tmp = code(t, l, k)
        	tmp = 2.0 / ((t * ((t / (l * l)) * ((k * k) * t))) * (1.0 - 1.0));
        end
        
        code[t_, l_, k_] := N[(2.0 / N[(N[(t * N[(N[(t / N[(l * l), $MachinePrecision]), $MachinePrecision] * N[(N[(k * k), $MachinePrecision] * t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * N[(1.0 - 1.0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
        
        \frac{2}{\left(t \cdot \left(\frac{t}{\ell \cdot \ell} \cdot \left(\left(k \cdot k\right) \cdot t\right)\right)\right) \cdot \left(1 - 1\right)}
        
        Derivation
        1. Initial program 35.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)} \]
        2. Taylor expanded in k around 0

          \[\leadsto \frac{2}{\color{blue}{\frac{{k}^{2} \cdot {t}^{3}}{{\ell}^{2}}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        3. Step-by-step derivation
          1. lower-/.f64N/A

            \[\leadsto \frac{2}{\frac{{k}^{2} \cdot {t}^{3}}{\color{blue}{{\ell}^{2}}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          2. lower-*.f64N/A

            \[\leadsto \frac{2}{\frac{{k}^{2} \cdot {t}^{3}}{{\color{blue}{\ell}}^{2}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          3. lower-pow.f64N/A

            \[\leadsto \frac{2}{\frac{{k}^{2} \cdot {t}^{3}}{{\ell}^{2}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          4. lower-pow.f64N/A

            \[\leadsto \frac{2}{\frac{{k}^{2} \cdot {t}^{3}}{{\ell}^{2}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          5. lower-pow.f6434.0%

            \[\leadsto \frac{2}{\frac{{k}^{2} \cdot {t}^{3}}{{\ell}^{\color{blue}{2}}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        4. Applied rewrites34.0%

          \[\leadsto \frac{2}{\color{blue}{\frac{{k}^{2} \cdot {t}^{3}}{{\ell}^{2}}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        5. Step-by-step derivation
          1. lift-/.f64N/A

            \[\leadsto \frac{2}{\frac{{k}^{2} \cdot {t}^{3}}{\color{blue}{{\ell}^{2}}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          2. lift-*.f64N/A

            \[\leadsto \frac{2}{\frac{{k}^{2} \cdot {t}^{3}}{{\color{blue}{\ell}}^{2}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          3. associate-/l*N/A

            \[\leadsto \frac{2}{\left({k}^{2} \cdot \color{blue}{\frac{{t}^{3}}{{\ell}^{2}}}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          4. lift-pow.f64N/A

            \[\leadsto \frac{2}{\left({k}^{2} \cdot \frac{{t}^{3}}{{\color{blue}{\ell}}^{2}}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          5. lift-pow.f64N/A

            \[\leadsto \frac{2}{\left({k}^{2} \cdot \frac{{t}^{3}}{{\ell}^{\color{blue}{2}}}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          6. pow2N/A

            \[\leadsto \frac{2}{\left({k}^{2} \cdot \frac{{t}^{3}}{\ell \cdot \color{blue}{\ell}}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          7. *-commutativeN/A

            \[\leadsto \frac{2}{\left(\frac{{t}^{3}}{\ell \cdot \ell} \cdot \color{blue}{{k}^{2}}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          8. lower-*.f64N/A

            \[\leadsto \frac{2}{\left(\frac{{t}^{3}}{\ell \cdot \ell} \cdot \color{blue}{{k}^{2}}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          9. unpow3N/A

            \[\leadsto \frac{2}{\left(\frac{\left(t \cdot t\right) \cdot t}{\ell \cdot \ell} \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          10. lift-*.f64N/A

            \[\leadsto \frac{2}{\left(\frac{\left(t \cdot t\right) \cdot t}{\ell \cdot \ell} \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          11. pow2N/A

            \[\leadsto \frac{2}{\left(\frac{\left(t \cdot t\right) \cdot t}{{\ell}^{2}} \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          12. lift-pow.f64N/A

            \[\leadsto \frac{2}{\left(\frac{\left(t \cdot t\right) \cdot t}{{\ell}^{2}} \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          13. associate-*l/N/A

            \[\leadsto \frac{2}{\left(\left(\frac{t \cdot t}{{\ell}^{2}} \cdot t\right) \cdot {\color{blue}{k}}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          14. lift-*.f64N/A

            \[\leadsto \frac{2}{\left(\left(\frac{t \cdot t}{{\ell}^{2}} \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          15. associate-*r/N/A

            \[\leadsto \frac{2}{\left(\left(\left(t \cdot \frac{t}{{\ell}^{2}}\right) \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          16. lift-pow.f64N/A

            \[\leadsto \frac{2}{\left(\left(\left(t \cdot \frac{t}{{\ell}^{2}}\right) \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          17. pow2N/A

            \[\leadsto \frac{2}{\left(\left(\left(t \cdot \frac{t}{\ell \cdot \ell}\right) \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          18. lift-*.f64N/A

            \[\leadsto \frac{2}{\left(\left(\left(t \cdot \frac{t}{\ell \cdot \ell}\right) \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          19. lift-/.f64N/A

            \[\leadsto \frac{2}{\left(\left(\left(t \cdot \frac{t}{\ell \cdot \ell}\right) \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          20. lift-*.f64N/A

            \[\leadsto \frac{2}{\left(\left(\left(t \cdot \frac{t}{\ell \cdot \ell}\right) \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          21. lower-*.f6442.4%

            \[\leadsto \frac{2}{\left(\left(\left(t \cdot \frac{t}{\ell \cdot \ell}\right) \cdot t\right) \cdot {\color{blue}{k}}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          22. lift-*.f64N/A

            \[\leadsto \frac{2}{\left(\left(\left(t \cdot \frac{t}{\ell \cdot \ell}\right) \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          23. *-commutativeN/A

            \[\leadsto \frac{2}{\left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          24. lower-*.f6442.4%

            \[\leadsto \frac{2}{\left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          25. lift-pow.f64N/A

            \[\leadsto \frac{2}{\left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot t\right) \cdot {k}^{\color{blue}{2}}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        6. Applied rewrites42.4%

          \[\leadsto \frac{2}{\left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot t\right) \cdot \color{blue}{\left(k \cdot k\right)}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
        7. Taylor expanded in t around inf

          \[\leadsto \frac{2}{\left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot t\right) \cdot \left(k \cdot k\right)\right) \cdot \left(\color{blue}{1} - 1\right)} \]
        8. Step-by-step derivation
          1. Applied rewrites28.5%

            \[\leadsto \frac{2}{\left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot t\right) \cdot \left(k \cdot k\right)\right) \cdot \left(\color{blue}{1} - 1\right)} \]
          2. Step-by-step derivation
            1. lift-*.f64N/A

              \[\leadsto \frac{2}{\left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot t\right) \cdot \color{blue}{\left(k \cdot k\right)}\right) \cdot \left(1 - 1\right)} \]
            2. lift-*.f64N/A

              \[\leadsto \frac{2}{\left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot t\right) \cdot \left(\color{blue}{k} \cdot k\right)\right) \cdot \left(1 - 1\right)} \]
            3. associate-*l*N/A

              \[\leadsto \frac{2}{\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot \color{blue}{\left(t \cdot \left(k \cdot k\right)\right)}\right) \cdot \left(1 - 1\right)} \]
            4. lift-*.f64N/A

              \[\leadsto \frac{2}{\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot \left(\color{blue}{t} \cdot \left(k \cdot k\right)\right)\right) \cdot \left(1 - 1\right)} \]
            5. *-commutativeN/A

              \[\leadsto \frac{2}{\left(\left(t \cdot \frac{t}{\ell \cdot \ell}\right) \cdot \left(\color{blue}{t} \cdot \left(k \cdot k\right)\right)\right) \cdot \left(1 - 1\right)} \]
            6. *-commutativeN/A

              \[\leadsto \frac{2}{\left(\left(t \cdot \frac{t}{\ell \cdot \ell}\right) \cdot \left(\left(k \cdot k\right) \cdot \color{blue}{t}\right)\right) \cdot \left(1 - 1\right)} \]
            7. lift-*.f64N/A

              \[\leadsto \frac{2}{\left(\left(t \cdot \frac{t}{\ell \cdot \ell}\right) \cdot \left(\left(k \cdot k\right) \cdot \color{blue}{t}\right)\right) \cdot \left(1 - 1\right)} \]
            8. associate-*l*N/A

              \[\leadsto \frac{2}{\left(t \cdot \color{blue}{\left(\frac{t}{\ell \cdot \ell} \cdot \left(\left(k \cdot k\right) \cdot t\right)\right)}\right) \cdot \left(1 - 1\right)} \]
            9. lower-*.f64N/A

              \[\leadsto \frac{2}{\left(t \cdot \color{blue}{\left(\frac{t}{\ell \cdot \ell} \cdot \left(\left(k \cdot k\right) \cdot t\right)\right)}\right) \cdot \left(1 - 1\right)} \]
            10. lower-*.f6431.5%

              \[\leadsto \frac{2}{\left(t \cdot \left(\frac{t}{\ell \cdot \ell} \cdot \color{blue}{\left(\left(k \cdot k\right) \cdot t\right)}\right)\right) \cdot \left(1 - 1\right)} \]
          3. Applied rewrites31.5%

            \[\leadsto \frac{2}{\left(t \cdot \color{blue}{\left(\frac{t}{\ell \cdot \ell} \cdot \left(\left(k \cdot k\right) \cdot t\right)\right)}\right) \cdot \left(1 - 1\right)} \]
          4. Add Preprocessing

          Alternative 15: 2.4% accurate, 4.6× speedup?

          \[\frac{-2}{\left(1 - 1\right) \cdot \left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot k\right) \cdot \left(k \cdot t\right)\right)} \]
          (FPCore (t l k)
            :precision binary64
            (/ -2.0 (* (- 1.0 1.0) (* (* (* (/ t (* l l)) t) k) (* k t)))))
          double code(double t, double l, double k) {
          	return -2.0 / ((1.0 - 1.0) * ((((t / (l * l)) * t) * k) * (k * t)));
          }
          
          module fmin_fmax_functions
              implicit none
              private
              public fmax
              public fmin
          
              interface fmax
                  module procedure fmax88
                  module procedure fmax44
                  module procedure fmax84
                  module procedure fmax48
              end interface
              interface fmin
                  module procedure fmin88
                  module procedure fmin44
                  module procedure fmin84
                  module procedure fmin48
              end interface
          contains
              real(8) function fmax88(x, y) result (res)
                  real(8), intent (in) :: x
                  real(8), intent (in) :: y
                  res = merge(y, merge(x, max(x, y), y /= y), x /= x)
              end function
              real(4) function fmax44(x, y) result (res)
                  real(4), intent (in) :: x
                  real(4), intent (in) :: y
                  res = merge(y, merge(x, max(x, y), y /= y), x /= x)
              end function
              real(8) function fmax84(x, y) result(res)
                  real(8), intent (in) :: x
                  real(4), intent (in) :: y
                  res = merge(dble(y), merge(x, max(x, dble(y)), y /= y), x /= x)
              end function
              real(8) function fmax48(x, y) result(res)
                  real(4), intent (in) :: x
                  real(8), intent (in) :: y
                  res = merge(y, merge(dble(x), max(dble(x), y), y /= y), x /= x)
              end function
              real(8) function fmin88(x, y) result (res)
                  real(8), intent (in) :: x
                  real(8), intent (in) :: y
                  res = merge(y, merge(x, min(x, y), y /= y), x /= x)
              end function
              real(4) function fmin44(x, y) result (res)
                  real(4), intent (in) :: x
                  real(4), intent (in) :: y
                  res = merge(y, merge(x, min(x, y), y /= y), x /= x)
              end function
              real(8) function fmin84(x, y) result(res)
                  real(8), intent (in) :: x
                  real(4), intent (in) :: y
                  res = merge(dble(y), merge(x, min(x, dble(y)), y /= y), x /= x)
              end function
              real(8) function fmin48(x, y) result(res)
                  real(4), intent (in) :: x
                  real(8), intent (in) :: y
                  res = merge(y, merge(dble(x), min(dble(x), y), y /= y), x /= x)
              end function
          end module
          
          real(8) function code(t, l, k)
          use fmin_fmax_functions
              real(8), intent (in) :: t
              real(8), intent (in) :: l
              real(8), intent (in) :: k
              code = (-2.0d0) / ((1.0d0 - 1.0d0) * ((((t / (l * l)) * t) * k) * (k * t)))
          end function
          
          public static double code(double t, double l, double k) {
          	return -2.0 / ((1.0 - 1.0) * ((((t / (l * l)) * t) * k) * (k * t)));
          }
          
          def code(t, l, k):
          	return -2.0 / ((1.0 - 1.0) * ((((t / (l * l)) * t) * k) * (k * t)))
          
          function code(t, l, k)
          	return Float64(-2.0 / Float64(Float64(1.0 - 1.0) * Float64(Float64(Float64(Float64(t / Float64(l * l)) * t) * k) * Float64(k * t))))
          end
          
          function tmp = code(t, l, k)
          	tmp = -2.0 / ((1.0 - 1.0) * ((((t / (l * l)) * t) * k) * (k * t)));
          end
          
          code[t_, l_, k_] := N[(-2.0 / N[(N[(1.0 - 1.0), $MachinePrecision] * N[(N[(N[(N[(t / N[(l * l), $MachinePrecision]), $MachinePrecision] * t), $MachinePrecision] * k), $MachinePrecision] * N[(k * t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
          
          \frac{-2}{\left(1 - 1\right) \cdot \left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot k\right) \cdot \left(k \cdot t\right)\right)}
          
          Derivation
          1. Initial program 35.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)} \]
          2. Taylor expanded in k around 0

            \[\leadsto \frac{2}{\color{blue}{\frac{{k}^{2} \cdot {t}^{3}}{{\ell}^{2}}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          3. Step-by-step derivation
            1. lower-/.f64N/A

              \[\leadsto \frac{2}{\frac{{k}^{2} \cdot {t}^{3}}{\color{blue}{{\ell}^{2}}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
            2. lower-*.f64N/A

              \[\leadsto \frac{2}{\frac{{k}^{2} \cdot {t}^{3}}{{\color{blue}{\ell}}^{2}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
            3. lower-pow.f64N/A

              \[\leadsto \frac{2}{\frac{{k}^{2} \cdot {t}^{3}}{{\ell}^{2}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
            4. lower-pow.f64N/A

              \[\leadsto \frac{2}{\frac{{k}^{2} \cdot {t}^{3}}{{\ell}^{2}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
            5. lower-pow.f6434.0%

              \[\leadsto \frac{2}{\frac{{k}^{2} \cdot {t}^{3}}{{\ell}^{\color{blue}{2}}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          4. Applied rewrites34.0%

            \[\leadsto \frac{2}{\color{blue}{\frac{{k}^{2} \cdot {t}^{3}}{{\ell}^{2}}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          5. Step-by-step derivation
            1. lift-/.f64N/A

              \[\leadsto \frac{2}{\frac{{k}^{2} \cdot {t}^{3}}{\color{blue}{{\ell}^{2}}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
            2. lift-*.f64N/A

              \[\leadsto \frac{2}{\frac{{k}^{2} \cdot {t}^{3}}{{\color{blue}{\ell}}^{2}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
            3. associate-/l*N/A

              \[\leadsto \frac{2}{\left({k}^{2} \cdot \color{blue}{\frac{{t}^{3}}{{\ell}^{2}}}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
            4. lift-pow.f64N/A

              \[\leadsto \frac{2}{\left({k}^{2} \cdot \frac{{t}^{3}}{{\color{blue}{\ell}}^{2}}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
            5. lift-pow.f64N/A

              \[\leadsto \frac{2}{\left({k}^{2} \cdot \frac{{t}^{3}}{{\ell}^{\color{blue}{2}}}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
            6. pow2N/A

              \[\leadsto \frac{2}{\left({k}^{2} \cdot \frac{{t}^{3}}{\ell \cdot \color{blue}{\ell}}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
            7. *-commutativeN/A

              \[\leadsto \frac{2}{\left(\frac{{t}^{3}}{\ell \cdot \ell} \cdot \color{blue}{{k}^{2}}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
            8. lower-*.f64N/A

              \[\leadsto \frac{2}{\left(\frac{{t}^{3}}{\ell \cdot \ell} \cdot \color{blue}{{k}^{2}}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
            9. unpow3N/A

              \[\leadsto \frac{2}{\left(\frac{\left(t \cdot t\right) \cdot t}{\ell \cdot \ell} \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
            10. lift-*.f64N/A

              \[\leadsto \frac{2}{\left(\frac{\left(t \cdot t\right) \cdot t}{\ell \cdot \ell} \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
            11. pow2N/A

              \[\leadsto \frac{2}{\left(\frac{\left(t \cdot t\right) \cdot t}{{\ell}^{2}} \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
            12. lift-pow.f64N/A

              \[\leadsto \frac{2}{\left(\frac{\left(t \cdot t\right) \cdot t}{{\ell}^{2}} \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
            13. associate-*l/N/A

              \[\leadsto \frac{2}{\left(\left(\frac{t \cdot t}{{\ell}^{2}} \cdot t\right) \cdot {\color{blue}{k}}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
            14. lift-*.f64N/A

              \[\leadsto \frac{2}{\left(\left(\frac{t \cdot t}{{\ell}^{2}} \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
            15. associate-*r/N/A

              \[\leadsto \frac{2}{\left(\left(\left(t \cdot \frac{t}{{\ell}^{2}}\right) \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
            16. lift-pow.f64N/A

              \[\leadsto \frac{2}{\left(\left(\left(t \cdot \frac{t}{{\ell}^{2}}\right) \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
            17. pow2N/A

              \[\leadsto \frac{2}{\left(\left(\left(t \cdot \frac{t}{\ell \cdot \ell}\right) \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
            18. lift-*.f64N/A

              \[\leadsto \frac{2}{\left(\left(\left(t \cdot \frac{t}{\ell \cdot \ell}\right) \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
            19. lift-/.f64N/A

              \[\leadsto \frac{2}{\left(\left(\left(t \cdot \frac{t}{\ell \cdot \ell}\right) \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
            20. lift-*.f64N/A

              \[\leadsto \frac{2}{\left(\left(\left(t \cdot \frac{t}{\ell \cdot \ell}\right) \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
            21. lower-*.f6442.4%

              \[\leadsto \frac{2}{\left(\left(\left(t \cdot \frac{t}{\ell \cdot \ell}\right) \cdot t\right) \cdot {\color{blue}{k}}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
            22. lift-*.f64N/A

              \[\leadsto \frac{2}{\left(\left(\left(t \cdot \frac{t}{\ell \cdot \ell}\right) \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
            23. *-commutativeN/A

              \[\leadsto \frac{2}{\left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
            24. lower-*.f6442.4%

              \[\leadsto \frac{2}{\left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot t\right) \cdot {k}^{2}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
            25. lift-pow.f64N/A

              \[\leadsto \frac{2}{\left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot t\right) \cdot {k}^{\color{blue}{2}}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          6. Applied rewrites42.4%

            \[\leadsto \frac{2}{\left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot t\right) \cdot \color{blue}{\left(k \cdot k\right)}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)} \]
          7. Taylor expanded in t around inf

            \[\leadsto \frac{2}{\left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot t\right) \cdot \left(k \cdot k\right)\right) \cdot \left(\color{blue}{1} - 1\right)} \]
          8. Step-by-step derivation
            1. Applied rewrites28.5%

              \[\leadsto \frac{2}{\left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot t\right) \cdot \left(k \cdot k\right)\right) \cdot \left(\color{blue}{1} - 1\right)} \]
            2. Step-by-step derivation
              1. lift-/.f64N/A

                \[\leadsto \color{blue}{\frac{2}{\left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot t\right) \cdot \left(k \cdot k\right)\right) \cdot \left(1 - 1\right)}} \]
              2. frac-2negN/A

                \[\leadsto \color{blue}{\frac{\mathsf{neg}\left(2\right)}{\mathsf{neg}\left(\left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot t\right) \cdot \left(k \cdot k\right)\right) \cdot \left(1 - 1\right)\right)}} \]
              3. lower-/.f64N/A

                \[\leadsto \color{blue}{\frac{\mathsf{neg}\left(2\right)}{\mathsf{neg}\left(\left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot t\right) \cdot \left(k \cdot k\right)\right) \cdot \left(1 - 1\right)\right)}} \]
              4. metadata-evalN/A

                \[\leadsto \frac{\color{blue}{-2}}{\mathsf{neg}\left(\left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot t\right) \cdot \left(k \cdot k\right)\right) \cdot \left(1 - 1\right)\right)} \]
              5. lift-*.f64N/A

                \[\leadsto \frac{-2}{\mathsf{neg}\left(\color{blue}{\left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot t\right) \cdot \left(k \cdot k\right)\right) \cdot \left(1 - 1\right)}\right)} \]
              6. *-commutativeN/A

                \[\leadsto \frac{-2}{\mathsf{neg}\left(\color{blue}{\left(1 - 1\right) \cdot \left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot t\right) \cdot \left(k \cdot k\right)\right)}\right)} \]
            3. Applied rewrites2.4%

              \[\leadsto \color{blue}{\frac{-2}{\left(1 - 1\right) \cdot \left(\left(\left(\frac{t}{\ell \cdot \ell} \cdot t\right) \cdot k\right) \cdot \left(k \cdot t\right)\right)}} \]
            4. Add Preprocessing

            Reproduce

            ?
            herbie shell --seed 2025212 
            (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))))