• Aucun résultat trouvé

Par la méthode de onstru tion présentée dans le hapitre II, on peut onstruire un odefon tionnelisomorpheau ode

Cd(X)

.Pour efaire,ondénit

H∞

,l'hyperplande

P

r

d'équation

X0= 0

.Onappelle

i

l'in lusion anonique

i : X ֒→ P

r

etonpose

L := i∗H∞∈

Div

F

q(X).

Pour tout entier naturel

d

, les fais eaux

L(dL)

et

i

OPr(d)

sont isomorphes. Aussi, si les points

P1, . . . , Pn

évitentlesupportde

L

,alorsles odes

CL,X(P1+· · ·+Pn, dL)

et

Cd(X)

sont isomorphes.Poursedéfairedela onditionévitentlespointdusupportde

L

,ilsutd'utiliser lemovinglemma([Sha94℄III.1.3théorème1etannexeB).Envertude erésultat,onsaitqu'il existe

G ∈

Div

F

q(X)

dontlesupportévitelespoints

P1, . . . , Pn

et linéairementéquivalentà

dL

. Cettefois- i, onest assuréde labonne dénitiondu ode

CL,X(P1+ · · · + Pn, G)

et le fais eau

L(G)

estisomorpheà

i

OPr(d)

. Onobtientdon l'isomorphismede odes

CL,X(P1+ · · · , Pn, G) ∼= Cd(X).

On peut don onstruireun ode fon tionnel(provenantde ladénition de [VM84℄donnée dans le hapitreII) isomorphe à

Cd(X)

. Malheureusementla onstru tiond'un diviseur

G

dontlesupportévitetouslespointsrationnelsde

X

n'estpastoujoursévidente.Ladénition D.1.2restedon ommode arellefournitune onstru tionexpli itesimple.

Remarque D.2.1. Notonsquel'on aidentié leséléments de

Fd

restreintsà

X

àdesse - tions globales du fais eau

i

OPn(d)

.Comme onl'a vu dansle hapitre III, si

X

est proje - tivementnormale 2 enrespe tauplongement

X ֒→ P

r

,alors lefais eau

i

O

Pr(d)

s'identie aufais eau

OX(d)

(voir [Har77 ℄ II.5ex14).

1

Éventuellementréduitesourédu tibles. 2

Parexemplesi 'estuneinterse tion omplètelissede

P

r

Points en position générale

Cette annexe ontientles démonstrations de lemmes te hniques utilisés dans lase tion IV.1du hapitreIII.

LemmeIV.1.8.Soient

r

et

m

deuxentiersnaturelsave

r ≥ 1

,alorstoutefamillede

rm+2

pointsrationnels distin ts de

P

N

appartenant àune même ourbede degré

r

est

m

-liée. Preuve. Soient

P1, . . . , Prm+2

une tellefamillede pointset

C

la ourbededegré

r

qui les ontient.D'aprèslethéorèmedeBezout,unehypersurfa ededegré

m

quine ontientpas

C

l'interse teenauplus

rm

pointsgéométriques.Par onséquent,iln'existepasd'hypersurfa e ontenanttous espointssaufun.

LemmeIV.1.9. Soit

m

unentiernaturel. (1) Si

m + 2

pointsrationnels distin ts de

P

N

sont

m

-liés, alors ils sontalignés. (2) Tout

r

-uplet de pointsrationnels deux àdeux distin ts de

P

N

ave

r ≤ m + 1

est en position

m

-générale.

Preuve. Preuve de (1).Soient

P1, . . . , Pm+2

des pointsdistin tsde

P

N

qui sont

m

-liés. Supposons qu'ils ne soient pas alignés. Il existe don un hyperplan

H

qui évite

Pm+2

et ontientaumoinsdeuxpointsparmi

P1, . . . , Pm+1

.Quitteàréordonnerlesindi esdespoints onpeutsupposerqu'ilexiste

l ≥ 2

telque

P1, . . . , Pl

appartiennentà

H

.

Si

l = m+1

,ondisposed'unehypersurfa e(enl'o urren el'hyperplan

H

)qui ontient tousles

Pi

sauf

P2m+2

.

Sinon,pourtout

l + 1 ≤ j ≤ m + 1

,ilexisteunhyperplan

Hj

qui ontient

Pj

etévite

Pm+2

.

L'hypersurfa e

H ∪ Hl+1∪ · · · ∪ Hm+1

estdedegréinférieurouégalà

m

( ar

l ≥ 2

), ontient tousles

Pi

sauf

Pm+2

. Parsymétrie,onen déduitl'existen e pourtout

i0

∈ {1, . . . , m + 2}

d'unehypersurfa ededegré

m

qui ontienttousles

Pi

sauf

Pi0

.

Preuve de (2).Soient

P1, . . . , Pr

despointsdistin tsde

P

N

ave

r ≤ m + 1

.Enréutilisant late hnique présentée dansla preuvede (1), onpeut onstruire àl'aide de réunionsd'hy- perplans,deshypersurfa esdedegré

m

quiinterpolenttouslespointssaufun.Onendéduit que espointssontenposition

m

-générale.

LemmeIV.1.11.Soient

m

et

r

deuxentiers naturels.

(1) Si

r ≤ 2m + 1

, alors une famille de

r

points distin ts de

P

N

telle que

m + 2

d'entre euxsont non alignésesten position

m

-générale.

(2) Soient

P1, . . . , P2m+2

un

(2m + 2)

-uplet de points rationnels distin ts de

P

N

tels que

m + 2

d'entreeuxnesontpasalignés.Alors espointssont

m

-liés,sietseulements'ils appartiennent àune même onique plane.

Preuve. Preuve de (1).Nousallonsdémontrerlerésultatparré urren esur

m

. Pour

m = 0

, 'estévident arunpointde

P

N

esttoujoursenposition

0

-générale. Soit

m ≥ 0

, supposons quelapropriété soit vériée aurang

m

et montrons qu'ellel'est au rang

m + 1

.Soit

P1, . . . , P2m+3

une famille depointsrationnels de

P

N

telle que

m + 3

d'entre euxnesontpasalignés.Soit

L

l'ensembledesdroites ontenant

P2m+3

et aumoins unpointparmi

P1, . . . , P2m+2

.On hoisitunélément

L1

de

L

ontenantunnombremaximal de points parmi les

Pi

. On hoisit ensuite une droite

L2

de

Lr L1

ontenant un nombre maximaldepointsparmiles

Pi

.Lesdroites

L1

et

L2

sontdistin tesetse roisenten

P2m+3

. Quitte àréordonnerlespoints

Pi

,onpeutsupposerque

P1∈ L1

et

P2∈ L2

.

Ensuite,montrons que,parhypothèse,lesdroites

L1

et

L2

ontiennent ha uneauplus

m + 2

pointsparmi les

Pi

et queles autresdroites de

L

en ontiennentauplus

m + 1

. On distinguedeuxsituations.

(1) Lesdroites

L1

et

L2

ontiennenttoutesdeux

m + 2

pointsparmiles

Pi

.Commepardé- nition, esdroites ontiennenttoutesdeuxlepoint

P2m+3

,l'ensembledes

Pi

ontenus dans

L1∪ L2

estégalàl'ensemble

P1, . . . , Pn

.Aussi,dans ettesituationl'ensemble

L

estégalà

{L1, L2}

et lerésultatattenduesttrivialementvérié.

(2) Ladroite

L2

ontientmoins de

m + 1

pointsparmi les

Pi

et pardénition de

L2

, les élémentsde

Lr {L1, L2}

ontiennenttousmoinsde

m + 1

pointsparmiles

Pi

. Par onséquent,d'aprèsl'hypothèsederé urren e,lespoints

P3, . . . , P2m+3

sontenposi- tion

m

-générale,ilexistedon unehypersurfa e

H

dedegré

m

quiinterpole

P3, . . . , P2m+2

et évitelepoint

P2m+3

.On hoisitdeplusunhyperplan

H

qui ontient

P1, P2

et évite

P2m+3

. L'hypersurfa e

H ∪ H

est dedegré

m + 1

etinterpoletousles

Pi

sauf

P2m+3

.Onendéduit que pourtout

i0∈ {1, . . . , 2m + 3}

,il existeune hypersurfa e dedegré

m + 1

quiinterpole tousles

Pi

sauf

Pi0

.

Preuve de (2).

Étape2a.Si

m = 0

,alorsdeuxpointsdistin tssonttoujours

0

-liéset égalementtoujours ontenus dans une ourbe de degré

2

, la propriété est don trivialement vériée dans e as. On supposeradon désormais que

m ≥ 1

et on se donneun

(2m + 2)

-uplet de points

P1, . . . , P2m+2

m

-liésetdeuxàdeuxdistin ts.

Étape 2b. Montrons que si les

Pi

ne sont pas oplanaires et que

m + 1

d'entre eux sont alignés,alorsles

m + 1

restantsnelesontpas.Pour efaire,ondoitsupposerque

P

N

estde dimension

N ≥ 3

.

Raisonnonsparl'absurdeetsupposonsqu'ilexistedeuxdroitesdisjointes

L1

et

L2

onte- nant respe tivementles points

P1, . . . , Pm+1

et

Pm+2, . . . , P2m+2

. Il existe un unique plan ontenant

Pm+2

etladroite

L1

.Ceplanévitelespoints

Pm+3, . . . , P2m+2

.Onendéduitl'exis- ten e d'un hyperplan

H

vériantles mêmes propriétés. D'aprèsla propriété (2) du lemme IV.1.9,ilexisteunehypersurfa e

H

dedegré

m − 1

qui ontientlespoints

Pm+3, . . . , P2m+1

et l'hypersurfa e

H ∪ H

estdedegré

m

et ontienttousles

Pi

sauf

P2m+2

.Demême, pour tout

i0

,onpeut onstruireunehypersurfa e ontenanttousles

Pi

sauf

Pi0

, equi ontredit lefaitqueles

Pi

sontliés.

Étape 2 .Montrons queles

Pi

sont oplanaires.I i en ore,nous allonsraisonnerparl'ab- surde en supposant qu'ils ne le sont pas. Soit

D

, l'ensemble des droites de

P

N

ontenant au moinsdeux pointsdistin tsparmi les

Pi

.Soit

L1

unedroite de

D

ontenantunnombre maximal de espoints.Quitte àréorganiserlesindi es, onpeutsupposerque

P1

∈ L1

. Par hypothèse, les

Pi

sontnon oplanaires, on peutdon supposer queles points

P1, P2, P3

et

P2m+2

sontnon oplanaires.

Deplus, omme

P1

est dans

L1

,deuxsituationssontpossibles.

Soit

L1

ontientmoinsde

m

points,moyennantquoi,pardénitionde

L1

,iln'yapas de

(m + 1)

-upletde

Pi

alignés.

Soit

L1

ontient

m + 1

pointsetd'aprèsl'étape2b,les

m + 1

pointsrestantssontnon alignés.

Ainsi,lespoints

P4, . . . , P2m+2

formentun

(2m − 1)

-upletdepointstelque

m + 1

d'entre euxnesontpasalignés.D'aprèslapreuvelapropriété1, espointssontenposition

(m − 1)

- générale,ilexistedon unehypersurfa e

H

dedegré

m−1

qui ontient

P4, . . . , P2m+1

etévite

P2m+2

.Ilexistedeplusunhyperplan

H

ontenant

P1, P2, P3

etévitant

P2m+2

.L'hypersurfa e

H ∪ H′

estdon dedegré

m

et ontienttousles

Pi

sauf

P2m+2

.

En appliquant aux points

P1, . . . , P2m+1

, le raisonnement que l'on vient d'appliquer à

P2m+2

,on on lutque espointssontenposition

m

-générale.Ilya ontradi tion,lespoints

P1, . . . , P2m+2

sontdon oplanaires.

Étape2d.Maintenantquel'onsaitqueles

Pi

sont oplanaires,montronsqu'un

(2m+2)

-uplet de points de

P

2

est

m

-lié seulement si es pointssontsur une même onique.Nous allons traiterséparémentles as

m = 1

et

m = 2

.

Si

m = 1

, quatrepointsduplansonttoujours

1

-liéset sontégalementtoujours ontenus dans une même onique. Si

m = 2

et que les six points ne sont pas tous sur une même onique,alorspourtout

1 ≤ i0

≤ 6

, ilexisteune onique

1

ontenanttousles

Pi

sauf

Pi0

.Il ya ontradi tionave lefaitqueles

Pi

sont

2

-liés.Ilssontdon biensurunemême onique. Supposons maintenant que

m ≥ 3

et

P1, . . . , P2m+2

soit un

(2m + 2)

-uplet de points

m

-liés dans

P

2

tel que

m + 2

d'entre eux ne sont pas alignés. Supposons que es points nesoient pastoussurune même onique.On notede nouveau

D

l'ensemble desdroites de

P2

ontenantaumoins deuxpointsdistin ts parmiles

Pi

.Soit

L1

une droite ontenantun nombremaximalde espoints.Onpeutsupposer,quittea hanger l'ordredesindi es, que

P1∈ L1

.Montronsqu'ilexistequatrepoints

Pi1, . . . , Pi4

parmi

P2, . . . , P2m+1

telsqu'ilexiste une onique ontenant

P1, Pi1, . . . , Pi4

et évitant

P2m+2

.

Dansle as ontraire,pourtout

i ∈ {2, . . . , 2m − 2}

une onique

Ci

ontenant

P1

,

Pi

,

Pi+1

,

Pi+2

et

Pi+3

ontiendrait

P2m+2

. Soit alors

i ∈ {2, . . . , 2m − 3}

, les oniques

Ci

et

Ci+1

ont inqpointsd'interse tion,d'aprèslethéorèmedeBezout,ellesontdon une omposante irrédu tible ommune

Γ

quiestdedegréunoudeux.Parré urren e,onmontrequetousles

Pi

appartiennentà ette ourbe

Γ

equi ontreditlefaitqueles

Pi

nesontpastoussurune même onique.

Ainsi,quitteàréorganiserlesindi es,onpeutsupposerqu'ilexisteune onique

C

onte- nantlespoints

P1, . . . , P5

etévite

P2m+2

.Onrappelleque

P1

estun ontenudansunedroite

L1

ontenantun nombremaximalde pointsparmi les

Pi

. Parunraisonnementidentiqueà eluiqui aété ee tué dansl'étape

2c

, onmontre quelespoints

P6, . . . , P2m+2

formentun

(2m − 3)

-uplet de points telque

m

d'entre eux nesontpas alignés. D'après lapropriété 1 appliquée à

m − 2

et

r = 2m − 3 = 2(m − 2) + 1

, les points

P6, . . . , P2m+2

sont en posi- tion

(m − 2)

-générale.Il existedon une ourbe

C

de degré

m − 2

qui ontientles points

P6, . . . , P2m+1

et qui évite

P2m+2

. La ourbe

C ∪ C

est de degré

m

et ontient tousles

Pi

sauf

P2m+2

. Onen déduit la

m

-généralité de es points,il y a ontradi tion. Lespoints

Pi

sontdon bientoussurune même oniqueplane.

1

Onrappellequepar inqpointsde

P

2

passetoujoursaumoinsune onique.Ilyad'ailleursuni itésiet seulementsiquatred'entreeuxnesontpasalignés, 'est-à-dires'ilssontenposition

2

-générale.

Programmes Magma

F.1 Diviseurs

- onvenables

Dans ettese tion, nous allonsprésenter unprogramme magmaqui permet de al uler une pairede diviseur

onvenablesur une surfa elisse

S

munie d'un

0

- y le

. Lapaire ainsi onstruitevérielespropriétéssuivantes:

 ellesatisfaitle ritèredelapropositionII.3.8;  lediviseur

Da

estee tif;

 les diviseurs

Da

et

Db

sont tous deux linéairement équivalents à des se tions de la surfa e

S

ave unehypersurfa edesonespa eambiant.

Pour e faire on utilise essentiellement la méthode présentée dans la démonstration du lemme II.4.7.À savoir: lesdiviseurs

Da

et

D

+

b

sont onstruitsparinterpolationdes points dusupport de

.Le diviseur

D

b

est onstruit eninterpolant lespointsoù lesdeux autres diviseursnedoiventpasse roiserouse roisentave une multipli itétropimportanteet en évitantlespointsoù esdiviseursse roisentbien.

Ceprogrammesedé omposeentroisgrossespartiesquesontle al ulde

Da

,de

D

+

b

etde

Db

.Leprin ipeest à haquefois lemême,on onsidèreunsystème linéairede ourbesqui vérientdebonnespropriétéseton her heun andidatdans edernier.Suivantsadimension (etdon sonnombred'éléments dénissur

Fq

), lare her heseferadefaçonexhaustiveou aléatoire.

Préliminaires. Onabesoind'un ertainnombredes riptspouryparvenir.

// Cette fon tion est une variation de la fon tion "IsRedu ed" // de Magma qui a tendan e a ramer dans le as ou le s hema // onsidere n'est pas une hypersurfa e de son espa e (affine // ou proje tif) ambiant.

fun tion EstReduit(V) d:=Dimension(V);

A:=SingularSubs heme(V); dd:=Dimension(A); delete A; if dd eq d then return false; else return true; end if; end fun tion;

// C e programme permet d'evaluer l 'entier n minimal pour lequel // l 'interpolation d'une famille finie de points par une // hypersurfa e de degre n est possible. fun tion MinDim(V,Points) // L'entier $n$ va designer un degre que l 'on va // in rementer au debut de haque iteration. n:=0; d:=

1;

Proj:=AmbientSpa e(V);

Liste:=[Proj!p: p in Points℄;

while d lt 0 do n+:=1;

L:=LinearSystem(Proj,n); L1:=LinearSystem(L,Liste); L2:=LinearSystemTra e(L1,V); d:=Dimension(L2);

end while;

return [

n,d,L2,Proj,Liste

℄; end fun tion;

// Cette fon tion permet de al uler un ve teur tangent // en un point d'une ourbe. Il est exprime dans le // systeme de oordonnees de la arte affine

// AffinePat h(Proj,P).

fun tion TangentVe tor(C,P)

assert P in C;

assert Dimension(C) eq 1; assert IsNonSingular(C,P);

Proj:=AmbientSpa e(C); CAff:=AffinePat h(C,P); Aff:=AmbientSpa e(CAff); d:=Dimension(Aff);

Q:=Aff!P;

T:=TangentSpa e(CAff,Q); TP:=RationalPoints(T);

if TP[1℄ eq Q then R:=TP[2℄;

F.1. Diviseurs

- onvenables 155

QQ:=Coordinates( Q); RR:=Coordinates(R);

return [RR[i℄

QQ[i℄: i in {1..d}℄; end fun tion;

// Cette fon tion permet de al uler un systeme lineaire

// ayant un ve teur tangent impose en un point base rationnel.

// ATTENTION: Le ve teur $v$ est un objet "affine". // Il est defini dans la arte affine naturelle // Choisie pour P dans "AffinePat h(Proj,P)";

fun tion LinearSystemTangent(Proj,L,P,v)

// On ommen e par verifier que la longueur de $v$ est la bonne.

d:=Dimension(Proj); F:=BaseField(Proj);

assert #v eq d;

// On se donne une arte affine naturellement adaptee a $P$.

Aff:=AffinePat h(Proj,P); p:=Aff!P;

h:=Proje tiveClosureMap(Aff); LL:=LinearSystem(L,P); LLL:=Pullba k(h,LL); S:=Se tions(LL); T:=Se tions(LLL); m:=#S; assert #T eq m;

// On ommen e par travailler lo alement , don sur le systeme // lineaire affine. Pour haque se tion $f$ de notre systeme // lineaire affine on evalue $\langle grad_p (f), v \rangle$. Liste:=[&+[Evaluate(Derivative(f,j),p)

v[j℄: j in {1..d}℄: f in T℄; M:=Matrix(F,m,1,Liste); B:=Basis(NullSpa e(M)); delete Liste; delete M ; Liste2:=[ &+[B[i ℄[j℄

S[j℄: j in {1..m}℄: i in {1..#B}℄; Lpv:=LinearSystem(LL,Liste2); return Lpv; end fun tion;

Cal ulde

Da

. Ce programmefaitappelàeuxsous-programmesse tionreduite etrand- se tionreduite.Dontnous donneronsle odesour eplusloin.

// Pour des raisons de ommodite, nous allons faire // en sorte de hoisir $D_a$ reduit. fun tion Da(V,Points ,M,T,r) R:=MinDim(V,Points); n:=R[1℄; d:=R[2℄; L:=R[3℄; Proj:=R[4℄; Liste:=R[5℄; Poly:=Random(L); F:=BaseField(V); q :=#F;

printf "Le degre minimal d'interpolation pour D_a est %o. ",R[1℄;

while q^ d lt M do

A:=Se tionReduite(V,L); if A ne 0

then printf "Le resultat obtenu pour

D_a a ete trouve de maniere deterministe , ave une hypersurfa e de degre %o. ",n; return A;

end if;

// En as d'e he , on augmente le degre d'interpolation // et on reinitialise notre syst\`eme lineaire.

n+:=1;

L:=LinearSystem(Proj,n); L:=LinearSystem(L,Liste); L:=LinearSystemTra e(L,V); d:=Dimension(L);

end while;

print "Passage en re her he aleatoire pour D_a. "; delete d;

for i:=1 to r do

printf "On demarre les re her hes ave des hypersurfa es de degre %o pour D_a. ",n; A:=RandSe tionReduite(V,L,T);

if A ne 0

then printf "On obtient une hypersurfa e de degre %o fournissant D_a. ",n;

return A; end if;

F.1. Diviseurs

- onvenables 157

L:=LinearSystem(Proj,n); L:=LinearSystem(L,Liste); L:=LinearSystemTra e(L,V); end for; return "E he "; end fun tion; // Cette fon tion fait une re her he deterministe // d'un element reduit d'un systeme lineaire. fun tion Se tionReduite(V,L) assert IsNonSingular(V); assert IsIrredu ible(V); F:=BaseField(V); d:=Dimension(L);

// On doit parametrer le systeme lineaire par // un espa e proje tif de meme dimension. // Le probleme est que MAGMA, ne omprend // la notion d'espa e proje tif de dimension nulle. // Il faut don ommen er par traiter le as ou // le systeme lineaire n'a qu'un seul element. if d eq 0 then Coeffts:=[[1℄℄; else Pd:=Proje tiveSpa e(F,d); Coeffts:=RationalPoints(Pd); end if; Se :=Se tions(L); // On teste tous les elements du systeme lineaire jusqu'a // e que l 'on en trouve un reduit. for i :=1 to #Coeffts do Poly:=&+[Coeffts[i ℄[j℄

Se [j℄: j in {1..d+1}℄; D:=S heme(V,Poly); if EstReduit(D) then return Poly; end if; end for;

print "Au un element reduit trouve de maniere deterministe"; return 0;

// Cette fon tion effe ute une re her he aleatoire // d'un element reduit d'un systeme lineaire.

fun tion RandSe tionReduite(V,L,m)

for i:=1 to m do // Il faut eviter le diviseur nul dans notre systeme lineaire. // Voila omment nous allons pro eder. Poly:=Random(L); while Poly eq 0 do Poly:=Random(L); end while;

D:=S heme(V,Poly);

if EstReduit(D) then return Poly; end if;

end for;

print "Au un element reduit trouve de maniere aleatoire"; return 0;

end fun tion;

Cal ul de

Db

. Nousdonnonslesdeuxprogrammespermettantde al ulerrespe tivement

D+b

et

D

b

. Tout ommele programme pré édent, es programmes appellent ha un deux sous-programmesee tuant desre her hesexhaustivesoualéatoires.Ces sous-programmes ressemblantfortementauxprogrammesse tionreduiteetrandse tionreduite,nousn'avons pasjugéné essairedelesajouterdans ette annexe.

Demême, nous neprésenteronspaslesprogrammes dans leurintégralité. Car ertaines partiessontun opié/ olléd'undesprogrammedéjàprésenté

// Cette fon tion permet de al uler la partie // effe tive d'un diviseur $D_b$ lorsque

// l 'on a al ule $D_a$.

// Pour des raisons de simpli ite , nous allons imposer // a $D_b^+$ d'eviter le lieu singulier de $D_a$ hors // du support de $\Delta$.

fun tion Dbplus(V,Points ,M,T,r,Ha)

// On doit se donner un degre minimal d'interpolation // On se donne elui de $H_a$ qui est tout indique.

Proj:=AmbientSpa e(V); DA:=S heme(Proj,Ha); Da:=S heme(V,Ha); F:=BaseField(V); q :=#F;

F.1. Diviseurs

- onvenables 159

// Il faut ensuite onstruire le s hema a eviter.

// C'est

a

dire tous les points geometriques singuliers // de $D_a$ qui sont hors du support de $\Delta$.

// C'est pour ela que nous allons onstruire le s hema // "evite". // Par ailleurs il faut memoriser les points du support // de $\Delta$ qui sont singuliers pour $D_a$ // ar en es derniers , $D_b^+$ devra etre lisse! // C'est pourquoi nous allons onstruire la liste DaSing, // puis le s hema "evite2".

UA:=SingularSubs heme(Da); assert Dimension(UA ) eq 0; evite:=UA; MultiA:=[℄; DaSing:={ }; N:=#Points; for i:=1 to N do mi:=Multi(UA ,Liste[i ℄); Append(~MultiA,mi); // Il faut enlever les points du support de $\Delta$ // que l 'on ne doit bien sur pas eviter. if mi gt 0 then DaSing join:= {Liste[i℄}; evite:=DiffIter(evite ,Liste[i℄,mi); end if; end for;

// Il y a deux fa ons de programmer le s hema vide.

// C'est le s hema d'equation 1 et elui d'equations x,y,z,t. // Le se ond se omporte mieux ave la fon tion meet don :

if IsEmpty(evite) then

evite:=EmptySubs heme(Proj); end if;

if IsEmpty(DaSing) then

evite2:=EmptySubs heme(Proj); else evite2:=Cluster(DaSing); end if;

// On onstruit ensuite notre systeme lineaire.

d:=

1;

// un ar il sera in remente des le debut de la bou le.

deg:=TotalDegree(Ha); n:=deg

1;

while d eq

1 do n+:=1;

L:=LinearSystem(Proj,n); L:=LinearSystem(L,Liste); L:=Complement(L,DA);

L:=LinearSystemTra e(L,V);

// Afin de gagner du temps,

// on verifie que le s hema a eviter ne ren ontre // pas l'ensemble des points bases de $L$. // On doit aussi verifier que las points de evite2 // ne sont pas generiquement de multipli ite // superieure ou egale a $2$ dans $L$. R:=BaseS heme(L); if IsEmpty(DaSing) then z:=0; else z:=&+[Multipli ity(L,P)

1: P in DaSing℄; end if;

if z eq 0 and IsEmpty(evite meet R) then d:=Dimension(L); else d:=

1; end if; end while; delete UA; delete R; printf "Le degre minimal d'interpolation pour D_b^+ est %o. ",n; // Ensuite, on fait omme d'habitude... // Cette fon tion fournit $D_b^

$. fun tion Dbmoins(V,Points ,M,T,r,Ha,Hb)

Proj:=AmbientSpa e(V); DA:=S heme(Proj,Ha); Da:=S heme(V,Ha); DB:=S heme(Proj,Hb); Db :=S heme(V,Hb); F:=BaseField(V); q :=#F; Liste:=[Proj!p: p in Points℄; N:=#Liste;

F.1. Diviseurs

- onvenables 161 // Il faut onstruire le s hema des points // bases. // Nous allons par ailleurs lister trois types de // Points: // 1) les points que $D_b^

$ doit eviter; // 2) les points que $D_b^

$ doit interpoler // ave une multipli ite fixee; // 3) eux que $D_a^

$ doit interpoler // ave un ve teur tangent fixe. U:=Da meet Db; S hemaBase:=U; Base:=[℄; NonBase:=[℄; BaseSpe:=[℄; mult:=[℄;

// Les elements de Base sont la donnee d'un point et de la

// multipli ite de $ U $ en e point. Les elements de baseSpe sont la // donnee d'un point et d'un ve teur tangent en e point. for j:=1 to N do p:=Liste[j℄; mj:=Multi(U,p); Append(~mult,m j

1); if mj eq 0 then printf "ERREUR: D_a et D_b^+ ne se roisent pas en %o. ",p; elif mj eq 1 then S hemaBase:=Differen e(S hemaBase,Cluster(p)); Append(~NonBase,p); elif mj eq 3 then

S hemaBase:=DiffIter(S hemaBase,p,2); if IsNonSingular(Da,p)

then Append(~BaseSpe,[

p,TangentVe tor(Da,p)

℄); else Append(~BaseSpe,[

p,TangentVe tor(Db,p)

℄); end if; else S hemaBase:=DiffIter(S hemaBase,p,m j

1); Append(~Base,[

p,mj

℄); end if; end for; print "D_b^

, premiere serie de al uls effe utee . "; delete U; // Il faut al uler le degre minimal du systeme lineaire.