The winding number of a closed curve about the origin is an
integer assigned to the curve that, well, measures how many times it winds around the origin!
This integer can be computed in various ways, but perhaps the most recognizable arises from complex analysis:
when is a smooth map into avoiding the origin, then
At first glance this looks crazy: why should we ever expect this integral to be integer valued? And how in the
world is its value sensitive to the number of times the curve wraps around the origin, but not to any other details
of the curve itself? Initially this may be chalked up to the ‘magic of complex analysis’, but upon a deeper dive
one realizes the magic is actually on loan to from the world of differential forms, who in turn
acquired this magic from algebraic topology: specifically, homology and cohomology.
Another familar definition of the winding number of a curve (which can be used in a greater generality, as it does
not require differentiability) involves a choice of coordinates: if the closed curve is represented as a
-periodic function missing , then we define by writing in
polar
coordinates
, and then computing
This definition raises its own host of questions:why is this invariant under pertubations
of ? Were in the world did polar coordinates come from? How important are the exact form of polar
coordinates, or the in the denominator to the overall picture? And finally - how can we possibly tell these
two extremely different definitions give the same answers?
Here again, the this simple-but-cryptic formula is powered by the engine of algebraic topology, finding a way to grab onto the
slippery concept of “the curve up to homotopy” with an explicit, computable invariant.
The goal of this note is to
explain the equivalence of these two perspectives, and to show how this birds-eye view invites generalizations of the
winding number to higher dimensions.
Topology of Maps
Topology is the art of blurring out the details of a problem that do not matter, while being careful
not to blur so many details that the information you are interested in vanishes alongside them.
In our case, we are interested in a map of the circle into the plane that misses the origin, so the set of objects
we care about is the funtion space
of continuous maps of the circle into the punctured plane.
The details we do not care about are things like speed at which traverses its image, or even the
or small continuous deformations of (of course, with it still avoiding the origin). This type of
imprecision is exactly captured by the notion of homotopy: two functions are called homotopic
if there is a continuous map where and .
If two curves are homotopic, then one can continuously wiggle (via
a homotopy ) until it turns into , all while avoiding the origin. We use this to define an
equivalence relation on where if and only if they
are homotopic. Blurring our vision to disregard continuous deformation is then rigorously encoded by taking the
quotient space of with respect to this equivalence relation. We denote this space by
and denote the homotopy class of a map as .
This space represents a precise distillation of the information of a curve in the punctured plane, up to
continuous deformations, and so represents the abstract solution to our problem: all possible topological data of
a curve is encoded by its image in this space. But how do we work with abstract data like ? This is what algebraic topology is all about.
Interlude: Algebraic Topology
Algebraic topology is a collection of techniques for assigning algebraic data (groups, rings, modules, etc) to
topological spaces in a coherent and homotopy invariant way. Precisely, algebraic topology provides a collection of
functors from the homotopy category to various algebraic categories: things that assign an algebraic gadget
to each space , and an algebraic map to each continuous map .
With the right tools, one may hope to extract the
topological data stored in a homotopy class like and unpack it as a collection of algebraic data, that is
much easier to work with.
In our case, the algebraic gadget involved is going to be the abelian group , and the topological data
of a homotopy class will be encoded by an element of , that is, a number!
Homotopy Groups
The first natural set of algebraic invariants to consider are the homotopy groups: given a (pointed,connected)
topological
space
we can for each consider the set of (pointed) homotopy classes of maps . For each
this set naturally carries the structure of a group ( is just a set), and for each this group is abelian (thus the choice of basepoint has no effect).
With their group structure, we denote these sets of homotopy classes as
We denote the collection of all homotopy groups as .
The important property of these algebraic gadgets is how they let us turn homotopy classes of functions into
algebraic data.
Given two spaces and a map , we may use this map to take any element of and produce an element of via composition: define as
That is, elements of induce group homomorphisms .
It is directly visible from this definition that if are homotopic then : thus, :
thus this assignment factors through the quotient by homotopy classes of maps and we get a map
As we can do this for each , this actually results in an infinite sequence of group homomorphisms
The natural question here of course is, is this any good? Sure we can use to produce this collection of maps,
but do the resulting maps remember ?
Unfortunately this question is very hard (its false in general, but open in many interesting classes of spaces).
Nonetheless,
in the situations we will be interested in (winding number and some generalizations) things can be worked out
explicitly, and we will find to be a *complete invariant*: that is, if then .
Homology Groups
Enter the world of homology. To fix notation we write for the singular homology group of with
coefficients in the ring . When we shorten the notation to , and when we wish to speak of
the set of homologies for all we write . When another homology theory
(simplicial, de Rahm, etc) is known to agree with singular homology, we absue notation and use to represent
these as well, making the interpretation of elements clear from the context.
Like for the homotopy groups, every continuous function induces a
map on
homology
Thus, each element is assigned to an element ,
defining a map
Since homology is a homotopy invariant, any two homotopic maps are assigned to the same group homomorphism
. Thus, this assignment factors through the quotient by homotopy to a well-defined map
Explicitly, this assignment sends a homotopy class to a sequence of group homomorphisms
Though, since if are manifolds of dimension then all homologies above are trivial, so the induced
maps beyond some finite stage are all the zero map from the trivial group to itself.
This situation leaves us with the same question to answer: we’ve managed to use homology as a tool to assign a
homotopy class to a (finite) list of group homomorphisms. How much information have we lost in doing so?
Like the homotopy case, this is a difficult question in general, but for the case of winding number the algebraic
data gleaned from homology provides a complete homotopy invariant.
The Algebraic Topology of
In our particular case, we can work out both of these approaches and see that they lead directly to the two familiar
definitions of winding number: homotopy groups abstract the ‘winding number is a lift’ computation, and homology
abstracts the ‘winding number is a path integral’ computation.
Winding Number Via Homotopy
The homotopy groups of the circle are very simple:
and for , (to prove this, recall that for
homotopy groups are invariant under taking covers: and since the universal cover of is contractible,
all its higher homotopy vanishes). Since is homotopy equivalent to the circle, it
has the same homotopy groups: in dimension and above that. Thus, the algebraic data carried by
a homotopy class of closed curve is the sequence of homomorphisms
This collection of maps is a *complete homotopy invariant*, so the entirety of the topological information carried
by is recorded by the maps . But - all but one of these maps is the zero map between
trivial groups! Thus, the entirety of the topological data of is carried by
Since each of these groups is abstractly isomorphic to , and is a group homomorphism,
after choosing identifications becomes an endomorphism of : such maps are easily
classified, every is of the form for some .
That is, the topological data of is fully characterized by a single integer .
Getting Access to this Integer
The only remaining problem is a means of actually computing this integer stored by .
While each of , are abstractly isomorphic to the integers
their actual elements are defined as homotopy classes: which are exactly the kind of thing we are trying to avoid
working with!
So, we need to do some more algebraic topology to recover this data in a more user-friendly means.
Since we are working only with here, the tool for the job is covering spaces: these let us replace slippery
concepts like homotopy classes with concrete deck transformations: given a covering space
the deck group of is the set of self-homeomorphisms of which project to the identity under :
When is the universal covering space of , then we have a natural identification
where a deck transformation with is sent to the loop for any path connecting
to in .
To begin our computation, we first choose a universal cover of so that we can replace
its homotopy group with the deck group. The simplest choice is better known as polar coordinates:
But before we can put this to use, we have to overcome a slight difficulty: our loop does not necessarily lift to the universal cover, as only satisfies the
lifting criterion if it sends to the trivial element of .
(And, this only occurs if does not wind around the origin!)
To fix this, we must also choose a universal cover of . Again, the simplest such choice is already
well-known to us from calculus as a parameterization of the unit circle:
Now, we may lift the map to a map between the universal covers (Such a lift is usually called ‘parameterizing the curve in polar coordinates’).
This map, together with the covers and the original form a commuting square:
draw this
Because in the covering of the circle, , and thus by commutativity,
.
This means that and both lie above the same point of
, and thus there is a some deck transformation relating them.
As the deck transformations of are all maps of the form
we see that there must be some such that
This integer represents the deck transformation encoded by , which in turn represents the
induced homomorphism , which itself
represents the entirety of the topological data of the homotopy class in . “Solving for ”, we may recover this topological data directly from the lift:
Which, recalling that implies
Winding Number Via Homology
For convenience, we will work with the reduced homology groups of the spaces in question (as the zeroth homology
plays no essential role.)
The homological story starts similar to that of homotopy groups: the zeroth homology of is
zero as the circle is connected, the first homology is (as its oriented, and
1-dimensional), and its higher homologies are zero as they are larger in dimension than the space itself.
And, as deformation retracts onto the circle, it has the same sequene
of homology groups.
Thus given an immersion of the circle into the
punctured plane, capturing the homotopy information of amounts to but a single nontrivial homomorphism
between first the first homologies:
As the only nonzero map, on first homology stores all of the topological data of .
Like in the case of homotopy, if we choose identifications of and with (in homology, this is precisely the same as choosing an orientation of each),
then is an endomorphism of , which is naturally identified with an integer.
The problem of course is the same - how are we to access this integer associated to the map!
More directly, if we had chosen generators of and ,
respectively we could compute of the generator of the domain, and decompose this as some integer number of copies of
the generator of the target.
This sounds good in theory, but the objects involved are still too abstract,
and are defined as equivalence classes. We need a tool for converting abstract groups like to concrete
things: before the solution was covering spaces, now the solution is cohomology.
Interlude: Cohomology and Computation
The definition of homology is given by some complex of chains with boundary maps
, and the computes the homology of this complex .
Cohomology is a dualization of this at the level of chains: that is, we build the the dual chain complex
with the dual boundary maps defined so that if then
is the map .
The *homology* of this *co*-chain complex is the *cohomology* of the underlying space . Phew!
What does this all mean for us in practice? Well, we are interested in computing the invariant stored by
as a map between two first homologies. The elements of these homology groups are (equivalence
classes of) chains, and an element of cohomology is an equivalence class of functions on chains.
Thus, an element of cohomolgy determines a map as follows:
if is a homology class, choose a representation for some chain , and also choose a
representation of the cohomology class by some function . Then we define
This requires some well-definedness checks (choosing different representatives does not affect the final value, etc)
but the important part for our overall story is we are able to take some abstract thing (a homology class) and
compute a very concrete thing (an element of the ring ) using a cohomology class.
While we will need the flexibility of general coefficients shortly, let’s discuss the situation over .
Since is one-dimensional, if we could find a cohomology class
which sets up an isomorphism
(that is, sends a generator of to ) Then we could directly implement the program sketched above, and remove the difficult-to-deal-with equivalence
classes from the story at the same time!
More precisely, we would know by our abstract reasoning that if we choose a fundamental class for , apply , and then apply the isomorphism given by the cohomology class , we get the
topological invariant
But, by the definition of the action of on homology, we can pick an explicit representative with
and an explicit chain representing the fundamental class , where we can then compute
as
This final equation is defined in terms of three concrete things: an actual choice of chain representing a fundamental
class, the actual map , and an actual linear map on chains: no more equivalence classes in sight! So,
if we know how to
compute with , we can directly access our hidden integer invariant.
Clearly, we will have little to no hope doing this explicitly in singular homology, as the cochain complex is
full of very-difficult-to-describe things. But when
things are smooth we can switch to a much easier-to understand theory of cohomology, de Rham cohomology
De Rham Cohomology
The de Rham complex is populated by differential forms of each degree on the base smooth manifold , and the
co-boundary map is the exterior derivative:
Differential forms are smooth, real valued multilinear functions on the tangent space, and
so to work with them we necessarily have to take coefficients in (which will not be an issue, since
we will be able to recover our integer invariant by restriction at the end of the day).
A differential form is called closed if , and exact if for some othe form .
Thus, the homology of the de Rham complex records the closed forms modulo the addition of exact forms.
This is a very different cohomology theory than the one’s we are used to involving simplices, but like many
algebraic topological invariants, it turns out to be just another way of accessing the same abstract data:
de Rham’s Theorem The homology of the de Rham complex of a smooth manifold agrees with the
homology of the singular cochain complex.
Thus, we can use differential forms to compute the homological invariant following the outline above, with one big if:
how do we know there actually are any nonzero cohomology classes to use to set up an isomorphism?
This is just a computation: as the two spaces are homotopy equivalent,
and by Poincare duality: finally
because it is connected: thus, there is a 1-dimensional space of closed 1-forms on after modding out by exact ones.
Indeed, to construct such a form, we can take inspiration from the deformation retraction realizing
the homotopy equivalence between these two spaces. The circle has a 1-dimensional space of closed-mod-exact 1-forms (these are top-
dimensional forms for the circle, so they are possible volume forms). A cannonical choice is , which can be explicitly defined
as the form whose pullback under the universal covering is the differential of the identity function
sending to .
It’s easy to verify that in the coordinates of the plane, this form is the restriction of
to the unit circle via a quick computation: under the trigonometric parameterization , this pulls back to
Now, we need to transport this form, which generates to a form which generates .
The isomorphism between these spaces is induced by the homotopy equivalence arising from the deformation retract
Thus, a generator of is given by
(this computation is much easier in polar coordinates, but to avoid any potential confusion involving coordinates being a covering space;
I’ll do it with here).
Where is computed with the quotient rule:
Running the analogous computation of and substituting in, we get
Thus, this form is closed but not exact on (whcih we can also verify directly: we may compute its exterior derivative
to see we get zero, but then compute its integral over the circle and see we get , which is not zero, even though the circle has no boundary.
Thus, it cannot be the derivative of a function by stokes theorem.)
Treating this form as a representative of a cohomology class, this realizes an isomorphism from to .
However, as at the end of the day we would like to recover a fact about homology with integer coefficients,
so we need to do some normalization. We would like to make it so that the cannonical generator of , that is,
the unit circle, is sent to .
But right now, this is sent to
All we need to do is divide by this number, producing a new 1-form (still closed but not exact) which will set up an isomorphism between homology
with coefficients over , that restricts to an isomorphism over . To get some notation into this coordinate-heavy game, call this thing
Thus, finally our means of computing the integer stored by explicity is made available to us! Given a map
We take itself (with our choice of orientation) as a boundaryless chain representing the fundamental class in
and compute the winding number of via
The last step to make contact with the formula given in the introduction is to relate to the form .
A confusing thing when first dealing with homology and cohomology: these two things are not equal or even scalar multiples of one another,
but simply cohomologous: they are two representatives of the same cohomology class, and so give the same value when integrated against
any chain representing a homology class.
To see this, we begin by writing out :
Thus, dividng by ,
This form is in the same cohomology class as since the additional term, is exact!
To show this explicitly we just need to construct a real valued function on the punctured plane for which this is the derivative: but this is straightforward
using the chain rule.
Thus we see that
and so, integrating over the boundaryless immersed manifold yields
Equivalence of these Definitions
(We can prove directly these two definitions give the same answer, by setting up an isomorphism between how acts on the fundamental
group and how it acts on first homology. This is basically a “coincidence of low dimensions”: in more complicated scenarios
homotopy and homology won’t carry the same information (in general, neither will carry the entire homotopy type of the map), and
homotopy groups will be impossible to compute….)
What definition should we generalize?
(In higher dimensions the homotopy type of a general map can be very complicated, and the algebraic topological invariants more difficult
to work with. In particular, for punctured never again will the list of homotopy groups end at so the probelm reduces to
covering space theory: indeed never again will the list of homotopy groups even be finite! Thus if we want to computationally extract
some information about the homotopy class of the map, we should turn to homology. It turns out this homology story generalizes nicely especially when
the homology in the correct dimension is 1-dimensional. This happens in cases where “winding number” is a good way to think about homotopy classes:
namely, whenever there’s a deformation retract of the target onto a space of the same dimension as the thing being immersed….but this story is for when I have more time)
)