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/


_______________________________________________
Forum mailing list
Forum@mail.gap-system.org
http://mail.gap-system.org/mailman/listinfo/forum

Reply via email to