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: [mg38333] Re: [mg38249] Question on factor group calculations
  • From: Andrzej Kozlowski <akoz at mimuw.edu.pl>
  • Date: Thu, 12 Dec 2002 01:36:04 -0500 (EST)
  • Sender: owner-wri-mathgroup at wolfram.com

I think the best way is to use cost representatives rather than cosets 
to construct your table.

First define Z4Z12 in your way:

In[2]:=
Z4Z12 = Flatten[Outer[List, Range[0, 3], Range[0, 11]], 1]

Out[2]=
{{0, 0}, {0, 1}, {0, 2}, {0, 3}, {0, 4}, {0, 5}, {0, 6},
   {0, 7}, {0, 8}, {0, 9}, {0, 10}, {0, 11}, {1, 0}, {1, 1},
   {1, 2}, {1, 3}, {1, 4}, {1, 5}, {1, 6}, {1, 7}, {1, 8},
   {1, 9}, {1, 10}, {1, 11}, {2, 0}, {2, 1}, {2, 2}, {2, 3},
   {2, 4}, {2, 5}, {2, 6}, {2, 7}, {2, 8}, {2, 9}, {2, 10},
   {2, 11}, {3, 0}, {3, 1}, {3, 2}, {3, 3}, {3, 4}, {3, 5},
   {3, 6}, {3, 7}, {3, 8}, {3, 9}, {3, 10}, {3, 11}}

In[3]:=
multZ4Z12[{a_, b_}, {c_, d_}] := {Mod[a + c, 4],
    Mod[b + d, 12]}


Next we cpnstruct the subroup generated by {2,2} (your Coset1):

In[4]:=
H = NestWhileList[multZ4Z12[#1, {2, 2}] & , {2, 2},
    #1 != {0, 0} & ]

Out[4]=
{{2, 2}, {0, 4}, {2, 6}, {0, 8}, {2, 10}, {0, 0}}

Now we can use Union with a suitable SameTest function to obtian a set 
of coste representatives:


In[7]:=
cosetReps = Union[Z4Z12, SameTest ->
     (MemberQ[H, multZ4Z12[#1, -#2]] & )]

Out[7]=
{{0, 0}, {0, 1}, {0, 2}, {0, 3}, {1, 0}, {1, 1}, {1, 2},
   {1, 3}}

We only need to generate a multiplication table for the coset 
representatives, so we defiea new multiplication:

In[8]:=
multF[{a_, b_}, {c_, d_}] := Select[cosetReps,
    MemberQ[H, multZ4Z12[{a, b}, {c, d}] - #1] & ]

You cna check that it wrks the right way. Now it is easy to generate 
the multiplication table.

Not e that I have paid no attention to efficiency here. This method 
works nicely for examples of your size. For much larger ones it  would 
be necessary to carefully consider the question of efficiency and the 
code would almost certainly become less compact.

Andrzej Kozlowski
Yokohama, Japan


On Tuesday, December 10, 2002, at 06:10 PM, Diana wrote:

> Math friends,
>
> I am trying to create a multiplication table for the factor groups,
>
> (Z_4 (+) Z_12)/<(2,2)>
>
> I understand how to list the elements of (Z_4 (+) Z_12). This is done 
> with:
>
> Z4Z12 = Flatten[Outer[List, Range[0, 3], Range[0, 11]], 1]
>
> I would like to be able to figure out how to list the eight factor 
> groups
> with a calculation with (2,2). This would be in modulo 4,12 arithmetic.
>
> As a workaround, I defined (Z_4 (+) Z_12)/<(2,2)> as the eight cosets
> defined below:
>
> multZ4Z12[{a_, b_}, {c_, d_}] := {Mod[a + c, 4], Mod[b + d, 12]}
>
> Multiplication[Z4Z12, multZ4Z12] // TableForm;
>
> Coset1 = {Z4Z12[[1]], Z4Z12[[27]], Z4Z12[[5]], Z4Z12[[31]], Z4Z12[[9]],
>     Z4Z12[[35]]}
>
> Coset2 = {Z4Z12[[2]], Z4Z12[[28]], Z4Z12[[6]], Z4Z12[[32]], 
> Z4Z12[[10]],
>     Z4Z12[[36]]}
>
> Coset3 = {Z4Z12[[3]], Z4Z12[[29]], Z4Z12[[7]], Z4Z12[[33]], 
> Z4Z12[[11]],
>     Z4Z12[[25]]}
>
> Coset4 = {Z4Z12[[4]], Z4Z12[[30]], Z4Z12[[8]], Z4Z12[[34]], 
> Z4Z12[[12]],
>     Z4Z12[[26]]}
>
> Coset5 = {Z4Z12[[37]], Z4Z12[[15]], Z4Z12[[41]], Z4Z12[[19]], 
> Z4Z12[[45]],
>     Z4Z12[[23]]}
>
> Coset6 = {Z4Z12[[38]], Z4Z12[[16]], Z4Z12[[42]], Z4Z12[[20]], 
> Z4Z12[[46]],
>     Z4Z12[[24]]}
>
> Coset7 = {Z4Z12[[39]], Z4Z12[[17]], Z4Z12[[43]], Z4Z12[[21]], 
> Z4Z12[[47]],
>     Z4Z12[[13]]}
>
> Coset8 = {Z4Z12[[40]], Z4Z12[[18]], Z4Z12[[44]], Z4Z12[[22]], 
> Z4Z12[[48]],
>     Z4Z12[[14]]}
>
> I was not able to figure a way to create a multiplication table with 
> these
> eight elements, because of the multiple part modulo addition.
>
> There must be a way to multiply <(2,2)> by different elements of the
> external direct product, and a way to compute the multiplication table 
> of
> the factor groups. Can someone help?
>
> Thanks,
>
> Diana
>
> =====================================================
> "God made the integers, all else is the work of man."
> L. Kronecker, Jahresber. DMV 2, S. 19.
>
>
>



  • Prev by Date: Re: 1^Infinity
  • Next by Date: Re: Efficient Sorting Algorithm
  • Previous by thread: Re: Question on factor group calculations
  • Next by thread: Re: Question on factor group calculations