• Aucun résultat trouvé

C.3.1 Représentations des classes de diviseurs

Soientk0 un corps etkune clôture algébrique dek0. SoientX0 une courbe projective lisse surk0 et X =X0×k0 k. Supposons d’abord X0 décrite par un plongement projectif. Un diviseur D sur X peut être représenté de deux manières : par une combinaison linéaire de points fermés deX0 (chaque point étant défini par une extensionk1dek0 et desk1-points deX0) ou par sa forme de Chow.

Définition C.3.1. Soit Z = aiP1+· · ·+arPr un zéro-cycle de Pnk. Pour tout i, notons pij les coordonnées dePi. La forme de Chow deZ est le polynôme

r

Y

i=1

n

X

j=0

pijuj

ai

∈k[u0, . . . , un].

En particulier, siX = Projk[x, y, z]/(F)est une courbe dansP2, le diviseur d’un polynôme homo-gèneG∈k[x, y, z]a pour forme de Chow le u-résultant [IK93, Lem. 15.7]

u−res(F, G) := res(F, G, xux+yuy+zuz).

Le calcul de la forme de Chow d’un diviseur représenté par une somme de points est évident : il suffit de calculer une extension dek0 sur laquelle sont définis tous les points du diviseur.

Il existe encore une autre représentation des diviseurs, qui ne travaille pas explicitement avec des équations de X dans un espace projectif. D’abord proposée par Khuri-Makdisi [KM06], elle a été utilisée dans de nombreux algorithmes probabilistes de Bruin [Bru12]. Supposons donné un faisceau inversibleLsurX0de degré strictement supérieur à2g. Il est nécessairement très ample et fournit un plongement projectif deX; soitS l’anneau de coordonnées homogènes deX pour ce plongement. Le morphisme

S →M

i>0

Γ(X,L⊗i)

est un isomorphisme. Pour les calculs, il suffit de connaître le quotientS(h)deSpar l’idéal engendré par les éléments homogènes de degré strictement supérieur à un entierhsuffisamment grand. Un diviseur D est alors représenté par l’espace des sections globales du faisceauL(−D). Les algorithmes qui font usage de cette représentation n’ont donc pas besoin d’une réelle description deX, mais simplement de l’algèbreS(h) et du sous-espace vectoriel Γ(L(−D))de S(1) = Γ(X,L). Étant donné un plongement projectif deX, un diviseurEtel queL=OX(E)et un diviseurDsurX représenté de l’une des façons ci-dessus, l’espaceΓ(L(−D)) = Γ(OX(E−D))est calculé par les algorithmes de la section suivante.

Réciproquement, étant donné l’espace Γ(L(−D)), une décomposition de D en somme de diviseurs premiers est obtenue en calculantΓ(D,OD)et en en réalisant la décomposition primaire (voir [Bru12, Alg. 2.4] pour les détails).

C.3.2 Espaces de Riemann-Roch

Soientk0 un corps parfait etk une clôture algébrique dek0. SoientX0 une courbe projective lisse surk0 et X=X0×k0k. SoitD∈Div(X)un diviseur stable sous l’action deGal(k|k0). Il existe dans la littérature deux approches pour calculer l’espace de Riemann-RochL(D) := H0(X,OX(D))associé à D. Un état de l’art détaillé se trouve dans [LGS20, §1, State of the art]. Citons deux approches différentes à ce problème.

Algorithmes géométriques D’une part, les algorithmes dits géométriques s’inspirent de la méthode présentée en 1874 par Brill et Noether dans [BN74]. Supposons donné un modèle plan C0 de X0 à singularités ordinaires. Soient P1, . . . , Pr les points singuliers de C et m1, . . . , mr leurs multiplicités respectives. SoientPi,1, . . . , Pi,mi les points deX au-dessus dePi. Considérons le diviseur adjoint

E=

r

X

i=1 mi

X

j=1

mi(mi−1)Pi,j.

L’algorithme de Brill-Noether calcule les éléments d’une base deL(D)sous la forme fh1, . . . ,fhs. Dans un premier temps, il calcule le dénominateur communh∈k[x, y]. Il suffit que le diviseur dehsatisfasse

div(h)>D+E.

Dans un second temps, il calcule les polynômesfi de degrédeg(h); ils satisfont div(fi)>div(h)−D.

Cette condition se traduit par un système d’équations linéaires en les coefficients desfi.

Un algorithme inspiré de celui de Brill-Noether, qui représente les diviseurs par leur forme de Chow et utilise des résultants multivariés pour éviter le recours à la factorisation de polynômes dans des grandes extensions du corps de base, a été mis au point par Huang et Ierardi en 1994 ; c’est celui utilisé dans l’algorithme de la sectionIV.3. Les algorithmes les plus récents de cette famille sont [LGS20] et [Abe+22].

Théorème C.3.2. [HI98, Th. 5.1] Soit C une courbe projective plane de degré d sur un corps k0. On suppose que tous les points singuliers de C sont ordinaires et définis surk0. SoitD ∈Divk0(C). ÉcrivonsD=D+−D, avecD+etDeffectifs de degré6m. Il existe un algorithme déterministe qui calcule une base duk-espace vectorielL(D)constituée d’éléments dek0(C)enO(m7d14)opérations dansk0.

Algorithmes arithmétiques D’autre part, les algorithmes dits arithmétiques représentent les di-viseurs comme des ordres dans le corps de fonctions de la courbe. L’algorithme le plus récent de cette famille, dû à Hess [Hes02, Algorithm 8.5], nécessite d’avoir calculé au préalable la clôture intégrale de deux de ces ordres, ce qui peut s’avérer coûteux.

Remarque C.3.3. Notonsg le genre deX, etP0∈X(k). Le théorème de Riemann-Roch assure que tout diviseur de degré zéro surX est équivalent à un diviseur de la formeD−gP0, où D ∈Div(X) est effectif. Étant donné un diviseurE ∈ Div0(X), il est possible de calculer un diviseur effectif D et une fonctionf ∈ k(X) tels que E =D−gP0+ div(f) : il suffit pour cela de calculer l’espace de Riemann-Roch (nécessairement non vide) associé au diviseurE+gP0.

C.3.3 Diviseurs F

q

-rationnels

Dans cette section, nous fixons une clôture algébriqueFq deFq et notonsG0le groupeGal(Fq|Fq).

Lemme C.3.4. Soient C0 une courbe projective lisse sur Fq et C =C0×FqFq. Alors il existe dans Pic(C)un élémentG0-invariant de degré 1.

Démonstration. Soitσ∈G0 l’automorphisme de Frobenius. L’endomorphismeσ−idde la jacobienne JC est une isogénie de noyauJ(Fq), il est donc surjectif. Pour un pointP ∈C(Fq), il existe donc une classe d’un diviseurDde degré 0 tel que(σ−id)D= (σ−id)P. L’élémentP−D∈Pic1(C)est alors Galois-invariant.

Lemme C.3.5. Soientk0 un corps etkune clôture séparable dek0. SoientC0une courbe projective lisse sur k0 et C = C0×k0 k. Si H2(Gal(k|k0), k×) = 0 alors toute classe Gal(k|k0)-invariante dans Pic(C)contient un diviseurGal(k|k0)-invariant.

Démonstration. SoientK0et K les corps des fonctions respectifs deC0 etC. La suite exacte courte 0→K×/k×→DivC→PicC→0

donne la suite exacte longue en cohomologie

H0(G0,DivC)→H0(G0,PicC)→H1(G0, K×/k×).

La flèche de droite se décrit de la façon suivante : à la classe d’un diviseur D, elle associe le cocycle σ7→fD,σoùDσ−D= div(fD,σ). Remarquons queH1(G0, K×) = H1(Gal(K|K0), K×)est nul d’après le théorème 90 de Hilbert [Ser94, III.1, Lem. 1]. La suite exacte longue associée à

0→k×→K×→K×/k×→0

assure alors queH1(Gal(k|k0), K×/k×)s’injecte dansH2(Gal(k|k0), k×), qui est nul par hypothèse.

Corollaire C.3.6. Toute courbe projective lisse surFq possède un diviseurFq-rationnel de degré 1.

Démonstration. Le théorème de Wedderburn [Bou12, 11.1, Th. 1] assure que H2(G0,Fq

×) = 0.

Le résultat découle alors des deux lemmes précédents.

Le lemme C.3.5 est entièrement effectif, et se réduit à l’association du lemme du serpent avec le théorème 90 de Hilbert. Cependant, lorsquek0 est fini, l’algorithme fourni par cette preuve est de complexité polynomiale enq, puisqu’il fait notamment intervenir le groupe des 1-cochaînes d’un certain groupe à valeurs dansF×q. Les lemmes suivants fournissent une méthode plus adaptée à la pratique, suggérée par Alain Couvreur.

Lemme C.3.7. Soient k0 un corps et k une clôture séparable de k0. Soit C0 une courbe intègre projective lisse sur k0. Notons C = C0×k0 k. Soit D1 un diviseur sur C défini sur une extension séparablek1dek0telle queC0×k0k1soit connexe. SoitD=D1+ div(f), avecf ∈k1(C), un diviseur k0-rationnel équivalent à D1. Soit enfin b ∈ k1 tel que trk1/k0(bf) 6= 0. Ici, la trace relative d’une fonction rationnelle est définie coefficient par coefficient. Alors

trk1/k0Lk1(D1) = trk1/k0(bf)Lk0(D).

Démonstration. NotonsV =Lk1(D1). D’une part, pour toutu∈Lk0(D),trk1/k0(bf)u= trk1/k0(bf u) appartient à trk1/k0(V), et dimk0trk1/k0(V)> dimk0Lk0(D). D’autre part, commeV = bfLk1(D), l’espacetrk1/k0(V)est inclus danstrk1/k0Lk1(D) = trk1/k0(bf)Lk0(D).

Lemme C.3.8. SoitCune courbe intègre projective lisse de genregsur un corps algébriquement clos k. SoitD∈Div(C)un diviseur de degré>2g. NotonsV =L(D). Alors

D=− X

P∈|C|

minf∈Vvp(f)P.

Démonstration. Notons D0 =−P

P∈Cminf∈V vp(f)P. D’une part, D > D0 car pour tout point P, vP(D−D0) =vP(D) + minf∈V vP(f)>0. D’autre part,V ⊆L(D0)car pour toutf ∈V et tout point ferméP ∈C,vP(div(f) +D0) =vP(f)−mingvP(g)>0. Par conséquent,V =L(D0). Supposons que D6=D0; il existe alors des pointsP1, . . . , Pr tels queD=D0+P

iPi. Or pour touti, le théorème de Riemann-Roch assure que

L(D−Pi)6=L(D)

cardeg(D−Pi)>2g−2. CommeL(D0)⊆L(D−Pi), c’est absurde.

Proposition C.3.9. SoitX0 une courbe intègre lisse surk0=Fq. NotonsX =X0×k0k. Supposons donné un modèle plan deX de degré d, ainsi qu’un diviseurk0-rationnel E de degré 1 surX. Soient k1 une extension de Fq telle que X0 ×k0 k1 soit connexe et D1 ∈ Div(X) un diviseur défini sur k1 dont la classe dans PicX est Gal(k|k0)-invariante. Notons D1 = D+1 −D1 et E = E+−E avecD1+, D1, E+, E effectifs de degré inférieur à un entier c. Il existe un algorithme de complexité polynomiale enlogq,g,c,det[k1:k0]qui détermine un diviseurk0-rationnelD équivalent àD1.

Démonstration. Nous savons qu’il existe un tel diviseur D. Soith une fonction telle queD1 =D+ div(g). Par séparabilité de l’extensionk1/k0, il existeb∈k1 tel quetrk1/k0(bh)6= 0. SoitN un entier tel quedeg(D1+N E)>2g. Appliquons la tracetrk1/k0 à l’espace de Riemann-RochLk1(D1+N E). L’espace obtenu est V := tr(bh)Lk0(D+N E) par le lemme C.3.7. Le diviseur D+N E est égal à

−P

P∈Xminf∈VvP(f)P par le lemmeC.3.8. Il suffit donc de calculer une base deV, puis le diviseur de chacun des éléments de cette base, pour obtenir le diviseur k0-rationnel D +N E + div(trbh) équivalent àD1+N E. Pour le résultat de complexité, remarquons queN 6g+c.

C.3.4 Diviseur équivalent de support évitant un fermé

SoitX une courbe projective lisse sur un corpsk. SoitCun modèle birationnel plan deX de degré d. SoientD un diviseur surX, etZ un fermé deX. Il est toujours possible de calculer un diviseurD0 surX équivalent àD et de support disjoint deZ; cette méthode est décrite par exemple dans [Cou09,

§3.4]. SoitOun diviseur sur X de degré inférieur àdet de support disjoint de Z. Il suffit de calculer l’espace de Riemann-RochL du diviseurD+ 2gO, qui est de dimension strictement supérieure à 1.

DansL, les fonctionsf telles quediv(f) +Dne soit pas disjoint deZ sont contenues dans une réunion d’hyperplans, qu’il suffit d’éviter.

Proposition C.3.10. [Cou09, Lem. 5] Il existe un algorithme déterministe qui, étant donné une courbe planeC sur Fq et sa normaliséeX, un diviseurFq-rationnelD =D+−D de degré 0 et un diviseur effectifZ, calcule un diviseurE=E+−Elinéairement équivalent àDet de support disjoint de Z en un nombre d’opérations dans Fq polynomial en d, logq, deg(D+) et deg(Z). Le degré des diviseursE+ et E est inférieur à6gd(logq(degZ) + 1).