I think there is an existing method in SymPy to check the normality of permutation groups.
Yes It is there as is_normal
.
Hello Kalevi,
Good morning I was thinking about adding a functions to check whether a group is a hall subgroups or not (https://en.wikipedia.org/wiki/Hall_subgroup.
Since we have all the required method that we need to implement a test for hall subgroups it will not take much time.
this is the possible algorithm I am thinking:
is_hall_subgroups(H,G):
#We want to check if H is a hall subgroups and H is the subgroup of G where G should be a finite group.
1.)check if G is a finite groups
2.)find the order of H.(Ord)
3.)find the index for H.(ind)
4.)If gcd(Ord,Ind) is 1 then H is a hall_subgroup.(gcd = Greatest Common Divisor)
Sorry for late reply
I suggest this because there was a Computation of Hall Subgroup
idea proposed in last year gsoc proposal but due to time constraint it was not implemented So I was looking to implement that but while looking I found this hall subgroup property
so i was thinking it may be helpfull to add it but after a thorough research I didnt find it helpfull.
do we also need Computation of Hall Subgroup
?
GAP
maybe the title Computation of Hall Subgroup
(given in previous year proposal) disguiding I mean that HallSubgroup( G, P )
: computes a P-Hall subgroup for a set P of primes. This is a subgroup the order of which is only divisible by primes in P and whose index is coprime to all primes in P.
will HallSubgroup( G, P ) usefull for sympy?
Hall_Subgroup(G,P):
1.) Check if every p in P is prime if not:
valueerror
2.) Check if order of G is divisible by every prime in P if not:
return trivial subgroup (only Identity Element)
3.) Compute sylow p subgroup for every prime in P.
4.) Find the common of sylow p subgroups computed in above step.(since every sylow subgroup of a group is hallsubgroup)
Find the common of sylow p subgroups
P = [2,3]
should'nt be hall subgroup be intersection of sylow 2 subgroup
and sylow 3 subgroup
for any group G.just clarifying .
Hall subgroup
for a set of primes P
then we can say that it is join of sylow p subgroup
for p in P but it is not true vice versa. I have to think more for devising a algo.
suppose
P = [2,3]
should'nt be hall subgroup be intersection ofsylow 2 subgroup
andsylow 3 subgroup
for any group G.just clarifying .
I was completely wrong
homomorphism
from one polycyclic group G
to another polycyclic group H
would be usefull?gap
has a method for it where gens is the list of generators of G and imgs are the list of images of elements of H.GroupHomomorphismByImages(G, H, gens, imgs)
polycyclic group
? beacuse the method we have now is checking whether the group G and H are PermutationGroup, FpGroup, FreeGroup
if not isinstance(domain, (PermutationGroup, FpGroup, FreeGroup)):
raise TypeError("The domain must be a group")
if not isinstance(codomain, (PermutationGroup, FpGroup, FreeGroup)):
raise TypeError("The codomain must be a group")