Main Page | See live article | Alphabetical index

Surreal number

The surreal numbers are a class of numbers which includes all of the real numbers, and additional "infinite" numbers which are larger or smaller than any real number. They also include "infinitesimal" numbers that are closer to zero than any real number, and each real number is surrounded by surreals that are closer to it than any real number. In this, the surreals are similar to the hyperreal numbers, but their construction is very different and the class of surreals is larger and contains the hyperreals as a subset. Mathematicians have praised the surreal numbers for being simpler, more general, and more cleanly constructed than the more common real number system.

Surreal numbers were first proposed by John Conway and later detailed by Donald Knuth in his 1974 book Surreal Numbers: How Two Ex-Students Turned on to Pure Mathematics and Found Total Happiness. This book is actually a mathematical novelette, and is notable as one of the rare cases where a new mathematical idea has been first presented in a work of fiction. In his book, which takes the form of a dialogue, Knuth coined the term surreal numbers for what Conway had simply called numbers originally. Conway liked the new name, and later adopted it himself. Conway then described the surreal numbers and used them for analyzing games in his 1976 book On Numbers and Games.

Table of contents
1 Constructing Surreal Numbers
2 { | -1, 0 }
3 { | 1 }
4 { 0, 1 | }
5 { | -1, 0 }
6 { | 1 }
7 { 0, 1 | }
8 Computing with Surreal Numbers
9 Generating Surreal Numbers using Finite Induction
10 "To Infinity and Beyond"
11 Games
12 Surreal numbers and combinatorial game theory
13 Further reading

Constructing Surreal Numbers

The basic idea behind the construction of surreal numbers is similar to Dedekind cuts. We construct new numbers by representing them with two sets of numbers, L and R, that approximate the new number; the set L contains a set of numbers below the new number and the set R contains a set of numbers above the new number. We will write such an approximation as { L | R }. We will pose no restrictions upon L and R except that each of the numbers in L should be smaller than any number in R. For example, { {1, 2} | {5, 8} } is a valid construction of a certain number between 2 and 5. (Which number exactly and why will be explained later on.) The sets are explicitly allowed to be empty. The informal interpretation of a pair { L | {} } will be "a number higher than any number in L", and of { {} | R } "a number lower than any number in R". This leads to the following construction rule:

;Construction Rule: If L and R are two sets of surreal numbers and no member of R is less than or equal to any member of L then { L | R } is a surreal number.

Given a surreal number x = { XL | XR } the sets XL and XR are called the left set of x and right set of x respectively. To avoid lots of brackets we will write { {a, b, ... } | { x, y, ... } } simply as { a, b, ... | x, y, ... } and { {a} | {} } as { a | } and { {} | {a} } as { | a }.

In order for the generated numbers to actually qualify as numbers there has to be a "less than or equal to" relation (here written as ≤) defined on them. This is supplied by the following rule:

;Comparison Rule: For a surreal number x = { XL | XR } and y = { YL | YR } it holds that xy if and only if y is less than or equal to no member of XL\, and no member of YR is less than or equal to x.

The two rules are recursive, so we need some form of induction to put them to work. An obvious candidiate would be finite induction, i.e., generate all numbers that can be constructed by applying the construction rule a finite number of times, but, as will be explained later on, things get really interesting if we also allow transfinite induction, i.e., apply the rule more often than that. If we want the generated numbers to represent numbers then the ordering that is defined upon them should be a total order. However, the relation ≤ defines only a total preorder, i.e., it is not antisymmetric. To remedy this we define the binary relation == over the generated surreal numbers such that

x == y iff xy and yx.

Since this defines an equivalence relation the ordering on the equivalence classes implied by ≤ will be a total order. The interpretation of this will be that if x and y are in the same equivalence class then they actually represent the same number. The equivalence classes to which x and y belong are denoted as [x] and [y] respectively. So if x and y belong to the same equivalence class then [x] = [y].

Let us now consider some examples and see how they behave under the ordering. The most simple example is of course

{ | } ie: { {} | {} }

which can be constructed without any induction at all. We will call this number 0 and the equivalence class [0] will be written as 0. By applying the construction rule we can consider the following three numbers

{ 0 | }, { | 0 } and { 0 | 0 }

The last number is however not a valid surreal number because 00. If we now consider the ordering of the valid surreal numbers we will see that

{ | 0 } < 0 < { 0 | }

where x < y denotes that not(yx). We will refer to { | 0 } and { 0 | } as -1 and 1 respectively, and the corresponding equivalence classes as simply -1 and 1, respectively. Since every equivalence class contains only one element we can replace in statements about ordering the surreal numbers with their equivalence classes without the risk of ambiguity. For example, the statement above could also have been written as:

{ | 0 } < 0 < { 0 | }

or even

-1 < 0 < 1.

If we apply the construction rule once more we obtain the following ordered set:

{ | -1 }

{ | -1, 0 }

{ | -1, 1 } == { | -1, 0, 1 } <
{ | 0, 1 } == -1 <
{ -1 | 0 } == { -1 | 0, 1 } <
{ -1 | }

{ | 1 }

{ -1 | 1 } == 0 <
{ 0 | 1 } == { -1, 0 | 1 } <
{ -1, 0 | } == 1 <
{ 1 | }

{ 0, 1 | }

{ -1, 1 | } == { -1, 0, 1 | }

We can now make three observations:
  1. We have found four new equivalence classes, viz., [{ | -1 }], [{ -1 | 0 }], [{ 0 | 1 }] and [{ 1 | }].
  2. All equivalence classes now contain more than one element.
  3. The equivalence class of a number depends only on the maximal element of its left set and the minimal element of the right set.

The first observation raises the question of the interpretation of these new equivalence classes. Since the informal interpretation of { | -1 } is "the number just before -1" we will call it number -2 and denote its equivalence class as -2. For a similar reason we will call { 1 | } number 2 and its equivalence class 2. The number { -1 | 0 } is a number between -1 and 0 and we will call it -1/2 and its equivalence class -1/2. Finally we will call { 0 | 1 } the number 1/2 and its equivalence class 1/2. More justification for these names will be given once we have defined addition and multiplication.

The second observation raises the question if we can still replace the surreal numbers with their equivalence classes. Fortunately the answer is yes because it can be shown that

if [XL] = [YL] and [XR] = [YR] then [{ XL | XR }] = [{ YL | YR }]

where [X] denotes { [x] | x in X }. So the description of the ordered set that was found above can be rewritten to:

{ | -1 }

{ | -1, 0 }

{ | -1, 1 } == { | -1, 0, 1 } <
{ |0, 1 } == -1 <
{ -1 | 0 } == { -1| 0, 1 } <
{ -1 | }

{ | 1 }

{ -1 | 1 } == 0 <
{ 0 | 1 } == { -1, 0 | 1 } <
{ -1, 0 | } == 1 <
{ 1 | }

{ 0, 1 | }

{ -1, 1 | } == { -1, 0, 1 | }

which in turn can be rewritten as

-2 < -1 < -1/2 < 0 < 1/2 < 1 < 2.

The third observation extends to all surreal numbers with finite left and right sets. For infinite left or right set, this is valid in an altered form, since infinite sets may not contain a maximal element. The number { {1, 2} | {5, 8} } therefore is equivalent to { 2 | 5 }, which will be exactly calculated later.

Computing with Surreal Numbers

The addition and multiplication of surreal numbers are defined by the following three rules:

;Addition: x + y = { XL + y ∪ x + YL | XR + y ∪ x + YR }

where X + y = { x + y | x in X } and x + Y = { x + y | y in Y }.

;Negation: -x = { -XR | -XL }

where -X = { -x | x in X }

;Multiplication: xy = { (XLy + xYL - XLYL) ∪ (XRy + xYR - XRYR) | (XLy + xYR - XLYR) ∪ (XRy + xYL - XRYL) }

where XY = { xy | x in X and y in Y }, Xy = X{y} and xY = {x}Y.

These operations can be shown to be well-defined for surreal numbers, i.e., if they are applied to well-defined surreal numbers then the result will again be a well-defined surreal number, i.e., the left set of the result will be "smaller" than the right set.

With these rules we can now verify that the chosen names of the numbers we found so far are appropriate. It holds for instance that 0 + 0 = 0, 1 + 1 = 2, -(1) = -1 and 1/2 + 1/2 == 1. (Note the use of equality = and equivalence ==!)

The operations as defined above are defined for surreal numbers but we would like to generalize them for the equivalence classes we defined on them. This can be done without ambiguity because it holds that

if [x] = [x' ] and [y]=[y' ] then [x + y] = [x' + y' ] and [-x] = [-x' ] and [xy] = [x'y' ]

Finally it can be shown that the generalized operations on the equivalence classes have the desired algebraic properties, i.e., the equivalence classes plus their ordering and the algebraic operations constitute an ordered field, with the caveat that they do not form a set but a proper class, see below. In fact, it is a very special ordered field: the biggest one. Every other ordered field can be embedded in the surreals. (See also the definition of rational numbers and real numbers.)

From now on we don't distinguish a surreal number from its equivalence class, and call the equivalence class itself a surreal number.

Generating Surreal Numbers using Finite Induction

Until now we have not really looked at what numbers we can and cannot create by applying the construction rule. We will first start with the assumption that we only generate those numbers that can be created by applying the rule a finite number of times. We do this by inductively defining Sn with n a natural number as follows:

The set of all surreal numbers that are generated in some Si is denoted as Sω. The first sets of equivalence classes we will find are as follows:

S0 = { 0 }
S1 = { -1 < 0 < 1 }
S2 = { -2 < -1 < -1/2 < 0 < 1/2 < 1 < 2}
S3 = { -3 < -2 < -1 1/2 < -1 < -3/4 < -1/2 < -1/4 < 0 < 1/4 < 1/2 < 3/4 < 1 < 1 1/2 < 2 < 3 }
S4 = ...

This leads to the following observations:
  1. In every step the maximum (minimum) is increased (decreased) by 1.
  2. In every step we find the numbers that are in the middle of two consecutive numbers from the previous step.

As a consequence all generated numbers are dyadic fractions, i.e., can be written as an
irreducible fraction
a / 2b
where a and b are integers and b ≥ 0. This means that fractions such as 1/3, 2/3, 4/3, 1/5, 5/3, 1/6 et cetera, will not be generated. Note that we can generate numbers that are arbitrarily close to them, but the numbers themselves are never generated.

"To Infinity and Beyond"

The next step consists of taking Sω and continuing to apply the construction rule to it and thus constructing Sω+1, Sω+2 et cetera. Note that the left sets and right sets may now become infinite.

In fact, we can define a set Sa for any ordinal number a by transfinite induction. The first time a given surreal number appears in this process is called its birthday. Every surreal number has an ordinal number as its birthday. For example, the birthday of 0 is 0, and the birthday of 1/2 is 2.

Already in Sω+1 will we find the fractions that were missing in Sω. For example, the fraction 1/3 can be defined as

1/3 = { { a / 2b in Sω | 3a < 2b } | { a / 2b in Sω | 3a > 2b } }.
The correctness of this definition follows from the fact that
3(1 / 3) == 1.
The birthday of 1/3 is ω+1.

Not only do all the rest of the rational numbers appear in Sω+1; the remaining finite real numbers do too. For example

&pi = {0, 1, 2, 3, 25/8, 201/64, ... | 4, 7/2, 13/4, 51/16, 101/32, ...}.

Another number that is already constructed in Sω+1 is
ε = { 0 | ..., 1/16, 1/8, 1/4, 1/2, 1 }.
It is easy to see that this number is larger than zero but less than all positive fractions, and therefore an infinitesimal number. The name for its equivalence class is therefore ε. It is not the only positive infintesimal because it holds for instance that
2ε = { ε | ..., ε + 1/16, ε + 1/8, ε + 1/4, ε + 1/2, ε + 1 } and
ε / 2 = { 0 | ε }.
Note that these numbers are not yet generated in Sω+1.

Next to infinitely small numbers also infinitely big numbers are generated such as

ω = { Sω | }.
Its value is clearly bigger than any number in Sω and its equivalence class is therefore called ω. This number is equivalent with the ordinal number with the same name. We also have the equality
ω = [{ 1, 2, 3, 4, ... | }]

In fact, all ordinal numbers can be expressed as surreal numbers. Since addition and subtraction is defined for all surreal numbers we can use ω like any other number and show for example that
ω + 1 = { ω | } and
ω - 1 = { Sω | ω }.
We can also do this for bigger numbers
ω + 2 = { ω + 1 | },
ω + 3 = { ω + 2 | },
ω - 2 = { Sω | ω - 1 } and
ω - 3 = { Sω | ω - 2 }
and even ω itself
ω + ω = { ω + Sω | }
where x + Y = { x + y | y in Y }. Just as 2ω is bigger than ω it can also be shown that ω/2 is smaller than ω because
ω/2 = { Sω | ω - Sω }
where x - Y = { x - y | y in Y }. Finally, it can be shown that there is a close relationship between ω and ε because it holds that
1 / ε = ω

Note that addition of ordinals differs from addition of their surreal representations. The sum 1 + ω equals ω as ordinals, but as surreals 1 + ω = ω + 1 > ω.

Since every surreal number is constructed from surreal numbers "older" than itself, we can prove many theorems about surreals using transfinite induction: We show that a theorem holds for 0, and then show that it holds for x = { XL | XR } if it holds for all elements of XL and XR.

Lots of numbers can be generated this way; in fact so many that no set can hold them all. The surreal numbers, like the ordinal numbers, form a proper class.

Games

The definition of surreal numbers contained one restriction: each element of L must be strictly less than each element of R. If this restriction is dropped we can generate a more general class known as games. All games are constructed according to this rule:

;Construction Rule: If L and R are two sets of games then { L | R } is a game.

Addition, negation, multiplication, and comparison are all defined the same way for both surreal numbers and games.

Every surreal number is a game, but not all games are surreal numbers, e.g. the game { 0 | 0 } is not a surreal number. The class of games is more general than the surreals, and has a simpler definition, but lacks some of the nicer properties of surreal numbers. The class of surreal numbers forms a field, but the class of games does not. The surreals have a total order: given any two surreals, they are either equal, or one is greater than the other. The games have only a partial order: there exist pairs of games that are neither equal, greater than, nor less than each other. Each surreal number is either positive, negative, or zero. Each game is either positive, negative, zero, or fuzzy (incomparable with zero, such as {1|-1}).

A move in a game involves the player whose move it is choosing a game from those available in L (for the left player) or R (for the right player) and then passing this chosen game to the other player. A player who cannot move because the choice is from the empty set has lost. A positive game represents a win for the left player, a negative game for the right player, a zero game for the second player to move, and a fuzzy game for the first player to move.

If x, y, and z are surreals, and x=y, then x z=y z. However, if x, y, and z are games, and x=y, then it is not always true that x z=y z. Note that "=" here means equality, not identity.

Surreal numbers and combinatorial game theory

The surreal numbers were originally motivated by studies of the game Go, and there are numerous connections between popular games and the surreals. In this section, we will use a capitalized Game for the mathematical object {L|R}, and the lowercase game for recreational games like Chess or Go.

We consider games with these properties:

For most games, the initial board position gives no great advantage to either player. As the game progresses and one player starts to win, board positions will occur where that player has a clear advantage. For analyzing games, it is useful to associate a Game with every board position. The value of a given position will be the Game {L|R}, where L is the set of values of all the positions that can be reached in a single move by Left. Similarly, R is the set of values of all the positions that can be reached in a single move by Right. This simple way to associate Games with games yields a very interesting result. Suppose two perfect players play a game starting with a given position whose associated Game is x. The winner of the game is determined: Sometimes when a game nears the end, it will decompose into several smaller games that do not interact. For example, in Go, the board will slowly fill up with pieces until there are just a few small islands of empty space where a player can move. Each island is like a separate game of Go, played on a very small board. It would be useful if each subgame could be analyzed separately, and then the results combined to give an analysis of the entire game. This doesn't appear to be easy to do. For example, you might have two subgames where whoever moves first wins, but when they are combined into one big game, it's no longer the first player who wins. Fortunately, there is a way to do this analysis. Just use the following remarkable theorem:

If a big game decomposes into two smaller games, and the small games have associated Games of x and y, then the big game will have an associated Game of x+y.

In other words, gluing together several non-interacting games is equivalent to simply adding their Games!

Historically, Conway developed the theory of surreal numbers in the reverse order of how it has been presented here. He was analyzing Go endgames, and realized that it would be useful to have some way to combine the analyses of non-interacting subgames. From this he invented the concept of a Game and the addition operator for it. From there he moved on to developing a definition of negation and comparison. Then he noticed that a certain class of Games had interesting properties; this class became the surreal numbers. Finally, he developed the multiplication operator, and proved that the surreals are actually a field, and that it includes both the reals and ordinals. It is amazing that all this came out of the study of Go!

Further reading