Average Error: 24.9 → 24.9
Time: 1.5s
Precision: binary64
\[\frac{cos2x}{{cosx}^{2} \cdot {sinx}^{2}}\]
\[\frac{cos2x}{{cosx}^{2} \cdot {sinx}^{2}}\]
\frac{cos2x}{{cosx}^{2} \cdot {sinx}^{2}}
\frac{cos2x}{{cosx}^{2} \cdot {sinx}^{2}}
double code(double cos2x, double cosx, double sinx) {
	return ((double) (cos2x / ((double) (((double) pow(cosx, 2.0)) * ((double) pow(sinx, 2.0))))));
}
double code(double cos2x, double cosx, double sinx) {
	return ((double) (cos2x / ((double) (((double) pow(cosx, 2.0)) * ((double) pow(sinx, 2.0))))));
}

Error

Bits error versus cos2x

Bits error versus cosx

Bits error versus sinx

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 24.9

    \[\frac{cos2x}{{cosx}^{2} \cdot {sinx}^{2}}\]
  2. Final simplification24.9

    \[\leadsto \frac{cos2x}{{cosx}^{2} \cdot {sinx}^{2}}\]

Reproduce

herbie shell --seed 2020152 
(FPCore (cos2x cosx sinx)
  :name "(/ cos2x (* (pow cosx 2) (pow sinx 2)))"
  :precision binary64
  (/ cos2x (* (pow cosx 2.0) (pow sinx 2.0))))