Average Error: 0.5 → 0.5
Time: 37.2s
Precision: 64
\[\frac{2 + \left(\left(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right) \cdot \left(\sin y - \frac{\sin x}{16}\right)\right) \cdot \left(\cos x - \cos y\right)}{3 \cdot \left(\left(1 + \frac{\sqrt{5} - 1}{2} \cdot \cos x\right) + \frac{3 - \sqrt{5}}{2} \cdot \cos y\right)}\]
\[\frac{2 \cdot 2 - \left(\left(\left(\sin y - \frac{\sin x}{16}\right) \cdot \left(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right)\right) \cdot \left(\cos x - \cos y\right)\right) \cdot \left(\left(\left(\sin y - \frac{\sin x}{16}\right) \cdot \left(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right)\right) \cdot \left(\cos x - \cos y\right)\right)}{\left(\mathsf{fma}\left(\cos y, \frac{3 - \sqrt{5}}{2}, \mathsf{fma}\left(\cos x, \frac{\sqrt{5} - 1}{2}, 1\right)\right) \cdot 3\right) \cdot \left(2 - \left(\left(\sin y - \frac{\sin x}{16}\right) \cdot \left(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right)\right) \cdot \left(\cos x - \cos y\right)\right)}\]
\frac{2 + \left(\left(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right) \cdot \left(\sin y - \frac{\sin x}{16}\right)\right) \cdot \left(\cos x - \cos y\right)}{3 \cdot \left(\left(1 + \frac{\sqrt{5} - 1}{2} \cdot \cos x\right) + \frac{3 - \sqrt{5}}{2} \cdot \cos y\right)}
\frac{2 \cdot 2 - \left(\left(\left(\sin y - \frac{\sin x}{16}\right) \cdot \left(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right)\right) \cdot \left(\cos x - \cos y\right)\right) \cdot \left(\left(\left(\sin y - \frac{\sin x}{16}\right) \cdot \left(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right)\right) \cdot \left(\cos x - \cos y\right)\right)}{\left(\mathsf{fma}\left(\cos y, \frac{3 - \sqrt{5}}{2}, \mathsf{fma}\left(\cos x, \frac{\sqrt{5} - 1}{2}, 1\right)\right) \cdot 3\right) \cdot \left(2 - \left(\left(\sin y - \frac{\sin x}{16}\right) \cdot \left(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right)\right) \cdot \left(\cos x - \cos y\right)\right)}
double f(double x, double y) {
        double r9119007 = 2.0;
        double r9119008 = sqrt(r9119007);
        double r9119009 = x;
        double r9119010 = sin(r9119009);
        double r9119011 = y;
        double r9119012 = sin(r9119011);
        double r9119013 = 16.0;
        double r9119014 = r9119012 / r9119013;
        double r9119015 = r9119010 - r9119014;
        double r9119016 = r9119008 * r9119015;
        double r9119017 = r9119010 / r9119013;
        double r9119018 = r9119012 - r9119017;
        double r9119019 = r9119016 * r9119018;
        double r9119020 = cos(r9119009);
        double r9119021 = cos(r9119011);
        double r9119022 = r9119020 - r9119021;
        double r9119023 = r9119019 * r9119022;
        double r9119024 = r9119007 + r9119023;
        double r9119025 = 3.0;
        double r9119026 = 1.0;
        double r9119027 = 5.0;
        double r9119028 = sqrt(r9119027);
        double r9119029 = r9119028 - r9119026;
        double r9119030 = r9119029 / r9119007;
        double r9119031 = r9119030 * r9119020;
        double r9119032 = r9119026 + r9119031;
        double r9119033 = r9119025 - r9119028;
        double r9119034 = r9119033 / r9119007;
        double r9119035 = r9119034 * r9119021;
        double r9119036 = r9119032 + r9119035;
        double r9119037 = r9119025 * r9119036;
        double r9119038 = r9119024 / r9119037;
        return r9119038;
}

double f(double x, double y) {
        double r9119039 = 2.0;
        double r9119040 = r9119039 * r9119039;
        double r9119041 = y;
        double r9119042 = sin(r9119041);
        double r9119043 = x;
        double r9119044 = sin(r9119043);
        double r9119045 = 16.0;
        double r9119046 = r9119044 / r9119045;
        double r9119047 = r9119042 - r9119046;
        double r9119048 = sqrt(r9119039);
        double r9119049 = r9119042 / r9119045;
        double r9119050 = r9119044 - r9119049;
        double r9119051 = r9119048 * r9119050;
        double r9119052 = r9119047 * r9119051;
        double r9119053 = cos(r9119043);
        double r9119054 = cos(r9119041);
        double r9119055 = r9119053 - r9119054;
        double r9119056 = r9119052 * r9119055;
        double r9119057 = r9119056 * r9119056;
        double r9119058 = r9119040 - r9119057;
        double r9119059 = 3.0;
        double r9119060 = 5.0;
        double r9119061 = sqrt(r9119060);
        double r9119062 = r9119059 - r9119061;
        double r9119063 = r9119062 / r9119039;
        double r9119064 = 1.0;
        double r9119065 = r9119061 - r9119064;
        double r9119066 = r9119065 / r9119039;
        double r9119067 = fma(r9119053, r9119066, r9119064);
        double r9119068 = fma(r9119054, r9119063, r9119067);
        double r9119069 = r9119068 * r9119059;
        double r9119070 = r9119039 - r9119056;
        double r9119071 = r9119069 * r9119070;
        double r9119072 = r9119058 / r9119071;
        return r9119072;
}

Error

Bits error versus x

Bits error versus y

Derivation

  1. Initial program 0.5

    \[\frac{2 + \left(\left(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right) \cdot \left(\sin y - \frac{\sin x}{16}\right)\right) \cdot \left(\cos x - \cos y\right)}{3 \cdot \left(\left(1 + \frac{\sqrt{5} - 1}{2} \cdot \cos x\right) + \frac{3 - \sqrt{5}}{2} \cdot \cos y\right)}\]
  2. Using strategy rm
  3. Applied flip-+0.5

    \[\leadsto \frac{\color{blue}{\frac{2 \cdot 2 - \left(\left(\left(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right) \cdot \left(\sin y - \frac{\sin x}{16}\right)\right) \cdot \left(\cos x - \cos y\right)\right) \cdot \left(\left(\left(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right) \cdot \left(\sin y - \frac{\sin x}{16}\right)\right) \cdot \left(\cos x - \cos y\right)\right)}{2 - \left(\left(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right) \cdot \left(\sin y - \frac{\sin x}{16}\right)\right) \cdot \left(\cos x - \cos y\right)}}}{3 \cdot \left(\left(1 + \frac{\sqrt{5} - 1}{2} \cdot \cos x\right) + \frac{3 - \sqrt{5}}{2} \cdot \cos y\right)}\]
  4. Applied associate-/l/0.5

    \[\leadsto \color{blue}{\frac{2 \cdot 2 - \left(\left(\left(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right) \cdot \left(\sin y - \frac{\sin x}{16}\right)\right) \cdot \left(\cos x - \cos y\right)\right) \cdot \left(\left(\left(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right) \cdot \left(\sin y - \frac{\sin x}{16}\right)\right) \cdot \left(\cos x - \cos y\right)\right)}{\left(3 \cdot \left(\left(1 + \frac{\sqrt{5} - 1}{2} \cdot \cos x\right) + \frac{3 - \sqrt{5}}{2} \cdot \cos y\right)\right) \cdot \left(2 - \left(\left(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right) \cdot \left(\sin y - \frac{\sin x}{16}\right)\right) \cdot \left(\cos x - \cos y\right)\right)}}\]
  5. Simplified0.5

    \[\leadsto \frac{2 \cdot 2 - \left(\left(\left(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right) \cdot \left(\sin y - \frac{\sin x}{16}\right)\right) \cdot \left(\cos x - \cos y\right)\right) \cdot \left(\left(\left(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right) \cdot \left(\sin y - \frac{\sin x}{16}\right)\right) \cdot \left(\cos x - \cos y\right)\right)}{\color{blue}{\left(2 - \left(\cos x - \cos y\right) \cdot \left(\left(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right) \cdot \left(\sin y - \frac{\sin x}{16}\right)\right)\right) \cdot \left(3 \cdot \mathsf{fma}\left(\cos y, \frac{3 - \sqrt{5}}{2}, \mathsf{fma}\left(\cos x, \frac{\sqrt{5} - 1}{2}, 1\right)\right)\right)}}\]
  6. Final simplification0.5

    \[\leadsto \frac{2 \cdot 2 - \left(\left(\left(\sin y - \frac{\sin x}{16}\right) \cdot \left(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right)\right) \cdot \left(\cos x - \cos y\right)\right) \cdot \left(\left(\left(\sin y - \frac{\sin x}{16}\right) \cdot \left(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right)\right) \cdot \left(\cos x - \cos y\right)\right)}{\left(\mathsf{fma}\left(\cos y, \frac{3 - \sqrt{5}}{2}, \mathsf{fma}\left(\cos x, \frac{\sqrt{5} - 1}{2}, 1\right)\right) \cdot 3\right) \cdot \left(2 - \left(\left(\sin y - \frac{\sin x}{16}\right) \cdot \left(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right)\right) \cdot \left(\cos x - \cos y\right)\right)}\]

Reproduce

herbie shell --seed 2019174 +o rules:numerics
(FPCore (x y)
  :name "Diagrams.TwoD.Path.Metafont.Internal:hobbyF from diagrams-contrib-1.3.0.5"
  (/ (+ 2.0 (* (* (* (sqrt 2.0) (- (sin x) (/ (sin y) 16.0))) (- (sin y) (/ (sin x) 16.0))) (- (cos x) (cos y)))) (* 3.0 (+ (+ 1.0 (* (/ (- (sqrt 5.0) 1.0) 2.0) (cos x))) (* (/ (- 3.0 (sqrt 5.0)) 2.0) (cos y))))))