Theorem: Let $\tau$ be a topology on $X$ and let $\mathcal{B}$ be a base for $\tau$ on $X$.
$$(X,\tau) \text{ is a compact space}$$
$$\Leftrightarrow$$
$$(\forall\mathcal{A}\subseteq 2^X)\Big{[}(\mathcal{A}\subseteq\mathcal{B})(X=\cup\mathcal{A})\Rightarrow (\exists\mathcal{A}^*\subseteq\mathcal{A})(|\mathcal{A}^*|<\aleph_0)(X=\cup\mathcal{A}^*)\Big{]}.$$
Proof: $(\Rightarrow):$ Let $\mathcal{A}\subseteq \mathcal{B}$ and $X=\cup\mathcal{A}.$ $\left.\begin{array}{rr}(\mathcal{A}\subseteq \mathcal{B})(X=\cup\mathcal{A}) \\ \\ \mathcal{B} \ \text{is a base for } \tau \Rightarrow \mathcal{B}\subseteq\tau \end{array} \right\}\Rightarrow \begin{array}{rr} \\ \\ \left. \begin{array}{cc} (\mathcal{A}\subseteq \tau)(X=\cup\mathcal{A}) \\ \\ (X,\tau) \text{ is a compact space}\end{array} \right\} \Rightarrow \end{array}$
$\Rightarrow (\exists\mathcal{A}^*\subseteq\mathcal{A})(|\mathcal{A}^*|<\aleph_0)(X=\cup\mathcal{A}^*).$
$\mbox{}$
$(\Leftarrow):$ Let $\mathcal{A}\subseteq \tau$ and $X=\cup\mathcal{A}.$ $\left.\begin{array}{rr} (\mathcal{A}\subseteq \tau)(X=\cup\mathcal{A}) \\ \\ \mathcal{B} \ \text{ is a base for } \tau \end{array} \right\}\Rightarrow \begin{array}{rr} \\ \\ \left. \begin{array}{rr} (\forall A\in \mathcal{A})(\exists \mathcal{B}_A\subseteq \mathcal{B})(A=\cup\mathcal{B}_A)(X=\cup_{A\in\mathcal{A}}(\cup\mathcal{B}_A)) \\ \\ \mathcal{A}^*:=\cup\{\mathcal{B}_A|A\in\mathcal{A}\}\end{array} \right\} \Rightarrow \end{array}$
$\left.\begin{array}{rr}\Rightarrow (\mathcal{A}^*\subseteq\mathcal{B})(X=\cup\mathcal{A}^*) \\ \\ \text{Hypothesis}\end{array}\right\}\Rightarrow (\exists\mathcal{A}^{**}\subseteq\mathcal{A})(|\mathcal{A}^{**}|<\aleph_0)(X=\cup\mathcal{A}^{**}).$
Is there any problem in proof which is given above?
Your proof is IMHO just a mess of formulae. Just say it in words!
The left to right implication is trivial, because base elements are just special open sets (you also state this). So a basic open cover is just an open cover and as such has a finite subcover.
The right to left implication can also be done slightly differently: let $\mathcal{O}$ be any open cover of $X$ and for each $x \in X$ we pick some $O_x \in \mathcal{O}$ such that $x \in O_x$, and then (as we have a base) a $B_x \in \mathcal{B}$ such that $x \in B_x \subseteq O_x$. Finitely many $B_x$ cover $X$ by the assumption on basic covers and the corresponding $O_x$ then cover $X$ too (as they're larger).