From hebert.perez at gmail.com Mon Jan 3 06:35:12 2011
From: hebert.perez at gmail.com (=?ISO-8859-1?B?SGViZXJ0IFDpcmV6LVJvc+lz?=)
Date: Mon, 3 Jan 2011 17:35:12 +1100
Subject: [GAP Forum] Permutations of a multiset, and another question
Message-ID:
Happy new year everyone !
I wonder if anyone has a GAP function to generate all permutations of a
multiset with a given specification (i.e. n_0 elements of type 0, n_1
elements of type 1, and so on).
Moreover, I have been tinkering with a function to generate a special class
of permutations of a multiset, and I have found a problem with the function
Add. When it is called inside another function, it does not do what it is
supposed to do. That has happened to me in other occasions as well. Is that
a bug?
Below is the code of the function, with the call to Add:
##########################################################
## PermutationsMultiset generates the all the perms of
## a multiset {0,...m}, with specification
## in co-lex order, using Ruskey's algorithm.
#########################################################
PermutationsMultiset:= function(bign, spec)
local n0, n1, GenMult, ran, perm, l, newperm, out;
#--------------------------------------------------------------#
# Recursive function that computes the perms #
#-------------------------------------------------------------#
GenMult:= function(smalln)
if n0 = smalln then
# Print(perm, "\n");
Add(out, perm);
else
if n0 > 0 then
perm[smalln+1]:= 0;
n0:= n0-1;
GenMult(smalln-1); # Recursive call
n0:= n0+1;
perm[smalln+1]:= 0;
fi;
if n1 > 0 then
perm[smalln+1]:= 1;
n1:= n1-1;
GenMult(smalln-1); # Recursive call
n1:= n1+1;
perm[smalln+1]:= 0;
fi;
fi;
end;
#--------------------------------------------#
# Body of main function #
#--------------------------------------------#
out:= [];
n0:= spec[1];
n1:= spec[2];
ran:= [1..bign+1];
perm:= ran;
for l in ran do
perm[l]:=0;
od;
GenMult(bign); # First call to recursive function
return out;
end;
=============================================
Now try PermutationsMultiset(5, [3,2]);
Best regards,
Hebert Perez-Roses
The University of Newcastle, Australia
From sararadfarss at gmail.com Tue Jan 4 05:39:50 2011
From: sararadfarss at gmail.com (Sara Radfar)
Date: Mon, 3 Jan 2011 21:39:50 -0800
Subject: [GAP Forum] help
Message-ID:
Hi
We know that in gap we use notation $PSL(p,q)$ for projective linear
group.What is
notation projective semi-linear group?
Thanks
sara
From max at quendi.de Wed Jan 5 23:25:16 2011
From: max at quendi.de (Max Horn)
Date: Thu, 6 Jan 2011 00:25:16 +0100
Subject: [GAP Forum] help
In-Reply-To:
References:
Message-ID: <1CB43821-1414-4912-B760-A4DB1CCB0989@quendi.de>
Am 04.01.2011 um 06:39 schrieb Sara Radfar:
> Hi
> We know that in gap we use notation $PSL(p,q)$ for projective linear
> group.What is
> notation projective semi-linear group?
> Thanks
> sara
Dear Sara,
to the best of my knowledge, there is no function for that in GAP. (Also note that some people would consider PGL to be the project linear group; I guess it's a matter of taste or the field you work in; I only mention it for completeness).
However, you can create the required group yourself as follows. This uses that the automorphism group of a finite field is cyclic, and generated by the Frobenius automorphism.
# Parameters we are interested in
n:=3;; q:=9;; F:=GF(q);;
# To construct PSL, start with SL; to construct PGL, start with GL.
G := GL(n,F);
# Pick a normed basis vector, and take the orbit of the subspace it spans, under the action of G
e1:=IdentityMat(n,F)[1];;
orb:=Set(Orbit(G,e1,OnLines));;
# Finally construct PSL(n,F) by turning this action into a permutation representation for it.
psl:=Action(G,orb,OnLines);;
# You can now work with this, and e.g. test if the size is correct.
Size(psl) = Size(PSL(n,q));
# Now, we can turn the Frobenius automorphism into a permutation of the set 'orb'
aut:=FrobeniusAutomorphism(F);;
frob:=PermList(List(orb,v->Position(orb, List(v,x->Image(aut,x)))));;
# Finally, by adding 'frob' as a new generator to psl, we get the desired group
H:=ClosureGroupAddElm(psl, frob);
Hope that helps,
Max
From sararadfarss at gmail.com Thu Jan 6 13:14:32 2011
From: sararadfarss at gmail.com (Sara Radfar)
Date: Thu, 6 Jan 2011 05:14:32 -0800
Subject: [GAP Forum] Help
Message-ID:
Hi
I can find the same order elements of a group but can't find the set
of the number of the same order elements of a group.Also how we can
introduce a sporadic simple group to GAP?.For example $CO$.
Thanks
Sara
From vipul at math.uchicago.edu Fri Jan 7 02:22:04 2011
From: vipul at math.uchicago.edu (Vipul Naik)
Date: Thu, 6 Jan 2011 20:22:04 -0600
Subject: [GAP Forum] Help
In-Reply-To:
References:
Message-ID: <20110107022204.GA16678@math.uchicago.edu>
Hi,
If I understand your question correctly, you want information on how
many elements of a finite group have each possible order. Although I
don't think there are built-in functions for this, it is easy to write
code for these. For instance:
OrderStatisticsPaired := function(G)
local L,D;
L := List(Set(G),Order);
D := DivisorsInt(Order(G));
return(List(D,x->[x,Length(Filtered(L,y->x=y))]));
end;;
This function takes as input a group and gives a list of ordered
pairs, for each divisor of the order of the group, how many elements
of the group have that order. For instance:
OrderStatisticsPaired(SymmetricGroup(4))
gives the output:
[ [ 1, 1 ], [ 2, 9 ], [ 3, 8 ], [ 4, 6 ], [ 6, 0 ], [ 8, 0 ], [ 12, 0 ], [ 24, 0 ] ]
indicating that in the symmetric group on four letters, there is one
element of the group of order one, nine elements of order two, eight
elements of order three, six elements of order four, and no element of
any higher order.
This exact function may not suit your needs but it's likely that some
variant of it will.
This code is inefficient for large groups; for such groups, one can
modify the code to only go over conjugacy classes instead of elements.
To create such a function, you can either paste the function code in
front of the GAP command prompt or include this in a file and then use
GAP's "Read" command to read that file in.
Vipul
* Quoting Sara Radfar who at 2011-01-06 05:14:32+0000 (Thu) wrote
> Hi
>
> I can find the same order elements of a group but can't find the set
> of the number of the same order elements of a group.Also how we can
> introduce a sporadic simple group to GAP?.For example $CO$.
>
> Thanks
> Sara
>
> _______________________________________________
> Forum mailing list
> Forum at mail.gap-system.org
> http://mail.gap-system.org/mailman/listinfo/forum
From akdasnehu at gmail.com Fri Jan 7 04:32:53 2011
From: akdasnehu at gmail.com (Dr. Ashish Kumar Das)
Date: Fri, 7 Jan 2011 10:02:53 +0530
Subject: [GAP Forum] Help
In-Reply-To: <20110107022204.GA16678@math.uchicago.edu>
References:
<20110107022204.GA16678@math.uchicago.edu>
Message-ID:
Hi,
How about running the following program:
n:=90; # try with other values
i:=0;
Print("GROUP ORDER is ", " ", n, "\n");
g:= AllSmallGroups(n);
for xx in g do
i:=i+1;
Print( "\n", "SMALL GROUP", "(" , n, "," , i, ") =
",StructureDescription(xx), "\n","\n");
yy:= Set(List(xx,Order));
for y in yy do
zz:= Number(xx, x -> Order(x)=y);
Print("order = ", y, " ", "number of elts = ", zz, "\n", "\n"); od;
od;
Ashish Kumar Das
Maths Dept.
NEHU, Shillong, INDIA
On 1/7/11, Vipul Naik wrote:
> Hi,
>
> If I understand your question correctly, you want information on how
> many elements of a finite group have each possible order. Although I
> don't think there are built-in functions for this, it is easy to write
> code for these. For instance:
>
> OrderStatisticsPaired := function(G)
> local L,D;
> L := List(Set(G),Order);
> D := DivisorsInt(Order(G));
> return(List(D,x->[x,Length(Filtered(L,y->x=y))]));
> end;;
>
> This function takes as input a group and gives a list of ordered
> pairs, for each divisor of the order of the group, how many elements
> of the group have that order. For instance:
>
> OrderStatisticsPaired(SymmetricGroup(4))
>
> gives the output:
>
> [ [ 1, 1 ], [ 2, 9 ], [ 3, 8 ], [ 4, 6 ], [ 6, 0 ], [ 8, 0 ], [ 12, 0 ], [
> 24, 0 ] ]
>
> indicating that in the symmetric group on four letters, there is one
> element of the group of order one, nine elements of order two, eight
> elements of order three, six elements of order four, and no element of
> any higher order.
>
> This exact function may not suit your needs but it's likely that some
> variant of it will.
>
> This code is inefficient for large groups; for such groups, one can
> modify the code to only go over conjugacy classes instead of elements.
>
> To create such a function, you can either paste the function code in
> front of the GAP command prompt or include this in a file and then use
> GAP's "Read" command to read that file in.
>
> Vipul
>
> * Quoting Sara Radfar who at 2011-01-06 05:14:32+0000 (Thu) wrote
>> Hi
>>
>> I can find the same order elements of a group but can't find the set
>> of the number of the same order elements of a group.Also how we can
>> introduce a sporadic simple group to GAP?.For example $CO$.
>>
>> Thanks
>> Sara
>>
>> _______________________________________________
>> Forum mailing list
>> Forum at mail.gap-system.org
>> http://mail.gap-system.org/mailman/listinfo/forum
>
> _______________________________________________
> Forum mailing list
> Forum at mail.gap-system.org
> http://mail.gap-system.org/mailman/listinfo/forum
>
From ercan at metu.edu.tr Fri Jan 7 09:25:42 2011
From: ercan at metu.edu.tr (Gulin Ercan)
Date: Fri, 07 Jan 2011 11:25:42 +0200
Subject: [GAP Forum] First Announcement:Workshop on "Finite Groups & Their
Automorphisms" in Istanbul
Message-ID: <20110107112542.104653muq7sbzqja@horde.metu.edu.tr>
Dear All,
We would like to announce herewith a five-day workshop on "Finite
groups and their automorphisms"
which will take place in Istanbul at Bo?azi?i University on 7-11 June 2011.
It aims to bring together leading mathematicians and active
researchers working on
the theory of groups in order to exchange ideas, present new results and
identify the key problems in the field.
The workshop is especially interested in and motivated by the
questions on the relationship
between a finite group and another one acted upon by the first,
although it is not to be considered the exclusive theme.
There will be seven mini-courses and some invited talks.
The speakers who have kindly accepted our invitation to give (a short
series of)lectures are:
Alan Camina, Martin I.Isaacs, Evgeny Khukhro, Charles Leedham-Green,
Attila Maroti, Nadia Mazza, Akos Seress, Aner Shalev and Said N.Sidki
There will be a limited number of slots available in the schedule for
contributed talks as well
and a poster session.
For details and registration please visit the workshop webpage
http://www.istanbulgroup.metu.edu.tr
We are looking forward to seeing you in Istanbul!!
----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.
From alexander.konovalov at gmail.com Fri Jan 7 15:58:05 2011
From: alexander.konovalov at gmail.com (Alexander Konovalov)
Date: Fri, 7 Jan 2011 15:58:05 +0000
Subject: [GAP Forum] Interface with other languages
In-Reply-To: <2b1eb6bd9353ac82cd8c47b15c54fb82.squirrel@mat.ug.edu.pl>
References: <2b1eb6bd9353ac82cd8c47b15c54fb82.squirrel@mat.ug.edu.pl>
Message-ID: <1D984673-C91C-4F6B-B493-D1843C9E5090@gmail.com>
Dear Bartosz, dear GAP Forum,
There are already several GAP packages that contain C parts and
use LoadDynamicModule to load them, so probably to begin with
you may have a look at them. In no particular order, these packages
are: orb, linboxing, io, HAP, Gauss, FR, EDIM and Browse.
Best wishes,
Alexander
On 10 Dec 2010, at 14:44, bart at mat.ug.edu.pl wrote:
> W dniu 10.12.2010 10:06, Max Horn pisze:
>> In addition, GAP can load dynamic modules (again, at least on UNIX type
> systems). I used that to implement some of the most time critical
> functions of a package I am working on in C, for a major speed boost. So
> you could call other systems from within GAP
>
> Hello,
>
> How to do this?
> Could I write my own function in C/C++, compile it into library, and use
> in GAP?
> I imagine that there could be necessary some types conversions (?)
>
> I see LoadDynamicModule() in
> http://www.gap-system.org/Manuals/doc/htm/ref/CHAP003.htm#SECT007
> but is it possible to use it with library other than obtained by using gac?
>
>
> All the best
> Bartosz Putrycz
From hebert.perez at gmail.com Sat Jan 8 05:31:23 2011
From: hebert.perez at gmail.com (=?ISO-8859-1?B?SGViZXJ0IFDpcmV6LVJvc+lz?=)
Date: Sat, 8 Jan 2011 16:31:23 +1100
Subject: [GAP Forum] The Add function
Message-ID:
Dear all,
I'm embarrased to say this, but I'm very puzzled by the behaviour of the Add
function. I have this simple test code:
--------------------------------------
TestFun:= function(n)
local perm, out, i;
out:= [];
perm:= [];
for i in [1..n] do
perm[i]:=0;
od;
for i in [1..n] do
perm[i]:= i;
Add(out, perm);
od;
return out;
end;
----------------------------------
If I now make a call to Test(3), I should get [ [1,0,0], [1,2,0], [1,2,3] ],
right? However, I'm getting [ [1,2,3], [1,2,3], [1,2,3] ]. Do you get the
same thing? Can anybody explain to me what's happening here?
Thank you very much in advance,
Hebert Perez-Roses
The University of Newcastle, Australia
From krkini at ntu.edu.sg Sat Jan 8 06:01:44 2011
From: krkini at ntu.edu.sg (Keshav Rao Kini)
Date: Sat, 8 Jan 2011 14:01:44 +0800
Subject: [GAP Forum] The Add function
In-Reply-To:
References:
Message-ID:
Hello,
Each time you use Add, it adds perm as a new list entry in out. It does NOT add the current value of perm as a new list entry in out, but rather inserts a reference to the list perm. The list perm is added to the list out three times, and by the time the function returns, perm = [1,2,3], so out consists of three [1,2,3].
If you want to remember previous states of a list, you'll always need to make a copy, because this is not done automatically when using functions like Add. Try using for example the ShallowCopy function.
Hope that helps.
Yours,
Keshav
Disclaimer: the boilerplate text at the foot of this email has been added automatically by my mail server. This was not done by my request (rather the opposite) so please disregard it.
2011/1/8 Hebert P?rez-Ros?s >
Dear all,
I'm embarrased to say this, but I'm very puzzled by the behaviour of the Add
function. I have this simple test code:
--------------------------------------
TestFun:= function(n)
local perm, out, i;
out:= [];
perm:= [];
for i in [1..n] do
perm[i]:=0;
od;
for i in [1..n] do
perm[i]:= i;
Add(out, perm);
od;
return out;
end;
----------------------------------
If I now make a call to Test(3), I should get [ [1,0,0], [1,2,0], [1,2,3] ],
right? However, I'm getting [ [1,2,3], [1,2,3], [1,2,3] ]. Do you get the
same thing? Can anybody explain to me what's happening here?
Thank you very much in advance,
Hebert Perez-Roses
The University of Newcastle, Australia
_______________________________________________
Forum mailing list
Forum at mail.gap-system.org
http://mail.gap-system.org/mailman/listinfo/forum
________________________________
CONFIDENTIALITY: This email is intended solely for the person(s) named and may be confidential and/or privileged. If you are not the intended recipient, please delete it, notify us and do not copy, use, or disclose its content. Thank you.
Towards A Sustainable Earth: Print Only When Necessary
From hebert.perez at gmail.com Sat Jan 8 06:19:17 2011
From: hebert.perez at gmail.com (=?ISO-8859-1?B?SGViZXJ0IFDpcmV6LVJvc+lz?=)
Date: Sat, 8 Jan 2011 17:19:17 +1100
Subject: [GAP Forum] The Add function
In-Reply-To:
References:
Message-ID:
OK, thank you very much. I would just swear that I had already tried that.
Cheers,
Hebert.
2011/1/8 Keshav Rao Kini
> Hello,
>
> Each time you use Add, it adds perm as a new list entry in out. It does NOT
> add the current value of perm as a new list entry in out, but rather inserts
> a reference to the list perm. The list perm is added to the list out three
> times, and by the time the function returns, perm = [1,2,3], so out consists
> of three [1,2,3].
>
> If you want to remember previous states of a list, you'll always need to
> make a copy, because this is not done automatically when using functions
> like Add. Try using for example the ShallowCopy function.
>
> Hope that helps.
>
> Yours,
> Keshav
>
> Disclaimer: the boilerplate text at the foot of this email has been added
> automatically by my mail server. This was not done by my request (rather the
> opposite) so please disregard it.
>
>
>
> 2011/1/8 Hebert P?rez-Ros?s
>
>> Dear all,
>>
>> I'm embarrased to say this, but I'm very puzzled by the behaviour of the
>> Add
>> function. I have this simple test code:
>>
>> --------------------------------------
>> TestFun:= function(n)
>> local perm, out, i;
>>
>> out:= [];
>> perm:= [];
>> for i in [1..n] do
>> perm[i]:=0;
>> od;
>> for i in [1..n] do
>> perm[i]:= i;
>> Add(out, perm);
>> od;
>> return out;
>> end;
>> ----------------------------------
>>
>> If I now make a call to Test(3), I should get [ [1,0,0], [1,2,0], [1,2,3]
>> ],
>> right? However, I'm getting [ [1,2,3], [1,2,3], [1,2,3] ]. Do you get the
>> same thing? Can anybody explain to me what's happening here?
>>
>> Thank you very much in advance,
>>
>> Hebert Perez-Roses
>> The University of Newcastle, Australia
>> _______________________________________________
>> Forum mailing list
>> Forum at mail.gap-system.org
>> http://mail.gap-system.org/mailman/listinfo/forum
>>
>
>
> ------------------------------
> CONFIDENTIALITY: This email is intended solely for the person(s) named and
> may be confidential and/or privileged. If you are not the intended
> recipient, please delete it, notify us and do not copy, use, or disclose its
> content. Thank you.
>
> Towards A Sustainable Earth: Print Only When Necessary
>
From sararadfarss at gmail.com Sun Jan 9 08:32:23 2011
From: sararadfarss at gmail.com (Sara Radfar)
Date: Sun, 9 Jan 2011 00:32:23 -0800
Subject: [GAP Forum] Question
Message-ID:
Dear forum
Hi
I have a question about group theory.I know that should send this
message for group pub forum but I coudn't join to it.If you can help
me about my question:
My question is:Let the set of the number of sylow subgroup $G$ equal
to group $PSL(2,7)$(that is {8,21,28}) about solvability or
unsolvability group $G$ what we can say?
Thanks
sara
From zahra.sheikhaleslami at gmail.com Sun Jan 9 08:44:47 2011
From: zahra.sheikhaleslami at gmail.com (zahra sheikhaleslami)
Date: Sun, 9 Jan 2011 12:14:47 +0330
Subject: [GAP Forum] Forum Digest, Vol 86, Issue 2
In-Reply-To:
References:
Message-ID:
hi
please write this theorem with gap
if G,H are finite groups with (IGI,IHI)=1then
Aut(G?H)=Aut(G)?Aut(H)
On 1/9/11, forum-request at gap-system.org wrote:
> Send Forum mailing list submissions to
> forum at mail.gap-system.org
>
> To subscribe or unsubscribe via the World Wide Web, visit
> http://mail.gap-system.org/mailman/listinfo/forum
> or, via email, send a message with subject or body 'help' to
> forum-request at mail.gap-system.org
>
> You can reach the person managing the list at
> forum-owner at mail.gap-system.org
>
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of Forum digest..."
>
>
> Today's Topics:
>
> 1. Help (Sara Radfar)
> 2. Re: Help (Vipul Naik)
> 3. Re: Help (Dr. Ashish Kumar Das)
> 4. First Announcement:Workshop on "Finite Groups & Their
> Automorphisms" in Istanbul (Gulin Ercan)
> 5. Re: Interface with other languages (Alexander Konovalov)
> 6. The Add function (Hebert P?rez-Ros?s)
> 7. Re: The Add function (Keshav Rao Kini)
> 8. Re: The Add function (Hebert P?rez-Ros?s)
> 9. Question (Sara Radfar)
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Thu, 6 Jan 2011 05:14:32 -0800
> From: Sara Radfar
> To: forum
> Subject: [GAP Forum] Help
> Message-ID:
>
> Content-Type: text/plain; charset=ISO-8859-1
>
> Hi
>
> I can find the same order elements of a group but can't find the set
> of the number of the same order elements of a group.Also how we can
> introduce a sporadic simple group to GAP?.For example $CO$.
>
> Thanks
> Sara
>
>
>
> ------------------------------
>
> Message: 2
> Date: Thu, 6 Jan 2011 20:22:04 -0600
> From: Vipul Naik
> To: Sara Radfar
> Cc: forum
> Subject: Re: [GAP Forum] Help
> Message-ID: <20110107022204.GA16678 at math.uchicago.edu>
> Content-Type: text/plain; charset=us-ascii
>
> Hi,
>
> If I understand your question correctly, you want information on how
> many elements of a finite group have each possible order. Although I
> don't think there are built-in functions for this, it is easy to write
> code for these. For instance:
>
> OrderStatisticsPaired := function(G)
> local L,D;
> L := List(Set(G),Order);
> D := DivisorsInt(Order(G));
> return(List(D,x->[x,Length(Filtered(L,y->x=y))]));
> end;;
>
> This function takes as input a group and gives a list of ordered
> pairs, for each divisor of the order of the group, how many elements
> of the group have that order. For instance:
>
> OrderStatisticsPaired(SymmetricGroup(4))
>
> gives the output:
>
> [ [ 1, 1 ], [ 2, 9 ], [ 3, 8 ], [ 4, 6 ], [ 6, 0 ], [ 8, 0 ], [ 12, 0 ], [
> 24, 0 ] ]
>
> indicating that in the symmetric group on four letters, there is one
> element of the group of order one, nine elements of order two, eight
> elements of order three, six elements of order four, and no element of
> any higher order.
>
> This exact function may not suit your needs but it's likely that some
> variant of it will.
>
> This code is inefficient for large groups; for such groups, one can
> modify the code to only go over conjugacy classes instead of elements.
>
> To create such a function, you can either paste the function code in
> front of the GAP command prompt or include this in a file and then use
> GAP's "Read" command to read that file in.
>
> Vipul
>
> * Quoting Sara Radfar who at 2011-01-06 05:14:32+0000 (Thu) wrote
>> Hi
>>
>> I can find the same order elements of a group but can't find the set
>> of the number of the same order elements of a group.Also how we can
>> introduce a sporadic simple group to GAP?.For example $CO$.
>>
>> Thanks
>> Sara
>>
>> _______________________________________________
>> Forum mailing list
>> Forum at mail.gap-system.org
>> http://mail.gap-system.org/mailman/listinfo/forum
>
>
>
> ------------------------------
>
> Message: 3
> Date: Fri, 7 Jan 2011 10:02:53 +0530
> From: "Dr. Ashish Kumar Das"
> To: Vipul Naik
> Cc: Sara Radfar , forum
> Subject: Re: [GAP Forum] Help
> Message-ID:
>
> Content-Type: text/plain; charset=ISO-8859-1
>
> Hi,
> How about running the following program:
>
>
> n:=90; # try with other values
> i:=0;
> Print("GROUP ORDER is ", " ", n, "\n");
> g:= AllSmallGroups(n);
> for xx in g do
> i:=i+1;
> Print( "\n", "SMALL GROUP", "(" , n, "," , i, ") =
> ",StructureDescription(xx), "\n","\n");
> yy:= Set(List(xx,Order));
> for y in yy do
> zz:= Number(xx, x -> Order(x)=y);
> Print("order = ", y, " ", "number of elts = ", zz, "\n", "\n"); od;
> od;
>
> Ashish Kumar Das
> Maths Dept.
> NEHU, Shillong, INDIA
>
> On 1/7/11, Vipul Naik wrote:
>> Hi,
>>
>> If I understand your question correctly, you want information on how
>> many elements of a finite group have each possible order. Although I
>> don't think there are built-in functions for this, it is easy to write
>> code for these. For instance:
>>
>> OrderStatisticsPaired := function(G)
>> local L,D;
>> L := List(Set(G),Order);
>> D := DivisorsInt(Order(G));
>> return(List(D,x->[x,Length(Filtered(L,y->x=y))]));
>> end;;
>>
>> This function takes as input a group and gives a list of ordered
>> pairs, for each divisor of the order of the group, how many elements
>> of the group have that order. For instance:
>>
>> OrderStatisticsPaired(SymmetricGroup(4))
>>
>> gives the output:
>>
>> [ [ 1, 1 ], [ 2, 9 ], [ 3, 8 ], [ 4, 6 ], [ 6, 0 ], [ 8, 0 ], [ 12, 0 ], [
>> 24, 0 ] ]
>>
>> indicating that in the symmetric group on four letters, there is one
>> element of the group of order one, nine elements of order two, eight
>> elements of order three, six elements of order four, and no element of
>> any higher order.
>>
>> This exact function may not suit your needs but it's likely that some
>> variant of it will.
>>
>> This code is inefficient for large groups; for such groups, one can
>> modify the code to only go over conjugacy classes instead of elements.
>>
>> To create such a function, you can either paste the function code in
>> front of the GAP command prompt or include this in a file and then use
>> GAP's "Read" command to read that file in.
>>
>> Vipul
>>
>> * Quoting Sara Radfar who at 2011-01-06 05:14:32+0000 (Thu) wrote
>>> Hi
>>>
>>> I can find the same order elements of a group but can't find the set
>>> of the number of the same order elements of a group.Also how we can
>>> introduce a sporadic simple group to GAP?.For example $CO$.
>>>
>>> Thanks
>>> Sara
>>>
>>> _______________________________________________
>>> Forum mailing list
>>> Forum at mail.gap-system.org
>>> http://mail.gap-system.org/mailman/listinfo/forum
>>
>> _______________________________________________
>> Forum mailing list
>> Forum at mail.gap-system.org
>> http://mail.gap-system.org/mailman/listinfo/forum
>>
>
>
>
> ------------------------------
>
> Message: 4
> Date: Fri, 07 Jan 2011 11:25:42 +0200
> From: Gulin Ercan
> To: forum at gap-system.org
> Subject: [GAP Forum] First Announcement:Workshop on "Finite Groups &
> Their Automorphisms" in Istanbul
> Message-ID: <20110107112542.104653muq7sbzqja at horde.metu.edu.tr>
> Content-Type: text/plain; charset=ISO-8859-9; DelSp="Yes";
> format="flowed"
>
> Dear All,
>
> We would like to announce herewith a five-day workshop on "Finite
> groups and their automorphisms"
> which will take place in Istanbul at Bo?azi?i University on 7-11 June 2011.
>
> It aims to bring together leading mathematicians and active
> researchers working on
> the theory of groups in order to exchange ideas, present new results and
> identify the key problems in the field.
>
> The workshop is especially interested in and motivated by the
> questions on the relationship
> between a finite group and another one acted upon by the first,
> although it is not to be considered the exclusive theme.
>
> There will be seven mini-courses and some invited talks.
> The speakers who have kindly accepted our invitation to give (a short
> series of)lectures are:
>
> Alan Camina, Martin I.Isaacs, Evgeny Khukhro, Charles Leedham-Green,
> Attila Maroti, Nadia Mazza, Akos Seress, Aner Shalev and Said N.Sidki
>
> There will be a limited number of slots available in the schedule for
> contributed talks as well
> and a poster session.
>
> For details and registration please visit the workshop webpage
> http://www.istanbulgroup.metu.edu.tr
>
> We are looking forward to seeing you in Istanbul!!
>
>
>
>
>
>
> ----------------------------------------------------------------
> This message was sent using IMP, the Internet Messaging Program.
>
>
>
>
> ------------------------------
>
> Message: 5
> Date: Fri, 7 Jan 2011 15:58:05 +0000
> From: Alexander Konovalov
> To: bart at mat.ug.edu.pl
> Cc: forum at gap-system.org
> Subject: Re: [GAP Forum] Interface with other languages
> Message-ID: <1D984673-C91C-4F6B-B493-D1843C9E5090 at gmail.com>
> Content-Type: text/plain; charset=us-ascii
>
> Dear Bartosz, dear GAP Forum,
>
> There are already several GAP packages that contain C parts and
> use LoadDynamicModule to load them, so probably to begin with
> you may have a look at them. In no particular order, these packages
> are: orb, linboxing, io, HAP, Gauss, FR, EDIM and Browse.
>
> Best wishes,
> Alexander
>
>
> On 10 Dec 2010, at 14:44, bart at mat.ug.edu.pl wrote:
>
>> W dniu 10.12.2010 10:06, Max Horn pisze:
>>> In addition, GAP can load dynamic modules (again, at least on UNIX type
>> systems). I used that to implement some of the most time critical
>> functions of a package I am working on in C, for a major speed boost. So
>> you could call other systems from within GAP
>>
>> Hello,
>>
>> How to do this?
>> Could I write my own function in C/C++, compile it into library, and use
>> in GAP?
>> I imagine that there could be necessary some types conversions (?)
>>
>> I see LoadDynamicModule() in
>> http://www.gap-system.org/Manuals/doc/htm/ref/CHAP003.htm#SECT007
>> but is it possible to use it with library other than obtained by using
>> gac?
>>
>>
>> All the best
>> Bartosz Putrycz
>
>
>
> ------------------------------
>
> Message: 6
> Date: Sat, 8 Jan 2011 16:31:23 +1100
> From: Hebert P?rez-Ros?s
> To: forum at gap-system.org
> Subject: [GAP Forum] The Add function
> Message-ID:
>
> Content-Type: text/plain; charset=ISO-8859-1
>
> Dear all,
>
> I'm embarrased to say this, but I'm very puzzled by the behaviour of the Add
> function. I have this simple test code:
>
> --------------------------------------
> TestFun:= function(n)
> local perm, out, i;
>
> out:= [];
> perm:= [];
> for i in [1..n] do
> perm[i]:=0;
> od;
> for i in [1..n] do
> perm[i]:= i;
> Add(out, perm);
> od;
> return out;
> end;
> ----------------------------------
>
> If I now make a call to Test(3), I should get [ [1,0,0], [1,2,0], [1,2,3] ],
> right? However, I'm getting [ [1,2,3], [1,2,3], [1,2,3] ]. Do you get the
> same thing? Can anybody explain to me what's happening here?
>
> Thank you very much in advance,
>
> Hebert Perez-Roses
> The University of Newcastle, Australia
>
>
> ------------------------------
>
> Message: 7
> Date: Sat, 8 Jan 2011 14:01:44 +0800
> From: Keshav Rao Kini
> To: Hebert P?rez-Ros?s
> Cc: "forum at gap-system.org"
> Subject: Re: [GAP Forum] The Add function
> Message-ID:
>
> Content-Type: text/plain; charset="utf-8"
>
> Hello,
>
> Each time you use Add, it adds perm as a new list entry in out. It does NOT
> add the current value of perm as a new list entry in out, but rather inserts
> a reference to the list perm. The list perm is added to the list out three
> times, and by the time the function returns, perm = [1,2,3], so out consists
> of three [1,2,3].
>
> If you want to remember previous states of a list, you'll always need to
> make a copy, because this is not done automatically when using functions
> like Add. Try using for example the ShallowCopy function.
>
> Hope that helps.
>
> Yours,
> Keshav
>
> Disclaimer: the boilerplate text at the foot of this email has been added
> automatically by my mail server. This was not done by my request (rather the
> opposite) so please disregard it.
>
>
>
> 2011/1/8 Hebert P?rez-Ros?s
> >
> Dear all,
>
> I'm embarrased to say this, but I'm very puzzled by the behaviour of the Add
> function. I have this simple test code:
>
> --------------------------------------
> TestFun:= function(n)
> local perm, out, i;
>
> out:= [];
> perm:= [];
> for i in [1..n] do
> perm[i]:=0;
> od;
> for i in [1..n] do
> perm[i]:= i;
> Add(out, perm);
> od;
> return out;
> end;
> ----------------------------------
>
> If I now make a call to Test(3), I should get [ [1,0,0], [1,2,0], [1,2,3] ],
> right? However, I'm getting [ [1,2,3], [1,2,3], [1,2,3] ]. Do you get the
> same thing? Can anybody explain to me what's happening here?
>
> Thank you very much in advance,
>
> Hebert Perez-Roses
> The University of Newcastle, Australia
> _______________________________________________
> Forum mailing list
> Forum at mail.gap-system.org
> http://mail.gap-system.org/mailman/listinfo/forum
>
>
> ________________________________
> CONFIDENTIALITY: This email is intended solely for the person(s) named and
> may be confidential and/or privileged. If you are not the intended
> recipient, please delete it, notify us and do not copy, use, or disclose its
> content. Thank you.
>
> Towards A Sustainable Earth: Print Only When Necessary
>
>
> ------------------------------
>
> Message: 8
> Date: Sat, 8 Jan 2011 17:19:17 +1100
> From: Hebert P?rez-Ros?s
> To: Keshav Rao Kini
> Cc: "forum at gap-system.org"
> Subject: Re: [GAP Forum] The Add function
> Message-ID:
>
> Content-Type: text/plain; charset=ISO-8859-1
>
> OK, thank you very much. I would just swear that I had already tried that.
> Cheers,
> Hebert.
>
>
> 2011/1/8 Keshav Rao Kini
>
>> Hello,
>>
>> Each time you use Add, it adds perm as a new list entry in out. It does
>> NOT
>> add the current value of perm as a new list entry in out, but rather
>> inserts
>> a reference to the list perm. The list perm is added to the list out three
>> times, and by the time the function returns, perm = [1,2,3], so out
>> consists
>> of three [1,2,3].
>>
>> If you want to remember previous states of a list, you'll always need to
>> make a copy, because this is not done automatically when using functions
>> like Add. Try using for example the ShallowCopy function.
>>
>> Hope that helps.
>>
>> Yours,
>> Keshav
>>
>> Disclaimer: the boilerplate text at the foot of this email has been added
>> automatically by my mail server. This was not done by my request (rather
>> the
>> opposite) so please disregard it.
>>
>>
>>
>> 2011/1/8 Hebert P?rez-Ros?s
>>
>>> Dear all,
>>>
>>> I'm embarrased to say this, but I'm very puzzled by the behaviour of the
>>> Add
>>> function. I have this simple test code:
>>>
>>> --------------------------------------
>>> TestFun:= function(n)
>>> local perm, out, i;
>>>
>>> out:= [];
>>> perm:= [];
>>> for i in [1..n] do
>>> perm[i]:=0;
>>> od;
>>> for i in [1..n] do
>>> perm[i]:= i;
>>> Add(out, perm);
>>> od;
>>> return out;
>>> end;
>>> ----------------------------------
>>>
>>> If I now make a call to Test(3), I should get [ [1,0,0], [1,2,0], [1,2,3]
>>> ],
>>> right? However, I'm getting [ [1,2,3], [1,2,3], [1,2,3] ]. Do you get the
>>> same thing? Can anybody explain to me what's happening here?
>>>
>>> Thank you very much in advance,
>>>
>>> Hebert Perez-Roses
>>> The University of Newcastle, Australia
>>> _______________________________________________
>>> Forum mailing list
>>> Forum at mail.gap-system.org
>>> http://mail.gap-system.org/mailman/listinfo/forum
>>>
>>
>>
>> ------------------------------
>> CONFIDENTIALITY: This email is intended solely for the person(s) named and
>> may be confidential and/or privileged. If you are not the intended
>> recipient, please delete it, notify us and do not copy, use, or disclose
>> its
>> content. Thank you.
>>
>> Towards A Sustainable Earth: Print Only When Necessary
>>
>
>
> ------------------------------
>
> Message: 9
> Date: Sun, 9 Jan 2011 00:32:23 -0800
> From: Sara Radfar
> To: forum at gap-system.org
> Subject: [GAP Forum] Question
> Message-ID:
>
> Content-Type: text/plain; charset=ISO-8859-1
>
> Dear forum
> Hi
> I have a question about group theory.I know that should send this
> message for group pub forum but I coudn't join to it.If you can help
> me about my question:
> My question is:Let the set of the number of sylow subgroup $G$ equal
> to group $PSL(2,7)$(that is {8,21,28}) about solvability or
> unsolvability group $G$ what we can say?
> Thanks
> sara
>
>
>
> ------------------------------
>
> _______________________________________________
> Forum mailing list
> Forum at mail.gap-system.org
> http://mail.gap-system.org/mailman/listinfo/forum
>
>
> End of Forum Digest, Vol 86, Issue 2
> ************************************
>
--
zahra sheikhaleslami
From zahra.sheikhaleslami at gmail.com Sun Jan 9 08:50:47 2011
From: zahra.sheikhaleslami at gmail.com (zahra sheikhaleslami)
Date: Sun, 9 Jan 2011 12:20:47 +0330
Subject: [GAP Forum] Forum Digest, Vol 86, Issue 2
In-Reply-To:
References:
Message-ID:
let H1,H2
be characteristic subgroupsof a given group
G=H1?H2
?then
K(H1?H2)=K(H1)?K(H2)
please give with gap
i need
On 1/9/11, zahra sheikhaleslami wrote:
> hi
> please write this theorem with gap
>
> if G,H are finite groups with (IGI,IHI)=1then
> Aut(G?H)=Aut(G)?Aut(H)
>
> On 1/9/11, forum-request at gap-system.org
> wrote:
>> Send Forum mailing list submissions to
>> forum at mail.gap-system.org
>>
>> To subscribe or unsubscribe via the World Wide Web, visit
>> http://mail.gap-system.org/mailman/listinfo/forum
>> or, via email, send a message with subject or body 'help' to
>> forum-request at mail.gap-system.org
>>
>> You can reach the person managing the list at
>> forum-owner at mail.gap-system.org
>>
>> When replying, please edit your Subject line so it is more specific
>> than "Re: Contents of Forum digest..."
>>
>>
>> Today's Topics:
>>
>> 1. Help (Sara Radfar)
>> 2. Re: Help (Vipul Naik)
>> 3. Re: Help (Dr. Ashish Kumar Das)
>> 4. First Announcement:Workshop on "Finite Groups & Their
>> Automorphisms" in Istanbul (Gulin Ercan)
>> 5. Re: Interface with other languages (Alexander Konovalov)
>> 6. The Add function (Hebert P?rez-Ros?s)
>> 7. Re: The Add function (Keshav Rao Kini)
>> 8. Re: The Add function (Hebert P?rez-Ros?s)
>> 9. Question (Sara Radfar)
>>
>>
>> ----------------------------------------------------------------------
>>
>> Message: 1
>> Date: Thu, 6 Jan 2011 05:14:32 -0800
>> From: Sara Radfar
>> To: forum
>> Subject: [GAP Forum] Help
>> Message-ID:
>>
>> Content-Type: text/plain; charset=ISO-8859-1
>>
>> Hi
>>
>> I can find the same order elements of a group but can't find the set
>> of the number of the same order elements of a group.Also how we can
>> introduce a sporadic simple group to GAP?.For example $CO$.
>>
>> Thanks
>> Sara
>>
>>
>>
>> ------------------------------
>>
>> Message: 2
>> Date: Thu, 6 Jan 2011 20:22:04 -0600
>> From: Vipul Naik
>> To: Sara Radfar
>> Cc: forum
>> Subject: Re: [GAP Forum] Help
>> Message-ID: <20110107022204.GA16678 at math.uchicago.edu>
>> Content-Type: text/plain; charset=us-ascii
>>
>> Hi,
>>
>> If I understand your question correctly, you want information on how
>> many elements of a finite group have each possible order. Although I
>> don't think there are built-in functions for this, it is easy to write
>> code for these. For instance:
>>
>> OrderStatisticsPaired := function(G)
>> local L,D;
>> L := List(Set(G),Order);
>> D := DivisorsInt(Order(G));
>> return(List(D,x->[x,Length(Filtered(L,y->x=y))]));
>> end;;
>>
>> This function takes as input a group and gives a list of ordered
>> pairs, for each divisor of the order of the group, how many elements
>> of the group have that order. For instance:
>>
>> OrderStatisticsPaired(SymmetricGroup(4))
>>
>> gives the output:
>>
>> [ [ 1, 1 ], [ 2, 9 ], [ 3, 8 ], [ 4, 6 ], [ 6, 0 ], [ 8, 0 ], [ 12, 0 ],
>> [
>> 24, 0 ] ]
>>
>> indicating that in the symmetric group on four letters, there is one
>> element of the group of order one, nine elements of order two, eight
>> elements of order three, six elements of order four, and no element of
>> any higher order.
>>
>> This exact function may not suit your needs but it's likely that some
>> variant of it will.
>>
>> This code is inefficient for large groups; for such groups, one can
>> modify the code to only go over conjugacy classes instead of elements.
>>
>> To create such a function, you can either paste the function code in
>> front of the GAP command prompt or include this in a file and then use
>> GAP's "Read" command to read that file in.
>>
>> Vipul
>>
>> * Quoting Sara Radfar who at 2011-01-06 05:14:32+0000 (Thu) wrote
>>> Hi
>>>
>>> I can find the same order elements of a group but can't find the set
>>> of the number of the same order elements of a group.Also how we can
>>> introduce a sporadic simple group to GAP?.For example $CO$.
>>>
>>> Thanks
>>> Sara
>>>
>>> _______________________________________________
>>> Forum mailing list
>>> Forum at mail.gap-system.org
>>> http://mail.gap-system.org/mailman/listinfo/forum
>>
>>
>>
>> ------------------------------
>>
>> Message: 3
>> Date: Fri, 7 Jan 2011 10:02:53 +0530
>> From: "Dr. Ashish Kumar Das"
>> To: Vipul Naik
>> Cc: Sara Radfar , forum
>> Subject: Re: [GAP Forum] Help
>> Message-ID:
>>
>> Content-Type: text/plain; charset=ISO-8859-1
>>
>> Hi,
>> How about running the following program:
>>
>>
>> n:=90; # try with other values
>> i:=0;
>> Print("GROUP ORDER is ", " ", n, "\n");
>> g:= AllSmallGroups(n);
>> for xx in g do
>> i:=i+1;
>> Print( "\n", "SMALL GROUP", "(" , n, "," , i, ") =
>> ",StructureDescription(xx), "\n","\n");
>> yy:= Set(List(xx,Order));
>> for y in yy do
>> zz:= Number(xx, x -> Order(x)=y);
>> Print("order = ", y, " ", "number of elts = ", zz, "\n", "\n"); od;
>> od;
>>
>> Ashish Kumar Das
>> Maths Dept.
>> NEHU, Shillong, INDIA
>>
>> On 1/7/11, Vipul Naik wrote:
>>> Hi,
>>>
>>> If I understand your question correctly, you want information on how
>>> many elements of a finite group have each possible order. Although I
>>> don't think there are built-in functions for this, it is easy to write
>>> code for these. For instance:
>>>
>>> OrderStatisticsPaired := function(G)
>>> local L,D;
>>> L := List(Set(G),Order);
>>> D := DivisorsInt(Order(G));
>>> return(List(D,x->[x,Length(Filtered(L,y->x=y))]));
>>> end;;
>>>
>>> This function takes as input a group and gives a list of ordered
>>> pairs, for each divisor of the order of the group, how many elements
>>> of the group have that order. For instance:
>>>
>>> OrderStatisticsPaired(SymmetricGroup(4))
>>>
>>> gives the output:
>>>
>>> [ [ 1, 1 ], [ 2, 9 ], [ 3, 8 ], [ 4, 6 ], [ 6, 0 ], [ 8, 0 ], [ 12, 0 ],
>>> [
>>> 24, 0 ] ]
>>>
>>> indicating that in the symmetric group on four letters, there is one
>>> element of the group of order one, nine elements of order two, eight
>>> elements of order three, six elements of order four, and no element of
>>> any higher order.
>>>
>>> This exact function may not suit your needs but it's likely that some
>>> variant of it will.
>>>
>>> This code is inefficient for large groups; for such groups, one can
>>> modify the code to only go over conjugacy classes instead of elements.
>>>
>>> To create such a function, you can either paste the function code in
>>> front of the GAP command prompt or include this in a file and then use
>>> GAP's "Read" command to read that file in.
>>>
>>> Vipul
>>>
>>> * Quoting Sara Radfar who at 2011-01-06 05:14:32+0000 (Thu) wrote
>>>> Hi
>>>>
>>>> I can find the same order elements of a group but can't find the set
>>>> of the number of the same order elements of a group.Also how we can
>>>> introduce a sporadic simple group to GAP?.For example $CO$.
>>>>
>>>> Thanks
>>>> Sara
>>>>
>>>> _______________________________________________
>>>> Forum mailing list
>>>> Forum at mail.gap-system.org
>>>> http://mail.gap-system.org/mailman/listinfo/forum
>>>
>>> _______________________________________________
>>> Forum mailing list
>>> Forum at mail.gap-system.org
>>> http://mail.gap-system.org/mailman/listinfo/forum
>>>
>>
>>
>>
>> ------------------------------
>>
>> Message: 4
>> Date: Fri, 07 Jan 2011 11:25:42 +0200
>> From: Gulin Ercan
>> To: forum at gap-system.org
>> Subject: [GAP Forum] First Announcement:Workshop on "Finite Groups &
>> Their Automorphisms" in Istanbul
>> Message-ID: <20110107112542.104653muq7sbzqja at horde.metu.edu.tr>
>> Content-Type: text/plain; charset=ISO-8859-9; DelSp="Yes";
>> format="flowed"
>>
>> Dear All,
>>
>> We would like to announce herewith a five-day workshop on "Finite
>> groups and their automorphisms"
>> which will take place in Istanbul at Bo?azi?i University on 7-11 June
>> 2011.
>>
>> It aims to bring together leading mathematicians and active
>> researchers working on
>> the theory of groups in order to exchange ideas, present new results and
>> identify the key problems in the field.
>>
>> The workshop is especially interested in and motivated by the
>> questions on the relationship
>> between a finite group and another one acted upon by the first,
>> although it is not to be considered the exclusive theme.
>>
>> There will be seven mini-courses and some invited talks.
>> The speakers who have kindly accepted our invitation to give (a short
>> series of)lectures are:
>>
>> Alan Camina, Martin I.Isaacs, Evgeny Khukhro, Charles Leedham-Green,
>> Attila Maroti, Nadia Mazza, Akos Seress, Aner Shalev and Said N.Sidki
>>
>> There will be a limited number of slots available in the schedule for
>> contributed talks as well
>> and a poster session.
>>
>> For details and registration please visit the workshop webpage
>> http://www.istanbulgroup.metu.edu.tr
>>
>> We are looking forward to seeing you in Istanbul!!
>>
>>
>>
>>
>>
>>
>> ----------------------------------------------------------------
>> This message was sent using IMP, the Internet Messaging Program.
>>
>>
>>
>>
>> ------------------------------
>>
>> Message: 5
>> Date: Fri, 7 Jan 2011 15:58:05 +0000
>> From: Alexander Konovalov
>> To: bart at mat.ug.edu.pl
>> Cc: forum at gap-system.org
>> Subject: Re: [GAP Forum] Interface with other languages
>> Message-ID: <1D984673-C91C-4F6B-B493-D1843C9E5090 at gmail.com>
>> Content-Type: text/plain; charset=us-ascii
>>
>> Dear Bartosz, dear GAP Forum,
>>
>> There are already several GAP packages that contain C parts and
>> use LoadDynamicModule to load them, so probably to begin with
>> you may have a look at them. In no particular order, these packages
>> are: orb, linboxing, io, HAP, Gauss, FR, EDIM and Browse.
>>
>> Best wishes,
>> Alexander
>>
>>
>> On 10 Dec 2010, at 14:44, bart at mat.ug.edu.pl wrote:
>>
>>> W dniu 10.12.2010 10:06, Max Horn pisze:
>>>> In addition, GAP can load dynamic modules (again, at least on UNIX type
>>> systems). I used that to implement some of the most time critical
>>> functions of a package I am working on in C, for a major speed boost.
>>> So
>>> you could call other systems from within GAP
>>>
>>> Hello,
>>>
>>> How to do this?
>>> Could I write my own function in C/C++, compile it into library, and use
>>> in GAP?
>>> I imagine that there could be necessary some types conversions (?)
>>>
>>> I see LoadDynamicModule() in
>>> http://www.gap-system.org/Manuals/doc/htm/ref/CHAP003.htm#SECT007
>>> but is it possible to use it with library other than obtained by using
>>> gac?
>>>
>>>
>>> All the best
>>> Bartosz Putrycz
>>
>>
>>
>> ------------------------------
>>
>> Message: 6
>> Date: Sat, 8 Jan 2011 16:31:23 +1100
>> From: Hebert P?rez-Ros?s
>> To: forum at gap-system.org
>> Subject: [GAP Forum] The Add function
>> Message-ID:
>>
>> Content-Type: text/plain; charset=ISO-8859-1
>>
>> Dear all,
>>
>> I'm embarrased to say this, but I'm very puzzled by the behaviour of the
>> Add
>> function. I have this simple test code:
>>
>> --------------------------------------
>> TestFun:= function(n)
>> local perm, out, i;
>>
>> out:= [];
>> perm:= [];
>> for i in [1..n] do
>> perm[i]:=0;
>> od;
>> for i in [1..n] do
>> perm[i]:= i;
>> Add(out, perm);
>> od;
>> return out;
>> end;
>> ----------------------------------
>>
>> If I now make a call to Test(3), I should get [ [1,0,0], [1,2,0], [1,2,3]
>> ],
>> right? However, I'm getting [ [1,2,3], [1,2,3], [1,2,3] ]. Do you get the
>> same thing? Can anybody explain to me what's happening here?
>>
>> Thank you very much in advance,
>>
>> Hebert Perez-Roses
>> The University of Newcastle, Australia
>>
>>
>> ------------------------------
>>
>> Message: 7
>> Date: Sat, 8 Jan 2011 14:01:44 +0800
>> From: Keshav Rao Kini
>> To: Hebert P?rez-Ros?s
>> Cc: "forum at gap-system.org"
>> Subject: Re: [GAP Forum] The Add function
>> Message-ID:
>>
>> Content-Type: text/plain; charset="utf-8"
>>
>> Hello,
>>
>> Each time you use Add, it adds perm as a new list entry in out. It does
>> NOT
>> add the current value of perm as a new list entry in out, but rather
>> inserts
>> a reference to the list perm. The list perm is added to the list out
>> three
>> times, and by the time the function returns, perm = [1,2,3], so out
>> consists
>> of three [1,2,3].
>>
>> If you want to remember previous states of a list, you'll always need to
>> make a copy, because this is not done automatically when using functions
>> like Add. Try using for example the ShallowCopy function.
>>
>> Hope that helps.
>>
>> Yours,
>> Keshav
>>
>> Disclaimer: the boilerplate text at the foot of this email has been added
>> automatically by my mail server. This was not done by my request (rather
>> the
>> opposite) so please disregard it.
>>
>>
>>
>> 2011/1/8 Hebert P?rez-Ros?s
>> >
>> Dear all,
>>
>> I'm embarrased to say this, but I'm very puzzled by the behaviour of the
>> Add
>> function. I have this simple test code:
>>
>> --------------------------------------
>> TestFun:= function(n)
>> local perm, out, i;
>>
>> out:= [];
>> perm:= [];
>> for i in [1..n] do
>> perm[i]:=0;
>> od;
>> for i in [1..n] do
>> perm[i]:= i;
>> Add(out, perm);
>> od;
>> return out;
>> end;
>> ----------------------------------
>>
>> If I now make a call to Test(3), I should get [ [1,0,0], [1,2,0], [1,2,3]
>> ],
>> right? However, I'm getting [ [1,2,3], [1,2,3], [1,2,3] ]. Do you get the
>> same thing? Can anybody explain to me what's happening here?
>>
>> Thank you very much in advance,
>>
>> Hebert Perez-Roses
>> The University of Newcastle, Australia
>> _______________________________________________
>> Forum mailing list
>> Forum at mail.gap-system.org
>> http://mail.gap-system.org/mailman/listinfo/forum
>>
>>
>> ________________________________
>> CONFIDENTIALITY: This email is intended solely for the person(s) named
>> and
>> may be confidential and/or privileged. If you are not the intended
>> recipient, please delete it, notify us and do not copy, use, or disclose
>> its
>> content. Thank you.
>>
>> Towards A Sustainable Earth: Print Only When Necessary
>>
>>
>> ------------------------------
>>
>> Message: 8
>> Date: Sat, 8 Jan 2011 17:19:17 +1100
>> From: Hebert P?rez-Ros?s
>> To: Keshav Rao Kini
>> Cc: "forum at gap-system.org"
>> Subject: Re: [GAP Forum] The Add function
>> Message-ID:
>>
>> Content-Type: text/plain; charset=ISO-8859-1
>>
>> OK, thank you very much. I would just swear that I had already tried
>> that.
>> Cheers,
>> Hebert.
>>
>>
>> 2011/1/8 Keshav Rao Kini
>>
>>> Hello,
>>>
>>> Each time you use Add, it adds perm as a new list entry in out. It does
>>> NOT
>>> add the current value of perm as a new list entry in out, but rather
>>> inserts
>>> a reference to the list perm. The list perm is added to the list out
>>> three
>>> times, and by the time the function returns, perm = [1,2,3], so out
>>> consists
>>> of three [1,2,3].
>>>
>>> If you want to remember previous states of a list, you'll always need to
>>> make a copy, because this is not done automatically when using functions
>>> like Add. Try using for example the ShallowCopy function.
>>>
>>> Hope that helps.
>>>
>>> Yours,
>>> Keshav
>>>
>>> Disclaimer: the boilerplate text at the foot of this email has been
>>> added
>>> automatically by my mail server. This was not done by my request (rather
>>> the
>>> opposite) so please disregard it.
>>>
>>>
>>>
>>> 2011/1/8 Hebert P?rez-Ros?s
>>>
>>>> Dear all,
>>>>
>>>> I'm embarrased to say this, but I'm very puzzled by the behaviour of
>>>> the
>>>> Add
>>>> function. I have this simple test code:
>>>>
>>>> --------------------------------------
>>>> TestFun:= function(n)
>>>> local perm, out, i;
>>>>
>>>> out:= [];
>>>> perm:= [];
>>>> for i in [1..n] do
>>>> perm[i]:=0;
>>>> od;
>>>> for i in [1..n] do
>>>> perm[i]:= i;
>>>> Add(out, perm);
>>>> od;
>>>> return out;
>>>> end;
>>>> ----------------------------------
>>>>
>>>> If I now make a call to Test(3), I should get [ [1,0,0], [1,2,0],
>>>> [1,2,3]
>>>> ],
>>>> right? However, I'm getting [ [1,2,3], [1,2,3], [1,2,3] ]. Do you get
>>>> the
>>>> same thing? Can anybody explain to me what's happening here?
>>>>
>>>> Thank you very much in advance,
>>>>
>>>> Hebert Perez-Roses
>>>> The University of Newcastle, Australia
>>>> _______________________________________________
>>>> Forum mailing list
>>>> Forum at mail.gap-system.org
>>>> http://mail.gap-system.org/mailman/listinfo/forum
>>>>
>>>
>>>
>>> ------------------------------
>>> CONFIDENTIALITY: This email is intended solely for the person(s) named
>>> and
>>> may be confidential and/or privileged. If you are not the intended
>>> recipient, please delete it, notify us and do not copy, use, or disclose
>>> its
>>> content. Thank you.
>>>
>>> Towards A Sustainable Earth: Print Only When Necessary
>>>
>>
>>
>> ------------------------------
>>
>> Message: 9
>> Date: Sun, 9 Jan 2011 00:32:23 -0800
>> From: Sara Radfar
>> To: forum at gap-system.org
>> Subject: [GAP Forum] Question
>> Message-ID:
>>
>> Content-Type: text/plain; charset=ISO-8859-1
>>
>> Dear forum
>> Hi
>> I have a question about group theory.I know that should send this
>> message for group pub forum but I coudn't join to it.If you can help
>> me about my question:
>> My question is:Let the set of the number of sylow subgroup $G$ equal
>> to group $PSL(2,7)$(that is {8,21,28}) about solvability or
>> unsolvability group $G$ what we can say?
>> Thanks
>> sara
>>
>>
>>
>> ------------------------------
>>
>> _______________________________________________
>> Forum mailing list
>> Forum at mail.gap-system.org
>> http://mail.gap-system.org/mailman/listinfo/forum
>>
>>
>> End of Forum Digest, Vol 86, Issue 2
>> ************************************
>>
>
>
> --
> zahra sheikhaleslami
>
--
zahra sheikhaleslami
From paloff at ya.ru Mon Jan 10 10:55:26 2011
From: paloff at ya.ru (Igor Korepanov)
Date: Mon, 10 Jan 2011 13:55:26 +0300
Subject: [GAP Forum] PL ball complexes with GAP
Message-ID: <605451294656926@web73.yandex.ru>
Dear all,
Recently, some young people and I started a project that may be called "Piecewise-linear ball complexes: calculations with GAP". As to me, my direct aim is to make calculations in some TQFT's (topological quantum field theories) naturally defined on PL ball complexes of any dimensions. I think, however, that calculations with PL ball complexes may be of broader interest.
So, I invite interested mathematicians to work together. As far as I know, great mathematicians of the past liked calculations, and did not limit themselves to scratching something on themselves and waiting for a flash of genius.
Some first programs/functions are already written. I will give a more detailed account of this if needed. Right now let me just explain how we represent a PL ball complex.
First, we assume that all vertices in the complex are numbered (from 1 to their total number N_0). Hence, in this sense, the 0-skeleton of the complex is described. Next, assuming that the k-skeleton is already given, which implies (in particular) the numeration of all k-cells, we describe the (k+1)-skeleton as the list of all (k+1)-cells, each of which, in its turn, is the set of numbers of k-cells in its boundary. Then we compose the list of length n, where n - is the dimension of the complex, whose elements are lists of 1-, ..., n-cells.
Thus, a three-dimensional ball B^3 can be represented by the following PL ball complex with two vertices 1 and 2:
[
??[ [1,2], [1,2] ], # two one-dimensional simplexes, each with
????????????????????# ends 1 and 2, of which the first is referred to
????????????????????# in the next line as 1, the second - as 2;
??[ [1,2], [1,2] ], # two digons (=bigons) bounded each by
????????????????????# one-dimensional simplexes 1 and 2;
??[ [1,2] ] ????????# the three-ball bounded by digons 1 and 2
]
With the best New Year wishes,
Igor Korepanov
From paloff at ya.ru Mon Jan 10 13:56:58 2011
From: paloff at ya.ru (Igor Korepanov)
Date: Mon, 10 Jan 2011 16:56:58 +0300
Subject: [GAP Forum] PL ball complexes with GAP
In-Reply-To: <605451294656926@web73.yandex.ru>
References: <605451294656926@web73.yandex.ru>
Message-ID: <386261294667818@web77.yandex.ru>
Perhaps it will be of use if I add here what "PL ball complex" means, just a quotation from Nikolai Mnev's paper arXiv:math/0609257v3 :
A PL-ball complex is a pair (X, U), where X is a compact Euclidean polyhedron and U is a covering of X by closed PL-balls such that the following axioms are satisfied:
plbc1: the relative interiors of balls from U form a partition of X.
plbc2: The boundary of each ball from U is a union of balls from U.
A PL-ball complex is defined up to PL-homeomorphism only by the combinatorics of adjunctions of its balls.
Igor
10.01.2011, 15:42, "Igor Korepanov" :
> Dear all,
>
> Recently, some young people and I started a project that may be called "Piecewise-linear ball complexes: calculations with GAP". As to me, my direct aim is to make calculations in some TQFT's (topological quantum field theories) naturally defined on PL ball complexes of any dimensions. I think, however, that calculations with PL ball complexes may be of broader interest.
>
> So, I invite interested mathematicians to work together. As far as I know, great mathematicians of the past liked calculations, and did not limit themselves to scratching something on themselves and waiting for a flash of genius.
>
> Some first programs/functions are already written. I will give a more detailed account of this if needed. Right now let me just explain how we represent a PL ball complex.
>
> First, we assume that all vertices in the complex are numbered (from 1 to their total number N_0). Hence, in this sense, the 0-skeleton of the complex is described. Next, assuming that the k-skeleton is already given, which implies (in particular) the numeration of all k-cells, we describe the (k+1)-skeleton as the list of all (k+1)-cells, each of which, in its turn, is the set of numbers of k-cells in its boundary. Then we compose the list of length n, where n - is the dimension of the complex, whose elements are lists of 1-, ..., n-cells.
>
> Thus, a three-dimensional ball B^3 can be represented by the following PL ball complex with two vertices 1 and 2:
>
> [
> ??[ [1,2], [1,2] ], # two one-dimensional simplexes, each with
> ????????????????????# ends 1 and 2, of which the first is referred to
> ????????????????????# in the next line as 1, the second - as 2;
> ??[ [1,2], [1,2] ], # two digons (=bigons) bounded each by
> ????????????????????# one-dimensional simplexes 1 and 2;
> ??[ [1,2] ] ????????# the three-ball bounded by digons 1 and 2
> ]
>
> With the best New Year wishes,
>
> Igor Korepanov
>
> _______________________________________________
> Forum mailing list
> Forum at mail.gap-system.org
> http://mail.gap-system.org/mailman/listinfo/forum
From packham25 at gmail.com Tue Jan 11 23:44:28 2011
From: packham25 at gmail.com (Pornrat Ruengrot)
Date: Tue, 11 Jan 2011 23:44:28 +0000
Subject: [GAP Forum] Looping over (double)coset representatives without
creating the WHOLE list first
Message-ID:
Hi,
I have the following problem related to programming in GAP, hoping someone
could help please.
Let G be a permutation group.
Let P be the subgroup of G consisting of all "perfect" permutations in G.
The goal is to find P explicitly.
For this it's enough to check only the (double)coset representatives, since
if P is a subgroup of
perfect permutations found so far and g (in G) is not perfect, then so is
every element in PgP. So
part of my codes is as follow:
#---------------------------------------------------------------------------------------------------
P:=Subgroup(G,[]); #set P = trivial first
D:=DoubleCosetRepsAndSizes(G, P, P); # create list of double coset
representatives to be checked
i:=2; # skip checking the identity D[1][1]
While i <= Size(D) and Size(P) < Size(G) do
x:=D[i][1];
if (x is perfect) then
P:=ClosureSubgroup(G,x); # add x in the subgroup P
D:=DoubleCosetRepsAndSizes(G, P, P); #create new representatives to be
tested
i:=2; #skip checking the identity;
else
i:=i+1;
fi;
od;
#---------------------------------------------------------------------------------------------------
The group P will grow over time so the list D will be smaller and smaller.
If we are lucky we don't
even need to run over all elements in D because P could be G. But the
problem is that, the
permutation group G is usually very large so the command
D:=DoubleCosetRepsAndSizes(G, P, P);
takes a very long time (sometime even returns error due to not enough
memory).
I think it's because the program is trying to build the whole list D first
before running over each
element. But I just want the program to start right away without building
the whole list first. For
example it can choose a random first element then at the end of the loop
find the next (random)
representative and so on.
In Magma there is the command TransversalProcess(G, H)
http://magma.maths.usyd.edu.au/magma/handbook/text/571 that will do just
that .
I was wondering if there is a similar command in GAP?
(I also tried the build-in command SubgroupByProperty. This gave me the
answer almost instantly,
but when trying to list all elements, it took a very long time.)
Thank you for your time,
Pornrat
From bsambale at gmx.de Wed Jan 12 07:51:24 2011
From: bsambale at gmx.de (Benjamin Sambale)
Date: Wed, 12 Jan 2011 08:51:24 +0100
Subject: [GAP Forum] Looping over (double)coset representatives without
creating the WHOLE list first
In-Reply-To:
References:
Message-ID: <4D2D5D7C.4000108@gmx.de>
Am 12.01.2011 00:44, schrieb Pornrat Ruengrot:
> I think it's because the program is trying to build the whole list D first
> before running over each
> element. But I just want the program to start right away without building
> the whole list first. For
> example it can choose a random first element then at the end of the loop
> find the next (random)
> representative and so on.
Hi,
maybe the following code is helpful:
D:=G;
while ... do
x:=Random(D);
D:=Difference(D,DoubleCoset(P,x,P));
od;
Best wishes,
Benjamin Sambale
From paloff at ya.ru Wed Jan 12 10:59:30 2011
From: paloff at ya.ru (Igor Korepanov)
Date: Wed, 12 Jan 2011 13:59:30 +0300
Subject: [GAP Forum] advice needed
Message-ID: <67731294829971@web105.yandex.ru>
Dear GAP experts,
I need some advice. My team is writing some GAP functions, for our private calculations (although I already invited people to cooperate, see my previous posts). Generally, one function is contained in a file like "FunctionSoAndSo.g", and such file usually has some lines like Read("AnotherFuction.g"); in its beginning. There are also some embryo data bases containing description of objects we are working with.
The question is: how should we organize all this (put in different folders, whatever), if our ambition is to make all this eventually helpful for other interested people? But in such manner which won't force us to become at once GAP grand masters?
Thanks in advance,
Igor
From gordon at maths.uwa.edu.au Wed Jan 12 12:04:13 2011
From: gordon at maths.uwa.edu.au (Gordon Royle)
Date: Wed, 12 Jan 2011 20:04:13 +0800
Subject: [GAP Forum] Computing "canonical" subsets
Message-ID: <6BADD7AA-47FA-4E23-B5AA-0098CA794189@maths.uwa.edu.au>
Dear Gapsters..
Consider the following generic problem... given a permutation group G acting on a set X, I have a (potentially) large collection of k-subsets of X and wish to keep only one representative of each G-orbit on k-subsets.
GAP can tell me if two k-subsets are equivalent under G using RepresentativeAction and so in principle, I can build up a list by starting with the first one, then testing to see if the second is equivalent to the first and keeping it only if it is not, and so on. This works, but each new one requires one more test than the previous one and things rapidly become unmanageable.
For winnowing large lists of graphs, the standard procedure is not to test them pairwise but rather to compute a "canonically labelled" version of each input graph and then simply throw out the duplicates...
Is there any way of computing a "canonically labelled" version of each k-subset? Or is this well known to be more difficult than computing equivalence?
Thanks
Gordon
From hebert.perez at gmail.com Wed Jan 12 12:04:45 2011
From: hebert.perez at gmail.com (=?ISO-8859-1?B?SGViZXJ0IFDpcmV6LVJvc+lz?=)
Date: Wed, 12 Jan 2011 23:04:45 +1100
Subject: [GAP Forum] advice needed
In-Reply-To: <67731294829971@web105.yandex.ru>
References: <67731294829971@web105.yandex.ru>
Message-ID:
Hi Igor,
I'm not an expert either, but I think that the best option is to create a
GAP package, that could later be used by yourselves and other people. There
are some directions and an example package in
http://www.gap-system.org/Packages/Authors/authors.html
Best regards,
Hebert Perez-Roses
The University of Newcastle, Australia
2011/1/12 Igor Korepanov
> Dear GAP experts,
>
> I need some advice. My team is writing some GAP functions, for our private
> calculations (although I already invited people to cooperate, see my
> previous posts). Generally, one function is contained in a file like
> "FunctionSoAndSo.g", and such file usually has some lines like
> Read("AnotherFuction.g"); in its beginning. There are also some embryo data
> bases containing description of objects we are working with.
>
> The question is: how should we organize all this (put in different folders,
> whatever), if our ambition is to make all this eventually helpful for other
> interested people? But in such manner which won't force us to become at once
> GAP grand masters?
>
> Thanks in advance,
>
> Igor
>
> _______________________________________________
> Forum mailing list
> Forum at mail.gap-system.org
> http://mail.gap-system.org/mailman/listinfo/forum
>
From Mathieu.Dutour at ens.fr Wed Jan 12 12:21:43 2011
From: Mathieu.Dutour at ens.fr (Mathieu Dutour)
Date: Wed, 12 Jan 2011 13:21:43 +0100
Subject: [GAP Forum] Computing "canonical" subsets
In-Reply-To: <6BADD7AA-47FA-4E23-B5AA-0098CA794189@maths.uwa.edu.au>
References: <6BADD7AA-47FA-4E23-B5AA-0098CA794189@maths.uwa.edu.au>
Message-ID: <20110112122143.GA1560@orge.ens.fr>
As far as I know, once you have a backtracking algorithm
for equivalence/stabilizer, then you have also an algorithm
for canonical representative.
But GAP does not provides such functionalities ...
However, for the special action "OnSets", there is a function
"SmallestImageSet" available from the GRAPE package that does
the job.
Mathieu
On Wed, Jan 12, 2011 at 08:04:13PM +0800, Gordon Royle wrote:
>> Dear Gapsters..
>>
>> Consider the following generic problem... given a permutation group
>> G acting on a set X, I have a (potentially) large collection of
>> k-subsets of X and wish to keep only one representative of each
>> G-orbit on k-subsets.
>>
>> GAP can tell me if two k-subsets are equivalent under G using
>> RepresentativeAction and so in principle, I can build up a list
>> by starting with the first one, then testing to see if the second
>> is equivalent to the first and keeping it only if it is not, and
>> so on. This works, but each new one requires one more test than
>> the previous one and things rapidly become unmanageable.
>>
>> For winnowing large lists of graphs, the standard procedure is
>> not to test them pairwise but rather to compute a "canonically
>> labelled" version of each input graph and then simply throw out
>> the duplicates...
>>
>> Is there any way of computing a "canonically labelled" version
>> of each k-subset? Or is this well known to be more difficult
>> than computing equivalence?
>>
>> Thanks
>>
>> Gordon
>> _______________________________________________
>> Forum mailing list
>> Forum at mail.gap-system.org
>> http://mail.gap-system.org/mailman/listinfo/forum
From hebert.perez at gmail.com Wed Jan 12 12:28:28 2011
From: hebert.perez at gmail.com (=?ISO-8859-1?B?SGViZXJ0IFDpcmV6LVJvc+lz?=)
Date: Wed, 12 Jan 2011 23:28:28 +1100
Subject: [GAP Forum] Computing "canonical" subsets
In-Reply-To: <6BADD7AA-47FA-4E23-B5AA-0098CA794189@maths.uwa.edu.au>
References: <6BADD7AA-47FA-4E23-B5AA-0098CA794189@maths.uwa.edu.au>
Message-ID:
Dear Gordon,
I'm not sure that I understand your problem correctly, but I will tell you
what I think, and you tell me if that's a (possible) answer to your
question:
If you can define a total ordering on the set of k-subsets, then the
canonical form of a particular k-subset A is the smallest k-subset B in the
G-orbit of A. Now you can generate all possible k-subsets in increasing
order, and for each new k-subset A, you don't have to compare it with every
previous one: you just have to compute the G-orbit of A, and check whether
there is a k-subset C in the G-orbit of A, that is smaller than A. In that
case, you can be sure that A has been considered before, and you can discard
it.
At first sight this looks more efficient than the other approach, but I
cannot guarantee that :-).
Best regards,
Hebert.
2011/1/12 Gordon Royle
> Dear Gapsters..
>
> Consider the following generic problem... given a permutation group G
> acting on a set X, I have a (potentially) large collection of k-subsets of X
> and wish to keep only one representative of each G-orbit on k-subsets.
>
> GAP can tell me if two k-subsets are equivalent under G using
> RepresentativeAction and so in principle, I can build up a list by starting
> with the first one, then testing to see if the second is equivalent to the
> first and keeping it only if it is not, and so on. This works, but each new
> one requires one more test than the previous one and things rapidly become
> unmanageable.
>
> For winnowing large lists of graphs, the standard procedure is not to test
> them pairwise but rather to compute a "canonically labelled" version of each
> input graph and then simply throw out the duplicates...
>
> Is there any way of computing a "canonically labelled" version of each
> k-subset? Or is this well known to be more difficult than computing
> equivalence?
>
> Thanks
>
> Gordon
> _______________________________________________
> Forum mailing list
> Forum at mail.gap-system.org
> http://mail.gap-system.org/mailman/listinfo/forum
>
From klin at cs.bgu.ac.il Wed Jan 12 13:03:43 2011
From: klin at cs.bgu.ac.il (Mikhail Klin)
Date: Wed, 12 Jan 2011 15:03:43 +0200 (IST)
Subject: [GAP Forum] Computing "canonical" subsets
In-Reply-To: <6BADD7AA-47FA-4E23-B5AA-0098CA794189@maths.uwa.edu.au>
References: <6BADD7AA-47FA-4E23-B5AA-0098CA794189@maths.uwa.edu.au>
Message-ID:
Dear Gordon,
Probably this paper below may be somehow of help:
Pech, Christian; Reichard, Sven. Enumerating set orbits. Algorithmic
algebraic combinatorics and Gr?bner bases, 137?150, Springer, Berlin,
2009.
As far as I am aware, Christian is holding some GAP programs,
related to this paper.
Regards,
Misha
********************************************************************
Dr. Mikhail Klin
Department of Mathematics
Ben-Gurion University of the Negev
P.O.Box 653, Beer Sheva 84105, Israel
Tel: (0)8/6477-811 (office)
Fax: +972-(0)8/6477-648
e-mail: klin at cs.bgu.ac.il
On Wed, 12 Jan 2011, Gordon Royle wrote:
> Dear Gapsters..
>
> Consider the following generic problem... given a permutation group G acting on a set X, I have a (potentially) large collection of k-subsets of X and wish to keep only one representative of each G-orbit on k-subsets.
>
> GAP can tell me if two k-subsets are equivalent under G using RepresentativeAction and so in principle, I can build up a list by starting with the first one, then testing to see if the second is equivalent to the first and keeping it only if it is not, and so on. This works, but each new one requires one more test than the previous one and things rapidly become unmanageable.
>
> For winnowing large lists of graphs, the standard procedure is not to test them pairwise but rather to compute a "canonically labelled" version of each input graph and then simply throw out the duplicates...
>
> Is there any way of computing a "canonically labelled" version of each k-subset? Or is this well known to be more difficult than computing equivalence?
>
> Thanks
>
> Gordon
> _______________________________________________
> Forum mailing list
> Forum at mail.gap-system.org
> http://mail.gap-system.org/mailman/listinfo/forum
>
From L.H.Soicher at qmul.ac.uk Wed Jan 12 13:19:15 2011
From: L.H.Soicher at qmul.ac.uk (Leonard Soicher)
Date: Wed, 12 Jan 2011 13:19:15 +0000
Subject: [GAP Forum] Computing "canonical" subsets
In-Reply-To: <20110112122143.GA1560@orge.ens.fr>
References: <6BADD7AA-47FA-4E23-B5AA-0098CA794189@maths.uwa.edu.au>
<20110112122143.GA1560@orge.ens.fr>
Message-ID: <20110112131915.GA5297@maths.qmul.ac.uk>
Dear GAP-Forum,
I must point out that this SmallestImageSet function, which determines
the lex-least set in the G-orbit of a subset S of X (where G is a
permutation group on the finite set X) was designed and written by
Steve Linton. This extremely useful function (which does not need to
compute the G-orbit of S) is used internally within GRAPE, and is not
documented.
For more information, see pkg/grape/lib/smallestimage.g in your GAP
distribution, and also the article:
Steve Linton, Finding the smallest image of a set,
Proceedings of ISSAC '04, ACM, New York, 2004.
I am hoping that, in due course, Steve will either make this excellent
function (and certain variants he has devised) into a package or part
of the main distribution of GAP.
You may also be interested in:
Enumerating Set Orbits, by Christian Pech and Sven Reichard, in
Algorithmic Algebraic Combinatorics and Gr?bner Bases, Springer, 2009,
Part 1, pp. 137-150.
and in:
On classifying objects with specified groups of automorphisms, friendly
subgroups, and Sylow tower groups, by Leonard H. Soicher; Research Report,
2008, available at http://designtheory.org/library/preprints/friendly.pdf
Regards,
Leonard Soicher
On Wed, Jan 12, 2011 at 01:21:43PM +0100, Mathieu Dutour wrote:
> As far as I know, once you have a backtracking algorithm
> for equivalence/stabilizer, then you have also an algorithm
> for canonical representative.
>
> But GAP does not provides such functionalities ...
>
> However, for the special action "OnSets", there is a function
> "SmallestImageSet" available from the GRAPE package that does
> the job.
>
> Mathieu
>
> On Wed, Jan 12, 2011 at 08:04:13PM +0800, Gordon Royle wrote:
> >> Dear Gapsters..
> >>
> >> Consider the following generic problem... given a permutation group
> >> G acting on a set X, I have a (potentially) large collection of
> >> k-subsets of X and wish to keep only one representative of each
> >> G-orbit on k-subsets.
> >>
> >> GAP can tell me if two k-subsets are equivalent under G using
> >> RepresentativeAction and so in principle, I can build up a list
> >> by starting with the first one, then testing to see if the second
> >> is equivalent to the first and keeping it only if it is not, and
> >> so on. This works, but each new one requires one more test than
> >> the previous one and things rapidly become unmanageable.
> >>
> >> For winnowing large lists of graphs, the standard procedure is
> >> not to test them pairwise but rather to compute a "canonically
> >> labelled" version of each input graph and then simply throw out
> >> the duplicates...
> >>
> >> Is there any way of computing a "canonically labelled" version
> >> of each k-subset? Or is this well known to be more difficult
> >> than computing equivalence?
> >>
> >> Thanks
> >>
> >> Gordon
> >> _______________________________________________
> >> Forum mailing list
> >> Forum at mail.gap-system.org
> >> http://mail.gap-system.org/mailman/listinfo/forum
>
> _______________________________________________
> Forum mailing list
> Forum at mail.gap-system.org
> http://mail.gap-system.org/mailman/listinfo/forum
From dima at ntu.edu.sg Wed Jan 12 17:18:59 2011
From: dima at ntu.edu.sg (Asst. Prof. Dmitrii (Dima) Pasechnik)
Date: Wed, 12 Jan 2011 09:18:59 -0800
Subject: [GAP Forum] advice needed
In-Reply-To: <67731294829971@web105.yandex.ru>
References: <67731294829971@web105.yandex.ru>
Message-ID:
Hi Igor,
indeed, you should create a GAP package with your code.
By the way, are you aware of GAP packages that to computations that are
quite relevant to your project, e.g.
http://www.gap-system.org/Packages/homalg.html
Best,
Dmitrii
On 12 January 2011 02:59, Igor Korepanov wrote:
> Dear GAP experts,
>
> I need some advice. My team is writing some GAP functions, for our private calculations (although I already invited people to cooperate, see my previous posts). Generally, one function is contained in a file like "FunctionSoAndSo.g", and such file usually has some lines like Read("AnotherFuction.g"); in its beginning. There are also some embryo data bases containing description of objects we are working with.
>
> The question is: how should we organize all this (put in different folders, whatever), if our ambition is to make all this eventually helpful for other interested people? But in such manner which won't force us to become at once GAP grand masters?
>
> Thanks in advance,
>
> Igor
>
> _______________________________________________
> Forum mailing list
> Forum at mail.gap-system.org
> http://mail.gap-system.org/mailman/listinfo/forum
>
--
Dmitrii Pasechnik
-----
DISCLAIMER: Any text following this sentence does not constitute a
part of this message, and was added automatically during transmission.
CONFIDENTIALITY: This email is intended solely for the person(s) named and may be confidential and/or privileged. If you are not the intended recipient, please delete it, notify us and do not copy, use, or disclose its content. Thank you.
Towards A Sustainable Earth: Print Only When Necessary
From dima at ntu.edu.sg Wed Jan 12 18:10:09 2011
From: dima at ntu.edu.sg (Asst. Prof. Dmitrii (Dima) Pasechnik)
Date: Wed, 12 Jan 2011 10:10:09 -0800
Subject: [GAP Forum] grants and other tenure requirements for maths
professors - what are these in your school?
Message-ID:
Dear all,
my apologies for an off-topic posting, but this is relevant to the
survival of GAP-related (and Pure Maths in general) research in one
academic institution....
My University (mostly Engineering) is in the midst of changing its
tenure and promotion requirements, and is currently inclined to impose
the same blanket
tenure requirements on Engineering, Science, and Maths faculty alike.
One of the requirements is being the principal investigator on a large
(US$150K or more?)
grant. Another requirement for tenure is to graduate at least one PhD
student, and for Full Prof. promotion to graduate at least five PhD
students.
Needless to say, this makes Maths, in particular Pure Maths, horribly
disadvantaged, and would effectively kill tenure chances for me and
quite a number of my colleagues.
I was asked by my Head of Division (and Head of School) to help to dig
up any relevant information on such requirements at universities with
a tenure system across the world, so that we can build up our case for
these requirements to be in line with the worldwide practice.
If you are familiar with tenure and promotion policies at your
university, and can provide me with data on how this is treated in
your university, please send me an email.
Many thanks in advance,
Dmitrii Pasechnik
http://www.ntu.edu.sg/home/dima/
email: dima at ntu.edu.sg
email: dimpase at gmail.com
CONFIDENTIALITY: This email is intended solely for the person(s) named and may be confidential and/or privileged. If you are not the intended recipient, please delete it, notify us and do not copy, use, or disclose its content. Thank you.
Towards A Sustainable Earth: Print Only When Necessary
From kmorris2 at gmail.com Wed Jan 12 20:07:04 2011
From: kmorris2 at gmail.com (Katie Morrison)
Date: Wed, 12 Jan 2011 14:07:04 -0600
Subject: [GAP Forum] Double cosets of orthogonal groups (rather than
permutation groups)
Message-ID:
I am trying to compute double cosets within the orthogonal group with
similitudes (which I am taking to be the set of matrices that satisfy
MM^T=\lambda *I where I is the identity and \lambda is a non-zero scalar).
I have obtained the orthogonal group with similitudes by starting with
GO(n,q), conjugating it by an appropriate change of basis matrix to get the
matrices that preserve the standard dot product rather than the bilinear
form that GAP uses, and then taking the normalizer of this group in
GL(n,q). Using this construction of the orthogonal group with similitudes,
I would like to then find double cosets of certain subgroups of this, but as
far as I know GAP only has the double-cosets function implemented for
permutation groups. Is there an efficient way that I can use these built-in
GAP functions to determine if two matrices are in the same double-coset
and/or enumerate a list of double-coset representatives? Thanks in advance
for any help with this.
Katie Morrison
From hulpke at math.colostate.edu Wed Jan 12 20:22:30 2011
From: hulpke at math.colostate.edu (Alexander Hulpke)
Date: Wed, 12 Jan 2011 13:22:30 -0700
Subject: [GAP Forum] Looping over (double)coset representatives without
creating the WHOLE list first
In-Reply-To:
References:
Message-ID: <6CBB73A1-C03F-4C4B-8AE9-62801E3312BC@math.colostate.edu>
Dear Forum,
On Jan 11, 2011, at 1/11/11 4:44, Pornrat Ruengrot wrote:
> Hi,
>
> I have the following problem related to programming in GAP, hoping someone
> could help please.
>
> Let G be a permutation group.
> Let P be the subgroup of G consisting of all "perfect" permutations in G.
> The goal is to find P explicitly.
>
> For this it's enough to check only the (double)coset representatives, since
> if P is a subgroup of
> perfect permutations found so far and g (in G) is not perfect, then so is
> every element in PgP. So
> part of my codes is as follow:
> D:=DoubleCosetRepsAndSizes(G, P, P); # create list of double coset
> representatives to be checked
[...]
> In Magma there is the command TransversalProcess(G, H)
> http://magma.maths.usyd.edu.au/magma/handbook/text/571 that will do just
> that .
>
> I was wondering if there is a similar command in GAP?
Looking at the manual page you listed, this command only handles ordinary cosets, but not double cosets.
the same functionality is provided in GAP by the command RightTransversal which returns an object that looks and behaves like a list, but does so by calculating elements on the fly with far smaller storage requirement than an ordinary list.
For double cosets, neither magma (as far as I can read the manual), nor GAP provides similar functionality. Implementing this wouldn't be impossible (the construction algorithm basically builds a tree), but is not (in the existing code base for GAP) an easy modification. I do not expect such functionality to become available until certain future extensions towards threads have been implemented.
> (I also tried the build-in command SubgroupByProperty. This gave me the
> answer almost instantly,
> but when trying to list all elements, it took a very long time.)
However the process you are describing actually sounds like a simplified version of permutation group backtrack, and this is what is implemented by `SubgroupByProperty'. Where I am a bit puzzled now is your remark that listing all elements took a long time.
If you call `SubgroupByProperty', you get a permutation group, and enumerating the elements should be straightforward (though, if the subgroup is large, just printing them out could take time or you might have storage issues in creating them all).
Thus, if you were able to get a result from `SubgroupByProperty', but
Elements(subgroup);;
(note the double semicolon to suppress printing) please send me (privately) more information about the group and the property you're using?this really shouldn't take long.
All the best,
Alexander Hulpke
-- Colorado State University, Department of Mathematics,
Weber Building, 1874 Campus Delivery, Fort Collins, CO 80523-1874, USA
email: hulpke at math.colostate.edu, Phone: ++1-970-4914288
http://www.math.colostate.edu/~hulpke
From sandeepr.murthy at gmail.com Wed Jan 12 20:29:24 2011
From: sandeepr.murthy at gmail.com (Sandeep Murthy)
Date: Wed, 12 Jan 2011 20:29:24 +0000
Subject: [GAP Forum] Changing memory allocation for GAP
Message-ID: <6463AC99-26A0-4899-8492-6B1D25EEED32@gmail.com>
Hello.
Is there a command for starting GAP from the command line to
open with a higher memory allocation, like 256 MB, than the standard
one?
I use GAP v.4.4.12 on Mac OS Leopard. At present, when I start GAP
I see the following:
--------
Loading the library. Please be patient, this may take a while.
GAP4, Version: 4.4.12 of 17-Dec-2008, i686-apple-darwin9.6.0-gcc
Components: small 2.1, small2 2.0, small3 2.0, small4 1.0, small5 1.0,
small6 1.0, small7 1.0, small8 1.0, small9 1.0, small10 0.2,
id2 3.0, id3 2.1, id4 1.0, id5 1.0, id6 1.0, id9 1.0, id10 0.1,
trans 1.0, prim 2.1 loaded.
Packages: AutPGrp 1.2, CTblLib 1.1.3, TomLib 1.1.4, FactInt 1.5.2,
GAPDoc 1.2 loaded.
Error, file "-L" must exist and be readable
Error, file "-m" must exist and be readable
Error, file "128m" must exist and be readable
Error, file "-o" must exist and be readable
Error, file "512m" must exist and be readable
--------
I run search algorithms on groups of exponential complexity, and they
are intrinsically slow. But I'm hoping that by using a higher initial
memory allocation, for practical purposes, my programs will cover
more of the search space than they have so far.
Sincerely, Sandeep.
From hulpke at math.colostate.edu Wed Jan 12 20:43:06 2011
From: hulpke at math.colostate.edu (Alexander Hulpke)
Date: Wed, 12 Jan 2011 13:43:06 -0700
Subject: [GAP Forum] Double cosets of orthogonal groups (rather than
permutation groups)
In-Reply-To:
References:
Message-ID: <5C4F3B70-C642-4E49-8F5D-ACA0B5E1211C@math.colostate.edu>
Dear Forum,
It's double coset week!
On Jan 12, 2011, at 1/12/11 1:07, Katie Morrison wrote:
> I am trying to compute double cosets within the orthogonal group with
> similitudes (which I am taking to be the set of matrices that satisfy
> MM^T=\lambda *I where I is the identity and \lambda is a non-zero scalar).
> I have obtained the orthogonal group with similitudes by starting with
> GO(n,q), conjugating it by an appropriate change of basis matrix to get the
> matrices that preserve the standard dot product rather than the bilinear
> form that GAP uses, and then taking the normalizer of this group in
> GL(n,q).
> Using this construction of the orthogonal group with similitudes,
> I would like to then find double cosets of certain subgroups of this, but as
> far as I know GAP only has the double-cosets function implemented for
> permutation groups.
Since the normalizer calculation succeeded, it seems your parameters are small enough to allow for the construction of a permutation representation. In this situation you will be able to use this representation and permutation group functionality to get the results. For example, if G is the normalizer and A and B are the two subgroups, the following commands would get you double coset information in the matrix group:
hom:=IsomorphismPermGroup(G);
Gperm:=Image(hom,G);
Aperm:=Image(hom,A);
Bperm:=Image(hom,B);
dc:=DoubleCosetRepsAndSizes(Gperm,Aperm,Bperm);
List(dc,x->[PreImagesRepresentative(hom,x[1]),x[2]]);
Best wishes,
Alexander Hulpke
-- Colorado State University, Department of Mathematics,
Weber Building, 1874 Campus Delivery, Fort Collins, CO 80523-1874, USA
email: hulpke at math.colostate.edu, Phone: ++1-970-4914288
http://www.math.colostate.edu/~hulpke
From dima at ntu.edu.sg Thu Jan 13 02:09:05 2011
From: dima at ntu.edu.sg (Asst. Prof. Dmitrii (Dima) Pasechnik)
Date: Wed, 12 Jan 2011 18:09:05 -0800
Subject: [GAP Forum] Changing memory allocation for GAP
In-Reply-To: <6463AC99-26A0-4899-8492-6B1D25EEED32@gmail.com>
References: <6463AC99-26A0-4899-8492-6B1D25EEED32@gmail.com>
Message-ID:
Dear Sandeep,
it looks as if you start GAP in a wrong way.
(cause these > Error, file "-L" must exist and be readable
> Error, file "-m" must exist and be readable
> Error, file "128m" must exist and be readable
> Error, file "-o" must exist and be readable
> Error, file "512m" must exist and be readable
things are mangled details of command line arguments...)
One way that works is to start it in a Terminal window.
Another is to use a special MacOSX application.
Hope this helps,
Dmitrii
On 12 January 2011 12:29, Sandeep Murthy wrote:
> Hello.
>
> Is there a command for starting GAP from the command line to
> open with a higher memory allocation, like 256 MB, than the standard
> one?
>
> I use GAP v.4.4.12 on Mac OS Leopard. At present, when I start GAP
> I see the following:
>
> --------
>
> Loading the library. Please be patient, this may take a while.
> GAP4, Version: 4.4.12 of 17-Dec-2008, i686-apple-darwin9.6.0-gcc
> Components: small 2.1, small2 2.0, small3 2.0, small4 1.0, small5 1.0,
> small6 1.0, small7 1.0, small8 1.0, small9 1.0, small10 0.2,
> id2 3.0, id3 2.1, id4 1.0, id5 1.0, id6 1.0, id9 1.0, id10 0.1,
> trans 1.0, prim 2.1 loaded.
> Packages: AutPGrp 1.2, CTblLib 1.1.3, TomLib 1.1.4, FactInt 1.5.2,
> GAPDoc 1.2 loaded.
> Error, file "-L" must exist and be readable
> Error, file "-m" must exist and be readable
> Error, file "128m" must exist and be readable
> Error, file "-o" must exist and be readable
> Error, file "512m" must exist and be readable
>
> --------
>
> I run search algorithms on groups of exponential complexity, and they
> are intrinsically slow. But I'm hoping that by using a higher initial
> memory allocation, for practical purposes, my programs will cover
> more of the search space than they have so far.
>
> Sincerely, Sandeep.
>
>
> _______________________________________________
> Forum mailing list
> Forum at mail.gap-system.org
> http://mail.gap-system.org/mailman/listinfo/forum
>
--
Dmitrii Pasechnik
-----
DISCLAIMER: Any text following this sentence does not constitute a
part of this message, and was added automatically during transmission.
CONFIDENTIALITY: This email is intended solely for the person(s) named and may be confidential and/or privileged. If you are not the intended recipient, please delete it, notify us and do not copy, use, or disclose its content. Thank you.
Towards A Sustainable Earth: Print Only When Necessary
From paloff at ya.ru Thu Jan 13 07:54:22 2011
From: paloff at ya.ru (Igor Korepanov)
Date: Thu, 13 Jan 2011 10:54:22 +0300
Subject: [GAP Forum] why zoo?
Message-ID: <491691294905262@web47.yandex.ru>
Just one more question: is .zoo a somehow preferred way of archiving for GAP people? And why so if .tar.bz2 is so evidently better?
Igor
From paloff at ya.ru Thu Jan 13 08:22:21 2011
From: paloff at ya.ru (Igor Korepanov)
Date: Thu, 13 Jan 2011 11:22:21 +0300
Subject: [GAP Forum] how TzGo worked with us
Message-ID: <191761294906941@web4.yandex.ru>
And still one more comment: we calculated yesterday the fundamental group of the 4-dimensional torus, which is, as everybody knows, the *abelian* group with 4 generators. That is, the Fp Group with 4 generators and 6 relation of type a * b * a^-1 * b^-1 .
And all that was happily present in our GAP result, but besides that, there was one more redundant relation which we could derive manually from 6 others, but the TzGo algorithm apparently could not!
We used some stuff of our own to define this fundamental group and then the usual TzGo command to simplify it.
Of course I've heard of undecidable problems and stuff (as I am currently employed as a university lecturer, like many people on this forum). But this particular problem must be decidable (here I searched Internet for a suitable English interjection like "er?" to end my letter, but found only some strange "Ekh-ma" http://en.wikipedia.org/wiki/Ekh_%28expression%29 ) ?
Best wishes,
Igor
From frank.luebeck at math.rwth-aachen.de Thu Jan 13 09:37:54 2011
From: frank.luebeck at math.rwth-aachen.de (Frank =?iso-8859-1?Q?L=FCbeck?=)
Date: Thu, 13 Jan 2011 10:37:54 +0100
Subject: [GAP Forum] why zoo?
In-Reply-To: <491691294905262@web47.yandex.ru>
References: <491691294905262@web47.yandex.ru>
Message-ID: <20110113093754.GA19326@beteigeuze>
On Thu, Jan 13, 2011 at 10:54:22AM +0300, Igor Korepanov wrote:
> Just one more question: is .zoo a somehow preferred way of archiving for GAP people? And why so if .tar.bz2 is so evidently better?
But all of our archives are provided in .zoo, .tar.gz, .tar.bz2 and -win.zip
format. You are free to use what you like most!
.tar.bz2 is not "evidently better", e.g. it does not unpack text files
under Windows/DOS with the native line break convention, and it is much
slower to unpack them compared to, say, .tar.gz.
See
http://www.gap-system.org/Download/formats.html
for more details.
Best regards,
Frank L?beck
--
/// Dr. Frank L?beck, Lehrstuhl D f?r Mathematik, Templergraben 64, ///
\\\ 52062 Aachen, Germany \\\
/// E-mail: Frank.Luebeck at Math.RWTH-Aachen.De ///
\\\ WWW: http://www.math.rwth-aachen.de/~Frank.Luebeck/ \\\
From dima at ntu.edu.sg Thu Jan 13 09:58:45 2011
From: dima at ntu.edu.sg (Asst. Prof. Dmitrii (Dima) Pasechnik)
Date: Thu, 13 Jan 2011 01:58:45 -0800
Subject: [GAP Forum] why zoo?
In-Reply-To: <491691294905262@web47.yandex.ru>
References: <491691294905262@web47.yandex.ru>
Message-ID:
Igor,
.zoo is an old format, historically the first GAP was using, exclusively.
About 10 years ago there were long discussions on this list whether one
should use other formats, and common sense prevailed, so .zoo is no longer
the only format used.
Perhaps .zoo will be retired at some point...
On 12 January 2011 23:54, Igor Korepanov wrote:
> Just one more question: is .zoo a somehow preferred way of archiving for GAP people? And why so if .tar.bz2 is so evidently better?
>
> Igor
>
> _______________________________________________
> Forum mailing list
> Forum at mail.gap-system.org
> http://mail.gap-system.org/mailman/listinfo/forum
>
--
Dmitrii Pasechnik
-----
DISCLAIMER: Any text following this sentence does not constitute a
part of this message, and was added automatically during transmission.
CONFIDENTIALITY: This email is intended solely for the person(s) named and may be confidential and/or privileged. If you are not the intended recipient, please delete it, notify us and do not copy, use, or disclose its content. Thank you.
Towards A Sustainable Earth: Print Only When Necessary
From frank.luebeck at math.rwth-aachen.de Thu Jan 13 16:41:18 2011
From: frank.luebeck at math.rwth-aachen.de (Frank =?iso-8859-1?Q?L=FCbeck?=)
Date: Thu, 13 Jan 2011 17:41:18 +0100
Subject: [GAP Forum] Changing memory allocation for GAP
In-Reply-To: <6463AC99-26A0-4899-8492-6B1D25EEED32@gmail.com>
References: <6463AC99-26A0-4899-8492-6B1D25EEED32@gmail.com>
Message-ID: <20110113164117.GB26842@beteigeuze>
On Wed, Jan 12, 2011 at 08:29:24PM +0000, Sandeep Murthy wrote:
> Is there a command for starting GAP from the command line to
> open with a higher memory allocation, like 256 MB, than the standard
> one?
>
> I use GAP v.4.4.12 on Mac OS Leopard. At present, when I start GAP
> I see the following:
>
> --------
>
> Loading the library. Please be patient, this may take a while.
> GAP4, Version: 4.4.12 of 17-Dec-2008, i686-apple-darwin9.6.0-gcc
> Components: small 2.1, small2 2.0, small3 2.0, small4 1.0, small5 1.0,
> small6 1.0, small7 1.0, small8 1.0, small9 1.0, small10 0.2,
> id2 3.0, id3 2.1, id4 1.0, id5 1.0, id6 1.0, id9 1.0, id10 0.1,
> trans 1.0, prim 2.1 loaded.
> Packages: AutPGrp 1.2, CTblLib 1.1.3, TomLib 1.1.4, FactInt 1.5.2,
> GAPDoc 1.2 loaded.
> Error, file "-L" must exist and be readable
> Error, file "-m" must exist and be readable
> Error, file "128m" must exist and be readable
> Error, file "-o" must exist and be readable
> Error, file "512m" must exist and be readable
>
Dear Sandeep Murphy, dear Forum,
To find an explaination in the GAP documentation type
?command line options
into your GAP session. If one of the arguments in your call of GAP is
a file name, then all further arguments are also interpreted as file names.
So you should call GAP like:
gap -m 128m -o 512m [maybe more options here] file1 file2 ...
Using the -m option with a larger amount of memory does usually not give
a big performance advantage. But using a higher value with the -o option
causes that you see a message of form
exceeded the permitted memory (`-o' command line option) at
[...]
brk>
later than with the default value. (You can type 'return;' at that
brk-prompt, then GAP doubles the value of the -o option.)
Nevertheless, it does not make sense to specify with -o more memory than
your GAP job has available as physical memory.
With best regards,
Frank L?beck
--
/// Dr. Frank L?beck, Lehrstuhl D f?r Mathematik, Templergraben 64, ///
\\\ 52062 Aachen, Germany \\\
/// E-mail: Frank.Luebeck at Math.RWTH-Aachen.De ///
\\\ WWW: http://www.math.rwth-aachen.de/~Frank.Luebeck/ \\\
From hulpke at math.colostate.edu Thu Jan 13 17:20:17 2011
From: hulpke at math.colostate.edu (Alexander Hulpke)
Date: Thu, 13 Jan 2011 10:20:17 -0700
Subject: [GAP Forum] how TzGo worked with us
In-Reply-To: <191761294906941@web4.yandex.ru>
References: <191761294906941@web4.yandex.ru>
Message-ID: <3196FBA1-3829-4234-A59D-9BC51E350DF3@math.colostate.edu>
Dear Forum,
On Jan 13, 2011, at 1/13/11 1:22, Igor Korepanov wrote:
> And still one more comment: we calculated yesterday the fundamental group of the 4-dimensional torus, which is, as everybody knows, the *abelian* group with 4 generators. That is, the Fp Group with 4 generators and 6 relation of type a * b * a^-1 * b^-1 .
>
> And all that was happily present in our GAP result, but besides that, there was one more redundant relation which we could derive manually from 6 others, but the TzGo algorithm apparently could not!
TzGo (the Tietze transformations command) uses a couple of heuristics, based on length criteria, to shorten a presentation, in particular if it was obtained from rewriting to a subgroup. It does not aim to do a systematic search for all redundancies. The primary aim is to get a presentation shorter with a moderate amount of effort, not to get an irredundant presentation or cover the largest possible class of decidable problems. It is clearly not optimal, but adding further attempts might cause an overall slowdown in other situations.
Thus I'm not surprised that thinking (or even other algorithms that would be willing to devote more time) can produce better results in particular situations.
Best wishes,
Alexander Hulpke
-- Colorado State University, Department of Mathematics,
Weber Building, 1874 Campus Delivery, Fort Collins, CO 80523-1874, USA
email: hulpke at math.colostate.edu, Phone: ++1-970-4914288
http://www.math.colostate.edu/~hulpke
From max at quendi.de Fri Jan 14 14:24:16 2011
From: max at quendi.de (Max Horn)
Date: Fri, 14 Jan 2011 15:24:16 +0100
Subject: [GAP Forum] Analogue of IsFFEMatrixGroup for matrix groups over
ZmodnZ
Message-ID: <01D99A4D-2E0A-46D6-BCA3-8B8D4163A180@quendi.de>
Dear GAP forum
is there an analogue for IsFFEMatrixGroup and FieldOfMatrixGroup for groups over ZmodnZ ? Something like IsZmodnZMatrixGroup and RingOfMatrixGroup ? I didn't find anything like that. If it doesn't exist, how would I best go about adding those?
Background: I'd like to install my own methods for e.g. NiceMonomorphism for matrix groups over ZmodnZ. To illustrate why: for GL(3, Z/36Z), GAP currently finds a perm rep on 39312 points, my code finds one on 758 points (it doesn't do anything fancy or new, mind you)
For now, I just "manually" use SetNiceMonomorphism on my groups, but I thought it would be kinda nice to properly hook this into GAP (so that maybe it could even be integrated in a package or GAP itself one day).
Cheers,
Max
From hulpke at math.colostate.edu Fri Jan 14 17:03:32 2011
From: hulpke at math.colostate.edu (Alexander Hulpke)
Date: Fri, 14 Jan 2011 10:03:32 -0700
Subject: [GAP Forum] Analogue of IsFFEMatrixGroup for matrix groups over
ZmodnZ
In-Reply-To: <01D99A4D-2E0A-46D6-BCA3-8B8D4163A180@quendi.de>
References: <01D99A4D-2E0A-46D6-BCA3-8B8D4163A180@quendi.de>
Message-ID: <965B2533-1AC7-486E-ACAA-32BD16BCFC42@math.colostate.edu>
Dear Forum,
On Jan 14, 2011, at 1/14/11 7:24, Max Horn wrote:
> is there an analogue for IsFFEMatrixGroup and FieldOfMatrixGroup for groups over ZmodnZ ? Something like IsZmodnZMatrixGroup and RingOfMatrixGroup ? I didn't find anything like that. If it doesn't exist, how would I best go about adding those?
Assuming you want to catch the case for nonprime n, the equivalent for IsFFEMatrixGroup would be
IsZmodnZObjNonprimeCollCollColl and IsMatrixGroup
To get the underlying ring, you could use
DefaultRing(Flat(GeneratorsOfGroup(g)));
Best wishes,
Alexander Hulpke
From kmorris2 at gmail.com Mon Jan 17 04:21:10 2011
From: kmorris2 at gmail.com (Katie Morrison)
Date: Sun, 16 Jan 2011 22:21:10 -0600
Subject: [GAP Forum] Creating block matrices
Message-ID:
Hi all, I was wondering if there's an efficient way to create the subgroup
of GL(2n, q) consisting of block matrices of the form:
[A 0
B C]
where A and C are in GL(n,q) and B is in M(n,q) (i.e. B is an arbitrary nxn
matrix). Thanks for the help.
Katie
From dima at ntu.edu.sg Mon Jan 17 05:45:41 2011
From: dima at ntu.edu.sg (Asst. Prof. Dmitrii (Dima) Pasechnik)
Date: Mon, 17 Jan 2011 13:45:41 +0800
Subject: [GAP Forum] Creating block matrices
In-Reply-To:
References:
Message-ID:
Dear Katie,
it's not clear from your message what you mean by "efficiently".
You mean, a special function that can do it for you?
Here is one way to accomplish it:
sgrp:=function(q,n0)
local g, eij, i, j,n, d;
eij:=function(i,j)
local M;
M:=IdentityMat(n,GF(q));
M[i][j]:=Z(q)^0;
return M;
end;
g:=[];
n:=2*n0;
for i in [1..n-1] do
Add(g,eij(i+1,i));
d:=IdentityMat(n,GF(q));
d[i][i]:=Z(q);
Add(g,d);
od;
for i in [1..n0-1] do
Add(g,eij(i,i+1));
Add(g,eij(n0+i,n0+i+1));
od;
return Group(g);
end;
Hope this helps,
Dmitrii
On 17 January 2011 12:21, Katie Morrison wrote:
> Hi all, I was wondering if there's an efficient way to create the subgroup
> of GL(2n, q) consisting of block matrices of the form:
> [A 0
> B C]
> where A and C are in GL(n,q) and B is in M(n,q) (i.e. B is an arbitrary nxn
> matrix). Thanks for the help.
>
> Katie
> _______________________________________________
> Forum mailing list
> Forum at mail.gap-system.org
> http://mail.gap-system.org/mailman/listinfo/forum
>
--
Dmitrii Pasechnik
-----
DISCLAIMER: Any text following this sentence does not constitute a
part of this message, and was added automatically during transmission.
CONFIDENTIALITY: This email is intended solely for the person(s) named and may be confidential and/or privileged. If you are not the intended recipient, please delete it, notify us and do not copy, use, or disclose its content. Thank you.
Towards A Sustainable Earth: Print Only When Necessary
From sararadfarss at gmail.com Mon Jan 17 13:27:01 2011
From: sararadfarss at gmail.com (Sara Radfar)
Date: Mon, 17 Jan 2011 05:27:01 -0800
Subject: [GAP Forum] Forum Digest, Vol 86, Issue 6
In-Reply-To:
References:
Message-ID:
Dear All,
How we can by GAP conlude all automorphism group $A_7 timesA_7$?
Thanks,
Sara
On 1/16/11, forum-request at gap-system.org wrote:
> Send Forum mailing list submissions to
> forum at mail.gap-system.org
>
> To subscribe or unsubscribe via the World Wide Web, visit
> http://mail.gap-system.org/mailman/listinfo/forum
> or, via email, send a message with subject or body 'help' to
> forum-request at mail.gap-system.org
>
> You can reach the person managing the list at
> forum-owner at mail.gap-system.org
>
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of Forum digest..."
>
>
> Today's Topics:
>
> 1. Re: Changing memory allocation for GAP
> (Asst. Prof. Dmitrii (Dima) Pasechnik)
> 2. why zoo? (Igor Korepanov)
> 3. how TzGo worked with us (Igor Korepanov)
> 4. Re: why zoo? (Frank L?beck)
> 5. Re: why zoo? (Asst. Prof. Dmitrii (Dima) Pasechnik)
> 6. Re: Changing memory allocation for GAP (Frank L?beck)
> 7. Re: how TzGo worked with us (Alexander Hulpke)
> 8. Analogue of IsFFEMatrixGroup for matrix groups over ZmodnZ
> (Max Horn)
> 9. Re: Analogue of IsFFEMatrixGroup for matrix groups over
> ZmodnZ (Alexander Hulpke)
> 10. Creating block matrices (Katie Morrison)
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Wed, 12 Jan 2011 18:09:05 -0800
> From: "Asst. Prof. Dmitrii (Dima) Pasechnik"
> To: Sandeep Murthy
> Cc: GAP forum
> Subject: Re: [GAP Forum] Changing memory allocation for GAP
> Message-ID:
>
> Content-Type: text/plain; charset="UTF-8"
>
> Dear Sandeep,
> it looks as if you start GAP in a wrong way.
> (cause these > Error, file "-L" must exist and be readable
>> Error, file "-m" must exist and be readable
>> Error, file "128m" must exist and be readable
>> Error, file "-o" must exist and be readable
>> Error, file "512m" must exist and be readable
> things are mangled details of command line arguments...)
>
> One way that works is to start it in a Terminal window.
> Another is to use a special MacOSX application.
>
> Hope this helps,
> Dmitrii
>
> On 12 January 2011 12:29, Sandeep Murthy wrote:
>> Hello.
>>
>> Is there a command for starting GAP from the command line to
>> open with a higher memory allocation, like 256 MB, than the standard
>> one?
>>
>> I use GAP v.4.4.12 on Mac OS Leopard. At present, when I start GAP
>> I see the following:
>>
>> --------
>>
>> Loading the library. Please be patient, this may take a while.
>> GAP4, Version: 4.4.12 of 17-Dec-2008, i686-apple-darwin9.6.0-gcc
>> Components: small 2.1, small2 2.0, small3 2.0, small4 1.0, small5 1.0,
>> small6 1.0, small7 1.0, small8 1.0, small9 1.0, small10 0.2,
>> id2 3.0, id3 2.1, id4 1.0, id5 1.0, id6 1.0, id9 1.0, id10
>> 0.1,
>> trans 1.0, prim 2.1 loaded.
>> Packages: AutPGrp 1.2, CTblLib 1.1.3, TomLib 1.1.4, FactInt 1.5.2,
>> GAPDoc 1.2 loaded.
>> Error, file "-L" must exist and be readable
>> Error, file "-m" must exist and be readable
>> Error, file "128m" must exist and be readable
>> Error, file "-o" must exist and be readable
>> Error, file "512m" must exist and be readable
>>
>> --------
>>
>> I run search algorithms on groups of exponential complexity, and they
>> are intrinsically slow. But I'm hoping that by using a higher initial
>> memory allocation, for practical purposes, my programs will cover
>> more of the search space than they have so far.
>>
>> Sincerely, Sandeep.
>>
>>
>> _______________________________________________
>> Forum mailing list
>> Forum at mail.gap-system.org
>> http://mail.gap-system.org/mailman/listinfo/forum
>>
>
>
>
> --
> Dmitrii Pasechnik
> -----
> DISCLAIMER: Any text following this sentence does not constitute a
> part of this message, and was added automatically during transmission.
>
> CONFIDENTIALITY: This email is intended solely for the person(s) named and
> may be confidential and/or privileged. If you are not the intended
> recipient, please delete it, notify us and do not copy, use, or disclose its
> content. Thank you.
>
> Towards A Sustainable Earth: Print Only When Necessary
>
>
>
> ------------------------------
>
> Message: 2
> Date: Thu, 13 Jan 2011 10:54:22 +0300
> From: Igor Korepanov
> To: forum at gap-system.org
> Subject: [GAP Forum] why zoo?
> Message-ID: <491691294905262 at web47.yandex.ru>
> Content-Type: text/plain
>
> Just one more question: is .zoo a somehow preferred way of archiving for GAP
> people? And why so if .tar.bz2 is so evidently better?
>
> Igor
>
>
>
> ------------------------------
>
> Message: 3
> Date: Thu, 13 Jan 2011 11:22:21 +0300
> From: Igor Korepanov
> To: forum at gap-system.org
> Subject: [GAP Forum] how TzGo worked with us
> Message-ID: <191761294906941 at web4.yandex.ru>
> Content-Type: text/plain
>
> And still one more comment: we calculated yesterday the fundamental group of
> the 4-dimensional torus, which is, as everybody knows, the *abelian* group
> with 4 generators. That is, the Fp Group with 4 generators and 6 relation of
> type a * b * a^-1 * b^-1 .
>
> And all that was happily present in our GAP result, but besides that, there
> was one more redundant relation which we could derive manually from 6
> others, but the TzGo algorithm apparently could not!
>
> We used some stuff of our own to define this fundamental group and then the
> usual TzGo command to simplify it.
>
> Of course I've heard of undecidable problems and stuff (as I am currently
> employed as a university lecturer, like many people on this forum). But this
> particular problem must be decidable (here I searched Internet for a
> suitable English interjection like "er?" to end my letter, but found only
> some strange "Ekh-ma" http://en.wikipedia.org/wiki/Ekh_%28expression%29 ) ?
>
> Best wishes,
>
> Igor
>
>
>
> ------------------------------
>
> Message: 4
> Date: Thu, 13 Jan 2011 10:37:54 +0100
> From: Frank L?beck
> To: forum at gap-system.org
> Subject: Re: [GAP Forum] why zoo?
> Message-ID: <20110113093754.GA19326 at beteigeuze>
> Content-Type: text/plain; charset=iso-8859-1
>
> On Thu, Jan 13, 2011 at 10:54:22AM +0300, Igor Korepanov wrote:
>> Just one more question: is .zoo a somehow preferred way of archiving for
>> GAP people? And why so if .tar.bz2 is so evidently better?
>
> But all of our archives are provided in .zoo, .tar.gz, .tar.bz2 and -win.zip
> format. You are free to use what you like most!
>
> .tar.bz2 is not "evidently better", e.g. it does not unpack text files
> under Windows/DOS with the native line break convention, and it is much
> slower to unpack them compared to, say, .tar.gz.
>
> See
> http://www.gap-system.org/Download/formats.html
> for more details.
>
> Best regards,
> Frank L?beck
>
> --
> /// Dr. Frank L?beck, Lehrstuhl D f?r Mathematik, Templergraben 64, ///
> \\\ 52062 Aachen, Germany \\\
> /// E-mail: Frank.Luebeck at Math.RWTH-Aachen.De ///
> \\\ WWW: http://www.math.rwth-aachen.de/~Frank.Luebeck/ \\\
>
>
>
>
> ------------------------------
>
> Message: 5
> Date: Thu, 13 Jan 2011 01:58:45 -0800
> From: "Asst. Prof. Dmitrii (Dima) Pasechnik"
> To: Igor Korepanov
> Cc: "forum at gap-system.org"
> Subject: Re: [GAP Forum] why zoo?
> Message-ID:
>
> Content-Type: text/plain; charset="UTF-8"
>
> Igor,
> .zoo is an old format, historically the first GAP was using, exclusively.
>
> About 10 years ago there were long discussions on this list whether one
> should use other formats, and common sense prevailed, so .zoo is no longer
> the only format used.
> Perhaps .zoo will be retired at some point...
>
> On 12 January 2011 23:54, Igor Korepanov wrote:
>> Just one more question: is .zoo a somehow preferred way of archiving for
>> GAP people? And why so if .tar.bz2 is so evidently better?
>>
>> Igor
>>
>> _______________________________________________
>> Forum mailing list
>> Forum at mail.gap-system.org
>> http://mail.gap-system.org/mailman/listinfo/forum
>>
>
>
>
> --
> Dmitrii Pasechnik
> -----
> DISCLAIMER: Any text following this sentence does not constitute a
> part of this message, and was added automatically during transmission.
>
> CONFIDENTIALITY: This email is intended solely for the person(s) named and
> may be confidential and/or privileged. If you are not the intended
> recipient, please delete it, notify us and do not copy, use, or disclose its
> content. Thank you.
>
> Towards A Sustainable Earth: Print Only When Necessary
>
>
>
> ------------------------------
>
> Message: 6
> Date: Thu, 13 Jan 2011 17:41:18 +0100
> From: Frank L?beck
> To: Sandeep Murthy , forum at gap-system.org
> Subject: Re: [GAP Forum] Changing memory allocation for GAP
> Message-ID: <20110113164117.GB26842 at beteigeuze>
> Content-Type: text/plain; charset=iso-8859-1
>
> On Wed, Jan 12, 2011 at 08:29:24PM +0000, Sandeep Murthy wrote:
>> Is there a command for starting GAP from the command line to
>> open with a higher memory allocation, like 256 MB, than the standard
>> one?
>>
>> I use GAP v.4.4.12 on Mac OS Leopard. At present, when I start GAP
>> I see the following:
>>
>> --------
>>
>> Loading the library. Please be patient, this may take a while.
>> GAP4, Version: 4.4.12 of 17-Dec-2008, i686-apple-darwin9.6.0-gcc
>> Components: small 2.1, small2 2.0, small3 2.0, small4 1.0, small5 1.0,
>> small6 1.0, small7 1.0, small8 1.0, small9 1.0, small10 0.2,
>> id2 3.0, id3 2.1, id4 1.0, id5 1.0, id6 1.0, id9 1.0, id10
>> 0.1,
>> trans 1.0, prim 2.1 loaded.
>> Packages: AutPGrp 1.2, CTblLib 1.1.3, TomLib 1.1.4, FactInt 1.5.2,
>> GAPDoc 1.2 loaded.
>> Error, file "-L" must exist and be readable
>> Error, file "-m" must exist and be readable
>> Error, file "128m" must exist and be readable
>> Error, file "-o" must exist and be readable
>> Error, file "512m" must exist and be readable
>>
>
>
> Dear Sandeep Murphy, dear Forum,
>
> To find an explaination in the GAP documentation type
>
> ?command line options
>
> into your GAP session. If one of the arguments in your call of GAP is
> a file name, then all further arguments are also interpreted as file names.
>
> So you should call GAP like:
> gap -m 128m -o 512m [maybe more options here] file1 file2 ...
>
> Using the -m option with a larger amount of memory does usually not give
> a big performance advantage. But using a higher value with the -o option
> causes that you see a message of form
>
> exceeded the permitted memory (`-o' command line option) at
> [...]
> brk>
>
> later than with the default value. (You can type 'return;' at that
> brk-prompt, then GAP doubles the value of the -o option.)
> Nevertheless, it does not make sense to specify with -o more memory than
> your GAP job has available as physical memory.
>
> With best regards,
> Frank L?beck
>
> --
> /// Dr. Frank L?beck, Lehrstuhl D f?r Mathematik, Templergraben 64, ///
> \\\ 52062 Aachen, Germany \\\
> /// E-mail: Frank.Luebeck at Math.RWTH-Aachen.De ///
> \\\ WWW: http://www.math.rwth-aachen.de/~Frank.Luebeck/ \\\
>
>
>
>
> ------------------------------
>
> Message: 7
> Date: Thu, 13 Jan 2011 10:20:17 -0700
> From: Alexander Hulpke
> To: gap forum
> Subject: Re: [GAP Forum] how TzGo worked with us
> Message-ID: <3196FBA1-3829-4234-A59D-9BC51E350DF3 at math.colostate.edu>
> Content-Type: text/plain; charset=us-ascii
>
>
>
> Dear Forum,
>
> On Jan 13, 2011, at 1/13/11 1:22, Igor Korepanov wrote:
>
>> And still one more comment: we calculated yesterday the fundamental group
>> of the 4-dimensional torus, which is, as everybody knows, the *abelian*
>> group with 4 generators. That is, the Fp Group with 4 generators and 6
>> relation of type a * b * a^-1 * b^-1 .
>>
>> And all that was happily present in our GAP result, but besides that,
>> there was one more redundant relation which we could derive manually from
>> 6 others, but the TzGo algorithm apparently could not!
>
> TzGo (the Tietze transformations command) uses a couple of heuristics, based
> on length criteria, to shorten a presentation, in particular if it was
> obtained from rewriting to a subgroup. It does not aim to do a systematic
> search for all redundancies. The primary aim is to get a presentation
> shorter with a moderate amount of effort, not to get an irredundant
> presentation or cover the largest possible class of decidable problems. It
> is clearly not optimal, but adding further attempts might cause an overall
> slowdown in other situations.
>
> Thus I'm not surprised that thinking (or even other algorithms that would be
> willing to devote more time) can produce better results in particular
> situations.
>
> Best wishes,
>
> Alexander Hulpke
>
>
>
>
> -- Colorado State University, Department of Mathematics,
> Weber Building, 1874 Campus Delivery, Fort Collins, CO 80523-1874, USA
> email: hulpke at math.colostate.edu, Phone: ++1-970-4914288
> http://www.math.colostate.edu/~hulpke
>
>
>
>
>
>
> ------------------------------
>
> Message: 8
> Date: Fri, 14 Jan 2011 15:24:16 +0100
> From: Max Horn
> To: GAP Forum
> Subject: [GAP Forum] Analogue of IsFFEMatrixGroup for matrix groups
> over ZmodnZ
> Message-ID: <01D99A4D-2E0A-46D6-BCA3-8B8D4163A180 at quendi.de>
> Content-Type: text/plain; charset=us-ascii
>
> Dear GAP forum
>
> is there an analogue for IsFFEMatrixGroup and FieldOfMatrixGroup for groups
> over ZmodnZ ? Something like IsZmodnZMatrixGroup and RingOfMatrixGroup ? I
> didn't find anything like that. If it doesn't exist, how would I best go
> about adding those?
>
> Background: I'd like to install my own methods for e.g. NiceMonomorphism for
> matrix groups over ZmodnZ. To illustrate why: for GL(3, Z/36Z), GAP
> currently finds a perm rep on 39312 points, my code finds one on 758 points
> (it doesn't do anything fancy or new, mind you)
>
> For now, I just "manually" use SetNiceMonomorphism on my groups, but I
> thought it would be kinda nice to properly hook this into GAP (so that maybe
> it could even be integrated in a package or GAP itself one day).
>
>
> Cheers,
> Max
>
>
>
>
> ------------------------------
>
> Message: 9
> Date: Fri, 14 Jan 2011 10:03:32 -0700
> From: Alexander Hulpke
> To: Max Horn
> Cc: GAP Forum
> Subject: Re: [GAP Forum] Analogue of IsFFEMatrixGroup for matrix
> groups over ZmodnZ
> Message-ID: <965B2533-1AC7-486E-ACAA-32BD16BCFC42 at math.colostate.edu>
> Content-Type: text/plain; charset=us-ascii
>
>
>
> Dear Forum,
>
> On Jan 14, 2011, at 1/14/11 7:24, Max Horn wrote:
>
>> is there an analogue for IsFFEMatrixGroup and FieldOfMatrixGroup for
>> groups over ZmodnZ ? Something like IsZmodnZMatrixGroup and
>> RingOfMatrixGroup ? I didn't find anything like that. If it doesn't exist,
>> how would I best go about adding those?
>
> Assuming you want to catch the case for nonprime n, the equivalent for
> IsFFEMatrixGroup would be
> IsZmodnZObjNonprimeCollCollColl and IsMatrixGroup
>
> To get the underlying ring, you could use
> DefaultRing(Flat(GeneratorsOfGroup(g)));
>
> Best wishes,
>
> Alexander Hulpke
>
>
>
>
>
>
>
> ------------------------------
>
> Message: 10
> Date: Sun, 16 Jan 2011 22:21:10 -0600
> From: Katie Morrison
> To: forum at gap-system.org
> Subject: [GAP Forum] Creating block matrices
> Message-ID:
>
> Content-Type: text/plain; charset=ISO-8859-1
>
> Hi all, I was wondering if there's an efficient way to create the subgroup
> of GL(2n, q) consisting of block matrices of the form:
> [A 0
> B C]
> where A and C are in GL(n,q) and B is in M(n,q) (i.e. B is an arbitrary nxn
> matrix). Thanks for the help.
>
> Katie
>
>
> ------------------------------
>
> _______________________________________________
> Forum mailing list
> Forum at mail.gap-system.org
> http://mail.gap-system.org/mailman/listinfo/forum
>
>
> End of Forum Digest, Vol 86, Issue 6
> ************************************
>
From sararadfarss at gmail.com Mon Jan 17 13:38:02 2011
From: sararadfarss at gmail.com (Sara Radfar)
Date: Mon, 17 Jan 2011 05:38:02 -0800
Subject: [GAP Forum] Forum Digest, Vol 86, Issue 6
In-Reply-To:
References:
Message-ID:
Dear All,
Hi
Let the set of the number of sylow subgroup $G$ equal to group $PSL(2,7)$
(that is {8,21,28}) .Whether by GAP we can say $G$ is solvable group
or unsolvable group?
Thanks,
Sara
On 1/17/11, Sara Radfar wrote:
> Dear All,
>
> How we can by GAP conlude all automorphism group $A_7 timesA_7$?
> Thanks,
> Sara
>
> On 1/16/11, forum-request at gap-system.org
> wrote:
>> Send Forum mailing list submissions to
>> forum at mail.gap-system.org
>>
>> To subscribe or unsubscribe via the World Wide Web, visit
>> http://mail.gap-system.org/mailman/listinfo/forum
>> or, via email, send a message with subject or body 'help' to
>> forum-request at mail.gap-system.org
>>
>> You can reach the person managing the list at
>> forum-owner at mail.gap-system.org
>>
>> When replying, please edit your Subject line so it is more specific
>> than "Re: Contents of Forum digest..."
>>
>>
>> Today's Topics:
>>
>> 1. Re: Changing memory allocation for GAP
>> (Asst. Prof. Dmitrii (Dima) Pasechnik)
>> 2. why zoo? (Igor Korepanov)
>> 3. how TzGo worked with us (Igor Korepanov)
>> 4. Re: why zoo? (Frank L?beck)
>> 5. Re: why zoo? (Asst. Prof. Dmitrii (Dima) Pasechnik)
>> 6. Re: Changing memory allocation for GAP (Frank L?beck)
>> 7. Re: how TzGo worked with us (Alexander Hulpke)
>> 8. Analogue of IsFFEMatrixGroup for matrix groups over ZmodnZ
>> (Max Horn)
>> 9. Re: Analogue of IsFFEMatrixGroup for matrix groups over
>> ZmodnZ (Alexander Hulpke)
>> 10. Creating block matrices (Katie Morrison)
>>
>>
>> ----------------------------------------------------------------------
>>
>> Message: 1
>> Date: Wed, 12 Jan 2011 18:09:05 -0800
>> From: "Asst. Prof. Dmitrii (Dima) Pasechnik"
>> To: Sandeep Murthy
>> Cc: GAP forum
>> Subject: Re: [GAP Forum] Changing memory allocation for GAP
>> Message-ID:
>>
>> Content-Type: text/plain; charset="UTF-8"
>>
>> Dear Sandeep,
>> it looks as if you start GAP in a wrong way.
>> (cause these > Error, file "-L" must exist and be readable
>>> Error, file "-m" must exist and be readable
>>> Error, file "128m" must exist and be readable
>>> Error, file "-o" must exist and be readable
>>> Error, file "512m" must exist and be readable
>> things are mangled details of command line arguments...)
>>
>> One way that works is to start it in a Terminal window.
>> Another is to use a special MacOSX application.
>>
>> Hope this helps,
>> Dmitrii
>>
>> On 12 January 2011 12:29, Sandeep Murthy
>> wrote:
>>> Hello.
>>>
>>> Is there a command for starting GAP from the command line to
>>> open with a higher memory allocation, like 256 MB, than the standard
>>> one?
>>>
>>> I use GAP v.4.4.12 on Mac OS Leopard. At present, when I start GAP
>>> I see the following:
>>>
>>> --------
>>>
>>> Loading the library. Please be patient, this may take a while.
>>> GAP4, Version: 4.4.12 of 17-Dec-2008, i686-apple-darwin9.6.0-gcc
>>> Components: small 2.1, small2 2.0, small3 2.0, small4 1.0, small5 1.0,
>>> small6 1.0, small7 1.0, small8 1.0, small9 1.0, small10 0.2,
>>> id2 3.0, id3 2.1, id4 1.0, id5 1.0, id6 1.0, id9 1.0, id10
>>> 0.1,
>>> trans 1.0, prim 2.1 loaded.
>>> Packages: AutPGrp 1.2, CTblLib 1.1.3, TomLib 1.1.4, FactInt 1.5.2,
>>> GAPDoc 1.2 loaded.
>>> Error, file "-L" must exist and be readable
>>> Error, file "-m" must exist and be readable
>>> Error, file "128m" must exist and be readable
>>> Error, file "-o" must exist and be readable
>>> Error, file "512m" must exist and be readable
>>>
>>> --------
>>>
>>> I run search algorithms on groups of exponential complexity, and they
>>> are intrinsically slow. But I'm hoping that by using a higher initial
>>> memory allocation, for practical purposes, my programs will cover
>>> more of the search space than they have so far.
>>>
>>> Sincerely, Sandeep.
>>>
>>>
>>> _______________________________________________
>>> Forum mailing list
>>> Forum at mail.gap-system.org
>>> http://mail.gap-system.org/mailman/listinfo/forum
>>>
>>
>>
>>
>> --
>> Dmitrii Pasechnik
>> -----
>> DISCLAIMER: Any text following this sentence does not constitute a
>> part of this message, and was added automatically during transmission.
>>
>> CONFIDENTIALITY: This email is intended solely for the person(s) named
>> and
>> may be confidential and/or privileged. If you are not the intended
>> recipient, please delete it, notify us and do not copy, use, or disclose
>> its
>> content. Thank you.
>>
>> Towards A Sustainable Earth: Print Only When Necessary
>>
>>
>>
>> ------------------------------
>>
>> Message: 2
>> Date: Thu, 13 Jan 2011 10:54:22 +0300
>> From: Igor Korepanov
>> To: forum at gap-system.org
>> Subject: [GAP Forum] why zoo?
>> Message-ID: <491691294905262 at web47.yandex.ru>
>> Content-Type: text/plain
>>
>> Just one more question: is .zoo a somehow preferred way of archiving for
>> GAP
>> people? And why so if .tar.bz2 is so evidently better?
>>
>> Igor
>>
>>
>>
>> ------------------------------
>>
>> Message: 3
>> Date: Thu, 13 Jan 2011 11:22:21 +0300
>> From: Igor Korepanov
>> To: forum at gap-system.org
>> Subject: [GAP Forum] how TzGo worked with us
>> Message-ID: <191761294906941 at web4.yandex.ru>
>> Content-Type: text/plain
>>
>> And still one more comment: we calculated yesterday the fundamental group
>> of
>> the 4-dimensional torus, which is, as everybody knows, the *abelian*
>> group
>> with 4 generators. That is, the Fp Group with 4 generators and 6 relation
>> of
>> type a * b * a^-1 * b^-1 .
>>
>> And all that was happily present in our GAP result, but besides that,
>> there
>> was one more redundant relation which we could derive manually from 6
>> others, but the TzGo algorithm apparently could not!
>>
>> We used some stuff of our own to define this fundamental group and then
>> the
>> usual TzGo command to simplify it.
>>
>> Of course I've heard of undecidable problems and stuff (as I am currently
>> employed as a university lecturer, like many people on this forum). But
>> this
>> particular problem must be decidable (here I searched Internet for a
>> suitable English interjection like "er?" to end my letter, but found only
>> some strange "Ekh-ma" http://en.wikipedia.org/wiki/Ekh_%28expression%29 )
>> ?
>>
>> Best wishes,
>>
>> Igor
>>
>>
>>
>> ------------------------------
>>
>> Message: 4
>> Date: Thu, 13 Jan 2011 10:37:54 +0100
>> From: Frank L?beck
>> To: forum at gap-system.org
>> Subject: Re: [GAP Forum] why zoo?
>> Message-ID: <20110113093754.GA19326 at beteigeuze>
>> Content-Type: text/plain; charset=iso-8859-1
>>
>> On Thu, Jan 13, 2011 at 10:54:22AM +0300, Igor Korepanov wrote:
>>> Just one more question: is .zoo a somehow preferred way of archiving for
>>> GAP people? And why so if .tar.bz2 is so evidently better?
>>
>> But all of our archives are provided in .zoo, .tar.gz, .tar.bz2 and
>> -win.zip
>> format. You are free to use what you like most!
>>
>> .tar.bz2 is not "evidently better", e.g. it does not unpack text files
>> under Windows/DOS with the native line break convention, and it is much
>> slower to unpack them compared to, say, .tar.gz.
>>
>> See
>> http://www.gap-system.org/Download/formats.html
>> for more details.
>>
>> Best regards,
>> Frank L?beck
>>
>> --
>> /// Dr. Frank L?beck, Lehrstuhl D f?r Mathematik, Templergraben 64, ///
>> \\\ 52062 Aachen, Germany \\\
>> /// E-mail: Frank.Luebeck at Math.RWTH-Aachen.De ///
>> \\\ WWW: http://www.math.rwth-aachen.de/~Frank.Luebeck/ \\\
>>
>>
>>
>>
>> ------------------------------
>>
>> Message: 5
>> Date: Thu, 13 Jan 2011 01:58:45 -0800
>> From: "Asst. Prof. Dmitrii (Dima) Pasechnik"
>> To: Igor Korepanov
>> Cc: "forum at gap-system.org"
>> Subject: Re: [GAP Forum] why zoo?
>> Message-ID:
>>
>> Content-Type: text/plain; charset="UTF-8"
>>
>> Igor,
>> .zoo is an old format, historically the first GAP was using, exclusively.
>>
>> About 10 years ago there were long discussions on this list whether one
>> should use other formats, and common sense prevailed, so .zoo is no
>> longer
>> the only format used.
>> Perhaps .zoo will be retired at some point...
>>
>> On 12 January 2011 23:54, Igor Korepanov wrote:
>>> Just one more question: is .zoo a somehow preferred way of archiving for
>>> GAP people? And why so if .tar.bz2 is so evidently better?
>>>
>>> Igor
>>>
>>> _______________________________________________
>>> Forum mailing list
>>> Forum at mail.gap-system.org
>>> http://mail.gap-system.org/mailman/listinfo/forum
>>>
>>
>>
>>
>> --
>> Dmitrii Pasechnik
>> -----
>> DISCLAIMER: Any text following this sentence does not constitute a
>> part of this message, and was added automatically during transmission.
>>
>> CONFIDENTIALITY: This email is intended solely for the person(s) named
>> and
>> may be confidential and/or privileged. If you are not the intended
>> recipient, please delete it, notify us and do not copy, use, or disclose
>> its
>> content. Thank you.
>>
>> Towards A Sustainable Earth: Print Only When Necessary
>>
>>
>>
>> ------------------------------
>>
>> Message: 6
>> Date: Thu, 13 Jan 2011 17:41:18 +0100
>> From: Frank L?beck
>> To: Sandeep Murthy , forum at gap-system.org
>> Subject: Re: [GAP Forum] Changing memory allocation for GAP
>> Message-ID: <20110113164117.GB26842 at beteigeuze>
>> Content-Type: text/plain; charset=iso-8859-1
>>
>> On Wed, Jan 12, 2011 at 08:29:24PM +0000, Sandeep Murthy wrote:
>>> Is there a command for starting GAP from the command line to
>>> open with a higher memory allocation, like 256 MB, than the standard
>>> one?
>>>
>>> I use GAP v.4.4.12 on Mac OS Leopard. At present, when I start GAP
>>> I see the following:
>>>
>>> --------
>>>
>>> Loading the library. Please be patient, this may take a while.
>>> GAP4, Version: 4.4.12 of 17-Dec-2008, i686-apple-darwin9.6.0-gcc
>>> Components: small 2.1, small2 2.0, small3 2.0, small4 1.0, small5 1.0,
>>> small6 1.0, small7 1.0, small8 1.0, small9 1.0, small10
>>> 0.2,
>>> id2 3.0, id3 2.1, id4 1.0, id5 1.0, id6 1.0, id9 1.0, id10
>>> 0.1,
>>> trans 1.0, prim 2.1 loaded.
>>> Packages: AutPGrp 1.2, CTblLib 1.1.3, TomLib 1.1.4, FactInt 1.5.2,
>>> GAPDoc 1.2 loaded.
>>> Error, file "-L" must exist and be readable
>>> Error, file "-m" must exist and be readable
>>> Error, file "128m" must exist and be readable
>>> Error, file "-o" must exist and be readable
>>> Error, file "512m" must exist and be readable
>>>
>>
>>
>> Dear Sandeep Murphy, dear Forum,
>>
>> To find an explaination in the GAP documentation type
>>
>> ?command line options
>>
>> into your GAP session. If one of the arguments in your call of GAP is
>> a file name, then all further arguments are also interpreted as file
>> names.
>>
>> So you should call GAP like:
>> gap -m 128m -o 512m [maybe more options here] file1 file2 ...
>>
>> Using the -m option with a larger amount of memory does usually not give
>> a big performance advantage. But using a higher value with the -o option
>> causes that you see a message of form
>>
>> exceeded the permitted memory (`-o' command line option) at
>> [...]
>> brk>
>>
>> later than with the default value. (You can type 'return;' at that
>> brk-prompt, then GAP doubles the value of the -o option.)
>> Nevertheless, it does not make sense to specify with -o more memory than
>> your GAP job has available as physical memory.
>>
>> With best regards,
>> Frank L?beck
>>
>> --
>> /// Dr. Frank L?beck, Lehrstuhl D f?r Mathematik, Templergraben 64, ///
>> \\\ 52062 Aachen, Germany \\\
>> /// E-mail: Frank.Luebeck at Math.RWTH-Aachen.De ///
>> \\\ WWW: http://www.math.rwth-aachen.de/~Frank.Luebeck/ \\\
>>
>>
>>
>>
>> ------------------------------
>>
>> Message: 7
>> Date: Thu, 13 Jan 2011 10:20:17 -0700
>> From: Alexander Hulpke
>> To: gap forum
>> Subject: Re: [GAP Forum] how TzGo worked with us
>> Message-ID: <3196FBA1-3829-4234-A59D-9BC51E350DF3 at math.colostate.edu>
>> Content-Type: text/plain; charset=us-ascii
>>
>>
>>
>> Dear Forum,
>>
>> On Jan 13, 2011, at 1/13/11 1:22, Igor Korepanov wrote:
>>
>>> And still one more comment: we calculated yesterday the fundamental
>>> group
>>> of the 4-dimensional torus, which is, as everybody knows, the *abelian*
>>> group with 4 generators. That is, the Fp Group with 4 generators and 6
>>> relation of type a * b * a^-1 * b^-1 .
>>>
>>> And all that was happily present in our GAP result, but besides that,
>>> there was one more redundant relation which we could derive manually
>>> from
>>> 6 others, but the TzGo algorithm apparently could not!
>>
>> TzGo (the Tietze transformations command) uses a couple of heuristics,
>> based
>> on length criteria, to shorten a presentation, in particular if it was
>> obtained from rewriting to a subgroup. It does not aim to do a systematic
>> search for all redundancies. The primary aim is to get a presentation
>> shorter with a moderate amount of effort, not to get an irredundant
>> presentation or cover the largest possible class of decidable problems.
>> It
>> is clearly not optimal, but adding further attempts might cause an
>> overall
>> slowdown in other situations.
>>
>> Thus I'm not surprised that thinking (or even other algorithms that would
>> be
>> willing to devote more time) can produce better results in particular
>> situations.
>>
>> Best wishes,
>>
>> Alexander Hulpke
>>
>>
>>
>>
>> -- Colorado State University, Department of Mathematics,
>> Weber Building, 1874 Campus Delivery, Fort Collins, CO 80523-1874, USA
>> email: hulpke at math.colostate.edu, Phone: ++1-970-4914288
>> http://www.math.colostate.edu/~hulpke
>>
>>
>>
>>
>>
>>
>> ------------------------------
>>
>> Message: 8
>> Date: Fri, 14 Jan 2011 15:24:16 +0100
>> From: Max Horn
>> To: GAP Forum
>> Subject: [GAP Forum] Analogue of IsFFEMatrixGroup for matrix groups
>> over ZmodnZ
>> Message-ID: <01D99A4D-2E0A-46D6-BCA3-8B8D4163A180 at quendi.de>
>> Content-Type: text/plain; charset=us-ascii
>>
>> Dear GAP forum
>>
>> is there an analogue for IsFFEMatrixGroup and FieldOfMatrixGroup for
>> groups
>> over ZmodnZ ? Something like IsZmodnZMatrixGroup and RingOfMatrixGroup ?
>> I
>> didn't find anything like that. If it doesn't exist, how would I best go
>> about adding those?
>>
>> Background: I'd like to install my own methods for e.g. NiceMonomorphism
>> for
>> matrix groups over ZmodnZ. To illustrate why: for GL(3, Z/36Z), GAP
>> currently finds a perm rep on 39312 points, my code finds one on 758
>> points
>> (it doesn't do anything fancy or new, mind you)
>>
>> For now, I just "manually" use SetNiceMonomorphism on my groups, but I
>> thought it would be kinda nice to properly hook this into GAP (so that
>> maybe
>> it could even be integrated in a package or GAP itself one day).
>>
>>
>> Cheers,
>> Max
>>
>>
>>
>>
>> ------------------------------
>>
>> Message: 9
>> Date: Fri, 14 Jan 2011 10:03:32 -0700
>> From: Alexander Hulpke
>> To: Max Horn
>> Cc: GAP Forum
>> Subject: Re: [GAP Forum] Analogue of IsFFEMatrixGroup for matrix
>> groups over ZmodnZ
>> Message-ID: <965B2533-1AC7-486E-ACAA-32BD16BCFC42 at math.colostate.edu>
>> Content-Type: text/plain; charset=us-ascii
>>
>>
>>
>> Dear Forum,
>>
>> On Jan 14, 2011, at 1/14/11 7:24, Max Horn wrote:
>>
>>> is there an analogue for IsFFEMatrixGroup and FieldOfMatrixGroup for
>>> groups over ZmodnZ ? Something like IsZmodnZMatrixGroup and
>>> RingOfMatrixGroup ? I didn't find anything like that. If it doesn't
>>> exist,
>>> how would I best go about adding those?
>>
>> Assuming you want to catch the case for nonprime n, the equivalent for
>> IsFFEMatrixGroup would be
>> IsZmodnZObjNonprimeCollCollColl and IsMatrixGroup
>>
>> To get the underlying ring, you could use
>> DefaultRing(Flat(GeneratorsOfGroup(g)));
>>
>> Best wishes,
>>
>> Alexander Hulpke
>>
>>
>>
>>
>>
>>
>>
>> ------------------------------
>>
>> Message: 10
>> Date: Sun, 16 Jan 2011 22:21:10 -0600
>> From: Katie Morrison
>> To: forum at gap-system.org
>> Subject: [GAP Forum] Creating block matrices
>> Message-ID:
>>
>> Content-Type: text/plain; charset=ISO-8859-1
>>
>> Hi all, I was wondering if there's an efficient way to create the
>> subgroup
>> of GL(2n, q) consisting of block matrices of the form:
>> [A 0
>> B C]
>> where A and C are in GL(n,q) and B is in M(n,q) (i.e. B is an arbitrary
>> nxn
>> matrix). Thanks for the help.
>>
>> Katie
>>
>>
>> ------------------------------
>>
>> _______________________________________________
>> Forum mailing list
>> Forum at mail.gap-system.org
>> http://mail.gap-system.org/mailman/listinfo/forum
>>
>>
>> End of Forum Digest, Vol 86, Issue 6
>> ************************************
>>
>
From alexander.konovalov at gmail.com Mon Jan 17 13:57:22 2011
From: alexander.konovalov at gmail.com (Alexander Konovalov)
Date: Mon, 17 Jan 2011 13:57:22 +0000
Subject: [GAP Forum] Forum Digest, Vol 86, Issue 6
In-Reply-To:
References:
Message-ID: <9ABFD284-3006-49F5-9B6C-019DEC15C97B@gmail.com>
Dear Sara,
Have you tried the following:
AutomorphismGroup( DirectProduct( AlternatingGroup(7), AlternatingGroup(7) ) );
- this works quite straightforwardly.
May I also advise you the following: the Forum digest already says
>> When replying, please edit your Subject line so it is more specific
>> than "Re: Contents of Forum digest..."
(and you do not need to include a copy of the whole digest in this reply).
Alternatively, you may just write a new message to forum at gap-system.org
instead of replying to a digest, and choose a more relevant subject.
Best wishes,
Alexander
From ahulpke at gmail.com Mon Jan 17 15:35:57 2011
From: ahulpke at gmail.com (Alexander Hulpke)
Date: Mon, 17 Jan 2011 08:35:57 -0700
Subject: [GAP Forum] Forum Digest, Vol 86, Issue 6
In-Reply-To:
References:
Message-ID: <6D3BC342-E879-4A25-866C-13E4FF516B6C@gmail.com>
Dear Forum,
> Let the set of the number of sylow subgroup $G$ equal to group $PSL(2,7)$
> (that is {8,21,28}) .Whether by GAP we can say $G$ is solvable group
> or unsolvable group?
This is a question that is not really suitable for computer analysis -- clearly the answer is known and is `unsolvable'.
You might want to look in the book
Abstract Algebra by Dummit and Foote
I believe they show uniqueness of L3(2) as a simple group of order 168.
Best,
Alexander Hulpke
-- Colorado State University, Department of Mathematics,
Weber Building, 1874 Campus Delivery, Fort Collins, CO 80523-1874, USA
email: hulpke at math.colostate.edu, Phone: ++1-970-4914288
http://www.math.colostate.edu/~hulpke
From ahulpke at gmail.com Mon Jan 17 15:57:06 2011
From: ahulpke at gmail.com (Alexander Hulpke)
Date: Mon, 17 Jan 2011 08:57:06 -0700
Subject: [GAP Forum] Creating block matrices
In-Reply-To:
References:
Message-ID:
Dear Forum,
In addition to the code given by Dima Pasechnik, the following might come useful for similar constructs:
> Hi all, I was wondering if there's an efficient way to create the subgroup
> of GL(2n, q) consisting of block matrices of the form:
> [A 0
> B C]
> where A and C are in GL(n,q) and B is in M(n,q) (i.e. B is an arbitrary nxn
> matrix). Thanks for the help.
Clearly, if we can generate [A,0;0,1], [1,0;B,1] and [1,0;0,C] we get all. Furthermore it is an easy exercise to see that for B only the matrix with a single entry in position 1,1 will suffice, as A and C will generate the rest.
So lets first generate the two diagonal blocks from taking generators for A and C from generators of GL(n,q). For example for n=3 and q=5:
gap> n:=3;q:=5;
3
5
gap> G:=GL(n,q);
GL(3,5)
gap> gens:=[];
[ ]
gap> Ggens:=GeneratorsOfGroup(G);
[ [ [ Z(5), 0*Z(5), 0*Z(5) ], [ 0*Z(5), Z(5)^0, 0*Z(5) ], [ 0*Z(5), 0*Z(5), Z(5)^0 ] ],
[ [ Z(5)^2, 0*Z(5), Z(5)^0 ], [ Z(5)^2, 0*Z(5), 0*Z(5) ], [ 0*Z(5), Z(5)^2, 0*Z(5) ] ] ]
Now make generators of shape [A,0;0,1] by overwriting an identity matrix, using the peculiar syntax for iterated sublists:
gap> mat:=MutableIdentityMat(2*n,GF(q));
< mutable compressed matrix 6x6 over GF(5) >
gap> mat{[1..n]}{[1..n]}:=Ggens[1];
[ [ Z(5), 0*Z(5), 0*Z(5) ], [ 0*Z(5), Z(5)^0, 0*Z(5) ], [ 0*Z(5), 0*Z(5), Z(5)^0 ] ]
gap> Add(gens,mat);
gap> mat:=MutableIdentityMat(2*n,GF(q));
< mutable compressed matrix 6x6 over GF(5) >
gap> mat{[1..n]}{[1..n]}:=Ggens[2];
[ [ Z(5)^2, 0*Z(5), Z(5)^0 ], [ Z(5)^2, 0*Z(5), 0*Z(5) ], [ 0*Z(5), Z(5)^2, 0*Z(5) ] ]
gap> Display(mat); # just to see the shape
4 . 1 . . .
4 . . . . .
. 4 . . . .
. . . 1 . .
. . . . 1 .
. . . . . 1
gap> Add(gens,mat);
The same for C:
gap> mat:=MutableIdentityMat(2*n,GF(q));
< mutable compressed matrix 6x6 over GF(5) >
gap> mat{[n+1..2*n]}{[n+1..2*n]}:=Ggens[1];
[ [ Z(5), 0*Z(5), 0*Z(5) ], [ 0*Z(5), Z(5)^0, 0*Z(5) ], [ 0*Z(5), 0*Z(5), Z(5)^0 ] ]
gap> Add(gens,mat);
gap> mat:=MutableIdentityMat(2*n,GF(q));
< mutable compressed matrix 6x6 over GF(5) >
gap> mat{[n+1..2*n]}{[n+1..2*n]}:=Ggens[2];
[ [ Z(5)^2, 0*Z(5), Z(5)^0 ], [ Z(5)^2, 0*Z(5), 0*Z(5) ], [ 0*Z(5), Z(5)^2, 0*Z(5) ] ]
gap> Add(gens,mat);
Finally the one matrix for B:
gap> mat:=MutableIdentityMat(2*n,GF(q));
< mutable compressed matrix 6x6 over GF(5) >
gap> mat[n+1][1]:=One(GF(q));
Z(5)^0
gap> Add(gens,mat);
Now lets verify that we really got all:
gap> H:=Group(gens);
gap> Size(H);
4324500000000000000
gap> Size(G)^2*q^(n*n);
4324500000000000000
Best wishes,
Alexander Hulpke
>
-- Colorado State University, Department of Mathematics,
Weber Building, 1874 Campus Delivery, Fort Collins, CO 80523-1874, USA
email: hulpke at math.colostate.edu, Phone: ++1-970-4914288
http://www.math.colostate.edu/~hulpke
From kmorris2 at gmail.com Mon Jan 17 18:50:05 2011
From: kmorris2 at gmail.com (Katie Morrison)
Date: Mon, 17 Jan 2011 12:50:05 -0600
Subject: [GAP Forum] Memory Limit of GAP?
Message-ID:
Hi all, I was wondering what the memory limit is for GAP? I've been
performing a number of calculations in the student version of Magma, which
has a memory limit of 150MB, but now that I'm trying to perform calculations
with larger matrices, I've exceeded that memory limit. Does GAP have a
significantly better memory limit such that it's worth it for me to
translate my Magma code into GAP code? Thanks for the advice.
Katie
From ahulpke at gmail.com Mon Jan 17 19:07:24 2011
From: ahulpke at gmail.com (Alexander Hulpke)
Date: Mon, 17 Jan 2011 12:07:24 -0700
Subject: [GAP Forum] Memory Limit of GAP?
In-Reply-To:
References:
Message-ID: <2F4FA3DF-2D3B-4C54-A4FA-A0AFB494C368@gmail.com>
The memory limit in GAP is what your machine can cope with -- i.e. I would put it at roughly 3/4 of physical memory - the rest is often used by the operating system and the machine crawls down to an unusable speed if you use more. (and of course limited to <4GB if GAP is compiled for 32bit). GAP itself does not limit the process size and on a modern machine you thus should easily have a magnitude of memory more available than what the student version lets you do.
As a safety device for acidentally huge GAP jobs taking over a machine, GAP will initially issue an Error message ``out of memory'' when processes use more then 256MB, you can simply type
return;
at this point and GAP will continue with a higher limit (or you could start with the -o command line option to raise the limit a priori).
If you start GAP with the -g command line option you will get intermediate output about memory used.
Best wishes,
Alexander Hulpke
On Jan 17, 2011, at 11:50 AM, Katie Morrison wrote:
> Hi all, I was wondering what the memory limit is for GAP? I've been
> performing a number of calculations in the student version of Magma, which
> has a memory limit of 150MB, but now that I'm trying to perform calculations
> with larger matrices, I've exceeded that memory limit. Does GAP have a
> significantly better memory limit such that it's worth it for me to
> translate my Magma code into GAP code? Thanks for the advice.
>
> Katie
> _______________________________________________
> Forum mailing list
> Forum at mail.gap-system.org
> http://mail.gap-system.org/mailman/listinfo/forum
-- Colorado State University, Department of Mathematics,
Weber Building, 1874 Campus Delivery, Fort Collins, CO 80523-1874, USA
email: hulpke at math.colostate.edu, Phone: ++1-970-4914288
http://www.math.colostate.edu/~hulpke
From juniomoreira22 at yahoo.com.br Sun Jan 16 23:49:03 2011
From: juniomoreira22 at yahoo.com.br (Junio Moreira)
Date: Sun, 16 Jan 2011 15:49:03 -0800 (PST)
Subject: [GAP Forum] Help_GAP-groups
Message-ID: <676862.85409.qm@web161704.mail.bf1.yahoo.com>
I'm always needing to learn more about the GAP-groups. Can anyone help me on the following question? Question: I have a list of 500 sublist where each sublist consists of six groups. Is there a command to display or renumber only those sublists with trivial intersection? Is there a function in GAP can solve this?
From sararadfarss at gmail.com Tue Jan 18 13:31:00 2011
From: sararadfarss at gmail.com (Sara Radfar)
Date: Tue, 18 Jan 2011 05:31:00 -0800
Subject: [GAP Forum] Help
Message-ID:
Dear GAP Forum,
Hi
I need a code that tell me whether exist a small group $G$ such that
the set of the number of sylow subgroup it be ${1,9,17}$.
Thanks,
Sara
From Bill.Allombert at math.u-bordeaux1.fr Tue Jan 18 17:26:31 2011
From: Bill.Allombert at math.u-bordeaux1.fr (Bill Allombert)
Date: Tue, 18 Jan 2011 18:26:31 +0100
Subject: [GAP Forum] Help
In-Reply-To:
References:
Message-ID: <20110118172631.GB23080@yellowpig>
On Tue, Jan 18, 2011 at 05:31:00AM -0800, Sara Radfar wrote:
> Dear GAP Forum,
>
> Hi
> I need a code that tell me whether exist a small group $G$ such that
> the set of the number of sylow subgroup it be ${1,9,17}$.
Maybe this is an exercise or something but it seems to me that, if Np is the
number or p-Sylow, then Np = 1 (mod p), so if Np=17 then p=2 and if Np=9 then
also p=2, so this is not possible.
In other word, the code to solve this is:
false;
Cheers,
Bill.
From ahulpke at gmail.com Tue Jan 18 18:32:22 2011
From: ahulpke at gmail.com (Alexander Hulpke)
Date: Tue, 18 Jan 2011 11:32:22 -0700
Subject: [GAP Forum] Help_GAP-groups
In-Reply-To: <676862.85409.qm@web161704.mail.bf1.yahoo.com>
References: <676862.85409.qm@web161704.mail.bf1.yahoo.com>
Message-ID: <1C33376E-1E2C-4798-B8D4-3B47C21E4E21@gmail.com>
Dear Forum,
On Jan 16, 2011, at 1/16/11 4:49, Junio Moreira wrote:
> I'm always needing to learn more about the GAP-groups. Can anyone help me on the following question? Question: I have a list of 500 sublist where each sublist consists of six groups. Is there a command to display or renumber only those sublists with trivial intersection? Is there a function in GAP can solve this?
If the entries in the sublist are algebraic structures (i.e. ``trivial'' means order 1), you could use
Filtered(list,sub->Size(Intersection(sub))=1);
to give you a sublist of the desired entries.(replace 1 by 0 if trivial means empty)
If instead you wanted the index numbers in your original list, you could use
Filtered([1..Length(list)],n->Size(Intersection(list[n]))=1);
Best,
Alexander Hulpke
-- Colorado State University, Department of Mathematics,
Weber Building, 1874 Campus Delivery, Fort Collins, CO 80523-1874, USA
email: hulpke at math.colostate.edu, Phone: ++1-970-4914288
http://www.math.colostate.edu/~hulpke
From dima at ntu.edu.sg Wed Jan 19 06:05:25 2011
From: dima at ntu.edu.sg (Asst. Prof. Dmitrii (Dima) Pasechnik)
Date: Wed, 19 Jan 2011 14:05:25 +0800
Subject: [GAP Forum] computerised exams for computer algebra courses?
Message-ID:
Dear all,
I will be teaching an "Experimental mathematics" (with elements of
computer algebra, and in
particular GAP) course next year, and
I am looking for sources/howtos, etc., on conducting computerised
exams for such a course.
In my school this is presently not done, so we need to find out how to
set such a thing
up properly, without spending too much time and money on it.
Thanks in advance,
Dmitrii
CONFIDENTIALITY: This email is intended solely for the person(s) named and may be confidential and/or privileged. If you are not the intended recipient, please delete it, notify us and do not copy, use, or disclose its content. Thank you.
Towards A Sustainable Earth: Print Only When Necessary
From said70th at gmail.com Wed Jan 19 19:45:05 2011
From: said70th at gmail.com (Conference on Algebra and Applications - Said70)
Date: Wed, 19 Jan 2011 17:45:05 -0200
Subject: [GAP Forum] Conference on Algebra and Applications in honour of
Prof. Said Sidki on the occasion of his 70th birthday
Message-ID:
Dear collegues,
The organizing committee is very pleased to announce the
international Conference on Algebra and Applications, which
will take place in Caldas Novas (Brazil) from Sunday 8th
until Thurday 12th of May, 2011.
A conference website http://www.mat.ufg.br/algebra is at
present being constructed.
More information will be given in a timely manner. But for any
enquiry, please feel free to email said70th at gmail.com .
Best regards,
The organizing committee.
Event Title: Conference on Algebra and Applications in honour of
Prof. Said Sidki on the occasion of his 70th birthday
Date: 08.may.2011 - 12.may.2011
Location: Caldas Novas, Goias/Brazil
URL: http://www.mat.ufg.br/algebra
Description: This conference will bring together many of the leading
mathematicians to report on recent developments of broad interest
and to point the way for exciting directions for future research. In this
way we plan to honor the significant contributions of Prof. Said N. Sidki
on the occasion of his 70th birthday.
Topics: Group Theory; Ring Theory; Commutative Algebra and Algebraic
Geometry; Associative and Non-associative Algebras; Number Theory;
Applications.
Invited Speakers: Efim Zelmanov (University of California, USA);
Rostislav Grigorchuk (Texas A&M University, USA); Donald Passman (University
of
Wisconsin-Madison, USA) - George Glauberman (University of Chicago, USA);
Laurent Bartholdi (University of Gottingen, Germany); Vladimir Nekrashevich
(Texas A&M University, USA); Thomas Muller (Queen Mary College, University
of
London, UK); Zoran Sunik (Texas A&M University, USA).
From alexk at mcs.st-andrews.ac.uk Thu Jan 20 00:32:11 2011
From: alexk at mcs.st-andrews.ac.uk (Alexander Konovalov)
Date: Thu, 20 Jan 2011 00:32:11 +0000
Subject: [GAP Forum] computerised exams for computer algebra courses?
In-Reply-To:
References:
Message-ID:
Hi Dima,
On 19 Jan 2011, at 06:05, Asst. Prof. Dmitrii (Dima) Pasechnik wrote:
> Dear all,
>
> I will be teaching an "Experimental mathematics" (with elements of
> computer algebra, and in
> particular GAP) course next year, and
> I am looking for sources/howtos, etc., on conducting computerised
> exams for such a course.
It's not precisely clear what do you or your school mean by a computerised exam:
1) computer-generated exam papers where each student will have a different set of questions?
2) students passing exam on a computer doing their calculations on paper and entering answers?
3) computer algebra system as a back-end of this system to verify the answer in real time?
4) a combination of this features?
5) something else? or are you happy with exam papers where there are no questions asking for
definitions and proofs?
> In my school this is presently not done, so we need to find out how to
> set such a thing
> up properly, without spending too much time and money on it.
Several links may be worth to look:
http://www.math.rwth-aachen.de/~OKUSON/ by Frank and Max
http://moodle.org/
http://java.symcomp.org/
Hope this helps!
Alexander
From dima at ntu.edu.sg Thu Jan 20 01:36:44 2011
From: dima at ntu.edu.sg (Asst. Prof. Dmitrii (Dima) Pasechnik)
Date: Thu, 20 Jan 2011 09:36:44 +0800
Subject: [GAP Forum] computerised exams for computer algebra courses?
In-Reply-To:
References:
Message-ID:
On 20 January 2011 08:32, Alexander Konovalov
wrote:
> Hi Dima,
>
> On 19 Jan 2011, at 06:05, Asst. Prof. Dmitrii (Dima) Pasechnik wrote:
>
>> Dear all,
>>
>> I will be teaching an "Experimental mathematics" (with elements of
>> computer algebra, and in
>> particular GAP) course next year, and
>> I am looking for sources/howtos, etc., on conducting computerised
>> exams for such a course.
>
> It's not precisely clear what do you or your school mean by a computerised exam:
> 1) computer-generated exam papers where each student will have a different set of questions?
> 2) students passing exam on a computer doing their calculations on paper and entering answers?
> 3) computer algebra system as a back-end of this system to verify the answer in real time?
> 4) a combination of this features?
> 5) something else? or are you happy with exam papers where there are no questions asking for
> definitions and proofs?
Mostly 1), 2), and 5) --- namely, we would like to examine the ability
to write elementary (and working!) pieces
of computer code. Doing this on paper is a pain.
>
>> In my school this is presently not done, so we need to find out how to
>> set such a thing
>> up properly, without spending too much time and money on it.
>
> Several links may be worth to look:
>
> http://www.math.rwth-aachen.de/~OKUSON/ by Frank and Max
> http://moodle.org/
> http://java.symcomp.org/
>
well, unfortunately, our school uses Blackboard, which is a nightmare,
as soon as nontrivial
tasks have to be implemented...
>
> Hope this helps!
> Alexander
>
>
>
--
Dmitrii Pasechnik
-----
DISCLAIMER: Any text following this sentence does not constitute a
part of this message, and was added automatically during transmission.
CONFIDENTIALITY: This email is intended solely for the person(s) named and may be confidential and/or privileged. If you are not the intended recipient, please delete it, notify us and do not copy, use, or disclose its content. Thank you.
Towards A Sustainable Earth: Print Only When Necessary
From sal at mcs.st-andrews.ac.uk Thu Jan 20 10:21:52 2011
From: sal at mcs.st-andrews.ac.uk (Stephen Linton)
Date: Thu, 20 Jan 2011 10:21:52 +0000
Subject: [GAP Forum] computerised exams for computer algebra courses?
In-Reply-To:
References:
Message-ID:
On 20 Jan 2011, at 01:36, Asst. Prof. Dmitrii (Dima) Pasechnik wrote:
>
> Mostly 1), 2), and 5) --- namely, we would like to examine the ability
> to write elementary (and working!) pieces
> of computer code. Doing this on paper is a pain.
Every Computer Science department I know uses homework for this rather than exams. Exams might ask for a few lines of code, usually not worrying too much about perfect syntax, or, more commonly, present code fragments and ask questions about what they do -- this can be quite subtle and test understanding well. Asking students to write and debug code in exam conditions is generally too much grief.
It is possible to run "exam-quality" lab sessions -- we call them "skills tests", but it's a lot of work. You need to make the instructions very clear indeed, provide extra computers (and some means of recovering work done so far) for students whose machines fail or freeze or whatever, turn off internet access or have enough invigilators that you can reliably spot anyone using email or chat, and have different version of the test for each "lab-full" of students and then make sure the marks are comparable.
Of course homework raises cheating issues, but it's pretty easy to spot two students whose code only differs in variable names and comments.
Steve
From Bartosz.Putrycz at mat.ug.edu.pl Thu Jan 20 19:31:14 2011
From: Bartosz.Putrycz at mat.ug.edu.pl (Bartosz Putrycz)
Date: Thu, 20 Jan 2011 20:31:14 +0100
Subject: [GAP Forum] Schreier system of representatives
Message-ID: <4D388D82.8020906@mat.ug.edu.pl>
Dear Forum,
I am interested in obtaining Schreier system of representatives of right
cosets of a subgroup of a finitely presented group.
http://eom.springer.de/S/s083400.htm
Let G = F/R, H< G. Could I be sure that
RightTransversal(G,H)
will give me such system?
I guess that there could be silent assumption that generators(alphabet) are
the generators of a free group F.
If I couldn't, is there other way to be sure?
It is working like that for any example which I tried.
For Example:
F:=FreeGroup("a","b","x");;
G:=F/[F.1^2,F.2^4,F.3^2,(F.1*F.2)^3,F.3*F.1*F.3*(F.1*F.2*F.1*F.2^-1*F.1),F.3*F.2*F.3*(F.2^-1*F.1*F.2*F.2*F.2^-1*F.1*F.2)];;
AssignGeneratorVariables(G);
K:=FreeGroup("x1","e1","c0","c1","c2");;
L:=K/[K.1^2, K.3^2, K.4^2, K.5^2, K.1*K.2, (K.3*K.4)^2, (K.4*K.5)^4, K.1*K.5*K.1*K.3];;
AssignGeneratorVariables(L);
theta:=GroupHomomorphismByImages(L,G,[x1,e1,c0,c1,c2],[a,a,x,x*b^-1*a*b,x*b^-1*a*b^2]);;
J:=Kernel(theta);;
C:=AsList(RightTransversal(L,J));
which gives me Schreier system:
[, x1, c0, c1, c2, x1*c0, x1*c1, x1*c2, c0*c1, c0*c2, c1*x1, c1*c2, c2*c0, c2*c1, x1*c0*c1, x1*c0*c2, x1*c1*x1, x1*c1*c2, x1*c2*c0,
x1*c2*c1, c0*c1*x1, c0*c1*c2, c0*c2*c0, c0*c2*c1, c1*x1*c0, c1*x1*c1, c1*c2*c0, c1*c2*c1, c2*c0*c1, c2*c1*x1, c2*c1*c2, x1*c0*c1*x1, x1*c0*c1*c2,
x1*c0*c2*c0, x1*c0*c2*c1, x1*c1*x1*c0, x1*c1*x1*c1, x1*c2*c0*c1, x1*c2*c1*x1, x1*c2*c1*c2, c0*c1*x1*c0, c0*c1*x1*c1, c0*c1*c2*c0, c0*c2*c0*c1,
c1*x1*c0*c1, c1*c2*c1*c2, c2*c0*c1*x1, x1*c0*c2*c0*c1 ]
Best regards
Bartosz Putrycz
From kmorris2 at gmail.com Thu Jan 20 21:53:25 2011
From: kmorris2 at gmail.com (Katie Morrison)
Date: Thu, 20 Jan 2011 15:53:25 -0600
Subject: [GAP Forum] Intersection of groups
Message-ID:
Hi all, I was wondering if there was a command to find the intersection of
two groups that was more efficient than just the standard Intersection
command. I'm currently trying to intersect two matrix groups, one which has
size on the order of 10^13 and the other which has size on the order of
10^22. I let GAP run overnight and it still had not found the intersection
of these two groups when I used the Intersection command. I'm very
surprised though because I had performed literally the same calculation in
Magma on an earlier occasion using the command meet and the calculation
finished in under a second in Magma. I created the groups in precisely the
same way in Magma as I did in GAP, so I'm really not sure why the
calculation ran so quickly in Magma, but seems to have failed in GAP. If
anyone has any advice on this topic, I'd really appreciate it. Thanks for
the help.
Katie
From ahulpke at gmail.com Thu Jan 20 23:36:56 2011
From: ahulpke at gmail.com (Alexander Hulpke)
Date: Thu, 20 Jan 2011 16:36:56 -0700
Subject: [GAP Forum] Schreier system of representatives
In-Reply-To: <4D388D82.8020906@mat.ug.edu.pl>
References: <4D388D82.8020906@mat.ug.edu.pl>
Message-ID: <11F3D3F7-DC29-4CB9-8D1D-0138AF84E5F0@gmail.com>
Dear Forum, Dear Bartosz Putrycz,
On Jan 20, 2011, at 12:31 PM, Bartosz Putrycz wrote:
> Dear Forum,
>
> I am interested in obtaining Schreier system of representatives of right
> cosets of a subgroup of a finitely presented group.
> http://eom.springer.de/S/s083400.htm
>
> Let G = F/R, H< G. Could I be sure that
> RightTransversal(G,H)
> will give me such system?
> I guess that there could be silent assumption that generators(alphabet) are
> the generators of a free group F.
This is true with the only caveat that ``right cosets'' in GAP parlance mean Sg, while the linked web page seems to describe cosets gS.
The alphabet indeed are the (images in G) of the free generators.
Best wishes,
Alexander Hulpke
>
-- Colorado State University, Department of Mathematics,
Weber Building, 1874 Campus Delivery, Fort Collins, CO 80523-1874, USA
email: hulpke at math.colostate.edu, Phone: ++1-970-4914288
http://www.math.colostate.edu/~hulpke
From ahulpke at gmail.com Fri Jan 21 00:01:26 2011
From: ahulpke at gmail.com (Alexander Hulpke)
Date: Thu, 20 Jan 2011 17:01:26 -0700
Subject: [GAP Forum] Intersection of groups
In-Reply-To:
References:
Message-ID: <877AF7DB-15DC-45B9-8F80-0B676F67088B@gmail.com>
Dear Forum, Dear Katie Morrison,
> Hi all, I was wondering if there was a command to find the intersection of
> two groups that was more efficient than just the standard Intersection
> command. I'm currently trying to intersect two matrix groups, one which has
> size on the order of 10^13 and the other which has size on the order of
> 10^22. I let GAP run overnight and it still had not found the intersection
> of these two groups when I used the Intersection command.
Normally `Intersection' should do as good as it is implemented, but here you're running into a particular quirk of GAP (This could be considered as a bug, and I will have a look at it to see whether this can be fixed for the future):
The two groups you created don't share a common overgroup (which could be simply GL). At this point, GAP does not try to construct such an overgroup, but calculates the intersection using cosets for both subgroups. This turns out to be a very tedious process and I believe that it could take days to complete.
A remedy is easy: Force both groups to be subgroups of the appropriate GL -- in your example:
gap> parent:=GL(8,3);
GL(8,3)
gap> u1:=AsSubgroup(parent,GOn);
gap> u2:=AsSubgroup(parent,StabMats);
gap> Intersection(u1,u2);
This should work reasonably quick.
You might wonder why GAP in the first place tries to avoid constructing the common overgroup: At the moment, intersection of subgroups of a matrix group uses a faithful permutation representation of the common parent group. If you now have two small matrix groups (order a few hundred) for which the common overgroup is huge (say two cyclic subgroups of GL(20,11)), this permutation representation will fail (or be at least very slow), while the more naive intersection will work fine.
We need to select a break-even point for the choice of method.
Hope this helps,
Alexander Hulpke
-- Colorado State University, Department of Mathematics,
Weber Building, 1874 Campus Delivery, Fort Collins, CO 80523-1874, USA
email: hulpke at math.colostate.edu, Phone: ++1-970-4914288
http://www.math.colostate.edu/~hulpke
From williamdemeo at gmail.com Sat Jan 22 04:11:55 2011
From: williamdemeo at gmail.com (William DeMeo)
Date: Fri, 21 Jan 2011 18:11:55 -1000
Subject: [GAP Forum] speed of Core vs IsNormal
Message-ID:
I apologize if this is a dumb question, but I'm trying to speed up a
program that is searching for certain groups. In the examples I'm
looking for, I have a subgroup H of a group G and I need to test
(among other things) whether it is core-free. I was wondering if
someone could tell me whether it would speed things up greatly if I
first tested to see if the subgroup itself is normal.
So, I'm wondering if I should simply do:
e:=Group([Identity(G)]);
if Core(G,H)=e then
# test other search criteria
...
Or would I do better to test for normality of the subgroup first:
if IsNormal(G,H) and H<>e then
# do nothing
elif Core(G,H)=e then
# test other search criteria
Would the latter speed things up greatly? Is computing Core much more
expensive than first testing IsNormal?
Thanks and, again, I apologize if this is dumb.
-William
From williamdemeo at gmail.com Sat Jan 22 04:26:50 2011
From: williamdemeo at gmail.com (William DeMeo)
Date: Fri, 21 Jan 2011 18:26:50 -1000
Subject: [GAP Forum] speed of Core vs IsNormal
In-Reply-To:
References:
Message-ID:
Since I don't know anything about the algorithm Core uses, I thought
it might be testing for normality to begin with, and then the two
versions of code suggested in my previous email should theoretically
be identical. However, I just held a race on a dual processor machine
and it seems the normality check helps speed things up a bit.
Still, if anyone understands the Core algorithm and wouldn't mind
enlightening me (or at least confirming that the normality check
should theoretically speed things up), I'd be grateful.
Thanks!
William
On Fri, Jan 21, 2011 at 6:11 PM, William DeMeo wrote:
> I apologize if this is a dumb question, but I'm trying to speed up a
> program that is searching for certain groups. In the examples I'm
> looking for, I have a subgroup H of a group G and I need to test
> (among other things) whether it is core-free. ?I was wondering if
> someone could tell me whether it would speed things up greatly if I
> first tested to see if the subgroup itself is normal.
>
> So, I'm wondering if I should simply do:
>
> e:=Group([Identity(G)]);
>
> if Core(G,H)=e then
>
> ? ?# test other search criteria
> ? ?...
>
> Or would I do better to test for normality of the subgroup first:
>
> if IsNormal(G,H) and H<>e then
>
> ? ?# do nothing
>
> elif Core(G,H)=e then
>
> ? ?# test other search criteria
>
>
> Would the latter speed things up greatly? ?Is computing Core much more
> expensive than first testing IsNormal?
>
> Thanks and, again, I apologize if this is dumb.
>
> -William
>
From paloff at ya.ru Sat Jan 22 05:23:51 2011
From: paloff at ya.ru (Igor Korepanov)
Date: Sat, 22 Jan 2011 08:23:51 +0300
Subject: [GAP Forum] ring theory
Message-ID: <348001295673831@web13.yandex.ru>
Dear GAP creators,
here is my GAP session:
gap> r := Ring( 10, 12 );
gap> 10 in r;
- and GAP is still thinking over this very profound question.
What did I miss?
Thank you in advance,
Igor
From paloff at ya.ru Sat Jan 22 05:32:48 2011
From: paloff at ya.ru (Igor Korepanov)
Date: Sat, 22 Jan 2011 08:32:48 +0300
Subject: [GAP Forum] ring theory
In-Reply-To: <348001295673831@web13.yandex.ru>
References: <348001295673831@web13.yandex.ru>
Message-ID: <471941295674369@web8.yandex.ru>
Addition to my letter:
GAP looks indeed buried in deep meditation; computer reports:
Processor: 63% in use
22.01.2011, 08:23, "Igor Korepanov" :
> Dear GAP creators,
>
> here is my GAP session:
>
> gap> r := Ring( 10, 12 );
>
> gap> 10 in r;
>
> ?- and GAP is still thinking over this very profound question.
>
> What did I miss?
>
> Thank you in advance,
>
> Igor
>
> _______________________________________________
> Forum mailing list
> Forum at mail.gap-system.org
> http://mail.gap-system.org/mailman/listinfo/forum
From paloff at ya.ru Sat Jan 22 08:56:28 2011
From: paloff at ya.ru (Igor Korepanov)
Date: Sat, 22 Jan 2011 11:56:28 +0300
Subject: [GAP Forum] ring theory
In-Reply-To: <471941295674369@web8.yandex.ru>
References: <348001295673831@web13.yandex.ru> <471941295674369@web8.yandex.ru>
Message-ID: <394721295686588@web75.yandex.ru>
Still something more: one person told me to write what sort of GAP I am using. Here it is:
gap> GAPInfo;
rec( Version := "4.4.12", Date := "17-Dec-2008", KernelVersion := "4.4.12",
NeedKernelVersion := [ "4.4.12" ],
Architecture := "x86_64-pc-linux-gnu-x86_64-pc-linux-gnu-gcc",
SystemCommandLine := [ "/usr/libexec/gap/gap", "-m", "32m", "-l",
"/usr/share/gap" ],
SystemEnvironment := [ "ORBIT_SOCKETDIR=/tmp/orbit-bossik",
"MANPATH=/usr/local/share/man:/usr/share/man:/usr/share/binutils-data/x8\
6_64-pc-linux-gnu/2.20.1/man:/usr/share/gcc-data/x86_64-pc-linux-gnu/4.4.4/man\
", "SSH_AGENT_PID=4415", "XDG_MENU_PREFIX=gnome-", "SHELL=/bin/bash",
"TERM=xterm",
"XDG_SESSION_COOKIE=9c93b742cf5601828c1b7a0500001e6c-1295672826.341814-6\
60312593", "GTK_RC_FILES=/etc/gtk/gtkrc:/home/bossik/.gtkrc-1.2-gnome2",
"WINDOWID=54525955", "GNOME_KEYRING_CONTROL=/tmp/keyring-RKZ0cf",
"SBCL_HOME=/usr/lib64/sbcl", "USER=bossik",
"PRELINK_PATH_MASK=/usr/lib64/klibc:/usr/lib64/libfreebl3.so:/usr/lib64/\
libnssdbm3.so:/usr/lib64/libsoftokn3.so",
"LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40\
;33;01:cd=40;33;01:or=01;05;37;41:mi=01;05;37;41:su=37;41:sg=30;43:ca=30;41:tw\
=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01\
;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.zip=01;31:*.z=01;31:*.Z\
=01;31:*.dz=01;31:*.gz=01;31:*.lz=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tb\
z=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.rar=01;3\
1:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpe\
g=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;3\
5:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.s\
vgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=0\
1;35:*.mkv=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:\
*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=0\
1;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.x\
wd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;\
35:*.ogx=01;35:*.pdf=00;32:*.ps=00;32:*.txt=00;32:*.patch=00;32:*.diff=00;32:*\
log=00;32:*.tex=00;32:*.doc=00;32:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=0\
0;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*\
wav=00;36:*.axa=00;36:*.oga=00;36:*.spx=00;36:*.xspf=00;36:",
"GDK_USE_XFT=1", "SSH_AUTH_SOCK=/tmp/keyring-RKZ0cf/ssh",
"USERNAME=bossik",
"SESSION_MANAGER=local/Ghost:@/tmp/.ICE-unix/4386,unix/Ghost:/tmp/.ICE-u\
nix/4386",
"CONFIG_PROTECT_MASK=/etc/sandbox.d /etc/fonts/fonts.conf /etc/gconf /et\
c/terminfo /etc/ca-certificates.conf /etc/texmf/web2c /etc/texmf/language.dat.\
d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/revdep-rebuild",
"PAGER=/usr/bin/less", "XDG_CONFIG_DIRS=/etc/xdg",
"PATH=/usr/local/bin:/usr/bin:/bin:/opt/bin:/usr/x86_64-pc-linux-gnu/gcc\
-bin/4.4.4:/usr/games/bin", "SBCL_SOURCE_ROOT=/usr/lib64/sbcl/src",
"DESKTOP_SESSION=gnome", "GDM_XSERVER_LOCATION=local",
"PWD=/home/bossik/Papers/ks", "EDITOR=/bin/nano", "LANG=en_US.UTF-8",
"GDM_LANG=en_US.UTF-8", "GDMSESSION=gnome", "SHLVL=1",
"HOME=/home/bossik", "GNOME_DESKTOP_SESSION_ID=this-is-deprecated",
"LESS=-R -M --shift 5", "LOGNAME=bossik", "CVS_RSH=ssh",
"DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-fOYtkC6BIi,guid=812def\
ce2e8ed7c9e4b46a2700000026",
"XDG_DATA_DIRS=/usr/local/share:/usr/share:/usr/share/gdm",
"LESSOPEN=|lesspipe.sh %s", "WINDOWPATH=7",
"INFOPATH=/usr/share/info:/usr/share/binutils-data/x86_64-pc-linux-gnu/2\
20.1/info:/usr/share/gcc-data/x86_64-pc-linux-gnu/4.4.4/info",
"DISPLAY=:0.0", "OPENGL_PROFILE=nvidia",
"XAUTHORITY=/home/bossik/.Xauthority", "COLORTERM=gnome-terminal" ],
RootPaths := [ "/usr/share/gap/" ], UserHome := "/home/bossik",
gaprc := "/home/bossik/.gaprc",
DirectoriesLibrary := rec( trans := [ dir("/usr/share/gap/trans/") ],
pkg := [ dir("/usr/share/gap/pkg/") ],
doc/tut := [ dir("/usr/share/gap/doc/tut/") ],
doc/ref := [ dir("/usr/share/gap/doc/ref/") ],
doc/ext := [ dir("/usr/share/gap/doc/ext/") ],
doc/prg := [ dir("/usr/share/gap/doc/prg/") ],
doc/new := [ dir("/usr/share/gap/doc/new/") ] ),
DirectoriesSystemPrograms := [ "/usr/local/bin/", "/usr/bin/", "/bin/",
"/opt/bin/", "/usr/x86_64-pc-linux-gnu/gcc-bin/4.4.4/",
"/usr/games/bin/" ], DirectoriesPrograms := false,
DirectoriesTemporary := [ ], DirectoryCurrent := false,
ReadObsolete := true,
CommandLineOptions := rec( A := false, B := "", D := false, E := false,
K := "0", L := "", M := false, N := false, O := false, P := "0",
U := "", W := "0", R := "", T := false, X := false, Y := false,
a := "0", b := false, c := "0", e := false, f := false, g := 0,
i := "", l := [ "/usr/share/gap" ], m := "32m", n := false,
o := "256m", p := false, q := false, r := false, x := "80", y := "24",
z := "20" ),
BannerString := " \n ######### ###### ######\
##### ### \n ############# ###### ########\
#### #### \n ############## ######## ##########\
### ##### \n ############### ######## ##### ####\
## ##### \n ###### # ######### ##### #####\
###### \n ###### ########## ##### ##### \
####### \n ##### ##### #### ##### ###### #\
####### \n #### ##### ##### ############# ### \
#### \n ##### ####### #### #### ########### #### #\
### \n ##### ####### ##### ##### ###### #### ###\
# \n ##### ####### ##### ##### ##### ############\
#\n ##### ##### ################ ##### #############\
\n ###### ##### ################ ##### #############\n\
################ ################## ##### #### \n \
############### ##### ##### ##### #### \n \
############# ##### ##### ##### #### \n \
######### ##### ##### ##### #### \n \
\n Infor\
mation at: http://www.gap-system.org\n Try '?help' for help. See also '?\
copyright' and '?authors'\n \n", ViewLength := 3, MaxNrArgsMethod := 6,
ScanCommandLineOption := function( name, type, default ) ... end,
PackagesLoaded :=
rec( tomlib := [ "/usr/share/gap/pkg/tomlib", "1.1.4", "TomLib" ] ),
PackagesInfo :=
rec( tomlib := [ rec( PackageName := "TomLib", MyVersion := "1r1p4",
MyWWWHome := "http://www.math.rwth-aachen.de/~Thomas.Breuer",
Subtitle := "The GAP Library of Tables of Marks",
Version := "1.1.4", Autoload := true, Date := "20/11/2008",
PackageWWWHome := "http://www.math.rwth-aachen.de/~Thomas.Breuer\
/tomlib", ArchiveURL := "http://www.math.rwth-aachen.de/~Thomas.Breuer/tomlib/\
tomlib1r1p4", ArchiveFormats := ".tar.gz,.zoo",
Persons := [ rec( LastName := "Breuer", FirstNames := "Thomas",
IsAuthor := false, IsMaintainer := true,
Email := "sam at math.rwth-aachen.de",
WWWHome := "http://www.math.rwth-aachen.de/~Thomas.Breue\
r", Place := "Aachen",
Institution := "Lehrstuhl D für Mathematik, RWTH Aa\
chen", PostalAddress := "Thomas Breuer\nLehrstuhl D für Mathematik\nTempl\
ergraben 64\n52062 Aachen\nGermany" ),
rec( LastName := "Merkwitz", FirstNames := "Thomas",
IsAuthor := true, IsMaintainer := false,
Email := "Thomas.Merkwitz at Team4.DE" ),
rec( LastName := "Pfeiffer", FirstNames := "Götz",
IsAuthor := true, IsMaintainer := false,
Email := "goetz.pfeiffer at nuigalway.ie",
Place := "Galway" ) ], Status := "deposited",
README_URL := "http://www.math.rwth-aachen.de/~Thomas.Breuer/tom\
lib/README", PackageInfoURL := "http://www.math.rwth-aachen.de/~Thomas.Breuer/\
tomlib/PackageInfo.g",
AbstractHTML := "The package contains the GAP Library of Tables of Marks",
PackageDoc := [ rec( BookName := "TomLib",
ArchiveURLSubset := [ "doc", "htm" ],
HTMLStart := "htm/chapters.htm",
PDFFile := "doc/manual.pdf",
SixFile := "doc/manual.six",
LongTitle := "The GAP Library of Tables of Marks",
Autoload := true ) ],
Dependencies := rec( GAP := ">= 4.4",
NeededOtherPackages := [ ],
SuggestedOtherPackages := [ [ "ctbllib", ">= 1.1" ] ],
ExternalConditions := [ ] ),
AvailabilityTest := function( arg ) ... end,
TestFile := "tst/testall.g",
Keywords := [ "table of marks", "Burnside matrix",
"subgroup lattice", "finite simple groups",
"Moebius function", "Euler function" ],
InstallationPath := "/usr/share/gap/pkg/tomlib" ) ] ),
TestData := rec( ), BytesPerVariable := 8,
CompareKernelVersions := function( ) ... end,
LoadedComponents := rec( small := "2.1", small2 := "2.0", small3 := "2.0",
small4 := "1.0", small5 := "1.0", small6 := "1.0", small7 := "1.0",
small8 := "1.0", small9 := "1.0", small10 := "0.2", id2 := "3.0",
id3 := "2.1", id4 := "1.0", id5 := "1.0", id6 := "1.0", id9 := "1.0",
id10 := "0.1", trans := "1.0", prim := "2.1" ),
PackagesRestrictions := rec(
anupq := rec( OnInitialization := function( pkginfo ) ... end,
OnLoad := function( pkginfo ) ... end ),
autpgrp := rec( OnInitialization := function( pkginfo ) ... end,
OnLoad := function( pkginfo ) ... end ),
guava := rec( OnInitialization := function( pkginfo ) ... end,
OnLoad := function( pkginfo ) ... end ) ),
SystemInformation := function( basic, extended ) ... end,
PackagesInfoAutoload :=
rec( tomlib := [ rec( PackageName := "TomLib", MyVersion := "1r1p4",
MyWWWHome := "http://www.math.rwth-aachen.de/~Thomas.Breuer",
Subtitle := "The GAP Library of Tables of Marks",
Version := "1.1.4", Autoload := true, Date := "20/11/2008",
PackageWWWHome := "http://www.math.rwth-aachen.de/~Thomas.Breuer\
/tomlib", ArchiveURL := "http://www.math.rwth-aachen.de/~Thomas.Breuer/tomlib/\
tomlib1r1p4", ArchiveFormats := ".tar.gz,.zoo",
Persons := [ rec( LastName := "Breuer", FirstNames := "Thomas",
IsAuthor := false, IsMaintainer := true,
Email := "sam at math.rwth-aachen.de",
WWWHome := "http://www.math.rwth-aachen.de/~Thomas.Breue\
r", Place := "Aachen",
Institution := "Lehrstuhl D für Mathematik, RWTH Aa\
chen", PostalAddress := "Thomas Breuer\nLehrstuhl D für Mathematik\nTempl\
ergraben 64\n52062 Aachen\nGermany" ),
rec( LastName := "Merkwitz", FirstNames := "Thomas",
IsAuthor := true, IsMaintainer := false,
Email := "Thomas.Merkwitz at Team4.DE" ),
rec( LastName := "Pfeiffer", FirstNames := "Götz",
IsAuthor := true, IsMaintainer := false,
Email := "goetz.pfeiffer at nuigalway.ie",
Place := "Galway" ) ], Status := "deposited",
README_URL := "http://www.math.rwth-aachen.de/~Thomas.Breuer/tom\
lib/README", PackageInfoURL := "http://www.math.rwth-aachen.de/~Thomas.Breuer/\
tomlib/PackageInfo.g",
AbstractHTML := "The package contains the GAP Library of Tables of Marks",
PackageDoc := [ rec( BookName := "TomLib",
ArchiveURLSubset := [ "doc", "htm" ],
HTMLStart := "htm/chapters.htm",
PDFFile := "doc/manual.pdf",
SixFile := "doc/manual.six",
LongTitle := "The GAP Library of Tables of Marks",
Autoload := true ) ],
Dependencies := rec( GAP := ">= 4.4",
NeededOtherPackages := [ ],
SuggestedOtherPackages := [ [ "ctbllib", ">= 1.1" ] ],
ExternalConditions := [ ] ),
AvailabilityTest := function( arg ) ... end,
TestFile := "tst/testall.g",
Keywords := [ "table of marks", "Burnside matrix",
"subgroup lattice", "finite simple groups",
"Moebius function", "Euler function" ],
InstallationPath := "/usr/share/gap/pkg/tomlib" ) ] ),
PackagesInfoAutoloadDocumentation := rec( ),
PackagesInfoRefuseLoad := [ ], PackagesNames := [ "tomlib" ],
PackagesInfoInitialized := true )
gap>
22.01.2011, 08:36, "Igor Korepanov" :
> Addition to my letter:
>
> GAP looks indeed buried in deep meditation; computer reports:
>
> Processor: 63% in use
>
> 22.01.2011, 08:23, "Igor Korepanov" ;:
>
>> ?Dear GAP creators,
>>
>> ?here is my GAP session:
>>
>> ?gap> r := Ring( 10, 12 );
>> ?
>> ?gap> 10 in r;
>>
>> ??- and GAP is still thinking over this very profound question.
>>
>> ?What did I miss?
>>
>> ?Thank you in advance,
>>
>> ?Igor
>>
>> ?_______________________________________________
>> ?Forum mailing list
>> ?Forum at mail.gap-system.org
>> ?http://mail.gap-system.org/mailman/listinfo/forum
>
> _______________________________________________
> Forum mailing list
> Forum at mail.gap-system.org
> http://mail.gap-system.org/mailman/listinfo/forum
From ahulpke at gmail.com Sat Jan 22 16:11:50 2011
From: ahulpke at gmail.com (Alexander Hulpke)
Date: Sat, 22 Jan 2011 09:11:50 -0700
Subject: [GAP Forum] speed of Core vs IsNormal
In-Reply-To:
References:
Message-ID:
Dear Forum,
On Jan 21, 2011, at 9:11 PM, William DeMeo wrote:
> I apologize if this is a dumb question, but I'm trying to speed up a
> program that is searching for certain groups. In the examples I'm
> looking for, I have a subgroup H of a group G and I need to test
> (among other things) whether it is core-free. I was wondering if
> someone could tell me whether it would speed things up greatly if I
> first tested to see if the subgroup itself is normal.
It will do a minuscule speedup, but might not be worth unless you have tons of normal subgroups. Basically Core calculates the images of H under the generators of G and tests whether these are new subgroups by testing whether elements are in. IsNormal maps the generators of H under the generators of G and tests whether they still lie in H. This will be a bit faster.
However, since you really care about Core=1 I think that might be a better way to eliminate cases. For example you could try to calculate the minimal normal subgroups and test whether they are contained in. Or in your algorithm collect the (different) wrong cores and before testing normality or the core check whether any of them is a subset of H.
Best regards,
Alexander Hulpke
-- Colorado State University, Department of Mathematics,
Weber Building, 1874 Campus Delivery, Fort Collins, CO 80523-1874, USA
email: hulpke at math.colostate.edu, Phone: ++1-970-4914288
http://www.math.colostate.edu/~hulpke
From ahulpke at gmail.com Sat Jan 22 16:41:04 2011
From: ahulpke at gmail.com (Alexander Hulpke)
Date: Sat, 22 Jan 2011 09:41:04 -0700
Subject: [GAP Forum] ring theory
In-Reply-To: <348001295673831@web13.yandex.ru>
References: <348001295673831@web13.yandex.ru>
Message-ID: <94CCC25B-FCBA-41B8-9E61-7A2AC2955C0D@gmail.com>
Dear Forum,
On Jan 21, 2011, at 10:23 PM, Igor Korepanov wrote:
>
> gap> r := Ring( 10, 12 );
>
> gap> 10 in r;
>
> - and GAP is still thinking over this very profound question.
> What did I miss?
The element test implemented fro rings in GAP first determines the element list of the ring and thus does not terminate for infinite rings. While I one could combine the element test in the computation of the element list and terminate once the element has been found, this still would be unsatisfactory in any example beyond trivial ones and not terminate if the element was not in the ring.
If there is a genuine need for element tests in infinite rings (beyond toy examples) I would be interested to know for what cases, since for situations such as polynomial rings alternatives might be possible.
Best,
Alexander Hulpke
From paloff at ya.ru Sat Jan 22 16:51:17 2011
From: paloff at ya.ru (Igor Korepanov)
Date: Sat, 22 Jan 2011 19:51:17 +0300
Subject: [GAP Forum] ring theory
In-Reply-To: <94CCC25B-FCBA-41B8-9E61-7A2AC2955C0D@gmail.com>
References: <348001295673831@web13.yandex.ru>
<94CCC25B-FCBA-41B8-9E61-7A2AC2955C0D@gmail.com>
Message-ID: <516601295715077@web25.yandex.ru>
Dear Alexander,
Please don't get angry. I and my team like GAP - because I think it is aesthetical - and just want it to become (even) better.
I think you must agree that, even in such trivial cases, there must be no such epic bugs as this one with rings. Of course GAP must recognize the ring of even numbers (if it is not supposed to have the unity).
With my very best wishes,
Igor
22.01.2011, 19:41, "Alexander Hulpke" :
> Dear Forum,
>
> On Jan 21, 2011, at 10:23 PM, Igor Korepanov wrote:
>
>> ?gap> r := Ring( 10, 12 );
>> ?
>> ?gap> 10 in r;
>>
>> ?- and GAP is still thinking over this very profound question.
>> ?What did I miss?
>
> The element test implemented fro rings in GAP first determines the element list of the ring and thus does not terminate for infinite rings. While I one could combine the element test in the computation of the element list and terminate once the element has been found, this still would be unsatisfactory in any example beyond trivial ones and not terminate if the element was not in the ring.
>
> If there is a genuine need for element tests in infinite rings (beyond toy examples) I would be interested to know for what cases, since for situations such as polynomial rings alternatives might be possible.
>
> Best,
>
> ???Alexander Hulpke
From ahulpke at gmail.com Sun Jan 23 03:51:22 2011
From: ahulpke at gmail.com (Alexander Hulpke)
Date: Sat, 22 Jan 2011 20:51:22 -0700
Subject: [GAP Forum] ring theory
In-Reply-To: <516601295715077@web25.yandex.ru>
References: <348001295673831@web13.yandex.ru>
<94CCC25B-FCBA-41B8-9E61-7A2AC2955C0D@gmail.com>
<516601295715077@web25.yandex.ru>
Message-ID:
Dear Igor,
> I think you must agree that, even in such trivial cases, there must be no such epic bugs as this one with rings.
I would not consider this as a bug (and would be careful with the `epic' attribute in any case). Of course this is not a ``hard'' problem, but simply one for which the computer is not well suited.
I am not aware of an element test for infinite rings that will always terminate. As I wrote, I can imagine special methods for subrings of polynomial rings or subrings of the integers (or for element test of the generators), but at this point I see minimal gain in implementing this and am rather doubtful of the merits of devoting time on such particular features. Thus again my request for any concrete need of such an element test (the use itself can be trivial, but the context shouldn't be) for rings.
Best,
Alexander Hulpke
> 22.01.2011, 19:41, "Alexander Hulpke" :
>> Dear Forum,
>>
>> On Jan 21, 2011, at 10:23 PM, Igor Korepanov wrote:
>>
>>> gap> r := Ring( 10, 12 );
>>>
>>> gap> 10 in r;
>>>
>>> - and GAP is still thinking over this very profound question.
>>> What did I miss?
>>
>> The element test implemented fro rings in GAP first determines the element list of the ring and thus does not terminate for infinite rings. While I one could combine the element test in the computation of the element list and terminate once the element has been found, this still would be unsatisfactory in any example beyond trivial ones and not terminate if the element was not in the ring.
>>
>> If there is a genuine need for element tests in infinite rings (beyond toy examples) I would be interested to know for what cases, since for situations such as polynomial rings alternatives might be possible.
>>
>> Best,
>>
>> Alexander Hulpke
From paloff at ya.ru Sun Jan 23 11:06:16 2011
From: paloff at ya.ru (Igor Korepanov)
Date: Sun, 23 Jan 2011 14:06:16 +0300
Subject: [GAP Forum] ring theory
In-Reply-To:
References: <348001295673831@web13.yandex.ru>
<94CCC25B-FCBA-41B8-9E61-7A2AC2955C0D@gmail.com>
<516601295715077@web25.yandex.ru>
Message-ID: <675311295780776@web39.yandex.ru>
Dear Alexander,
Thank you for addressing me by name (and not just "Dear Forum"). In return, I will refrain from attributing ironical epithets to your excellent work.
> Thus again my request for any concrete need of such an element test (the use itself can be trivial, but the context shouldn't be) for rings.
I was just showing GAP to a student and saying "see how beautiful it is! Let's see how it works with this and that...". Being partly of Ukrainian ancestry, I was of course wondering what Ukrainian comrades write, e.g. on page http://ukrgap.exponenta.ru/Examples/rings.htm . Aha, I said, they write:
gap> M:=Ring(5,7);
Integers
And what if
gap> r:=Ring(10,12);
?
So, I typed that in the presence of my student, hoping that GAP understands me. And - oops!
So, the first reason why GAP should know such things is simply for students - not to scare them away from GAP by such hardly explainable to them things. And we know that in order to win, we have the young generation on our side!
The second reason is: if experts see no interest in some problem, then this problem is probably in reality the most interesting one. It always happens like this in pure art. So, perhaps, in some near future, the element test for rings will gain much popularity :)
Remark: as for myself, I have just delivered a course in Finite Fields, using GAP, for engineering students this last semester which by no means makes me an expert in ring theory.
I am also using GAP in my research, since last summer (see one of my previous posts).
I would like to end this letter with expressing my pretty sincere gratitude to you and all GAP authors - you are doing a great job.
Igor
23.01.2011, 06:51, "Alexander Hulpke" :
> Dear Igor,
>
>> ?I think you must agree that, even in such trivial cases, there must be no such epic bugs as this one with rings.
>
> I would not consider this as a bug (and would be careful with the `epic' attribute in any case). Of course this is not a ``hard'' problem, but simply one for which the computer is not well suited.
>
> I am not aware of an element test for infinite rings that will always terminate. As I wrote, I can imagine special methods for subrings of polynomial rings or subrings of the integers (or for element test of the generators), but at this point I see minimal gain in implementing this and am rather doubtful of the merits of devoting time on such particular features. Thus again my request for any concrete need of such an element test (the use itself can be trivial, but the context shouldn't be) for rings.
>
> Best,
>
> ??Alexander Hulpke
>
From bolbita at laposte.net Tue Jan 25 08:59:38 2011
From: bolbita at laposte.net (bolbita)
Date: Tue, 25 Jan 2011 09:59:38 +0100 (CET)
Subject: [GAP Forum] control the execution time of a function
Message-ID: <20591070.34340.1295945978336.JavaMail.www@wwinf8302>
Dear GAP Forum,
I have little experience with GAP, and I wonder how can we control the execution time of a function.
I dream about a function like
UnderTimeControl := function (f, arg, maxtime)
which would run the function f with arguments arg and a timer in parallel,
and would return the result of f(arg) whenever its execution time is less than maxtime and would return fail
otherwise.
Thank you very much in advance.
Georges.
Une messagerie gratuite, garantie ? vie et des services en plus, ?a vous tente ?
Je cr?e ma bo?te mail www.laposte.net
From alexander.konovalov at gmail.com Wed Jan 26 14:33:56 2011
From: alexander.konovalov at gmail.com (Alexander Konovalov)
Date: Wed, 26 Jan 2011 14:33:56 +0000
Subject: [GAP Forum] control the execution time of a function
In-Reply-To: <20591070.34340.1295945978336.JavaMail.www@wwinf8302>
References: <20591070.34340.1295945978336.JavaMail.www@wwinf8302>
Message-ID: <12F4A2C9-4E12-4074-8BDD-3D870C7DEBF5@gmail.com>
Dear Georges,
On 25 Jan 2011, at 08:59, bolbita wrote:
> Dear GAP Forum,
>
> I have little experience with GAP, and I wonder how can we control the execution time of a function.
> I dream about a function like
> UnderTimeControl := function (f, arg, maxtime)
> which would run the function f with arguments arg and a timer in parallel,
> and would return the result of f(arg) whenever its execution time is less than maxtime and would return fail
> otherwise.
The current version of GAP is single-threaded so it's not directly possible to have exactly the scenario
you've described.However, there are several possible workarounds of various difficulty and flexibility:
1) If you are able to use the GAP package IO by Max Neunh?ffer
( http://www.gap-system.org/Packages/io.html ), then the following
function suggested by Laurent Bartholdi works exactly as you've
described:
UnderTimeControl := function(f,args,maxtime)
local pipe, pid, result;
pipe := IO_pipe();
pid := IO_fork();
if pid=0 then
pipe := IO_WrapFD(pipe.towrite,false,false);
IO_Pickle(pipe,CallFuncList(f,args));
IO_Close(pipe);
IO_kill(IO_getpid(),9);
fi;
pipe := IO_WrapFD(pipe.toread,false,false);
result := IO_Select([pipe],[],[],[],QuoInt(maxtime,1000000),RemInt(maxtime,1000000));
if result=fail or result=0 then
IO_kill(pid,9);
return fail;
fi;
result := IO_Unpickle(pipe);
IO_Close(pipe);
return result;
end;
gap> UnderTimeControl(Factorial,[10],100);
fail
gap> UnderTimeControl(Factorial,[10],10000);
3628800
gap> UnderTimeControl(NrConjugacyClasses,[SmallGroup(512,13)],100000);
fail
gap> UnderTimeControl(NrConjugacyClasses,[SmallGroup(512,13)],1000000);
92
However, note that:
- it forks another process, which may be potentially memory expensive;
- IO_Pickle/IO_Unpickle may not support arbitrary data to pass them as
arguments or results;
- if things go wrong, i.e. an Error occurs, the user interface will be
completely broken and you will have to restart GAP.
Some other alternatives:
2) The function Runtime (see ?Runtime) returns the time spent by GAP in milliseconds as an integer.
You may insert calls to it at some checkpoints in the code to analyse its result and take an action.
Of course, it will not help if GAP spends too much time in some function call prior to that.
3) It's possible to call a remote procedure on the GAP server from the GAP client using the SCSCP package
( http://www.cs.st-andrews.ac.uk/~alexk/scscp.htm ) and specify the timeout (i.e. maxtime). This can be
also done in parallel.
4) It's also possible to submit GAP jobs using various job submission systems (pbs, Condor system) and
specify the maximum duration of the job, but this is non-interactive.
Please do not hesitate to ask more details about these scenarios. However, it might be rather worth to
tell more details about the actual computation which you would like to do in this way - it may happen
that there is a better way of doing it in GAP without caring about a runtime limit.
Best regards,
Alexander ( with the help of Laurent Bartholdi )
From Bill.Allombert at math.u-bordeaux1.fr Wed Jan 26 17:19:01 2011
From: Bill.Allombert at math.u-bordeaux1.fr (Bill Allombert)
Date: Wed, 26 Jan 2011 18:19:01 +0100
Subject: [GAP Forum] control the execution time of a function
In-Reply-To: <12F4A2C9-4E12-4074-8BDD-3D870C7DEBF5@gmail.com>
References: <20591070.34340.1295945978336.JavaMail.www@wwinf8302>
<12F4A2C9-4E12-4074-8BDD-3D870C7DEBF5@gmail.com>
Message-ID: <20110126171901.GC17754@yellowpig>
On Wed, Jan 26, 2011 at 02:33:56PM +0000, Alexander Konovalov wrote:
> Dear Georges,
>
> On 25 Jan 2011, at 08:59, bolbita wrote:
>
> > Dear GAP Forum,
> >
> > I have little experience with GAP, and I wonder how can we control the execution time of a function.
> > I dream about a function like
> > UnderTimeControl := function (f, arg, maxtime)
> > which would run the function f with arguments arg and a timer in parallel,
> > and would return the result of f(arg) whenever its execution time is less than maxtime and would return fail
> > otherwise.
>
> The current version of GAP is single-threaded so it's not directly possible
> to have exactly the scenario you've described.However, there are several
> possible workarounds of various difficulty and flexibility:
If that may help, this is how I implemented something similar in PARI/GP
(which is also single-threaded):
1) add a signal handler for SIGALRM
2) call the C function alarm(maxtime);
3) evaluate f(arg).
4) if the signal handler is called, stop the evaluation and return fail.
5) if 3) complete, call alarm(0) to disable the alarm.
Cheers,
Bill.
From sal at mcs.st-andrews.ac.uk Wed Jan 26 17:38:36 2011
From: sal at mcs.st-andrews.ac.uk (Stephen Linton)
Date: Wed, 26 Jan 2011 17:38:36 +0000
Subject: [GAP Forum] control the execution time of a function
In-Reply-To: <20110126171901.GC17754@yellowpig>
References: <20591070.34340.1295945978336.JavaMail.www@wwinf8302>
<12F4A2C9-4E12-4074-8BDD-3D870C7DEBF5@gmail.com>
<20110126171901.GC17754@yellowpig>
Message-ID:
It would be relatively easy, even in single-threaded GAP to
use SIGALRM to effectively deliver a control-C after a pre-determined time.
Using some new machinery that will be in GAP 4.5, it would be possible to "catch" that
interrupt and return fail or whatever.
We will look into it.
Steve
On 26 Jan 2011, at 17:19, Bill Allombert wrote:
> On Wed, Jan 26, 2011 at 02:33:56PM +0000, Alexander Konovalov wrote:
>> Dear Georges,
>>
>> On 25 Jan 2011, at 08:59, bolbita wrote:
>>
>>> Dear GAP Forum,
>>>
>>> I have little experience with GAP, and I wonder how can we control the execution time of a function.
>>> I dream about a function like
>>> UnderTimeControl := function (f, arg, maxtime)
>>> which would run the function f with arguments arg and a timer in parallel,
>>> and would return the result of f(arg) whenever its execution time is less than maxtime and would return fail
>>> otherwise.
>>
>> The current version of GAP is single-threaded so it's not directly possible
>> to have exactly the scenario you've described.However, there are several
>> possible workarounds of various difficulty and flexibility:
>
> If that may help, this is how I implemented something similar in PARI/GP
> (which is also single-threaded):
>
> 1) add a signal handler for SIGALRM
> 2) call the C function alarm(maxtime);
> 3) evaluate f(arg).
> 4) if the signal handler is called, stop the evaluation and return fail.
> 5) if 3) complete, call alarm(0) to disable the alarm.
>
> Cheers,
> Bill.
>
> _______________________________________________
> Forum mailing list
> Forum at mail.gap-system.org
> http://mail.gap-system.org/mailman/listinfo/forum
From williamdemeo at gmail.com Wed Jan 26 21:35:14 2011
From: williamdemeo at gmail.com (William DeMeo)
Date: Wed, 26 Jan 2011 11:35:14 -1000
Subject: [GAP Forum] Basic question: picking out a certain subgroup of A_{31}
Message-ID:
Dear Forum,
How do I get ahold of a subgroup of A_{31} that is isomorphic to
SL(5,2). I know there's one in there, but I don't know how to get a
handle on it.
If I simply define
a31 := AlternatingGroup(31);
and
K := SL(5,2);
then, of course, IsSubgroup(a31,K) will return "false," since I don't
have a particular SL(5,2) that sits inside A_{31}.
Thanks in advance for your help, and I apologize if this a dumb question.
-William
From hulpke at math.colostate.edu Wed Jan 26 21:53:05 2011
From: hulpke at math.colostate.edu (Alexander Hulpke)
Date: Wed, 26 Jan 2011 14:53:05 -0700
Subject: [GAP Forum] Basic question: picking out a certain subgroup of
A_{31}
In-Reply-To:
References:
Message-ID: <6F7C85BF-26B3-4167-8E1E-02DF3B26BC22@math.colostate.edu>
Dear Forum,
On Jan 26, 2011, at 1/26/11 2:35, William DeMeo wrote:
> How do I get ahold of a subgroup of A_{31} that is isomorphic to
> SL(5,2). I know there's one in there, but I don't know how to get a
> handle on it.
Two ways:
a) The reason that SL_5(2) lies in S_31 is because it is the action on the nonzero vectors. We can just do this:
gap> G:=SL(5,2);
SL(5,2)
gap> vecs:=Filtered(Elements(GF(2)^5),x->not IsZero(x));;
gap> Length(vecs);
31
gap> K:=Action(G,vecs,OnRight);
Group([ (16,24)(17,25)(18,26)(19,27)(20,28)(21,29)(22,30)(23,31),
(1,2,4,8,16)(3,6,12,24,17)(5,10,20,9,18)(7,14,28,25,19)(11,22,13,26,21)(15,
30,29,27,23) ])
b) (if building the action is too hard) Many of the small degree permutation representations of the simple groups are primitive and can be found in the primitive groups library:
gap> Size(SL(5,2));
9999360
gap> l:=AllPrimitiveGroups(NrMovedPoints,31,Size,9999360);
[ L(5, 2) ]
gap> K:=l[1];
L(5, 2)
(of course if there were multiple candidates, or we were not sure, we'd have to confirm that it is the same group:
gap> IsomorphismTypeInfoFiniteSimpleGroup(SL(5,2));
rec( name := "A(4,2) = L(5,2) ", parameter := [ 5, 2 ], series := "L" )
gap> IsomorphismTypeInfoFiniteSimpleGroup(K);
rec( name := "A(4,2) = L(5,2) ", parameter := [ 5, 2 ], series := "L" )
so we're safe.)
Best,
Alexander Hulpke
-- Colorado State University, Department of Mathematics,
Weber Building, 1874 Campus Delivery, Fort Collins, CO 80523-1874, USA
email: hulpke at math.colostate.edu, Phone: ++1-970-4914288
http://www.math.colostate.edu/~hulpke
From williamdemeo at gmail.com Thu Jan 27 01:29:57 2011
From: williamdemeo at gmail.com (William DeMeo)
Date: Wed, 26 Jan 2011 15:29:57 -1000
Subject: [GAP Forum] Basic question: picking out a certain subgroup of
A_{31}
In-Reply-To: <6F7C85BF-26B3-4167-8E1E-02DF3B26BC22@math.colostate.edu>
References:
<6F7C85BF-26B3-4167-8E1E-02DF3B26BC22@math.colostate.edu>
Message-ID:
Thank you, Dr. Hulpke, for your exceedingly clear explanation. Option
(a) is simple enough, but option (b) is interesting too.
By the way, I asked the question because I wanted to see if XGAP could
actually draw Feit's example of an M_7 lattice as an upper interval in
the subgroup lattice of A_{31}, and I've now got all the vertices
drawn except the six copies of SL(5,2). If interested, read on,
otherwise, feel free to ignore...
I believe Feit takes a Sylow-31 subgroup P of A_{31}, then looks at
the normalizer N = N(P) and notices that |N| = 31.15 and that N
contains a subgroup H of order 31.5. Then he asserts (with little
justification) that there are two non-conjugate copies of SL(5,2)
above H, call them K1 and K2. If you conjugate each of these by the
(three) coset representatives of N/H, you get six of the coatoms of
the M_7 interval. The seventh coatom is N.
Now, thanks to your help, at least I can find a SL(5,2) subgroup of
A_{31}. Unfortunately, it's not one of the SL(5,2)'s above H. (It's K
in the attached diagram.) Anyway, I'm sure I can figure it out from
here. Thanks again for your help!!
-William
On Wed, Jan 26, 2011 at 11:53 AM, Alexander Hulpke
wrote:
>
>
> Dear Forum,
>
> On Jan 26, 2011, at 1/26/11 2:35, William DeMeo wrote:
>> How do I get ahold of a subgroup of A_{31} that is isomorphic to
>> SL(5,2). ?I know there's one in there, but I don't know how to get a
>> handle on it.
>
> Two ways:
>
> a) The reason that SL_5(2) lies in S_31 is because it is the action on the nonzero vectors. We can just do this:
>
> gap> G:=SL(5,2);
> SL(5,2)
> gap> vecs:=Filtered(Elements(GF(2)^5),x->not IsZero(x));;
> gap> Length(vecs);
> 31
> gap> K:=Action(G,vecs,OnRight);
> Group([ (16,24)(17,25)(18,26)(19,27)(20,28)(21,29)(22,30)(23,31),
> ?(1,2,4,8,16)(3,6,12,24,17)(5,10,20,9,18)(7,14,28,25,19)(11,22,13,26,21)(15,
> ? ?30,29,27,23) ])
>
> b) (if building the action is too hard) Many of the small degree permutation representations of the simple groups are primitive and can be found in the primitive groups library:
>
> gap> Size(SL(5,2));
> 9999360
> gap> l:=AllPrimitiveGroups(NrMovedPoints,31,Size,9999360);
> [ L(5, 2) ]
> gap> K:=l[1];
> L(5, 2)
> ?(of course if there were multiple candidates, or we were not sure, we'd have to confirm that it is the same group:
>
> gap> IsomorphismTypeInfoFiniteSimpleGroup(SL(5,2));
> rec( name := "A(4,2) = L(5,2) ", parameter := [ 5, 2 ], series := "L" )
> gap> IsomorphismTypeInfoFiniteSimpleGroup(K);
> rec( name := "A(4,2) = L(5,2) ", parameter := [ 5, 2 ], series := "L" )
>
> so we're safe.)
>
> Best,
>
> ? Alexander Hulpke
>
>
> -- Colorado State University, Department of Mathematics,
> Weber Building, 1874 Campus Delivery, Fort Collins, CO 80523-1874, USA
> email: hulpke at math.colostate.edu, Phone: ++1-970-4914288
> http://www.math.colostate.edu/~hulpke
>
>
>
>
From a.abdollahi at math.ui.ac.ir Thu Jan 27 08:43:40 2011
From: a.abdollahi at math.ui.ac.ir (Alireza Abdollahi)
Date: Thu, 27 Jan 2011 00:43:40 -0800 (PST)
Subject: [GAP Forum] List of elements
Message-ID: <127632.12338.qm@web35706.mail.mud.yahoo.com>
Dear?Pubbers
I??typed the following commands:
gap> W:=WreathProduct(SymmetricGroup(3),CyclicGroup(4));;
gap> ele:=Elements(W);;
gap>x:=ele[4];
gap>y:=ele[228];
Here?are my questions:
If I?end the above?GAP session and again (after some while!) open a new session
and?repeat the commands above,
should I get the same x and y as the? first time? if so, is this a general rule
(at least for the above commands)?
Actually, I would like to use the above form in a research article, so the?doubt
is whether the above question has positive answer or not?! My experience show
that we always get the same for x and y or some other element!
Of course, I know that the best/worst way is to locate the elements x and y??in
W by fixing a generating set for W?and then?I do not cite GAP, which is not
fair!!
Sorry in advance,?if my question is very?stupid; and thanks for any friendly
help.
All the Best
Alireza Abdollahi
?Alireza Abdollahi
Department of Mathematics
University of Isfahan
Isfahan 81746-73441,Iran
a.abdollahi at math.ui.ac.ir
abdollahi at member.ams.org
http://sci.ui.ac.ir/~a.abdollahi
From ahulpke at gmail.com Thu Jan 27 16:15:04 2011
From: ahulpke at gmail.com (Alexander Hulpke)
Date: Thu, 27 Jan 2011 09:15:04 -0700
Subject: [GAP Forum] List of elements
In-Reply-To: <127632.12338.qm@web35706.mail.mud.yahoo.com>
References: <127632.12338.qm@web35706.mail.mud.yahoo.com>
Message-ID: <76B43CA8-3D89-4FC4-9FE7-A38B3727A6E9@gmail.com>
Dear Gap-Forum
On Jan 27, 2011, at 1:43 AM, Alireza Abdollahi wrote:
> gap> ele:=Elements(W);;
> gap>x:=ele[4];
> gap>y:=ele[228];
>
> Here are my questions:
>
> should I get the same x and y as the first time? if so, is this a general rule
> (at least for the above commands)?
`Elements' does the same as `AsSSortedList', i.e. it returns a sorted list of elements. As comparison of permutations is stable, this list will always be the same, even if you change the generators of W.
(In general, with other commands in GAP the same sequence of commands from the start in the same version of GAP on the same machine will always produce the same output, but this is not neccessarily guaranteed to stay stable over different versions.)
Best,
Alexander Hulpke
-- Colorado State University, Department of Mathematics,
Weber Building, 1874 Campus Delivery, Fort Collins, CO 80523-1874, USA
email: hulpke at math.colostate.edu, Phone: ++1-970-4914288
http://www.math.colostate.edu/~hulpke
From sandeepr.murthy at gmail.com Sat Jan 29 15:05:42 2011
From: sandeepr.murthy at gmail.com (Sandeep Murthy)
Date: Sat, 29 Jan 2011 15:05:42 +0000
Subject: [GAP Forum] Certain Subgroups of SL(3, q) of Order q^3 for small q
Message-ID:
Hello,
If G = SL(3,q), the special linear group over the finite field F_q, then
I am interested in the following subgroups:
S = { set of all upper triangular matrices in G with 1s on the diagonal, and elements x,y,z above the diagonal},
T = { set of all lower triangular matrices in G with 1s on the diagonal, and elements x,y,z below the diagonal}.
How can I define these subgroups in GAP for specific small values of q, like 2, 3, 4 etc.?
Sincerely, Sandeep.
From dima at ntu.edu.sg Sat Jan 29 15:39:13 2011
From: dima at ntu.edu.sg (Asst. Prof. Dmitrii (Dima) Pasechnik)
Date: Sat, 29 Jan 2011 23:39:13 +0800
Subject: [GAP Forum] Certain Subgroups of SL(3,
q) of Order q^3 for small q
In-Reply-To:
References:
Message-ID:
Dear Sandeep,
Suppose F_q is k-fold extension of F_p, for p prime. Then, if x1,..,xk
are generators of
F_q over F_p,
S is generated by matrices by 2k matrices, namely
[[1 xj 0],
[0 1 0],
[0 0 1]], with j=1,...k, and
[[1 0 0],
[0 1 xj],
[0 0 1]], with j=1,...k.
and similarly for T (take the transposes of generators above).
Hope this helps,
Dmitrii
On 29 January 2011 23:05, Sandeep Murthy wrote:
> Hello,
>
> If G = SL(3,q), the special linear group over the finite field F_q, then
> I am interested in the following subgroups:
>
> S = { set of all upper triangular matrices in G with 1s on the diagonal, and elements x,y,z above the diagonal},
> T = { set of all lower triangular matrices in G with 1s on the diagonal, and elements x,y,z below the diagonal}.
>
> How can I define these subgroups in GAP for specific small values of q, like 2, 3, 4 etc.?
>
> Sincerely, Sandeep.
>
>
CONFIDENTIALITY: This email is intended solely for the person(s) named and may be confidential and/or privileged. If you are not the intended recipient, please delete it, notify us and do not copy, use, or disclose its content. Thank you.
Towards A Sustainable Earth: Print Only When Necessary
From krkini at ntu.edu.sg Mon Jan 31 03:45:56 2011
From: krkini at ntu.edu.sg (Keshav Rao Kini)
Date: Mon, 31 Jan 2011 11:45:56 +0800
Subject: [GAP Forum] GAP IRC channel
Message-ID:
Hello,
Does the GAP project have an official IRC channel somewhere? If not, I suspect it couldn't hurt to set up one, to provide another avenue for users to ask questions (or generally for pseudo-realtime GAP-related discussion, which as far as I know the forum doesn't have a means of doing at the moment). Many open source projects have IRC channels on irc.freenode.net, which is one possibility. If nobody has done so I'd be happy to set one up and maintain it, though as a GAP beginner I don't think I'm necessarily the best person for the job :)
-Keshav
Disclaimer: the boilerplate text at the foot of this email has been added automatically by my mail server. This was not done by my request (rather the opposite) so please disregard it.
________________________________
CONFIDENTIALITY: This email is intended solely for the person(s) named and may be confidential and/or privileged. If you are not the intended recipient, please delete it, notify us and do not copy, use, or disclose its content. Thank you.
Towards A Sustainable Earth: Print Only When Necessary
From yonikone at gmail.com Tue Feb 1 13:09:01 2011
From: yonikone at gmail.com ((((1/f))) .)
Date: Tue, 1 Feb 2011 18:39:01 +0530
Subject: [GAP Forum] online Group Theory workshop ( for people with no math
background)
Message-ID:
I didn't know any other online forum where this would be relevant,
but if this is of any use to you or your students.....
This is a 6-week workshop in the mathematics of symmetry, and no
background in mathematics is needed at all:
http://fadereu.posterous.com/knk101-workshop-the-complete-syllabus
That's the complete syllabus, and all the details are on the site. I'm the
convenor and you can reach me at fadebox at gmail.com if you have any
queries. I'm also looking to engage groups of students at institutions and
we can work on a suitable plan / schedule.
warm regards,
Rohit Gupta / aka fadereu
------------
(((1/f)))
-------------
http://twitter.com/fadereu
From rahul.kitture at gmail.com Tue Feb 1 13:50:30 2011
From: rahul.kitture at gmail.com (rahul kitture)
Date: Tue, 1 Feb 2011 19:20:30 +0530
Subject: [GAP Forum] (no subject)
Message-ID: