General topology: looking for a brief and clear proof that the two main definitions of "closure" are the same. There's a basic fact in general topology that I've never truly understood; namely, let $\mathbb{X}$ denote a topological space and $A$ denote a subset thereof. Then as I see it, there's basically two possible definitions of $\mathrm{cl}(A)$. But, I've never understood why this is true, or why they're the same.

Definition 0. For all $a \in \mathbb{X}$, we define that $a \in \mathrm{cl}(A)$ iff for all closed sets $C$ of $\mathbb{X}$, if $C$ includes $A$, then $C$ contains $a$.
This is trivially equivalent to either/both of:
  
  
*
  
*$\mathrm{cl}(A)$ is the intersection of all closed sets that include $A$.
  
*$\mathrm{cl}(A)$ is the least closed set that includes $A$.
  

I really like this approach because it generalizes nicely to other contexts, such as algebra. For example, if $\mathbb{G}$ is a group and $A$ is a subset of $\mathbb{G}$, then the subgroup generated by $A$ can be defined as follows. Denoting this this subgroup $\mathrm{cl}(A),$ we assert that for all $a \in \mathbb{G}$, it holds that $a \in \mathrm{cl}(A)$ iff for every subgroup $H$ of $\mathbb{G},$ we have that if $H$ includes $A$, then $H$ contains $a$.
Quite generally, this all makes sense in any closure system, by which I mean a set $X$ equipped with a collection of "closed sets" subject to the condition that the intersection of an arbitrary family of closed sets is itself closed. Such things are occasionally called "generalized topologies." I'd link to the relevant wikipedia article, but for some reason that article appears to have been deleted. (Sigh.)
Anyway, there's another possible definition of $\mathrm{cl}(A)$, at least in the context of ordinary (i.e. non-generalized) topologies. Namely:

Definition 1. For all $a \in \mathbb{X}$, we define that $a \in \mathrm{cl}(A)$ iff for each neighborhood $N$ of $a$, the set $N \cap A$ is inhabited.

We can find, on this very website and others, proofs of the equivalence between these two notions. However, they tend to either meander around a lot, and/or use notions like "boundary" and "derived set" that I consider pretty non-fundamental and which therefore, in my opinion, do not belong in a proof of such a fundamental fact. Therefore, I'm looking for a really clean proof that these definitions of "closure" are the same.
A good answer should provide a proof that:


*

*is brief,

*is clear,

*avoids the terms boundary/derived set/limit point/isolated point, and

*establishes the result under minimal hypotheses.


(The answer itself does not have to be brief or to avoid such terms, of course.)
 A: By $\operatorname{cl}(A)$ I will denote the notion from the first (zeroeth?) definition, and by $\operatorname{cl}^* (A)$ the other. The main points used here are that the complement of a closed set is open (and vice versa), and that each neighborhood of $x$ includes an open neighborhood of $x$.


*

*Note that if $x \notin \operatorname{cl}(A)$ then $X \setminus \operatorname{cl}(A)$ is an open neighborhood of $x$ which is disjoint from $A$, and so $x \notin \operatorname{cl}^*(A)$.

*Now, if $x \notin \operatorname{cl}^*(A)$, then there is an open neighbourhood $U$ of $x$ such that $U \cap A = \varnothing$. But then $X \setminus U$ is a closed set, and $A \subseteq X \setminus U$, meaning that $\operatorname{cl}(A) \subseteq X \setminus U$, and so $x \notin \operatorname{cl}(A)$.
A: Let $B$ be the intersection of all closed sets containing $A$, and let $C$ be the ``inhabited'' definition of $cl(A)$.
If $a\notin B$, then there is a closed set $D$ containing $A$ but not $a$. Then the complement $D^c$ of $D$ is a neighborhood of $a$ such that $D^c\cap A$ is empty. This shows that $a\notin C$, so $C\subseteq B$.
Now suppose $a\notin C$, so that there exists a neighborhood $U$ of $a$ which doesn't intersect $A$. Of course we may take $U$ to be open. Then the complement $U^c$ of $U$ is closed and contains $A$, but $a\notin U^c$, so $a\notin B$. This shows $B\subseteq C$.
A: Let $A\subset X$ and let $B$ be the closure of $A$ by definition 0, and let $C$ be the closure of $A$ by definition 1. 
Let $x\in B$. Suppose that $x\not\in C$. Then there exists an open neighborhood $N$ of $x$ such that $N$ is disjoint from $A$. Then $X\setminus N$ is a closed set containing $A$, which must contain $x$. This is a contradiction, so $x\in C$, and $B\subset C$.
Let $x\in C$. Suppose $x\not\in B$. Then there is some closed subset $R$ of $X$ contianing $A$ such that $x\not\in R$. But then $X\setminus R$ is an open neighborhood containing $x$ disjoint from $A$, a contradiction. Thus, $x\in B$ and $C\subset B$.
Since $C\subset B$ and $B\subset C$, $C=B$.
A: There is a fairly direct connection between the two definitions.
Let $\overline{A}$ be the set in definition $0$ and let $\tilde{A}$ be the set in Definition $1$.
Suppose $a \in \tilde{A}$ and let $C \supset A$ be closed. If $a \notin C$, then $C^c$ is a neighbourhood of $a$ that does not intersect $A$, a contradiction. Hence $a \in C$, and so $a \in \overline{A}$.
Now suppose $a \notin \tilde{A}$, then there is some neighbourhood $U$ of $a$
that does not intersect $A$. Then $U^c$ is a closed set  that contains $A$ but does not contain $a$, hence $a \notin \overline{A}$.
A: Rephrasing previous answers slightly, it is a basic application of DeMorgan's law.
The closure of A is the intersection of all closed sets containing A, so the complement of the closure of A is the union of all open sets disjoint from A. The result then follows immediately.
EDIT: Clarifying a bit, by definition 0, $a \not \in cl(A) \iff $ there exists is a closed $C$ containing $A$ with $a \not \in C \iff$  $C$ is an open neighborhood of $a$ that is disjoint from $A \iff a \not \in cl(A)$ by definition 1.
The two definitions are really just rewordings of each other.
A: Thanks for the answers everyone! Rephrasing what has been said, let me suggest another way of looking at the proof. We will assume Definition 0, and derive Definition 1.
Let $\mathbb{X}$ denote a closure system and $A$ denote a subset of $\mathbb{X}$. Now define $\mathrm{cl}(A)$ as the intersection of all closed sets that include $A$. Explicitly:

Definition 0. $a \in \mathrm{cl}(A)$ iff for all closed sets $C$ of $\mathbb{X}$, if $C$
  includes $A$, then $C$ contains $a$.

We'll need a:

Lemma. $a \in \mathrm{cl}(A)$ iff for all open sets $O$ of $\mathbb{X}$, if $a \in O$, then $O \cap A$ is inhabited.

Proof. We know, by definition, that:

$a \in \mathrm{cl}(A)$ iff for all closed sets $C$ of $\mathbb{X}$, if $C$ includes $A$, then $C$ contains $a$.

Since every closed set is the complement of some open set, hence we deduce:

$a \in \mathrm{cl}(A)$ iff for all open sets $O$ of $\mathbb{X}$, if $O^c$ includes $A$, then $O^c$ contains $a$.

But TFAE:


*

*if $O^c$ includes $A$, then $O^c$ contains $a$.

*if $O \cap A = \emptyset$, then $a \notin O$.

*if $a \in O$, then $O \cap A$ is inhabited.


So:

$a \in \mathrm{cl}(A)$ iff for all open sets $O$ of $\mathbb{X}$, if $a \in O$, then $O \cap A$ is inhabited.

This proves the lemma.

Now for the actual result.

Proposition. $a \in \mathrm{cl}(A)$ iff for all neighbourhoods $N$ of $a$, $N \cap A$ is inhabited.

There's two directions.
$\Leftarrow$ Suppose that for all neighbourhoods $N$ of $a$, $N \cap A$ is inhabited. Then this certainly holds for all open neighbourhoods. But this is just saying that for all open sets $O$ of $\mathbb{X}$, if $a \in O$, then $O \cap A$ is inhabited. But from our Lemma, this is just saying $a \in \mathrm{cl}(A)$.
$\Rightarrow$ Suppose that $a \in \mathrm{cl}(A)$. Let $N$ denote a neighbourhood of $a$. We need to show that $N \cap A$ is inhabited. Find an open set $O$ such that $N \supseteq O \supseteq a$. Then $N \cap A \supseteq O \cap A$. But by our previous lemma, we know that $O \cap A$ is inhabited. Hence so too is $N \cap A$.
