## Incidence Symbols for Labeled Isogonal Polyhedra

Here we describe in full our symbolic system for labeling isogonal polyhedra. As mentioned before, we want the system to describe the labeling structure of the vertex star and to specify the rules for connecting adjacent vertex stars. In addition, we would also like it to be able to show the symmetries of the vertex star, be able to describe all possible connection rules and in a manner limited enough to allow them to all be determined and tested in a reasonable amount of time and, finally, to uniquely identify a particular polyhedron. Thus, this list contains five major requirements. The system we describe below fully meets the first four requirements, but only half of the last one. More specifically, while different isogonal polyhedra will receive different symbolic representations (thus satisfying the identifiability requirement), the system does allow a polyhedron to have more than one representation (so failing the uniqueness requirement). In spite of this last failing, we believe the system is satisfactory for the purposes we choose to use it for, and we know of no other system that does happily satisfy all five requirements. In fact, we did look very closely at adding additional rules that would give the system the uniqueness property above; that is, we considered various rule systems that produced a unique, canonical symbol for every unique polyhedron. However, for every such set of rules that we created, we always found at least one isogonal polyhedron that we wished we could label in a way that the canonical rules forbid! Therefore, in the end, we decided not to enforce the generation of a canonical symbol and instead we allow each polyhedron to have the symbol that seems most natural in describing its unique properties.

To begin, we call our symbol for representing an isogonal polyhedron an incidence symbol. An incidence symbol has two parts, a vertex symbol and an adjacency symbol, both enclosed in square brackets and separated by a semicolon. For example, one of the valid incidence symbols for the cube is [a+b+c+;  a+b-c-]. The first part, a+b+c+, is the vertex symbol while the second part, a+b-c-, is the adjacency symbol. In general, the vertex symbol encodes the possible vertex star edge labels and the symmetries of the vertex star, while the adjacency symbol encodes the connection rules.

Consider an arbitrary vertex star. It has two "sides," in the sense that it can be flipped over. For a coplanar vertex star, this is obvious, but less so with something like the cube corner. Nevertheless, one might easily describe the cube corner as having an "inside" surface and an "outside" surface, and it is these two "surfaces" that we consider the "sides" of this particular vertex star. We call one side the red side and the other the black side, but which one is which is arbitrary. Usually one will seem more natural than the other. (This is one of the places where a canonical labeling system could have a potential mismatch with what might seem to be the natural choice, and an example of why we ultimately abandoned trying to require such a rule.) We (again arbitrarily) choose the red side to be the side we label. We pick one of the edges of the vertex star on the red side to be our starting edge. Which one we choose is again arbitrary, though it is often the case that one particular edge seems to be the natural choice, especially when the vertex star has a symmetry. (This idea will become more clear later on.) Now we can begin to form the vertex symbol.

We want to give each edge in the vertex star a unique label, so we use the letters starting with 'a' and proceed, in cyclic order around the vertex star, to assign the subsequent edges the letters 'b', 'c', and so on until all edges have a letter. There are two choices for the cyclic order:  clockwise or counter-clockwise. Which one to choose is arbitrary, though here we almost always use the counter-clockwise orientation. But whichever choice is made, it must always be followed for the rest of the labeling process. The cyclic orientation thus chosen is designated the '+' direction. Reflection is an allowed transformation of vertex stars when creating isogonal polyhedra, and if the vertex star is not reflectively symmetric then a reflected vertex star will be qualitatively different from its unreflected form. Therefore, we need a way to distinguish them, and in that case we mark all labeled edges in a reflected vertex star with '-'. For example, if the cube corner as originally specified is a+b+c+, then its reflected form is a-b-c-. However, this is given here only as an example, because vertex symbols never contain only an a- edge. This will also become more clear later on. Otherwise, we have completed the vertex symbol; in our cube we would have a+b+c+. From this vertex symbol we can immediately see that its vertex star has three edges, and so three polygons.

However, our requirements for the vertex symbol included not just labeling the edges, but also encoding the symmetries of the vertex star. By labeling our cube vertex star as a+b+c+, we implicitly declare that every edge is to be treated differently, even though we know that in the underlying geometry they are all alike. Presumably we have marked the edges in some way to create this asymmetry. But if we instead wanted to mark our edges so that this vertex star had reflective symmetry (but no more), we need a different symbol. Assume we chose the 'a' edge to lie in the reflective plane of symmetry. The second edge is b+, but the third edge cannot be c+ because this would invalidate the reflective symmetry. Instead, the third edge must be b-. But, returning to the 'a' edge, if it were a+ then this would also invalidate the reflective symmetry. The 'a' edge could just as easily have been labeled a-, which would match with the b- if we proceeded from 'a' to 'b' in the opposite cyclic direction than we started. Thus, the 'a' edge is both a+ and a-, and this we label simply as a, without any + or -. Now we have our complete vertex symbol, a b+b-, and it implicitly demonstrates that we have a reflective symmetry about the 'a' edge. (If the plane of symmetry were instead around the 'b' edge, our vertex symbol would be a+b a-, and if it were around the 'c' edge, it would be a+a-b. Usually, the vertex star suggests a natural choice, but again we see why stipulating a canonical choice could be undesirable.)

We can recognize other symmetries in our cube corner as well. For example, a+a+a+ shows that we have rotational symmetry, but still have a cyclic orientation asymmetry. The symbol a a a, which is the most symmetric, shows that we have now removed this cyclic orientation asymmetry so that every edge has reflective symmetry. Considering the {4,4} coplanar tiling vertex star, reflective symmetry would be a b+c b-, while half-rotational symmetry would be a+b+a+b+. And so on.

For planar tilings these symbols are sufficient and they were originally described in 1979. [Incidence symbols and their applications, Branko Grünbaum and G. C. Shephard, in Relations Between Combinatorics and Other Parts of Mathematics, Proc. Sympos. Pure Math, Vol. 34 (1979), pp. 199-244.] But for three-dimensional vertex stars, we need to extend the system. Return to the coplanar {4,4} vertex star. We label the first two edges a+ and b+. We could label the third edge c+, but suppose we wish to recognize that this vertex star has a 'flipped' symmetry. That is, by rotating the vertex star 180° around the 'b' edge, we again find the 'a' edge, just on the other "side" of the vertex star. To do this, we use the '^' symbol, and the third edge becomes a^+. But when we reach the fourth edge, we realize a problem. If this were b^+, then what about the b+ edge, which also finds itself part of the axis of rotation? That is, both the second and fourth edges could legitimately be labeled b+ or b^+. In this circumstance, we label them both b*+. The '*' symbol recognizes an edge that appears the same from either the red side or the black side of the vertex star. (Clearly, the use of the '*' symbol can only apply to edges whose dihedral angle is 180°.) And finally, we must accomodate two final symmetries, though these are rare and require a more complicated vertex star than can be easily described. It can happen that an edge can be described as both a+ and a^-, but neither a- nor a^+. In this case, we label it a&+. Lastly, if it is both a- and a^+ but not a+ or a^-, it is labeled a&-. (Again, these '&' symbols can only be assigned to edges with 180° dihedral angles.) Now, finally, we have enough symbols!

Note that these requirements force a certain consistency. That is, if b+ is to be connected to c^- then c+ must be connected to b^-, and so on. It can now be seen that there are only a calculable number of possible adjacency symbols that can be paired with any specific vertex symbol. In fact, if there are n letters in the vertex symbol then there can be at most 4nn! possible adjacency symbols, and a vast proportion of these can be very quickly eliminated by enforcing the consistency rules. Therefore, we see that our 4-1/2 major requirements have indeed been met. The edges have been assigned labels by the vertex symbol and, together with the adjacency symbol, the rules for connecting adjacent vertex stars have been specified. The markings added to the edge letters in the vertex symbol implicitly encode the symmetries of the vertex star, and all connection rule possibilities are bounded by a number easily handled by today's modern computers. The identifiability requirement has been met, in that no two different polyhedra can be assigned the same symbol. Only the uniqueness property has not been met, and this has already been sufficiently discussed. One additional ambiguity that this system possesses is that it does not explicitly specify in the incidence symbol which side is red, which cyclic orientation was used, or which edge is 'a'. But if one is consistent in producing a set of possible labels for a given polyhedron, then another choice of these possibilities only produces an isomorphic set; that is, no more or fewer different labelings can be produced by making a different original set of choices. While this does lead to some confusion when one at first seems to have produced a new labeling not originally listed, careful analysis of both sets will show that the new one is merely a duplicate labeling and the original set of arbitrary choices can be reconstructed.

We present below a concise summary of these rules, as applied to arbitrary edges 'x' and 'y'.

### Incidence symbols

#### Vertex symbols

• x+ :   Normal (default) edge label
• x- :   Label of an edge that is a reflection of x+
• x :   Label of an edge that has reflective symmetry
• x^+ :   Label of an edge that is a flip of x+
• x^- :   Label of an edge that is a reflected flip of x+
• x^ :   Label of a flipped 'x' edge that has reflective symmetry

•              (The following only apply to 180° dihedral angle edges)
• x&+ :   Label of an edge that is both x+ and x^-
• x&- :   Label of an edge that is both x- and x^+
• x*+ :   Label of an edge that has flip (but not reflective) symmetry
• x*- :   Label of a reflected edge with flip symmetry
• x* :   Label of an edge with both flip and reflective symmetry

• y+ :   Adjacent edge without reflection or flip
• y- :   Adjacent edge in reflected vertex star
• y^+ :   Adjacent edge in flipped vertex star
• y^- :   Adjacent edge in flipped and reflected vertex star
• y :   Adjacent reflectively symmetric edge (no flip)
• y^ :   Adjacent reflectively symmetric edge (with flip)

•              (The following only apply to 180° dihedral angle edges)
• y*+ :   Adjacent flip-symmetric edge (no reflection)
• y*- :   Adjacent flip-symmetric edge (with reflection)
• y* :   Adjacent reflective and flip-symmetric edge