Recently Kevin Pilgrim asked how one could construct a Belyĭ Map from a given set of valencies. I’ll cover this idea in more detail in my course, but I thought I’d put out a general answer now for those who are interested.

### Definitions

Say that is a loopless, connected, planar bipartite graph which we wish to express as the Dessin d’Enfant of some Belyĭ map . We explain how to construct such a Belyĭ map. We are motivated by the discussions found on **Mathematica Stack Exchange** at the web pages here and here. My 2013 REU worked on implementing these ideas over the summer as part of a Mathematica notebook.

Express the “black” vertices as , the “white” vertices as , and the midpoints of the faces as . Since , we will express , and . Say that each “black” vertex has edges incident, each “white” vertex has edges incident i.e. “black” vertices adjacent, and each face has “white” vertices adjacent. The sets , , and are the valencies of the vertices, edges, and faces, respectively. (By the way, a “clean” Dessin d’Enfant would correspond to .)

### Fundamental Equation

Since we would like to write , , and for some rational function of degree , we must have the factorizations

for some nonzero constants , , and . Hence, given the sets , , and we wish to find such that

identically as a polynomial in . If you can find coefficients which make this polynomial identity true for all , then you have the desired Belyĭ map .

### Remarks

Since there are coefficients in this polynomial equation, we find a system of homogeneous equations in unknowns — so there will be infinitely many to choose from. In practice, it is useful to use a Möbius transformation in the form

The corresponding rational map satisfies , , and ; while the corresponding system has homogeneous equations in unknowns. We expect to find only finitely many to choose from.

As I mentioned before, my 2013 REU worked on implementing these ideas over the summer as part of a Mathematica notebook. We had trouble getting Mathematica to solve this polynomial equation when the sizes of the valencies got too large, such as 6 or 7. I’m working on getting the code to run much faster so that I can post something online soon.