Another Splitting Technique: Splitting Around a Power of 2

Posted by Beetle B. on Tue 26 March 2019

In this section, assume \(\beta=2\).

Now given a floating point \(x\), we want to form two floating point numbers \(x_{h}\) and \(x_{l}\) such that:

  • \(x_{h}\) is a multiple of \(2^{h}\)
  • \(|x_{l}|\le2^{h}\)

The assumption is that \(|x|\le2^{h+p-1}\)

An algorithm to do this is:

  • Compute \(\sigma=2^{p+h}\)
  • \(y=\RN(\sigma+x)\)
  • \(x_{h}=\RN(y-\sigma)\)
  • \(x_{l}=\RN(x-x_{h})\)