Average Error: 0.1 → 0.1
Time: 1.0m
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 r41856627 = x;
        double r41856628 = y;
        double r41856629 = cos(r41856628);
        double r41856630 = r41856627 + r41856629;
        double r41856631 = z;
        double r41856632 = sin(r41856628);
        double r41856633 = r41856631 * r41856632;
        double r41856634 = r41856630 - r41856633;
        return r41856634;
}

double f(double x, double y, double z) {
        double r41856635 = x;
        double r41856636 = y;
        double r41856637 = cos(r41856636);
        double r41856638 = r41856635 + r41856637;
        double r41856639 = z;
        double r41856640 = sin(r41856636);
        double r41856641 = r41856639 * r41856640;
        double r41856642 = r41856638 - r41856641;
        return r41856642;
}

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 2019173 
(FPCore (x y z)
  :name "Graphics.Rasterific.Svg.PathConverter:segmentToBezier from rasterific-svg-0.2.3.1, B"
  (- (+ x (cos y)) (* z (sin y))))