From my symmath platonic solids worksheet:

Defining our terms:

$n =$ dimension of manifold which our shape resides in.
$\tilde{T}_i \in \mathbb{R}^{n \times n} =$ i'th automorphic transform in the minimal set.
$\tilde{\textbf{T}} = \{ 1 \le i \le p, \tilde{T}_i \} =$ minimum set of automorphic transforms that can be used to recreate all automorphic transforms.
$p = |\tilde{\textbf{T}}| =$ the number of minimal automorphic transforms.
$T_i \in \mathbb{R}^{n \times n} =$ i'th automorphic transform in the set of all unique transforms.
$\textbf{T} = \{ T_i \} = \{ 1 \le k, i_1, ..., i_k \in [1,m], \tilde{T}_{i_1} \cdot ... \cdot \tilde{T}_{i_k} \} =$ set of all unique automorphic transforms.
$q = |\textbf{T}| =$ the number of unique automorphic transforms.

Vertexes / 0-forms:

$v_1 \in \mathbb{R}^n =$ the position of some arbitrary initial vertex.
$\textbf{v} = \{v_i \} = \{ T_i \cdot v_1 \} =$ the set of all vertices.
$m = |\textbf{v}| =$ the number of vertices.
(Notice that $m \le q$, i.e. the number of vertices is $\le$ the number of unique automorphic transforms.)
$V \in \mathbb{R}^{n \times m}=$ matrix with column vectors the set of all vertices, such that $V_{ij} = (v_j)_i$.
$P_i \in \mathbb{R}^{m \times m} =$ permutation transform of vertices corresponding with i'th transformation, such that $T_i V = V P_i$.




And now half starting fresh...
Some more notation:

$S =$ solid. Maybe for convenience write $S^n$ to denote the dimension of the solid. Maybe I'll use a second index to denote which unique polytope of this dimension, like maybe $S^n_m$ is the m-sided polytope of n-dimensions.
$n \in \mathbb{N} =$ dimension of the manifold this solid resides in.
$v_j(S) = $ the j'th vertex of solid S.
$\textbf{v}(S) = \left\{ v_j(S) \right\} =$ set of vertexes of the solid S.
$q_k(S) = $ number of k-forms in solid S. 0-forms are vertexes, so $|\textbf{v}(S)| = q_0(S)$.
$\partial S = $ the solid that is the surface element of solid S. For regular convex polytopes there is only one shape, unlike archimedean solids which have multiple shapes in its surface.
$\star S = $ dual of solid S.
$\textbf{T}(S) = $ the set of automorphic transforms -- rotations only -- associated with this shape, such that the vertexes, edges, and faces are all preserved. Something something about duals means that preserving vertexes means preserving faces right?



In 2D:

Let $S^2_k$ be our regular convex polytope in 2D, i.e. polygon, with k sides, for $k \ge 3, k \in \mathbb{N}$.

A k-sided regular convex polygon has k vertexes (0-forms), i.e. $q_0(S^2_k) = k$.

Vertexes can be defined as $v_j = \left[ \begin{matrix} cos(\frac{2 \pi j}{k}) \\ sin(\frac{2 \pi j}{k}) \end{matrix} \right]$.

It has k edges (1-forms), i.e. $q_1(S^2_k) = k$.

So for 2D regular convex polytopes we see the number of vertexes and edges match, i.e. $q_0(S^2_k) = q_1(S^2_k) = k$.

From this we can use the Euler characteristic equation: $\chi = V - E + F$, where V = the number of vertexes, E = the number of edges, F = number of faces. So $\chi = q_1(S^2_k) + q_0(S^2_k) = - k + k = 0$.

For automorphic transform groups in 2D we also have a group size of $|\textbf{T}(S^2_k)| = k = q_0 = q_1$ rotations that preserve the shape.
For our earlier choice of vertices, the k'th transform takes the form of $T^2_{p,k} = \left[\begin{matrix} cos(\frac{2 \pi k}{p}) & -sin(\frac{2 \pi k}{p}) \\ sin(\frac{2 \pi k}{p}) & cos(\frac{2 \pi k}{p}) \end{matrix}\right]$.

Notice our solids are self-dual, so a k-sided object's dual is another k-sided object, with vertexes replaced with edges and edges replaced with vertexes.
i.e. $\star S^2_k = S^2_k$. But mind you, if you want to split hairs about the locations of the vertexes, then all the sudden we have to distinguish between our solids.



In 3D we only have 5 regular convex polytopes:

I'll keep the same convention from 2D denotation: my denotation of $S^3_m$ will be m-sided regular convex polytopes in 3-dimensions.

$q_k(S^3_m) = $ the number of k-forms in our m-sided 3D regular convex polytope, i.e. platonic solid.
so $q_0(S^3_m) = $ the number of vertexes.
so $q_1(S^3_m) = $ the number of edges.
so $q_2(S^3_m) = $ the number of faces.
$\star S^3_m = $ the solid's dual solid.
$|\textbf{T}(S^3_m)| = $ the number of automorphic transforms associated with our solid.
$\partial S^3_p = S^2_q = $ the 2D q-sided solid that makes up surface of the 3D p-sided solid. TODO later come up with an equation that relates p and q.
$q_k(\partial S^3_m) = $ the number of k-forms of a surface-element of the 3D regular convex polytope. $q_1(\partial S^3_m) = $ the number of sides of the polygons that cover our m-sided polyhedron. For 2D this is also equal to the number of vertexes, and to the size of the automorphic transform group.
$\chi = q_0(S^3_m) - q_1(S^3_m) + q_2(S^3_m) = $ the Euler characteristic.

name $S^3_m$ $q_0(S^3_m)$ $q_1(S^3_m)$ $q_2(S^3_m)$ $\chi$ $\star S^3_m$ $|\textbf{T}(S^3_m)|$ $\partial S^3_m$ $m = q_0(\partial S^3_m) = q_1(\partial S^3_m) = |\textbf{T}(\partial S^3_m)|$
tetrahedron $S^3_4$ 4 6 4 2 $S^3_4$ 12 $S^2_3$ 3
cube $S^3_6$ 8 12 6 2 $S^3_8$ 24 $S^2_4$ 4
octahedron $S^3_8$ 6 12 8 2 $S^3_6$ 24 $S^2_3$ 3
dodecahedron $S^3_{12}$ 20 30 12 2 $S^3_{20}$ 60 $S^2_5$ 5
icosahedron $S^3_{20}$ 12 30 20 2 $S^3_{12}$ 60 $S^2_3$ 3

If our notation is that $S^3_m$ represents a m-sided regular convex polytope in 3D then of course the number of 2-forms of $S^3_m$ will be m, so $q_2(S^3_m) = m$.
In general I will call a m-polytope in n-dimensions $S^n_m$ and therefore it will have m surface polytopes, i.e. $q_{n-1}(S^n_m) = m$.

One easy rule to see is that the number of faces of the dual ($q_2(\star S^3_m)$) is equal to the number of vertexes of the original shape ($q_0(S^3_m)$), and same vice versa, that $q_0(\star S^3_m) = q_2(S^3_m)$.
In general, $q_k(S^n_m) = q_{n-k}(\star S^n_m)$.

Another rule is that the automorphic transform set size of a shape and its dual match. In fact the groups are identical. Because both groups must preserve both the vertexes and the sides, and between duals these two properties are exchanged.
So $\textbf{T}(S^n_m) = \textbf{T}^n(\star S^n_m)$.

Another rule that will hold true to higher dimensions is that the transform group size $|\textbf{T}(S^3_m)|$ is equal to the number of sides of our shape, multiplied by each side's transform group size. So $|\textbf{T}(S^3_m)| = q_2(S^3_m) \cdot |\textbf{T}(\partial S^3_m)| = m \cdot |\textbf{T}(\partial S^3_m)|$.
In general: $|\textbf{T}(S^n_m)| = q_{n-1}(S^n_m) \cdot |\textbf{T}(\partial S^n_m)| = m \cdot |\textbf{T}(\partial S^n_m)|$.

Another rule relates the number of edges and the number of faces to the number of sides of the surface elements: $2 \cdot q_1(S^3_m) / q_2(S^3_m) = q_1(\partial S^n_m)$.
This is going to hold true in 4D (and further?) as $2 \cdot q_{n-2}(S^n_m) / q_{n-1}(S^n_m) = \frac{2}{m} \cdot q_{n-2}(S^n_m) = q_{n-2}(\partial S^n_m)$.

This rule can be used to determine the number of sides of the $(n-1)$-dimensional solids that cover our n-dimensional solids,
for $\partial S^n_m = S^{n-1}_r$:
$\frac{2}{m} \cdot q_{n-2}(S^n_m) = q_{n-2}(\partial S^n_m) = q_{n-2}(S^{n-1}_r)$,
combined with $q_{n-2}(S^{n-1}_r) = r$,
gives us: $\frac{2}{m} \cdot q_{n-2}(S^n_m) = r$.
so for our n-dimensional m-sided regular convex polytope $S^n_m$, its $(n-1)$-sided surface elements $\partial S^n_m = S^{n-1}_r$ have $r = \frac{2}{m} \cdot q_{n-2}(S^n_m) = 2 \cdot q_{n-2}(S^n_m) / q_{n-1}(S^n_m)$ sides.

Also to calculate the number of edges of a 3D regular convex polytope: if we know a shape (by its number of sides) and its dual (by its number of sides), we know $q_0(S^3_m)$ and $q_2(S^3_m)$, and can calculate from $\chi = 2$ our remaining $q_1(S^3_m) = q_0(S^3_m) + q_2(S^3_m) - \chi = q_2(S^3_m) + q_2(\star S^3_m) - \chi$.

For more on some exact tables of vertexes, transforms, and multiplication tables between transforms and either vertexes or transforms, check out my symmath work on Platonic Solids.



4D regular convex polytopes:

Euler characteristic: $\chi = q_0 - q_1 + q_2 - q_3$

name $S^4_m$ $q_0(S^4_m)$ $q_1(S^4_m)$ $q_2(S^4_m)$ $q_3(S^4_m)$ $\chi$ $\star S^4_m$ $|\textbf{T}(S^4_m)|$ $\partial S^4_m$ $q_0(\partial S^4_m)$ $q_1(\partial S^4_m)$ $q_2(\partial S^4_m)$ $|\textbf{T}(\partial S^4_m)|$ $q_0(\partial^2 S^4_m) = q_1(\partial^2 S^4_m) = |\textbf{T}(\partial^2 S^4_m)|$
5-cell $S^4_5$ 5 10 10 5 0 $S^4_5$ 60 $S^3_4$ 4 6 4 12 3
hypercube, i.e. 8-cell $S^4_8$ 16 32 24 8 0 $S^4_{16}$ 192 $S^3_6$ 8 12 6 24 4
4-orthoplex, i.e. 16-cell $S^4_{16}$ 8 24 32 16 0 $S^4_8$ 192 $S^3_4$ 4 6 4 12 3
24-cell $S^4_{24}$ 24 96 96 24 0 $S^4_{24}$ 576 $S^3_8$ 6 12 8 24 3
120-cell $S^4_{120}$ 600 1200 720 120 0 $S^4_{600}$ 7200 $S^3_{12}$ 20 30 12 60 5
600-cell $S^4_{600}$ 120 720 1200 600 0 $S^4_{120}$ 7200 $S^3_4$ 4 6 4 12 3

We see our rules still hold true:
$q_k(S^n_m) = q_{n-k}(\star S^n_m)$
$\textbf{T}(S^n_m) = \textbf{T}(\star S^n_m)$
$|\textbf{T}(S^n_m)| = q_{n-1}(S^n_m) \cdot |\textbf{T}(\partial S^n_m)| = m \cdot |\textbf{T}(\partial S^n_m)|$
$2 \cdot q_{n-2}(S^n_m) / q_{n-1}(S^n_m) = \frac{2}{m} \cdot q_{n-2}(S^n_m) = q_{n-2}(\partial S^n_m)$,
i.e. $2 \cdot q_2(S^4_m) / q_3(S^4_m) = \frac{2}{m} \cdot q_2(S^4_m) = q_2(\partial S^4_m)$,
i.e. $\partial S^n_m = S^{n-1}_r$ for $r = \frac{2}{m} \cdot q_{n-2}(S^n_m)$.

We can apply the last rule twice to find the sizes of our 2D surface elements on our 3D surface elements on our 4D regular convex polytopes:
$S^{n-2}_s = \partial S^{n-1}_r = \partial^2 S^n_m$
$s = \frac{2}{r} \cdot q_{n-3}(S^{n-1}_r)$
... idk if i like the look of that, try again...
$2 q_2(S^4_m) / q_3(S^4_m) = q_2(\partial S^4_m)$
$2 q_1(S^3_m) / q_2(S^3_m) = q_1(\partial S^3_m)$
so $2 q_1(\partial S^4_m) / q_2(\partial S^4_m) = q_1(\partial^2 S^4_m) = q_1(S^2_r) = r$



Higher dimensions? They only have 3 different regular convex polytopes, the $(n+1)$-simplex, the $(2n)$-hypercube, and the $(2^n)$-orthoplex.

name $S^n_m$ $q_0(S^n_m)$ $q_k(S^n_m)$ $q_{n-1}(S^n_m)$ $\star S^n_m$ $|\textbf{T}(S^n_m)|$ $\partial S^n_m$
simplex $S^n_{n+1}$ $n+1$ $\left( \begin{matrix} n+1 \\ k+1 \end{matrix} \right)$ $n+1$ $S^n_{n+1}$ $\frac{1}{2}(n+1)!$ $S^{n-1}_n$
hypercube $S^n_{2n}$ $2^n$ $2^{n-k} \left( \begin{matrix} n \\ k \end{matrix} \right)$ $2 n$ $S^n_{2^n}$ $2^{n-1} \cdot n!$ $S^{n-1}_{2(n-1)}$
orthoplex $S^n_{2^n}$ $2 n$ $2^{k+1} \left( \begin{matrix} n \\ k+1 \end{matrix} \right)$ $2^n$ $S^n_{2 n}$ $2^{n-1} \cdot n!$ $S^{n-1}_n$

What is the transformation group size of the (n+1)-simplex?
And $\partial S^n_{n+1} = S^{n-1}_n$. So there's our recursive relation.
$|\textbf{T}(S^n_{n+1})| = (n+1) \cdot |\textbf{T}(\partial S^n_{n+1})| = (n+1) \cdot |\textbf{T}(S^{n-1}_n)|$.
Base-case: $|\textbf{T}(S^2_3)| = 3 = \frac{3!}{2}$.
From there we can calculate $|\textbf{T}(S^n_{n+1})| = \underset{m=2}{\overset{n}{\Pi}} (m+1) = \frac{1}{2} (n+1)!$.

Now the $(2n)$-hypercube:
$\partial S^n_{2n} = S^{n-1}_{2(n-1)}$.
$|\textbf{T}(S^n_{2n})| = 2n \cdot |\textbf{T}(\partial S^n_{2n})| = 2n \cdot |\textbf{T}(S^{n-1}_{2(n-1)})|$.
Base-case: $|\textbf{T}(S^2_4)| = 4$.
From there we get $|\textbf{T}(S^n_{2n})| = \underset{m=2}{\overset{n}{\Pi}} 2 m = 2^{n-1} \cdot n!.$

Last is the $(2^n)$-orthoplex:
$\partial S^n_{2^n} = S^{n-1}_n$
$|\textbf{T}(S^n_{2^n})| = 2^n \cdot |\textbf{T}(\partial S^n_{2^n})| = 2^n \cdot |\textbf{T}(S^{n-1}_n)|$.
No need to do a recursive definition, the transform group size is just based on the previous dimension's simplex transform group:
$|\textbf{T}(S^n_{2^n})| = 2^n \cdot \frac{1}{2} \cdot n! = 2^{n-1} \cdot n!$
Duh. It's dual to the hypercube, of course it has the same sized automorphic transform group.

Ok the number of k-forms I got from https://en.wikipedia.org/wiki/List_of_regular_polytopes_and_compounds#Convex_4. Maybe I'll try to prove them later.

It's interesting that the hypercube and orthoplex are duals (they have matching automorphic transform groups), but the simplex and the orthoplex have matching surface elements (of simplexes).

Mind if I also included reflections then my automorphism rotation group size becomes $|\textbf{T}(S^n_{n+1})| = (n+1)!$ and $|\textbf{T}(S^n_{2^n})| = |\textbf{T}(S^n_{2n})| = 2^n n!$. This looks a lot cleaner. But I'm trying to preserve my handedness.



So the big question: Is there a number theory reason that there are only 5 Platonic solids, and 6 regular convex polytopes of 4D?

If a regular convex polyhedron must have a dual then it and its dual must have transform groups that are equal to their surface polygon number of sides times the number of surface polygons, then what arrangements are possible simply by prime factorization?