William Leeb
VIGRE REU
July 2007

The Nagata-Smirnov Metrization Theorem

Introduction: The Nagata-Smirnov Metrization theorem gives a full characterization of metrizable topological spaces.  In other words, the theorem describes the necessary and sufficient conditions for a topology on a space to be defined using some metric.  As a motivational example, consider the discrete topology on some space (every subset of the space is open).  Though it might not be apparent to the untrained observer, this topology is actually defined by the following metric:

						d(x, y) = {({{1 when x ≠ y}, {0 when x = y}})

The open balls of radius 1/2 under this metric each contain only a single point (the point around which the ball is centered); using these open balls as a basis, we define the discrete topology.  Hidden in the discrete topology is the underlying metric defined above.  The Nagata-Smirnov Metrization Theorem lists the exact conditions that any topology must have in order for there to be such an underlying metric.  Before proving the full metrization theorem, we will start with a more specific result: the characterization of compact metric spaces.

Part I: We will prove that a topological space X is a compact metric space if and only if X is compact Hausdorff with a countable basis.
	We will begin with some relatively simple preliminary results that occur often in the lemmas and theorems to follow.  When used, these results will not be cited by name.

Result 1: In a topological space X, suppose A is a compact set and C ⊂ A is closed.  Then C is compact.
Proof: Take any open cover of C.  This cover and the open set X\C form an open cover of A.  Because A is compact, there is a finite subcover, which must also cover C, because C ⊂ A.  Thus any open cover of C can be reduced to a finite subcover, so C is compact. □

Result 2: Suppose f: X->Y is continuous, and A ⊂ X is compact.  Then f(A) is compact.
Proof: Take an open cover 𝒞 = {U} of f(A).  Take x ∈ A.  Then f(x) ∈ f(A), so f(x) ∈ U for some U ∈ 𝒞, so x ∈  (f^(-1))(U).  Thus the pre-images of the sets in 𝒞, which themselves are open because f is continuous, cover A.  Because A is compact, some finite subcover (f^(-1))((Subscript[U, 1])),. . ., (f^(-1))((Subscript[U, n])) covers A.  Take f(x) ∈ f(A).  Then x ∈ A, so x ∈ (f^(-1))((Subscript[U, i])) for some i, 1 ≤ i ≤ n.  Therefore f(x) ∈ (Subscript[U, i]), and the open sets (Subscript[U, 1]), . . . (Subscript[U, n]) cover f(A).  Thus any open cover of f(A) can be reduced to a finite subcover, so f(A) is compact. □

Result 3: Suppose X is Hausdorff and A ⊂ X is compact.  Then A is closed.
Proof: To prove that A is closed, we will prove that X\A is open.  Take some point x ∈ X\A.  For every point y ∈ A, we know that x ≠ y because X\A is by definition disjoint from A, so by Hausdorffness there exist disjoint open sets U(x, y) and V(x, y) with x ∈ U(x, y) and y ∈ V(x, y).  Then (⋃_(y∈A))V(x, y) is an open cover of A, so because A is compact there is a finite subcover, (Subscript[V, 1])(x),. . ., (Subscript[V, n])(x).  Each (Subscript[V, i])(x) is disjoint from an open set (Subscript[U, i])(x)  containing x, so U(x) = (⋂_(i=1)^n)(Subscript[U, i])(x) is an open set containing x that is disjoint from the open set V(x) =  (⋃_(i=1)^n)(Subscript[V, i])(x) containing C.  So U(x) is also disjoint from C, hence U(x) ⊂ X\C.  Taking the union of all U(x), for all x ∈ X, must therefore also be contained in X\C, but also cover X\C; therefore X\C is the union of open sets, hence is open. □

Result 4: The function f: X->Y is continuous if and only if for each x ∈ X and open set U ⊂ Y containing f(x), there exists an open set V ⊂ X such that x ∈ V and f(V) ⊂ U.
Proof: Suppose first that f is continuous.  Take x ∈ X and an open set U containing f(x).  Then (f^(-1))(U) is open by continuity, x ∈ (f^(-1))(U), and f((f^(-1))(U)) = U ⊂ U.
	Now we will prove the converse.  Take an open set U ⊂ Y, and x ∈ (f^(-1))(U).  So f(x) ∈ U, therefore there is an open set V(x) ⊂ X containing x with f(V) ⊂ U.  Take y ∈ V(x); then f(y) ∈ f(V(x)) ⊂ U, so y ∈ (f^(-1))(U).  Therefore V(x) ⊂ (f^(-1))(U).  Therefore (f^(-1))(U) = (⋃_(x∈(f^(-1))(U)))V(x), which is open because it is the union of open sets.  So when U ⊂ Y is open, then (f^(-1))(U) is open, proving that f is continuous. □

Lemma 1.1 (Urysohn's Lemma): Suppose X is a topological space, and that any two disjoint closed sets A, B in X can be separated by open neighborhoods.  Then there is a continuous function f: X->[0,1] such that f|A≡1 and f|B≡0.
Proof: We will define f as the pointwise limit of a sequence of functions, but before we can define this sequence we need some terminology and preliminary results.  Call any collection of sets (Subscript[𝒰, r]) = ((Subscript[A, 0]),(Subscript[A, 1,]). . . , (Subscript[A, r])) an "admissible chain" if A = (Subscript[A, 0]) ⊂ (Subscript[A, 1]) ⊂. . . ⊂ (Subscript[A, r])⊂ X\B and (Subscript[(OverBar[A]), k-1]) ⊂ (Subscript[(Overscript[A, ∘]), k]), 0 ≤ k ≤ r.  Call the set (Subscript[(Overscript[A, ∘]), k+1])\(Subscript[(OverBar[A]), k-1]) the "kth step domain" of (Subscript[𝒰, r]), where (Subscript[A, r+1]) = X and (Subscript[A, -1]) = ∅.
	
		

	Figure 1: An admissible chain.  Each pair of adjacent shaded regions represents a step domain.
	
	Fact 1: Each x ∈ X lies in some step domain for any (Subscript[𝒰, r]).
	Proof: Take x ∈ X and any admissible chain (Subscript[𝒰, r]).  Let k, 0 ≤ k ≤ r+1, be the smallest number such that x ∈ (Subscript[(Overscript[A, ∘]), k]).  Then x ∈ (Subscript[(Overscript[A, ∘]), k])\(Subscript[(OverBar[A]), k-2]).
	
	Fact 2: Each step domain is open.
	Proof: (Subscript[(Overscript[A, ∘]), k+1])\(Subscript[(OverBar[A]), k-1]) = (Subscript[(Overscript[A, ∘]), k+1])⋂(X\(Subscript[(OverBar[A]), k-1])), which is the finite intersection of open sets, hence open.

For any (Subscript[𝒰, r]), define the "uniform step function" (Subscript[f, r]): X->[0,1] as follows: (Subscript[f, r])|A ≡ 1, (Subscript[f, r])|(X\(Subscript[A, r])) ≡ 0, and (Subscript[f, r])|((Subscript[A, k])\(Subscript[A, k-1])) ≡ 1 - k/r, 1 ≤ k ≤ r.

	Fact 3: If x and y are in the same step domain, then |(Subscript[f, r])(x)-(Subscript[f, r])(y)| ≤ 1/r.
	Proof: Suppose x, y ∈ (Subscript[(Overscript[A, ∘]), k+1])\(Subscript[(OverBar[A]), k-1]).  If both x and y are in (Subscript[(Overscript[A, ∘]), k+1]) or (Subscript[A, k]), then by definition of (Subscript[f, r]), (Subscript[f, r])(x) = (Subscript[f, r])(y), hence |(Subscript[f, r])(x)-(Subscript[f, r])(y)| = 0.  If x ∈ (Subscript[(Overscript[A, ∘]), k+1]) and y ∈ (Subscript[A, k]), then (Subscript[f, r])(x) = 1 - (k+1)/r and (Subscript[f, r])(y )= 1 - k/r, so |(Subscript[f, r])(x)-(Subscript[f, r])(y)| = 1/r.

These first three facts will be used in the last step of the proof.  Proceeding, let a "refinement" of the admissible chain (Subscript[𝒰, r]) = ((Subscript[A, 0]),(Subscript[A, 1,]). . . , (Subscript[A, r])) be the admissible chain (Subscript[𝒰, 2r-1]) = ((Subscript[A, 0]),(Subscript[A, 1]^(')),. . . ,(Subscript[A, r]^(')), (Subscript[A, r])).  In other words, the refinement (Subscript[𝒰, 2r-1]) of the admissible chain (Subscript[𝒰, r]) contains every set in (Subscript[𝒰, r]), and for every i ≥ 1 contains a set (Subscript[A, i]^(')) such that (Subscript[A, i-1]) ⊂ (Subscript[A, i]^(')) ⊂ (Subscript[A, i]).  Intuitively, refinements place new sets "between" each pair of sets in the original admissible chain.

	Fact 4: Every admissible chain has a refinement.
	Proof: It suffices to show that for any subsets M, N of X, with (OverBar[M]) ⊂ (Overscript[N, ∘]), there exists L ⊂ X with (OverBar[M]) ⊂  (Overscript[L, ∘]) ⊂ (OverBar[L]) ⊂ (Overscript[N, ∘]).  Because (OverBar[M]) ⊂ (Overscript[N, ∘]), (OverBar[M])⋂(X\(Overscript[N, ∘])) = ∅; and because (X\(Overscript[N, ∘])) is the complement of an open set, hence closed, there exist disjoint open sets U, V, with (OverBar[M]) ⊂ U and (X\(Overscript[N, ∘])) ⊂ V.  Because U and V are disjoint, U ⊂ (X\V); because (X\V) is closed and (OverBar[U]) is contained in every closed set containing U, (OverBar[U]) ⊂ (X\V).  Furthermore, (X\(Overscript[N, ∘])) ⊂ V implies (X\V) ⊂ (Overscript[N, ∘]).  Putting all this together gives: (OverBar[M]) ⊂ (Overscript[U, ∘]) ⊂ (OverBar[U]) ⊂ (X\V) ⊂ (Overscript[N, ∘]); let L = U, and we're done.
	
	Fact 5: If (Subscript[𝒰, r]) is an admissible chain with r+1 elements and (Subscript[𝒰, s]) is a refinement (with 2r + 1 elements), then |(Subscript[f, r])(x)-(Subscript[f, s])(x)| ≤ 1/(2r).
	Proof: Suppose x ∈ (Subscript[A, k])\(Subscript[A, k-1]), where (Subscript[A, k]), (Subscript[A, k-1]) ∈ (Subscript[𝒰, r]).  Then (Subscript[f, r])(x) = 1 - k/r.  Also, (Subscript[𝒰, s])= ((Subscript[A, 0]), (Subscript[A, 1]^(')), (Subscript[A, 1]),. . ., (Subscript[A, j]^(')), (Subscript[A, j]),. . ., 	(Subscript[A, k]^(')), (Subscript[A, k])) = ((Subscript[A, 0]), (Subscript[A, 1']), (Subscript[A, 2']),. . ., (Subscript[A, (2k-1)']), (Subscript[A, 2k]),. . .,(Subscript[A, (2r-1)']), (Subscript[A, 2r'])), and x is either in (Subscript[A, k])\(Subscript[A, k]^(')) = (Subscript[A, 2k'])\(Subscript[A, (2k-1)']) or in (Subscript[A, k]^('))\(Subscript[A, k-1]) =  (Subscript[A, (2k-1)'])\(Subscript[A, (2k-2)']).  Therefore, (Subscript[f, s])(x) = 1 - (2k)/(2r) = (Subscript[f, r])(x), or (Subscript[f, s])(x) = 1-(2k-1)/(2r) = (Subscript[f, r])(x)+1/(2r).  Either way we get the desired result.
	
Now we will define the sequence.  Let (Subscript[𝒰, 0]) = (A, X\B), and let (Subscript[𝒰, n+1]) be a refinement of (Subscript[𝒰, n]); by Fact 4, every admissible chain has a refinement.  We thus get a sequence of admissible chains.  Let (Subscript[f, n]) be the uniform step function on the nth admissible chain.

	Fact 6: For each x ∈ X, the sequence {(Subscript[f, n])(x)} converges.
	Proof: It is clear from the definition of the uniform step functions that the sequence is bounded above by 1.  Now we want to prove that the sequence is non-decreasing.  Note first that (Subscript[𝒰, 0]) contains one term excluding A itself, and so by definition of a refinement (Subscript[𝒰, 1]) will contain 2 terms excluding A; proceeding by induction, (Subscript[𝒰, n]) contains (2^n) terms excluding A.  Also note that for x ∉ (Subscript[A, j])\(Subscript[A, j-1]) ∀(Subscript[A, j]), (Subscript[A, j-1]) ∈ (Subscript[𝒰, k]), (Subscript[f, k])(x) is constant (either 0 or 1), and constant sequences converge.  Suppose x ∈ (Subscript[A, j])\(Subscript[A, j-1]), where (Subscript[A, j]), (Subscript[A, j-1]) ∈ (Subscript[𝒰, k]).  Then (Subscript[f, k])(x) = 1 - j/k.  Furthermore,  (Subscript[𝒰, k+1])= ((Subscript[A, 0]), (Subscript[A, 1]^(')), (Subscript[A, 1]),. . ., (Subscript[A, j]^(')), (Subscript[A, j]),. . ., (Subscript[A, k]^(')), (Subscript[A, k])) = ((Subscript[A, 0]), (Subscript[A, 1']), (Subscript[A, 2']),. . ., (Subscript[A, (2j-1)']), (Subscript[A, 2j]),. . .,(Subscript[A, (2k-1)']), (Subscript[A, 2k'])), and x is either in (Subscript[A, j])\(Subscript[A, j]^(')) = (Subscript[A, 2j'])\(Subscript[A, (2j-1)']) or in (Subscript[A, j]^('))\(Subscript[A, j-1])= (Subscript[A, (2j-1)'])\(Subscript[A, (2j-2)']).  This means that (Subscript[f, k+1])(x) = 1 - (2j)/(2k) = (Subscript[f, k])(x), or (Subscript[f, k+1])(x) = 1 - (2j-1)/(2k) ≥ (Subscript[f, k])(x), proving that the sequence is non-decreasing, hence convergent, because bounded monotonic sequences converge.
	
For each x, let f(x) = (lim_(n→∞))(Subscript[f, n])(x).  Because each (Subscript[f, n]) is constantly 1 on A and 0 on B, f will also have this property, as desired.  To prove that f is continuous, it suffices to show that if we take any f(x) ∈ [0,1] and any open set (a,b) ⊂ [0,1] containing f(x), there is an open set U ⊂ X such that x ∈ U and f(U) ⊂ (a,b).  More specifically, if we take 0 < ε < min(f(x)-a, b-f(x)), and find an open U ⊂ X such that x ∈ U and f(U) ⊂ (f(x) - ε, f(x) + ε), we will be done.  Before doing this, we have to prove one more fact, the sixth step of which follows from Fact 5.

	Fact 7: For fixed x and any n, |f(x)-(Subscript[f, n])(x)| ≤ 1/(2^n).
	Proof: |f(x) - (Subscript[f, n])(x)| = |(lim_(Underscript[k→∞, k≥n]))(Subscript[f, k])(x) - (Subscript[f, n])(x)| = |(lim_(Underscript[k→∞, k≥n]))((Subscript[f, k])(x) - (Subscript[f, n])(x))| = (lim_(Underscript[k→∞, k≥n]))|(Subscript[f, k])(x) - (Subscript[f, n])(x)| = (lim_(Underscript[k→∞, k≥n]))|((Subscript[f, k])(x) - (Subscript[f, k-1])(x)) + ((Subscript[f, k-1])(x) - (Subscript[f, k-2])(x)) +. . .+ ((Subscript[f, n+1])(x) - (Subscript[f, n])(x))| ≤ (lim_(Underscript[k→∞, k≥n]))(|(Subscript[f, k])(x) -(Subscript[f, k-1])(x)| + |(Subscript[f, k-1])(x) -(Subscript[f, k-2])(x)| +. . .+ |(Subscript[f, n+1])(x) - (Subscript[f, n])(x)|) ≤ (lim_(Underscript[k→∞, k≥n]))(1/(2^k) + 1/(2^(k-1))+...+ 1/(2^(n+1))) =(Underoverscript[ ∑, (k=n+1), ∞])1/(2^k) = 1/(2^n)((∑_(k=1)^∞)1/(2^k)) = 1/(2^n).
	
Take n large enough so that 3/(2^n) < ε, and suppose x lies in the kth step domain,  (Subscript[S, k]) = (Subscript[(Overscript[A, ∘]), k+1])\(Subscript[(OverBar[A]), k-1]) (by Fact 1, every x lies in some step domain).  Furthermore, by Fact 2, this step domain is an open neighborhood of x.  Take any y ∈ (Subscript[S, k]).  Then by Facts 3 and 6, |f(x)-f(y)| = |f(x) - (Subscript[f, n])(x) + (Subscript[f, n])(x) - (Subscript[f, n])(y) + (Subscript[f, n])(y) - f(y)| ≤ |f(x) - (Subscript[f, n])(x)| + |(Subscript[f, n])(x) - (Subscript[f, n])(y)| + |(Subscript[f, n])(y) - f(y)| ≤ 1/(2^n) + 1/(2^n) + 1/(2^n) = 3/(2^n) < ε.  So every y ∈ (Subscript[S, k]) maps into (a,b), proving f is continuous. □

Lemma 1.2: Suppose X is a compact Hausdorff space.  Then any disjoint closed sets A, B ⊂ X can be separated by open neighborhoods.
Proof: Take a ∈ A and b ∈ B.  X is Hausdorff and a ≠ b (because A and B are disjoint), so there are disjoint open sets U(a,b) and V(a,b) with a ∈ U(a,b) and b ∈ V(a,b).  (⋃_(b∈B))V(a,b) is an open cover of B (each b ∈ B is contained in the corresponding V(a,b), and the union of an arbitrary number of open sets is open).  Because B is compact (B is a closed subset of the compact space X), there is a finite subcover V(a) = (⋃_(1≤i≤r))V(a, (Subscript[b, i])).  Each V(a, (Subscript[b, i])) is disjoint from the open set U(a, (Subscript[b, i])) containing a, so U(a) = (⋂_(1≤i≤r))U(a, (Subscript[b, i])) contains a and is disjoint from V(a).
	(⋃_(a∈A))U(a) is an open cover of A, so because A is compact there is a finite subcover U = (⋃_(1≤j≤s))U((Subscript[a, j])).  Each U((Subscript[a, j])) is disjoint from the open set V((Subscript[a, j])) containing B, so V = (⋂_(1≤j≤s))V((Subscript[a, j])) contains B and is disjoint from U.  Thus, U and V are disjoint open neighborhoods separating A and B. □
	
Lemma 1.3: Suppose X is compact, Y is Hausdorff, and f: X->Y is a continuous bijection.  Then  (f^(-1)): Y->X is also continuous.
Proof: To prove continuity of (f^(-1)), it suffices to show that if C ⊂ X is closed, then ((((f^(-1))))^(-1))(C) = f(C) is closed.  Because X is compact and C is a closed subset of X, C is also compact.  Compactness is preserved by continuous functions, so f(C) is also compact.  Furthermore, in a Hausdorff space compact sets are closed; thus f(C) is closed, and (f^(-1)) is continuous. □

Lemma 1.4: Suppose X is a topological space with topology 𝒜 and (M, d) is a metric space.  Suppose also that f:X->M is a homeomorphism.  Then X is a metric space.
Proof: To prove that X is a metric space, we must first define its metric, denoted d'. For x, y ∈ X, let d'(x, y) = d(f(x), f(y)).  Using the fact that d is a metric, it is trivial to show that d' is also a metric:

	1. d'(x, y) = d(f(x), f(y) ≥ 0.  If x = y, then f(x) = f(y), so 0 = d(f(x), f(y)) = d'(x, y).  Conversely, if d'(x, y) = 0, then d(f(x), f(y)) = 0, so f(x) = f(y), which means that x = y because f is injective.
	2. d'(x, y) = d(f(x), f(y)) = d(f(y), f(x)) = d(y, x).
	3. d'(x, z) = d(f(x), f(z)) ≤ d(f(x), f(y)) + d(f(y), f(z)) = d'(x, y) +d'(y, z).

	Let ℬ be the topology generated by d'.  We must show that 𝒜 = ℬ.  Take U ∈ 𝒜, and take x ∈ U.  Because f is a homeomorphism, f(U) ⊂ M is open; thus there is an open ball B(f(x), r) ⊂ f(U).  Now take any y ∈ B(x, r) ∈ ℬ; then d'(x, y) < r, which means that d(f(x), f(y)) < r; thus f(y) ∈ B(f(x), r) ⊂ f(U), so y ∈ U, and B(x, r) ⊂ U.  Therefore, V = (⋃_(x∈X))B(x, (Subscript[r, x])) = U, and V ∈ ℬ because it is the union of open sets in ℬ.  Thus every element of 𝒜 is also an element of ℬ.
	Now we must prove the converse.  It suffices to prove that every open ball B(x, r) ∈ ℬ is an element of 𝒜, because the open balls are a basis for ℬ.  We know that B(f(x), r) is open in M, so because f is continuous,  (f^(-1))(B(f(x), r)) is open in 𝒜.  Take y ∈ B(x, r).  Then d'(x, y) < r, so d(f(x), f(y)) < r, which means that f(y) ∈ B(f(x), f(y)), implying that y ∈ (f^(-1))(B(f(x), r)).  Conversely, suppose y ∈ (f^(-1))(B(f(x), r)).  Then f(y) ∈ (B(f(x), r)), so d(f(x), f(y)) < r, so d'(x, y) < r, so y ∈ B(x, r).  Thus, (f^(-1))(B(f(x), r)) = B(x, r), so every open ball in ℬ is an open set in 𝒜.  Because the open balls are a basis of ℬ, each open set in ℬ is the union of elements of 𝒜, and therefore is itself an element of 𝒜, concluding the proof. □

Theorem 1.1: Suppose X is a compact Hausdorff space with a countable basis.  Then X is a metric space.
Proof: We will show that X can be embedded in the metric space (([0,1])^ℕ), whose metric d is defined as:
			d({(Subscript[x, i])}, {(Subscript[y, i])}) = (∑_(i=1)^∞)|(Subscript[x, i])-(Subscript[y, i])|/(i^2).
This is well-defined, because 0 ≤|(Subscript[x, i])-(Subscript[y, i])| ≤ 1, implying 0 ≤ |(Subscript[x, i])-(Subscript[y, i])|/(i^2)≤ 1/(i^2), and (∑_(i=1)^∞)1/(i^2) converges, so by the comparison test, (∑_(i=1)^∞)|(Subscript[x, i])-(Subscript[y, i])|/(i^2) also converges.  It is also trivial to check that d is in fact a metric:

	1. Each term |(Subscript[x, i])-(Subscript[y, i])|/(i^2) ≥ 0, so d({(Subscript[x, i])}, {(Subscript[y, i])}) ≥ 0.  Because terms cannot cancel, the only way for d({(Subscript[x, i])}, {(Subscript[y, i])}) to equal zero would be if each term |(Subscript[x, i])-(Subscript[y, i])|/(i^2) = 0, which is only possible if {(Subscript[x, i])} = {(Subscript[y, i])}.  The converse is obviously true.
	2. d({(Subscript[x, i])}, {(Subscript[y, i])}) = (∑_(i=1)^∞)|(Subscript[x, i])-(Subscript[y, i])|/(i^2) = (∑_(i=1)^∞)|(Subscript[y, i])-(Subscript[x, i])|/(i^2) = d({(Subscript[y, i])}, {(Subscript[x, i])}).
	3. To prove the triangle inequality, it is sufficient to prove it for each term, and it clearly follows from the triangle inequality for absolute values: |(Subscript[x, i])-(Subscript[z, i])|/(i^2) ≤ |(Subscript[x, i])-(Subscript[y, i])|/(i^2) + |(Subscript[y, i])-(Subscript[z, i])|/(i^2).

	Before we can define the function between X and this metric space, we must prove a critical fact.
	
	Fact 1: There is a countable subset {(Subscript[f, n])} of the set {f: X->[0,1] | f continuous} with the property that if x ≠ y, then there exists n such that (Subscript[f, n])(x) ≠ (Subscript[f, n])(y).
	Proof: X has a countable basis ℬ = {(Subscript[B, n])}.  The set of all pairs of elements of ℬ is also countable, so any subset of this set must also be countable.  In particular, the set ℬ* = {{(Subscript[B, m]), (Subscript[B, n])} | (Subscript[(OverBar[B]), m])⋂(Subscript[(OverBar[B]), n])= ∅} is countable.  By Urysohn's Lemma, which applies to X by Lemma 1.2, for every element in ℬ* there exists a continuous function f: X->[0,1] such that f|(Subscript[(OverBar[B]), m]) ≡ 1 and f|(Subscript[(OverBar[B]), n]) ≡ 0.  Let ℱ = {(Subscript[f, n])} denote the set of all such functions, the subscript indicating that the set is countable.  Take x, y ∈ X, x ≠ y.  If we can find a function (Subscript[f, n]) ∈  ℱ such that (Subscript[f, n])(x) ≠ (Subscript[f, n])(y), we will be done.  Because X is Hausdorff, we know there are disjoint open sets U, V, with x ∈ U and y ∈ V.  Also by Hausdorffness, the single-point sets {x} and {y} are closed.  From the proof of Fact 4 in the Urysohn Lemma, there exist open sets (Subscript[U, x]) and (Subscript[U, y]) such that {x} ⊂ (Subscript[U, x]) ⊂ (Subscript[(OverBar[U]), x]) ⊂ U and {y} ⊂ (Subscript[U, y]) ⊂ (Subscript[(OverBar[U]), y]) ⊂ V, where (Subscript[(OverBar[U]), x]) and (Subscript[(OverBar[U]), y]) are disjoint because U and V are disjoint.  Because ℬ is a basis, there are (Subscript[B, x]), (Subscript[B, y]) ∈ ℬ with x ∈ (Subscript[B, x]) ⊂ (Subscript[U, x])  y ∈ (Subscript[B, y]) ⊂ (Subscript[U, y]); hence x ∈ (Subscript[(OverBar[B]), x]) ⊂ (Subscript[(OverBar[U]), x]) and y ∈ (Subscript[(OverBar[B]), y]) ⊂ (Subscript[(OverBar[U]), y]), with (Subscript[(OverBar[B]), x]) and (Subscript[(OverBar[B]), y]) disjoint because (Subscript[(OverBar[U]), x]) and (Subscript[(OverBar[U]), y]) are disjoint.  Thus there is (Subscript[f, n])∈ ℱ such that (Subscript[f, n])|(Subscript[(OverBar[B]), x]) ≡ 1 and (Subscript[f, n])|(Subscript[(OverBar[B]), y]) ≡ 0, so (Subscript[f, n])(x) = 1, (Subscript[f, n])(y) = 0, and we're done.
	
We are ready to define the embedding g: X→(([0,1])^ℕ).  Because ℱ is countable, we can arrange the elements of ℱ in a sequence, (Subscript[f, 1]), (Subscript[f, 2]),. . .,.  We then let g(x) = {(Subscript[f, n])(x)}.  To prove that g is an embedding, we must prove injectivity, continuity, and continuity of (g^(-1)): g(X)->X.

	Fact 2: g is injective.
	Proof: Take x, y ∈ X, x ≠ y.  Then there exists  (Subscript[f, n]) ∈ ℱ such that (Subscript[f, n])(x) ≠ (Subscript[f, n])(y), hence {(Subscript[f, n])(x)} ≠ {(Subscript[f, n])(y)}, hence g(x) ≠ g(y).
	
	Fact 3: g is continuous.
	Proof: To prove that g is continuous, it suffices to show that for any x ∈ X and any open set V ⊂ (([0,1])^ℕ) containing g(x), there is an open set U ⊂ X containing x such that g(U) ⊂ V.  In particular, if we take ε such that B(g(x), ε) ⊂ V (such an ε-ball must exist by definition of openness in a metric space) and find U ⊂ X containing x such that g(U) ⊂ B(g(x), ε), we will be done.  First, pick n sufficently large so that (∑_(i=n+1)^∞)1/(i^2) < ε/2.  Next, consider the functions (Subscript[f, 1]), (Subscript[f, 2]),. . .,(Subscript[f, n]) ∈ ℱ; these functions are continuous, so for each (Subscript[f, i]), 1 ≤ i ≤ n, there is an open set (Subscript[U, i]) containing x such that (Subscript[f, i])((Subscript[U, i])) ⊂ B((Subscript[f, i])(x), 3ε/(π^2)).  Let U = (⋂_(i=1)^n)(Subscript[U, i]).  Then U is the finite intersection of open sets, hence is also open; and U contains x, because each (Subscript[U, i]) contains x.  It is also clear that (Subscript[f, i])(U) ⊂ B((Subscript[f, i])(x), 3ε/(π^2), so for any y ∈ U, |(Subscript[f, i])(x)-(Subscript[f, i])(y)| < 3ε/(π^2).  Take y ∈ U.  We want to show that g(y) ∈ B(g(x), ε).  d(g(x), g(y)) = (∑_(i=1)^∞)|(Subscript[f, i])(x)-(Subscript[f, i])(y)|/(i^2) = (∑_(i=1)^n)|(Subscript[f, i])(x)-(Subscript[f, i])(y)|/(i^2) + (∑_(i=n+1)^∞)|(Subscript[f, i])(x)-(Subscript[f, i])(y)|/(i^2) ≤ (∑_(i=1)^n)(3ε/(π^2))/(i^2) + (∑_(i=n+1)^∞)1/(i^2) < (3ε/(π^2))×((π^2)/6) + ε/2 = ε/2 + ε/2 = ε.  Thus g(y) ∈ B(g(x), ε) as desired, and g is continuous.
	
	Fact 4: (g^(-1)) is continuous.
	Proof: This follows immediately from Lemma 1.3.
	
By Facts 2-4, g is a homeomorphism between X and its image, so X is metrizable.  By Lemma 1.4, this means that X is itself a metric space. □

Theorem 1.2: Suppose X is a compact metric space.  Then X is Hausdorff with a countable basis.
Proof: First we will show that X is Hausdorff.  Take any points x, y ∈ X, x ≠ y.  Suppose that d(x, y,) = r.  Then the open balls of radius r/2 surrounding x and y, respectively, will be disjoint open neighborhoods separating x and y.
	Now we will prove that X has a countable bais.  For each natural number n, let (Subscript[ℬ, n]) = {B(x, 1/n) | x ∈ X}.  The elements of (Subscript[ℬ, n]) form an open cover of X, so because X is compact there is a finite subcover, (Subscript[ℬ, n]^⋆).  Let ℬ = {B(x, 1/n) ∈ (Subscript[ℬ, n]^⋆) | n ∈ ℕ}.  Then the elements of ℬ are countable, because there are a finite number of elements for each natural number.  Our claim is that ℬ is a basis for X.  To prove this, it suffices to show that for any open set U ⊂ X and x ∈ U, there exists V ∈ ℬ such that x ∈ V ⊂ U; in particular, it is enough to show that for any open ball B(x, ε) and y ∈ B(x, ε), there exists V ∈ ℬ such that y ∈ V ⊂ B(x, ε), because the set of all open balls is a basis for X, and if the elements of ℬ can generate a basis then they are themselves a basis.  Suppose d(x, y) = r.  Choose n sufficiently large so that 1/n < (ε - r)/2.  Because (Subscript[ℬ, n]^⋆) covers X, there is an open ball B(z, 1/n) containing y, for some z.  We must prove that B(z, 1/n) ⊂ B(x, ε).  Take any element w ∈ B(z, 1/n).  By definition of the open ball, d(z, w) < 1/n < (ε - r)/2; also, because y ∈ B(z, 1/n), d(z, y) < (ε - r)/2.  Thus by the triangle inequality, d(w, y) < ε - r.  We also know that d(x, y) = r; so again by the triangle inequality, d(w, x) < (ε - r) + r = ε, proving that w ∈ B(x, ε), proving that B(z, 1/n) ⊂ B(x, ε), proving that ℬ is a basis. □
	
Conclusion: Taken together, Theorems 1.1 and 1.2 give a complete characterization of compact metric spaces.

Part II: Now we will prove the Nagata-Smirnov Metrization Theorem: a topological space X is a metric space if and only if X is regular with a countably locally finite basis.  Following Munkres, we will prove the necessity and sufficiency conditions as two separate theorems; but first, some lemmas.

Lemma 2.1: Suppose 𝒜 is a locally finite collection of subsets of a topological space X.  Let Y = (⋃_(A∈𝒜))A.  Then (OverBar[Y]) = (⋃_(A∈𝒜))(OverBar[A]).
Proof: First, we will show that (⋃_(A∈𝒜))(OverBar[A]) ⊂ (OverBar[Y]), which is generally true.  For each A ∈ 𝒜, it is true that A ⊂ Y ⊂ (OverBar[Y]).  (OverBar[A]) is the intersection of all closed sets containing A and (OverBar[Y]) is a closed set containing A; thus if x ∈ (OverBar[A]), it must be that x ∈ (OverBar[Y]), so (OverBar[A]) ⊂ (OverBar[Y]); thus (⋃_(A∈𝒜))(OverBar[A]) ⊂ (OverBar[Y]) as desired.
	Now we will prove that  (OverBar[Y]) ⊂ (⋃_(A∈𝒜))(OverBar[A]).  Take x ∈ (OverBar[Y]); by local finiteness, there exists an open neighborhood U containing x that intersects only a finite subset of elements of 𝒜; denote these elements as (Subscript[A, 1]), . . ., (Subscript[A, k]).  Suppose that x was not contained in any of (Subscript[(OverBar[A]), 1]), . . ., (Subscript[(OverBar[A]), k]), i.e., x ∉ (⋃_(j=1)^k)(Subscript[(OverBar[A]), j]), which is a closed set.  Then x ∈ U\ ((⋃_(j=1)^k)(Subscript[(OverBar[A]), j])), which is an open neighborhood of x that is disjoint from every element of 𝒜.  Thus x itself must be disjoint from every element of 𝒜, contradicting the fact that x ∈ (OverBar[Y]).  Therefore x must be contained in some (Subscript[(OverBar[A]), j]), 1 ≤ j ≤ k, and (OverBar[Y]) ⊂ (⋃_(A∈𝒜))(OverBar[A]), implying that (OverBar[Y]) = (⋃_(A∈𝒜))(OverBar[A]). □
	
Lemma 2.2: Suppose X is a regular space with a countably locally finite basis ℬ.  Then X is normal.
Proof: We will prove this in two steps.

	Step 1: Suppose W ⊂ X is open.  Then there is a countable collection of open sets {(Subscript[U, n])} such that W = (⋃_(n∈ℕ))(Subscript[U, n]) = (⋃_(n∈ℕ))(Subscript[(OverBar[U]), n]).
	Proof: Because ℬ is countably locally finite, ℬ = (⋃_(n∈ℕ))(Subscript[ℬ, n]) where each (Subscript[ℬ, n]) is a locally finite collection of subsets of X.  For each n ∈ ℕ, let (Subscript[𝒞, n]) = {B ∈ (Subscript[ℬ, n]) | (OverBar[B]) ⊂ W}.  Then (Subscript[𝒞, n]) ⊂ (Subscript[ℬ, n]), so (Subscript[𝒞, n]) must also be locally finite.  Let (Subscript[U, n]) = (⋃_(B∈(Subscript[𝒞, n])))B.  Because each B is open, (Subscript[U, n]) is also open.  Furthermore, by Lemma 2.1, (Subscript[(OverBar[U]), n]) = (⋃_(B∈(Subscript[𝒞, n])))(OverBar[B]), because (Subscript[𝒞, n]) is locally finite.  Each (OverBar[B]) ⊂ W, so  (Subscript[(OverBar[U]), n]) = (⋃_(B∈(Subscript[𝒞, n])))(OverBar[B]) ⊂ W; therefore, (⋃_(n∈ℕ))(Subscript[U, n]) ⊂ (⋃_(n∈ℕ))(Subscript[(OverBar[U]), n]) ⊂ W.
	Now we need to show that W ⊂ (⋃_(n∈ℕ))(Subscript[U, n]), and we'll be done.  Take x ∈ W.  Then {x} is disjoint from X\W and both sets are closed ({x} is closed by definition of regularity), so by regularity there exist disjoint open sets U and V such that {x} ⊂ U and X\W ⊂ V.  Then x ∈ {x} ⊂ U ⊂ X\V ⊂ W.  For some n ∈ ℕ, there exists a basis element B ∈ (Subscript[ℬ, n]) such that x ∈ B ⊂ U ⊂ X\V; because X\V is closed, (OverBar[B]) ⊂ X\V ⊂ W.  Therefore B ∈ (Subscript[𝒞, n]).  This means that x ∈ B ⊂ (⋃_(B∈(Subscript[𝒞, n])))B = (Subscript[U, n]) ⊂ (⋃_(n∈ℕ))(Subscript[U, n]); hence W ⊂ (⋃_(n∈ℕ))(Subscript[U, n]), as desired.

	Step 2: X is normal.
	Proof: Take disjoint closed subsets C, D ⊂ X.  Then X\D is open, so by Step 1 there exists a countable collection of open sets {(Subscript[U, n])} such that X\D = (⋃_(n∈ℕ))(Subscript[U, n]) = (⋃_(n∈ℕ))(Subscript[(OverBar[U]), n]).   Of course, every (Subscript[(OverBar[U]), n]) is disjoint from D, and because C is disjoint from D, C ⊂ (⋃_(n∈ℕ))(Subscript[U, n]).  By the exact same reasoning, there exists a collection of open sets {(Subscript[V, n])} that cover D such that each  (Subscript[(OverBar[V]), n]) is disjoint from C.
	(⋃_(n∈ℕ))(Subscript[U, n]) and (⋃_(n∈ℕ))(Subscript[V, n]) are open covers of C and D, respectively; the problem is that we cannot guarantee they are disjoint.  For each n ∈ ℕ, let (Subscript[U, n]^( ')) = (Subscript[U, n])\((⋃_(j=1)^n)(Subscript[(OverBar[V]), j])) and let (Subscript[V, n]^( ')) = (Subscript[V, n])\((⋃_(j=1)^n)(Subscript[(OverBar[U]), j])); these sets are open.  Then let (U^( '))= (⋃_(n∈ℕ))(Subscript[U, n]^( ')) and let (V^( '))= (⋃_(n∈ℕ))(Subscript[V, n]^( ')).  (U^( ')) and (V^( ')) are clearly open, because they are the union of open sets.  Our claim is that they are disjoint covers of C and D.
	Take x ∈ C.  Then x ∈ (Subscript[U, n]) for some n, because C ⊂ (⋃_(n∈ℕ))(Subscript[U, n]); furthermore, x ∉ (Subscript[(OverBar[V]), n]) for all n.  Therefore x ∈ (Subscript[U, n])\((⋃_(j=1)^n)(Subscript[(OverBar[V]), j])) = (Subscript[U, n]^( ')) ⊂ (U^( ')), so C ⊂ (U^( ')).  Similarly, D ⊂ (V^( ')).
	Now suppose that (U^( ')) and (V^( '))are not disjoint.  Then there exists some x ∈ X such that x ∈ (U^( '))= (⋃_(n∈ℕ))(Subscript[U, n]^( ')) and x ∈ (V^( '))= (⋃_(n∈ℕ))(Subscript[V, n]^( ')).  This implies that for some m, n, x ∈ (Subscript[U, m]^( ')) = (Subscript[U, m])\((⋃_(j=1)^m)(Subscript[(OverBar[V]), j])) and x ∈ (Subscript[V, n]^( ')) = (Subscript[V, n])\((⋃_(j=1)^n)(Subscript[(OverBar[U]), j])), i.e., x ∈ (Subscript[U, m]), (Subscript[V, n]), but x ∉ (Subscript[(OverBar[V]), 1]),. . ., (Subscript[(OverBar[V]), m]), (Subscript[(OverBar[U]), 1]),. . ., (Subscript[(OverBar[U]), n]).  Suppose m ≤ n.  Then x ∈ (Subscript[U, m]); but x ∉  (Subscript[(OverBar[U]), 1]),. . .,(Subscript[(OverBar[U]), m]),. . ., (Subscript[(OverBar[U]), n]), which is a contradiction.  Similarly, we get a contradiction if n ≤ m.  Therefore, (U^( ')) and (V^( '))are disjoint open covers of C and D, proving that X is normal. □

Now we are ready to prove the first half of the Nagata-Smirnov Theorem.

Theorem 2.1: Suppose X is a regular space with a countably locally finite basis ℬ.  Then X is metric space.
Proof: We will show that X can be embedded in the metric space (([0, 1])^ℬ), with the following metric:

	Suppose p, q ∈ (([0, 1])^ℬ).  Then let d(p, q) = (sup_(B∈ℬ)){|p(B) - q(B)|}.
	
We need to prove this is a metric:

	1. Each term |p(B) - q(B)| ≥ 0, so d(p, q) = (sup_(B∈ℬ)){|p(B) - q(B)|} ≥ 0 as well.  If d(p, q) = (sup_(B∈ℬ)){|p(B) - q(B)|} = 0, then for every B ∈ ℬ we have 0 ≤ |p(B) - q(B)| ≤ 0, so p(B) = q(B), hence p = q.  Conversely, if p = q, then |p(B) - q(B)| = 0 for all B ∈ ℬ, so d(p, q) = (sup_(B∈ℬ)){|p(B) - q(B)|} = 0.
	2. d(p, q) = (sup_(B∈ℬ)){|p(B) - q(B)|} = (sup_(B∈ℬ)){|q(B) - p(B)|} = d(q, p).
	3. It is generally true that if W and Y are sets of real numbers, then sup(W) + sup(Y) = sup(W + Y), where W + Y = {w + y | w ∈ W, y ∈ Y}.  It is also true that if K ⊂ L, then sup(K) ≤ sup(L).  Therefore, d(p, r) = (sup_(B∈ℬ)){|p(B) - r(B)|} ≤ (sup_(B∈ℬ)){|p(B) - q(B)| + |q(B) - r(B)|} ≤ (sup_(B∈ℬ)){|p(B) - q(B)|} + (sup_(B∈ℬ)){|q(B) - r(B)|} = d(p, q) + d(q, r).
	
Now we can proceed.

	Fact 1: If W ⊂ X is open, then there exists a continuous function f: X -> [0, 1] such that f|W > 0 and f|(X\W) ≡ 0.
	Proof: By Step 1 of Lemma 2.2, W = (⋃_(n∈ℕ))(Subscript[A, n]), where each (Subscript[A, n]) is closed.  Each (Subscript[A, n]) is disjoint from the closed set X\W.  By Lemma 2.2 X is normal, so we may apply Urysohn's Lemma: for each (Subscript[A, n]), there exists a continuous function (Subscript[f, n]): X -> [0, 1] such that (Subscript[f, n])|(Subscript[A, n]) ≡ 1 and (Subscript[f, n])|(X\W) ≡ 0.  For each x ∈ X, let f(x) = (∑_(n=1)^∞)(Subscript[f, n])(x)/(2^n).  This is well-defined, because 0 ≤ (Subscript[f, n])(x) ≤ 1, so 0 ≤ (Subscript[f, n])(x)/(2^n) ≤ 1/(2^n); (∑_(n=1)^∞)1/(2^n) converges, so by the comparison test (∑_(n=1)^∞)(Subscript[f, n])(x)/(2^n) also converges; in fact, by the Weierstrass M-Test it converges uniformly.  Therefore, because each term (Subscript[f, n])/(2^n) is a continuous function ((Subscript[f, n]) is continuous, and (2^n) is just a constant), f is also continuous.  Each (Subscript[f, n]) is uniformly zero on X\W, hence f|(X\W) ≡ 0; and for x ∈ W, we know that x ∈ (Subscript[A, n]) for some n; therefore (Subscript[f, n])(x) = 1, so at least one term in the infinite sum (∑_(n=1)^∞)(Subscript[f, n])(x)/(2^n) is greater than zero.  Because all the other terms cannot be less than zero, this guarantees that f(x) > 0; so f|W > 0, as desired.

Now we are ready to define the embedding g: X -> (([0, 1])^ℬ).  First, it should be briefly noted that while Fact 1 proved the existence of a continuous function from any open set to the closed interval [0, 1], we could just as easily have replaced [0, 1] by any closed interval [a, b], a, b ∈ ℝ, by defining a continuous function between [0, 1] and [a, b] and considering the composition of the function we did define and this new function, using the fact that the composition of continuous functions is continuous.
	Because ℬ is countably locally finite, it is true that ℬ = (⋃_(n∈ℕ))(Subscript[ℬ, n]), where each (Subscript[ℬ, n]) is locally finite.  We might as well assume that for each m, n ∈ ℕ, (Subscript[ℬ, m])⋂(Subscript[ℬ, n]) = ∅, because if there were some basis element B ∈ (Subscript[ℬ, m]), (Subscript[ℬ, n]), we could define (Subscript[ℬ, m]^( ')) that contained all the same elements as (Subscript[ℬ, m]) except for B; (Subscript[ℬ, m]^( ')) would still be locally finite, and ℬ would still be a basis, because B is still contained in (Subscript[ℬ, n]).
	If we take any basis element B, we therefore know that B ∈ (Subscript[ℬ, n]) for exactly one n; because B is open, we can, by Fact 1, define a continuous function (Subscript[f, B]): X -> [0, 1/n] such that (Subscript[f, B])|B > 0 and (Subscript[f, B])|(X\B) ≡ 0.  Now we will define the embedding g as follows: let g(x) = {(B, (Subscript[f, B])(x)) | B ∈ ℬ}.  We must prove that this is an embedding by showing three things: g is injective, g is continuous, and (g^(-1)) is continuous.
	
	Fact 2: g is injective.
	Proof: Suppose x ≠ y.  By definition of regularity, the single point sets {x} and {y} are closed, and they are obviously disjoint.  By Lemma 2.2, X is normal; therefore, there are disjoint open sets U, V such that x ∈ {x} ⊂ U and y ∈ {y} ⊂ V.  There must then exist a basis element B such that x ∈ B ⊂ U.  Then (Subscript[f, B])(x) > 0, but (Subscript[f, B])(y) = 0 because y ∉ B.  Therefore, the function g(x) contains the ordered pair (B, ε) where ε  > 0; but the function g(y) contains the ordered pair (B, 0).  Therefore, g(x) ≠ g(y).
	
	Fact 3: g is continuous.
	Proof: To prove that g is continuous, we must show that for any open set V around a point g(x), there is an open set U ⊂ X such that x ∈ U and g(U) ⊂ V.  In particular, if we can find an open set U containing x such that g(U) ⊂ B(g(x), ε) ⊂ V, then we will be done.
	We know that ℬ = (⋃_(n∈ℕ))(Subscript[ℬ, n]), where each (Subscript[ℬ, n]) is locally finite.  Take some (Subscript[ℬ, n]), and find an open neighborhood (Subscript[U, n]) of x that intersects only finitely many basis elements in (Subscript[ℬ, n]).  Suppose that B ∈ (Subscript[ℬ, n]) does not intersect U; then it certainly does not contain x, so (Subscript[f, B])(x) = 0; furthermore, (Subscript[f, B])(y) = 0 for all y ∈ (Subscript[U, n]).  Therefore, |(Subscript[f, B])(x) - (Subscript[f, B])(y)| = 0.
	Now suppose B⋂(Subscript[U, n]) ≠ ∅.  We know that (Subscript[f, B]): X -> [0, 1/n] is continuous, so given the open set ((Subscript[f, B])(x) - ε/2, (Subscript[f, B])(x) + ε/2)⋂[0, 1/n] ⊂ [0, 1/n], there will be an open set (Subscript[W, n]) ⊂ X containing x such that (Subscript[f, B])((Subscript[W, n])) ⊂ ((Subscript[f, B])(x) - ε/2, (Subscript[f, B])(x) + ε/2)⋂[0, 1/n].  Let (Subscript[V, n]) = (Subscript[W, n])⋂(Subscript[U, n]), which is open because it is the finite intersection of open sets, and is not empty because both (Subscript[W, n]) and (Subscript[U, n]) contain x.  Then for y ∈ (Subscript[V, n]) ⊂ (Subscript[W, n]), (Subscript[f, B])(y) ∈ ((Subscript[f, B])(x) - ε/2, (Subscript[f, B])(x) + ε/2)⋂[0, 1/n], so |((Subscript[f, B])(x) - (Subscript[f, B])(y)| < ε/2.  So for y ∈ (Subscript[V, n]), |((Subscript[f, B])(x) - (Subscript[f, B])(y)| < ε/2 for all B ∈ (Subscript[ℬ, n]).
	Take N large enough so that 1/N < ε/2.  Let V = (Subscript[V, 1])⋂. . .⋂(Subscript[V, N]), which is open as it is the finite intersection of open sets.  If y ∈ V, then y ∈ (Subscript[V, 1]), . . ., (Subscript[V, N]), so for n ≤ N and B ∈ (Subscript[ℬ, n]),  |(Subscript[f, B])(x) - (Subscript[f, B])(y)| < ε/2.  Furthermore, for n > N and B ∈ (Subscript[ℬ, n]), we know that |(Subscript[f, B])(x) - (Subscript[f, B])(y)| < 1/n < 1/N < ε/2, because the maximum value of (Subscript[f, B]) is 1/n, and the minimum value is 0, so the maximum difference betwen any two values is 1/n.  So for y ∈ V, |(Subscript[f, B])(x) - (Subscript[f, B])(y)| < ε/2 for all B ∈ ℬ.  Therefore, d(g(x), g(y)) = (sup_(B∈ℬ)){|(Subscript[f, B])(x) - (Subscript[f, B])(y)|} ≤ ε/2 < ε, implying that g(y) ∈ B(g(x), ε), proving that g is continuous.
	
	Fact 4: (g^(-1)) is continuous.
	Proof: To prove that (g^(-1)) is continuous, we need to show that if U ⊂ X is open, then g(U) = ((((g^(-1))))^(-1))(U) is open in g(X).  It suffices to show that for any z ∈ g(U), there exists a set W, open in g(X), such that W contains z and W ⊂ g(U).  Because z ∈ g(U) and g is injective by Fact 2, there exists a unique x ∈ U such that g(x) = z.  Because U is open, there exists a basis element β such that x ∈ β ⊂ U; therefore (Subscript[f, β])(x) > 0, and (Subscript[f, β])|(X\β) ≡ 0.
	Let V = {h: ℬ -> [0, 1] | h(β) > 0} ⊂ (([0, 1])^ℬ), for β chosen above.  Our claim is that V is open.  To show this, we must show that any function in V has an open neighborhood contained entirely within V.  Take some function h ∈ V, and consider the open ball B(h, h(β)).  For any function h'∈ B(h, h(β)), (sup_(B∈ℬ)){|h(B) - h'(B)|} = d(h, h') < h(β), so |h(B) - h'(B)| < h(β) for all B ∈ ℬ; in particular,  |h(β) - h'(β)| < h(β), so h'(β) > 0; thus, h' ∈ V, and B(h, h(β)) ⊂ V, so V is open.
	Let W = V⋂g(X).  Then W is open in g(X).  By our choice of β, (Subscript[f, β])(x) > 0; so g(x) contains the ordered pair (β, δ) for δ = (Subscript[f, β])(x) > 0; thus g(x) ∈ V.  It is also true that g(x) ∈ g(X); therefore, g(x) ∈ V⋂g(X) = W.  Now we need to show that W ⊂ g(U), and we will be done.  Take any function p ∈ W.  Then p = g(y) for some y ∈ X.  Because p ∈ W = V⋂g(X), p ∈ V, so (Subscript[f, β])(y) = p(β) > 0.  This means that y ∈ β ⊂ U, so p = g(y) ∈ g(U).  Therefore W ⊂ g(U), implying that g(U) is open.  This shows that ((((g^(-1))))^(-1))(U) is open whenever U is open, hence (g^(-1)) is continuous.

Taken together, Facts 2-4 prove that g is an embedding.  By Lemma 1.4, this means that X itself is a metric space. □

Before proving the converse, we should note that the proof relies on the Well-Ordering Theorem, a theorem that is equivalent to the Axiom of Choice in set theory, and which states that any set can be well-ordered.  This is a somewhat bizarre statement considering that no one has been able to find a well-ordering of the real numbers, and most people would find it rather tricky to picture what such a well-ordering would look like.  Nevertheless, the Well-Ordering Theorem is necessary if we are to prove the present theorem, so we will accept and use it without qualms.

Theorem 2.2: Suppose X is a metric space with metric d.  Then X is regular and has a countably locally finite basis.
Proof: We will break this into two steps.

	Step 1: X is regular.
	Proof: Take a closed set C ⊂ X and a point x ∈ X, x ∉ C.  Let α = inf{d(x, y) | y ∈ C}.  Because d(x, y) > 0 for all y ∈ C, α ≥ 0; we claim that α ≠ 0.  Suppose α = 0; then for any ε > 0, there would need to exist y ∈ C such that d(x, y) < ε.  This means that the open ball B(x, ε) must intersect C, which in turn implies that every open neighborhood containing x must intersect C; but X\C is open and x ∈ X\C, and clearly X\C does not intersect C; which is a contradiction.  Therefore, α > 0.  Our claim is that the open sets B(x, α/2) and U = (⋃_(y∈C))B(y, α/2) are disjoint open covers of x and C, respectively.  Take z ∈ B(x, α/2); then d(x, z) < α/2, and for any y ∈ C, d(x, y) > α.  By the triangle inequality, d(x, y) ≤ d(x, z) + d(z, y), so d(z, y) ≥ d(x, y) - d(x, z) > α - α/2 = α/2; therefore, z ∉ B(y, α/2), so z ∉ (⋃_(y∈C))B(y, α/2) = U.  Now suppose we have w ∈ U; then w ∈ B(y, α/2) for some y ∈ C, so d(y, w) < α/2; we also know that d(x, y) > α.  Again by the triangle inequality, d(y, x) ≤ d(y, w) + d(w, x), so d(w, x) ≥ d(y, x) - d(y, w) > α - α/2 = α/2; so w ∉ B(x, α/2).  Therefore, U and B(x, α/2) are disjoint open covers of C and x, proving that X is regular.
	
	Step 2: X has a countably locally finite basis.
	Proof: Before beginning the proof, we must give a definition.  If 𝒜 is a collection of subsets of X, then the collection ℬ is a refinement of 𝒜 if each element of ℬ is a subset of an element of 𝒜.  Now we want to prove the following lemma: 
	
Lemma 2.3: For any open covering 𝒜 of our metric space X, there is a countably locally finite collection ℰ of open sets that cover X and refine 𝒜.
Proof: It is here that we will use the Well-Ordering Theorem.  Pick a well-ordering ≺ of the elements in 𝒜.  For a particular n ∈ ℕ, take any open set U ∈ 𝒜, and let (Subscript[S, n])(U) = {x | B(x, 1/n) ⊂ U}.  Now let (Subscript[S, n]^( '))(U) = (Subscript[S, n])(U)\((⋃_(V≺U))V).   



		Figure 2: (Subscript[S, n])(U) is the dark region inside U (outer and inner regions), obtained by reducing U by 1/n.

	Fact 1: Suppose V, W ∈ 𝒜 and V ≠ W.  Take x ∈ (Subscript[S, n]^( '))(V) and y ∈ (Subscript[S, n]^( '))(W).  Then d(x, y) ≥ 1/n.
	Proof: Without loss of generality, suppose V ≺ W.  Because x ∈ (Subscript[S, n]^( '))(V), it is true that x ∈ (Subscript[S, n])(V), so B(x, 1/n) ⊂ V.  Furthermore, because y ∈ (Subscript[S, n]^( '))(W) and V ≺ W, it must be true that y ∉ V.  Suppose d(x, y) < 1/n.  Then y ∈ B(x, 1/n) ⊂ V, which is not true; so d(x, y) ≥ 1/n, as desired.
	
Now we will define yet another set modifying each U ∈ 𝒜.  Let (Subscript[E, n])(U) = ⋃{B(x, 1/3n) | x ∈ (Subscript[S, n]^( '))(U)}.

	Fact 2: Suppose V, W ∈ 𝒜 and V ≠ W.  Take x ∈ (Subscript[E, n])(V) and y ∈ (Subscript[E, n])(W).  Then d(x, y) > 1/3n.
	Proof: By definition of (Subscript[E, n])(V) and (Subscript[E, n])(W), there is w ∈ (Subscript[S, n]^( '))(V) and z ∈ (Subscript[S, n]^( '))(W) such that d(x, w) < 1/3n and d(y, z) < 1/3n.  By the triangle inequality, d(w, z) ≤ d(w, x) + d(x, z) ≤ d(w, x) + d(x, y) + d(y, z).  By Fact 1, we know that d(w, z) ≥ 1/n; therefore, d(x, y) ≥ d(w, z) - d(w, x) - d(y, z) > 1/n - 1/3n - 1/3n = 1/3n, as desired.
	
	Fact 3: For every U ∈ 𝒜, (Subscript[E, n])(U) ⊂ U.
	Proof: Take y ∈ (Subscript[E, n])(U).  Then y ∈ B(x, 1/3n) for some x ∈ (Subscript[S, n]^( '))(U).  By definition of (Subscript[S, n]^( '))(U), this means that x ∈ (Subscript[S, n])(U), which means that B(x, 1/n) ⊂ U.  Because d(x, y) < 1/3n < 1/n, y ∈ B(x, 1/n) ⊂ U, implying that (Subscript[E, n])(U) ⊂ U.
	
Let (Subscript[ℰ, n])= {(Subscript[E, n])(U) | U ∈ 𝒜}, and let ℰ = (⋃_(n∈ℕ))(Subscript[ℰ, n]).

	Fact 4: ℰ is a refinement of 𝒜.
	Proof: Any set in ℰ will be (Subscript[E, n])(U) ∈ (Subscript[ℰ, n]) for some natural number n.  By Fact 3, (Subscript[E, n])(U) ⊂ U ∈ 𝒜.  Therefore ℰ refines 𝒜.
	
	Fact 5: ℰ is countably locally finite.
	Proof: We must show that each (Subscript[ℰ, n]) is locally finite.  Take x ∈ X.  Suppose there were an open set U ⊂ X such that B(x, 1/6n)⋂(Subscript[E, n])(U) ≠ ∅.  Then there would be some y ∈ (Subscript[E, n])(U) such that d(x, y) < 1/6n.  Now take any V ≠ U, and z ∈ (Subscript[E, n])(V).  Then by Fact 2, d(y, z) > 1/3n.  By the triangle inequality, d(x, y) + d(x, z) ≥ d(y, z), so d(x, z) ≥ d(y, z) - d(x, y) > 1/3n - 1/6n = 1/6n.  This means that z ∉ B(x, 1/6n); thus the open neighborhood B(x, 1/6n) can intersect at most one element of (Subscript[ℰ, n]), which means that (Subscript[ℰ, n]) is locally finite, which means that ℰ is countably locally finite as desired.
	
	Fact 6: ℰ covers X.
	Proof: Take x ∈ X, and let U be the first element of 𝒜 that contains x, according to the well-ordering; we know that U exists because 𝒜 covers X.  U is an open set, so we can take n sufficiently large so that B(x, 1/n) ⊂ U; this means that x ∈ (Subscript[S, n])(U) and x ∉ V for V ≺ U, because U is the first element that contains x; therefore x ∈ (Subscript[S, n])(U)\((⋃_(V≺U))V) = (Subscript[S, n]^( '))(U).  Therefore x ∈ (Subscript[E, n])(U) ∈ (Subscript[ℰ, n]) ⊂ ℰ, which means that ℰ covers X.
	
By Facts 4-6, ℰ is the desired collection. □

Now we return to our original task of proving that X has a countably locally finite basis.  Take n ∈ ℕ, and let (Subscript[𝒜, n]) = {B(x, 1/n) | x ∈ X}.  Then (Subscript[𝒜, n]) is an open covering of X, so by Lemma 2.3 there exists a countably locally finite open covering (Subscript[𝒟, n]) that refines (Subscript[𝒜, n]).

	Fact 7: Suppose D ∈ (Subscript[𝒟, n]), and a, b ∈ D.  Then d(a, b) < 2/n.
	Proof: Because (Subscript[𝒟, n]) is a refinement of (Subscript[𝒜, n]), D ⊂ B(x, 1/n) for some x ∈ X.  Take a, b ∈ D.  Then a, b ∈ B(x, 1/n), so d(a, x) < 1/n and d(b, x) < 1/n.  By the triangle inequality, d(a, b) ≤ d(a, x) + d(b, x) < 1/n + 1/n = 2/n, as desired.
	
Let 𝒟 = (⋃_(n∈ℕ))(Subscript[𝒟, n]).  𝒟 is the countable union of countable sets, so 𝒟 is also countable.  Each (Subscript[𝒟, n]) is countably locally finite, i.e., is the union of locally finite sets; therefore, 𝒟 is also the union of locally finite sets.  Hence, 𝒟 is countably locally finite.
	All the remains to be shown is that 𝒟 is a basis.  Take any open set U ⊂ X.  It suffices to show that for any x ∈ U, there is an set D ∈ 𝒟 such that x ∈ D ⊂ U.  We know there is an open ball B(x, ε) ⊂ U.  Choose n large enough so that 2/n < ε.  Because (Subscript[𝒟, n]) covers X, we know that there exists some D ∈ (Subscript[𝒟, n]) containing x.  By Fact 7, if we take any y ∈ D, d(x, y) < 2/n < ε; therefore, y ∈ B(x, ε).  This means that x ∈ D ⊂ B(x, ε) ⊂ U; therefore U is the union of elements of 𝒟, which means that 𝒟 is a basis for X.  This completes the proof. □
	
Conclusion: Taken together, Theorems 2.1 and 2.2 prove the Nagata-Smirnov Metrization Theorem.

References:
1. Jänich, Klaus and Silvio Levy (translator).  Topology.  New York, NY: Springer-Verlag New York Inc., 1984.

2. Lawson, Terry.  Topology: A Geometric Approach.  New York, NY: Oxford University Press, 2003.

3. Munkres, James R.  Topology: A First Course.  Englewood Cliffs, NJ: Prentice-Hall, Inc., 2000.