Groupes de matrices [Python]

On note {{}^tM} la transposée d’une matrice. On définit
{J=\begin{pmatrix}0&-1&0\\[4pt]1&0&-1\\[4pt]0&-1&0\end{pmatrix},\quad K=\begin{pmatrix}0&1&0\\[4pt]1&0&-1\\[4pt]0&1&0\end{pmatrix}}et {D=\operatorname{diag}(1,-1,1)}, {L=\operatorname{diag}(1,1,-1)}. Pour {a\in\mathbb R}, on pose {R_a=I_3+aJ+a^2J^2/2} et {S_a=R_aD}. On note {\mathcal R=\{R_a:a\in\mathbb R\}} et {\mathcal S=\{S_a:a\in\mathbb R\}}.
[P] indique l’usage de Python ; [P?] autorise Python mais des justifications mathématiques peuvent être demandées.

1. (a) [P] Créer les variables contenant les quatre matrices de l’énoncé.

1. (b) [P?] Calculer {LJ+{}^tJL}, {LJ^2+2{}^tJLJ+{}^t(J^2)L}, {J^3}, {{}^tJLJ^2} et {{}^t(J^2)LJ}.

1. (c) [P] Écrire les fonctions R(a) et S(a).

On pose {G=\{M\in M_3(\mathbb R):{}^tMLM=L\}}.

2. (a) Montrer que {G} est un sous-groupe de {GL_3(\mathbb R)}.

2. (b) Montrer que {\mathcal R\cup\mathcal S\subset G}.

3. Déterminer toutes les matrices inversibles {P} telles que {J=PTP^{-1}} et {K=PUP^{-1}}, où
{T=\begin{pmatrix}0&1&0\\[4pt]0&0&1\\[4pt]0&0&0\end{pmatrix},\quad U=\begin{pmatrix}0&-1&0\\[4pt]0&0&1\\[4pt]0&0&0\end{pmatrix}}Dans la suite, on choisira la troisième colonne de {P} égale à {(0,0,1)^t}.

On note {Z=(1,0,1)^t} et {H=\{M\in G:MZ=Z\}}, sous-groupe de {G}. On veut montrer {H=\mathcal R\cup\mathcal S}.

4. (a) Montrer que {\mathcal R\cup\mathcal S\subset H}.

4. (b) Réciproquement, soit {M\in H} et {N=P^{-1}MP}, avec {P} choisi en 3. Préciser la forme de {N}, traduire {{}^tMLM=L} en fonction de {N}, résoudre et en déduire {M\in\mathcal R\cup\mathcal S}.

Dans la question 5, les calculs sont demandés à la main.

5. (a) Préciser les déterminants et factoriser les polynômes caractéristiques de {R_a,S_a}.

5. (b) Pour {a,b\in\mathbb R}, que dire de {R_aR_b}, {S_aS_b}, {R_aS_b} et {S_bR_a} ?

5. (c) Identifier l’endomorphisme {s_a} de matrice {S_a} dans la base canonique.