Espero que esta pregunta no sea demasiado ingenua para este sitio.
En matemáticas (topología, geometría, álgebra) es común que uno distinga entre dos objetos creando un invariante algebraico o numérico, y demostrando que los dos objetos tienen valores diferentes. Me pregunto hasta qué punto se ha intentado esto con las clases de complejidad (o si lo ha hecho, por qué nunca he oído hablar de eso). Las estructuras algebraicas se muestran mucho en la informática teórica en su conjunto (cf Usos de las estructuras algebraicas en la informática teórica ), entonces, ¿por qué no en la teoría de la complejidad?
En mi ingenuidad puedo imaginar una noción de equivalencia de dos idiomas: la existencia de una reducción del tiempo polinomial que también es reversible (o una biyección en las cuerdas). También puedo imaginar que esta noción no es adecuada: ningún lenguaje finito de cardinalidad diferente podría considerarse equivalente, a pesar de que a menudo nos interesan los idiomas infinitos.
¿Hay alguna otra noción más débil de isomorfismo de idiomas que haya arrojado resultados interesantes? ¿Hay otros tipos de invariantes con sabor numérico que se hayan utilizado para distinguir las clases de complejidad?