Show that if a topological space has at most countable basis, then the space is separable and Lindelöf 
Let $(X,\mathcal{T})$ be a topological space. Show that if $(X,
 \mathcal{T})$ has countable base, it is separable (a) and Lindelöf (b)

My attempt:
Let $\mathcal{B}$ be a countable basis of the given topology. 
(a) For every $B \in \mathcal{B}\setminus\{\emptyset\}$, choose $x_B \in B$ (here we use AC) and consider $D:= \{x_B \mid B \in \mathcal{B}\}$. It is clear that this is at most countable. Let $x \in X$ and $V \in \mathcal{V(x)}$. Then, there exists $G \in \mathcal{T}$ such that $x \in G \subseteq V$. But, there exists $\mathcal{A} \subseteq \mathcal{B}$ such that $G = \bigcup\mathcal{A}$, since $\mathcal{B}$ is a basis. Take $A \in \mathcal{A}$ with $x \in A \in \mathcal{B}$. Then $A$ is non empty, and hence $x_A \in A \cap D \subseteq V \cap D$, so $x \in \overline{D}$ and hence $D$ is dense in $X$.
(b) Let $\mathcal{G}$ be an open cover of $X$.
For every $G$ in this cover, there exists $\mathcal{A}_G \subseteq \mathcal{B}$ such that $G= \bigcup \mathcal{A_G}$. Consider the collection $\mathcal{C}:= \bigcup_{G \in \mathcal{G}}\mathcal{A}_G \subseteq \mathcal{B}$.
If $C \in \mathcal{C}$, then there is $G_C \in \mathcal{G}$ such that $C \in \mathcal{A}_{G_C}$. Thus, $C \subseteq G_C$. Consider the countable set ($\mathcal{C}$ countable because $\mathcal{B}$ countable)
$$\{G_C \mid C  \in \mathcal{C}\}$$
Then:
$$X \supseteq\bigcup_{C \in \mathcal{C}}G_C \supseteq \bigcup_{C \in \mathcal{C}} C = \bigcup_{G \in \mathcal{G}} \bigcup_{H \in \mathcal{A}_G}H = \bigcup_{G \in \mathcal{G}} \bigcup\mathcal{A}_G = \bigcup_{G \in \mathcal{G}}G = \bigcup\mathcal{G} = X$$
Hence, $\{G_C \mid C \in \mathcal{C}\}$ is a countable subcover of $\mathcal{G}$, and hence $X$ is Lindelöf.
Is this correct?
 A: Globally it is correct.
You don't need the axiom of choice, though.
A: The separable part I quite agree and we need countable choice there.
The other part also needs choice, I'll make my use of it explicit:
Let $\{B_n: n \in \mathbb{N}\}$ be a countable base for $X$. Let $\mathcal{O}$ be an open cover of $X$. Define for each $n \in \mathbb{N}$: 
$$\mathcal{O}_n = \{O \in \mathcal{O}: B_n \subseteq O\}$$
For a given $n$ this set could be empty, finite or infinite. You cannot say beforehand. But let $N'$ be the set of $n$ for which $\mathcal{O}_n$ is non-empty, and for each $n \in N'$ we pick (yes, AC is used, and I'm not ashamed of it) some $O_n \in \mathcal{O}_n$.
Now I claim that $\{O_n: n \in N'\}$ is a countable (obvious, as $N'$ is countable as a subset of $\mathbb{N}$) subcover of $X$:
Let $x \in X$. Then $x$ is covered by some $O_x \in \mathcal{O}$, and because the $B_n$ form a base, we have some $n_x \in \mathbb{N}$ such that $x \in B_{n(x)} \subseteq O_x$. We conclude that $O_x \in \mathcal{O}_{n_x}$ by definition and so as we have $O_{n_x} \in \mathcal{O}_{n_x}$ (the choice we made) and $x \in B_{n_x} \subseteq O_{n_x}$, $x$ is indeed covered by the countable subcover. 
