Average Error: 0.1 → 0.1
Time: 4.9s
Precision: 64
\[\left(x + \cos y\right) - z \cdot \sin y\]
\[\left(x + \cos y\right) - z \cdot \sin y\]
\left(x + \cos y\right) - z \cdot \sin y
\left(x + \cos y\right) - z \cdot \sin y
double f(double x, double y, double z) {
        double r191304 = x;
        double r191305 = y;
        double r191306 = cos(r191305);
        double r191307 = r191304 + r191306;
        double r191308 = z;
        double r191309 = sin(r191305);
        double r191310 = r191308 * r191309;
        double r191311 = r191307 - r191310;
        return r191311;
}

double f(double x, double y, double z) {
        double r191312 = x;
        double r191313 = y;
        double r191314 = cos(r191313);
        double r191315 = r191312 + r191314;
        double r191316 = z;
        double r191317 = sin(r191313);
        double r191318 = r191316 * r191317;
        double r191319 = r191315 - r191318;
        return r191319;
}

Error

Bits error versus x

Bits error versus y

Bits error versus z

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.1

    \[\left(x + \cos y\right) - z \cdot \sin y\]
  2. Final simplification0.1

    \[\leadsto \left(x + \cos y\right) - z \cdot \sin y\]

Reproduce

herbie shell --seed 2020060 +o rules:numerics
(FPCore (x y z)
  :name "Graphics.Rasterific.Svg.PathConverter:segmentToBezier from rasterific-svg-0.2.3.1, B"
  :precision binary64
  (- (+ x (cos y)) (* z (sin y))))