\sqrt{\frac{1}{2} \cdot \left(1 + \frac{1}{\sqrt{1 + {\left(\frac{2 \cdot \ell}{Om}\right)}^{2} \cdot \left({\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}\right)}}\right)}\sqrt{\frac{1}{2} \cdot \left(\frac{1}{\left(\left(\sqrt[3]{\sqrt[3]{\sqrt{\left({\left(\sin ky\right)}^{2} + {\left(\sin kx\right)}^{2}\right) \cdot {\left(\frac{\ell \cdot 2}{Om}\right)}^{2} + 1}}} \cdot \sqrt[3]{\sqrt[3]{\sqrt{\left({\left(\sin ky\right)}^{2} + {\left(\sin kx\right)}^{2}\right) \cdot {\left(\frac{\ell \cdot 2}{Om}\right)}^{2} + 1}}}\right) \cdot \sqrt[3]{\sqrt[3]{\sqrt{\left({\left(\sin ky\right)}^{2} + {\left(\sin kx\right)}^{2}\right) \cdot {\left(\frac{\ell \cdot 2}{Om}\right)}^{2} + 1}}}\right) \cdot \left(\sqrt[3]{\sqrt{\left({\left(\sin ky\right)}^{2} + {\left(\sin kx\right)}^{2}\right) \cdot {\left(\frac{\ell \cdot 2}{Om}\right)}^{2} + 1}} \cdot \sqrt[3]{\sqrt[3]{\sqrt{\left({\left(\sin ky\right)}^{2} + {\left(\sin kx\right)}^{2}\right) \cdot {\left(\frac{\ell \cdot 2}{Om}\right)}^{2} + 1}} \cdot \left(\sqrt[3]{\sqrt{\left({\left(\sin ky\right)}^{2} + {\left(\sin kx\right)}^{2}\right) \cdot {\left(\frac{\ell \cdot 2}{Om}\right)}^{2} + 1}} \cdot \sqrt[3]{\sqrt{\left({\left(\sin ky\right)}^{2} + {\left(\sin kx\right)}^{2}\right) \cdot {\left(\frac{\ell \cdot 2}{Om}\right)}^{2} + 1}}\right)}\right)} + 1\right)}double f(double l, double Om, double kx, double ky) {
double r2093900 = 1.0;
double r2093901 = 2.0;
double r2093902 = r2093900 / r2093901;
double r2093903 = l;
double r2093904 = r2093901 * r2093903;
double r2093905 = Om;
double r2093906 = r2093904 / r2093905;
double r2093907 = pow(r2093906, r2093901);
double r2093908 = kx;
double r2093909 = sin(r2093908);
double r2093910 = pow(r2093909, r2093901);
double r2093911 = ky;
double r2093912 = sin(r2093911);
double r2093913 = pow(r2093912, r2093901);
double r2093914 = r2093910 + r2093913;
double r2093915 = r2093907 * r2093914;
double r2093916 = r2093900 + r2093915;
double r2093917 = sqrt(r2093916);
double r2093918 = r2093900 / r2093917;
double r2093919 = r2093900 + r2093918;
double r2093920 = r2093902 * r2093919;
double r2093921 = sqrt(r2093920);
return r2093921;
}
double f(double l, double Om, double kx, double ky) {
double r2093922 = 1.0;
double r2093923 = 2.0;
double r2093924 = r2093922 / r2093923;
double r2093925 = ky;
double r2093926 = sin(r2093925);
double r2093927 = pow(r2093926, r2093923);
double r2093928 = kx;
double r2093929 = sin(r2093928);
double r2093930 = pow(r2093929, r2093923);
double r2093931 = r2093927 + r2093930;
double r2093932 = l;
double r2093933 = r2093932 * r2093923;
double r2093934 = Om;
double r2093935 = r2093933 / r2093934;
double r2093936 = pow(r2093935, r2093923);
double r2093937 = r2093931 * r2093936;
double r2093938 = r2093937 + r2093922;
double r2093939 = sqrt(r2093938);
double r2093940 = cbrt(r2093939);
double r2093941 = cbrt(r2093940);
double r2093942 = r2093941 * r2093941;
double r2093943 = r2093942 * r2093941;
double r2093944 = r2093940 * r2093940;
double r2093945 = r2093940 * r2093944;
double r2093946 = cbrt(r2093945);
double r2093947 = r2093940 * r2093946;
double r2093948 = r2093943 * r2093947;
double r2093949 = r2093922 / r2093948;
double r2093950 = r2093949 + r2093922;
double r2093951 = r2093924 * r2093950;
double r2093952 = sqrt(r2093951);
return r2093952;
}



Bits error versus l



Bits error versus Om



Bits error versus kx



Bits error versus ky
Results
Initial program 1.4
rmApplied add-cube-cbrt1.4
rmApplied add-cube-cbrt1.4
rmApplied add-cube-cbrt1.4
Final simplification1.4
herbie shell --seed 2019172
(FPCore (l Om kx ky)
:name "Toniolo and Linder, Equation (3a)"
(sqrt (* (/ 1.0 2.0) (+ 1.0 (/ 1.0 (sqrt (+ 1.0 (* (pow (/ (* 2.0 l) Om) 2.0) (+ (pow (sin kx) 2.0) (pow (sin ky) 2.0))))))))))