Average Error: 0.3 → 0.3
Time: 17.5s
Precision: 64
\[\sin x \cdot \left(\cos x \cdot \sin x\right)\]
\[{\left(\sin x\right)}^{2} \cdot \cos x\]
\sin x \cdot \left(\cos x \cdot \sin x\right)
{\left(\sin x\right)}^{2} \cdot \cos x
double f(double x) {
        double r949145 = x;
        double r949146 = sin(r949145);
        double r949147 = cos(r949145);
        double r949148 = r949147 * r949146;
        double r949149 = r949146 * r949148;
        return r949149;
}

double f(double x) {
        double r949150 = x;
        double r949151 = sin(r949150);
        double r949152 = 2.0;
        double r949153 = pow(r949151, r949152);
        double r949154 = cos(r949150);
        double r949155 = r949153 * r949154;
        return r949155;
}

Error

Bits error versus x

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.3

    \[\sin x \cdot \left(\cos x \cdot \sin x\right)\]
  2. Taylor expanded around inf 0.3

    \[\leadsto \color{blue}{{\left(\sin x\right)}^{2} \cdot \cos x}\]
  3. Final simplification0.3

    \[\leadsto {\left(\sin x\right)}^{2} \cdot \cos x\]

Reproduce

herbie shell --seed 1 
(FPCore (x)
  :name "sin(x)cos(x) * sin(x)"
  :precision binary64
  (* (sin x) (* (cos x) (sin x))))