Average Error: 21.7 → 0.1
Time: 12.1s
Precision: 64
\[\frac{xi1 \cdot \left(xi1 \cdot \left(xi1 \cdot 0.2738499999999999823252494479675078764558 - 0.7336899999999999533173422605614177882671\right) + 0.4634099999999999885957890910503920167685\right)}{xi1 \cdot \left(xi1 \cdot \left(xi1 \cdot 0.09307300000000000295141688866351614706218 + 0.3094199999999999728395039255701703950763\right) - 1\right) + 0.5979989999999999472635181518853642046452}\]
\[\begin{array}{l} \mathbf{if}\;xi1 \le -4102803576.3254222869873046875 \lor \neg \left(xi1 \le 996780.40737196407280862331390380859375\right):\\ \;\;\;\;2.942314097536342210048587730852887034416 + \left(\frac{95.31782908038687196494720410555601119995}{{xi1}^{2}} - \frac{17.66463773661206460019457153975963592529}{xi1}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{xi1 \cdot \left(xi1 \cdot 0.2738499999999999823252494479675078764558 - 0.7336899999999999533173422605614177882671\right) + 0.4634099999999999885957890910503920167685}{\frac{{\left(xi1 \cdot 0.09307300000000000295141688866351614706218\right)}^{3} + {0.3094199999999999728395039255701703950763}^{3}}{\left(xi1 \cdot 0.09307300000000000295141688866351614706218\right) \cdot \left(xi1 \cdot 0.09307300000000000295141688866351614706218\right) + 0.3094199999999999728395039255701703950763 \cdot \left(0.3094199999999999728395039255701703950763 - xi1 \cdot 0.09307300000000000295141688866351614706218\right)} \cdot xi1 - \left(1 - \frac{0.5979989999999999472635181518853642046452}{xi1}\right)}\\ \end{array}\]
\frac{xi1 \cdot \left(xi1 \cdot \left(xi1 \cdot 0.2738499999999999823252494479675078764558 - 0.7336899999999999533173422605614177882671\right) + 0.4634099999999999885957890910503920167685\right)}{xi1 \cdot \left(xi1 \cdot \left(xi1 \cdot 0.09307300000000000295141688866351614706218 + 0.3094199999999999728395039255701703950763\right) - 1\right) + 0.5979989999999999472635181518853642046452}
\begin{array}{l}
\mathbf{if}\;xi1 \le -4102803576.3254222869873046875 \lor \neg \left(xi1 \le 996780.40737196407280862331390380859375\right):\\
\;\;\;\;2.942314097536342210048587730852887034416 + \left(\frac{95.31782908038687196494720410555601119995}{{xi1}^{2}} - \frac{17.66463773661206460019457153975963592529}{xi1}\right)\\

\mathbf{else}:\\
\;\;\;\;\frac{xi1 \cdot \left(xi1 \cdot 0.2738499999999999823252494479675078764558 - 0.7336899999999999533173422605614177882671\right) + 0.4634099999999999885957890910503920167685}{\frac{{\left(xi1 \cdot 0.09307300000000000295141688866351614706218\right)}^{3} + {0.3094199999999999728395039255701703950763}^{3}}{\left(xi1 \cdot 0.09307300000000000295141688866351614706218\right) \cdot \left(xi1 \cdot 0.09307300000000000295141688866351614706218\right) + 0.3094199999999999728395039255701703950763 \cdot \left(0.3094199999999999728395039255701703950763 - xi1 \cdot 0.09307300000000000295141688866351614706218\right)} \cdot xi1 - \left(1 - \frac{0.5979989999999999472635181518853642046452}{xi1}\right)}\\

\end{array}
double f(double xi1) {
        double r485210 = xi1;
        double r485211 = 0.27385;
        double r485212 = r485210 * r485211;
        double r485213 = 0.73369;
        double r485214 = r485212 - r485213;
        double r485215 = r485210 * r485214;
        double r485216 = 0.46341;
        double r485217 = r485215 + r485216;
        double r485218 = r485210 * r485217;
        double r485219 = 0.093073;
        double r485220 = r485210 * r485219;
        double r485221 = 0.30942;
        double r485222 = r485220 + r485221;
        double r485223 = r485210 * r485222;
        double r485224 = 1.0;
        double r485225 = r485223 - r485224;
        double r485226 = r485210 * r485225;
        double r485227 = 0.597999;
        double r485228 = r485226 + r485227;
        double r485229 = r485218 / r485228;
        return r485229;
}

double f(double xi1) {
        double r485230 = xi1;
        double r485231 = -4102803576.3254223;
        bool r485232 = r485230 <= r485231;
        double r485233 = 996780.4073719641;
        bool r485234 = r485230 <= r485233;
        double r485235 = !r485234;
        bool r485236 = r485232 || r485235;
        double r485237 = 2.942314097536342;
        double r485238 = 95.31782908038687;
        double r485239 = 2.0;
        double r485240 = pow(r485230, r485239);
        double r485241 = r485238 / r485240;
        double r485242 = 17.664637736612065;
        double r485243 = r485242 / r485230;
        double r485244 = r485241 - r485243;
        double r485245 = r485237 + r485244;
        double r485246 = 0.27385;
        double r485247 = r485230 * r485246;
        double r485248 = 0.73369;
        double r485249 = r485247 - r485248;
        double r485250 = r485230 * r485249;
        double r485251 = 0.46341;
        double r485252 = r485250 + r485251;
        double r485253 = 0.093073;
        double r485254 = r485230 * r485253;
        double r485255 = 3.0;
        double r485256 = pow(r485254, r485255);
        double r485257 = 0.30942;
        double r485258 = pow(r485257, r485255);
        double r485259 = r485256 + r485258;
        double r485260 = r485254 * r485254;
        double r485261 = r485257 - r485254;
        double r485262 = r485257 * r485261;
        double r485263 = r485260 + r485262;
        double r485264 = r485259 / r485263;
        double r485265 = r485264 * r485230;
        double r485266 = 1.0;
        double r485267 = 0.597999;
        double r485268 = r485267 / r485230;
        double r485269 = r485266 - r485268;
        double r485270 = r485265 - r485269;
        double r485271 = r485252 / r485270;
        double r485272 = r485236 ? r485245 : r485271;
        return r485272;
}

Error

Bits error versus xi1

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Split input into 2 regimes
  2. if xi1 < -4102803576.3254223 or 996780.4073719641 < xi1

    1. Initial program 43.8

      \[\frac{xi1 \cdot \left(xi1 \cdot \left(xi1 \cdot 0.2738499999999999823252494479675078764558 - 0.7336899999999999533173422605614177882671\right) + 0.4634099999999999885957890910503920167685\right)}{xi1 \cdot \left(xi1 \cdot \left(xi1 \cdot 0.09307300000000000295141688866351614706218 + 0.3094199999999999728395039255701703950763\right) - 1\right) + 0.5979989999999999472635181518853642046452}\]
    2. Simplified32.9

      \[\leadsto \color{blue}{\frac{xi1 \cdot \left(xi1 \cdot 0.2738499999999999823252494479675078764558 - 0.7336899999999999533173422605614177882671\right) + 0.4634099999999999885957890910503920167685}{\left(xi1 \cdot 0.09307300000000000295141688866351614706218 + 0.3094199999999999728395039255701703950763\right) \cdot xi1 - \left(1 - \frac{0.5979989999999999472635181518853642046452}{xi1}\right)}}\]
    3. Using strategy rm
    4. Applied add-cube-cbrt33.3

      \[\leadsto \frac{\color{blue}{\left(\sqrt[3]{xi1 \cdot \left(xi1 \cdot 0.2738499999999999823252494479675078764558 - 0.7336899999999999533173422605614177882671\right) + 0.4634099999999999885957890910503920167685} \cdot \sqrt[3]{xi1 \cdot \left(xi1 \cdot 0.2738499999999999823252494479675078764558 - 0.7336899999999999533173422605614177882671\right) + 0.4634099999999999885957890910503920167685}\right) \cdot \sqrt[3]{xi1 \cdot \left(xi1 \cdot 0.2738499999999999823252494479675078764558 - 0.7336899999999999533173422605614177882671\right) + 0.4634099999999999885957890910503920167685}}}{\left(xi1 \cdot 0.09307300000000000295141688866351614706218 + 0.3094199999999999728395039255701703950763\right) \cdot xi1 - \left(1 - \frac{0.5979989999999999472635181518853642046452}{xi1}\right)}\]
    5. Applied associate-/l*33.3

      \[\leadsto \color{blue}{\frac{\sqrt[3]{xi1 \cdot \left(xi1 \cdot 0.2738499999999999823252494479675078764558 - 0.7336899999999999533173422605614177882671\right) + 0.4634099999999999885957890910503920167685} \cdot \sqrt[3]{xi1 \cdot \left(xi1 \cdot 0.2738499999999999823252494479675078764558 - 0.7336899999999999533173422605614177882671\right) + 0.4634099999999999885957890910503920167685}}{\frac{\left(xi1 \cdot 0.09307300000000000295141688866351614706218 + 0.3094199999999999728395039255701703950763\right) \cdot xi1 - \left(1 - \frac{0.5979989999999999472635181518853642046452}{xi1}\right)}{\sqrt[3]{xi1 \cdot \left(xi1 \cdot 0.2738499999999999823252494479675078764558 - 0.7336899999999999533173422605614177882671\right) + 0.4634099999999999885957890910503920167685}}}}\]
    6. Taylor expanded around inf 0.0

      \[\leadsto \color{blue}{\left(95.31782908038687196494720410555601119995 \cdot \frac{1}{{xi1}^{2}} + 2.942314097536342210048587730852887034416\right) - 17.66463773661206460019457153975963592529 \cdot \frac{1}{xi1}}\]
    7. Simplified0.0

      \[\leadsto \color{blue}{2.942314097536342210048587730852887034416 + \left(\frac{95.31782908038687196494720410555601119995}{{xi1}^{2}} - \frac{17.66463773661206460019457153975963592529}{xi1}\right)}\]

    if -4102803576.3254223 < xi1 < 996780.4073719641

    1. Initial program 0.3

      \[\frac{xi1 \cdot \left(xi1 \cdot \left(xi1 \cdot 0.2738499999999999823252494479675078764558 - 0.7336899999999999533173422605614177882671\right) + 0.4634099999999999885957890910503920167685\right)}{xi1 \cdot \left(xi1 \cdot \left(xi1 \cdot 0.09307300000000000295141688866351614706218 + 0.3094199999999999728395039255701703950763\right) - 1\right) + 0.5979989999999999472635181518853642046452}\]
    2. Simplified0.3

      \[\leadsto \color{blue}{\frac{xi1 \cdot \left(xi1 \cdot 0.2738499999999999823252494479675078764558 - 0.7336899999999999533173422605614177882671\right) + 0.4634099999999999885957890910503920167685}{\left(xi1 \cdot 0.09307300000000000295141688866351614706218 + 0.3094199999999999728395039255701703950763\right) \cdot xi1 - \left(1 - \frac{0.5979989999999999472635181518853642046452}{xi1}\right)}}\]
    3. Using strategy rm
    4. Applied flip3-+0.3

      \[\leadsto \frac{xi1 \cdot \left(xi1 \cdot 0.2738499999999999823252494479675078764558 - 0.7336899999999999533173422605614177882671\right) + 0.4634099999999999885957890910503920167685}{\color{blue}{\frac{{\left(xi1 \cdot 0.09307300000000000295141688866351614706218\right)}^{3} + {0.3094199999999999728395039255701703950763}^{3}}{\left(xi1 \cdot 0.09307300000000000295141688866351614706218\right) \cdot \left(xi1 \cdot 0.09307300000000000295141688866351614706218\right) + \left(0.3094199999999999728395039255701703950763 \cdot 0.3094199999999999728395039255701703950763 - \left(xi1 \cdot 0.09307300000000000295141688866351614706218\right) \cdot 0.3094199999999999728395039255701703950763\right)}} \cdot xi1 - \left(1 - \frac{0.5979989999999999472635181518853642046452}{xi1}\right)}\]
    5. Simplified0.3

      \[\leadsto \frac{xi1 \cdot \left(xi1 \cdot 0.2738499999999999823252494479675078764558 - 0.7336899999999999533173422605614177882671\right) + 0.4634099999999999885957890910503920167685}{\frac{{\left(xi1 \cdot 0.09307300000000000295141688866351614706218\right)}^{3} + {0.3094199999999999728395039255701703950763}^{3}}{\color{blue}{\left(xi1 \cdot 0.09307300000000000295141688866351614706218\right) \cdot \left(xi1 \cdot 0.09307300000000000295141688866351614706218\right) + 0.3094199999999999728395039255701703950763 \cdot \left(0.3094199999999999728395039255701703950763 - xi1 \cdot 0.09307300000000000295141688866351614706218\right)}} \cdot xi1 - \left(1 - \frac{0.5979989999999999472635181518853642046452}{xi1}\right)}\]
  3. Recombined 2 regimes into one program.
  4. Final simplification0.1

    \[\leadsto \begin{array}{l} \mathbf{if}\;xi1 \le -4102803576.3254222869873046875 \lor \neg \left(xi1 \le 996780.40737196407280862331390380859375\right):\\ \;\;\;\;2.942314097536342210048587730852887034416 + \left(\frac{95.31782908038687196494720410555601119995}{{xi1}^{2}} - \frac{17.66463773661206460019457153975963592529}{xi1}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{xi1 \cdot \left(xi1 \cdot 0.2738499999999999823252494479675078764558 - 0.7336899999999999533173422605614177882671\right) + 0.4634099999999999885957890910503920167685}{\frac{{\left(xi1 \cdot 0.09307300000000000295141688866351614706218\right)}^{3} + {0.3094199999999999728395039255701703950763}^{3}}{\left(xi1 \cdot 0.09307300000000000295141688866351614706218\right) \cdot \left(xi1 \cdot 0.09307300000000000295141688866351614706218\right) + 0.3094199999999999728395039255701703950763 \cdot \left(0.3094199999999999728395039255701703950763 - xi1 \cdot 0.09307300000000000295141688866351614706218\right)} \cdot xi1 - \left(1 - \frac{0.5979989999999999472635181518853642046452}{xi1}\right)}\\ \end{array}\]

Reproduce

herbie shell --seed 1 
(FPCore (xi1)
  :name "( xi1 * ( xi1 * ( xi1 * 0.27385 - 0.73369 ) + 0.46341) ) / ( xi1 * ( xi1 * ( xi1 * 0.093073 + 0.309420 ) - 1 ) + 0.597999 )"
  :precision binary64
  (/ (* xi1 (+ (* xi1 (- (* xi1 0.273849999999999982) 0.73368999999999995)) 0.46340999999999999)) (+ (* xi1 (- (* xi1 (+ (* xi1 0.093073000000000003) 0.309419999999999973)) 1)) 0.59799899999999995)))