/* find the orbits of an insoluble permutation group,
which has generators stored as a sequence in perms */
void insoluble_compute_orbits(int **orbit, int **backptr, char **schreier, int **perms, struct pga_vars *pga)
{ int *stack; int *pointer; int point, image; registerint i, j; registerint Degree = pga->Degree; registerint nmr_of_perms = pga->nmr_of_perms;
*orbit = allocate_vector(Degree, 1, FALSE);
/* if standard presentation computation, set
up schreier vectors and backward pointers */
/* list the orbit of soluble permutation group with leading term j */
staticvoid list_orbit(int j, int *b)
{ while (j != 0) {
printf("%d ", j);
j = b[j];
}
}
/* find the orbit representatives, number of orbits, and
orbit lengths; if required, list the individual orbits */
int *find_orbit_reps(int *a, int *b, struct pga_vars *pga)
{
Logical soluble; registerint Degree = pga->Degree; registerint counter = 0; registerint j; int *length; int size = 1000;
pga->nmr_orbits = 0;
/* set up space to store orbit representatives and orbit lengths */
pga->rep = allocate_vector(1000, 1, FALSE);
length = allocate_vector(1000, 1, FALSE);
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung ist noch experimentell.