Average Error: 0.0 → 0.0
Time: 31.2s
Precision: 64
\[0.70711 \cdot \left(\frac{2.30753 + x \cdot 0.27061}{1.0 + x \cdot \left(0.99229 + x \cdot 0.04481\right)} - x\right)\]
\[0.70711 \cdot \left(\frac{2.30753 + x \cdot 0.27061}{1.0 + \sqrt[3]{x \cdot 0.04481 + 0.99229} \cdot \left(x \cdot \left(\sqrt[3]{x \cdot 0.04481 + 0.99229} \cdot \sqrt[3]{x \cdot 0.04481 + 0.99229}\right)\right)} - x\right)\]
0.70711 \cdot \left(\frac{2.30753 + x \cdot 0.27061}{1.0 + x \cdot \left(0.99229 + x \cdot 0.04481\right)} - x\right)
0.70711 \cdot \left(\frac{2.30753 + x \cdot 0.27061}{1.0 + \sqrt[3]{x \cdot 0.04481 + 0.99229} \cdot \left(x \cdot \left(\sqrt[3]{x \cdot 0.04481 + 0.99229} \cdot \sqrt[3]{x \cdot 0.04481 + 0.99229}\right)\right)} - x\right)
double f(double x) {
        double r4761034 = 0.70711;
        double r4761035 = 2.30753;
        double r4761036 = x;
        double r4761037 = 0.27061;
        double r4761038 = r4761036 * r4761037;
        double r4761039 = r4761035 + r4761038;
        double r4761040 = 1.0;
        double r4761041 = 0.99229;
        double r4761042 = 0.04481;
        double r4761043 = r4761036 * r4761042;
        double r4761044 = r4761041 + r4761043;
        double r4761045 = r4761036 * r4761044;
        double r4761046 = r4761040 + r4761045;
        double r4761047 = r4761039 / r4761046;
        double r4761048 = r4761047 - r4761036;
        double r4761049 = r4761034 * r4761048;
        return r4761049;
}

double f(double x) {
        double r4761050 = 0.70711;
        double r4761051 = 2.30753;
        double r4761052 = x;
        double r4761053 = 0.27061;
        double r4761054 = r4761052 * r4761053;
        double r4761055 = r4761051 + r4761054;
        double r4761056 = 1.0;
        double r4761057 = 0.04481;
        double r4761058 = r4761052 * r4761057;
        double r4761059 = 0.99229;
        double r4761060 = r4761058 + r4761059;
        double r4761061 = cbrt(r4761060);
        double r4761062 = r4761061 * r4761061;
        double r4761063 = r4761052 * r4761062;
        double r4761064 = r4761061 * r4761063;
        double r4761065 = r4761056 + r4761064;
        double r4761066 = r4761055 / r4761065;
        double r4761067 = r4761066 - r4761052;
        double r4761068 = r4761050 * r4761067;
        return r4761068;
}

Error

Bits error versus x

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.0

    \[0.70711 \cdot \left(\frac{2.30753 + x \cdot 0.27061}{1.0 + x \cdot \left(0.99229 + x \cdot 0.04481\right)} - x\right)\]
  2. Using strategy rm
  3. Applied add-cube-cbrt0.0

    \[\leadsto 0.70711 \cdot \left(\frac{2.30753 + x \cdot 0.27061}{1.0 + x \cdot \color{blue}{\left(\left(\sqrt[3]{0.99229 + x \cdot 0.04481} \cdot \sqrt[3]{0.99229 + x \cdot 0.04481}\right) \cdot \sqrt[3]{0.99229 + x \cdot 0.04481}\right)}} - x\right)\]
  4. Applied associate-*r*0.0

    \[\leadsto 0.70711 \cdot \left(\frac{2.30753 + x \cdot 0.27061}{1.0 + \color{blue}{\left(x \cdot \left(\sqrt[3]{0.99229 + x \cdot 0.04481} \cdot \sqrt[3]{0.99229 + x \cdot 0.04481}\right)\right) \cdot \sqrt[3]{0.99229 + x \cdot 0.04481}}} - x\right)\]
  5. Final simplification0.0

    \[\leadsto 0.70711 \cdot \left(\frac{2.30753 + x \cdot 0.27061}{1.0 + \sqrt[3]{x \cdot 0.04481 + 0.99229} \cdot \left(x \cdot \left(\sqrt[3]{x \cdot 0.04481 + 0.99229} \cdot \sqrt[3]{x \cdot 0.04481 + 0.99229}\right)\right)} - x\right)\]

Reproduce

herbie shell --seed 2019165 
(FPCore (x)
  :name "Numeric.SpecFunctions:invErfc from math-functions-0.1.5.2, B"
  (* 0.70711 (- (/ (+ 2.30753 (* x 0.27061)) (+ 1.0 (* x (+ 0.99229 (* x 0.04481))))) x)))