Articulo de referencia

Algoritmo de Todd-Coxeter

En teoría de grupos , el algoritmo de Todd-Coxeter , creado por J. A. Todd y H. M. M. Coxeter en 1936, es un algoritmo para resolver el problema de enumeración de clases lateral...

En teoría de grupos , el algoritmo de Todd-Coxeter , creado por J. A. Todd y H. M. M. Coxeter en 1936, es un algoritmo para resolver el problema de enumeración de clases laterales . Dado un grupo G representado por generadores y relaciones, y un subgrupo H de G , el algoritmo enumera las clases laterales de H en G y describe la representación de permutación de G en el espacio de las clases laterales (dada por la multiplicación por la izquierda). Si el orden de un grupo G es relativamente pequeño y se sabe que el subgrupo H es sencillo (por ejemplo, un grupo cíclico ), entonces el algoritmo puede llevarse a cabo manualmente y proporciona una descripción razonable del grupo G. Utilizando su algoritmo, Coxeter y Todd demostraron que ciertos sistemas de relaciones entre generadores de grupos conocidos son completos, es decir, constituyen sistemas de relaciones definitorias.

El algoritmo de Todd-Coxeter puede aplicarse a grupos infinitos y se sabe que finaliza en un número finito de pasos, siempre que el índice de H en G sea finito. Por otro lado, para un par general formado por una presentación de grupo y un subgrupo, su tiempo de ejecución no está limitado por ninguna función computable del índice del subgrupo y el tamaño de los datos de entrada.

Descripción del algoritmo

Una implementación del algoritmo procede de la siguiente manera. Supongamos queGRAMO=incógnitaR{\displaystyle G=\langle X\mid R\rangle }, dóndeincógnita{\displaystyle X}es un conjunto de generadores yR{\displaystyle R}es un conjunto de relaciones y se denota porincógnita{\displaystyle X'}el conjunto de generadoresincógnita{\displaystyle X}y sus inversas. SeaH=h1,h2,,hs{\displaystyle H=\langle h_{1},h_{2},\ldots ,h_{s}\rangle }donde elhi{\displaystyle h_{i}}son palabras de elementos deincógnita{\displaystyle X'}. Hay tres tipos de tablas que se utilizarán: una tabla de clases laterales, una tabla de relaciones para cada relación enR{\displaystyle R}y una tabla de subgrupos para cada generadorhi{\displaystyle h_{i}}deH{\displaystyle H}La información se va añadiendo gradualmente a estas tablas y, una vez que se han completado, se han enumerado todas las clases laterales y el algoritmo finaliza.

La tabla de clases laterales se utiliza para almacenar las relaciones entre las clases laterales conocidas al multiplicar por un generador. Tiene filas que representan clases laterales deH{\displaystyle H}y una columna para cada elemento deincógnita{\displaystyle X'}. Dejardoi{\displaystyle C_{i}}Denotemos la clase lateral de la i- ésima fila de la tabla de clases laterales, y seagramojincógnita{\displaystyle g_{j}\in X'}denota el generador de la j -ésima columna. La entrada de la tabla de clases laterales en la fila i , columna j se define como (si se conoce) k , donde k es tal quedok=doigramoj{\displaystyle C_{k}=C_{i}g_{j}}.

Las tablas de relación se utilizan para detectar cuándo algunos de los conjuntos laterales que hemos encontrado son realmente equivalentes. Una tabla de relación para cada relación enR{\displaystyle R}se mantiene. Deje1=gramonorte1gramonorte2gramonortet{\displaystyle 1=g_{n_{1}}g_{n_{2}}\cdots g_{n_{t}}}ser una relación enR{\displaystyle R}, dóndegramonorteiincógnita{\displaystyle g_{n_{i}}\in X'}. La tabla de relaciones tiene filas que representan las clases laterales deH{\displaystyle H}, como en la tabla de clases laterales. Tiene t columnas, y la entrada en la i -ésima fila y j -ésima columna se define como (si se conoce) k , dondedok=doigramonorte1gramonorte2gramonortej{\displaystyle C_{k}=C_{i}g_{n_{1}}g_{n_{2}}\cdots g_{n_{j}}}. En particular, el(i,t){\displaystyle (i,t)}La entrada 'enésima es inicialmente i , ya quegramonorte1gramonorte2gramonortet=1{\displaystyle g_{n_{1}}g_{n_{2}}\cdots g_{n_{t}}=1}.

Finalmente, las tablas de subgrupos son similares a las tablas de relaciones, excepto que mantienen un registro de las posibles relaciones de los generadores deH{\displaystyle H}. Para cada generadorhnorte=gramonorte1gramonorte2gramonortet{\displaystyle h_{n}=g_{n_{1}}g_{n_{2}}\cdots g_{n_{t}}}deH{\displaystyle H}, congramonorteiincógnita{\displaystyle g_{n_{i}}\in X'}, creamos una tabla de subgrupos. Tiene solo una fila, que corresponde al conjunto de clases laterales deH{\displaystyle H}en sí mismo. Tiene t columnas, y la entrada en la j -ésima columna se define (si se conoce) como k , dondedok=Hgramonorte1gramonorte2gramonortej{\displaystyle C_{k}=Hg_{n_{1}}g_{n_{2}}\cdots g_{n_{j}}}. En particular, la última entrada es H , ya queHgramonorte1gramonorte2gramonortet=Hhnorte=H{\displaystyle Hg_{n_{1}}g_{n_{2}}\cdots g_{n_{t}}=Hh_{n}=H}.

Cuando se completa una fila de una tabla de relaciones o subgrupos, se agrega una nueva pieza de información.doi=dojgramo{\displaystyle C_{i}=C_{j}g},gramoincógnita{\displaystyle g\in X'}Se encuentra. Esto se conoce como una deducción . A partir de la deducción, podemos completar entradas adicionales de las tablas de relaciones y subgrupos, lo que da lugar a posibles deducciones adicionales. Podemos completar las entradas de la tabla de clases laterales correspondientes a las ecuaciones.doi=dojgramo{\displaystyle C_{i}=C_{j}g}ydoj=doigramo1{\displaystyle C_{j}=C_{i}g^{-1}}.

Sin embargo, al completar la tabla de clases laterales, es posible que ya tengamos una entrada para la ecuación, pero con un valor diferente. En este caso, hemos descubierto que dos de nuestras clases laterales son en realidad iguales, lo que se conoce como coincidencia . Supongamos quedoi=doj{\displaystyle C_{i}=C_{j}}, coni<j{\displaystyle i<j}Reemplazamos todas las instancias de j en las tablas con i . Luego, completamos todas las entradas posibles de las tablas, lo que posiblemente conduzca a más deducciones y coincidencias.

Si hay entradas vacías en la tabla después de que se hayan tenido en cuenta todas las deducciones y coincidencias, agregue una nueva clase lateral a las tablas y repita el proceso. Nos aseguramos de que al agregar clases laterales, si Hx es una clase lateral conocida, entonces Hxg se agregará en algún momento para todasgramoincógnita{\displaystyle g\in X'}. (Esto es necesario para garantizar que el algoritmo termine siempre que se cumpla la condición.|GRAMO:H|{\displaystyle |G:H|}es finito.)

Cuando todas las tablas estén llenas, el algoritmo termina. Entonces tenemos toda la información necesaria sobre la acción deGRAMO{\displaystyle G}sobre las clases deH{\displaystyle H}.

Véase también

Referencias