
(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));
}
real(8) function code(t, l, k)
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]
\begin{array}{l}
\\
\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)}
\end{array}
Sampling outcomes in binary64 precision:
Herbie found 15 alternatives:
| Alternative | Accuracy | Speedup |
|---|
(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));
}
real(8) function code(t, l, k)
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]
\begin{array}{l}
\\
\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)}
\end{array}
(FPCore (t l k) :precision binary64 (* 2.0 (/ (* (* (/ l k) (/ (/ l k) t)) (cos k)) (pow (sin k) 2.0))))
double code(double t, double l, double k) {
return 2.0 * ((((l / k) * ((l / k) / t)) * cos(k)) / pow(sin(k), 2.0));
}
real(8) function code(t, l, k)
real(8), intent (in) :: t
real(8), intent (in) :: l
real(8), intent (in) :: k
code = 2.0d0 * ((((l / k) * ((l / k) / t)) * cos(k)) / (sin(k) ** 2.0d0))
end function
public static double code(double t, double l, double k) {
return 2.0 * ((((l / k) * ((l / k) / t)) * Math.cos(k)) / Math.pow(Math.sin(k), 2.0));
}
def code(t, l, k): return 2.0 * ((((l / k) * ((l / k) / t)) * math.cos(k)) / math.pow(math.sin(k), 2.0))
function code(t, l, k) return Float64(2.0 * Float64(Float64(Float64(Float64(l / k) * Float64(Float64(l / k) / t)) * cos(k)) / (sin(k) ^ 2.0))) end
function tmp = code(t, l, k) tmp = 2.0 * ((((l / k) * ((l / k) / t)) * cos(k)) / (sin(k) ^ 2.0)); end
code[t_, l_, k_] := N[(2.0 * N[(N[(N[(N[(l / k), $MachinePrecision] * N[(N[(l / k), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision] * N[Cos[k], $MachinePrecision]), $MachinePrecision] / N[Power[N[Sin[k], $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
\begin{array}{l}
\\
2 \cdot \frac{\left(\frac{\ell}{k} \cdot \frac{\frac{\ell}{k}}{t}\right) \cdot \cos k}{{\sin k}^{2}}
\end{array}
Initial program 30.8%
associate-/r*30.8%
*-commutative30.8%
associate-/r*35.0%
associate-*r/35.8%
associate-/l*35.0%
+-commutative35.0%
unpow235.0%
sqr-neg35.0%
distribute-frac-neg35.0%
distribute-frac-neg35.0%
unpow235.0%
associate--l+45.2%
metadata-eval45.2%
+-rgt-identity45.2%
unpow245.2%
distribute-frac-neg45.2%
Simplified45.2%
Taylor expanded in k around inf 65.6%
associate-*r*65.6%
associate-/r*67.2%
unpow267.2%
associate-*l*67.2%
unpow267.2%
associate-*l*71.1%
Simplified71.1%
Taylor expanded in l around 0 67.2%
associate-/l*67.2%
associate-/r/67.2%
associate-/r*67.0%
unpow267.0%
unpow267.0%
times-frac88.5%
*-lft-identity88.5%
associate-*l/88.5%
*-commutative88.5%
associate-*l*95.5%
associate-*r/95.6%
*-commutative95.6%
*-lft-identity95.6%
Simplified95.6%
Final simplification95.6%
(FPCore (t l k) :precision binary64 (if (<= k 1.85e-5) (* 2.0 (/ (* (* (/ l k) (/ (/ l k) t)) (cos k)) (* k k))) (* 2.0 (/ (* (/ (cos k) t) (* l (/ (/ l k) k))) (pow (sin k) 2.0)))))
double code(double t, double l, double k) {
double tmp;
if (k <= 1.85e-5) {
tmp = 2.0 * ((((l / k) * ((l / k) / t)) * cos(k)) / (k * k));
} else {
tmp = 2.0 * (((cos(k) / t) * (l * ((l / k) / k))) / pow(sin(k), 2.0));
}
return tmp;
}
real(8) function code(t, l, k)
real(8), intent (in) :: t
real(8), intent (in) :: l
real(8), intent (in) :: k
real(8) :: tmp
if (k <= 1.85d-5) then
tmp = 2.0d0 * ((((l / k) * ((l / k) / t)) * cos(k)) / (k * k))
else
tmp = 2.0d0 * (((cos(k) / t) * (l * ((l / k) / k))) / (sin(k) ** 2.0d0))
end if
code = tmp
end function
public static double code(double t, double l, double k) {
double tmp;
if (k <= 1.85e-5) {
tmp = 2.0 * ((((l / k) * ((l / k) / t)) * Math.cos(k)) / (k * k));
} else {
tmp = 2.0 * (((Math.cos(k) / t) * (l * ((l / k) / k))) / Math.pow(Math.sin(k), 2.0));
}
return tmp;
}
def code(t, l, k): tmp = 0 if k <= 1.85e-5: tmp = 2.0 * ((((l / k) * ((l / k) / t)) * math.cos(k)) / (k * k)) else: tmp = 2.0 * (((math.cos(k) / t) * (l * ((l / k) / k))) / math.pow(math.sin(k), 2.0)) return tmp
function code(t, l, k) tmp = 0.0 if (k <= 1.85e-5) tmp = Float64(2.0 * Float64(Float64(Float64(Float64(l / k) * Float64(Float64(l / k) / t)) * cos(k)) / Float64(k * k))); else tmp = Float64(2.0 * Float64(Float64(Float64(cos(k) / t) * Float64(l * Float64(Float64(l / k) / k))) / (sin(k) ^ 2.0))); end return tmp end
function tmp_2 = code(t, l, k) tmp = 0.0; if (k <= 1.85e-5) tmp = 2.0 * ((((l / k) * ((l / k) / t)) * cos(k)) / (k * k)); else tmp = 2.0 * (((cos(k) / t) * (l * ((l / k) / k))) / (sin(k) ^ 2.0)); end tmp_2 = tmp; end
code[t_, l_, k_] := If[LessEqual[k, 1.85e-5], N[(2.0 * N[(N[(N[(N[(l / k), $MachinePrecision] * N[(N[(l / k), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision] * N[Cos[k], $MachinePrecision]), $MachinePrecision] / N[(k * k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(2.0 * N[(N[(N[(N[Cos[k], $MachinePrecision] / t), $MachinePrecision] * N[(l * N[(N[(l / k), $MachinePrecision] / k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / N[Power[N[Sin[k], $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;k \leq 1.85 \cdot 10^{-5}:\\
\;\;\;\;2 \cdot \frac{\left(\frac{\ell}{k} \cdot \frac{\frac{\ell}{k}}{t}\right) \cdot \cos k}{k \cdot k}\\
\mathbf{else}:\\
\;\;\;\;2 \cdot \frac{\frac{\cos k}{t} \cdot \left(\ell \cdot \frac{\frac{\ell}{k}}{k}\right)}{{\sin k}^{2}}\\
\end{array}
\end{array}
if k < 1.84999999999999991e-5Initial program 30.5%
associate-/r*30.5%
*-commutative30.5%
associate-/r*35.5%
associate-*r/36.7%
associate-/l*35.5%
+-commutative35.5%
unpow235.5%
sqr-neg35.5%
distribute-frac-neg35.5%
distribute-frac-neg35.5%
unpow235.5%
associate--l+41.4%
metadata-eval41.4%
+-rgt-identity41.4%
unpow241.4%
distribute-frac-neg41.4%
Simplified41.4%
Taylor expanded in k around inf 63.1%
associate-*r*63.1%
associate-/r*65.5%
unpow265.5%
associate-*l*65.5%
unpow265.5%
associate-*l*68.9%
Simplified68.9%
Taylor expanded in l around 0 65.5%
associate-/l*65.5%
associate-/r/65.5%
associate-/r*65.1%
unpow265.1%
unpow265.1%
times-frac86.9%
*-lft-identity86.9%
associate-*l/87.0%
*-commutative87.0%
associate-*l*93.6%
associate-*r/93.7%
*-commutative93.7%
*-lft-identity93.7%
Simplified93.7%
Taylor expanded in k around 0 73.4%
unpow260.5%
Simplified73.4%
if 1.84999999999999991e-5 < k Initial program 31.3%
associate-/r*31.3%
*-commutative31.3%
associate-/r*33.8%
associate-*r/33.8%
associate-/l*33.8%
+-commutative33.8%
unpow233.8%
sqr-neg33.8%
distribute-frac-neg33.8%
distribute-frac-neg33.8%
unpow233.8%
associate--l+53.4%
metadata-eval53.4%
+-rgt-identity53.4%
unpow253.4%
distribute-frac-neg53.4%
Simplified53.4%
Taylor expanded in k around inf 71.0%
associate-*r*71.0%
associate-/r*71.0%
unpow271.0%
associate-*l*71.0%
unpow271.0%
associate-*l*75.9%
Simplified75.9%
Taylor expanded in l around 0 71.0%
times-frac71.3%
unpow271.3%
unpow271.3%
Simplified71.3%
Taylor expanded in l around 0 71.3%
*-rgt-identity71.3%
associate-*r/71.3%
unpow271.3%
unpow271.3%
associate-*l*78.9%
unpow278.9%
associate-*r/78.9%
*-rgt-identity78.9%
unpow278.9%
associate-/r*90.4%
Simplified90.4%
Final simplification78.8%
(FPCore (t l k) :precision binary64 (if (<= k 1.95e-5) (* 2.0 (/ (* (* (/ l k) (/ (/ l k) t)) (cos k)) (* k k))) (* 2.0 (/ (* (* (/ l k) (/ l k)) (/ (cos k) t)) (pow (sin k) 2.0)))))
double code(double t, double l, double k) {
double tmp;
if (k <= 1.95e-5) {
tmp = 2.0 * ((((l / k) * ((l / k) / t)) * cos(k)) / (k * k));
} else {
tmp = 2.0 * ((((l / k) * (l / k)) * (cos(k) / t)) / pow(sin(k), 2.0));
}
return tmp;
}
real(8) function code(t, l, k)
real(8), intent (in) :: t
real(8), intent (in) :: l
real(8), intent (in) :: k
real(8) :: tmp
if (k <= 1.95d-5) then
tmp = 2.0d0 * ((((l / k) * ((l / k) / t)) * cos(k)) / (k * k))
else
tmp = 2.0d0 * ((((l / k) * (l / k)) * (cos(k) / t)) / (sin(k) ** 2.0d0))
end if
code = tmp
end function
public static double code(double t, double l, double k) {
double tmp;
if (k <= 1.95e-5) {
tmp = 2.0 * ((((l / k) * ((l / k) / t)) * Math.cos(k)) / (k * k));
} else {
tmp = 2.0 * ((((l / k) * (l / k)) * (Math.cos(k) / t)) / Math.pow(Math.sin(k), 2.0));
}
return tmp;
}
def code(t, l, k): tmp = 0 if k <= 1.95e-5: tmp = 2.0 * ((((l / k) * ((l / k) / t)) * math.cos(k)) / (k * k)) else: tmp = 2.0 * ((((l / k) * (l / k)) * (math.cos(k) / t)) / math.pow(math.sin(k), 2.0)) return tmp
function code(t, l, k) tmp = 0.0 if (k <= 1.95e-5) tmp = Float64(2.0 * Float64(Float64(Float64(Float64(l / k) * Float64(Float64(l / k) / t)) * cos(k)) / Float64(k * k))); else tmp = Float64(2.0 * Float64(Float64(Float64(Float64(l / k) * Float64(l / k)) * Float64(cos(k) / t)) / (sin(k) ^ 2.0))); end return tmp end
function tmp_2 = code(t, l, k) tmp = 0.0; if (k <= 1.95e-5) tmp = 2.0 * ((((l / k) * ((l / k) / t)) * cos(k)) / (k * k)); else tmp = 2.0 * ((((l / k) * (l / k)) * (cos(k) / t)) / (sin(k) ^ 2.0)); end tmp_2 = tmp; end
code[t_, l_, k_] := If[LessEqual[k, 1.95e-5], N[(2.0 * N[(N[(N[(N[(l / k), $MachinePrecision] * N[(N[(l / k), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision] * N[Cos[k], $MachinePrecision]), $MachinePrecision] / N[(k * k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(2.0 * N[(N[(N[(N[(l / k), $MachinePrecision] * N[(l / k), $MachinePrecision]), $MachinePrecision] * N[(N[Cos[k], $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision] / N[Power[N[Sin[k], $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;k \leq 1.95 \cdot 10^{-5}:\\
\;\;\;\;2 \cdot \frac{\left(\frac{\ell}{k} \cdot \frac{\frac{\ell}{k}}{t}\right) \cdot \cos k}{k \cdot k}\\
\mathbf{else}:\\
\;\;\;\;2 \cdot \frac{\left(\frac{\ell}{k} \cdot \frac{\ell}{k}\right) \cdot \frac{\cos k}{t}}{{\sin k}^{2}}\\
\end{array}
\end{array}
if k < 1.95e-5Initial program 30.5%
associate-/r*30.5%
*-commutative30.5%
associate-/r*35.5%
associate-*r/36.7%
associate-/l*35.5%
+-commutative35.5%
unpow235.5%
sqr-neg35.5%
distribute-frac-neg35.5%
distribute-frac-neg35.5%
unpow235.5%
associate--l+41.4%
metadata-eval41.4%
+-rgt-identity41.4%
unpow241.4%
distribute-frac-neg41.4%
Simplified41.4%
Taylor expanded in k around inf 63.1%
associate-*r*63.1%
associate-/r*65.5%
unpow265.5%
associate-*l*65.5%
unpow265.5%
associate-*l*68.9%
Simplified68.9%
Taylor expanded in l around 0 65.5%
associate-/l*65.5%
associate-/r/65.5%
associate-/r*65.1%
unpow265.1%
unpow265.1%
times-frac86.9%
*-lft-identity86.9%
associate-*l/87.0%
*-commutative87.0%
associate-*l*93.6%
associate-*r/93.7%
*-commutative93.7%
*-lft-identity93.7%
Simplified93.7%
Taylor expanded in k around 0 73.4%
unpow260.5%
Simplified73.4%
if 1.95e-5 < k Initial program 31.3%
associate-/r*31.3%
*-commutative31.3%
associate-/r*33.8%
associate-*r/33.8%
associate-/l*33.8%
+-commutative33.8%
unpow233.8%
sqr-neg33.8%
distribute-frac-neg33.8%
distribute-frac-neg33.8%
unpow233.8%
associate--l+53.4%
metadata-eval53.4%
+-rgt-identity53.4%
unpow253.4%
distribute-frac-neg53.4%
Simplified53.4%
Taylor expanded in k around inf 71.0%
associate-*r*71.0%
associate-/r*71.0%
unpow271.0%
associate-*l*71.0%
unpow271.0%
associate-*l*75.9%
Simplified75.9%
Taylor expanded in l around 0 71.0%
times-frac71.3%
unpow271.3%
unpow271.3%
Simplified71.3%
times-frac92.0%
Applied egg-rr92.0%
Final simplification79.3%
(FPCore (t l k) :precision binary64 (if (<= t 3.2e-110) (* 2.0 (/ (* (* (/ l k) (/ (/ l k) t)) (cos k)) (* k k))) (* 2.0 (pow (/ l (* (sin k) (* k (sqrt t)))) 2.0))))
double code(double t, double l, double k) {
double tmp;
if (t <= 3.2e-110) {
tmp = 2.0 * ((((l / k) * ((l / k) / t)) * cos(k)) / (k * k));
} else {
tmp = 2.0 * pow((l / (sin(k) * (k * sqrt(t)))), 2.0);
}
return tmp;
}
real(8) function code(t, l, k)
real(8), intent (in) :: t
real(8), intent (in) :: l
real(8), intent (in) :: k
real(8) :: tmp
if (t <= 3.2d-110) then
tmp = 2.0d0 * ((((l / k) * ((l / k) / t)) * cos(k)) / (k * k))
else
tmp = 2.0d0 * ((l / (sin(k) * (k * sqrt(t)))) ** 2.0d0)
end if
code = tmp
end function
public static double code(double t, double l, double k) {
double tmp;
if (t <= 3.2e-110) {
tmp = 2.0 * ((((l / k) * ((l / k) / t)) * Math.cos(k)) / (k * k));
} else {
tmp = 2.0 * Math.pow((l / (Math.sin(k) * (k * Math.sqrt(t)))), 2.0);
}
return tmp;
}
def code(t, l, k): tmp = 0 if t <= 3.2e-110: tmp = 2.0 * ((((l / k) * ((l / k) / t)) * math.cos(k)) / (k * k)) else: tmp = 2.0 * math.pow((l / (math.sin(k) * (k * math.sqrt(t)))), 2.0) return tmp
function code(t, l, k) tmp = 0.0 if (t <= 3.2e-110) tmp = Float64(2.0 * Float64(Float64(Float64(Float64(l / k) * Float64(Float64(l / k) / t)) * cos(k)) / Float64(k * k))); else tmp = Float64(2.0 * (Float64(l / Float64(sin(k) * Float64(k * sqrt(t)))) ^ 2.0)); end return tmp end
function tmp_2 = code(t, l, k) tmp = 0.0; if (t <= 3.2e-110) tmp = 2.0 * ((((l / k) * ((l / k) / t)) * cos(k)) / (k * k)); else tmp = 2.0 * ((l / (sin(k) * (k * sqrt(t)))) ^ 2.0); end tmp_2 = tmp; end
code[t_, l_, k_] := If[LessEqual[t, 3.2e-110], N[(2.0 * N[(N[(N[(N[(l / k), $MachinePrecision] * N[(N[(l / k), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision] * N[Cos[k], $MachinePrecision]), $MachinePrecision] / N[(k * k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(2.0 * N[Power[N[(l / N[(N[Sin[k], $MachinePrecision] * N[(k * N[Sqrt[t], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;t \leq 3.2 \cdot 10^{-110}:\\
\;\;\;\;2 \cdot \frac{\left(\frac{\ell}{k} \cdot \frac{\frac{\ell}{k}}{t}\right) \cdot \cos k}{k \cdot k}\\
\mathbf{else}:\\
\;\;\;\;2 \cdot {\left(\frac{\ell}{\sin k \cdot \left(k \cdot \sqrt{t}\right)}\right)}^{2}\\
\end{array}
\end{array}
if t < 3.20000000000000028e-110Initial program 31.7%
associate-/r*31.7%
*-commutative31.7%
associate-/r*37.4%
associate-*r/38.5%
associate-/l*37.4%
+-commutative37.4%
unpow237.4%
sqr-neg37.4%
distribute-frac-neg37.4%
distribute-frac-neg37.4%
unpow237.4%
associate--l+42.7%
metadata-eval42.7%
+-rgt-identity42.7%
unpow242.7%
distribute-frac-neg42.7%
Simplified42.7%
Taylor expanded in k around inf 65.5%
associate-*r*65.5%
associate-/r*67.8%
unpow267.8%
associate-*l*67.8%
unpow267.8%
associate-*l*72.8%
Simplified72.8%
Taylor expanded in l around 0 67.8%
associate-/l*67.8%
associate-/r/67.8%
associate-/r*67.5%
unpow267.5%
unpow267.5%
times-frac87.7%
*-lft-identity87.7%
associate-*l/87.7%
*-commutative87.7%
associate-*l*96.4%
associate-*r/96.5%
*-commutative96.5%
*-lft-identity96.5%
Simplified96.5%
Taylor expanded in k around 0 73.8%
unpow261.3%
Simplified73.8%
if 3.20000000000000028e-110 < t Initial program 28.6%
associate-/r*28.6%
*-commutative28.6%
associate-/r*29.5%
associate-*r/29.6%
associate-/l*29.5%
+-commutative29.5%
unpow229.5%
sqr-neg29.5%
distribute-frac-neg29.5%
distribute-frac-neg29.5%
unpow229.5%
associate--l+51.0%
metadata-eval51.0%
+-rgt-identity51.0%
unpow251.0%
distribute-frac-neg51.0%
Simplified51.0%
Taylor expanded in k around inf 65.7%
associate-*r*65.8%
associate-/r*65.9%
unpow265.9%
associate-*l*65.9%
unpow265.9%
associate-*l*67.2%
Simplified67.2%
Taylor expanded in k around 0 56.3%
expm1-log1p-u56.0%
expm1-udef54.3%
Applied egg-rr65.8%
expm1-def71.7%
expm1-log1p72.4%
associate-/l/70.6%
Simplified70.6%
Final simplification72.8%
(FPCore (t l k) :precision binary64 (if (<= t 1.25e-112) (* 2.0 (/ (* (* (/ l k) (/ (/ l k) t)) (cos k)) (* k k))) (* 2.0 (pow (/ (/ l (* k (sqrt t))) (sin k)) 2.0))))
double code(double t, double l, double k) {
double tmp;
if (t <= 1.25e-112) {
tmp = 2.0 * ((((l / k) * ((l / k) / t)) * cos(k)) / (k * k));
} else {
tmp = 2.0 * pow(((l / (k * sqrt(t))) / sin(k)), 2.0);
}
return tmp;
}
real(8) function code(t, l, k)
real(8), intent (in) :: t
real(8), intent (in) :: l
real(8), intent (in) :: k
real(8) :: tmp
if (t <= 1.25d-112) then
tmp = 2.0d0 * ((((l / k) * ((l / k) / t)) * cos(k)) / (k * k))
else
tmp = 2.0d0 * (((l / (k * sqrt(t))) / sin(k)) ** 2.0d0)
end if
code = tmp
end function
public static double code(double t, double l, double k) {
double tmp;
if (t <= 1.25e-112) {
tmp = 2.0 * ((((l / k) * ((l / k) / t)) * Math.cos(k)) / (k * k));
} else {
tmp = 2.0 * Math.pow(((l / (k * Math.sqrt(t))) / Math.sin(k)), 2.0);
}
return tmp;
}
def code(t, l, k): tmp = 0 if t <= 1.25e-112: tmp = 2.0 * ((((l / k) * ((l / k) / t)) * math.cos(k)) / (k * k)) else: tmp = 2.0 * math.pow(((l / (k * math.sqrt(t))) / math.sin(k)), 2.0) return tmp
function code(t, l, k) tmp = 0.0 if (t <= 1.25e-112) tmp = Float64(2.0 * Float64(Float64(Float64(Float64(l / k) * Float64(Float64(l / k) / t)) * cos(k)) / Float64(k * k))); else tmp = Float64(2.0 * (Float64(Float64(l / Float64(k * sqrt(t))) / sin(k)) ^ 2.0)); end return tmp end
function tmp_2 = code(t, l, k) tmp = 0.0; if (t <= 1.25e-112) tmp = 2.0 * ((((l / k) * ((l / k) / t)) * cos(k)) / (k * k)); else tmp = 2.0 * (((l / (k * sqrt(t))) / sin(k)) ^ 2.0); end tmp_2 = tmp; end
code[t_, l_, k_] := If[LessEqual[t, 1.25e-112], N[(2.0 * N[(N[(N[(N[(l / k), $MachinePrecision] * N[(N[(l / k), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision] * N[Cos[k], $MachinePrecision]), $MachinePrecision] / N[(k * k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(2.0 * N[Power[N[(N[(l / N[(k * N[Sqrt[t], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / N[Sin[k], $MachinePrecision]), $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;t \leq 1.25 \cdot 10^{-112}:\\
\;\;\;\;2 \cdot \frac{\left(\frac{\ell}{k} \cdot \frac{\frac{\ell}{k}}{t}\right) \cdot \cos k}{k \cdot k}\\
\mathbf{else}:\\
\;\;\;\;2 \cdot {\left(\frac{\frac{\ell}{k \cdot \sqrt{t}}}{\sin k}\right)}^{2}\\
\end{array}
\end{array}
if t < 1.25000000000000011e-112Initial program 31.7%
associate-/r*31.7%
*-commutative31.7%
associate-/r*37.4%
associate-*r/38.5%
associate-/l*37.4%
+-commutative37.4%
unpow237.4%
sqr-neg37.4%
distribute-frac-neg37.4%
distribute-frac-neg37.4%
unpow237.4%
associate--l+42.7%
metadata-eval42.7%
+-rgt-identity42.7%
unpow242.7%
distribute-frac-neg42.7%
Simplified42.7%
Taylor expanded in k around inf 65.5%
associate-*r*65.5%
associate-/r*67.8%
unpow267.8%
associate-*l*67.8%
unpow267.8%
associate-*l*72.8%
Simplified72.8%
Taylor expanded in l around 0 67.8%
associate-/l*67.8%
associate-/r/67.8%
associate-/r*67.5%
unpow267.5%
unpow267.5%
times-frac87.7%
*-lft-identity87.7%
associate-*l/87.7%
*-commutative87.7%
associate-*l*96.4%
associate-*r/96.5%
*-commutative96.5%
*-lft-identity96.5%
Simplified96.5%
Taylor expanded in k around 0 73.8%
unpow261.3%
Simplified73.8%
if 1.25000000000000011e-112 < t Initial program 28.6%
associate-/r*28.6%
*-commutative28.6%
associate-/r*29.5%
associate-*r/29.6%
associate-/l*29.5%
+-commutative29.5%
unpow229.5%
sqr-neg29.5%
distribute-frac-neg29.5%
distribute-frac-neg29.5%
unpow229.5%
associate--l+51.0%
metadata-eval51.0%
+-rgt-identity51.0%
unpow251.0%
distribute-frac-neg51.0%
Simplified51.0%
Taylor expanded in k around inf 65.7%
associate-*r*65.8%
associate-/r*65.9%
unpow265.9%
associate-*l*65.9%
unpow265.9%
associate-*l*67.2%
Simplified67.2%
Taylor expanded in k around 0 56.3%
add-sqr-sqrt56.3%
pow256.3%
sqrt-div56.3%
sqrt-div56.2%
sqrt-prod39.4%
add-sqr-sqrt67.8%
associate-*r*66.5%
sqrt-prod66.5%
sqrt-unprod47.7%
add-sqr-sqrt68.8%
unpow268.8%
sqrt-prod42.7%
add-sqr-sqrt72.4%
Applied egg-rr72.4%
Final simplification73.3%
(FPCore (t l k) :precision binary64 (* 2.0 (/ (* (/ l k) (/ (/ l k) t)) (pow (sin k) 2.0))))
double code(double t, double l, double k) {
return 2.0 * (((l / k) * ((l / k) / t)) / pow(sin(k), 2.0));
}
real(8) function code(t, l, k)
real(8), intent (in) :: t
real(8), intent (in) :: l
real(8), intent (in) :: k
code = 2.0d0 * (((l / k) * ((l / k) / t)) / (sin(k) ** 2.0d0))
end function
public static double code(double t, double l, double k) {
return 2.0 * (((l / k) * ((l / k) / t)) / Math.pow(Math.sin(k), 2.0));
}
def code(t, l, k): return 2.0 * (((l / k) * ((l / k) / t)) / math.pow(math.sin(k), 2.0))
function code(t, l, k) return Float64(2.0 * Float64(Float64(Float64(l / k) * Float64(Float64(l / k) / t)) / (sin(k) ^ 2.0))) end
function tmp = code(t, l, k) tmp = 2.0 * (((l / k) * ((l / k) / t)) / (sin(k) ^ 2.0)); end
code[t_, l_, k_] := N[(2.0 * N[(N[(N[(l / k), $MachinePrecision] * N[(N[(l / k), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision] / N[Power[N[Sin[k], $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
\begin{array}{l}
\\
2 \cdot \frac{\frac{\ell}{k} \cdot \frac{\frac{\ell}{k}}{t}}{{\sin k}^{2}}
\end{array}
Initial program 30.8%
associate-/r*30.8%
*-commutative30.8%
associate-/r*35.0%
associate-*r/35.8%
associate-/l*35.0%
+-commutative35.0%
unpow235.0%
sqr-neg35.0%
distribute-frac-neg35.0%
distribute-frac-neg35.0%
unpow235.0%
associate--l+45.2%
metadata-eval45.2%
+-rgt-identity45.2%
unpow245.2%
distribute-frac-neg45.2%
Simplified45.2%
Taylor expanded in k around inf 65.6%
associate-*r*65.6%
associate-/r*67.2%
unpow267.2%
associate-*l*67.2%
unpow267.2%
associate-*l*71.1%
Simplified71.1%
Taylor expanded in k around 0 59.5%
associate-/r*58.9%
unpow258.9%
unpow258.9%
times-frac68.2%
*-lft-identity68.2%
associate-*l/68.3%
*-commutative68.3%
associate-*l*71.2%
associate-*r/71.2%
*-commutative71.2%
*-lft-identity71.2%
Simplified71.2%
Final simplification71.2%
(FPCore (t l k) :precision binary64 (* 2.0 (/ (* (* (/ l k) (/ (/ l k) t)) (cos k)) (* k k))))
double code(double t, double l, double k) {
return 2.0 * ((((l / k) * ((l / k) / t)) * cos(k)) / (k * k));
}
real(8) function code(t, l, k)
real(8), intent (in) :: t
real(8), intent (in) :: l
real(8), intent (in) :: k
code = 2.0d0 * ((((l / k) * ((l / k) / t)) * cos(k)) / (k * k))
end function
public static double code(double t, double l, double k) {
return 2.0 * ((((l / k) * ((l / k) / t)) * Math.cos(k)) / (k * k));
}
def code(t, l, k): return 2.0 * ((((l / k) * ((l / k) / t)) * math.cos(k)) / (k * k))
function code(t, l, k) return Float64(2.0 * Float64(Float64(Float64(Float64(l / k) * Float64(Float64(l / k) / t)) * cos(k)) / Float64(k * k))) end
function tmp = code(t, l, k) tmp = 2.0 * ((((l / k) * ((l / k) / t)) * cos(k)) / (k * k)); end
code[t_, l_, k_] := N[(2.0 * N[(N[(N[(N[(l / k), $MachinePrecision] * N[(N[(l / k), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision] * N[Cos[k], $MachinePrecision]), $MachinePrecision] / N[(k * k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
\begin{array}{l}
\\
2 \cdot \frac{\left(\frac{\ell}{k} \cdot \frac{\frac{\ell}{k}}{t}\right) \cdot \cos k}{k \cdot k}
\end{array}
Initial program 30.8%
associate-/r*30.8%
*-commutative30.8%
associate-/r*35.0%
associate-*r/35.8%
associate-/l*35.0%
+-commutative35.0%
unpow235.0%
sqr-neg35.0%
distribute-frac-neg35.0%
distribute-frac-neg35.0%
unpow235.0%
associate--l+45.2%
metadata-eval45.2%
+-rgt-identity45.2%
unpow245.2%
distribute-frac-neg45.2%
Simplified45.2%
Taylor expanded in k around inf 65.6%
associate-*r*65.6%
associate-/r*67.2%
unpow267.2%
associate-*l*67.2%
unpow267.2%
associate-*l*71.1%
Simplified71.1%
Taylor expanded in l around 0 67.2%
associate-/l*67.2%
associate-/r/67.2%
associate-/r*67.0%
unpow267.0%
unpow267.0%
times-frac88.5%
*-lft-identity88.5%
associate-*l/88.5%
*-commutative88.5%
associate-*l*95.5%
associate-*r/95.6%
*-commutative95.6%
*-lft-identity95.6%
Simplified95.6%
Taylor expanded in k around 0 70.8%
unpow259.0%
Simplified70.8%
Final simplification70.8%
(FPCore (t l k)
:precision binary64
(if (<= k 5e-115)
(* l (* l (/ 2.0 (* t (pow k 4.0)))))
(if (<= k 3.55e+44)
(* 2.0 (* (/ l t) (/ l (pow k 4.0))))
(* (* (/ l k) (/ (/ l k) t)) -0.3333333333333333))))
double code(double t, double l, double k) {
double tmp;
if (k <= 5e-115) {
tmp = l * (l * (2.0 / (t * pow(k, 4.0))));
} else if (k <= 3.55e+44) {
tmp = 2.0 * ((l / t) * (l / pow(k, 4.0)));
} else {
tmp = ((l / k) * ((l / k) / t)) * -0.3333333333333333;
}
return tmp;
}
real(8) function code(t, l, k)
real(8), intent (in) :: t
real(8), intent (in) :: l
real(8), intent (in) :: k
real(8) :: tmp
if (k <= 5d-115) then
tmp = l * (l * (2.0d0 / (t * (k ** 4.0d0))))
else if (k <= 3.55d+44) then
tmp = 2.0d0 * ((l / t) * (l / (k ** 4.0d0)))
else
tmp = ((l / k) * ((l / k) / t)) * (-0.3333333333333333d0)
end if
code = tmp
end function
public static double code(double t, double l, double k) {
double tmp;
if (k <= 5e-115) {
tmp = l * (l * (2.0 / (t * Math.pow(k, 4.0))));
} else if (k <= 3.55e+44) {
tmp = 2.0 * ((l / t) * (l / Math.pow(k, 4.0)));
} else {
tmp = ((l / k) * ((l / k) / t)) * -0.3333333333333333;
}
return tmp;
}
def code(t, l, k): tmp = 0 if k <= 5e-115: tmp = l * (l * (2.0 / (t * math.pow(k, 4.0)))) elif k <= 3.55e+44: tmp = 2.0 * ((l / t) * (l / math.pow(k, 4.0))) else: tmp = ((l / k) * ((l / k) / t)) * -0.3333333333333333 return tmp
function code(t, l, k) tmp = 0.0 if (k <= 5e-115) tmp = Float64(l * Float64(l * Float64(2.0 / Float64(t * (k ^ 4.0))))); elseif (k <= 3.55e+44) tmp = Float64(2.0 * Float64(Float64(l / t) * Float64(l / (k ^ 4.0)))); else tmp = Float64(Float64(Float64(l / k) * Float64(Float64(l / k) / t)) * -0.3333333333333333); end return tmp end
function tmp_2 = code(t, l, k) tmp = 0.0; if (k <= 5e-115) tmp = l * (l * (2.0 / (t * (k ^ 4.0)))); elseif (k <= 3.55e+44) tmp = 2.0 * ((l / t) * (l / (k ^ 4.0))); else tmp = ((l / k) * ((l / k) / t)) * -0.3333333333333333; end tmp_2 = tmp; end
code[t_, l_, k_] := If[LessEqual[k, 5e-115], N[(l * N[(l * N[(2.0 / N[(t * N[Power[k, 4.0], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[k, 3.55e+44], N[(2.0 * N[(N[(l / t), $MachinePrecision] * N[(l / N[Power[k, 4.0], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(N[(N[(l / k), $MachinePrecision] * N[(N[(l / k), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision] * -0.3333333333333333), $MachinePrecision]]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;k \leq 5 \cdot 10^{-115}:\\
\;\;\;\;\ell \cdot \left(\ell \cdot \frac{2}{t \cdot {k}^{4}}\right)\\
\mathbf{elif}\;k \leq 3.55 \cdot 10^{+44}:\\
\;\;\;\;2 \cdot \left(\frac{\ell}{t} \cdot \frac{\ell}{{k}^{4}}\right)\\
\mathbf{else}:\\
\;\;\;\;\left(\frac{\ell}{k} \cdot \frac{\frac{\ell}{k}}{t}\right) \cdot -0.3333333333333333\\
\end{array}
\end{array}
if k < 5.0000000000000003e-115Initial program 31.7%
associate-/r*31.7%
*-commutative31.7%
associate-/r*36.9%
associate-*r/38.3%
associate-/l*36.9%
+-commutative36.9%
unpow236.9%
sqr-neg36.9%
distribute-frac-neg36.9%
distribute-frac-neg36.9%
unpow236.9%
associate--l+42.7%
metadata-eval42.7%
+-rgt-identity42.7%
unpow242.7%
distribute-frac-neg42.7%
Simplified42.7%
Taylor expanded in k around 0 21.7%
fma-def21.7%
associate-/r*21.6%
unpow221.6%
unpow221.6%
associate-*r/21.6%
unpow221.6%
*-commutative21.6%
Simplified21.6%
Taylor expanded in l around 0 24.5%
unpow224.5%
associate-*l*27.6%
sub-neg27.6%
associate-*r/27.6%
metadata-eval27.6%
*-commutative27.6%
associate-*r/27.6%
metadata-eval27.6%
distribute-neg-frac27.6%
metadata-eval27.6%
unpow227.6%
associate-*r*34.2%
Simplified34.2%
Taylor expanded in k around 0 60.4%
if 5.0000000000000003e-115 < k < 3.55e44Initial program 27.8%
associate-/r*27.8%
*-commutative27.8%
associate-/r*30.0%
associate-*r/30.0%
associate-/l*29.9%
+-commutative29.9%
unpow229.9%
sqr-neg29.9%
distribute-frac-neg29.9%
distribute-frac-neg29.9%
unpow229.9%
associate--l+43.8%
metadata-eval43.8%
+-rgt-identity43.8%
unpow243.8%
distribute-frac-neg43.8%
Simplified43.8%
Taylor expanded in k around inf 83.5%
associate-*r*83.5%
associate-/r*83.8%
unpow283.8%
associate-*l*83.8%
unpow283.8%
associate-*l*83.9%
Simplified83.9%
Taylor expanded in k around 0 70.2%
unpow270.2%
*-commutative70.2%
times-frac80.6%
Simplified80.6%
if 3.55e44 < k Initial program 31.0%
associate-/r*31.0%
*-commutative31.0%
associate-/r*34.2%
associate-*r/34.2%
associate-/l*34.2%
+-commutative34.2%
unpow234.2%
sqr-neg34.2%
distribute-frac-neg34.2%
distribute-frac-neg34.2%
unpow234.2%
associate--l+52.2%
metadata-eval52.2%
+-rgt-identity52.2%
unpow252.2%
distribute-frac-neg52.2%
Simplified52.2%
Taylor expanded in k around 0 49.9%
fma-def49.9%
associate-/r*49.9%
unpow249.9%
unpow249.9%
associate-*r/49.9%
unpow249.9%
*-commutative49.9%
Simplified49.9%
Taylor expanded in k around inf 53.1%
associate-*r/53.1%
*-commutative53.1%
associate-/r*53.1%
associate-*r/53.1%
*-commutative53.1%
associate-*l/53.1%
associate-/r*53.1%
*-lft-identity53.1%
times-frac53.2%
unpow253.2%
unpow253.2%
times-frac63.1%
*-commutative63.1%
associate-*l*63.4%
associate-*r/63.4%
*-commutative63.4%
*-lft-identity63.4%
Simplified63.4%
Final simplification64.9%
(FPCore (t l k) :precision binary64 (if (<= k 9e+41) (* l (/ (* l (* 2.0 (pow k -4.0))) t)) (* l (fabs (/ -0.3333333333333333 (* k (/ k (/ l t))))))))
double code(double t, double l, double k) {
double tmp;
if (k <= 9e+41) {
tmp = l * ((l * (2.0 * pow(k, -4.0))) / t);
} else {
tmp = l * fabs((-0.3333333333333333 / (k * (k / (l / t)))));
}
return tmp;
}
real(8) function code(t, l, k)
real(8), intent (in) :: t
real(8), intent (in) :: l
real(8), intent (in) :: k
real(8) :: tmp
if (k <= 9d+41) then
tmp = l * ((l * (2.0d0 * (k ** (-4.0d0)))) / t)
else
tmp = l * abs(((-0.3333333333333333d0) / (k * (k / (l / t)))))
end if
code = tmp
end function
public static double code(double t, double l, double k) {
double tmp;
if (k <= 9e+41) {
tmp = l * ((l * (2.0 * Math.pow(k, -4.0))) / t);
} else {
tmp = l * Math.abs((-0.3333333333333333 / (k * (k / (l / t)))));
}
return tmp;
}
def code(t, l, k): tmp = 0 if k <= 9e+41: tmp = l * ((l * (2.0 * math.pow(k, -4.0))) / t) else: tmp = l * math.fabs((-0.3333333333333333 / (k * (k / (l / t))))) return tmp
function code(t, l, k) tmp = 0.0 if (k <= 9e+41) tmp = Float64(l * Float64(Float64(l * Float64(2.0 * (k ^ -4.0))) / t)); else tmp = Float64(l * abs(Float64(-0.3333333333333333 / Float64(k * Float64(k / Float64(l / t)))))); end return tmp end
function tmp_2 = code(t, l, k) tmp = 0.0; if (k <= 9e+41) tmp = l * ((l * (2.0 * (k ^ -4.0))) / t); else tmp = l * abs((-0.3333333333333333 / (k * (k / (l / t))))); end tmp_2 = tmp; end
code[t_, l_, k_] := If[LessEqual[k, 9e+41], N[(l * N[(N[(l * N[(2.0 * N[Power[k, -4.0], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision], N[(l * N[Abs[N[(-0.3333333333333333 / N[(k * N[(k / N[(l / t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;k \leq 9 \cdot 10^{+41}:\\
\;\;\;\;\ell \cdot \frac{\ell \cdot \left(2 \cdot {k}^{-4}\right)}{t}\\
\mathbf{else}:\\
\;\;\;\;\ell \cdot \left|\frac{-0.3333333333333333}{k \cdot \frac{k}{\frac{\ell}{t}}}\right|\\
\end{array}
\end{array}
if k < 9.0000000000000002e41Initial program 30.7%
associate-/r*30.7%
*-commutative30.7%
associate-/r*35.2%
associate-*r/36.3%
associate-/l*35.2%
+-commutative35.2%
unpow235.2%
sqr-neg35.2%
distribute-frac-neg35.2%
distribute-frac-neg35.2%
unpow235.2%
associate--l+43.0%
metadata-eval43.0%
+-rgt-identity43.0%
unpow243.0%
distribute-frac-neg43.0%
Simplified43.0%
Taylor expanded in k around 0 24.8%
fma-def24.8%
associate-/r*24.2%
unpow224.2%
unpow224.2%
associate-*r/24.2%
unpow224.2%
*-commutative24.2%
Simplified24.2%
Taylor expanded in l around 0 31.1%
unpow231.1%
associate-*l*34.4%
sub-neg34.4%
associate-*r/34.4%
metadata-eval34.4%
*-commutative34.4%
associate-*r/34.4%
metadata-eval34.4%
distribute-neg-frac34.4%
metadata-eval34.4%
unpow234.4%
associate-*r*39.4%
Simplified39.4%
Taylor expanded in k around 0 56.9%
*-commutative56.9%
*-commutative56.9%
associate-*l/56.9%
times-frac56.0%
unpow256.0%
associate-/l*61.6%
Simplified61.6%
associate-*l/64.0%
div-inv64.0%
pow-flip64.1%
metadata-eval64.1%
Applied egg-rr64.1%
associate-/r/65.9%
Simplified65.9%
if 9.0000000000000002e41 < k Initial program 31.0%
associate-/r*31.0%
*-commutative31.0%
associate-/r*34.2%
associate-*r/34.2%
associate-/l*34.2%
+-commutative34.2%
unpow234.2%
sqr-neg34.2%
distribute-frac-neg34.2%
distribute-frac-neg34.2%
unpow234.2%
associate--l+52.2%
metadata-eval52.2%
+-rgt-identity52.2%
unpow252.2%
distribute-frac-neg52.2%
Simplified52.2%
Taylor expanded in k around 0 49.9%
fma-def49.9%
associate-/r*49.9%
unpow249.9%
unpow249.9%
associate-*r/49.9%
unpow249.9%
*-commutative49.9%
Simplified49.9%
Taylor expanded in l around 0 53.1%
unpow253.1%
associate-*l*60.1%
sub-neg60.1%
associate-*r/60.1%
metadata-eval60.1%
*-commutative60.1%
associate-*r/60.1%
metadata-eval60.1%
distribute-neg-frac60.1%
metadata-eval60.1%
unpow260.1%
associate-*r*62.5%
Simplified62.5%
Taylor expanded in k around inf 60.1%
unpow260.1%
associate-*l*62.5%
Simplified62.5%
add-sqr-sqrt56.2%
sqrt-unprod58.5%
pow258.5%
*-commutative58.5%
Applied egg-rr58.5%
unpow258.5%
rem-sqrt-square58.4%
*-commutative58.4%
associate-*r/58.4%
associate-/l*58.4%
associate-*r/58.8%
associate-/l*58.6%
Simplified58.6%
Final simplification64.1%
(FPCore (t l k) :precision binary64 (if (<= k 3.55e+44) (* 2.0 (* (/ l t) (/ l (pow k 4.0)))) (* (* (/ l k) (/ (/ l k) t)) -0.3333333333333333)))
double code(double t, double l, double k) {
double tmp;
if (k <= 3.55e+44) {
tmp = 2.0 * ((l / t) * (l / pow(k, 4.0)));
} else {
tmp = ((l / k) * ((l / k) / t)) * -0.3333333333333333;
}
return tmp;
}
real(8) function code(t, l, k)
real(8), intent (in) :: t
real(8), intent (in) :: l
real(8), intent (in) :: k
real(8) :: tmp
if (k <= 3.55d+44) then
tmp = 2.0d0 * ((l / t) * (l / (k ** 4.0d0)))
else
tmp = ((l / k) * ((l / k) / t)) * (-0.3333333333333333d0)
end if
code = tmp
end function
public static double code(double t, double l, double k) {
double tmp;
if (k <= 3.55e+44) {
tmp = 2.0 * ((l / t) * (l / Math.pow(k, 4.0)));
} else {
tmp = ((l / k) * ((l / k) / t)) * -0.3333333333333333;
}
return tmp;
}
def code(t, l, k): tmp = 0 if k <= 3.55e+44: tmp = 2.0 * ((l / t) * (l / math.pow(k, 4.0))) else: tmp = ((l / k) * ((l / k) / t)) * -0.3333333333333333 return tmp
function code(t, l, k) tmp = 0.0 if (k <= 3.55e+44) tmp = Float64(2.0 * Float64(Float64(l / t) * Float64(l / (k ^ 4.0)))); else tmp = Float64(Float64(Float64(l / k) * Float64(Float64(l / k) / t)) * -0.3333333333333333); end return tmp end
function tmp_2 = code(t, l, k) tmp = 0.0; if (k <= 3.55e+44) tmp = 2.0 * ((l / t) * (l / (k ^ 4.0))); else tmp = ((l / k) * ((l / k) / t)) * -0.3333333333333333; end tmp_2 = tmp; end
code[t_, l_, k_] := If[LessEqual[k, 3.55e+44], N[(2.0 * N[(N[(l / t), $MachinePrecision] * N[(l / N[Power[k, 4.0], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(N[(N[(l / k), $MachinePrecision] * N[(N[(l / k), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision] * -0.3333333333333333), $MachinePrecision]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;k \leq 3.55 \cdot 10^{+44}:\\
\;\;\;\;2 \cdot \left(\frac{\ell}{t} \cdot \frac{\ell}{{k}^{4}}\right)\\
\mathbf{else}:\\
\;\;\;\;\left(\frac{\ell}{k} \cdot \frac{\frac{\ell}{k}}{t}\right) \cdot -0.3333333333333333\\
\end{array}
\end{array}
if k < 3.55e44Initial program 30.7%
associate-/r*30.7%
*-commutative30.7%
associate-/r*35.2%
associate-*r/36.3%
associate-/l*35.2%
+-commutative35.2%
unpow235.2%
sqr-neg35.2%
distribute-frac-neg35.2%
distribute-frac-neg35.2%
unpow235.2%
associate--l+43.0%
metadata-eval43.0%
+-rgt-identity43.0%
unpow243.0%
distribute-frac-neg43.0%
Simplified43.0%
Taylor expanded in k around inf 65.7%
associate-*r*65.7%
associate-/r*67.8%
unpow267.8%
associate-*l*67.8%
unpow267.8%
associate-*l*70.9%
Simplified70.9%
Taylor expanded in k around 0 56.9%
unpow256.9%
*-commutative56.9%
times-frac64.5%
Simplified64.5%
if 3.55e44 < k Initial program 31.0%
associate-/r*31.0%
*-commutative31.0%
associate-/r*34.2%
associate-*r/34.2%
associate-/l*34.2%
+-commutative34.2%
unpow234.2%
sqr-neg34.2%
distribute-frac-neg34.2%
distribute-frac-neg34.2%
unpow234.2%
associate--l+52.2%
metadata-eval52.2%
+-rgt-identity52.2%
unpow252.2%
distribute-frac-neg52.2%
Simplified52.2%
Taylor expanded in k around 0 49.9%
fma-def49.9%
associate-/r*49.9%
unpow249.9%
unpow249.9%
associate-*r/49.9%
unpow249.9%
*-commutative49.9%
Simplified49.9%
Taylor expanded in k around inf 53.1%
associate-*r/53.1%
*-commutative53.1%
associate-/r*53.1%
associate-*r/53.1%
*-commutative53.1%
associate-*l/53.1%
associate-/r*53.1%
*-lft-identity53.1%
times-frac53.2%
unpow253.2%
unpow253.2%
times-frac63.1%
*-commutative63.1%
associate-*l*63.4%
associate-*r/63.4%
*-commutative63.4%
*-lft-identity63.4%
Simplified63.4%
Final simplification64.2%
(FPCore (t l k) :precision binary64 (if (<= k 3.55e+44) (* l (/ (* l (* 2.0 (pow k -4.0))) t)) (* (* (/ l k) (/ (/ l k) t)) -0.3333333333333333)))
double code(double t, double l, double k) {
double tmp;
if (k <= 3.55e+44) {
tmp = l * ((l * (2.0 * pow(k, -4.0))) / t);
} else {
tmp = ((l / k) * ((l / k) / t)) * -0.3333333333333333;
}
return tmp;
}
real(8) function code(t, l, k)
real(8), intent (in) :: t
real(8), intent (in) :: l
real(8), intent (in) :: k
real(8) :: tmp
if (k <= 3.55d+44) then
tmp = l * ((l * (2.0d0 * (k ** (-4.0d0)))) / t)
else
tmp = ((l / k) * ((l / k) / t)) * (-0.3333333333333333d0)
end if
code = tmp
end function
public static double code(double t, double l, double k) {
double tmp;
if (k <= 3.55e+44) {
tmp = l * ((l * (2.0 * Math.pow(k, -4.0))) / t);
} else {
tmp = ((l / k) * ((l / k) / t)) * -0.3333333333333333;
}
return tmp;
}
def code(t, l, k): tmp = 0 if k <= 3.55e+44: tmp = l * ((l * (2.0 * math.pow(k, -4.0))) / t) else: tmp = ((l / k) * ((l / k) / t)) * -0.3333333333333333 return tmp
function code(t, l, k) tmp = 0.0 if (k <= 3.55e+44) tmp = Float64(l * Float64(Float64(l * Float64(2.0 * (k ^ -4.0))) / t)); else tmp = Float64(Float64(Float64(l / k) * Float64(Float64(l / k) / t)) * -0.3333333333333333); end return tmp end
function tmp_2 = code(t, l, k) tmp = 0.0; if (k <= 3.55e+44) tmp = l * ((l * (2.0 * (k ^ -4.0))) / t); else tmp = ((l / k) * ((l / k) / t)) * -0.3333333333333333; end tmp_2 = tmp; end
code[t_, l_, k_] := If[LessEqual[k, 3.55e+44], N[(l * N[(N[(l * N[(2.0 * N[Power[k, -4.0], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision], N[(N[(N[(l / k), $MachinePrecision] * N[(N[(l / k), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision] * -0.3333333333333333), $MachinePrecision]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;k \leq 3.55 \cdot 10^{+44}:\\
\;\;\;\;\ell \cdot \frac{\ell \cdot \left(2 \cdot {k}^{-4}\right)}{t}\\
\mathbf{else}:\\
\;\;\;\;\left(\frac{\ell}{k} \cdot \frac{\frac{\ell}{k}}{t}\right) \cdot -0.3333333333333333\\
\end{array}
\end{array}
if k < 3.55e44Initial program 30.7%
associate-/r*30.7%
*-commutative30.7%
associate-/r*35.2%
associate-*r/36.3%
associate-/l*35.2%
+-commutative35.2%
unpow235.2%
sqr-neg35.2%
distribute-frac-neg35.2%
distribute-frac-neg35.2%
unpow235.2%
associate--l+43.0%
metadata-eval43.0%
+-rgt-identity43.0%
unpow243.0%
distribute-frac-neg43.0%
Simplified43.0%
Taylor expanded in k around 0 24.8%
fma-def24.8%
associate-/r*24.2%
unpow224.2%
unpow224.2%
associate-*r/24.2%
unpow224.2%
*-commutative24.2%
Simplified24.2%
Taylor expanded in l around 0 31.1%
unpow231.1%
associate-*l*34.4%
sub-neg34.4%
associate-*r/34.4%
metadata-eval34.4%
*-commutative34.4%
associate-*r/34.4%
metadata-eval34.4%
distribute-neg-frac34.4%
metadata-eval34.4%
unpow234.4%
associate-*r*39.4%
Simplified39.4%
Taylor expanded in k around 0 56.9%
*-commutative56.9%
*-commutative56.9%
associate-*l/56.9%
times-frac56.0%
unpow256.0%
associate-/l*61.6%
Simplified61.6%
associate-*l/64.0%
div-inv64.0%
pow-flip64.1%
metadata-eval64.1%
Applied egg-rr64.1%
associate-/r/65.9%
Simplified65.9%
if 3.55e44 < k Initial program 31.0%
associate-/r*31.0%
*-commutative31.0%
associate-/r*34.2%
associate-*r/34.2%
associate-/l*34.2%
+-commutative34.2%
unpow234.2%
sqr-neg34.2%
distribute-frac-neg34.2%
distribute-frac-neg34.2%
unpow234.2%
associate--l+52.2%
metadata-eval52.2%
+-rgt-identity52.2%
unpow252.2%
distribute-frac-neg52.2%
Simplified52.2%
Taylor expanded in k around 0 49.9%
fma-def49.9%
associate-/r*49.9%
unpow249.9%
unpow249.9%
associate-*r/49.9%
unpow249.9%
*-commutative49.9%
Simplified49.9%
Taylor expanded in k around inf 53.1%
associate-*r/53.1%
*-commutative53.1%
associate-/r*53.1%
associate-*r/53.1%
*-commutative53.1%
associate-*l/53.1%
associate-/r*53.1%
*-lft-identity53.1%
times-frac53.2%
unpow253.2%
unpow253.2%
times-frac63.1%
*-commutative63.1%
associate-*l*63.4%
associate-*r/63.4%
*-commutative63.4%
*-lft-identity63.4%
Simplified63.4%
Final simplification65.3%
(FPCore (t l k) :precision binary64 (if (<= k 7.6e+97) (* 2.0 (/ (/ (* l l) (* k (* k t))) (* k k))) (* (* (/ l k) (/ (/ l k) t)) -0.3333333333333333)))
double code(double t, double l, double k) {
double tmp;
if (k <= 7.6e+97) {
tmp = 2.0 * (((l * l) / (k * (k * t))) / (k * k));
} else {
tmp = ((l / k) * ((l / k) / t)) * -0.3333333333333333;
}
return tmp;
}
real(8) function code(t, l, k)
real(8), intent (in) :: t
real(8), intent (in) :: l
real(8), intent (in) :: k
real(8) :: tmp
if (k <= 7.6d+97) then
tmp = 2.0d0 * (((l * l) / (k * (k * t))) / (k * k))
else
tmp = ((l / k) * ((l / k) / t)) * (-0.3333333333333333d0)
end if
code = tmp
end function
public static double code(double t, double l, double k) {
double tmp;
if (k <= 7.6e+97) {
tmp = 2.0 * (((l * l) / (k * (k * t))) / (k * k));
} else {
tmp = ((l / k) * ((l / k) / t)) * -0.3333333333333333;
}
return tmp;
}
def code(t, l, k): tmp = 0 if k <= 7.6e+97: tmp = 2.0 * (((l * l) / (k * (k * t))) / (k * k)) else: tmp = ((l / k) * ((l / k) / t)) * -0.3333333333333333 return tmp
function code(t, l, k) tmp = 0.0 if (k <= 7.6e+97) tmp = Float64(2.0 * Float64(Float64(Float64(l * l) / Float64(k * Float64(k * t))) / Float64(k * k))); else tmp = Float64(Float64(Float64(l / k) * Float64(Float64(l / k) / t)) * -0.3333333333333333); end return tmp end
function tmp_2 = code(t, l, k) tmp = 0.0; if (k <= 7.6e+97) tmp = 2.0 * (((l * l) / (k * (k * t))) / (k * k)); else tmp = ((l / k) * ((l / k) / t)) * -0.3333333333333333; end tmp_2 = tmp; end
code[t_, l_, k_] := If[LessEqual[k, 7.6e+97], N[(2.0 * N[(N[(N[(l * l), $MachinePrecision] / N[(k * N[(k * t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / N[(k * k), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(N[(N[(l / k), $MachinePrecision] * N[(N[(l / k), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision] * -0.3333333333333333), $MachinePrecision]]
\begin{array}{l}
\\
\begin{array}{l}
\mathbf{if}\;k \leq 7.6 \cdot 10^{+97}:\\
\;\;\;\;2 \cdot \frac{\frac{\ell \cdot \ell}{k \cdot \left(k \cdot t\right)}}{k \cdot k}\\
\mathbf{else}:\\
\;\;\;\;\left(\frac{\ell}{k} \cdot \frac{\frac{\ell}{k}}{t}\right) \cdot -0.3333333333333333\\
\end{array}
\end{array}
if k < 7.60000000000000071e97Initial program 30.0%
associate-/r*30.0%
*-commutative30.0%
associate-/r*34.3%
associate-*r/35.3%
associate-/l*34.3%
+-commutative34.3%
unpow234.3%
sqr-neg34.3%
distribute-frac-neg34.3%
distribute-frac-neg34.3%
unpow234.3%
associate--l+42.2%
metadata-eval42.2%
+-rgt-identity42.2%
unpow242.2%
distribute-frac-neg42.2%
Simplified42.2%
Taylor expanded in k around inf 67.0%
associate-*r*67.1%
associate-/r*69.1%
unpow269.1%
associate-*l*69.1%
unpow269.1%
associate-*l*72.0%
Simplified72.0%
Taylor expanded in k around 0 62.0%
Taylor expanded in k around 0 60.3%
unpow260.3%
Simplified60.3%
if 7.60000000000000071e97 < k Initial program 33.8%
associate-/r*33.8%
*-commutative33.8%
associate-/r*37.7%
associate-*r/37.7%
associate-/l*37.7%
+-commutative37.7%
unpow237.7%
sqr-neg37.7%
distribute-frac-neg37.7%
distribute-frac-neg37.7%
unpow237.7%
associate--l+57.5%
metadata-eval57.5%
+-rgt-identity57.5%
unpow257.5%
distribute-frac-neg57.5%
Simplified57.5%
Taylor expanded in k around 0 54.2%
fma-def54.2%
associate-/r*54.2%
unpow254.2%
unpow254.2%
associate-*r/54.2%
unpow254.2%
*-commutative54.2%
Simplified54.2%
Taylor expanded in k around inf 56.2%
associate-*r/56.2%
*-commutative56.2%
associate-/r*56.0%
associate-*r/56.0%
*-commutative56.0%
associate-*l/56.0%
associate-/r*56.2%
*-lft-identity56.2%
times-frac56.2%
unpow256.2%
unpow256.2%
times-frac67.8%
*-commutative67.8%
associate-*l*68.2%
associate-*r/68.2%
*-commutative68.2%
*-lft-identity68.2%
Simplified68.2%
Final simplification61.9%
(FPCore (t l k) :precision binary64 (* l (* -0.3333333333333333 (/ l (* k (* k t))))))
double code(double t, double l, double k) {
return l * (-0.3333333333333333 * (l / (k * (k * t))));
}
real(8) function code(t, l, k)
real(8), intent (in) :: t
real(8), intent (in) :: l
real(8), intent (in) :: k
code = l * ((-0.3333333333333333d0) * (l / (k * (k * t))))
end function
public static double code(double t, double l, double k) {
return l * (-0.3333333333333333 * (l / (k * (k * t))));
}
def code(t, l, k): return l * (-0.3333333333333333 * (l / (k * (k * t))))
function code(t, l, k) return Float64(l * Float64(-0.3333333333333333 * Float64(l / Float64(k * Float64(k * t))))) end
function tmp = code(t, l, k) tmp = l * (-0.3333333333333333 * (l / (k * (k * t)))); end
code[t_, l_, k_] := N[(l * N[(-0.3333333333333333 * N[(l / N[(k * N[(k * t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
\begin{array}{l}
\\
\ell \cdot \left(-0.3333333333333333 \cdot \frac{\ell}{k \cdot \left(k \cdot t\right)}\right)
\end{array}
Initial program 30.8%
associate-/r*30.8%
*-commutative30.8%
associate-/r*35.0%
associate-*r/35.8%
associate-/l*35.0%
+-commutative35.0%
unpow235.0%
sqr-neg35.0%
distribute-frac-neg35.0%
distribute-frac-neg35.0%
unpow235.0%
associate--l+45.2%
metadata-eval45.2%
+-rgt-identity45.2%
unpow245.2%
distribute-frac-neg45.2%
Simplified45.2%
Taylor expanded in k around 0 30.9%
fma-def30.9%
associate-/r*30.5%
unpow230.5%
unpow230.5%
associate-*r/30.5%
unpow230.5%
*-commutative30.5%
Simplified30.5%
Taylor expanded in l around 0 36.4%
unpow236.4%
associate-*l*40.6%
sub-neg40.6%
associate-*r/40.6%
metadata-eval40.6%
*-commutative40.6%
associate-*r/40.6%
metadata-eval40.6%
distribute-neg-frac40.6%
metadata-eval40.6%
unpow240.6%
associate-*r*45.0%
Simplified45.0%
Taylor expanded in k around inf 31.5%
unpow231.5%
associate-*l*32.3%
Simplified32.3%
Final simplification32.3%
(FPCore (t l k) :precision binary64 (* l (/ -0.3333333333333333 (* k (/ k (/ l t))))))
double code(double t, double l, double k) {
return l * (-0.3333333333333333 / (k * (k / (l / t))));
}
real(8) function code(t, l, k)
real(8), intent (in) :: t
real(8), intent (in) :: l
real(8), intent (in) :: k
code = l * ((-0.3333333333333333d0) / (k * (k / (l / t))))
end function
public static double code(double t, double l, double k) {
return l * (-0.3333333333333333 / (k * (k / (l / t))));
}
def code(t, l, k): return l * (-0.3333333333333333 / (k * (k / (l / t))))
function code(t, l, k) return Float64(l * Float64(-0.3333333333333333 / Float64(k * Float64(k / Float64(l / t))))) end
function tmp = code(t, l, k) tmp = l * (-0.3333333333333333 / (k * (k / (l / t)))); end
code[t_, l_, k_] := N[(l * N[(-0.3333333333333333 / N[(k * N[(k / N[(l / t), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
\begin{array}{l}
\\
\ell \cdot \frac{-0.3333333333333333}{k \cdot \frac{k}{\frac{\ell}{t}}}
\end{array}
Initial program 30.8%
associate-/r*30.8%
*-commutative30.8%
associate-/r*35.0%
associate-*r/35.8%
associate-/l*35.0%
+-commutative35.0%
unpow235.0%
sqr-neg35.0%
distribute-frac-neg35.0%
distribute-frac-neg35.0%
unpow235.0%
associate--l+45.2%
metadata-eval45.2%
+-rgt-identity45.2%
unpow245.2%
distribute-frac-neg45.2%
Simplified45.2%
Taylor expanded in k around 0 30.9%
fma-def30.9%
associate-/r*30.5%
unpow230.5%
unpow230.5%
associate-*r/30.5%
unpow230.5%
*-commutative30.5%
Simplified30.5%
Taylor expanded in l around 0 36.4%
unpow236.4%
associate-*l*40.6%
sub-neg40.6%
associate-*r/40.6%
metadata-eval40.6%
*-commutative40.6%
associate-*r/40.6%
metadata-eval40.6%
distribute-neg-frac40.6%
metadata-eval40.6%
unpow240.6%
associate-*r*45.0%
Simplified45.0%
Taylor expanded in k around inf 31.5%
unpow231.5%
associate-*l*32.3%
Simplified32.3%
Taylor expanded in l around 0 31.5%
unpow231.5%
associate-*r*32.3%
associate-*r/32.3%
associate-/l*32.3%
associate-*r/32.5%
associate-/l*32.6%
Simplified32.6%
Final simplification32.6%
(FPCore (t l k) :precision binary64 (* (* (/ l k) (/ (/ l k) t)) -0.3333333333333333))
double code(double t, double l, double k) {
return ((l / k) * ((l / k) / t)) * -0.3333333333333333;
}
real(8) function code(t, l, k)
real(8), intent (in) :: t
real(8), intent (in) :: l
real(8), intent (in) :: k
code = ((l / k) * ((l / k) / t)) * (-0.3333333333333333d0)
end function
public static double code(double t, double l, double k) {
return ((l / k) * ((l / k) / t)) * -0.3333333333333333;
}
def code(t, l, k): return ((l / k) * ((l / k) / t)) * -0.3333333333333333
function code(t, l, k) return Float64(Float64(Float64(l / k) * Float64(Float64(l / k) / t)) * -0.3333333333333333) end
function tmp = code(t, l, k) tmp = ((l / k) * ((l / k) / t)) * -0.3333333333333333; end
code[t_, l_, k_] := N[(N[(N[(l / k), $MachinePrecision] * N[(N[(l / k), $MachinePrecision] / t), $MachinePrecision]), $MachinePrecision] * -0.3333333333333333), $MachinePrecision]
\begin{array}{l}
\\
\left(\frac{\ell}{k} \cdot \frac{\frac{\ell}{k}}{t}\right) \cdot -0.3333333333333333
\end{array}
Initial program 30.8%
associate-/r*30.8%
*-commutative30.8%
associate-/r*35.0%
associate-*r/35.8%
associate-/l*35.0%
+-commutative35.0%
unpow235.0%
sqr-neg35.0%
distribute-frac-neg35.0%
distribute-frac-neg35.0%
unpow235.0%
associate--l+45.2%
metadata-eval45.2%
+-rgt-identity45.2%
unpow245.2%
distribute-frac-neg45.2%
Simplified45.2%
Taylor expanded in k around 0 30.9%
fma-def30.9%
associate-/r*30.5%
unpow230.5%
unpow230.5%
associate-*r/30.5%
unpow230.5%
*-commutative30.5%
Simplified30.5%
Taylor expanded in k around inf 28.9%
associate-*r/28.9%
*-commutative28.9%
associate-/r*28.9%
associate-*r/28.9%
*-commutative28.9%
associate-*l/28.9%
associate-/r*28.9%
*-lft-identity28.9%
times-frac29.0%
unpow229.0%
unpow229.0%
times-frac32.8%
*-commutative32.8%
associate-*l*32.8%
associate-*r/32.8%
*-commutative32.8%
*-lft-identity32.8%
Simplified32.8%
Final simplification32.8%
herbie shell --seed 2023275
(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))))