These operations modify a stabilizer chain or obtain new chains with specific properties. They are rather technical and should only be used if such low-level routines are deliberately required. (For all functions in this section the parameter S is a stabilizer chain.)
CopyStabChain( S ) F
This function returns a copy of the stabilizer chain S
that has no mutable object (list or record) in common with S.
The labels components of the result are possibly shared by several
levels, but superfluous labels are removed.
(An entry in labels is superfluous if it does not occur among the
genlabels or translabels on any of the levels which share that
labels component.)
This is useful for stabiliser sub-chains that have been obtained as
the (iterated) stabilizer component of a bigger chain.
CopyOptionsDefaults( G, options ) F
sets components in a stabilizer chain options record options according to what is known about the group G. This can be used to obtain a new stabilizer chain for G quickly.
ChangeStabChain( S, base[, reduced] ) F
changes or reduces a stabilizer chain S to be adapted to the base base. The optional argument reduced is interpreted as follows.
reduced = false :
reduced = true : ExtendStabChain( S, base ) F
extends the stabilizer chain S so that it corresponds to base base. The original base of S must be a subset of base.
ReduceStabChain( S ) F
changes the stabilizer chain S to a reduced stabilizer chain by eliminating trivial steps.
RemoveStabChain( S ) F
S must be a stabilizer record in a stabilizer chain. This chain then is cut off at S by changing the entries in S. This can be used to remove trailing trivial steps.
EmptyStabChain( labels, id[, pnt] ) F
constructs a stabilizer chain for the trivial group with
identity=id and labels= {id}Èlabels (but of course with
genlabels=[ ] and generators=[ ]). If the optional third argument
pnt is present, the only stabilizer of the chain is initialized
with the one-point basic orbit [ pnt ] and with translabels and
transversal components.
InsertTrivialStabilizer( S, pnt ) F
InsertTrivialStabilizer initializes the current stabilizer with pnt
as EmptyStabChain did, but assigns the original S to the new
S.stabilizer component, such that a new level with trivial basic
orbit (but identical labels and ShallowCopyed genlabels and
generators) is inserted.
This function should be used only if pnt really is fixed by the generators
of S, because then new generators can be added and the orbit and
transversal at the same time extended with
AddGeneratorsExtendSchreierTree.
IsFixedStabilizer( S, pnt ) F
returns true if pnt is fixed by all generators of S and false
otherwise.
AddGeneratorsExtendSchreierTree( S, new ) F
adds the elements in new to the list of generators of S and at the same time extends the orbit and transversal. This is the only legal way to extend a Schreier tree (because this involves careful handling of the tree components).
[Top] [Previous] [Up] [Next] [Index]
GAP 4 manual