Bases and Subbases
A topology can be enormous. The standard topology on the line
\mathbb{R} is the collection of all open sets — every
open interval, every union of intervals, every wild open set with countably many gaps. There is no
hope of listing them, and no hope of checking a claim "for every open set" by brute force. Yet a
topology on
\mathbb{R} can be pinned down completely by a tiny, tidy family: the open
intervals (a, b). Every open set — however baroque — is just a union of
these. Name the intervals and you have named the whole topology.
This is the same economy that runs through all of mathematics. You do not describe a vector space by
listing its infinitely many vectors; you give a basis and take linear combinations. You do
not describe a group by writing out its multiplication table; you give generators. A
topology gets the same treatment. A small generating family that unfolds into the whole topology by
taking unions is called a basis, and an even leaner family that unfolds by taking
finite intersections and then unions is called a subbasis. This page is
about those two levers — how they generate a topology, which collections are allowed to be a basis,
and how they let you compare topologies at a glance.
Throughout, X is a set and a topology
\tau on it is a collection of subsets (the open sets) closed
under arbitrary unions and finite intersections, with \varnothing and
X themselves open. Everything below is machinery for describing such a
\tau without writing all of it down.
What a basis is
Fix a topology \tau on X. A subcollection
\mathcal{B} \subseteq \tau of open sets is a basis for
\tau if every open set is a union of members of
\mathcal{B}:
U \in \tau \quad\Longleftrightarrow\quad U = \bigcup_{i} B_i \ \text{ for some } B_i \in \mathcal{B}.
There is an equivalent, more usable phrasing — the one you actually check in proofs. A collection
\mathcal{B} of open sets is a basis for \tau
exactly when it satisfies the local condition:
U \in \tau \ \text{ and } \ x \in U \quad\Longrightarrow\quad \exists\, B \in \mathcal{B} \ \text{ with } \ x \in B \subseteq U.
The two versions say the same thing. If every point of U has a basis set
squeezed between it and U, then U is the union
of all those little basis sets; conversely a union of basis sets obviously houses a basis set around
each of its points. Think of the basis elements as the "standard neighbourhoods": to be open is
precisely to contain a standard neighbourhood around each of your points.
The prototype: on \mathbb{R}, the open intervals
\mathcal{B} = \{\, (a, b) : a < b \,\} form a basis for the standard
topology. A set U is open iff around each of its points sits a little
interval inside U — the familiar picture. More generally, in any
metric space
(X, d), the open balls
B(x, r) = \{\, y : d(x, y) < r \,\} form a basis for the metric topology
— a set is open iff it contains a ball around each of its points, which is the very definition of an
open set in a metric space.
Which collections may be a basis? The two conditions
Here is the striking part. You can start with a raw collection
\mathcal{B} of subsets of X — no topology
given in advance — and ask: is there a topology for which this is a basis? There is exactly one
candidate (unions of members of \mathcal{B}), and it works iff
\mathcal{B} passes two tests.
A collection \mathcal{B} of subsets of X is
a basis for some topology on X if and only if:
-
(B1) Covering. The members cover X: every
x \in X lies in at least one B \in \mathcal{B}.
-
(B2) Intersection. Whenever x \in B_1 \cap B_2 with
B_1, B_2 \in \mathcal{B}, there is some
B_3 \in \mathcal{B} with
x \in B_3 \subseteq B_1 \cap B_2.
When they hold, the topology generated by
\mathcal{B} is
\tau = \{\, \text{arbitrary unions of members of } \mathcal{B} \,\}
(with the empty union giving \varnothing), and
\mathcal{B} is a basis for it.
Read the conditions as exactly what the topology axioms demand of a generating family. Condition
(B1) is there so that X itself comes out open (it must be
a union of basis sets, so the basis had better reach every point). Condition (B2) is
there so that the union topology is closed under intersection: if
B_1 and B_2 are open, their intersection must
be a union of basis sets too, and the only way to guarantee that is to fit a basis set into
B_1 \cap B_2 around every point of the overlap. Note (B2) does
not ask that B_1 \cap B_2 itself be a basis element — only that
it be coverable from inside by basis elements.
The open intervals pass both effortlessly: they cover \mathbb{R}, and the
intersection of two intervals is again an interval (or empty), so (B2) holds with
B_3 = B_1 \cap B_2 itself. Open balls pass too — that is Worked example 2
below, and it is the one place (B2) needs a genuinely non-trivial choice of
B_3.
It is tempting to think (B1) is the whole story — surely any family that covers
X generates a topology by unions? It covers everything, after
all. The trap is that "unions of members of \mathcal{B}" is forced to be
your topology, and a topology must be closed under finite intersections. Unions of basis sets are
automatically closed under unions (a union of unions is a union), so (B1) buys you the union
axiom. But nothing so far forces B_1 \cap B_2 to be a union of basis
sets — and that is precisely the gap (B2) plugs. Miss it and the collection you generate simply
isn't a topology.
The picture: covering and the intersection condition
In the plane, take the open discs as your basis. An open set U is painted
by laying overlapping discs across it until every point is inside one — that is condition (B1) at
work, U as a union of discs. The subtle part is what happens where two
discs overlap: pick a point x in
B_1 \cap B_2, and condition (B2) demands a third disc
B_3, entirely inside the lens-shaped overlap, still containing
x. Step through the figure to watch the cover build and the nested disc
appear.
The overlap B_1 \cap B_2 — the lens — is not a disc, so it is not
itself a basis element. But (B2) does not ask it to be. It only asks that we can slip a genuine disc
B_3 around x inside the lens, and we always can
(shrink the radius until the disc clears both boundaries). That single move is what makes the discs a
legal basis, and it is exactly the balls-are-a-basis argument dressed in pictures.
Worked example 1: generating a topology from a small basis
Let X = \{a, b, c\} and take the collection
\mathcal{B} = \big\{ \{a\},\ \{b, c\},\ \{a, b, c\} \big\}.
Check (B1). Does \mathcal{B} cover
X? Yes — a \in \{a\} and
b, c \in \{b, c\}. Every point is housed.
Check (B2). Run through the pairwise intersections.
\{a\} \cap \{b,c\} = \varnothing (nothing to check — no point
x to serve). \{a\} \cap \{a,b,c\} = \{a\},
which is a basis element, so take B_3 = \{a\}. Similarly
\{b,c\} \cap \{a,b,c\} = \{b,c\} \in \mathcal{B}. Every overlap contains a
basis set around each of its points, so (B2) holds.
Generate. The topology is all unions of members (including the empty union):
\tau = \big\{\ \varnothing,\ \{a\},\ \{b, c\},\ \{a, b, c\}\ \big\}.
Take unions of the three basis sets and you get nothing new — \{a\} \cup \{b,c\} =
X is already listed. So this four-set collection is the generated topology, and you can
verify by hand it is closed under unions and intersections. Notice how a three-element basis produced
the topology outright; on a small space the basis is barely smaller than
\tau, but on \mathbb{R} the compression from
"all intervals" to "all open sets" is total.
Worked example 2: open balls really are a basis
On a metric space (X, d), let
\mathcal{B} = \{\, B(x, r) : x \in X,\ r > 0 \,\} be the collection of all
open balls. We show it satisfies (B1) and (B2), so it generates a topology — the
metric topology.
(B1). Every point x lies in a ball around itself, e.g.
x \in B(x, 1). The balls cover X.
(B2). Suppose x \in B(p, r) \cap B(q, s). Then
d(p, x) < r and d(q, x) < s, so the two
"slacks" r - d(p, x) and s - d(q, x) are both
positive. Put
\varepsilon = \min\big(\, r - d(p, x),\ \ s - d(q, x) \,\big) > 0.
We claim B(x, \varepsilon) \subseteq B(p, r) \cap B(q, s). Take any
y \in B(x, \varepsilon). By the triangle inequality,
d(p, y) \le d(p, x) + d(x, y) < d(p, x) + \varepsilon \le d(p, x) + \big(r - d(p, x)\big) = r,
so y \in B(p, r); the identical estimate with
q, s gives y \in B(q, s). Hence
x \in B(x, \varepsilon) \subseteq B(p, r) \cap B(q, s), which is precisely
(B2) with B_3 = B(x, \varepsilon). The balls are a basis. This is the
lens-and-nested-disc picture made rigorous: \varepsilon is exactly how
much you shrink the radius to clear both boundaries.
Subbases: generating from even less
A basis already asks for something — the intersection condition (B2). A subbasis
asks for essentially nothing, and repairs the deficit by doing two operations instead of
one.
Let \mathcal{S} be any collection of subsets of
X whose union is X. Then:
-
The collection \mathcal{B} of all finite intersections
of members of \mathcal{S} is a basis (the empty intersection being
X itself).
-
The topology generated by that basis — arbitrary unions of finite intersections of members of
\mathcal{S} — is the smallest topology containing
\mathcal{S}. We call \mathcal{S} a
subbasis for it.
Why does the finite-intersection family automatically satisfy (B2)? Because it is
closed under finite intersection by construction: if B_1 and
B_2 are each a finite intersection of subbasis sets, then
B_1 \cap B_2 is one too, so it is itself a basis element and you may take
B_3 = B_1 \cap B_2. That is the whole trick: a subbasis need not close up
under intersection because forming the basis does the closing for you. The only requirement
left on \mathcal{S} is that it cover X, and even
that is often waved through by counting the empty intersection as X.
"Smallest topology containing \mathcal{S}" deserves a second look. Any
topology \tau that contains \mathcal{S} must,
being a topology, also contain all finite intersections of members of
\mathcal{S} and then all unions of those — that is, it must contain the
generated topology. So the generated topology is a subset of every topology containing
\mathcal{S}: it is the coarsest, the smallest, the intersection of them
all. A subbasis is thus the most economical possible way to specify a topology — hand over
any cover of X and the machine builds the leanest topology that makes all
those sets open.
Worked example 3: rays as a subbasis for the line
Take X = \mathbb{R} and the collection of all open rays:
\mathcal{S} = \big\{\, (-\infty, b) : b \in \mathbb{R} \,\big\} \ \cup\ \big\{\, (a, \infty) : a \in \mathbb{R} \,\big\}.
These cover \mathbb{R} (every real is in some
(-\infty, b)), so \mathcal{S} is a legitimate
subbasis. Now form finite intersections. A ray with a ray of the same type gives another ray
((-\infty, 3) \cap (-\infty, 7) = (-\infty, 3)). The interesting
intersection is opposite types:
(a, \infty) \cap (-\infty, b) = (a, b) \quad (\text{when } a < b).
So the finite intersections of rays are exactly the open intervals
(a, b) (plus the rays themselves, and \varnothing
when a \ge b). That is precisely the standard basis of intervals from the
opening card — whose unions give the standard topology. Conclusion: the two families of rays
form a subbasis for the standard topology on \mathbb{R}. Two
crude ingredients — "everything below b" and "everything above
a" — intersect to produce every interval, and the whole real topology
unfolds from there.
Subbases are quietly everywhere. The product topology on
X \times Y is defined by a subbasis: the "slabs"
U \times Y and X \times V for
U, V open. Intersect a vertical slab with a horizontal slab and you get
an open box U \times V — the basic open sets of the product — and the
products of open rays in each factor recover open rectangles in the plane, the standard topology on
\mathbb{R}^2. The reason topologists prefer subbases here is a
gorgeous labour-saving theorem: a map into a space is continuous as soon as the preimage of every
subbasic open set is open — you never have to check the full topology, just the handful of
generators.
Comparing topologies through their bases
Two topologies on the same set can be compared: \tau' is
finer than \tau (and \tau
coarser than \tau') when
\tau \subseteq \tau' — every set open in the coarse one is open in the
fine one. "Finer" means more open sets, more distinctions, smaller neighbourhoods. Bases turn this
set-containment question into a purely local check.
Let \mathcal{B} generate \tau and
\mathcal{B}' generate \tau' on the same set.
Then:
-
\tau' is finer than \tau
(\tau \subseteq \tau') if and only if for every
B \in \mathcal{B} and every x \in B, there
is a B' \in \mathcal{B}' with
x \in B' \subseteq B.
-
In words: \tau' refines \tau exactly when
the finer basis can fit one of its sets inside every coarse basis set, around every point.
The classic illustration lives on \mathbb{R}. The standard topology has
basis the open intervals (a, b). The lower-limit topology
\mathbb{R}_\ell has basis the half-open intervals
[a, b). Is the lower-limit topology finer? Given a standard basis set
(a, b) and a point x in it, the half-open set
[x, b) satisfies x \in [x, b) \subseteq (a, b) —
yes, it fits. So \mathbb{R}_\ell is finer. And it is strictly
finer: the set [0, 1) is open in \mathbb{R}_\ell
but not in the standard topology, because no open interval around 0 fits
inside [0, 1) (any interval around 0 spills to
the left of 0). The basis criterion caught the refinement with one line of
interval-fitting, no need to reason about all open sets at once.
Two errors trip up almost everyone the first time.
-
Covering X is not enough to be a basis. Consider
X = \{a, b, c\} with
\mathcal{B} = \big\{ \{a, b\},\ \{b, c\} \big\}. It covers
X, so (B1) holds — but (B2) fails at the point
b \in \{a,b\} \cap \{b,c\} = \{b\}: there is no member of
\mathcal{B} containing b and sitting inside
\{b\} (both members are too big). So
\mathcal{B} is not a basis for any topology. Its "generated" unions
\{a,b\}, \{b,c\}, \{a,b,c\}, \varnothing are not closed under
intersection — \{a,b\} \cap \{b,c\} = \{b\} is missing. The cover
condition alone is a trap.
-
Do not confuse a basis with a subbasis. The same two-set collection
\big\{ \{a,b\}, \{b,c\} \big\} is a perfectly good subbasis:
throw in the missing finite intersection \{b\} and you get the basis
\big\{ \{a,b\}, \{b,c\}, \{b\} \big\}, whose unions form a genuine
topology. The moral: a collection can fail to be a basis yet succeed as a subbasis. When you meet
a generating family, ask which role it is playing — "unions only" (basis) or
"intersections then unions" (subbasis). The extra intersection step is exactly what rescues the
example.
The three levers, in one view
Stand back and the whole page is a hierarchy of generating families, each one leaner and each one
requiring one more operation to unfold into the full topology.
-
Topology \tau: the complete list of open sets. Closed
under arbitrary unions and finite intersections. Usually far too big to write down.
-
Basis \mathcal{B}: take
arbitrary unions to recover \tau. Must satisfy (B1) cover and
(B2) intersection.
-
Subbasis \mathcal{S}: take
finite intersections, then arbitrary unions to recover \tau.
Must only cover X. Generates the smallest topology containing
it.
On \mathbb{R} the chain is vivid: the two families of rays (subbasis)
intersect to the open intervals (basis) which union to every open set (topology). Each arrow discards
structure you never needed to store. That is the payoff — you specify a topology by its cheapest
generators and let unions and intersections do the rest.