Average Error: 3.9 → 4.2
Time: 1.0m
Precision: 64
Internal Precision: 576
\[\frac{\sin ky}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}} \cdot \sin th\]
\[\left(\frac{1}{\sqrt{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}}} \cdot \frac{\sin ky}{\sqrt{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}}}\right) \cdot \sin th\]

Error

Bits error versus kx

Bits error versus ky

Bits error versus th

Derivation

  1. Initial program 3.9

    \[\frac{\sin ky}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}} \cdot \sin th\]
  2. Using strategy rm
  3. Applied add-sqr-sqrt3.9

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

    \[\leadsto \frac{\sin ky}{\color{blue}{\sqrt{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}} \cdot \sqrt{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}}}} \cdot \sin th\]
  5. Applied *-un-lft-identity4.2

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

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

Runtime

Time bar (total: 1.0m)Debug logProfile

herbie shell --seed '#(1071501266 3581234924 1086666455 2685055582 1243441566 1802958749)' 
(FPCore (kx ky th)
  :name "Toniolo and Linder, Equation (3b), real"
  (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)))