Toratopes were first invented by Paul Wright, Marek14 and wendy in late 2005, and became a superset of the rotatopes by generalizing the "lathe" operation into a "spherate" operation. In summer 2006, Keiji decided to add the "taper" operation to the mix, producing the superset of rotopes. However, including the tapering and spheration operations in the same construction method created a large number of invalid shapes, which plagued any further analysis of rotopes. To overcome this problem, the set of rotopes was finally split up again into two separate sets of tapertopes and toratopes in late 2009.

In any dimension (not counting 0D or 1D) there are always an even number of toratopes, half of which are called open and the other half closed. Each open toratope has a corresponding closed toratope and vice versa. Closed toratopes have smooth surfaces; they have exactly one (n-1)-cell and no other elements. Open toratopes, however, are not smooth; while they may have some or all curved surfaces, they do have at least one (n-2)-cell in addition. Open toratopes are always Cartesian products of lower-dimensional toratopes and/or digons.

Notation

All toratopes can be represented in the new toratopic notation, which is a slightly refined form of the rotopic digit and group notations. Each "I" represents a variable and parentheses represent the root-sum-square operation; the toratope is then the surface defined by the resulting polynomial. For example, (II) is the circle √(x2 + y2) − r = 0.

Toratopes can also be described as products of hyperspheres, using the Cartesian product "x" and the spheration product "#".

SSC2 allows closed toratopes to be represented using an equivalent string, and open toratopes to be represented as Cartesian products or hypercubes. SSCN and CSG notation can only represent those toratopes that are not tigroids (i.e. do not contain the spheration of a Cartesian product of two or more hyperspheres of two or higher dimensions each).

Counting toratopes

Since each open toratope has a corresponding closed toratope, the number of toratopes in a dimension is always twice the number of open (equivalently, closed) toratopes. Therefore, we consider only open toratopes.

First we note the important properties about an open toratope:

Each grouping (including the toratope as a whole) must have two or more elements.

Each element may be either another grouping, or an "I".

Each grouping is a multiset, that is, the order of the elements within a grouping does not matter, but multiple copies of the same element within a grouping do.

The total number of "I"s is the number of dimensions of the toratope.

The maximum nesting level of groupings is finite, that is, we can't consider Y = XII with X = (XX) to be a two-dimensional toratope even though it technically has exactly two "I"s.

Now, there are two ways to arrive at an n-dimensional open toratope Y from an (n−1)-dimensional open toratope X:

Y = X ∪ {I} (add an I to the end of the string), or

Y = {X, I} (enclose X in parentheses and add an I to the end of the string).

However, this does not account for all open toratopes. The remaining ones are generated by putting together several lower-dimensional closed toratopes in a group, with no additional "I"s, or equivalently, surrounding lower-dimensional open toratopes in parentheses before putting them together. In order to do this exhaustively, we must go through each possible partition of n into terms of at least two, and ensure we do not arrive at the same result twice by means of a different ordering of toratopes within each term.

To do this we will define Pn to be the set of all multisets p with members m ∈ p with count km ∈ ℕ, such that (I)Σmmkm = n and (II) 2 ≤ m < n, m ∈ ℤ.

Now let tn be the total number of open toratopes in dimension n and we can write:

It then follows trivially that within each dimension n, the total number of toratopes Tn = 2tn.

A CoffeeScript program to calculate tnis available. This program takes n as the command line argument, or, you can paste it into the "try coffeescript" tab and change the last line to say alert count_open_toratopes prompt() and enter n at the prompt. Notably, the sequence tn is the same as Sloane's A000669, the number of series-reducedplanted trees with n leaves. The sequence grows at roughly the same rate as en.

Toratopic statistics

Here is a table to show the number and percentage of various types of toratopes in each dimension.