Re: Question on factor group calculations
- To: mathgroup at smc.vnet.net
- Subject: [mg38371] Re: Question on factor group calculations
- From: "Diana" <diana53xiii at earthlink.remove13.net>
- Date: Fri, 13 Dec 2002 04:09:18 -0500 (EST)
- References: <at9dre$q63$1@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
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
"Andrzej Kozlowski" <akoz at mimuw.edu.pl> wrote in message
news:at9dre$q63$1 at smc.vnet.net...
> 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]:=
> << "DiscreteMath`Combinatorica`"
>
> Next define the group elements
>
> 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}}
>
> Next,t he group multiplication:
>
> In[3]:=
> multZ4Z12[{a_, b_}, {c_, d_}] := {Mod[a + c, 4], Mod[b + d, 12]}
>
> THe generated subgroup:
>
> 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}}
>
> The coset representatives:
>
> In[5]:=
> cosetReps = Union[Z4Z12, SameTest -> (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
>
>