I have some doubts in proof.
R is separable, and thus has a countable dense set, namely Q. Let G ⊂ R be any open set.
Then Q∩G is a countable dense set in G by the Archimedean property, and since G is open we can choose an open interval around every rational in G. Then G is the union of that countable collection of intervals. However, we need to find a countable collection of disjoint intervals.
Notice that the union of any intervals which contain the same point is an interval with a lower endpoint equal to the infimum of the lower endpoints of the intervals (possibly −∞) and with an upper endpoint equal to the supremum of the upper endpoints of the intervals (possibly ∞). We create a new countable collection of intervals whose union is G by the following procedure.
Take any point in G ∩Q and take the union of all intervals in G that contain it. Call this interval I1. Now take some point in (G \ I1) ∩Q and take the union of all intervals in G \ I1 that contain it. Repeating this process we get a countable collection of disjoint intervals I1,I2,I3,..., each of which is in G and which together cover G.
Please explain statements in dark / bold letters. Sorry if this topic is repeated but I need to clear this proof
First some quibbles. $\mathbb {R}$ is separable because it has the countable dense subset $\mathbb {Q}$. Not "thus".
The Archimedean principle could be used to prove that $\mathbb {Q}$ is dense, (as it implies there is a rational between any two reals) but having assumed that, $\mathbb {Q} \cap G$ is dense in $G$ follows immediately - as any open set of $G$ is open in $\mathbb {R}$.
Choosing an open interval around each point of $\mathbb {Q} \cap G$ does not necessarily give you a collection which covers $G$. It will if you take the largest such interval within $G$ in each case, which is the point of the statement you have trouble with.
Now, suppose you have a collection of intervals $\{ (a_i, b_i) \}$ each containing a point x. Suppose $U$ is their union. Let $a = inf \{a_i\}$. If $a < y \leq x$ then $a_i < y \leq x < b_i$ for some i, and so $y \in (a_i,b_i) \subset U$. Therefore $(a, x] \subset U$. The same argument applies to $b = sup \{b_i\}$, giving $[x,b) \subset U$, and so $(a,b) \subset U$. (Allowing that a or b may be $\pm \infty$.) The other direction is obvious, so $(a,b) = U$.
Final quibble. Choosing the intervals $I_n$ as you do does not ensure that they cover $G$. You need to do something like enumerate $\mathbb {Q} \cap G$ and then choose the point used at the $(n+1)^{th}$ stage to be the one with the least index that is not yet covered. Alternatively, just note that the maximal intervals within $G$ around any two points of $\mathbb {Q} \cap G$ are either disjoint or equal, so the set of all such intervals is the required collection.