Categorifying Quantum Mechanics

John Baez

January 29, 2003

These are some notes for the first of three talks I gave at the Australian Category Theory Seminar. They are very rough; the actual talk was of course infinitely clearer and more entertaining. For more details, see my paper with James Dolan, From Finite Sets To Feynman Diagrams. For even more details, see the notes from the Fall 2003 and Winter 2004 sessions of the Quantum Gravity Seminar at U. C. Riverside.
1.  Quantum mechanics

In quantum mechanics we describe a system using a complex Hilbert
space H.  

States of this system are described by vectors psi in H.

The transition amplitude from a state psi to a state phi is <psi,phi>;
thus we usually normalize states so that <psi, psi> = 1.

Processes are described by linear operators T: H -> H'

Example: Hilbert space of the harmonic oscillator.

Here we start with the complex vector space C[[x]] and write a
typical vector in here as f where

f(x) = sum_n f_n x^n

We define the inner product of two vectors by

<f,g> = sum_n n! f*_n g_n 

if the sum converges.  The Hilbert space for the harmonic oscillator
is the subspace of C[[x]] consisting of f such that <f,f> < infinity.  
This has a basis given by the states 

|n> = x^n/n!  

These are orthogonal but not normalized:

<x^n/n!,x^n/n!> = 1/n!

We think of |n> as the "n-particle state": the state where 
n identical particles are present.

We will work with C[[x]] rather than just the Hilbert space.

We define two important linear operators on C[[x]]:

a: C[[x]] -> C[[x]]  "annihilation operator"

a*: C[[x]] -> C[[x]] "creation operator"

(af)(x) = f'(x)                           a|n> = |n-1>

(a*f)(x) = xf(x)                          a*|n> = n|n+1>

Note that they are adjoint:

<af,g> = <f,a*g>       when well-defined

Also note they don't commute:

aa* = a*a + 1

Three mysteries:

1) Why the factor of n! in the inner product on C[[x]]?
2) Why don't a and a* commute?
3) Why is a*|n> = n|n+1> - whence the factor of n?

These are closely related, of course.

To probe these mysteries we will try to "categorify" the 
situation, finding a *category* analogous to C[[x]] with 
*functors* A, A* and a *natural isomorphism*

AA* = A*A + 1

In fact there are two answers to this question: the
simpler answer and the better one.  The simpler answer is
the well-known category of "species" or "structure types"; 
the better one is the category of "stuff types".  The first 
is a full subcategory of the second.

In this talk I won't have time to talk about structure types,
and I won't have time to talk about the operators A and A*.
Instead, I'll just describe stuff types and show from
this viewpoint why <n|n> = 1/n!

2.  Categorification

To really categorify C[[x]] we would need to categorify
C.   We don't know how to do this.  However, we do know how
to categorify N, Q+, and R+ (the natural numbers, the
nonnegative rationals, and the nonnegative reals).  
These are not commutative rings, but merely commutative 
rigs, since they don't allow subtraction.  

The general idea is to develop this analogy:

sets                         categories (or groupoids)

monoids                      monoidal categories

commutative monoids          symmetric (or braided) monoidal categories

commutative rigs             symmetric rig categories

Note that given a category C we get a set of isomorphism classes
|C|, and for each object c in C we get an element |c| in |C|.
If C is a monoidal category, C is a monoid.
If C is a symmetric monoidal category, C is a commutative monoid.
If C is a symmetric rig category, C is a commutative rig.

If FinSet_0 is the groupoid whose objects are finite sets and whose 
morphisms are bijections between them, we have the following nice analogy:

N = free commutative monoid  FinSet_0 = free symmetric monoidal category
    on one generator                    on one object
  = free commutative rig              = free symmetric rig category 
    on no generators                    on no objects

Moreover, |FinSet_0| = N, and for any object n of FinSet_0,
|n| is the *cardinality* of n.

What about Q+ and R+?  It appears the nice analogue to Q+ is
*finite groupoids*.  To see this note that division is like
"modding out":

|4/2| = |2| = 2 if we consider a nice action of the 2-element group on 
                the 4-element set

Unfortunately we have

|5/2| = |3| = 3

The answer is to mod out weakly: when G acts on S we get a groupoid
S//G with S as objects and a morphism g: s -> s' whenever gs = s'.
We define the cardinality of a finite groupoid by

|X| = sum_{iso classes of objects} 1/|Aut(x)|

and then we get

|S//G| = |S|/|G|

The cardinality of a finite groupoid always lies in Q+.  

We don't have |FinGpd| = Q+, but we do have a rig homomorphism

|FinGpd| -> Q+
      X |-> |X|

so we can think of Q+ as a "coarse" decategorification of FinGpd.
Even better, equivalent groupoids have the same cardinality.

More generally we say a groupoid X is "tame" if the sum in |X|
converges; we get

|TameGpd| -> R+
       X |-> |X|

Example:

|FinSet_0| = e

Example: 

if X is the groupoid of n-colored sets then |X| = e^n
since X = FinSet_0^n

3.  Stuff types 

We can think of an element f of N[[x]] as a list f_n of natural numbers,
or a map with finite fibers

                           f
                           |p
                           v
                           N

where f_n = p^{-1}(n).  Similarly, we can think of a linear operator 

T: N[[x]] -> N[[x]]

as a matrix of natural numbers:

T_{nm} = <Tx^n, x^m>

or a span of sets (with finite fibers)

                             T
                            / \
                           /   \
                          v     v
                          N     N     

Composition of operators is composition of spans.

Categorifying, we define a "stuff type" to be a groupoid over
FinSet_0:

                            F
                            |p
                            v
                          FinSet_0

where F is a groupoid and the homotopy fibers F_n = p^{-1}(n) are tame 
groupoids.  Given a stuff type we define a formal power series
|F| in Q+[[x]] by  

|F|_n = |F_n|

Example: F is the stuff type "being an n-element set"

                       [n-element sets and bijections]
                                   |
                                   v
                                 FinSet_0

Note that 

|F|_m = 1/n!       if m = n
        0            otherwise

so 

|F| = x^n/n! = |n>

In short: the categorified version of the n-particle state is
the stuff type "being an n-element set".  We will call this 
stuff type X^n/n!

We define the "inner product" of two stuff types via weak
weak pullback:

                       <F,G>
                       /  \
                      /    \
                     F      G
                      \    /
                       \  /
                      FinSet_0

and note

|<F,G>| = <|F|,|G|>

so in particular

|<X^n/n!, X^n/n!>| = 1/n!

But we can see this more directly: an object of 

<X^n/n!, X^n/n!> 

is a pair of n-element sets and a bijection between them; a morphism 
is a commutative square of bijections.  So, <n,n> is equivalent to the 
groupoid of n-element sets and bijections, which has cardinality 1/n!.

In other words: |n> has inner product with itself equal to 
1/n! since there are n! ways for an n-element set to be isomorphic
to itself.

This shows that the factors of n! typical of "Bose-Einstein 
statistics" and usually considered to be a peculiar feature
of quantum mechanics, are actually a built-in feature of the 
groupoid of finite sets.


© 2003 John Baez
baez@math.removethis.ucr.andthis.edu

home