I want to prove the following statement:
Let $r\in \mathbb{Q}$, $b\in \mathbb R$ and $b > 1$. Let $B(x)$ denote the set of all numbers of the form $b^t$ where $t\in \mathbb Q$ and $t \le x$ for real $x$. Prove that $b^r = \sup B(r)$.
Proof:
Define $T(x) = \{t \mid t\in \mathbb Q, t\le x\}$. The set $B(x) = \{b^t \mid t\in T(x)\}$.
To prove that $b^r$ is an upper bound of $B(r)$, note that $b^r = b^tb^{r-t} \ge b^t ~~~~\forall t\in T(r)$. To show that $b^r$ is the least upper bound, let $b^p < b^r$ be any arbitrary number where $p \in \mathbb Q$. Since there exists a rational number $q$ such that $p<q<r$, $b^p < b^q < b^r$. Since $b^q \in B(r)$ it follows that $b^p$ is not an upper bound and hence it is proved that $b^r = \sup B(r)$.
I want to ask if the proof is valid. I ask so as I doubt my choice of $b^p$ while proving that $b^r$ is least upper bound.
It is not valid because you say consider any $b^p<b^r$ for some $p\in\mathbb{Q}$. However you need to show that any $x<b^r$ for $x\in\mathbb{R}$ isn't an upper bound and $b^p$ doesn't cover all such reals when we restrict $p$ to the rationals. Instead let $p\in\mathbb{R}$ and you're argument should still work using the fact that $\mathbb{Q}$ is dense in $\mathbb{R}$. Also note that $b^p$ doesn't include non positive reals so consider them in a separate case, but that should be easy since all elements in $B(r)$ are positive.