I offer here the sort of proof of the Baire category theorem that you might encounter in an undergraduate analysis course (for me, it's a fourth year masters course but its inclusion in the syllabus is fairly arbitrary so other institutions may vary the level at which it appears). For a thought provoking approach via game theory, see ariels' writeup. The Game-theoretic approach is a lot less ugly than this, but obviously requires you to be conversant in game theory (which I'm not).
Baire Category Theorem: For a complete metric space X, and a (countable) sequence of dense open subsets {Gn} ⊂ X, the intersection of the Gn is also dense.
First, some notation issues. For the sake of readability under the constraints of HTML, I'll use G to denote the intersection in question,
∞
∩Gn
n=1
Since there will be all manner of awkward subscripts as it is.
Second, the notion of a ball is vital to this proof. Since conventions vary (thanks ariels!) it's useful to be completely explicit- I'll use what can be referred to as the open ball about a point as follows:
Bδ(x) = { y ∈ X | d(x,y)<δ }
denotes a ball of radius δ centred on the point x in X. The presence of strict inequality here renders this an open set.
Proof of the Baire Category Theorem
Let x0 be a point of X and δ0>0 be arbitrary. Then we seek to show that Bδ0(x0) ∩ G is not the empty set (where Bδ0(x0) is the ball of radius δ0 about x0).
That is to say, we can get arbitrarily close to any point we like in X and there is still a point of G that close (or closer), i.e. G is dense throughout the space X. We proceed initially by an inductive argument.
Starting with G1, we can find an x1 ∈ G1 ∩ Bδ0(x0). As the finite intersection of open sets (G1 is open by definition, and any ball is open), G1 ∩ Bδ0(x0) is open and hence a neighbourhood of all its points. Since x1 is such a point, we can construct a ball around it of some radius such that the ball is entirely contained in G1 ∩ Bδ0(x0).
For the purposes of the proof, we seek δ1 > 0 st B2δ1(x1) ⊂ G1 ∩ Bδ0(x0) and δ1 < δ0/2.
Now we consider the next dense set G2. Since it is dense, we can find an x2 st x2 ∈ G2 ∩ Bδ1(x1). Once again, this is an open set, so we find our next δ2, satisfying this time δ2 > 0 st B2δ2(x2) ⊂ G2 ∩ Bδ1(x1) and δ2 < δ1/2.
In this way the balls are inductively chosen to be nested within one another: in general
B2δn(xn) ⊂ Bδn-1(xn-1) ⊂ B2δn-1(xn-1) ⊂ Bδn-2(xn-2) ⊂ ... ⊂ B2δ1(x1) ⊂ Bδ0(x0)
So if n>m, B2δn(xn) ⊂ Bδm(xm) ⊂ Bδ0(x0). Hence d(xm,xn) < δm (since xn lies in a ball of radis δm about xm), which is in turn less than δ0/(2m). *
So our sequence of {xn} is Cauchy and we can appeal to the completeness of X to find x∞ ∈ X to which the sequence converges.
So fix m and let n tend to infinity. By * we have d(x∞,xm) ≤ δm < 2δm. But this means
x∞ ∈ B2δm(xm) ⊂ Gm ∩ Bδm-1(xm-1) ⊂ Gm ∩ Bδ0(x0).
But m was arbitrary so by the left- and right-most terms of the above expression, x∞ is an element of
∞
∩ (Gm ∩ Bδ0(x0))
m=1
That is (by rearrangement of the intersections), x
∞ is an element of B
δ0(x
0) ∩
G, so that set cannot be
empty (it has something in it!). We are done.
Thanks to swap and ariels for proof-reading, corrections and stylistic suggestions.