\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} TP08 R\'eseaux; modules \hspace{1cm}}\hfill   agreg 2009 (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,10,[1,50,0,25],0,0,0);#radians,pas de cmplx, pas de  Sqrt
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
\def\M{{\cal M}}
\exo
\qu Comment trouver le vecteur des coefficients d'un polyn\^ome?
% a:='a';symb2poly((2+4*a)^3,a);
\qu Si $M\in\M_{i,l}$ et $N\in\M_{i,k}$ sont des matrices. Comment
cr\'eer l'\'el\'ement de $\M_{i,l+k}$ correspondant \`a 
la juxtaposition de $M$ et $N$? Comment ferait on pour une
juxtaposition verticale?
% M:=matrix(2,3,1);N:=matrix(2,4,2);OO:=matrix(3,3,3);augment(M,N);concat(M,OO); 
\qu \'Etudier les fonctions graphiques de votre logiciel. Pour les options de
couleurs et les noms on pourra obtenir des syntaxes en cliquant, puis ajuster
les objets voulus en ligne de commande. Pour obtenir une description compl\`ete on   
regardera la documentation  dans l'aide html "les fonctions de la g\'eom\'etrie en
2D"  
\squ D\'essiner la droite passant par les points $(0,0)$, et $(3,4)$ en tirets
rouges, et celle passant par $(0,0)$ $(1,-1)$ en  bleu sur le m\^eme graphique. 
%!s!<g>
% l1:= droite(0,3+4*(I),'couleur'=(rouge+point_width_5+dot_line));
% l2 := droite(0,1-I,'couleur'=bleu);
\squ D\'essiner 2 translat\'es des droites pr\'ec\'edentes par addition et les 4
intersections.
% E1:=[l1+1,l1+1-I]; E2:=[l2+2,l2+3];
% inter(E1,E2,couleur=(red+point_width_2));
%!s!
\squ Dessiner une liste de deux points. Par exemple $(1,1)$ et
$(2,3)$. En rouge avec nom cach\'e et grosse croix. 
%!s!<g>
% af:='couleur'=(red+point_width_2+hidden_name); #on sauve les options dans af
% l:=[point(1+I,af),point([2,3],af)];
% A:=point(-2.098,1.039,'couleur'=(red+point_width_2+hidden_name))
% af:=objet->couleur(objet,blue+point_width_2+hidden_name)
% seq(af(point(i,-1)),i=-2..2);
%!s!
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
\labelexo{exemplesdivelem}
% !s!<c>
%--------------------------------------------Exercice--------------------------------
%!s!
\exo 
\qu On consid\`ere les sous groupes $N_1,N_2,N_3$ de $M=(\rela^4,+)$ engendr\'e par les
vecteurs $
\left(\begin {array}{cccc}
    8&4&60&0\\
    8&12&18&36\\
    16&16&32&32\\
    32&32&32&32
  \end {array} \right)$, et $
\left(\begin {array}{cccc}
    8&4&60&0\\
    8&12&18&36\\
    16&16&32&32\\
    24&28&40&68
  \end {array} \right)$, $
\left(\begin {array}{ccccc}
    8&4&60&0&16\\
    8&12&18&36&28\\
    16&16&32&32&32\\
    24&28&40&68&68
  \end {array} \right)$.  D\'ecomposer $M/N_i$ en produit de groupe
cycliques. Quel est le cardinal de $M/N_i$?
%!s!<m>
% cardi:=A->if det(A)=0 then print("cardinal infini") else
% abs(det(A)) fi;
%!s!
% A:=matrix([[2*4,4,15*4,0],[8,12,18,36],[16,16,32,32],[32,32,32,32]]);
% B:=ismith(A)[2];cardi(A);
%!s!<c>
% M/N=M/image(A) il est donc isomorphe a M/B ou B=ismith(A) le
% cardinal est donc infini s'il y a un 0 sur la diagnonale de B,
% sinon c'est le produit des termes diagonaux de B, donc aussi |detB|=|det A| (dans le cas d'une matrice carree)
%!s!
% abs(det(B)),abs(det(A)); #dans les 2 cas, c'est le cardinal.
% A:=matrix([[2*4,4,15*4,0],[8,12,18,36],[16,16,32,32],[24,28,50,68]]);
% ismith(A)[2]; cardi(A);
% A:=matrix([[2*4,4,15*4,0,16],[8,12,18,36,28],[16,16,32,32,32],[24,28,50,68,68]]);
% ismith(A)[2]; cardi(A);
\qu On consid\`ere le r\'eseau engendr\'e par les vecteurs $v_1=(1,2)$,
$v_2=(-1,1)$, $v_3=(0,2)$.
\squ Dessiner na\"\i vement en bleu les points de ce r\'eseau de coordonn\'ees dans $[-5,5]$
% v1:=[1,2];v2:=[-1,1];v3:=[0,2];
%!s!<c>
% On fait quelques combinaisons lineaires au hasard, ca serait mieux de trouver une base (on le fera plus dans l'exercice suivant)
%!s!
% l:=seq(seq(seq(couleur(point(i*v1+j*v2+k*v3),blue+point_width_1+hidden_name),k=-5..5),j=-5..5),i=-5..5):
% ismith(transpose(matrix([v1,v2,v3]))); #le reseau engendre est bien Z^2
\squ Rajouter en rouge ceux du r\'eseau engendr\'e par $v_1,v_2$. idem
avec $v_1,v_3$ et $v_2,v_3$. Peut ont forc\'ement extraire une base d'une
famille g\'en\'eratrice?
%% l2:=seq(seq(couleur(point(i*v1+j*v2),red+point_width_2+hidden_name),j=-4..4),i=-3..3):
% v1:=[1,I]*v1;v2:=[1,I]*v2;v3:=[1,I]*v3; #notation complexe plus pratique pour les dessins.
% d1:= [seq(droite(0,v1)+i*v2,i=-10..10)]:
% d2:= [seq(droite(0,v2)+i*v1,i=-10..10)]:
% l2:= couleur(inter(d1,d2),red+point_width_2+hidden_name):
% (l,l2);# ca ne rempli pas tout
% !s!<c>
% aucun des 3 determinants (v1,v2) (v1,v3) (v2,v3) n'est inversible dans Z, on ne peut donc pas en extraire une base.
%!s!
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
\exotitre{Anneaux d'entiers}
\qusqu On consid\`ere maintenant l'anneau $R=\rela[i.\sqrt{5}]$. et $I$
l'id\'eal engendr\'e par $2$ et $3+3i\sqrt{5}$. Donner une famille g\'en\'eratrice
de $I$ en tant que groupe ab\'elien. Quel est le cardinal de $R/I$ (On
appellera ce nombre la norme de l'id\'eal $I$).
% !s!<c>
%--------------------------------------------Exercice--------------------------------
% Famille generatrice de I comme Z module: les generateurs  et leurs multiples par Isqrt(5)
%!s!
% M:=transpose(matrix([[2,0],[3,3],[0,2],[-15,3]]));
% ismith(M);#Donc N(I)=2
\squ soit $z\in R$. Quelle est la matrice de la multiplication par $z$
de $R$ dans $R$? Quel est son d\'eterminant et le cardinal de $R/(z)$
(ie la norme de $z$). L'id\'eal $I$ est il principal?
\squ Dessiner sur un m\^eme graphique le r\'eseau associ\'e \`a $I$ et celui
de $\rela[i\sqrt{5}]$.
% l1:=[seq(couleur(droite(-10,10)+I*i*sqrt(5),red+dash_line),i=-10..10)]: #les lignes du reseau.
% couleur(hidden_name); #On le met en global.
% c1:=[seq(couleur(droite(-10*I,10*I)+i,red+dash_line),i=-10..10)]: #les colonnes du reseau.
% !s!<c>
% Pour le reseau associe a I on cherche d'abord une base de I comme Z module, soit avec ismith soit de tete par operation sur les colonnes de M
% !s!
% M:=matrix([[2,1],[0,1]]); #est une base de I
% l2:=[seq(couleur(droite(2*i-10-10*sqrt(5)*I,2*i+10+10*sqrt(5)*I),blue+dash_line),i=-10..10)]:
% c2:=[seq(couleur(droite(-10+i+i*sqrt(5)*I,10+i+i*sqrt(5)*I),blue+dash_line),i=-10..10)]:
% (c1,l1,c2,l2);
\squ Completer:\\ Une similitude conserve les
\framebox{\phantom{angles}}. D\'eduire du dessin\footnote{On prendra
  garde au fait qu'il n'y a pas unicit\'e de la base} que $I$ n'est pas principal.
% !s!<c>
%Attention, le fait d'avoir dessiner des mailles est tendencieux, ca
%n'est pas par qu'un maillage n'est pas orthogonal qu'il n'en existe
%pas un autre orthogonal. Pour conclure correctement que $I$ n'est pas
%principal, il faut dire qu'on ne voit pas de rectangle d'aire 2
%semblable au rectangle de cot\'e 1 et sqrt(5)
%!s!
\qu On prend maintenant $R=\rela[i.\sqrt[4]{5}]$ et
$I=(2,1+\sqrt{5})$. Calculer la norme de $I$ et celle d'un \'el\'ement
$z$ (On remarquera que c'est encore le d\'eterminant de la
multiplication par $z$). L'id\'eal $I$ est il  principal?
% !s!<c>
% base de R: (1,a,a^2,a^3) ou a=i.5^(1/4). Il faut une famille
% generatrice de I comme Z-module. I=(2,1-a^2). R=Z[a]/(a^4-5)
% !s!
% M:=2*identity(4);N:=matrix([[1,0,-5,0],[0,1,0,-5],[-1,0,1,0],[0,-1,0,1]]);
%#verification:
%a:='a';
%transpose(matrix(4,1,(i,j)->a^(i-1))).N;
%seq(rem(a^(i)*(1-a^2),a^4-5,a),i=0..3);
%M:=augment([M,N]); #est generatrice de I comme Z module
%ismith(M);# Donc R/I est de cardinal 4.
% (i,j,k,l):='i','j','k','l': #on libere i,j,k,l
% z:=i+j*a+k*a^2+l*a^3;
% MM:=transpose(matrix([seq(symb2poly(rem(expand(a^(u)*z),a^4-5,a),a),u=0..3)]));
% normez:=det(MM);
% normez mod 5; # -1=x^4 mod 5 n'a pas de solutions, donc on ne peut pas avoir N(I)=N(z) puisque c'est impossible mod 5
\exotitre{base adapt\'ee} Lorsque $M$ est un $\rela$-module de type fini et $N$ un sous
module de $M$, on dit que $e_1,\dots,e_n$ est une base adapt\'ee de $M$
pour $N$ si l'ensemble $\{m_1e_1,\dots,m_ne_n\}$ priv\'e de $0$ est une
base de $N$ o\`u les $(m_i)$ sont les diviseurs \'el\'ementaires de $N$
\'eventuellement compl\'etes par des z\'eros. Remarquer que si $N$ est
engendr\'e par l'image de $A$, pour trouver une base adapt\'ee il faut
avoir conserv\'e les op\'erations sur les lignes. En utilisant une
fonction int\'egr\'e dans le logiciel, trouver une base adapt\'ee aux
modules de l'exercice \refexo{exemplesdivelem}.
% !s!<c>
%--------------------------------------------Exercice--------------------------------
%!s!
% A:=matrix([[2*4,4,15*4,0],[8,12,18,36],[16,16,32,32],[32,32,32,32]]);
% (U,B,V):=ismith(A);
% (U*A*V-B);#verification.
% (U^(-1)),(U^(-1)*B);#est une base de M resp N;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\exotitre{$k[x]$-modules de type fini}
\qu On consid\`ere la matrice sous forme de Jordan {\footnotesize$M=\left( \begin {array}{ccccccc} 1&1&0&0&0&0&0\\0&1&0&0&0&0&0\\0&0&0&1&0&0&0\\0&0&0&0&0
&0&0\\0&0&0&0&0&1&0\\0&0&0&0&0&0&1
\\0&0&0&0&0&0&0\end {array} \right)
$}. R\'epondre de t\^ete aux questions suivantes: Quel est son polyn\^ome
minimal, le polyn\^ome caract\'eristique? Les diviseurs \'el\'ementaires?
\qu En d\'eduire la forme de smith de $M-x.Id$, et v\'erifier votre
r\'eponse avec le logiciel. (On pourra chercher l'instruction pari pour
la forme de smith d'une matrice a coefficients polynomiaux.)
% !s!<c>
%--------------------------------------------Exercice--------------------------------
% !s!
%M:=matrix(7,7,(i,j)->if i=j-1 then 1 else 0 fi):M[1,1]:=1:M[2,2]:=1:M[2,3]:=0:M[4,5]:=0:M;
% pari(); #on charge pari
% !s!<c>
% Dans pari l'instruction pour la forme de smith est matsnf. Ici il faut mettre l'option 2 pour preciser  que la matrice est a coefficients polynomiaux.
% !s!
% matsnf(M-x*identity(7),2); 
\newpage
\end{multicols}

\end{document}

