Average Error: 28.6 → 2.6
Time: 6.2s
Precision: binary64
\[\frac{\cos \left(2 \cdot x\right)}{{c}^{2} \cdot \left(\left(x \cdot {s}^{2}\right) \cdot x\right)}\]
\[\frac{\frac{1}{\sqrt{\left|s \cdot \left(c \cdot x\right)\right|}}}{\frac{{\left(\left|s \cdot \left(c \cdot x\right)\right|\right)}^{1.5}}{\cos \left(x \cdot 2\right)}}\]
\frac{\cos \left(2 \cdot x\right)}{{c}^{2} \cdot \left(\left(x \cdot {s}^{2}\right) \cdot x\right)}
\frac{\frac{1}{\sqrt{\left|s \cdot \left(c \cdot x\right)\right|}}}{\frac{{\left(\left|s \cdot \left(c \cdot x\right)\right|\right)}^{1.5}}{\cos \left(x \cdot 2\right)}}
(FPCore (x c s)
 :precision binary64
 (/ (cos (* 2.0 x)) (* (pow c 2.0) (* (* x (pow s 2.0)) x))))
(FPCore (x c s)
 :precision binary64
 (/
  (/ 1.0 (sqrt (fabs (* s (* c x)))))
  (/ (pow (fabs (* s (* c x))) 1.5) (cos (* x 2.0)))))
double code(double x, double c, double s) {
	return cos(2.0 * x) / (pow(c, 2.0) * ((x * pow(s, 2.0)) * x));
}
double code(double x, double c, double s) {
	return (1.0 / sqrt(fabs(s * (c * x)))) / (pow(fabs(s * (c * x)), 1.5) / cos(x * 2.0));
}

Error

Bits error versus x

Bits error versus c

Bits error versus s

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 28.6

    \[\frac{\cos \left(2 \cdot x\right)}{{c}^{2} \cdot \left(\left(x \cdot {s}^{2}\right) \cdot x\right)}\]
  2. Using strategy rm
  3. Applied add-sqr-sqrt_binary6428.6

    \[\leadsto \frac{\cos \left(2 \cdot x\right)}{\color{blue}{\sqrt{{c}^{2} \cdot \left(\left(x \cdot {s}^{2}\right) \cdot x\right)} \cdot \sqrt{{c}^{2} \cdot \left(\left(x \cdot {s}^{2}\right) \cdot x\right)}}}\]
  4. Simplified28.6

    \[\leadsto \frac{\cos \left(2 \cdot x\right)}{\color{blue}{\left|s \cdot \left(c \cdot x\right)\right|} \cdot \sqrt{{c}^{2} \cdot \left(\left(x \cdot {s}^{2}\right) \cdot x\right)}}\]
  5. Simplified2.8

    \[\leadsto \frac{\cos \left(2 \cdot x\right)}{\left|s \cdot \left(c \cdot x\right)\right| \cdot \color{blue}{\left|s \cdot \left(c \cdot x\right)\right|}}\]
  6. Using strategy rm
  7. Applied associate-/r*_binary642.6

    \[\leadsto \color{blue}{\frac{\frac{\cos \left(2 \cdot x\right)}{\left|s \cdot \left(c \cdot x\right)\right|}}{\left|s \cdot \left(c \cdot x\right)\right|}}\]
  8. Simplified2.6

    \[\leadsto \frac{\color{blue}{\frac{\cos \left(x \cdot 2\right)}{\left|s \cdot \left(c \cdot x\right)\right|}}}{\left|s \cdot \left(c \cdot x\right)\right|}\]
  9. Using strategy rm
  10. Applied add-sqr-sqrt_binary642.6

    \[\leadsto \frac{\frac{\cos \left(x \cdot 2\right)}{\color{blue}{\sqrt{\left|s \cdot \left(c \cdot x\right)\right|} \cdot \sqrt{\left|s \cdot \left(c \cdot x\right)\right|}}}}{\left|s \cdot \left(c \cdot x\right)\right|}\]
  11. Applied *-un-lft-identity_binary642.6

    \[\leadsto \frac{\frac{\color{blue}{1 \cdot \cos \left(x \cdot 2\right)}}{\sqrt{\left|s \cdot \left(c \cdot x\right)\right|} \cdot \sqrt{\left|s \cdot \left(c \cdot x\right)\right|}}}{\left|s \cdot \left(c \cdot x\right)\right|}\]
  12. Applied times-frac_binary642.6

    \[\leadsto \frac{\color{blue}{\frac{1}{\sqrt{\left|s \cdot \left(c \cdot x\right)\right|}} \cdot \frac{\cos \left(x \cdot 2\right)}{\sqrt{\left|s \cdot \left(c \cdot x\right)\right|}}}}{\left|s \cdot \left(c \cdot x\right)\right|}\]
  13. Applied associate-/l*_binary642.7

    \[\leadsto \color{blue}{\frac{\frac{1}{\sqrt{\left|s \cdot \left(c \cdot x\right)\right|}}}{\frac{\left|s \cdot \left(c \cdot x\right)\right|}{\frac{\cos \left(x \cdot 2\right)}{\sqrt{\left|s \cdot \left(c \cdot x\right)\right|}}}}}\]
  14. Simplified2.6

    \[\leadsto \frac{\frac{1}{\sqrt{\left|s \cdot \left(c \cdot x\right)\right|}}}{\color{blue}{\frac{{\left(\left|s \cdot \left(c \cdot x\right)\right|\right)}^{1.5}}{\cos \left(x \cdot 2\right)}}}\]
  15. Final simplification2.6

    \[\leadsto \frac{\frac{1}{\sqrt{\left|s \cdot \left(c \cdot x\right)\right|}}}{\frac{{\left(\left|s \cdot \left(c \cdot x\right)\right|\right)}^{1.5}}{\cos \left(x \cdot 2\right)}}\]

Reproduce

herbie shell --seed 2020260 
(FPCore (x c s)
  :name "mixedcos"
  :precision binary64
  (/ (cos (* 2.0 x)) (* (pow c 2.0) (* (* x (pow s 2.0)) x))))