Space-filling curve

Space-filling curve
3 iterations of a Peano curve construction, whose limit is a space-filling curve.

In mathematical analysis, a space-filling curve is a curve whose range contains the entire 2-dimensional unit square (or more generally an N-dimensional hypercube). Because Giuseppe Peano (1858–1932) was the first to discover one, space-filling curves in the 2-dimensional plane are commonly called Peano curves.



Intuitively, a continuous curve in 2 or 3 (or higher) dimensions can be thought of as the path of a continuously moving point. To eliminate the inherent vagueness of this notion Jordan in 1887 introduced the following rigorous definition, which has since been adopted as the precise description of the notion of a continuous curve:

A curve (with endpoints) is a continuous function whose domain is the unit interval [0, 1].

In the most general form, the range of such a function may lie in an arbitrary topological space, but in the most common cases, the range will lie in a Euclidean space such as the 2-dimensional plane (a planar curve) or the 3-dimensional space (space curve).

Sometimes, the curve is identified with the range or image of the function (the set of all possible values of the function), instead of the function itself. It is also possible to define curves without endpoints to be a continuous function on the real line (or on the open unit interval (0, 1)).


In 1890, Peano discovered a densely self-intersecting curve that passes through every point of the unit square. His purpose was to construct a continuous mapping from the unit interval onto the unit square. Peano was motivated by Georg Cantor's earlier counterintuitive result that the infinite number of points in a unit interval is the same cardinality as the infinite number of points in any finite-dimensional manifold, such as the unit square. The problem Peano solved was whether such a mapping could be continuous; i.e., a curve that fills a space.

Six iterations of the Hilbert curve construction, whose limiting space-filling curve was devised by mathematician David Hilbert.

It was common to associate the vague notions of thinness and 1-dimensionality to curves; all normally encountered curves were piecewise differentiable (that is, have piecewise continuous derivatives), and such curves cannot fill up the entire unit square. Therefore, Peano's space-filling curve was found to be highly counterintuitive.

From Peano's example, it was easy to deduce continuous curves whose ranges contained the n-dimensional hypercube (for any positive integer n). It was also easy to extend Peano's example to continuous curves without endpoints which filled the entire n-dimensional Euclidean space (where n is 2, 3, or any other positive integer).

Most well-known space-filling curves are constructed iteratively as the limit of a sequence of piecewise linear continuous curves, each one more closely approximating the space-filling limit.

Peano's ground-breaking paper contained no illustrations of his construction, which is defined in terms of ternary expansions and a mirroring operator. But the graphical construction was perfectly clear to him—he made an ornamental tiling showing a picture of the curve in his home in Turin. Peano's paper also ends by mentioning (without proof) that the technique can be extended to other odd bases besides base 3. His choice to avoid any appeal to graphical visualization was no doubt motivated by a desire for a well-founded, completely rigorous proof owing nothing to pictures. At that time (the beginning of the foundation of general topology), graphical arguments were still included in proofs, yet were becoming a hindrance to understanding often counter-intuitive results.

A year later, David Hilbert published in the same journal a variation of Peano's construction. Hilbert's paper was the first to include a picture helping to visualize the construction technique, essentially the same as illustrated here. The analytic form of the Hilbert curve, however, is more complicated than Peano's.

Outline of the construction of a space-filling curve

Let \scriptstyle \mathcal{C} denote the Cantor space \scriptstyle \mathbf{2}^\mathbb{N}.

We start with a continuous function \scriptstyle h from the Cantor space \scriptstyle \mathcal{C} onto the entire unit interval \scriptstyle [0,\, 1]. (The restriction of the Cantor function to the Cantor set is an example of such a function.) From it, we get a continuous function \scriptstyle H from the topological product \scriptstyle \mathcal{C} \;\times\; \mathcal{C} onto the entire unit square \scriptstyle [0,\, 1] \;\times\; [0,\, 1] by setting

H(x,y) = (h(x),h(y)).

Since the Cantor set is homeomorphic to the product \scriptstyle \mathcal{C} \times \mathcal{C}, there is a continuous bijection \scriptstyle g from the Cantor set onto \scriptstyle \mathcal{C} \;\times\; \mathcal{C}. The composition \scriptstyle f of \scriptstyle H and \scriptstyle g is a continuous function mapping the Cantor set onto the entire unit square. (Alternatively, we could use the theorem that every compact metric space is a continuous image of the Cantor set to get the function \scriptstyle f.)

Finally, one can extend \scriptstyle f to a continuous function \scriptstyle F whose domain is the entire unit interval \scriptstyle [0,\, 1]. This can be done either by using the Tietze extension theorem on each of the components of \scriptstyle f, or by simply extending \scriptstyle f "linearly" (that is, on each of the deleted open interval \scriptstyle (a,\, b) in the construction of the Cantor set, we define the extension part of \scriptstyle F on \scriptstyle (a,\, b) to be the line segment within the unit square joining the values \scriptstyle f(a) and \scriptstyle f(b)).


A space-filling curve must be everywhere self-intersecting in the technical sense that the curve is not injective. If a curve is not injective, then one can find two subcurves of the curve, each obtained by considering the images of two disjoint segments from the curve's domain (the unit line segment). The two subcurves intersect if the intersection of the two images is non-empty. One might be tempted to think that the meaning of curves intersecting is that they necessarily cross each other, like the intersection point of two non-parallel lines, from one side to the other. However, two curves (or two subcurves of one curve) may contact one another without crossing, as, for example, a line tangent to a circle does.

A non-self-intersecting continuous curve cannot fill the unit square because that will make the curve a homeomorphism from the unit interval onto the unit square (any continuous bijection from a compact space onto a Hausdorff space is a homeomorphism). But a unit-square has no cut-point, and so cannot be homeomorphic to the unit interval, in which all points except the endpoints are cut-points.

For the classic Peano and Hilbert space-filling curves, where two subcurves intersect (in the technical sense), there is self-contact without self-crossing. A space-filling curve can be (everywhere) self-crossing if its approximation curves are self-crossing. A space-filling curve's approximations can be self-avoiding, as the figures above illustrate. In 3 dimensions, self-avoiding approximation curves can even contain knots. Approximation curves remain within a bounded portion of n-dimensional space, but their lengths increase without bound.

Space-filling curves are special cases of fractal constructions. No differentiable space-filling curve can exist. Roughly speaking, differentiability puts a bound on how fast the curve can turn.

Proof that a square and its side contain the same number of points

The highly counterintuitive result that the cardinality of a unit interval is the same as the cardinality of any finite-dimensional manifold, such as the unit square, was first obtained by Cantor in 1878, but it can be more intuitively proved using space-filling curves.

Intuitively, consider that the main difficulty resided in showing that a function of the unit interval can fill a square, a cube, or a hypercube, and this task was successfully accomplished by Peano. Indeed, being self-intersecting, his curves even manage to "overfill" the square. In other words, although Peano curves are not injective (because they overfill the space), they are surjective (because they fill it). This is true whether their self-intersection is self-crossing, or merely self-contacting.

Formally, a bijection between a set A and a set B is needed to prove that A and B have the same cardinality. Since space-filling curves "overfill" the space, they are not bijections. Thus, their existence is not a direct proof that a square (or cube or hypercube) contains as many points as its side. However, the right inverse of a space-filling curve is an injection, and can be used to obtain such a proof via the Cantor–Bernstein–Schroeder theorem, which asserts the existence of a bijection between A and B given that injections exist both from A into B and from B into A.

For instance, consider a space-filling curve that maps a unit interval A = [0, 1] onto a unit square B = [0, 1] × [0, 1]. This is a surjection from A into B, but one can define a right inverse for it which will be an injection from B into A. And x goes to (x,0) is an injection from A into B. Using the Cantor–Bernstein–Schroeder theorem, we get a bijection between A and B, the existence of which implies that A and B have the same cardinality.

One advantage of this proof is that, because an explicit definition of the right inverse is easily given, it does not require the use of the axiom of choice. For example, in the Hilbert curve each point in the square is the image of from one to four points in the line segment. When one of the coordinates is a rational number with a power of two in the denominator, that coordinate can be approached either from below or above giving two (not necessarily distinct) values for the preimage. Similarly, when both are such, then there are four (not necessarily distinct). Since the number of possible preimages for each point is finite (indeed less than or equal to four), one can just choose the smallest of them systematically, making the axiom of choice unnecessary.

Similarly, finite-dimensional space-filling curves can be used to prove, in general, that any finite-dimensional space contains the same number of points as any line or line segment.

The Hahn–Mazurkiewicz theorem

The Hahn–Mazurkiewicz theorem is the following characterization of spaces that are the continuous image of curves:

A non-empty Hausdorff topological space is a continuous image of the unit interval if and only if it is a compact, connected, locally connected second-countable space.

Spaces that are the continuous image of a unit interval are sometimes called Peano spaces.

In many formulations of the Hahn–Mazurkiewicz theorem, second-countable is replaced by metrizable. These two formulations are equivalent. In one direction a compact Hausdorff space is a normal space and, by the Urysohn metrization theorem, second-countable then implies metrizable. Conversely a compact metric space is second-countable.

Kleinian groups

There are many natural examples of space-filling, or rather sphere-filling, curves in the theory of doubly degenerate Kleinian groups. For example, Cannon & Thurston (2007) showed that the circle at infinity of the universal cover of a fiber of a mapping torus of a pseudo-Anosov map is a sphere-filling curve. (Here the sphere is the sphere at infinity of hyperbolic 3-space.)

See also


External links

Java applets:

Wikimedia Foundation. 2010.

Игры ⚽ Поможем решить контрольную работу

Look at other dictionaries:

  • space-filling curve — noun a curve whose range contains the entire 2 dimensional unit square (or the 3 dimensional unit cube) See Also: Peano curve …   Wiktionary

  • Curve — For other uses, see Curve (disambiguation). A parabola, a simple example of a curve In mathematics, a curve (also called a curved line in older texts) is, generally speaking, an object similar to a line but which is not required to be straight.… …   Wikipedia

  • Hilbert curve — A Hilbert curve (also known as a Hilbert space filling curve) is a continuous fractal space filling curve first described by the German mathematician David Hilbert in 1891. [D. Hilbert: Über die stetige Abbildung einer Linie auf ein Flächenstück …   Wikipedia

  • Sierpiński curve — Sierpiński curves are a recursively defined sequence of continuous closed plane fractal curves discovered by Wacław Sierpiński, which in the limit n ightarrow infty completely fill the unit square: thus their limit curve, also called the… …   Wikipedia

  • Moore curve — A Moore curve (after E. H. Moore) is a continuous fractal space filling curve which is a variant of the Hilbert curve. Precisely, it is the loop version of the Hilbert curve, and it may be thought as the union of four copies of the Hilbert curves …   Wikipedia

  • Osgood curve — In mathematics, an Osgood curve is a Jordan curve of positive area. The first example was found by Osgood (1903). Examples of Osgood curves can be produced by slightly modifying one of the constructions of space filling curves with image the unit …   Wikipedia

  • Hilbert space — For the Hilbert space filling curve, see Hilbert curve. Hilbert spaces can be used to study the harmonics of vibrating strings. The mathematical concept of a Hilbert space, named after David Hilbert, generalizes the notion of Euclidean space. It… …   Wikipedia

  • Dragon curve — A dragon curve is any member of a family of self similar fractal curves, which can be approximated by recursive methods such as Lindenmayer systems. Contents 1 Heighway dragon 1.1 Construction …   Wikipedia

  • Z-order curve — Not to be confused with Z curve or Z order. Four iterations of the Z order curve …   Wikipedia

  • Z-order (curve) — Z order, or Morton order, first proposed in 1966 by G. M. Morton, [citation|first=G. M.|last=Morton|title=A computer Oriented Geodetic Data Base; and a New Technique in File Sequencing|series=Technical Report|publisher=IBM Ltd.|location=Ottawa,… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”