Genéricamente, esto debería ser fácil de hacer, especialmente sabiendo que $V^*$ es único de dimensión $m$ . Una herramienta útil para abordar este problema es el Forma normal de Jordania de una matriz (véase http://en.wikipedia.org/wiki/Jordan_normal_form ). El hecho relevante es que para cualquier transformación lineal $L$ cada bloque de Jordan en la descomposición de la forma normal de Jordan es invariante por $L$ y a la inversa, cada subespacio invariante de $L$ es una suma directa de bloques de Jordan.
De hecho, como sus transformaciones lineales están definidas sobre un campo arbitrario (no necesariamente cerrado algebraicamente), algunos valores propios pueden pertenecer a una extensión de campo base. Para evitar trabajar con campos de extensión, es necesario utilizar la forma de Jordan generalizada (está implementada en magma).
Como tienes varias transformaciones lineales $G_i$ con $V^*$ como subespacio invariante, cualquier combinación lineal de $G_i$ s también tiene $V^*$ como subespacio invariante. Yo propondría el siguiente algoritmo: Tomar $G$ una combinación lineal aleatoria de $G_i$ s y calcular su forma de Jordan generalizada. Con un poco de suerte, se obtiene un bloque de Jordan generalizado de dimensión $m$ (invariante bajo $G$ ) que es un buen candidato para $V^*$ y se puede comprobar fácilmente.
Caveat : No he programado el enfoque y probablemente es posible idear casos especiales en los que $V^*$ nunca aparecerá como un único bloque Jordan, lo que complicaría las cosas. Sin embargo, en general, esta parece ser una solución agradable y bastante eficiente para su problema.