Average Error: 0.1 → 0.1
Time: 19.6s
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 r103073 = x;
        double r103074 = y;
        double r103075 = cos(r103074);
        double r103076 = r103073 + r103075;
        double r103077 = z;
        double r103078 = sin(r103074);
        double r103079 = r103077 * r103078;
        double r103080 = r103076 - r103079;
        return r103080;
}

double f(double x, double y, double z) {
        double r103081 = x;
        double r103082 = y;
        double r103083 = cos(r103082);
        double r103084 = r103081 + r103083;
        double r103085 = z;
        double r103086 = sin(r103082);
        double r103087 = r103085 * r103086;
        double r103088 = r103084 - r103087;
        return r103088;
}

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