| Alternative 1 | |
|---|---|
| Error | 6.0 |
| Cost | 46540 |
(FPCore (t l k) :precision binary64 (/ 2.0 (* (* (* (/ (pow t 3.0) (* l l)) (sin k)) (tan k)) (+ (+ 1.0 (pow (/ k t) 2.0)) 1.0))))
(FPCore (t l k)
:precision binary64
(let* ((t_1 (pow (/ k t) 2.0)) (t_2 (cbrt (sin k))) (t_3 (+ 2.0 t_1)))
(if (<= t -5.5e-5)
(/
2.0
(*
(pow (* t (/ t_2 (* (cbrt l) (cbrt l)))) 3.0)
(* (tan k) (+ 1.0 (+ 1.0 t_1)))))
(if (<= t 9.5e-28)
(/
2.0
(* (/ k (/ l (pow (sin k) 2.0))) (/ (- t) (* l (- (/ (cos k) k))))))
(if (<= t 8.8e+101)
(* 2.0 (/ l (* t_3 (/ (* (tan k) (pow t 3.0)) (/ l (sin k))))))
(/
2.0
(*
(pow (* t_2 (/ t (pow (cbrt l) 2.0))) 3.0)
(pow (cbrt (* (tan k) t_3)) 3.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));
}
double code(double t, double l, double k) {
double t_1 = pow((k / t), 2.0);
double t_2 = cbrt(sin(k));
double t_3 = 2.0 + t_1;
double tmp;
if (t <= -5.5e-5) {
tmp = 2.0 / (pow((t * (t_2 / (cbrt(l) * cbrt(l)))), 3.0) * (tan(k) * (1.0 + (1.0 + t_1))));
} else if (t <= 9.5e-28) {
tmp = 2.0 / ((k / (l / pow(sin(k), 2.0))) * (-t / (l * -(cos(k) / k))));
} else if (t <= 8.8e+101) {
tmp = 2.0 * (l / (t_3 * ((tan(k) * pow(t, 3.0)) / (l / sin(k)))));
} else {
tmp = 2.0 / (pow((t_2 * (t / pow(cbrt(l), 2.0))), 3.0) * pow(cbrt((tan(k) * t_3)), 3.0));
}
return tmp;
}
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));
}
public static double code(double t, double l, double k) {
double t_1 = Math.pow((k / t), 2.0);
double t_2 = Math.cbrt(Math.sin(k));
double t_3 = 2.0 + t_1;
double tmp;
if (t <= -5.5e-5) {
tmp = 2.0 / (Math.pow((t * (t_2 / (Math.cbrt(l) * Math.cbrt(l)))), 3.0) * (Math.tan(k) * (1.0 + (1.0 + t_1))));
} else if (t <= 9.5e-28) {
tmp = 2.0 / ((k / (l / Math.pow(Math.sin(k), 2.0))) * (-t / (l * -(Math.cos(k) / k))));
} else if (t <= 8.8e+101) {
tmp = 2.0 * (l / (t_3 * ((Math.tan(k) * Math.pow(t, 3.0)) / (l / Math.sin(k)))));
} else {
tmp = 2.0 / (Math.pow((t_2 * (t / Math.pow(Math.cbrt(l), 2.0))), 3.0) * Math.pow(Math.cbrt((Math.tan(k) * t_3)), 3.0));
}
return tmp;
}
function code(t, l, k) return Float64(2.0 / Float64(Float64(Float64(Float64((t ^ 3.0) / Float64(l * l)) * sin(k)) * tan(k)) * Float64(Float64(1.0 + (Float64(k / t) ^ 2.0)) + 1.0))) end
function code(t, l, k) t_1 = Float64(k / t) ^ 2.0 t_2 = cbrt(sin(k)) t_3 = Float64(2.0 + t_1) tmp = 0.0 if (t <= -5.5e-5) tmp = Float64(2.0 / Float64((Float64(t * Float64(t_2 / Float64(cbrt(l) * cbrt(l)))) ^ 3.0) * Float64(tan(k) * Float64(1.0 + Float64(1.0 + t_1))))); elseif (t <= 9.5e-28) tmp = Float64(2.0 / Float64(Float64(k / Float64(l / (sin(k) ^ 2.0))) * Float64(Float64(-t) / Float64(l * Float64(-Float64(cos(k) / k)))))); elseif (t <= 8.8e+101) tmp = Float64(2.0 * Float64(l / Float64(t_3 * Float64(Float64(tan(k) * (t ^ 3.0)) / Float64(l / sin(k)))))); else tmp = Float64(2.0 / Float64((Float64(t_2 * Float64(t / (cbrt(l) ^ 2.0))) ^ 3.0) * (cbrt(Float64(tan(k) * t_3)) ^ 3.0))); end return tmp end
code[t_, l_, k_] := N[(2.0 / N[(N[(N[(N[(N[Power[t, 3.0], $MachinePrecision] / N[(l * l), $MachinePrecision]), $MachinePrecision] * N[Sin[k], $MachinePrecision]), $MachinePrecision] * N[Tan[k], $MachinePrecision]), $MachinePrecision] * N[(N[(1.0 + N[Power[N[(k / t), $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision] + 1.0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
code[t_, l_, k_] := Block[{t$95$1 = N[Power[N[(k / t), $MachinePrecision], 2.0], $MachinePrecision]}, Block[{t$95$2 = N[Power[N[Sin[k], $MachinePrecision], 1/3], $MachinePrecision]}, Block[{t$95$3 = N[(2.0 + t$95$1), $MachinePrecision]}, If[LessEqual[t, -5.5e-5], N[(2.0 / N[(N[Power[N[(t * N[(t$95$2 / N[(N[Power[l, 1/3], $MachinePrecision] * N[Power[l, 1/3], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], 3.0], $MachinePrecision] * N[(N[Tan[k], $MachinePrecision] * N[(1.0 + N[(1.0 + t$95$1), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 9.5e-28], N[(2.0 / N[(N[(k / N[(l / N[Power[N[Sin[k], $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * N[((-t) / N[(l * (-N[(N[Cos[k], $MachinePrecision] / k), $MachinePrecision])), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 8.8e+101], N[(2.0 * N[(l / N[(t$95$3 * N[(N[(N[Tan[k], $MachinePrecision] * N[Power[t, 3.0], $MachinePrecision]), $MachinePrecision] / N[(l / N[Sin[k], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(2.0 / N[(N[Power[N[(t$95$2 * N[(t / N[Power[N[Power[l, 1/3], $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision]), $MachinePrecision], 3.0], $MachinePrecision] * N[Power[N[Power[N[(N[Tan[k], $MachinePrecision] * t$95$3), $MachinePrecision], 1/3], $MachinePrecision], 3.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)}
\begin{array}{l}
t_1 := {\left(\frac{k}{t}\right)}^{2}\\
t_2 := \sqrt[3]{\sin k}\\
t_3 := 2 + t_1\\
\mathbf{if}\;t \leq -5.5 \cdot 10^{-5}:\\
\;\;\;\;\frac{2}{{\left(t \cdot \frac{t_2}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}\right)}^{3} \cdot \left(\tan k \cdot \left(1 + \left(1 + t_1\right)\right)\right)}\\
\mathbf{elif}\;t \leq 9.5 \cdot 10^{-28}:\\
\;\;\;\;\frac{2}{\frac{k}{\frac{\ell}{{\sin k}^{2}}} \cdot \frac{-t}{\ell \cdot \left(-\frac{\cos k}{k}\right)}}\\
\mathbf{elif}\;t \leq 8.8 \cdot 10^{+101}:\\
\;\;\;\;2 \cdot \frac{\ell}{t_3 \cdot \frac{\tan k \cdot {t}^{3}}{\frac{\ell}{\sin k}}}\\
\mathbf{else}:\\
\;\;\;\;\frac{2}{{\left(t_2 \cdot \frac{t}{{\left(\sqrt[3]{\ell}\right)}^{2}}\right)}^{3} \cdot {\left(\sqrt[3]{\tan k \cdot t_3}\right)}^{3}}\\
\end{array}
Results
if t < -5.5000000000000002e-5Initial program 22.0
Simplified22.0
[Start]22.0 | \[ \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)}
\] |
|---|---|
associate-*l* [=>]22.0 | \[ \frac{2}{\color{blue}{\left(\frac{{t}^{3}}{\ell \cdot \ell} \cdot \sin k\right) \cdot \left(\tan k \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) + 1\right)\right)}}
\] |
+-commutative [=>]22.0 | \[ \frac{2}{\left(\frac{{t}^{3}}{\ell \cdot \ell} \cdot \sin k\right) \cdot \left(\tan k \cdot \color{blue}{\left(1 + \left(1 + {\left(\frac{k}{t}\right)}^{2}\right)\right)}\right)}
\] |
Applied egg-rr6.7
Applied egg-rr6.7
Simplified6.7
[Start]6.7 | \[ \frac{2}{{\left(\frac{\frac{\sqrt[3]{\sin k}}{\frac{\sqrt[3]{\ell}}{t}}}{\sqrt[3]{\ell}}\right)}^{3} \cdot \left(\tan k \cdot \left(1 + \left(1 + {\left(\frac{k}{t}\right)}^{2}\right)\right)\right)}
\] |
|---|---|
associate-/l/ [=>]6.7 | \[ \frac{2}{{\color{blue}{\left(\frac{\sqrt[3]{\sin k}}{\sqrt[3]{\ell} \cdot \frac{\sqrt[3]{\ell}}{t}}\right)}}^{3} \cdot \left(\tan k \cdot \left(1 + \left(1 + {\left(\frac{k}{t}\right)}^{2}\right)\right)\right)}
\] |
associate-*r/ [=>]6.7 | \[ \frac{2}{{\left(\frac{\sqrt[3]{\sin k}}{\color{blue}{\frac{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}{t}}}\right)}^{3} \cdot \left(\tan k \cdot \left(1 + \left(1 + {\left(\frac{k}{t}\right)}^{2}\right)\right)\right)}
\] |
associate-/r/ [=>]6.7 | \[ \frac{2}{{\color{blue}{\left(\frac{\sqrt[3]{\sin k}}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}} \cdot t\right)}}^{3} \cdot \left(\tan k \cdot \left(1 + \left(1 + {\left(\frac{k}{t}\right)}^{2}\right)\right)\right)}
\] |
if -5.5000000000000002e-5 < t < 9.50000000000000001e-28Initial program 51.4
Simplified51.4
[Start]51.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)}
\] |
|---|---|
associate-*l* [=>]51.4 | \[ \frac{2}{\color{blue}{\left(\frac{{t}^{3}}{\ell \cdot \ell} \cdot \sin k\right) \cdot \left(\tan k \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) + 1\right)\right)}}
\] |
+-commutative [=>]51.4 | \[ \frac{2}{\left(\frac{{t}^{3}}{\ell \cdot \ell} \cdot \sin k\right) \cdot \left(\tan k \cdot \color{blue}{\left(1 + \left(1 + {\left(\frac{k}{t}\right)}^{2}\right)\right)}\right)}
\] |
Taylor expanded in t around 0 26.2
Simplified22.1
[Start]26.2 | \[ \frac{2}{\frac{{k}^{2} \cdot \left({\sin k}^{2} \cdot t\right)}{\cos k \cdot {\ell}^{2}}}
\] |
|---|---|
times-frac [=>]27.6 | \[ \frac{2}{\color{blue}{\frac{{k}^{2}}{\cos k} \cdot \frac{{\sin k}^{2} \cdot t}{{\ell}^{2}}}}
\] |
unpow2 [=>]27.6 | \[ \frac{2}{\frac{\color{blue}{k \cdot k}}{\cos k} \cdot \frac{{\sin k}^{2} \cdot t}{{\ell}^{2}}}
\] |
*-commutative [=>]27.6 | \[ \frac{2}{\frac{k \cdot k}{\cos k} \cdot \frac{\color{blue}{t \cdot {\sin k}^{2}}}{{\ell}^{2}}}
\] |
unpow2 [=>]27.6 | \[ \frac{2}{\frac{k \cdot k}{\cos k} \cdot \frac{t \cdot {\sin k}^{2}}{\color{blue}{\ell \cdot \ell}}}
\] |
times-frac [=>]22.1 | \[ \frac{2}{\frac{k \cdot k}{\cos k} \cdot \color{blue}{\left(\frac{t}{\ell} \cdot \frac{{\sin k}^{2}}{\ell}\right)}}
\] |
Applied egg-rr11.4
Simplified5.7
[Start]11.4 | \[ \frac{2}{\frac{k \cdot \left(-t\right)}{\frac{\ell}{{\sin k}^{2}} \cdot \left(\frac{\cos k}{k} \cdot \left(-\ell\right)\right)}}
\] |
|---|---|
times-frac [=>]5.7 | \[ \frac{2}{\color{blue}{\frac{k}{\frac{\ell}{{\sin k}^{2}}} \cdot \frac{-t}{\frac{\cos k}{k} \cdot \left(-\ell\right)}}}
\] |
if 9.50000000000000001e-28 < t < 8.8000000000000003e101Initial program 19.7
Simplified13.7
[Start]19.7 | \[ \frac{2}{\left(\left(\frac{{t}^{3}}{\ell \cdot \ell} \cdot \sin k\right) \cdot \tan k\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) + 1\right)}
\] |
|---|---|
*-commutative [=>]19.7 | \[ \frac{2}{\color{blue}{\left(\tan k \cdot \left(\frac{{t}^{3}}{\ell \cdot \ell} \cdot \sin k\right)\right)} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) + 1\right)}
\] |
associate-/r/ [<=]17.8 | \[ \frac{2}{\left(\tan k \cdot \color{blue}{\frac{{t}^{3}}{\frac{\ell \cdot \ell}{\sin k}}}\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) + 1\right)}
\] |
associate-*r/ [=>]17.1 | \[ \frac{2}{\color{blue}{\frac{\tan k \cdot {t}^{3}}{\frac{\ell \cdot \ell}{\sin k}}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) + 1\right)}
\] |
associate-/l* [=>]13.7 | \[ \frac{2}{\frac{\tan k \cdot {t}^{3}}{\color{blue}{\frac{\ell}{\frac{\sin k}{\ell}}}} \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) + 1\right)}
\] |
+-commutative [=>]13.7 | \[ \frac{2}{\frac{\tan k \cdot {t}^{3}}{\frac{\ell}{\frac{\sin k}{\ell}}} \cdot \color{blue}{\left(1 + \left(1 + {\left(\frac{k}{t}\right)}^{2}\right)\right)}}
\] |
associate-+r+ [=>]13.7 | \[ \frac{2}{\frac{\tan k \cdot {t}^{3}}{\frac{\ell}{\frac{\sin k}{\ell}}} \cdot \color{blue}{\left(\left(1 + 1\right) + {\left(\frac{k}{t}\right)}^{2}\right)}}
\] |
metadata-eval [=>]13.7 | \[ \frac{2}{\frac{\tan k \cdot {t}^{3}}{\frac{\ell}{\frac{\sin k}{\ell}}} \cdot \left(\color{blue}{2} + {\left(\frac{k}{t}\right)}^{2}\right)}
\] |
Applied egg-rr24.3
Simplified7.1
[Start]24.3 | \[ e^{\mathsf{log1p}\left(2 \cdot \frac{\frac{\ell}{\frac{\tan k \cdot {t}^{3}}{\frac{\ell}{\sin k}}}}{2 + {\left(\frac{k}{t}\right)}^{2}}\right)} - 1
\] |
|---|---|
expm1-def [=>]12.0 | \[ \color{blue}{\mathsf{expm1}\left(\mathsf{log1p}\left(2 \cdot \frac{\frac{\ell}{\frac{\tan k \cdot {t}^{3}}{\frac{\ell}{\sin k}}}}{2 + {\left(\frac{k}{t}\right)}^{2}}\right)\right)}
\] |
expm1-log1p [=>]8.9 | \[ \color{blue}{2 \cdot \frac{\frac{\ell}{\frac{\tan k \cdot {t}^{3}}{\frac{\ell}{\sin k}}}}{2 + {\left(\frac{k}{t}\right)}^{2}}}
\] |
associate-/l/ [=>]7.1 | \[ 2 \cdot \color{blue}{\frac{\ell}{\left(2 + {\left(\frac{k}{t}\right)}^{2}\right) \cdot \frac{\tan k \cdot {t}^{3}}{\frac{\ell}{\sin k}}}}
\] |
*-commutative [=>]7.1 | \[ 2 \cdot \frac{\ell}{\left(2 + {\left(\frac{k}{t}\right)}^{2}\right) \cdot \frac{\color{blue}{{t}^{3} \cdot \tan k}}{\frac{\ell}{\sin k}}}
\] |
if 8.8000000000000003e101 < t Initial program 24.5
Simplified24.5
[Start]24.5 | \[ \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)}
\] |
|---|---|
associate-*l* [=>]24.5 | \[ \frac{2}{\color{blue}{\left(\frac{{t}^{3}}{\ell \cdot \ell} \cdot \sin k\right) \cdot \left(\tan k \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) + 1\right)\right)}}
\] |
+-commutative [=>]24.5 | \[ \frac{2}{\left(\frac{{t}^{3}}{\ell \cdot \ell} \cdot \sin k\right) \cdot \left(\tan k \cdot \color{blue}{\left(1 + \left(1 + {\left(\frac{k}{t}\right)}^{2}\right)\right)}\right)}
\] |
Applied egg-rr4.9
Applied egg-rr4.9
Final simplification6.0
| Alternative 1 | |
|---|---|
| Error | 6.0 |
| Cost | 46540 |
| Alternative 2 | |
|---|---|
| Error | 7.0 |
| Cost | 46480 |
| Alternative 3 | |
|---|---|
| Error | 6.0 |
| Cost | 46476 |
| Alternative 4 | |
|---|---|
| Error | 6.0 |
| Cost | 46476 |
| Alternative 5 | |
|---|---|
| Error | 8.5 |
| Cost | 27212 |
| Alternative 6 | |
|---|---|
| Error | 9.5 |
| Cost | 20616 |
| Alternative 7 | |
|---|---|
| Error | 9.7 |
| Cost | 20489 |
| Alternative 8 | |
|---|---|
| Error | 9.6 |
| Cost | 20489 |
| Alternative 9 | |
|---|---|
| Error | 10.8 |
| Cost | 20488 |
| Alternative 10 | |
|---|---|
| Error | 11.7 |
| Cost | 14409 |
| Alternative 11 | |
|---|---|
| Error | 18.1 |
| Cost | 14408 |
| Alternative 12 | |
|---|---|
| Error | 18.8 |
| Cost | 8008 |
| Alternative 13 | |
|---|---|
| Error | 18.9 |
| Cost | 7752 |
| Alternative 14 | |
|---|---|
| Error | 19.5 |
| Cost | 7304 |
| Alternative 15 | |
|---|---|
| Error | 20.1 |
| Cost | 1480 |
| Alternative 16 | |
|---|---|
| Error | 20.9 |
| Cost | 1224 |
| Alternative 17 | |
|---|---|
| Error | 30.6 |
| Cost | 1097 |
| Alternative 18 | |
|---|---|
| Error | 25.7 |
| Cost | 1097 |
| Alternative 19 | |
|---|---|
| Error | 24.6 |
| Cost | 1097 |
| Alternative 20 | |
|---|---|
| Error | 21.2 |
| Cost | 1097 |
| Alternative 21 | |
|---|---|
| Error | 35.4 |
| Cost | 1096 |
| Alternative 22 | |
|---|---|
| Error | 35.5 |
| Cost | 1092 |
| Alternative 23 | |
|---|---|
| Error | 36.2 |
| Cost | 832 |
herbie shell --seed 2023038
(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))))