Permutation Representations and the Modular Group

Hi!

Given a congruence subgroup of the modular group G = SL2Z, how can one use Sage to find the permutation representations of G on the cosets of each of those normal subgroups? Specifically I am looking at the subgroups on page 22 here: http://arxiv.org/pdf/1201.3633v2.pdf

Many thanks!

edit retag close merge delete

Sort by » oldest newest most voted

Hi,

Given a congruence subgroup, you can get another data structure for it given exactly by the action of the standard generators (L = parabolic fixing infinity, R = parbolic fixing 0, S2 = element of order 2, S3 = element of order 3). You may proceed as follows for the first example of the list

sage: G = Gamma(4)
sage: GG = G.as_permutation_group()
sage: GG
Arithmetic subgroup of index 48
sage: GG.L()
(1,19,26,8)(2,10,34,14)(3,16,40,20)(4,22,29,11)
(5,7,31,17)(6,13,37,23)(9,28,46,32)(12,25,43,35)
(15,36,45,38)(18,33,48,41)(21,42,44,27)(24,39,47,30)
sage: GG.R()
(1,13,33,9)(2,19,39,15)(3,10,28,21)(4,16,36,12)
(5,22,42,18)(6,7,25,24)(8,31,45,27)(11,34,48,30)
(14,37,44,35)(17,40,47,32)(20,26,43,41)(23,29,46,38)
sage: GG.S2()
(1,7,4,10)(2,13,5,16)(3,19,6,22)(8,25,11,28)
(9,31,12,34)(14,33,17,36)(15,37,18,40)(20,39,23,42)
(21,26,24,29)(27,43,30,46)(32,45,35,48)(38,44,41,47)
sage: GG.S3()
(1,2,3,4,5,6)(7,8,9,10,11,12)(13,14,15,16,17,18)(19,20,21,22,23,24)
(25,26,27,28,29,30)(31,32,33,34,35,36)(37,38,39,40,41,42)
(43,44,45,46,47,48)


Warning: it is the right action on right coset (ie of the form Hg).

Note that you can also plot a fundamental domain using Farey symbols (Kulkarni method)

sage: G = Gamma(4)
sage: FareySymbol(G).fundamental_domain()


Vincent

more

Thanks very much! And I have a follow-up question too: Is there an easy way to find the permutation representations of PSL(2,Z) (rather than SL(2,Z)) on the cosets of these congruence subgroups? I notice there is a projective_index() command, so is there anything similar which could do the job here? Many thanks,

( 2012-08-06 05:34:42 +0200 )edit

Actually, if -Id is in your subgroup (ie it is an even subgroup) the choice of PSL(2,Z) or SL(2,Z) does not matter. When you have an odd subgroup, you need to add -Id to your subgroup which can be done with the method .to_even_subgroup() available for subgroup of SL(2,Z) represented by permutation.

( 2012-08-06 07:40:35 +0200 )edit

Great! Thanks very much

( 2012-08-06 09:49:52 +0200 )edit