> < ^ Date: Thu, 28 Jul 1994 16:11:00 +0100 (MET)
> < ^ From: Martin Schoenert <martin.schoenert@math.rwth-aachen.de >
> < ^ Subject: Re: Re: the StabChain function

Leonard Soicher writes in his e-mail message of 1994/07/28

Many thanks for the quick reply, Martin.

My pleasure.

He continues

Will the following work if I want a provably correct result
(when mylimit is a proven upper bound on the size of G)?

H:=ShallowCopy(G);
StabChain(H,rec(random:=800; # or whatever
                limit:=mylimit);
if Size(H) = mylimit then
    G := H;
else
    StabChain(G);
fi;

Assuming that either 'G' has no stabilizer chain at the beginning
or a provable correct one. If 'G' has an incorrect stabilizer chain
at the beginning all the calls to 'StabChain' wont change it. So in
this case the result will also be incorrect. Otherwise this is fine.

He continues

Does StabChain ever change an existing component of the group record;
that is, should I make a Copy instead of a ShallowCopy in the first
line?

'StabChain' only touches 'G.stabChain', 'G.orbit', 'G.stabilizer', and
'G.transversal'. If 'G' has no stabilizer chain initially, then using
'ShallowCopy' is save. If 'G' has a stabilizer chain, the best is to use
'ShallowCopy' and then to 'Unbind' the above four entries. There is even
a function for this, namely 'ShallowCopyNoSC', but this function is not
likely to survive for long.

Martin.

-- .- .-. - .. -.  .-.. --- ...- . ...  .- -. -. .. -.- .-
Martin Sch"onert,   Martin.Schoenert@Math.RWTH-Aachen.DE,   +49 241 804551
Lehrstuhl D f"ur Mathematik, Templergraben 64, RWTH, 52056 Aachen, Germany

> < [top]