3
$\begingroup$

I just started using SageMath and am not sure how to represent the elements of PSL(2,q) as 2x2 matrices (instead of permutations).

For the case q = 7, I tried an explicit contruction based on this generator pair

MS = MatrixSpace(GF(7), 2)
gens = [MS([[2,0],[0,4]]),MS([[-1,1],[-1,0]])]
G = MatrixGroup(gens)
G.conjugacy_classes_representatives() # I want this to show representatives as 2x2 matrices

which doesn't work because it generates the group SL(2,7) instead of PSL(2,7).

$\endgroup$
1
  • $\begingroup$ Interesting references about PSL(2,q) here $\endgroup$
    – Jean Marie
    Apr 14 at 20:59

2 Answers 2

3
$\begingroup$

The following constructs the groups $S$, the special linear group of size two over $F=\Bbb F_7$, and the group $G$ which is the PSL-group of interest, the quotient of $S$ w.r.t. its center $\pm I$.

For the question, i would define and use a morphism $f:S\to G$. Then for the purpose of having matrices instead of permutations, just check which matrices of $S$ are mapped to the specific element of $G$ (implemented by sage, inherited from GAP as a permutation).

F = GF(7)

S =  SL(2, F)
G = PSL(2, F)

f = S.Hom(G)(G.gens())    # this maps the generators of SL to those of PSL

print(f"The conjugacy classes of\nG = {G}\nare as follows:\n")

for c in G.conjugacy_classes_representatives():
    print(f"Class of {c!s:20} represented by "
          f"{[m.list() for m in S if f(m) == c]}")

This delivers:

The conjugacy classes of
G = The projective special linear group of degree 2 over Finite Field of size 7
are as follows:

Class of ()                   represented by [[[1, 0], [0, 1]], [[6, 0], [0, 6]]]
Class of (3,5,7)(4,6,8)       represented by [[[5, 0], [0, 3]], [[2, 0], [0, 4]]]
Class of (2,3,5,4,7,8,6)      represented by [[[1, 1], [0, 1]], [[6, 6], [0, 6]]]
Class of (2,4,6,5,8,3,7)      represented by [[[1, 3], [0, 1]], [[6, 4], [0, 6]]]
Class of (1,2)(3,4)(5,8)(6,7) represented by [[[0, 2], [3, 0]], [[0, 5], [4, 0]]]
Class of (1,2,3,5)(4,8,7,6)   represented by [[[3, 3], [2, 0]], [[4, 4], [5, 0]]]

Some comments: Interactively we can ask for the used ingredients.

sage: F
Finite Field of size 7
sage: F.multiplicative_generator()
3
sage: S
Special Linear Group of degree 2 over Finite Field of size 7
sage: S.gens()
(
[3 0]  [6 1]
[0 5], [6 0]
)
sage: [s.order() for s in S.gens()]
[6, 3]
sage: G.gens()
((3,7,5)(4,8,6), (1,2,6)(3,4,8))
sage: [g.order() for g in G.gens()]
[3, 3]
sage: f
Group morphism:
  From: Special Linear Group of degree 2 over Finite Field of size 7
  To:   The projective special linear group of degree 2 over Finite Field of size 7
sage: for s in S.gens():
....:     print(f"The matrix\n{s}\nin S is mapped to:\n{f(s)}\n")
....: 
The matrix
[3 0]
[0 5]
in S is mapped to:
(3,7,5)(4,8,6)

The matrix
[6 1]
[6 0]
in S is mapped to:
(1,2,6)(3,4,8)

In words:

$F$ is the field $\Bbb F_7$, a multiplicative generator is $w=3$. Then the generators of $S=\operatorname{SL}(2, F)$ are $ \begin{bmatrix} w \\ & w^{-1} \end{bmatrix} = \begin{bmatrix} 3 & 0 \\ 0 & 5 \end{bmatrix} $ and $\begin{bmatrix} -1 & 1 \\ 1 & 0\end{bmatrix} $. (GAP's choices). These elements have orders $6$, respectively $3$. The two generators for $G=\operatorname{PSL}(2, F)$ are two permutations with the same cyclic pattern. The morphism $f$ from $S$ to $G$ maps generators into generators. (The order may have been an issue, but is not, on the side of $G$ we have the "same pattern".)

The print shows also which are explicitly the images of the $S$-generators.

There is also a method f.preimage, but it is not for this purpose. Instead, i used an ad-hoc preimage, using list comprehension.

For instance, let us use some random element $s$ of $S$:

sage: s = S.random_element()
sage: s
[0 2]
[3 2]
sage: g = f(s)
sage: g
(1,4,7,5,3,6,2)

Then the ad-hoc preimage is:

[s for s in S if f(s) == g]

And the interpreter gives:

sage: [s for s in S if f(s) == g]
....: 
[
[0 5]  [0 2]
[4 5], [3 2]
]

We have then explicit access to each of the representatives.

$\endgroup$
1
  • $\begingroup$ I don't know why my previous comment was not posted, but thanks a lot for a very informative answer! $\endgroup$
    – MightyOwl
    Apr 23 at 15:23
2
$\begingroup$

$2$ is not primitive in $\mathbb{F}_7$. Use $\omega=3$, $\omega^{-1}=5$.

$\endgroup$
1
  • $\begingroup$ Thanks, I completely missed that. But the generated group is still just SL(2,7) even by correcting 2,4 to 3,5. $\endgroup$
    – MightyOwl
    Apr 14 at 17:42

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .