MathOverflow is a question and answer site for professional mathematicians. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

The usual way of getting a category of metric spaces is to take metric spaces as objects, and the nonexpansive maps (ie, functions $f : A \to B$ such that $d_B(f(a), f(a')) \leq d_A(a, a')$) as morphisms.

However, for my purposes I'd like to use the Banach fixed point theorem to get a category with a trace structure or Conway operators on it, which means I want to consider the contraction mappings on nonempty metric spaces -- that is, there should be $q < 1$ for each mapping $f$ such that $d_B(f(a), f(a')) \leq q \cdot d_A(a, a')$.

But nonempty metric spaces and contraction mappings don't form a category, since the identity function is not a contraction map! Is there some way of defining this kind of setup as a category? I'm happy to play games with the metrics (e.g., use ultrametrics, but bounds on them, that sort of thing), if it helps.

share|cite|improve this question
It's fun to occasionally see a fairly "natural" definition which is not satisfied by the identity map. The notions of trace class or compact maps on Hilbert spaces is another example: the identity map on a Hilbert space is trace class iff the space is finite-dimensional. In this case I always felt that what was going on was that the functions you're interested in are somehow an "ideal" in the space of all functions. For example if f is trace class and g is continuous then f o g is trace class. Similarly if f is a contraction map and g is non-expansive then f o g is a contraction. – Kevin Buzzard Feb 18 '10 at 14:36
Such notions of ideals have been worked out in, for example. They cover Hilbert-Schmidt maps, such as in Andrew's answer, and trace class operators, as in Kevin's comment. One would think the ideal of contractions could be axiomatized similarly. – Chris Heunen May 21 '12 at 9:15
up vote 3 down vote accepted

Presumably you don't want to allow arbitrary non-expansive maps, otherwise you could simply take that.

One thing that you could do artificially is to take the subcategory of "metric spaces + nonexpansive maps" generated by the strict contractions. This is a bit like adding the unit in to a non-unital ring. That may seem a little forced, though.

This sort of thing is also encountered in two other situations: Hilbert-Schmidt operators on Hilbert spaces, and cobordisms between manifolds (Stolz and Teichner have, at one time, needed something like this, I vaguely recall). One solution, that I think comes from those areas, is to use the idea of a "length" of a morphism. In this case, the length of a morphism would be its contraction factor. Morphisms of length 0 have to be the identity (or an isometric isomorphism, if you don't want to be too evil).

Perhaps you could clarify exactly which nonexpansive maps you wish to disallow?

share|cite|improve this answer
I think the idea of using a length may work well for me, actually! I'm designing a small programming language, and am trying to give a semantics which will let me use a fixed point to interpret recursive definitions. So I need some way of only talking about the contraction maps, to allow these definitions to work. – Neel Krishnaswami Feb 18 '10 at 13:40

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.