Average Error: 12.5 → 13.6
Time: 29.4s
Precision: 64
\[\frac{\sin ky}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}} \cdot \sin th\]
\[\frac{\sin ky \cdot \sin th}{\sqrt{\left(\sqrt[3]{{\left(\sin kx\right)}^{2}} \cdot \sqrt[3]{{\left(\sin kx\right)}^{2}}\right) \cdot \sqrt[3]{{\left(\sin kx\right)}^{2}} + {\left(\sin ky\right)}^{2}}}\]
\frac{\sin ky}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}} \cdot \sin th
\frac{\sin ky \cdot \sin th}{\sqrt{\left(\sqrt[3]{{\left(\sin kx\right)}^{2}} \cdot \sqrt[3]{{\left(\sin kx\right)}^{2}}\right) \cdot \sqrt[3]{{\left(\sin kx\right)}^{2}} + {\left(\sin ky\right)}^{2}}}
double f(double kx, double ky, double th) {
        double r39988 = ky;
        double r39989 = sin(r39988);
        double r39990 = kx;
        double r39991 = sin(r39990);
        double r39992 = 2.0;
        double r39993 = pow(r39991, r39992);
        double r39994 = pow(r39989, r39992);
        double r39995 = r39993 + r39994;
        double r39996 = sqrt(r39995);
        double r39997 = r39989 / r39996;
        double r39998 = th;
        double r39999 = sin(r39998);
        double r40000 = r39997 * r39999;
        return r40000;
}

double f(double kx, double ky, double th) {
        double r40001 = ky;
        double r40002 = sin(r40001);
        double r40003 = th;
        double r40004 = sin(r40003);
        double r40005 = r40002 * r40004;
        double r40006 = kx;
        double r40007 = sin(r40006);
        double r40008 = 2.0;
        double r40009 = pow(r40007, r40008);
        double r40010 = cbrt(r40009);
        double r40011 = r40010 * r40010;
        double r40012 = r40011 * r40010;
        double r40013 = pow(r40002, r40008);
        double r40014 = r40012 + r40013;
        double r40015 = sqrt(r40014);
        double r40016 = r40005 / r40015;
        return r40016;
}

Error

Bits error versus kx

Bits error versus ky

Bits error versus th

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 12.5

    \[\frac{\sin ky}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}} \cdot \sin th\]
  2. Using strategy rm
  3. Applied *-un-lft-identity12.5

    \[\leadsto \frac{\sin ky}{\sqrt{\color{blue}{1 \cdot \left({\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}\right)}}} \cdot \sin th\]
  4. Applied sqrt-prod12.5

    \[\leadsto \frac{\sin ky}{\color{blue}{\sqrt{1} \cdot \sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}}} \cdot \sin th\]
  5. Applied associate-/r*12.5

    \[\leadsto \color{blue}{\frac{\frac{\sin ky}{\sqrt{1}}}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}}} \cdot \sin th\]
  6. Simplified12.5

    \[\leadsto \frac{\color{blue}{\frac{\sin ky}{1}}}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}} \cdot \sin th\]
  7. Using strategy rm
  8. Applied add-cube-cbrt12.6

    \[\leadsto \frac{\frac{\sin ky}{1}}{\sqrt{\color{blue}{\left(\sqrt[3]{{\left(\sin kx\right)}^{2}} \cdot \sqrt[3]{{\left(\sin kx\right)}^{2}}\right) \cdot \sqrt[3]{{\left(\sin kx\right)}^{2}}} + {\left(\sin ky\right)}^{2}}} \cdot \sin th\]
  9. Final simplification13.6

    \[\leadsto \frac{\sin ky \cdot \sin th}{\sqrt{\left(\sqrt[3]{{\left(\sin kx\right)}^{2}} \cdot \sqrt[3]{{\left(\sin kx\right)}^{2}}\right) \cdot \sqrt[3]{{\left(\sin kx\right)}^{2}} + {\left(\sin ky\right)}^{2}}}\]

Reproduce

herbie shell --seed 2019291 
(FPCore (kx ky th)
  :name "Toniolo and Linder, Equation (3b), real"
  :precision binary64
  (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)))