Intersections of all neighbourhoods of $0$ in a topological group is a subgroup Can we show the above fact like this:
Let $H$ be an intersection of all neighbourhoods of $0$ in $G$.
For $a \in H$ consider a function $\varphi: H \to \varphi(H)$ defined as $b \mapsto a-b$. It is injection and surjection and clearly has an inverse, hence it is a homeomorphism. So we can identify $\varphi(H)$ with $H$ and hence for every $b$ and $a$ $a-b \in H$. 
 A: The identification of $\varphi[H]$ with $H$ doesn't make sense in this context. Note that you didn't use the definition of $H$, so it the argument were correct, it would actually prove that any subset of $G$ is a subgroup. For instance, try to follow your argument in the specific case $G = \mathbb{R}$ and $H = (-1, 1) \subseteq \mathbb{R}$ to see why it doesn't prove that $H$ is a subgroup (which it clearly isn't).
To prove the claim in question, write 
$$H = \bigcap \{ U \subseteq G : 0 \in U \text{ and } U \text{ is open} \}.$$
Now simply check that the definition of a subgroup is satisfied:


*

*Let $a, b \in H$. We claim that $a + b \in H$. Since $H$ is an intersection, we should fix an open set $V \subseteq G$ such that $0 \in V$ and show that $a+b \in V$. Now the key part: since we are in a topological group, addition is continuous, so the set 
$$U = \{ (x, y) \in G^2 : x+y \in V \}$$ 
is open with respect to the product topology on $G^2$. It contains $(0, 0)$, so we can find open $U_1, U_2 \subseteq G$ such that $(0, 0) \in U_1 \times U_2 \subseteq U$. Therefore $0 \in U_1$ and $U_1$ is open, so $H \subseteq U_1$, thus $a \in U_1$. For the same reason $b \in U_2$, which means $(a, b) \in U$, i.e. $a+b \in V$, as affirmed.

*Proving that given $a \in H$, we have $-a \in H$ is left as an exercise. Once again we have to use continuity of $a \mapsto -a$.
