\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 r2093898 = 1.0;
double r2093899 = 2.0;
double r2093900 = r2093898 / r2093899;
double r2093901 = l;
double r2093902 = r2093899 * r2093901;
double r2093903 = Om;
double r2093904 = r2093902 / r2093903;
double r2093905 = pow(r2093904, r2093899);
double r2093906 = kx;
double r2093907 = sin(r2093906);
double r2093908 = pow(r2093907, r2093899);
double r2093909 = ky;
double r2093910 = sin(r2093909);
double r2093911 = pow(r2093910, r2093899);
double r2093912 = r2093908 + r2093911;
double r2093913 = r2093905 * r2093912;
double r2093914 = r2093898 + r2093913;
double r2093915 = sqrt(r2093914);
double r2093916 = r2093898 / r2093915;
double r2093917 = r2093898 + r2093916;
double r2093918 = r2093900 * r2093917;
double r2093919 = sqrt(r2093918);
return r2093919;
}
double f(double l, double Om, double kx, double ky) {
double r2093920 = 1.0;
double r2093921 = 2.0;
double r2093922 = r2093920 / r2093921;
double r2093923 = ky;
double r2093924 = sin(r2093923);
double r2093925 = pow(r2093924, r2093921);
double r2093926 = kx;
double r2093927 = sin(r2093926);
double r2093928 = pow(r2093927, r2093921);
double r2093929 = r2093925 + r2093928;
double r2093930 = l;
double r2093931 = r2093930 * r2093921;
double r2093932 = Om;
double r2093933 = r2093931 / r2093932;
double r2093934 = pow(r2093933, r2093921);
double r2093935 = r2093929 * r2093934;
double r2093936 = r2093935 + r2093920;
double r2093937 = sqrt(r2093936);
double r2093938 = cbrt(r2093937);
double r2093939 = cbrt(r2093938);
double r2093940 = r2093939 * r2093939;
double r2093941 = r2093940 * r2093939;
double r2093942 = r2093938 * r2093938;
double r2093943 = r2093938 * r2093942;
double r2093944 = cbrt(r2093943);
double r2093945 = r2093938 * r2093944;
double r2093946 = r2093941 * r2093945;
double r2093947 = r2093920 / r2093946;
double r2093948 = r2093947 + r2093920;
double r2093949 = r2093922 * r2093948;
double r2093950 = sqrt(r2093949);
return r2093950;
}



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))))))))))