Generating the Surreal Numbers
A surreal is recursively defined as an ordered pair of sets of surreals; the first surreal is , with both left and right sets empty; this is written as for compactness. Once any surreal has been defined, it can also be included in the left or right sets, iteratively producing further surreals. The slider selects the first few generations of surreal numbers, which can be viewed as a list, a plot on the number line, or in tree or graph form, showing which surreals were used in the construction of others.
Surreal numbers were defined by John H. Conway (of Conway's Game of Life fame) in 1969 and extensively explored in his classic book . Recursion is everywhere in the definition and use of surreals: each surreal is recursively defined as an ordered pair of sets of surreals. The only difference between a "number" and a "game" turns out to be one additional requirement: a surreal is numeric if and only if all elements of and are numeric and there is no less than some .
Using the operations of comparison, addition, and multiplication (all also recursively defined), it can be shown that the first surreal, , has the characteristics of the number 0, while can be identified as 1, as 2, as , and so on. Although only the first few generations are shown here, this iterative process eventually generates all the integers, fractions, real numbers, infinitesimals, transfinite numbers (the first being ), and much more, in contrast to the separate classical derivations of integers, fractions, rationals, and real numbers. Conway's method unifies ideas from the derivation of irrational and real numbers by Dedekind cuts and Cantor's generation of transfinite numbers.
It must be noted that new aliases for all surreals of previous generations are found in each subsequent generation. This Demonstration only shows the simplest form of each new surreal number, for example, , but this is only the canonical representative of the equivalence class containing such surreals as , , , …. The interested reader is invited to examine and experiment with the initialization code, in which the definition of the surreals is implemented in Mathematica together with their comparison operations (<, <=, >, >=, ==), the numeric test, aliases for the simplest form of each new surreal number, and the sets of new surreal numbers appearing in generation .
 J. H. Conway, On Numbers and Games, 2nd ed., Natick, MA: CRC Press, 2001.