Average Error: 14.4 → 0.3
Time: 37.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{8.0 \cdot \frac{\sin \left(0.5 \cdot x\right)}{3.0}}{\frac{\sin x}{\sin \left(0.5 \cdot x\right)}}\]
\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{8.0 \cdot \frac{\sin \left(0.5 \cdot x\right)}{3.0}}{\frac{\sin x}{\sin \left(0.5 \cdot x\right)}}
double f(double x) {
        double r25563180 = 8.0;
        double r25563181 = 3.0;
        double r25563182 = r25563180 / r25563181;
        double r25563183 = x;
        double r25563184 = 0.5;
        double r25563185 = r25563183 * r25563184;
        double r25563186 = sin(r25563185);
        double r25563187 = r25563182 * r25563186;
        double r25563188 = r25563187 * r25563186;
        double r25563189 = sin(r25563183);
        double r25563190 = r25563188 / r25563189;
        return r25563190;
}

double f(double x) {
        double r25563191 = 8.0;
        double r25563192 = 0.5;
        double r25563193 = x;
        double r25563194 = r25563192 * r25563193;
        double r25563195 = sin(r25563194);
        double r25563196 = 3.0;
        double r25563197 = r25563195 / r25563196;
        double r25563198 = r25563191 * r25563197;
        double r25563199 = sin(r25563193);
        double r25563200 = r25563199 / r25563195;
        double r25563201 = r25563198 / r25563200;
        return r25563201;
}

Error

Bits error versus x

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Target

Original14.4
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.4

    \[\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 associate-/l*0.5

    \[\leadsto \color{blue}{\frac{\frac{8.0}{3.0} \cdot \sin \left(x \cdot 0.5\right)}{\frac{\sin x}{\sin \left(x \cdot 0.5\right)}}}\]
  4. Using strategy rm
  5. Applied div-inv0.5

    \[\leadsto \frac{\color{blue}{\left(8.0 \cdot \frac{1}{3.0}\right)} \cdot \sin \left(x \cdot 0.5\right)}{\frac{\sin x}{\sin \left(x \cdot 0.5\right)}}\]
  6. Applied associate-*l*0.5

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

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

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

Reproduce

herbie shell --seed 2019165 +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)))