7.2 Formules de changement de niveaux et applications
7.2.2 Calcul de `-isog´ enies sans changer de niveau
` γ2
. .. γn
o`u lesγi sont des r´eels positifs quelconques. Par exemple pour`= 12 nous avons
2 2 2
2 −1 −1
0 1 −1
2 2 0
2 −1 1
2 −1 −1
=
12
6 2
.
Remarque 7.2.3. Il existe une r´eciproque au th´eor`eme 7.2.1 permettant de monter de niveau sans prendre d’isog´enie. Il suffit de consid´erer la matrice F−1 au lieu de F. Notons cependant qu’il faut connaˆıtre les coordonn´ees thˆeta de niveau n des points de`-torsion. Ceci est coh´erent avec la propri´et´e 3.1.11qui dit que les thˆeta constantes de la familleFn` codent lan`-torsion de la vari´et´e.
7.2.2 Calcul de `-isog´ enies sans changer de niveau
Dans cette section, nous nous int´eressons de nouveau aux calculs de`-isog´enies entre vari´et´es ab´eliennes repr´esent´ees avec des fonctions thˆeta de niveau n. Rappelons que nous supposons que nest pair (pour des raisons arithm´etiques). Pour simplifier l’exposition et parce qu’il est possible de s’y ramener, nous avons fait l’hypoth`ese que `est un nombre premier qui est premier avecn et avec la caract´eristique du corps.
Combin´ee aux isog´eniesπet ˆπde Lubicz et Robert [LR10a] (section7.1), la formule de changement de niveau permet de calculer une`-isog´enie sans changer de niveau. Pour cela nous proc´edons comme l’un des deux diagrammes suivants :
niveaun` B
π
B
niveaun A
OO //B A
ˆ π
??//B
Cette m´ethode pr´esente l’inconv´enient de devoir prendre des racines`-i`emes et de travailler dans une extension de corps car les vari´et´es en niveaun`ne sont `a priori pas d´efinies sur le corps de base. Comme la fl`eche horizontale est rationnelle, il est naturel d’essayer de trouver un algorithme ne n´ecessitant pas de passer dans une extension. Une modification de la formule de descente de niveau sans isog´enie va r´esoudre ce probl`eme.
PosonsA=Cg/Ω`Zg+Zg et B=Cg/ΩZg+Zg, l’isog´enie deAversB est donn´ee par A=Cg/Ω`Zg+Zg −→ B=Cg/ΩZg+Zg
z 7−→ `z
et a pour noyau 1`Zg/Zg.
Th´eor`eme 7.2.4. SoitF une matrice deMatr×r(Z)telle que tF F =`Id. PosonsT =F−1. SoitΩune matrice du demi-espace de SiegelHg et soitz un vecteur deCg. Posons
(w1, . . . , wr) = (`z,0, . . . ,0)T ∈Matg×r(C).
tel-00642951, version 1 - 20 Nov 201 1
Soient des ´el´ements betb0 de n1Zg/Zg, posons(j1, . . . , jr) = (b, b0, . . . , b0)T. Nous avons
D´emonstration. Ce th´eor`eme est une r´e´ecriture du th´eor`eme7.2.1o`u nous avons utilis´e la propri´et´e3.1.2 pour avoir modifier b etb0 par des ´el´ements deZg de telle sorte que tous leurs num´erateurs soient divisibles par `.
Dans la suite nous supposons donc que J = (j1, . . . , jr)appartient `a n1Zgr
. D’apr`es la propri´et´e 3.1.2, les fonctions thˆeta de la base Fn utilis´ees ici ne d´ependent pas du choix des repr´esentants des classes de 1nZg/Zg.
Avec la remarque pr´ec´edente, il est clair que nous pouvons calculer les thˆeta constantes de niveaunde la vari´et´eB, `a partir de la connaissance des«vraies»thˆeta constantes de niveaundeAet des«vraies» coordonn´ees des points de`-torsion de la vari´et´eA:
θA[0b]
De mˆeme, `a partir de ces mˆemes points de`-torsion et des«vraies»coordonn´ees de niveaund’un point deA, nous pouvons calculer les coordonn´ees de niveau nde l’image de ce point par l’isog´enie.
Nous allons expliquer maintenant comment il est possible d’utiliser en pratique le th´eor`eme7.2.4pour calculer des`-isog´enies. Nous utiliserons le lemme suivant
Lemme 7.2.6. La matrice F d´efinie une application lin´eaire sur leZ/`Zespace vectoriel : (Z/`Z)r −→ (Z/`Z)r
u 7−→ uF.
Le noyau de cette application est l’ensemble des utF o`u u∈(Z/`Z)r et est de dimensionr/2.
Calcul des thˆeta constantes de la vari´et´e B
Soit`un nombre premier impair diff´erent de la caract´eristique du corps. Nous voulons calculer une `-isog´enie deAdansB=A/Ko`uKest un sous-groupe symplectique maximal de la`-torsion surA. Apr`es un changement de base symplectique, nous pouvons supposer que K correspond `a {β, β ∈ 1`Zg/Zg}.
Finalement supposons que nous connaissons les coordonn´ees thˆeta de niveaun (avecnpair) des points de 1`Zg. C’est-`a-dire que nous connaissons `a un facteur projectifλβ les coordonn´ees thˆeta
λβθA[0b]
tel-00642951, version 1 - 20 Nov 201 1
Comme ` est impair, nous obtenons les puissances `-i`emes des λi/λOA et λi,j/λOA en appliquant les r´esultats de la page 62. D’apr`es les algorithmes14et 15, il est possible de calculer les relev´es affines de tous les points de 1`Zg en fonction des coordonn´ees des points ei, ei+ej et des coefficients λi et λi,j. Reprenons l’´equation7.1:
[L:L1]θB[0b]
Nous avons alors les monˆomes de la partie droite. Le lemme suivant montre qu’ils ne d´ependent que des puissances`-i`emes des facteursλi/λOA etλi,j/λOA.
D´emonstration. Nous voulons montrer que le produit est laiss´e invariant par toute transformation de Cλi/λOA,λi,j/λOA
qui agit sur les g´en´erateurs par une racine de`-i`eme l’unit´eζ. Ces transformations sont engendr´ees par les transformationsχio et χio,jo o`u
o`u nous avons ´ecritupour le vecteur ligne desui. Comme par hypoth`ese (t1, . . . , tr)F = (0, . . . ,0)∈1`Zg/Zg,
tel-00642951, version 1 - 20 Nov 201 1
Algorithme 20Calcul d’une`-isog´enie sans changer de niveau
Entr´ee: SoitAune vari´et´e ab´elienne donn´ee par ses thˆeta constantesθA[0b] 0,Ω/`n
de niveaun(avecn pair). Soit un entier `premier et copremier avecnet la caract´eristique du corps. Supposons donn´ees les coordonn´ees thˆeta de niveau n d’une base symplectique (e1, . . . , ei) d’un sous-groupe isotrope maximal de la `-torsion.
Sortie: Les thˆeta constantes de niveaunde la vari´et´eB=A/K.
1: Fixer une matrice F de Matr×r(Z) telle que tF F =`Idr. {Nous posonsT =F−1= 1`F}
2: Faire un changement de base symplectique de sorte que i
ei = (0, . . . , 0, 1`, 0, . . . , 0)
3: Pour i6=j, calculerei+ej dansAen utilisant des vraies additions (algorithme 8page54).
4: Calculer les puissances`-i`emes desλi/λOA,λi,j/λOA (voir page62).
5: Utiliser les additions diff´erentielles pour calculer les coordonn´ees thˆeta affines de niveau n de tous les points de K = 1`Zg/Zg dansC[λi/λOA, λi,j/λOA] o`u les λi/λOA,λi,j/λOA sont vues comme des r´esultat. Nous pouvons ´eviter de prendre ces racines en travaillant dans l’alg`ebre
C[Xi, Xi,j]/n
Nous r´esumons le calcul des thˆeta constantes de la vari´et´eB dans l’algorithme20.
Remarque 7.2.8. Quand la donn´ee initiale n’est pas tous les points du noyau K mais seulement une baseei, il faut calculer les points ei+ej pouri6=j. Cela ne peut pas ˆetre fait en utilisant des additions diff´erentielles. En niveau n≥4pair, nous pouvons utiliser les vrais additions et en niveau n= 2, il faut utiliser des additions compatibles telles que d´efinies dans [LR10a,Rob10].
tel-00642951, version 1 - 20 Nov 201 1
Calcul de l’image d’un point
Nous expliquons maintenant comment calculer l’image d’un pointz∈Cg/ΛΩpar l’isog´enie pr´ec´edente.
Supposons connu un relev´e affine des coordonn´ees thˆeta de niveaundez : µ0θA[0b] D’apr`es l’´equation7.1, nous avons la formule
[L:L1]θB[0b]
. Comme dans le cas pr´ec´edent, nous allons les calculer
`
a un facteur inconnu pr`es. Cependant, nous connaˆıtrons suffisamment d’informations pour ˆetre capable d’obtenir la valeur du terme de droite.
Commen¸cons par calculer le point correspondant `a z +ei o`u (e1, . . . , en) est la base canonique de 1`Zg/Zg `a des facteurs projectifs µi inconnus pr`es. Pour cette op´eration nous avons besoin de vraies additions. Soit k un entier, avec les algorithmes de la section 3.2.3, nous pouvons retrouver tous les pointskz+βavecβ ∈ 1`Zg/Zg`a un facteur projectif pr`es d´ependant desµi,λietλi,j. De plus, d’apr`es la section3.2.3, nous pouvons calculer les puissances`-i`emes des facteursµi/µ0en fonction des coordonn´ees des points et de λ`(`−1)i /λ`(`−1)O
A . Ces derniers sont les puissances`−1-i`emes de (λi/λOA)` qui ont ´et´e calcul´ees dans la section pr´ec´edente.
Lemme 7.2.9. Soient t1, . . . , tr des ´el´ements de 1`Zg/Zg v´erifiant la relation(t1, . . . , tr)F = (0, . . . ,0) La preuve est similaire `a celle du lemme7.2.7.
D´emonstration. AppelonsP le produit P :=θA0 Nous voulons montrer queP est laiss´e invariant par toute transformation de
C
h(µi/µ0)`, λi/λOA
`
, λi,j/λOA
`i
qui agit sur les g´en´erateurs par une racine `-i`eme de l’unit´eζ. Ces transformations sont engendr´ees par les transformationsχio,χio,jo etξi0 o`u
tel-00642951, version 1 - 20 Nov 201 1
χio,j0
λi
λOA
= λi
λOA
∀i, χio,j0
λi,j
λOA
=
( ζλλi0,jo
OA i=io, j=jo
λi,j
λOA ∀i6=io ∀j6=jo χio,j0
µi µ0
= µi µ0
∀i
ξio λi
λOA
= λi λOA
∀i, ξio λi,j
λOA
= λi,j λOA
∀i, j, ξio µi
µ0
= ζµµi0
0 i=io
µi
µ0 ∀i6=io Posons
u= (`(t1)i0, . . . , `(tr)i0)∈Zg/`Zg, v= (`(t1)j0, . . . , `(tr)j0)∈Zg/`Zg, m= (1,0, . . . ,0) tF, nous avons alors
χi0(P) = ζutuP, χi0,jo(P) = ζutvP, ξi0(P) = ζutmP.
Comme mF = uF = vF = 0 dans (Z/`Z)r, il existe des vecteurs u0, v0 et m0 dans (Z/`Z)r tels queu=u0tF,v=v0tF etm=m0tF. D’o`u
utu=u0tF Ftu0=`u0tu0= 0, utv=u0tF Ftv0 =`u0tv0 = 0, utm=u0tF Ftm0=`u0tm0 = 0.
L’algorithme 21permettant de calculer l’image d’un point par l’isog´enie est donc correct.
Complexit´e
Nos algorithmes d´ependent de plusieurs param`etres : – la dimension gde la vari´et´e ab´elienne,
– le corpsko`u elle est d´efinie, – le degr´e`de l’isog´enie,
– le niveaundes coordonn´ees thˆeta.
La dimensiong est fix´ee ainsi que le corpsk. Nous supposons ´egalement quenest fix´e car en pratiquen est ´egal `a 2 ou 4. Nous cherchons donc la complexit´e en`.
Dans les algorithmes pr´ec´edents, l’´etape la plus coˆuteuse est le calcul desO(`g) points des modules en utilisant des additions diff´erentielles. Pour le calcul des thˆeta constantes deB, nous avons besoin de`g points exactement et pour envoyer un point par l’isog´enie, nous avons besoin der`gpoints. SoitLle corps o`u tous les points sont d´efinis. Le nombre de coordonn´ees d’un point est O(ng) et est fixe. Par ailleurs, nous travaillons sur une alg`ebre de dimension au plusg(g+ 3)/2 au dessus deL. De ce fait, nous avons besoin deO(`g) op´erations dansLpour calculer les coordonn´ees des points.
Maintenant, il faut utiliser l’´equation7.1. Le coˆut est deO `rg2
op´erations dansLcar l’ensemble des
´
el´ementst1, . . . , tr∈ 1`Zg/Zg tels que (t1, . . . , tr)F = 0 est unZ/`Z-espace vectoriel de dimensionrg/2.
Nous obtenons donc bien la complexit´e annonc´ee.
tel-00642951, version 1 - 20 Nov 201 1
Algorithme 21Image d’un point par une`-isog´enie sans changer de niveau Entr´ee: SoitAune vari´et´e ab´elienne donn´ee par ses thˆeta constantesθA[0b]
0,Ω/`n
de niveaun(avecn pair). Soit un entier`premier et copremier avecnet la caract´eristique du corps. Supposons donn´ees les coordonn´ees thˆeta de niveau n d’une base symplectique (e1, . . . , ei) d’un sous-groupe isotrope maximal de la`-torsion ainsi que cellesθA[0b]
z,Ω/`n
d’un pointP sur la vari´et´e.
Sortie: Les coordonn´ees thˆeta de niveaunde l’image deP dans la vari´et´eB=A/K isog`ene `a A.
1: Fixer une matriceF de Matr×r(Z) telle que tF F =`Idr.{Nous posonsT =F−1=1`F}
2: Faire un changement de base symplectique de sorte que i
ei = (0, . . . , 0, 1`, 0, . . . , 0)
3: Pouri6=j, calculerei+ej dansAen utilisant des vraies additions (algorithme8 page54).
4: Pour touti, calculerP+ei dansA en utilisant des vraies additions.
5: Calculer les puissances`-i`emes des λi/λOA,λi,j/λOA,µi/µ0.
6: Utiliser les additions diff´erentielles pour calculer les coordonn´ees thˆeta affines de niveau n de tous les points kz+e o`u 0 ≤k < ` et e appartient `a K = 1`Zg/Zg dans C[µi/µ0, λi/λOA, λi,j/λOA] o`u lesµi/µ0,λi/λOA,λi,j/λOA sont vues comme des ind´etermin´ees.
7: Fixer unb0 dans n1Zg/Zgtel que θB0 b0
0,Ωn
est non nulle.
8: forPour toutbdans 1nZg/Zg do
9: Soit (j1, . . . , jr) = (b, b0, . . . , b0)T dans n1Zg/Zg. Posons (w1, . . . , wr) = (z,0, . . . ,0)tF. Calculer ub(z) := X
t1,...,tr∈1
`Zg/Zg
(t1,...,tr)F=0
r
Y
i=1
θA0 ji
wi+ti,Ω/`
n
dans l’alg`ebre
C[Yi, Xi, Xi,j]/n
Yi`= (µi/µ0)`, Xi`= λi/λOA
`
, Xi,j` = λi,j/λOA
`o .
10: end for
11: return Les coordonn´ees (ub(z))b∈1 nZg/Zg.