Re: Using Parallelize with my own function
- To: mathgroup at smc.vnet.net
- Subject: [mg119675] Re: Using Parallelize with my own function
- From: Vivek Joshi <vivekjjoshi29 at gmail.com>
- Date: Fri, 17 Jun 2011 00:08:19 -0400 (EDT)
- References: <201106160800.EAA13221@smc.vnet.net>
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 > >
- References:
- Using Parallelize with my own function
- From: Ádám Lelkes <lelkesa@gmail.com>
- Using Parallelize with my own function