]>
[the concept of a Hilbert space]… offers one of the best mathematical formulations of quantum mechanics. In short, the states of a quantum mechanical system are vectors in a certain Hilbert space, the observables are hermitian operators on that space, the symmetries of the system are unitary operators, and measurements are orthogonal projections.
Wikipedia, Hilbert space, as seen in 2009 on April the 6th, but transformed to use links that'll work from here.
Quantum mechanics has enough weirdness to it that its formalisation requires a significantly richer structure than the intuitively tractable three-dimensional space of real displacements that serves us so well in the description of the macroscopic world we inhabit. The Hilbert space is a structure rich enough to support the full panoply of quantum complications, yet retains as much as can be hoped for of the intuitive tractability of our familiar real three-dimensional geometry. Let me start with a very brief over-view of all the technical jargon used in Wikipedia's account; then I can devote sections to the parts thereof. Along the way, I'll get the chance to restate orthodoxy in my preferred forms.
A Hilbert space is a continuum which is also a vector space
over the complex numbers, equipped
with the most sensible length-like notion a complex vector space can have, a
positive-definite hermitian product. This last can be
encoded as an invertible mapping, called the metric, from the Hilbert space to
its dual, which enables us to divide
any other hermitian product by the
metric; the result, known as a hermitian operator, is a linear map from the
Hilbert space to itself. The natural equivalent of an isometry
(length-preserving transformation) in this context is a unitary operator.
For any given hermitian operator, the Hilbert space can be decomposed into orthogonal sub-spaces on each of which the operator acts simply as a scaling; each such sub-space is described as an eigenspace of the operator, the associated scaling is known as the eigenvalue for that space and each non-zero vector in the space is termed an eigenvector of the operator. This eigenspace decomposition lets us write any vector in the space as a sum of eigenvectors; one can define an orthogonal projection onto any eigenspace as a mapping which decomposes its input vector in this way, discards eigenvectors not in the selected eigenspace and returns what remains.
In quantum mechanics, the Hilbert space generaly arises as a sub-space of a more general space of wave functions of a system, namely the span of those that are solutions of the dynamical equation – archetypically Schroedinger's equation – governing the system. Solutions of the system's dynamical equations are identified with unit vectors in the Hilbert space. Superpositions of possible solutions are represented by linear combination of their corresponding unit vectors, followed by re-scaling to obtain a unit vector to represent the superposition.
Each real-valued quantity one can measure (e.g. total energy, or a single
component of its momentum) on the system corresponds to a hermitian operator on
the Hilbert space. Actually measuring such a quantity forces the system into an
state represented by an eigenvector of the measured quantity's associated
operator – such a state is called an eigenstate
of the operator,
associated with the same eigenvalue as the eigenvector in question – and
yields the associated eigenvalue as measured value. The action of observing
such a measurement projects the prior state vector orthogonally onto the
eigenspace for the observed value; this selects the component of the prior
state's unit vector, when decomposed into a sum of eigenvectors, in the given
eigenspace. The probability of observing any given value is simply the squared
magnitude of this component. A positive real scaling can then be applied to
this coponent to make it a unit vector once more.
I shall deliberately gloss over the topological details that make a Hilbert
space behave relatively sanely, compared to infinite-dimensional vector spaces
in general; in calling it a continuum I tacitly assert that it
is complete
in the necessary sense, but all that actually matters is that
it behaves enough like a finite-dimensional vector space to be
intelligible.
Our Hilbert space, S, is a vector space over the complex numbers; this means we can add members of our Hilbert space and/or scale them by arbitrary complex numbers; the results shall always be likewise members of the Hilbert space. As for real vector spaces, we can define linearity of mappings from the Hilbert space to some other (complex) linear space in terms of the mapping respecting addition and scaling: (:f|S) is linear precisely if, for every u, v in S and complex k, f(u+k.v) = f(u) +k.f(v). However, the complex numbers also support a conjugation (the real-linear mapping induced by preserving the real line but swapping the square roots of −1), *k ←k, allowing us to define a related (and, as it turns out, quite useful) partner notion to go with linearity: a mapping (:f|S) is described as antilinear precisely if, for every u, v in S and complex k, f(u+k.v) = f(u) +*k.f(v). (In that last term, the * only applies to k – there isn't necessarily any meaning to conjugating f(v) – so *k.f(v) should be read as (*k).f(v); I won't clutter the text with the extra parentheses.)
Given linearity we can, as for real vector spaces, define
the dual of a Hilbert space to be the space of linear maps
from it to its scalars, the complex numbers; so dual(S) = {linear mappings
({complex}:|S)}. We could also define an anti-dual
to be the
corresponding space of antilinear maps; however, since each member of dual(S)
is a mapping ({complex}::), simply composing * after it turns it into an
anti-linear mapping ({complex}:|S); likewise, as * is self-inverse, composing
* after any such anti-linear makes it linear, so turns it into a member of
S. Thus compose * after it
is an isomorphism between dual(S) and S's
anti-dual, which we can thus simply write as {*&on;w: w in dual(S)}, making a
separate name for it uninteresting.
In a real linear space, we obtain a length notion in terms of a mapping
from our space to its dual; after consuming its first input we have a member
of the dual which can consume a second input to be construed as inner
product
of the two inputs. We require it to be symmetric – that is,
swapping the order of the inputs shouldn't change the final real output
– and, in the simple case, to always give a positive value if the same
non-zero vector is supplied as both inputs; that positive value's square root
is the length
of the vector. We can do similar for our Hilbert space:
but note that, where the real space's equivalent consumed each input linearly,
we can now chose between linear and anti-linear for each input. If we can
arrange for g(u,u) to be a positive real for some u, we'll also want g(k.u,
k.u) to be a positive real for any complex scalar k. If g consumes both
inputs linearly we get k.k.g(u,u), if it consumes both antilinearly we get
*k.*k.g(u,u); neither of these is real except for a limited range of values
for k. However, k.*k is always real and positive, so if g consumes one input
linearly and the other antilinearly, we win. So, if we want a length-like
notion, we need an anti-linear map from S to its dual.
In the real case, we required swapping the order of inputs to not change
the final real output. However, if we consume one input linearly and the
other antilinearly, this constraint becomes infeasible: if we scale one of the
inputs by some complex k, the final output is scaled by k if the input is
consumed linearly but *k if antilinearly; swapping the order of inputs changes
which of these scalings is applied. So the appropriate symmetry we can
require is that swapping the order of inputs should conjugate the
answer. In particular, when the same vector is used as both inputs, swapping
order of inputs can't change the value, since it hasn't changed the
expression, but does conjugate it; so the result is self-conjugate,
i.e. real. Thus selecting this conjugate-symmetry automatically gives us real
self-products. We can then define positive definite
, just as in the
real case, to mean that the final output must be positive if the same non-zero
vector is used as both inputs.
So define a hermitian product to be an antilinear map (dual(S): x |S) for which x(u, v) = *x(v, u). We can then use a positive-definite hermitian product g to define our notion of length, just as in a real linear space via length = ({non-negative reals}: √g(u, u) ←u |S). The zero member of dual(S) maps every vector in S to 0 and we know g(u) maps at least u to non-zero, unless u is zero, so the only input to g which yields the zero member of dual(S) is the zero member of S; consequently, distinct inputs to g yield distinct outputs, making g a monic mapping. One consequence of the Hilbert space being a continuum (formally, topologically complete) is that its dual (even when it's infinite-dimensional) is isomorphic to it and any linear or antilinear monic mapping from one to the other is invertible (this would be automatic if the space's dimension were finite). Given that S is isomorphic to dual(S), the natural embedding (dual(dual(S)): ({scalars}: w·u ←w |dual(S)) ←u |S), by which any linear space can be construed as a sub-space of its dual's dual, is in fact an isomorphism and we can naturally interpret S as dual(dual(S)). In any case, we get an inverse (S:|dual(S)) for g; this is trivially antilinear, like g, and simply having S as a sub-space of dual(dual(S)) makes g's inverse an antlinear map from dual(S) to its dual; this is in fact conjugate-symmetric, like g, so g's inverse is a hermitian product on dual(S); it is also positive-definite, although this won't interest us much. I'll use g\f to denote the composite of g's inverse after (i.e. to the left of) any suitable f and h/g for the matching composite on the right, for any suitable h; if I need to refer to g's inverse directly, I'll thus use 1/g or g\1, interpreting 1 as a relevant identity linear map in each case.
So now consider any other hermitian product, x, on S; composing g's inverse on its left we get g\x. For u in S and complex k, antilinear x maps k.u to *k.x(u) in dual(S) and going backwards through antilinear g maps this to k.(g\x)(u) in S. Since both x and g's inverse respect addition we can infer that so does their composite, hence g\x is simply linear (S:|S). Composing g after (i.e. on the left of) this linear map gets us x back. These linear (S:|S) which, when composed before g, give hermitian products encode the observables of our system: they are termed hermitian operators. The attentive might notice that we should properly term them g-hermitian operators, since their specification depends on g. However,
In any linear space V over {scalars}, for any set B of members of V, we can define the span of B to be:
i.e. the set of values of finite sums of scalar multiples of members of B.

Written by Eddy.