MathGroup Archive 2011

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Using Parallelize with my own function


I think the right way to implement this would be as follows,

ParallelCyclicGroupQ[G_] :=
MemberQ[ParallelMap[GroupOrder[PermutationGroup[{#}]] &,  GroupElements[G]],
GroupOrder[G]]

ParallelCyclicGroupQ[SymmetricGroup[5]]
False

Vivek J. Joshi

On Thu, Jun 16, 2011 at 4:00 AM, =C1d=E1m Lelkes <lelkesa at gmail.com> wrote:

> Dear Group,
>
> I have a problem with Parallelize. I have defined the following
> function:
>
> In[1]:= CyclicGroupQ[G_] := MemberQ[GroupOrder[PermutationGroup[{#}]]
> & /@ GroupElements[G],  GroupOrder[G]].
>
> In[2]:= DistributeDefinitions[CyclicGroupQ]
> Out[2]= {CyclicGroupQ}
>
> This function gives True if G is cyclic, False otherwise. If I try to
> use Parallelize with this function I get the following message:
>
> In[3]:= Parallelize[CyclicGroupQ[SymmetricGroup[5]]]
>
> Parallelize::nopar1: CyclicGroupQ[SymmetricGroup[5]] cannot be
> parallelized; proceeding with sequential evaluation.
>
> Out[3]= False
>
> However, if I use Parallelize with the definition of the function, I
> do not get this message:
>
> In[4]:= Parallelize[ MemberQ[GroupOrder[PermutationGroup[{#}]] & /@
> GroupElements[SymmetricGroup[5]], GroupOrder[SymmetricGroup[5]]]]
>
> Out[4]= False
>
> How could I make my function parallelizable?
>
> Thanks,
> Adam Lelkes
>
>


  • Prev by Date: Re: saddlepoint approx, solving a sum
  • Next by Date: Re: Partition a list based on columns
  • Previous by thread: Using Parallelize with my own function
  • Next by thread: Problems with DSolve