Average Error: 7.0 → 7.0
Time: 3.9s
Precision: binary64
\[\cos a - \cos b \cdot \cos c\]
\[\cos a - \cos b \cdot \cos c\]
\cos a - \cos b \cdot \cos c
\cos a - \cos b \cdot \cos c
double code(double a, double b, double c) {
	return ((double) (((double) cos(a)) - ((double) (((double) cos(b)) * ((double) cos(c))))));
}
double code(double a, double b, double c) {
	return ((double) (((double) cos(a)) - ((double) (((double) cos(b)) * ((double) cos(c))))));
}

Error

Bits error versus a

Bits error versus b

Bits error versus c

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 7.0

    \[\cos a - \cos b \cdot \cos c\]
  2. Final simplification7.0

    \[\leadsto \cos a - \cos b \cdot \cos c\]

Reproduce

herbie shell --seed 2020153 
(FPCore (a b c)
  :name "(- (cos a) (* (cos b) (cos c)))"
  :precision binary64
  (- (cos a) (* (cos b) (cos c))))