Average Error: 31.8 → 31.8
Time: 3.3s
Precision: binary64
\[\sqrt{{\left(a - b \cdot \cos x\right)}^{2} + {\left(b \cdot \sin x\right)}^{2}}\]
\[\sqrt{{\left(a - b \cdot \cos x\right)}^{2} + {\left(b \cdot \sin x\right)}^{2}}\]
\sqrt{{\left(a - b \cdot \cos x\right)}^{2} + {\left(b \cdot \sin x\right)}^{2}}
\sqrt{{\left(a - b \cdot \cos x\right)}^{2} + {\left(b \cdot \sin x\right)}^{2}}
double code(double a, double b, double x) {
	return ((double) sqrt(((double) (((double) pow(((double) (a - ((double) (b * ((double) cos(x)))))), 2.0)) + ((double) pow(((double) (b * ((double) sin(x)))), 2.0))))));
}
double code(double a, double b, double x) {
	return ((double) sqrt(((double) (((double) pow(((double) (a - ((double) (b * ((double) cos(x)))))), 2.0)) + ((double) pow(((double) (b * ((double) sin(x)))), 2.0))))));
}

Error

Bits error versus a

Bits error versus b

Bits error versus x

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 31.8

    \[\sqrt{{\left(a - b \cdot \cos x\right)}^{2} + {\left(b \cdot \sin x\right)}^{2}}\]
  2. Final simplification31.8

    \[\leadsto \sqrt{{\left(a - b \cdot \cos x\right)}^{2} + {\left(b \cdot \sin x\right)}^{2}}\]

Reproduce

herbie shell --seed 2020152 
(FPCore (a b x)
  :name "(sqrt (+ (pow (- a (* b (cos x))) 2) (pow (* b (sin x)) 2)))"
  :precision binary64
  (sqrt (+ (pow (- a (* b (cos x))) 2.0) (pow (* b (sin x)) 2.0))))