Algoritmos dependen de manera esencial en tipos de datos. ¿Cómo son sus grupos representados?
Semi-directa de productos
Un semi-producto directo puede ser representado como un triple (H, K, φ) donde H, K son bien conocidos grupos y φ es un bien estudiado homomorphism de H a Aut(K). En este caso, un elemento (h, k) se encuentra en el centro de la si y sólo si:
- h es centralizada por H: (x, 1) ⋅ (h, k) = (xh, k) y (h, k) ⋅ (x, 1) = ( hx, φ(x)(k) ), de modo xh = hx para todos los x en H
- k es centralizada por φ(x) como el anterior
- φ(h) = Id: (h, k) ⋅ (1, x) = (h, kx) y (1, x) ⋅ (h, k) = ( h, φ(h)(x) k), por lo kx = φ(h)(x) k para todo x, entonces φ(h)(x) = kxk-1, y φ(h) es la conjugación por k-1.
- Si h = 1, entonces k es centralizada por K, ya que (1, k) ⋅ (1, x) = (1, kx) y (1, x) ⋅ (1, k) = (1, xk)
En la otra dirección, si h en Z(H) ∩ ker(f) y k en Z(K) ∩ CK(φ(H)), entonces (h, k) está en el centro. Claramente cualquier h determina un central (h,1), y cualquier k determina un central (1,k), y de modo que su producto (h, k) es también de central.
Si K es abelian, entonces esto también es necesario. Si K no es abelian, entonces creo que uno toma φ-1(Inn(K)), teniendo cuidado de recordar el k tal que h = f-1( conjugación por k-1)
Para calcular esto, entonces usted tiene que ser capaz de encontrar el centro de H, el centro de K, el kernel (o preimagen) y la imagen de fy, a continuación, dos intersecciones (con al menos un subgrupo normal). Suponiendo que H, K, φ se entiende bien, entonces usted puede hacer esto, pero en general estos problemas pueden ser tan duro.
La BRECHA de
En la BRECHA, grupos están representados (aproximadamente en el orden de la eficiencia) como policíclicos grupos de permutación de grupos, la matriz de grupos, y finitely presentan grupos.
Finito policíclicos grupos se representan mediante SpecialPCGS (policíclicos sistemas de generación), que es un tipo de datos que bastante directamente muestra la información más relevante sobre el grupo. Estos se describen en Cannon–Eick–Leedham-Verde (2004) y calculado en la BRECHA de lalib/pcgsspec.gi
. El centro se calcula a partir de estos como un iterado centralizador, con la idea de que el centro del grupo figura en el centro de la instalación, y centraliza en un mínimo de módulos. Esto es en la BRECHA de lalib/grppcatr.gi
. Infinito policíclicos grupos se representan utilizando menos especializados PCGS, pero los métodos son similares, y están en la BRECHA de lapkg/polycyclic/gap/pcpgrp/fitting.gi
.
Permutación de grupos se representan utilizando una base fuerte y el sistema de generación (también llamado estabilizador de cadenas). Estos permiten de manera eficiente anote cualquier permutación como un producto de generadores y definir canónica coset representantes de los subgrupos en el estabilizador de la cadena. Es muy similar a la "limpieza" de un vector de dar un semi-echelon base de un espacio vectorial. Un algoritmo de Beals–Seress (1992) se utiliza (ver Seress (2003)) y es en la BRECHA de lalib/grpprmcs.gi
.
Matriz de grupos son actualmente un área de investigación activa. Uno debe descomponer el grupo con Aschbacher estructura del teorema y, a continuación, el centro puede ser calculada. Que yo sepa esto no está implementado en la BRECHA y sólo parcialmente implementado en el magma. Básicamente, uno expresa el grupo como una composición de bien entendido grupos cuyos centros puede ser escrito. En la práctica, la BRECHA se calcula una permutación de la representación por la búsqueda de un vector o proyectiva punto con un corto órbita, y la computación en la permutación de grupo.
Finitely presentan grupos normalmente no tienen algoritmos en el sentido tradicional (de terminación y correcta). Casos especiales tales como productos gratis y directa de los productos (y sus combinaciones, los gráficos de los grupos), yo creo que tienen métodos para expresar el centro de todo basado en los centros de los factores. En GAP, el éxito de un centro de cálculo casi proviene seguramente del grupo de un ser finito y representa internamente el uso de permutaciones o ser policíclicos y representados (explícitamente creo) como un policíclicos grupo.
Cannon, Juan J.; Eick, Bettina; Leedham-Verde, Charles R.
Especial policíclicos la generación de secuencias finitas soluble en grupos.
J. Simbólico Comput. 38 (2004), no. 5, 1445-1460.
MR2168723
DOI:10.1016/j.jsc.2004.05.003
Seress, Ákos. Permutación grupo de algoritmos.
Cambridge Tratados en Matemáticas, 152. Cambridge University Press, Cambridge, 2003. x+264 pp.
ISBN: 0-521-66103-X
MR1970241
Google:libros