\documentclass[12pt,a4paper]{article}
\usepackage{multicol}
\usepackage[french]{babel}
\newfont{\mini}{cmssi10 scaled 480}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\def\euro{\mbox{\textsf{C}\kern -2.33em{\raise0.24ex\vbox{\small\it =}}}}
%%%%%%%%%%%%%%%%%%%%%%%%%%
\def\fin{\nolinebreak \raise-0.1em\hbox{$\Box$}}
\def\stackunder#1#2{\mathrel{\mathop{#2}\limits_{#1}}}
\def\dual{ ^{\rm v}}
\def\bidual{ ^{\rm vv}}
\def\primedual{ ^{\prime \rm v}}
\def\ideal{{\cal J}}
\def\LL{{\cal L}}
\def\max{{\cal M}}
\def\quot#1#2{\mbox{\raise 0.1cm\hbox{$#1$}{\big /}\raise -0.1cm\hbox{$#2$}}}
\def\danger{{\Large \bf
    $\bigtriangleup$}\kern-0.32cm\raise0.05cm\hbox{\small
    !}\kern0.32cm\lower0.05cm\hbox{}}
%%%%%%%
\newlength{\largeurtmp}
\def\rela{\settoheight{\largeurtmp}{Z}{\rm Z} \kern -0.6\largeurtmp
  \raise 0.05cm\hbox{\tiny{\it /}}\kern 0.6\largeurtmp}
\def\petitrela{\settoheight{\largeurtmp}{Z}{\rm Z} \kern -0.4\largeurtmp
  \raise 0.05cm\hbox{\tiny{\it /}}\kern 0.4\largeurtmp}
\def\petitcomplex{{
    \settoheight{\largeurtmp}{$_C$}{\rm C}\kern -\largeurtmp
    \rule{0.25pt}{1.3\largeurtmp}\kern \largeurtmp}}
\def\complex{{
    \settoheight{\largeurtmp}{Q}{\rm C}\kern -0.66\largeurtmp
    \rule{0.25pt}{0.9\largeurtmp}\kern 0.66\largeurtmp}}
\def\ratio{{
    \settoheight{\largeurtmp}{C}{\rm Q}\kern -0.75\largeurtmp
    \rule{0.25pt}{0.9\largeurtmp}\kern 0.75\largeurtmp}}
\def\petitratio{{
    \settoheight{\largeurtmp}{C}{\rm Q}\kern -0.6\largeurtmp
    \rule{0.25pt}{0.6\largeurtmp}\kern 0.6\largeurtmp}}
\newcommand{\proj}{{\rm I} \! {\rm P}}
\newcommand{\reel}{{\rm I} \! {\rm R}}
\newcommand{\Fp}{{\rm I} \! {\rm F}_p}
\newcommand{\nat}{{\rm I} \! {\rm N}}
%%%%%%%%%%%%%%%Debut de macros de fiches d'exos
%%les macros sont \exo, \qu, \quskip \squ \qusqu \qusquskip
\newcounter{exo}
\newcounter{question}
\newlength{\lng}
\newcounter{sousquestion}
\setcounter{exo}{1}
\def\exo{

  \bigskip
  \noindent{\bf Exercice
    \Roman{exo}:}\addtocounter{exo}{1}\setcounter{question}{0}\nopagebreak 

  }
\def\exotitre#1{

  \bigskip
  \noindent{\bf Exercice
    \Roman{exo}: #1}\addtocounter{exo}{1}\setcounter{question}{0}\nopagebreak 

  }
\def\qu{

  \addtocounter{question}{1}\arabic{question})
  \setcounter{sousquestion}{1} }
\def\quskip{

  \bigskip
  \qu}
\def\squ{

  \settowidth{\lng}{\arabic{question})
  }\hspace{\the\lng}\alph{sousquestion}) \addtocounter{sousquestion}{1}} 
\def\qusqu{\qu\nopagebreak \vskip -1\baselineskip \squ}
\def\qusquskip{\quskip\nopagebreak \vskip -1\baselineskip \squ}

%%reference pour exos,squ {\`a} placer avant la question, qu est a placer apres
\def\labelexo#1{\expandafter\edef\csname refexo#1\endcsname {\Roman{exo}}}
\def\refexo#1{\csname refexo#1\endcsname}
\def\labelqu#1{\expandafter\edef\csname refqu#1\endcsname {\arabic{question})}}
\def\refqu#1{\csname refqu#1\endcsname}
\def\labelsqu#1{\expandafter\edef\csname refsqu#1\endcsname
  {\arabic{question}\alph{sousquestion})}} 
\def\refsqu#1{\csname refsqu#1\endcsname}  

%%%%%%%%%%fin de macros fiche d'exos
%%macros taille page
\newlength{\elargir}
\setlength{\elargir}{2.5cm}
\addtolength{\leftmargin}{-\elargir}
%%\addtolength{\hoffset}{-\elargir}
\addtolength{\oddsidemargin}{-\elargir}
\addtolength{\evensidemargin}{-\elargir}
\addtolength{\elargir}{\elargir}
\addtolength{\textwidth}{\elargir}
\addtolength{\textheight}{13\baselineskip}
\topmargin=-5\baselineskip
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%        
\everymath={\displaystyle}
\begin{document}
\noindent{\bf Universit{\'e} de Paris 7 \hfill \framebox{\Large \bf
    \hspace{ 1cm} TP01: Alg{\`e}bre Lin{\'e}aire \hspace{1cm}}\hfill   agreg 2008 (F.Han\footnote{http://www.math.jussieu.fr/$\sim$han/agreg})}\\
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\def\code#1{{\tt #1}}
%% 
\columnsep 0.7cm
\begin{multicols}{2}
% restart;maple_mode(1);cas_setup(0,0,0,1,0,1e-10,25,[1,50,0,25],0,0,0);#radians,pas de cmplx, pas de  Sqrt
\exo
\qu  En utilisant l'instruction \code{seq}, cr{\'e}er une matrice identit{\'e}
de taille 4, puis une matrice diagonale de valeurs propres $1,2,3,4$
% diag(seq(1,4)); diag(seq(i,i=1..4));
\qu Essayer/commenter \code{A:=matrix(4,4)+1;} Calculer l'image par
$A$ du vecteur \linebreak\code{v:=[seq(1,j=1..4)];}
% A:=matrix(4,4)+1;v:=[seq(1,j=1..4)];
%A*v;# Attention il retourne une ligne
\qusqu Faire une fonction qui {\`a} $(i,j)$ associe $(i,j)$ si $i\leq j$,
$(j,i)$ sinon.
\squ Faire une fonction qui {\`a} $(i,j)$ associe $0$ si $i=j$, $a_{i,j}$ si $i<j$,
$-a_{j,i}$ si $i>j$. (o{\`u} $a_{i,j}$ sont des variables formelles).
% f:=(i,j)->if (i=j) then 0 else if (i<j) then a[i,j] else -a[j,i] fi;fi;
\squ Calculer le d{\'e}terminant d'une matrice antisym{\'e}trique formelle \footnote{Cf
  pfaffien.}  de taille
$2,4,6$ (sans faire afficher les grosses valeurs) et le
factoriser. Que remarquez vous?
% matrix(4,4,f); d:=det(matrix(4,4,f)):
% factor(d);#c'est toujours un carre
\squ Pour une matrice antisym{\'e}trique formelle de taille $8$. \danger
On n'affichera surtout pas le resultat. (en mode maple \code{:}) ou
(en mode xcas \code{:;}) comparer le temps de calcul du d{\'e}terminant
avec les 2 fonctions diff{\'e}rentes disponibles. On {\'e}tudiera aussi les
informations disponibles sur les algorithmes utilis{\'e}s dans la
documentation. (Menu: $Aide>Algorithmes$)
% M:=matrix(8,8,f);
% !s!<c>
%Methode type pivot, contre m{\'e}thode de Laplace,... mais ici la matrice
%est antisymetrique.
%!s!
% d:=det(M):
% d:=det_minor(M):
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\exotitre{Illustration de la r{\'e}duction de Jordan}
Imaginez un texte vous expliquant la d{\'e}composition de Jordan pour une
matrice nilpotente. Il s'agit ici de l'illustrer en montrant d'abord comment
cr{\'e}er un bon exemple, et ensuite en illustrant la m{\'e}thode par une
r{\'e}solution pas {\`a} pas de votre exemple. Notamment la fa\c con de choisir
les vecteurs de base, et les conditions qu'ils doivent v{\'e}rifier. On
pourrait par exemple faire ainsi:
\qu Evidemment, pour cr{\'e}er un bon exemple, il faut partir de la
r{\'e}ponse voulue!
\squ Cr{\'e}er (sans taper tous les coefficients) une matrice sous forme
de Jordan de taille $8\times 8$ dont le module associ{\'e}e soit
$k[X]/X^8$ o{\`u} $k$ est le corps de base.
% !s!<c>
%-------------------Illustration de la reduction de Jordan--------------------------------------------------------------------------------
% Construction de l'exemple: on veut une reponse de ce type:
%!s!
% f:=(i,j)->if(i=j-1) then 1 else 0 fi;
% J:=matrix(8,8,f);#forme classique d'ordre 8.
\squ Le cas pr{\'e}c{\'e}dent {\'e}tant trop simple pour expliquer la m{\'e}thode,
annuler quelques coefficients dans la matrice pr{\'e}c{\'e}dente pour obtenir
une matrice $J_{3,3,2}$ dont le module\footnote{On utilise souvent $\oplus$ {\`a} la place de
  $\times$. Il faut alors pouvoir r{\'e}pondre {\`a} la question d'oral:
  ``quelle est la d{\'e}finition de $\oplus$?'', ou bien, ``pourquoi y a
  t'il 2 symboles?''} associ{\'e} soit:
$k[X]/X^3\times k[X]/X^3\times k[X]/X^2$  
% J[3,4]:=0:J[6,7]:=0:J;#2 blocs d'ordre 3 et un d'ordre 2.
\qusqu Pour $i\neq j$, cr{\'e}er une fonction cr{\'e}ant une matrice de transvection:
$T(i,j,a)=I+a.E$. (o{\`u} $E_{k,l}=1$ si $(i,j)=(k,l)$, $0$ sinon). 
%!s!<c>
% On veut faire un changement de base simple. Ex det=1 pour garder  des coeffs entiers.
% on cree une transvection:
% !s!
% f:=(i,j)->if(i=j) then 1 else 0 fi;
%!s!<m> 
% T:=proc(i,j,a)
% local A;
% A:=matrix(8,8,f):A[i,j]:=a;A;
% end proc;
%!s!
\squ Expliquer au Jury, et illustrer le lien entre ces matrices et les
op{\'e}rations sur les lignes et les colonnes d'une matrice. (A RETENIR)
% B:=matrix(8,8,b);
% !s!<c>
% faire Li<-Li+aLj c'est multiplier a gauche par T(i,j,a).
% Par exemple L3<- L3+aL2 c'est multiplier a GAUCHE par: T(3,2,a);
%!s!
% T(3,2,a)*B;
% !s!<c>
%En revanche: C2<-C2+aC3 c'est multplier a DROITE par T(3,2,a)
%!s!
% B*T(3,2,a);
\squ Quel est  l'inverse de $T(i,j,a)$? Que repr{\'e}sente la conjugaison
par $T(i,j,a)$ en terme d'op{\'e}rations lignes/colonnes?
% !s!<c>
%Remarquer que l'inverse de T(i,j,a) est T(i,j,-a)
%!s!
% T(3,2,a)^(-1);
% !s!<c>
%Donc conjuguer par T(i,j,a) c'est faire:
%  Li <- Li+aLj et Cj <- Cj-aCi
%!s!
\squ En utilisant par exemple 4 transvections, cr{\'e}er une matrice de
passage $P$ et un exemple non trivial mais tout de m{\^e}me r{\'e}alisable {\`a}
la main de matrice $N$ conjugu{\'e}e {\`a} $J_{3,3,2}$. (On donnera la liste
des op{\'e}rations lignes/colonnes que l'on 
aurait fait {\`a} la main pour faire $P.J_{3,3,2}.P^{-1}$).
% P:=T(6,7,2)*T(4,5,1)*T(3,2,2)*T(1,2,1):
% P,P^(-1);
% !s!<c>
%Donc faire a l'ordinateur:
%!s!
% N:=P*J*P^(-1):
%!s!<c>
%  est identique a faire a la main a partir de J:
%  L1 <- L1+L2 ; C2<-C2 - C1 puis
%  L3 <- L3+2L2 ; C2 <- C2 -2C3
%  L4 <- L4+L5 ; C5 <- C5 -C4
%  L6 <- L6 +2 L7; C7 <- C7 -2 C6
\qu Expliquer maintenant pas {\`a} pas la mise sous forme de Jordan de
$N$. (Justifier avec soins les ind{\'e}pendances de certains vecteurs.)
%  On a maintenant trouve un bel exercice: Trouver la forme de
%  jordan de N et une matrice de passage pour l'obtenir.
%  On calcule N^2 et son noyau.
%!s!
% N,N^2;
% N2:=nullspace(N^2);
%!s!<c>
% on choisit a et b  independants modulo ker N^2 (qui est aussi im
%  N). (attention a et b hors de ker N^2 est insuffisant).
%!s!
%  a:=[0,0,1,0,0,0,0,0]:b:=[0,0,0,0,0,1,0,0]:
% rank(matrix([op(N2),a,b]));# doit etre dim ker N^2 +2.
% N1:=nullspace(N);
%!s!<c>
% dim ker N^2 -dim ker N= 6-3=2+1 donc N.a,N.b doit etre complete par c
%  tq N.a,N.b,c indep modulo ker N. Par exemple on prend celui la:
%!s!
%  c:=[0,0,0,0,0,0,0,1]:
% !s!<c>
%On verifie qu'il convient:
%!s!
% rank(matrix([op(N1),N*a,N*b,c]));
% !s!<c>
%dim ker N - dim ker N^0=3 c'est donc engendr{\'e} par
%N^2.a,N^2.b,N.c. Il n'y a plus rien a faire, et l'on prend 
% la base suivante: (Attention pour xcas N*a... sont des lignes, on
% prend donc la transposee)
%!s!
% Q:=transpose(matrix([(N^2)*a,N*a,a,(N^2)*b,N*b,b,N*c,c]));
% !s!<c>
%On sait maintenant que Q^(-1)*N*Q doit donner J. verifification:
% !s!
% Q^(-1)*N*Q;
% !s!<c>
%--------------------------------------------------------------------------------------------------------------
%!s!
\newpage
\end{multicols}

\end{document}

