Average Error: 14.7 → 0.3
Time: 22.2s
Precision: 64
\[\frac{\left(\frac{8.0}{3.0} \cdot \sin \left(x \cdot 0.5\right)\right) \cdot \sin \left(x \cdot 0.5\right)}{\sin x}\]
\[\frac{\sin \left(x \cdot 0.5\right)}{\sin x} \cdot \frac{\sin \left(x \cdot 0.5\right)}{\frac{3.0}{8.0}}\]
\frac{\left(\frac{8.0}{3.0} \cdot \sin \left(x \cdot 0.5\right)\right) \cdot \sin \left(x \cdot 0.5\right)}{\sin x}
\frac{\sin \left(x \cdot 0.5\right)}{\sin x} \cdot \frac{\sin \left(x \cdot 0.5\right)}{\frac{3.0}{8.0}}
double f(double x) {
        double r18078769 = 8.0;
        double r18078770 = 3.0;
        double r18078771 = r18078769 / r18078770;
        double r18078772 = x;
        double r18078773 = 0.5;
        double r18078774 = r18078772 * r18078773;
        double r18078775 = sin(r18078774);
        double r18078776 = r18078771 * r18078775;
        double r18078777 = r18078776 * r18078775;
        double r18078778 = sin(r18078772);
        double r18078779 = r18078777 / r18078778;
        return r18078779;
}

double f(double x) {
        double r18078780 = x;
        double r18078781 = 0.5;
        double r18078782 = r18078780 * r18078781;
        double r18078783 = sin(r18078782);
        double r18078784 = sin(r18078780);
        double r18078785 = r18078783 / r18078784;
        double r18078786 = 3.0;
        double r18078787 = 8.0;
        double r18078788 = r18078786 / r18078787;
        double r18078789 = r18078783 / r18078788;
        double r18078790 = r18078785 * r18078789;
        return r18078790;
}

Error

Bits error versus x

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Target

Original14.7
Target0.3
Herbie0.3
\[\frac{\frac{8.0 \cdot \sin \left(x \cdot 0.5\right)}{3.0}}{\frac{\sin x}{\sin \left(x \cdot 0.5\right)}}\]

Derivation

  1. Initial program 14.7

    \[\frac{\left(\frac{8.0}{3.0} \cdot \sin \left(x \cdot 0.5\right)\right) \cdot \sin \left(x \cdot 0.5\right)}{\sin x}\]
  2. Using strategy rm
  3. Applied *-un-lft-identity14.7

    \[\leadsto \frac{\left(\frac{8.0}{3.0} \cdot \sin \left(x \cdot 0.5\right)\right) \cdot \sin \left(x \cdot 0.5\right)}{\color{blue}{1 \cdot \sin x}}\]
  4. Applied times-frac0.5

    \[\leadsto \color{blue}{\frac{\frac{8.0}{3.0} \cdot \sin \left(x \cdot 0.5\right)}{1} \cdot \frac{\sin \left(x \cdot 0.5\right)}{\sin x}}\]
  5. Simplified0.3

    \[\leadsto \color{blue}{\frac{\sin \left(x \cdot 0.5\right)}{\frac{3.0}{8.0}}} \cdot \frac{\sin \left(x \cdot 0.5\right)}{\sin x}\]
  6. Final simplification0.3

    \[\leadsto \frac{\sin \left(x \cdot 0.5\right)}{\sin x} \cdot \frac{\sin \left(x \cdot 0.5\right)}{\frac{3.0}{8.0}}\]

Reproduce

herbie shell --seed 2019163 +o rules:numerics
(FPCore (x)
  :name "Graphics.Rasterific.Svg.PathConverter:segmentToBezier from rasterific-svg-0.2.3.1, A"

  :herbie-target
  (/ (/ (* 8.0 (sin (* x 0.5))) 3.0) (/ (sin x) (sin (* x 0.5))))

  (/ (* (* (/ 8.0 3.0) (sin (* x 0.5))) (sin (* x 0.5))) (sin x)))