MathGroup Archive 2002

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

Search the Archive

Re: Question on factor group calculations

  • To: mathgroup at smc.vnet.net
  • Subject: [mg38372] Re: [mg38249] Question on factor group calculations
  • From: Andrzej Kozlowski <akoz at mimuw.edu.pl>
  • Date: Fri, 13 Dec 2002 04:09:21 -0500 (EST)
  • Sender: owner-wri-mathgroup at wolfram.com

In Mathematica when you have a pure function with n-arguments you 
denote them by #1, #2, etc. But when your function has only one 
argument you can't use #2. So your definition of H01 below produces an 
error on my machine.

One way to do what you want is simply:

cosets = Function[z, (multZ4Z12[z, #1] & ) /@ H] /@ cosetReps


{{{2, 2}, {0, 4}, {2, 6}, {0, 8}, {2, 10}, {0, 0}},
   {{2, 3}, {0, 5}, {2, 7}, {0, 9}, {2, 11}, {0, 1}},
   {{2, 4}, {0, 6}, {2, 8}, {0, 10}, {2, 0}, {0, 2}},
   {{2, 5}, {0, 7}, {2, 9}, {0, 11}, {2, 1}, {0, 3}},
   {{3, 2}, {1, 4}, {3, 6}, {1, 8}, {3, 10}, {1, 0}},
   {{3, 3}, {1, 5}, {3, 7}, {1, 9}, {3, 11}, {1, 1}},
   {{3, 4}, {1, 6}, {3, 8}, {1, 10}, {3, 0}, {1, 2}},
   {{3, 5}, {1, 7}, {3, 9}, {1, 11}, {3, 1}, {1, 3}}}

You can now extract individual cosets with cosets[[i]], for example the 
group H is:

cosets[[1]]


{{2, 2}, {0, 4}, {2, 6}, {0, 8}, {2, 10}, {0, 0}}

Andrzej Kozlowski
Yokohama, Japan
http://www.mimuw.edu.pl/~akoz/
http://platon.c.u-tokyo.ac.jp/andrzej/


On Thursday, December 12, 2002, at 10:31 PM, Diana Mecum wrote:

> Andrzej,
>
> One further question:
>
> I was able to replicate all of your work, thanks. I see how to get H,
>
> H = NestWhileList[multZ4Z12[#1, {2, 2}] &, {2, 2}, #1 != {0, 0} &]
>
> I also sort of understand the coset representative calculation,
>
> cosetReps = Union[Z4Z12, SameTest -> (MemberQ[H, multZ4Z12[#1, -#2]] 
> &)]
>
> I have tried to derive the different coset groups by altering the 
> expression
> for H above, for example,
>
> H01 = NestWhileList[multZ4Z12[#2, {2, 2}] &, {0, 1}, #2 != {0, 1} &]
>
> to get the coset group with representative {0, 1}, but no matter how I 
> change
> the variables in the expression, I get H back.
>
> Can you explain how to list the eight coset groups?  Thanks, Diana
>
> On Wed, 11 Dec 2002 23:14:08 +0900 Andrzej Kozlowski 
> <akoz at mimuw.edu.pl>
> wrote:
>
>> Sorry, I wrote my reply in a great hurry and
>> made some silly mistake.
>> Here is the correct code, I hope.
>>
>> First load the Combinatorica package:
>>
>> In[1]:=
>>  (MemberQ[H, multZ4Z12[#1, -#2]] &
>> )]
>>
>> Out[5]=
>> {{0, 0}, {0, 1}, {0, 2}, {0, 3}, {1, 0}, {1,
>> 1}, {1, 2}, {1, 3}}
>>
>> Now (this is different from the previous
>> version), the multiplication
>> of the coset representatives:
>>
>> In[6]:=
>> multF[{a_, b_}, {c_, d_}] :=
>> First[Select[cosetReps,
>>      MemberQ[H, multZ4Z12[multZ4Z12[{a, b}, {c,
>> d}], -#1]] & ]]
>>
>> And here is the multiplication table:
>>
>> In[7]:=
>> TableForm[MultiplicationTable[cosetReps,
>> multF]]
>>
>> Out[7]//TableForm=
>> TableForm[{{1, 2, 3, 4, 5, 6, 7, 8}, {2, 3, 4,
>> 1, 6, 7, 8, 5},
>>     {3, 4, 1, 2, 7, 8, 5, 6}, {4, 1, 2, 3, 8,
>> 5, 6, 7}, {5, 6, 7, 8, 3,
>> 4, 1, 2},
>>     {6, 7, 8, 5, 4, 1, 2, 3}, {7, 8, 5, 6, 1,
>> 2, 3, 4}, {8, 5, 6, 7, 2,
>> 3, 4, 1}}]
>>
>> I hope this is now O.K.
>>
>> With best regards
>>
>> Andrzej
>>
>>
>
>
> =====================================================
> "God made the integers, all else is the work of man."
> L. Kronecker, Jahresber. DMV 2, S. 19.
>
>



  • Prev by Date: RE: Pure recursive functions
  • Next by Date: Re: Memory Leak with KSubsets?
  • Previous by thread: Re: Question on factor group calculations
  • Next by thread: visual map