Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2011

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

Search the Archive

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
>
>


  • 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