least integer not represented in floating point system

316 Views Asked by At

Given a floating point system defined as: $F = \{x = (\frac{m}{\beta^t})\beta^e = m\beta^{e-t}\}$, where $m$ is an integer $m \in [1, \beta^t]$, $e$ is an arbitrary integer, and $\beta$ is an integer $\beta \geq 2$. Find an exact formula for the smallest integer $n$ that does not belong to $F$.

In a floating point system, $t$ is often $53$, so with that in mind $x = m*\beta^{e-53}$

I read that the solution is $\beta^t + 1$, but I'm not sure how to prove there is no combination of $m, e$ such that $m\beta^{e-53} = \beta^{53}+1$.

2

There are 2 best solutions below

4
On BEST ANSWER

It is obvious that all integers $\le\beta^m$ can be represented, with $e=t$. Then if $e>t$, all the numbers that you get are multiples of $\beta$.

The first non-multiple of $\beta$ above $\beta^t$ is $\beta^t+1$.

0
On

I was looking more for a proof in an answer, so here is a simple case:

$$ F = \{m\beta^{e-t}\},\\ m \text{ is an integer } \in [1, \beta^t],\\ e \text{ is an arbitrary integer}, \\ t = 1 $$

For a very simple example: let $\beta = 2$; if $e = t, \,\, m\beta^{e-t} = m$, and since $m \in [1, \beta^t] = [1, 2]$, the set $F$ contains $1$ and $2$.

Since the maximum $m$ can be is $2$, we can only get more numbers in the set by varying $e$. The next highest number is $\beta^t + 1 = 3$, but since $\beta = 2$ is even, no integer multiple of an even number will be odd, thus we can never form $3$, and $\beta^t + 1$ is not in the set.