Average Error: 14.8 → 14.3
Time: 28.8s
Precision: 64
\[1 - \sqrt{\frac{1}{2} \cdot \left(1 + \frac{1}{\mathsf{hypot}\left(1, x\right)}\right)}\]
\[\frac{\frac{1}{2} - \frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)}}{\frac{\sqrt{\left(\frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)} \cdot \frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)}\right) \cdot \frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)} + \frac{1}{8}}}{\sqrt{\frac{1}{4} - \frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)} \cdot \left(\frac{1}{2} - \frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)}\right)}} + 1}\]
1 - \sqrt{\frac{1}{2} \cdot \left(1 + \frac{1}{\mathsf{hypot}\left(1, x\right)}\right)}
\frac{\frac{1}{2} - \frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)}}{\frac{\sqrt{\left(\frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)} \cdot \frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)}\right) \cdot \frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)} + \frac{1}{8}}}{\sqrt{\frac{1}{4} - \frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)} \cdot \left(\frac{1}{2} - \frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)}\right)}} + 1}
double f(double x) {
        double r6920746 = 1.0;
        double r6920747 = 0.5;
        double r6920748 = x;
        double r6920749 = hypot(r6920746, r6920748);
        double r6920750 = r6920746 / r6920749;
        double r6920751 = r6920746 + r6920750;
        double r6920752 = r6920747 * r6920751;
        double r6920753 = sqrt(r6920752);
        double r6920754 = r6920746 - r6920753;
        return r6920754;
}

double f(double x) {
        double r6920755 = 0.5;
        double r6920756 = 1.0;
        double r6920757 = x;
        double r6920758 = hypot(r6920756, r6920757);
        double r6920759 = r6920755 / r6920758;
        double r6920760 = r6920755 - r6920759;
        double r6920761 = r6920759 * r6920759;
        double r6920762 = r6920761 * r6920759;
        double r6920763 = 0.125;
        double r6920764 = r6920762 + r6920763;
        double r6920765 = sqrt(r6920764);
        double r6920766 = 0.25;
        double r6920767 = r6920759 * r6920760;
        double r6920768 = r6920766 - r6920767;
        double r6920769 = sqrt(r6920768);
        double r6920770 = r6920765 / r6920769;
        double r6920771 = r6920770 + r6920756;
        double r6920772 = r6920760 / r6920771;
        return r6920772;
}

Error

Bits error versus x

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 14.8

    \[1 - \sqrt{\frac{1}{2} \cdot \left(1 + \frac{1}{\mathsf{hypot}\left(1, x\right)}\right)}\]
  2. Simplified14.8

    \[\leadsto \color{blue}{1 - \sqrt{\frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)} + \frac{1}{2}}}\]
  3. Using strategy rm
  4. Applied flip--14.8

    \[\leadsto \color{blue}{\frac{1 \cdot 1 - \sqrt{\frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)} + \frac{1}{2}} \cdot \sqrt{\frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)} + \frac{1}{2}}}{1 + \sqrt{\frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)} + \frac{1}{2}}}}\]
  5. Simplified14.3

    \[\leadsto \frac{\color{blue}{\frac{1}{2} - \frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)}}}{1 + \sqrt{\frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)} + \frac{1}{2}}}\]
  6. Using strategy rm
  7. Applied flip3-+14.3

    \[\leadsto \frac{\frac{1}{2} - \frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)}}{1 + \sqrt{\color{blue}{\frac{{\left(\frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)}\right)}^{3} + {\frac{1}{2}}^{3}}{\frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)} \cdot \frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)} + \left(\frac{1}{2} \cdot \frac{1}{2} - \frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)} \cdot \frac{1}{2}\right)}}}}\]
  8. Applied sqrt-div14.3

    \[\leadsto \frac{\frac{1}{2} - \frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)}}{1 + \color{blue}{\frac{\sqrt{{\left(\frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)}\right)}^{3} + {\frac{1}{2}}^{3}}}{\sqrt{\frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)} \cdot \frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)} + \left(\frac{1}{2} \cdot \frac{1}{2} - \frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)} \cdot \frac{1}{2}\right)}}}}\]
  9. Simplified14.3

    \[\leadsto \frac{\frac{1}{2} - \frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)}}{1 + \frac{\color{blue}{\sqrt{\frac{1}{8} + \frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)} \cdot \left(\frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)} \cdot \frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)}\right)}}}{\sqrt{\frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)} \cdot \frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)} + \left(\frac{1}{2} \cdot \frac{1}{2} - \frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)} \cdot \frac{1}{2}\right)}}}\]
  10. Simplified14.3

    \[\leadsto \frac{\frac{1}{2} - \frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)}}{1 + \frac{\sqrt{\frac{1}{8} + \frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)} \cdot \left(\frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)} \cdot \frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)}\right)}}{\color{blue}{\sqrt{\frac{1}{4} - \frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)} \cdot \left(\frac{1}{2} - \frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)}\right)}}}}\]
  11. Final simplification14.3

    \[\leadsto \frac{\frac{1}{2} - \frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)}}{\frac{\sqrt{\left(\frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)} \cdot \frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)}\right) \cdot \frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)} + \frac{1}{8}}}{\sqrt{\frac{1}{4} - \frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)} \cdot \left(\frac{1}{2} - \frac{\frac{1}{2}}{\mathsf{hypot}\left(1, x\right)}\right)}} + 1}\]

Reproduce

herbie shell --seed 2019139 
(FPCore (x)
  :name "Given's Rotation SVD example, simplified"
  (- 1 (sqrt (* 1/2 (+ 1 (/ 1 (hypot 1 x)))))))