[GAP Forum] coset enumeration
Alexander Hulpke
hulpke at math.colostate.edu
Mon Jul 23 18:19:06 BST 2007
Dear Forum, Dear Kristin Farwell,
> without having to stand over my computer. Is there
> any way I can make the
> coset enumerator return 'fail' then continue with the
> next command, instead
> of waiting for me to give it permission?
>
> Beth
>
>
> I am trying to do exactly what this person was asking
> about and I also found the max and silent options. I
> also know how to push these options onto the stack.
> My program still does not break out of the loop when
> it reaches the max. Approximate code:
>
> f:=FreeGroup(2);
> PushOptions(rec(max:=2000));
> PushOptions(rec(silent:=true));
> for p in [1..5] do
> g:=f/[f.1^3,f.2^3,(f.1*f.2)^3,(f.1*f.2*f.1)^p];
> s:=Size(g);
`Size' (which does coset enumeration by a cyclic subgroup and then
considers the presentation for this subgroup) calls an augmented
coset table calculation that does not respect the `silent' option.
(Indeed this would be troublesome as then `Size' would be stored as
`fail').
If you want to do an opportunistic finiteness test I would call the
internal function
FinIndexCyclicSubgroupGenerator(g,max);
(BTW you set max to 2000 -- Unless your machine is older than 15
years you probably want to set it to at least 256000 which is the
standard coset table default in GAP. Coset enumeration often needs
initially more cosets.)
This routine will either return `fail' or return a cyclic subgroup of
finite index. In this second case you the can call `Size'.
Best,
Alexander Hulpke
> ______________________________________________________________________
> ______________
> Senseless footer added by yohoo email
> http://weareannoying.yahoo.com/
>
More information about the Forum
mailing list