Appunti del Corso di
Geometria Combinatoria 2:
Codici Algebrico-Geometrici,
Codici MDS e Archi,
Crittografia su Curve Ellittiche.
Massimo Giulietti
Prefazione
Queste note raccolgono il materiale oggetto delle lezioni del Corso di Geometria Com-
binatoria 2 (del Corso di Laurea Specialistica in Matematica, Universita degli Studi di
Perugia, Anno Accademico 2005/2006).
Il titolo riassume i tre temi portanti del corso e di queste note. Due di essi, i Codici
Algebrico-Geometrici e la Crittografia su Curve Ellittiche, richiederebbero solide basi
di Geometria Algebrica per poter essere affrontati compiutamente; basi che, per ovvi
motivi, non possono essere date per scontate, ne possono essere costruite in poche
ore di corso. Due scelte sono pertanto essenzialmente obbligate: quella di definire e
studiare i soli Codici Algebrico-Geometrici basati su curve piane non singolari, e quella
di trattare le Curve Ellittiche rinunciando a tante dimostrazioni.
La prima limitazione non la riteniamo particolarmente grave da un punto di vista
formativo. Lo studente che nel corso dei suoi studi studiera (o ha gia studiato) le
curve algebriche nella loro generalita non avra problemi ad estendere le definizioni, i
risultati e le dimostrazioni sui Codici Algebrico-Geometrici studiate in questo corso al
caso generale. Per quanto riguarda le Curve Ellittiche, al contrario, dovendo rinunciare
a dimostrazioni di risultati portanti non potremo pretendere che lo studente capisca
veramente a fondo l’argomento. Il nostro obiettivo sara allora descrivere l’importanza
delle Curve Ellittiche nella Crittografia moderna, e dare qualche spunto, qualche idea,
qualche motivazione per uno studio successivo approfondito e adeguato.
I contenuti di questi appunti sono essenzialmente tratti dai quattro libri di testo indicati
in Bibliografia, libri che lo studente e naturlamente invitato a consultare per ogni
approfondimento. Cio che principalmente differenzia queste note da quei testi, a parte
la lingua in cui sono scritti, sono la semplificazione che segue al limitarsi alle sole curve
1
2
piane non singolari, e i 67 esercizi proposti, che lo studente e invitato ad affrontare
seriamente come efficace test di autovalutazione.
Capitolo 1
Nozioni Preliminari
1.1 Campi Finiti
1.1.1 Esistenza e unicita
In questa sezione verranno brevemente richiamate alcune nozioni sui campi finiti.
Sia K un campo finito di cui denotiamo con u l’unita. Sia p il piu piccolo intero positivo
tale che siau+ u+ . . .+ u︸ ︷︷ ︸ = 0 .
p volte
Tale intero si dice caratteristica di K. Se K e un campo non finito, allora un tale intero
p puo anche non esistere (e il caso ad esempio di Q, R e C), e in tal caso il campo si
dira di caratteristica zero.
Teorema 1.1. Sia p la caratteristica di un campo finito K. Allora
• p e un numero primo;
• l’intersezione di tutti i sottocampi di K e un campo isomorfo a Zp, il campo delle
classi di resto modulo p.
Esercizio 1. Provare il Teorema 1.1.
3
CAPITOLO 1. NOZIONI PRELIMINARI 4
Esercizio 2. Provare che se p e la caratteristica di un campo F , allora
a+ a+ . . .+ a︸ ︷︷ ︸ = 0
p volte
per ogni elemento a di F .
Sia F un campo (non necessariamente finito) di caratteristica p. Denotiamo con σ
l’applicazione
σ : F → F , x 7→ xp .
Esercizio 3. Provare che σ e un omomorfismo di F .
L’omomorfismo σ viene detto omomorfismo di Frobenius del campo F . Come ogni
omomorfismo di campi, l’omomorfismo di Frobenius e iniettivo. Chiaramente se F e
finito, allora σ e automorfismo.
Teorema 1.2. Ogni campo finito ha ordine ph, ove p e la caratteristica di K.
Dimostrazione. Sia q la cardinalita di K. Il campo K puo considerarsi come spazio
vettoriale, di dimensione finita h, sul suo campo fondamentale Zp. Sia (e1, e2, . . . , eh)
una base dello spazio vettoriale K su Zp. Allora ogni elemento a ∈ K puo scriversi in
uno ed un sol modo come combinazione lineare a coefficienti in Zp di (e1, e2, . . . , eh):
a = a1e1 + . . .+ aheh, ai ∈ Zp .
Poiche ai varia in p modi in Zp, i = 1, 2, . . . , h, si ha allora che:
q = #K = ph.
Il prossimo obiettivo e stabilire, dati un primo p e un intero positivo h, se e quanti
campi finiti con ph elementi esistono. A tale scopo ricordiamo la definizione di chiusura
algebrica di un campo.
Definizione 1.3. Sia F un campo. Un campo L contenente K si dice chiusura
algebrica di F se:
CAPITOLO 1. NOZIONI PRELIMINARI 5
• ogni elemento di L e algebrico su F ;
• ogni polinomio a coefficienti in L di grado d > 0 e prodotto di d polinomi di
primo grado a coefficienti in L.
Come dovrebbe essere ben noto al lettore, C e chiusura algebrica di R. Un risultato
fondamentale di algebra afferma che per un qualsiasi campo F , esiste sempre una sua
chiusura algebrica. Tale chiusura algebrica e unica a meno di isomorfismi che fissano
F elemento per elemento. La chiusura algebrica di F si denota con F .
Ora possiamo dimostrare il seguente risultato.
Teorema 1.4. Per ogni primo p e per ogni intero positivo h esiste un campo finito con
ph elementi.
Dimostrazione. Sia K il seguente sottoinsieme di Zp:
K = {x ∈ Zp | σh(x) = x} ,
dove con σ si indica l’omomorfismo di Frobenius di Zp. Essendo σh omomorfismo di
Zp, le seguenti proprieta sono di facile dimostrazione (lasciata pertanto al lettore):
• K e chiuso rispetto alla somma e al prodotto;
• 0, 1 ∈ K;
• K e chiuso rispetto al passaggio all’inverso.
Cio prova che K e sottocampo di Zp. Resta da dimostrare che #K = ph. Osser-
viamo che K coincide con l’insieme degli zeri del polinomio Xph − X. Ora, essendo
Zp algebricamente chiuso, per definizione il polinomio Xph −X si spezza in ph fattori
lineari:
Xph −X = (X − a1)(X − a2) · · · (X − aph),
con a, a1, . . . , aph ∈ Zp. Osserviamo che ai 6= aj per ogni 1 ≤ i < j ≤ ph. Infatti un
polinomio ha fattori lineari ripetuti solo se ha una radice in comune con la sua derivata,
e nel nostro caso la derivata D(Xph −X) non ha radici essendo
D(Xph −X) = phXph−1 − 1 = −1 .
CAPITOLO 1. NOZIONI PRELIMINARI 6
Chiaramente,
K = {a1, . . . , aph} ,
e la dimostrazione e conclusa.
Naturalmente se si vuole costruire concretamente un campo finito con ph elementi non
si puo utilizzare la dimostrazione precedente. La seguente costruzione ha il vantaggio
di partire invece che dalla chiusura algebrica di Zp, da un oggetto molto piu concreto:
un polinomio irriducibile su Zp di grado opportuno.
Teorema 1.5. Sia g(X) un polinomio irriducibile di grado h a coefficienti in Zp. Sia
(g) l’ideale principale di Zp[X] generato da g(X). Allora l’anello quoziente
Zp[X]/(g)
e un campo con ph elementi.
Ometteremo la dimostrazione di tale risultato, procedendo invece al suo utilizzo per la
costruzione concreta di un campo finito.
Esempio 1.6. Si vuole un campo finito con 4 elementi. Si ha subito che in Z2[X] esiste
un solo polinomio irriducibile, ovvero g(X) = X2 + X + 1. Gli elementi dell’anello
quoziente
K = Z2[X]/(X2 +X + 1)
possono essere rappresentati da polinomi di grado minore o uguale di 1. Ovvero i
quattro elementi di K saranno
0 = [0], 1 = [1], a1 = [X], a2 = [1 +X] .
Per costruire le tabelle additiva e moltiplicativa dovremo ragionare nell’anello quozien-
te. La tabella additiva e immediata, in quanto sommando due polinomi il loro grado
non cresce. Pertanto avremo ad esempio
1 + a1 = a2, a1 + a2 = 1, a1 + a2 = 0 .
La tabella moltiplicativa e piu riposta. Se ad esempio volessimo calcolare a1a2, il
prodotto dei loro rappresentanti darebbe X2 + X, che apparentemente non figura nei
CAPITOLO 1. NOZIONI PRELIMINARI 7
quattro elementi di K. Per stabilire il risultato dovremo allora dividere X2 + X per
g(X): il resto della divisione sara un polinomio di grado minore del grado di g(X) e
che sara nella stessa classe di X2 +X. Nel nostro caso,
X2 +X = 1 · g(X) + 1
e pertanto a1a2 = 1.
Tale procedimento costruttivo si puo applicare sempre, valendo il seguente risultato di
cui omettiamo la dimostrazione.
Lemma 1.7. Per ogni intero positivo h, nell’anello di polinomi Zp[X] esiste almeno
un polinomio g(X) irriducibile e di grado h.
Esercizio 4. Si costruiscano le tabelle additiva e moltiplicativa di un campo finito con
9 elementi.
Come conseguenza del fatto che la chiusura algebrica di un campo e unica a meno di
automorfismi, si ha il seguente risultato.
Teorema 1.8. Due campi finiti della stessa cardinalita sono isomorfi.
Dimostrazione. Sia K un campo finito di ordine ph, e sia L una sua chiusura algebri-
ca. Essendo K estensione finita di Zp, si ha che L e anche chiusura algebrica di Zp.
Osserviamo che ogni elemento non nullo a ∈ K e tale che aph−1 = 1, in quanto ph − 1
e l’ordine del gruppo moltiplicativo di K. Pertanto
aph
= a per ogni a ∈ K ,
e K coincide necessariamente con il campo delle radici di Xph −X in L.
Ora sia K ′ un altro campo finito di ordine ph. Come sopra, ogni sua chiusura algebrica
L′ e anche chiusura algebrica di Zp, e K ′ coincide necessariamente con il campo delle
radici di Xph −X in L′.
Essendo L e L′ chiusure algebriche dello stesso campo Zp, si ha che esiste un isomorfismo
φ : L→ L′. Tale isomorfismo induce per restrizione un isomorfismo di K in K ′. Infatti,
per ogni a ∈ K, si ha che φ(a) ∈ K ′ essendo
φ(a)ph
= φ(aph
) = φ(a) .
CAPITOLO 1. NOZIONI PRELIMINARI 8
Per questo motivo d’ora in poi parleremo del campo finito di ordine ph. Solitamente
porremo q = ph, e con Fq indicheremo il campo finito con q elementi.
1.1.2 Il gruppo moltiplicativo
Una caratteristica fondamentale dei campi finiti e che il loro gruppo moltiplicativo e
un gruppo ciclico. Come e usuale, indicheremo con F ∗ l’insieme degli elementi non
nulli di un campo F .
Teorema 1.9. Il gruppo moltiplicativo (F∗q, ·) di un campo finito Fq e ciclico.
Dimostrazione. Sia S un `-sottogruppo di Sylow di F∗q. Sia a ∈ S un elemento di ordine
massimo `j. Gli elementi 1, a, a2, . . . , a`j−1 ci danno `j radici distinte del polinomio
X`j − 1. Si noti essendo `j il grado di X`j − 1, in F∗q non possono esservi altre radici
di questo polinomio. Sia ora b un qualunque elemento in S. Sia `k l’ordine di b.
Chiaramente si ha che k ≤ j. Pertanto b`j
= (b`k)`j−k
= 1. Questo ci dice che anche
b e radice di X`j − 1, e pertanto dovra essere potenza di a. Per arbitrarieta di b, S e
gruppo ciclico generato da a.
Siano `1, . . . , `r i divisori primi distinti di #F∗q = q− 1. Essendo F∗q abeliano, si ha che
F∗q e prodotto diretto dei suoi sottogruppi di Sylow
S`1 , S`2 , . . . , S`r ,
ciascuno dei quali e ciclico per quanto detto sopra. Sia S`i =< ai >. Si lascia come
facile esercizio per il lettore dimostrare che a1a2 · · · ar ha ordine `1`2 · · · `r, e pertanto
e un generatore di F∗q.
Un generatore del gruppo moltiplicativo di Fq si dice elemento primitivo di Fq.
Esercizio 5. Si descriva il campo finito con 8 elementi, individuando un suo elemento
primitivo.
Per ogni intero positivo d, l’elevamento a d-ma potenza definisce un omomorfismo del
gruppo moltiplicativo di Fq in se, che indicheremo con ψd:
ψd : F?q → F?q, x 7→ xd .
CAPITOLO 1. NOZIONI PRELIMINARI 9
Lemma 1.10. Il nucleo di ψd consiste di (d, q − 1) elementi.
Dimostrazione. Sia w un elemento primitivo di Fq. Si denoti con e il massimo comun
divisore (d, q−1) di d e q−1 . Proviamo che Ker(ψd) e generato da wq−1e . Chiaramente(
wq−1e
)d=(w
de
)q−1
= 1 ,
e quindi wq−1e ∈ Ker(ψd). Sia ora a ∈ Ker(ψd). Essendo w elemento primitivo, esiste
s tale che a = ws. Pertanto si ha che wsd = 1. L’ordine di w e q − 1, e pertanto q − 1
divide sd. Ne segue che
e · q − 1
e| sd,
da cui, non avendo d e (q − 1)/e divisori in comune, si ha che q−1e
divide s. Pertanto
Ker(ψd) =< wq−1e >= {wi
q−1e | i = 1, . . . , e} .
Come conseguenza immediata abbiamo questo risultato.
Teorema 1.11. Sia d un intero positivo minore di q. Allora
(A) Le radici d-me dell’unita in Fq formano un gruppo ciclco di ordine (d, q − 1).
(B) Le potenze d-me non nulle in Fq sono in numero di q−1(d,q−1)
.
(C) Se un elemento a ∈ F∗q ha una radice d-ma in Fq, allora ha esattamente (d, q−1)
radici d-me in Fq.
Dimostrazione. (A) semplicemente e una formulazione diversa del Lemma. (B) e (C)
seguono dal fatto che Im(ψd) e isomorfo al quoziente F∗q/Ker(ψd)
Corollario 1.12. In un campo finito di ordine dispari, esattamente la meta degli ele-
menti non nulli e un quadrato. In un campo finito di ordine pari, tutti gli elementi
sono quadrati.
CAPITOLO 1. NOZIONI PRELIMINARI 10
Esercizio 6. Provare che in un campo finito di ordine dispari q, per ogni elemento
primitivo w si ha
−1 = wq−1
2
Esercizio 7. Provare che −1 e un quadrato in Fq, q dispari, se e solo se q ≡ 3 (mod 4).
Esercizio 8. Nel campo finito con 11 elementi, esibire il gruppo delle radici quarte
dell’unita. Si ripeta l’esercizio nel campo finito di ordine 13.
1.1.3 Sottocampi
Proviamo il seguente teorema.
Teorema 1.13. Un campo finito con q′ elementi e sottocampo di Fq se e solo se q =
(q′)r per qualche intero positivo r.
Dimostrazione. Supponiamo che un campo finito H con q′ elementi sia sottocampo di
Fq. Allora Fq e estensione finita di H, e pertanto l’ordine di Fq deve essere una potenza
dell’ordine di H.
Viceversa, se q = (q′)r, allora
q − 1 = (q′)r − 1 = (q′ − 1)((q′)r−1 + (q′)r−2 + . . .+ q′ + 1).
Sia w generatore del gruppo moltiplicativo di Fq, e sia
α = ω(q′)r−1+(q′)r−2+...+q′+1 .
Allora si vede facilmente che il sottoinsieme di Fq
H = {αi | i = 1, . . . , q′ − 1} ∪ {0}
consiste di q′ radici distinte del polinomio Xq′ −X. Pertanto H e campo finito con q′
elementi.
CAPITOLO 1. NOZIONI PRELIMINARI 11
1.1.4 Automorfismi di un campo finito
Il gruppo di automorfismi di un campo finito si puo facilmente determinare.
Teorema 1.14. Sia q = ph, h primo. Allora il gruppo degli automorfismi di Fq e il
gruppo ciclico di ordine h generato da
σ : x 7→ xp .
Dimostrazione. Si e gia visto come σ sia automorfismo di ogni campo finito di
caratteristica p > 0. Si noti che la i-ma potenza di σ e
σi : x 7→ xpi
.
L’ordine di σ e uguale a h: chiaramente σh = id, ed inoltre se fosse σi = id per i < h
si avrebbero q > pi radici del polinomio Xpi −X.
Proviamo ora che non ci sono automorfismi diversi dalle h potenze di σ. Osserviamo
che ogni automorfismo φ di Fq fissa Zp elemento per elemento, dovendo essere φ(1) = 1,
φ(1+1) = φ(1)+φ(1) = 1+1, e cosı via. Sia w un generatore del gruppo moltiplicativo
di Fq, e sia m(x) il suo polinomio minimo su Zp. Chiaramente il grado di m e minore o
uguale di h, il grado dell’estensione Fq : Zp (in realta si puo dimostrare che deg(m) = h).
Si osservi che φ(w) deve essere ancora una radice di Pw dato che φ ne fissa i coefficienti.
Essendo il numero di tali radici minore o uguale a h, l’asserto e dimostrato.
1.2 Spazi proiettivi sopra un campo
Sia Pr(F ) uno spazio proiettivo di dimensione r sopra un campo F . L’insieme dei suoi
punti e costituito da tutte le (r + 1)-ple di elementi di F , P = (x0 : x1 : . . . : xr), non
tutti nulli, definite a meno di un fattore di proporzionalita non nullo. Un insieme di n
punti si dice indipendente se mai uno di tali punti e combinazione lineare dei rimanenti,
dipendente in caso contrario.
Una retta si ottiene come combinazione lineare a coefficienti in F di due punti distinti
R e Q, cioe essa e l’insieme dei punti
P = λR + µQ, λ, µ ∈ F, (λ, µ) 6= (0, 0) .
CAPITOLO 1. NOZIONI PRELIMINARI 12
Un piano si ottiene considerando le combinazioni lineari di tre punti indipendenti. In
generale, un sottospazio di dimensione d e costituito dai punti le cui coordinate sono
combinazione lineare a coefficienti in F di d + 1 punti indipendenti. Il sottospazio
generato da un insieme di punti e il piu piccolo sottospazio che contiene tale insieme.
E facile verificare che un sottospazio di dimensione d e un iperpiano che non lo contiene
si incontrano in un sottospazio di dimensione d−1. Invece un sottospazio di dimensione
d e un punto non in esso contenuto generano un sottospazio di dimensione d+ 1.
Un iperpiano puo descriversi con un’equazione omogenea di primo grado nelle coordi-
nate omogenee x0, . . . , xn. Similmente un sottospazio di dimensione d puo descriversi
con r − d equazioni omogenee di primo grado indipendenti.
Definizione 1.15. Una collineazione di uno spazio proiettivo Pr(F ) e una biiezione
dell’insieme dei punti dello spazio che muta rette in rette.
Una classe importante di collineazioni e data dalle collineazioni lineari, o proiettivita.
Definizione 1.16. Una proiettivita di uno spazio proiettivo Pr(F ) e una collineazione
indotta da una matrice invertibile A di ordine r+ 1 a coefficienti in F , secondo la legge
(x0 : . . . : xr) 7→ (x0 : . . . : xr) · A .
Si noti che due matrici distinte possono indurre la stessa trasformazione. Precisamente
questo accade se e solo se le una matrice si ottiene dall’altra per moltiplicazione rispetto
a una matrice scalare λ · Ir+1, λ ∈ F , λ 6= 0.
Teorema 1.17. Ogni collineazione φ : Pr(F )→ Pr(F ) e tale che esistono una matrice
invertibile A di ordine r + 1 a coefficienti in F , ed un automorfismo η del campo F ,
tali che
φ(x0 : . . . : xr) = (η(x0) : . . . : η(xr)) · A .
Esercizio 9. Esistono collineazioni del piano proiettivo reale che non sono proiettivita?
E nel piano proiettivo complesso? E nel piano proiettivo sopra il campo finito con 9
elementi?
Infine ricordiamo il cosiddetto Teorema Fondamentale della Geometria Proiettiva.
CAPITOLO 1. NOZIONI PRELIMINARI 13
Teorema 1.18. Siano (P1, . . . , Pr+2) e (Q1, . . . , Qr+2) insiemi ordinati di r + 2 punti
di Pr(K) tali che r + 1 punti comunque scelti nello stesso insieme sono indipendenti.
Allora esiste un’unica proiettivita φ tale che ψ(Pi) = Qi per ogni i = 1, . . . , n+ 2.
Esercizio 10. Si costruisca la proiettivita ψ del piano proiettivo reale tale che
ψ(0 : 0 : 1) = (2 : 3 : 0), ψ(0 : 1 : 0) = (1 : 1 : 0),
ψ(1 : 0 : 0) = (1 : 1 : 1), ψ(1 : 1 : 1) = (1 : 0 : 1).
1.2.1 Lo spazio PG(r, q)
Esaminiamo ora in maggiore dettaglio il caso in cui F sia un campo finito Fq. In tal
caso lo spazio proiettivo Pr(F ) si denota con PG(r, q). Porremo inoltre, per ogni intero
non negativo d,
θd =d∑i=0
qi
.
Teorema 1.19. In PG(r, q) un sottospazio di dimensione d contiene esattamente θdpunti. In particolare i punti di PG(r, q) sono qr + qr−1 + . . .+ q + 1.
Dimostrazione. Per definizione un sottospazio di dimensione d e costituito dai punti
le cui coordinate omogenee si ottengono come combinazione lineare di quelle di d + 1
punti indipendenti, ovvero
P = λ0P0 + . . .+ λdPd , (λ0, . . . , λd) 6= (0, . . . , 0) .
Le possibilita per la (d+ 1)-pla ordinata (λ0, . . . , λd) chiaramente sono qd− 1. Inoltre,
essendo i punti indipendenti, due di tali (d + 1)-ple danno luogo allo stesso punto
se e solo se esse differiscono per un fattore di proporzionalita non nullo. Essendo gli
elementi non nulli di Fq in numero di q−1, si ha che il numero dei punti del sottospazio
eqd − 1
q − 1= qd + qd−1 + . . .+ 1 .
CAPITOLO 1. NOZIONI PRELIMINARI 14
Esercizio 11. Si determinino i punti di PG(2, 5) appartenenti alla retta di equazione
3x0 + 2x1 − x2 = 0.
Esercizio 12. Quante sono le proiettivita della retta proiettiva sopra il campo finito
con 3 elementi? Quante sono le proiettivita del piano proiettivo sopra il campo finito
con 7 elementi?
Il gruppo delle proiettivita di uno spazio proiettivo sopra un campo finito PG(r, q) e un
ovviamente un gruppo finito. Per quanto detto nella sezione precedente, tale gruppo e
isomorfo al quoziente
PGL(r + 1, q) = GL(r + 1, q)/{λ · Ir+1 | λ ∈ Fq, λ 6= 0} ,
dove GL(r+ 1, q) e il gruppo delle matrici invertibili di ordine r+ 1 a coefficienti in Fq.
Esercizio 13. Si calcoli il numero di proiettivita di uno spazio proiettivo PG(r, q).
Capitolo 2
Codici Lineari
2.1 Codici e loro parametri
In questo capitolo definiamo le nozioni principali della teoria dei codici correttori. Sia
A un insieme finito, che chiameremo alfabeto. L’insieme An = A × · · · × A e dotato
della cosiddetta metrica di Hamming: la distanza d(a, b) e il numero di coordinate in
cui a e b differiscono:
d((a1, . . . , an), (b1, . . . , bn)) = #{i | ai 6= bi} .
Con q indichiamo la cardinalita dell’alfabeto. Ogni insieme non vuoto C ⊆ An si dice
codice q-ario di lunghezza n. La cardinalita di C e M , mentre la cardinalita logaritmica
si definisce come k = logq(M) ∈ R. La distanza minima e
d = min{d(a, b) | a, b ∈ C, a 6= b} .
Un codice con questi parametri si dice [n, k, d]q codice. Gli elementi di C sono detti pa-
role codice. La qualita di un codice e misurata in prima istanza dai seguenti parametri
relativi: il tasso di informazione R = kn, e la distanza relativa δ = d
n. Chiaramente si
ha che 0 ≤ R ≤ 1 e 0 ≤ δ ≤ 1.
Spieghiamo brevemente perche i codici sono detti correttori di errori. Si consideri un
messaggio sufficientemente lungo e scritto nell’alfabeto A. Quando il messaggio viene
trasmesso attraverso un canale, puo essere soggetto a distorsioni. Come risolvere tale
15
CAPITOLO 2. CODICI LINEARI 16
situazione? Sia C un [n, k, d]q-codice, e si supponga per semplicita che k sia intero. Si
definisca una funzione (codifica) E : Ak → C ⊆ An iniettiva che associa ad ogni parola
di lunghezza k un elemento di C. Si suddivida il messaggio in blocchi di lunghezza
k, e invece di inviare tali blocchi a ∈ Ak si trasmetta la parola corrispondente E(a)
di lunghezza n. La trasmissione in questo modo e 1R
volte piu lenta. Il destinatario
ricevera una parola distorta E(a)′ ∈ An, che trasformera nella parola di C piu vicina
secondo la metrica di Hamming, diciamo E(a)′′. Questa procedura e basata sul fatto
che se il numero di posizioni di E(a) che sono mutate per effetto delle distorsioni e al
piu d−12
, allora E(a)′′ = E(a). Naturalmente se il numero di errori che intervengono
e maggiore di d−12
, non potremo in nessun modo garantire che E(a)′′ = E(a). Sia
t = bd−12c. Un buon codice e un codice con n grande e con R e δ piu grandi possibili.
Sia per la costruzione di codici buoni, che per quella di efficienti algoritmi di codifica e
decodifica, i codici su un alfabeto arbitrario si rivelano di struttura troppo povera. E
possibile arricchire tale struttura andando a considerare i codici lineari.
Sia ora A = Fq, con q = pm. Un codice lineare C di lunghezza n e un sottospazio
vettoriale C ⊆ Fnq ; per codici lineari, k = dimFq(C). Inoltre, la distanza minima puo
essere vista come il peso minimo di una parola non nulla.
Esercizio 14. Si provi che per un codice lineare
d = min{‖ a ‖| a ∈ C, a 6= 0} ,
dove ‖ a ‖= #{i | ai 6= 0} e il peso di a.
D’ora in poi considereremo soltanto codici lineari.
Definizione 2.1. Una matrice generatrice di un [n, k, d]q-codice e una matrice di tipo
(k × n) a coefficienti in Fq le cui righe sono una base di C.
Esercizio 15. Sia G una matrice generatrice di un [n, k, d]q-codice C. Si provi che
C = {x ·G | x ∈ F kq } .
Definizione 2.2. Sia C un [n, k, d]q-codice. Il codice duale C⊥ di C e il codice di
lunghezza n definito da
C⊥ = {a ∈ Fnq |< a, x >= 0 per ogni x ∈ C},
dove con < ·, · > si intende il prodotto scalare ordinario.
CAPITOLO 2. CODICI LINEARI 17
D’ora in avanti si denoti con 0 il vettore nullo di Fnq .
Esercizio 16. Sia G una matrice generatrice di un [n, k, d]q-codice C. Si provi che
C⊥ = {x ∈ F nq | G · xt = 0} .
Esercizio 17. Si provi che dimFq(C⊥) = n− k.
Esercizio 18. Si provi che (C⊥)⊥ = C.
Definizione 2.3. Una matrice di controllo di parita di un [n, k, d]q-codice e una matrice
di tipo (n− k)× n a coefficienti in Fq che e una matrice generatrice di C⊥.
Pertanto, se H e matrice di controllo di parita di un [n, k, d]q-codice C, si ha
C = {x ∈ Fnq | H · xt = 0} .
Esercizio 19. Sia H la matrice di controllo di parita di un [n, k, d]q-codice C. Si provi
che comunque si scelgano d−1 colonne di H tali colonne sono linearmente indipendenti,
e che esistono d colonne di H linearmente dipendenti. Suggerimento: se si denotano
H1, H2, . . . , Hn le colonne di H, e se x = (x1, . . . , xn), allora
H · xt = x1H1 + x2H
2 + . . .+ xnHn .
Una domanda naturale e la seguente: che relazione esiste fra due matrici generatrici di
uno stesso codice?
Proposizione 2.4. Siano G = (gi,j) e G′ = (g′i,j) due matrici generatrici di due
[n, k, d]q-codici C e C ′. Allora C = C ′ se e solo se esiste N ∈ GL(k, q) tale che
G′ = NG .
Dimostrazione. Supponiamo che C = C ′. Siano G1, . . . , Gk le righe di G, e analoga-
mente G′1, . . . , G′k le righe di G′. Sia {G1, . . . , Gk} che {G′1, . . . , G′k} sono basi di C.
Sia M la matrice del cambiamento di base da {G′1, . . . , G′k} a {G1, . . . , Gk}. Ovvero,
sia M = (mjl) la matrice invertibile tale che per ogni l = 1, . . . , k
G′l =k∑j=1
mjlGj .
CAPITOLO 2. CODICI LINEARI 18
Scrivendo l’eguaglianza precedente elemento per elemento si ha
g′l,i =k∑j=1
mjlgj,i .
Ponendo N = M t si ha l’asserto.
Supponiamo ora che G′ = NG. Allora
C ′ = {x ·N ·G | x ∈ Fkq} .
Essendo N invertibile si ha che l’insieme x ·N descrive tutto Fkq , e quindi
C ′ = {y ·G | y ∈ Fkq} = C .
Un analogo risultato vale per una matrici di controllo di parita.
Proposizione 2.5. Siano H = (hi,j) e H ′ = (h′i,j) due matrici di controllo di parita
di uno stesso [n, k, d]q-codice C. Allora esiste N ∈ GL(n− k, q) tale che
H ′ = NH .
Dimostrazione. Si noti che H e H ′ sono due matrici generatrici del codice duale di C.
Allora l’asserto segue dalla Proposizione 2.4.
2.2 Equivalenze e automorfismi
Ingenuamente si potrebbe pensare che, essendo tutti i sottospazi vettoriali di Fnq di
dimensione k isomorfi, tutti gli [n, k, d]q-codici siano equivalenti. Cosı non e, dato che
in generale un isomorfismo lineare non conserva il peso di un vettore.
Gli isomorfismi che sono considerati equivalenze di [n, k, d]q-codici sono le restrizioni di
quegli automorfismi di Fnq rappresentati da matrici monomiali. Una matrice monomiale
e una matrice invertibile contenente in ogni riga e in ogni colonna un unico elemento
non nullo (equivalentemente, una matrice si dice monomiale se e il prodotto di una
matrice di permutazione per una matrice diagonale). Si noti che se M e una matrice
monomiale, allora:
CAPITOLO 2. CODICI LINEARI 19
• il peso di x ∈ Fnq e lo stesso di x ·M ;
• una matrice B con n colonne a coefficienti in Fq viene trasformata dal prodotto
B ·M in una matrice che ha colonne proporzionali a quelle di B, eventualmente
permutate.
Sia A il gruppo costituito da automorfismi di Fnq rappresentati da matrici monomiali.
Esercizio 20. Si dimostri che #A = (q − 1)n · n!
Definizione 2.6. Due [n, k, d]q-codici C e C ′ si dicono equivalenti se esiste A ∈ A tale
che C ′ = A(C).
Vediamo ora come esprimere il concetto di equivalenza in termini di matrici generatrici
e di controllo di parita.
Lemma 2.7. Due [n, k, d]q-codici C e C ′ sono equivalenti se e solo se i loro duali lo
sono.
Dimostrazione. E sufficiente provare un’implicazione, dato che l’altra segue da
(C⊥)⊥ = C. Siano dunque C e C ′ equivalenti. Allora esiste una matrice monomiale
M tale che
x ∈ C ⇔ xM ∈ C ′ .
Ricordando la nota formula di aggiunzione
< xM, y >= x ·M · yt = y ·M t · xt =< yM t, x >=< x, yM t > ,
si ha la seguente catena di equivalenze:
y ∈ (C ′)⊥ ⇔< x, y >= 0 per ogni x ∈ C ′⇔< xM, y >= 0 per ogni x ∈ C ⇔< x, yM t >= 0 per ogni x ∈ C ⇔ yM t ∈ C⊥ .
Essendo M t chiaramente monomiale, si ha che (C ′)⊥ e equivalente a C⊥.
Proposizione 2.8. Siano G e G′ due matrici generatrici di due [n, k, d]q-codici C e
C ′. Allora C e C ′ sono equivalenti se e solo se esistono una matrice n× n monomiale
M , ed una matrice k × k invertibile N tali che
G′ = NGM .
CAPITOLO 2. CODICI LINEARI 20
Dimostrazione. Sia C ′ equivalente a C. Allora esiste una matrice monomiale M che
trasforma i vettori di C in quelli di C ′. In particolare, GM e una matrice generatrice
di C ′. Dalla Proposizione 2.4 si ha quindi che
G′ = NGM .
Viceversa, se G = NGM dalla Proposizione 2.4 segue che G′ e GM sono matrici gene-
ratrici dello stesso codice C ′. Chiaramente il codice che ha come matrice generatrice
GM e il codice che ha come matrice generatrice G, trasformato secondo la matrice
monomiale M . Pertanto, C ′ e equivalente a C.
Proposizione 2.9. Siano H e H ′ due matrici di controllo di parita di due [n, k, d]q-
codici C e C ′. Allora C e C ′ sono equivalenti se e solo se esistono una matrice n× nmonomiale M , ed una matrice (n− k)× (n− k) invertibile N tali che
H ′ = NHM .
Dimostrazione. L’asserto segue dalla Proposizione 2.8 e dal Lemma 2.7.
Definizione 2.10. Sia C un [n, k, d]q-codice. Il gruppo Aut(C) degli automorfismi di
C e il gruppo degli elementi A ∈ A tali che A(C) = C.
2.3 Codici e sistemi proiettivi
La nozione di codice lineare puo essere riformulata in termini di sottoinsiemi di spazi
proiettivi di Galois.
Premettiamo che nel seguito con l’espressione insieme di n punti (non necessariamente
distinti) di uno spazio proiettivo PG(r, q) intenderemo un elemento del quoziente di
PG(r, q)n rispetto alla relazione d’equivalenza
(P1, . . . , Pn) ∼ (Q1, . . . , Qn)⇔ esiste α ∈ Sn tale che Qi = Pα(i) .
Per brevita , talvolta chiameremo n-insieme un insieme di n punti (non necessariamente
distinti) di uno spazio proiettivo finito.
Definizione 2.11. Un [n, k, d]q-sistema proiettivo e un n-insieme P di PG(k − 1, q)
tale che
CAPITOLO 2. CODICI LINEARI 21
• non esiste un iperpiano contenente tutti i punti di P ;
• d = n−max{#P ∩H | H iperpiano di PG(k − 1, q)}.
Due [n, k, d]q-sistemi proiettivi P e P ′ sono detti equivalenti se esiste una proiettivita
di PG(k − 1, q) che manda P in P ′. Inoltre diremo che un codice lineare C ⊂ Fnq e
degenere se e contenuto in un sottospazio vettoriale di equazione xi = 0.
Proposizione 2.12. Sia k ≥ 1, d ≥ 1. C’e una corrispondenza biiettiva fra le classi di
equivalenza di [n, k, d]q-codici non-degeneri e le classi di equivalenza di [n, k, d]q-sistemi
proiettivi.
Dimostrazione. Sia G una matrice generatrice di un [n, k, d]q-codice non-degenere con
d ≥ 1 e k ≥ 1. Osserviamo che ogni colonna di G e un vettore non nullo di Fkq ,e pertanto definisce un punto di PG(k − 1, q) (si noti che la colonna nulla e esclusa
dalla condizione di non degenericita del codice). Sia PG l’n-insieme di tali punti, che
indicheremo con P1, . . . , Pn. Osserviamo che per definizione di matrice generatrice ogni
parola codice non nulla e di tipo
x = (< a, P1 >, . . . , < a, Pn >)
per qualche a = (a0, . . . , ak−1) ∈ Fkq , a 6= (0, . . . , 0). Il numero di componenti non nulle
di x e pertanto il numero di punti di PG non appartenenti all’iperpiano di equazione
a0X0 + a1X1 + . . .+ ak−1Xk−1 = 0 .
Da qui segue che PG e un [n, k, d]q-sistema proiettivo.
Proviamo ora che se due matrici G e G′ generano due codici C e C ′ equivalenti, allora
PG e PG′ sono sistemi proiettivi equivalenti. Dalla Proposizione 2.8 si ha che C e C ′
sono equivalenti se e solo se
G′ = N ·G ·M
per qualche matrice N invertibile k × k e per qualche matrice M monomiale n × n.
L’osservazione chiave e che PG·M = PG, ovvero le colonne di G ·M definiscono lo stesso
sistema proiettivo di G. Infatti M agisce su tali colonne semplicemente permutan-
dole e moltiplicandole per scalari non nulli; quindi l’insieme di punti di PG(k − 1, q)
corrispondente non varia. A questo punto e immediato verificare che PG′ e l’insieme
CAPITOLO 2. CODICI LINEARI 22
ottenuto da PG·M = PG mediante l’azione della proiettivita di PG(k− 1, q) definita da
N .
Pertanto abbiamo costruito un’applicazione fra le classi di equivalenza di [n, k, d]q-
codici non-degeneri e le classi di equivalenza di [n, k, d]q-sistemi proiettivi.
Si lascia come esercizio la dimostrazione della biiettivita di tale applicazione.
Presentiamo ora un approccio ancora diverso.
Definizione 2.13. Un [n, k, d]q-sistema proiettivo duale e un n-insieme Q di PG(n−k − 1, q) tale che
• non esiste un iperpiano contenente tutti i punti di Q;
• d e il minimo numero di punti linearmente dipendenti di Q.
Proposizione 2.14. Sia k ≥ 1 e d > 1. C’e una corrispondenza biiettiva fra le classi
di equivalenza di [n, k, d]q-codici e le classi di equivalenza di [n, k, d]q-sistemi proiettivi
duali.
Dimostrazione. Sia H una matrice di controllo di parita di un [n, k, d]q-codice con d > 1
e k ≥ 1. Osserviamo che d > 1 implica che ogni colonna di H e un vettore non nullo
di Fn−kq , e pertanto definisce un punto di PG(n − k − 1, q). Sia QH l’n-insieme di
tali punti, che indicheremo con Q1, . . . , Qn. Osserviamo che per definizione di matrice
di controllo di parita (si veda anche l’Esercizio 19), d e il minimo numero di punti
linearmente dipendenti di QH . Inoltre, nessun iperpiano puo contenere QH in quanto
il rango della matrice H e n − k, e quindi esistono n − k punti di QH linearmente
indipendenti. Pertanto, QH e un [n, k, d]q-sistema proiettivo duale.
Proviamo ora che se due matrici G e G′ generano due codici C e C ′ equivalenti, allora
QH e QH′ sono sistemi proiettivi equivalenti. Dalla Proposizione 2.9 si ha che C e C ′
sono equivalenti se e solo se
H ′ = N ·H ·M
per qualche matrice N invertibile k × k e per qualche matrice M monomiale n× n. A
questo punto la dimostrazione prosegue come nella Proposizione 2.12.
CAPITOLO 2. CODICI LINEARI 23
Riassumendo, ad un [n, k, d]q-codice C si possono associare due classi di n-insiemi di
spazi proiettivi finiti. La prima e quella che si ottiene considerando l’insieme PC dei
punti le cui coordinate sono le colonne di una matrice generatrice di C; si ha che PC
e contenuto in PG(k − 1, q) e che il massimo numero di punti di PC contenuti in uno
stesso iperpiano e n−d. La seconda e quella dell’insieme QC dei punti le cui coordinate
sono le colonne di una matrice di controllo di parita di C; si noti che QC e contenuto
in PG(n− k− 1, q) e che il minimo numero di punti linearmente dipendenti di QC e d.
Viceversa, un n-insieme I di PG(r, q) che non sia contenuto in un iperpiano puo essere
visto sia come sistema proiettivo che come sistema proiettivo duale. Nel primo caso si
associa a I la classe del codice CI definito come quel codice la cui matrice generatrice
ha come colonne le coordinate dei punti di I; tale codice ha parametri k = r + 1, e
d = n−MI , dove MI indica il massimo numero di punti di I contenuti in uno stesso
iperpiano. Nel secondo caso si associa a I la classe del codice C⊥I , duale di CI , la cui
matrice di controllo di parita ha come colonne le coordinate dei punti di I; i parametri
di I sono k = n − (r + 1) e d = mI , dove mI indica il minimo numero di punti di Idipendenti.
Si noti che, in virtu delle Proposizioni 2.12 e 2.14,
• il codice CPC e equivalente a C;
• il codice C⊥QC e equivalente a C;
• il codice CQC e equivalente a C⊥.
Le seguenti definizioni torneranno utili in seguito.
Definizione 2.15. Sia I un n-insieme di PG(r, q). Allora
• I si dice M -completo se non esiste I ′ (n+ 1)-nsieme di PG(r, q) contenente I e
tale che MI′ = MI .
• I si dice m-completo se non esiste I ′ (n+1)-insieme PG(r, q) contenente I e tale
che mI′ = mI .
Si lascia come esercizio dimostrare che le seguenti definizioni sono equivalenti alle
precedenti:
CAPITOLO 2. CODICI LINEARI 24
• I e M -completo se l’insieme degli iperpiani di PG(r, q) che incontrano I in MIpunti costituisce un ricoprimento di PG(r, q).
• I e m-completo se l’insieme dei sottospazi di dimensione mI − 3 generati da
mI − 2 punti indipendenti di I costituisce un ricoprimento di PG(r, q).
Esercizio 21. Sia A un insieme di n punti di PG(r, q) a r + 1 a r + 1 indipendenti,
detto n-arco di PG(r, q). Si studino i parametri di A come sistema proiettivo e come
sistema proiettivo duale.
Esercizio 22. Sia A un insieme di n punti di PG(r, q) a 3 a 3 non allineati, detto
n-calotta di PG(r, q). Si fornisca una stima dei parametri di A come sistema proiettivo
duale.
Esercizio 23. Sia A un insieme di n punti di PG(2, q) a s a s non allineati, e tale che
esistono s+ 1 punti allineati in A, detto (n, s)-arco di PG(2, q). Si fornisca una stima
dei parametri di A come sistema proiettivo.
Esercizio 24. Si provi che un n-arco di PG(r, q) e M -completo se e solo se e m-
completo.
Esercizio 25. Si rappresenti F4 come {0, 1, ω, ω + 1 | ω2 = ω + 1}. Si consideri il
seguente 5-insieme di PG(2, 4):
I = {(1 : 0 : 0), (1 : 1 : 1), (1 : ω : ω + 1), (1 : ω + 1 : ω), (0 : 0 : 1)}
• si provi che I e un 5-arco;
• si stabilisca se I e m-completo.
2.4 Limitazioni
2.4.1 Disuguaglianza di Singleton
Fissati n e k, i migliori codici lineari sono chiaramente quelli con d piu grande possibile.
La seguente proposizione stabilisce una limitazione superiore per d.
CAPITOLO 2. CODICI LINEARI 25
Proposizione 2.16. Sia C un [n, k, d]q-codice lineare. Allora
d ≤ n− k + 1 .
Dimostrazione. Sia Q un sistema proiettivo duale associato a C. Essendo Q un insieme
di punti di PG(n − k − 1, q), ogni sottoinsieme di cardinalita n − k + 1 e costituito
necessariamente da punti dipendenti.
Un codice tale che d = n − k + 1 viene detto ottimale, o MDS (Maximum Distance
Separable). Osserviamo che, attraverso la corrispondenza con i sistemi proiettivi duali,
i codici MDS corrispondono agli n-archi di PG(r, q).
Esercizio 26. Si dimostri che il codice duale C⊥ di un codice MDS C e ancora un
codice MDS. Suggerimento: si consideri un sistema proiettivo associato a C, e si ragioni
sul fatto che esso e un sistema proiettivo duale associato a C⊥.
Si definisce difetto di Singleton ∆C di un [n, k, d]q-codice C l’intero
∆C = n− k + 1− d .
Chiaramente ∆C = 0 se e solo se C e MDS. I codici con difetto di Singleton pari a 1
sono detti codici Almost MDS (AMDS). Ovviamente a parita di n e k i codici migliori
sono quelli con difetto di Singleton piu basso. A parita invece di difetto di Singleton,
generalmente i codici considerati migliori sono quelli con con n piu grande.
2.4.2 Lemma di Impoverimento
Il lemma seguente ci dice sostanzialmente che a partire da un codice se ne puo sempre
definire uno peggiore (ovvero con difetto di Singleton piu grande, oppure con lo stesso
difetto di Singleton ma con lunghezza minore).
Lemma 2.17. Sia C un [n, k, d]q-codice con k > 1, n > d ≥ 2. Allora esistono codici
con i seguenti parametri:
(a) [n+ 1, k, d]q;
(b) [n− 1, k − 1, d]q;
CAPITOLO 2. CODICI LINEARI 26
(c) [n− 1, k, d− 1]q;
(d) [n, k − 1, d]q;
(e) [n, k, d− 1]q.
Dimostrazione. (a) Sia P un sistema proiettivo associato a C. Si consideri un iper-
piano di PG(k − 1, q) che incontra P nel massimo numero di punti. Sia P ′ il si-
stema proiettivo ottenuto da P aggiungendo un ulteriore punto su tale iperpiano.
Allora P ′ e un [n+ 1, k, d]q-sistema proiettivo.
(b) Sia Q un sistema proiettivo duale associato a C. Si considerino d punti di Qlinearmente dipendenti. Sia Q′ il sistema proiettivo duale ottenuto da Q rimuo-
vendo uno dei punti distinti da quei d, scelti secondo il seguente criterio: i punti
di Q rimanenti non devono essere contenuti in un iperpiano (tale criterio si puo
applicare: d − 1 di quei d punti sono indipendenti; e possibile aggiungere altri
n−k−d+1 punti di Q fino ad arrivare a n−k indipendenti, per il teorema della
base incompleta; quindi ne esiste uno da eliminare non appena n−d > n−k−d+1,
ovvero k > 1). Allora Q′ e un [n− 1, k − 1, d]q-sistema proiettivo duale.
(c) Sia P un sistema proiettivo associato a C. Si consideri un iperpiano di PG(k −1, q) che incontra P nel massimo numero di punti. Sia P ′ il sistema proiettivo
ottenuto da P rimuovendo uno qualunque dei punti non appartenenti a tale
iperpiano. Allora P ′ e un [n− 1, k, d− 1]q-sistema proiettivo.
(d) Si usino (b) e (a).
(e) Si usino (c) e (a).
Esercizio 27. Sia I e un [n, k, d]q sistema proiettivo di PG(r, q). Sia I non M -
completo. Si provi che esiste un [n+ 1, k, d+ 1]q codice.
Esercizio 28. Sia I e un [n, k, d]q sistema proiettivo duale di PG(r, q). Sia I non
m-completo. Si provi che esiste un [n+ 1, k + 1, d]q codice.
CAPITOLO 2. CODICI LINEARI 27
2.4.3 Disuguaglianza di Hamming
Definizione 2.18. In Fnq , il numero di vettori la cui distanza di Hamming da una
fissata parola x e minore o uguale di r si indica con Vq(n, r).
Esercizio 29. Si provi che
Vq(n, r) =r∑i=0
(n
i
)(q − 1)i .
Suggerimento: si consideri che l’insieme delle parole la cui distanza di Hamming da x
e minore o uguale di r e unione disgiunta dei sottoinsiemi di vettori la cui distanza da
x e esattamente i, con i = 0, . . . , r.
Teorema 2.19. Sia C un [n, k, d]q-codice. Sia t = bd−12c. Allora
qn−k ≥ Vq(n, t) .
Dimostrazione. Si e notato come le sfere di centro parole codice e raggio t siano
disgiunte. Essendo tali sfere in numero di qk, necessariamente si ha
qkVq(n, t) ≤ #Fnq = qn .
Nel Teorema precedente vale l’uguaglianza se e solo se le sfere di raggio t centrate in
parole codice costituiscono una partizione dello spazio Fnq . In tal caso il codice si dice
perfetto.
Possiamo definire in modo equivalente un codice perfetto. Chiamiamo raggio ricoprente
ρC di un [n, k, d]q-codice C il minimo intero positivo tale che le sfere centrate in parole
di C e raggio ρ ricoprono l’intero Fnq . Chiaramente t ≤ ρC , e l’uguaglianza vale per
tutti e soli i codici perfetti.
Dimostriamo il seguente risultato relativo al calcolo di ρC a partire da un sistema
proiettivo duale associato a C.
Proposizione 2.20. Sia I = n-insieme di PG(r, q). Se I e m-completo, allora ρC⊥I ≤d− 2, essendo d = mI la minima distanza di C⊥I .
CAPITOLO 2. CODICI LINEARI 28
Dimostrazione. Sia
H =
| | | |P1 . . . . . . Pn| | | |
matrice le cui colonne sono coordinate dei punti di I. Sia v ∈ Fnq , e si ponga w = Hvt.
Dalla m-completezza di I segue che ogni vettore di PG(r, q) e combinazione lineare di
mI = d− 2 punti di I. In particolare, w e combinazione lineare di d− 2 punti di I:
w = ai1Pi1 + . . .+ aid−2Pid−2
.
Ovvero, w = Het, essendo e = (a1, . . . , an) con a` = 0 se ` 6= ij per ogni j. Allora ne
segue che
Hvt = Het ⇔ H(v − e)t = 0⇔ v − e = c ∈ C⊥I .
Essendo il peso di e minore o uguale di d−2, si ha che v appartiene alla sfera di centro
c ∈ C⊥I e raggio d − 2. Per arbitrarieta di v si ha che il raggio ricoprente di C⊥I e al
piu d− 2.
Sfortunatamente i codici lineari perfetti sono oggetti molto rari, gia completamente
classificati. Un codice quasi-perfetto e un codice per cui ρ = t+ 1.
Esercizio 30. Sia I l’insieme di tutti i punti di PG(r, q). Si provi che il codice C⊥Iassociato e un [ q
r+1−1q−1
, qr+1−1q−1
− r − 1, 3]q-codice perfetto. Suggerimento: si utilizzi la
Proposizione 2.20.
Esercizio 31. Sia I un insieme di n punti di PG(r, q) tale che mI = 4. Si provi che
se I e m-completo, allora C⊥I e quasi-perfetto.
Daremo il seguente teorema senza dimostrazione.
Teorema 2.21. Sia C un [n, k, d]q-codice perfetto. Allora uno dei seguenti casi sussiste:
• k = n,
• q = 2, k = 1, n dispari, d = n.
• C e il codice dell’Esercizio 30,
• C e un [23, 12, 7]2-codice,
CAPITOLO 2. CODICI LINEARI 29
• C e un [11, 6, 5]3-codice.
Esercizio 32. Sia I un insieme di n punti di PG(r, q) a 3 a 3 non allineati. Si
supponga che ogni altro punto di PG(r, q) sia allineato con due punti di I. Si dimostri
che mI = 4, a meno che n = 11, q = 3, r = 4, oppure n = 5, q = 2, r = 3.
Suggerimento: si consideri che se fosse mI > 4 il codice C⊥I correggerebbe t ≥ 2 errori;
si calcoli poi il raggio ricoprente di C⊥I .
2.4.4 Disuguaglianza di Griesmer
La disuguaglianza di Singleton afferma che per un [n, k, d]q-codice vale la disuguaglianza
n ≥ d+ k− 1. In questa sezione proveremo un risultato piu forte, che tiene conto della
cardinalita del campo base Fq.
Adotteremo la seguente notazione: dati x = (x1, . . . , xn1) ∈ Fn1q , y = (y1, . . . , yn2) ∈
Fn2q poniamo
(x1 | x2) = (x1, . . . , xn1 , y1, . . . , yn2) ∈ Fn1+n2q .
Lemma 2.22. Sia C un [n, k, d]q-codice con k ≥ 2. Allora esiste un [n − d, k −1, d′]q-codice con d′ ≥ dd
qe.
Dimostrazione. Il lettore puo facilmente verificare che dato un qualunque vettore di
peso d e sempre possibile trovare una trasformazione monomiale che lo trasformi in
a = (1, . . . , 1, 0, 0, . . . , 0) = (1 | 0),
essendo 1 = (1, . . . , 1) ∈ Fdq , 0 = (0, . . . , 0) ∈ Fn−dq .
Pertanto, a meno di equvalenza, possiamo supporre che a ∈ C. Consideriamo ora un
matrice generatrice di C che abbia come prima riga proprio il vettore a. Scriviamo le
successive k − 1 righe di G come ci = (ui | vi), con ui ∈ Fdq , vi ∈ Fn−dq .
Sia C ′ il codice di lunghezza n− d generato da v1, . . . , vk−1.
Dimostriamo che la dimensione di C ′ e k−1. Se per assurdo i vettori v1, . . . , vk−1 fossero
linearmente indipendenti, allora esisterebbero λ1, . . . , λk−1 in Fq e non tutti nulli tali
CAPITOLO 2. CODICI LINEARI 30
che∑k−1
i=1 λivi = 0. Consideriamo il vettore c =∑k−1
i=1 λici. Tale vettore ovviamente
appartiene a C. Inoltre
c =k−1∑i=1
λici =k−1∑i=1
λi(ui | vi) = (k−1∑i=1
λiui | 0). (2.1)
Sia µ l’elemento di Fq nella prima posizione di c. Allora chiaramente
c− µa = ((0, . . .) | 0)
e un elemento di C di peso minore di d, e cio e chiaramente impossibile.
Dimostriamo ora che la distanza minima d′ di C ′ e maggiore o uguale di ddqe. Essendo
d′ intero, e sufficiente provare che d′ ≥ dq. Sia v =
∑k−1i=1 λivi un vettore di C ′ di peso
d′. Sia quindi c come in (2.1). Sia inoltre u = (u1, . . . , ud) ∈ Fdq tale che c = (u | v).
Per ogni elemento λ ∈ Fq definiamo
δλ = #{i ∈ [1..d] | ui = λ}.
Siccome c− λa ∈ C si ha che
d ≤ w(c−λa) = w((u | v)− (λ1 | 0)) = w(u−λ1 | v) = w(u−λ1)+w(v) = d−δλ+d′,
e pertanto
δλ ≤ d′.
Finalmente l’asserto segue da
d =∑λ∈Fq
δλ ≤∑λ∈Fq
d′ = qd′.
Nota 2.23. E possibile dare una dimostrazione geometrica del Lemma 2.22. Sia C un
[n, k, d]q codice, e sia I un n-insieme di PG(k − 1, q) tale che C = CI. Allora esiste
un iperpiano H di PG(k − 1, q) tale che incontra I in esattamente n − d punti. Sia
I ′ l’insieme di tali punti. Identificando H con PG(k− 2, q), e possibile vedere I ′ come
(n− d)-insieme di PG(k − 2, q). Sia C ′ = CI′.
CAPITOLO 2. CODICI LINEARI 31
Proviamo che la dimensione di C ′ e k−1, ovvero che i punti di I ′ generano H. Se cosı
non fosse, I ′ sarebbe contenuto in un sottospazio H ′ di dimensione k − 3. Per ogni L
iperpiano di PG(k − 1, q) contenente H ′ si avrebbe allora che L ∩ I = I ′, in quanto il
numero di punti di L ∩ I non puo superare n − d = MI. Dato che questi iperpiani L
ricoprono PG(k − 1, q), si avrebbe allora n = n− d, che ovviamente e impossibile.
Per valutare la distanza minima di C ′ occorre stabilire le possibili intersezioni di I ′ con
gli iperpiani di PG(k−2, q). Sia H ′ un iperpiano di PG(k−2, q) e sia e = #(I ′∩H ′).
H ′ corrisponde a un sottospazio di dimensione k − 3 in PG(k − 1, q) contenuto in H.
Osserviamo che PG(k−1, q)\H puo essere ripartito in q insiemi di tipo L\H ′, essendo
L uno dei q iperpiani di PG(k − 1, q) contenenti H ′ e diversi da H. Visto che L \Hpuo contenere al massimo n− d− e punti di I \H, si ha allora che
d ≤ q(n− d− e) = (q + 1)(n− d)− qd′.
Essendo e ≤ MI′ si ha ovviamente (n − d − e) = n′ − e ≥ n′ −MI′ ≥ d′, e quindi
d′ ≥ d/q.
Teorema 2.24 (Disuguaglianza di Griesmer). Sia C un [n, k, d]q-codice. Allora
n ≥k−1∑i=0
d dqie.
Dimostrazione. L’asserto segue da una ripetuta applicazione del Lemma 2.22.
Consideriamo una sequenza di k codici
C0, C1, . . . , Ck−1
tale che C0 = C e Ci e ottenuto da Ci−1 mediante il Lemma 2.22. Pertanto, se Ci ha
parametri [ni, ki, di] si ha
n0 = n, k0 = k, d0 = d
e, per i = 1, . . . , k − 1,
ki = ki−1 − 1 = k − i, ni = ni−1 − di−1, di ≥ ddi−1
qe.
CAPITOLO 2. CODICI LINEARI 32
E facile vedere che di ≥ d dqi e. Inoltre Ck−1 ha dimensione 1. La differenza fra lunghezza
nk−1 e distanza minima dk−1 deve essere non negativa, e pertanto
0 ≤ nk−1 − dk−1 ≤ (n−k−2∑i=0
di)− dk−1 ≤ n−k−1∑i=0
d dqie.
Osserviamo che la disuguaglianza di Griesmer implica quella di Singleton. Cio segue
dal fatto che per ogni i = 1, . . . , k − 1 si ha d dqie ≥ 1.
Esercizio 33. Sia I l’insieme di tutti i punti di PG(r, q). Provare che i i parametri
del codice CI e soddisfano l’uguaglianza nel Teorema 2.24.
Esercizio 34. Dato un n-insieme proprio I di PG(2, q) con n ≤ q2. Provare che
i parametri del codice CI e soddisfano l’uguaglianza nel Teorema 2.24 se e solo se
n > q(MI − 2) +MI .
2.4.5 Disuguaglianza di Plotkin
Definizione 2.25. Fissati n, d, e q, la massima cardinalita M = qk di un [n, k, d]q-
codice si denota con Aq(n, d).
Teorema 2.26. Sia θ = 1− 1q. Allora se d > θn si ha
Aq(n, d) ≤ d
d− θn.
Dimostrazione. Sia C un [n, k, d]q-codice e sia M = qk il numero delle parole di C.
Definiamo
S =∑
(x,y)∈C2,x 6=y
d(x, y) .
Da un lato, essendo d la distanza minima, si ha che
S ≥ d#{(x, y) ∈ C2, x 6= y} = dM(M − 1) .
CAPITOLO 2. CODICI LINEARI 33
Una limitazione superiore per S puo invece ottenersi in questo modo. Ricordiamo che
il simbolo di Kronecker δ(a, b) e definito da δ(a, b) = 0 se a = b, δ(a, b) = 1 se a 6= b.
Pertanto,
S =∑x∈C
∑y∈C,y 6=x
n∑i=1
δ(xi, yi),
dove x = (x1, . . . , xn), y = (y1, . . . , yn). Per la proprieta commutativa possiamo scrivere
S =n∑i=1
(∑x∈C
∑y∈C,y 6=x
δ(xi, yi)
).
Sia i0 il valore in 1, 2, . . . , n tale che l’intero fra parentesi e massimo. Allora
S ≤ n∑x∈C
∑y∈C,y 6=x
δ(xi0 , yi0) .
Per ogni α ∈ Fq, sia mα il numero di x in C tali che xi0 = α. Allora
S ≤ n∑α∈Fq
∑x∈C,xi0=α
∑y∈C
δ(α, yi0) = n∑α∈Fq
mα
∑y∈C
δ(α, yi0) = n∑α∈Fq
mα(M −mα) ,
e quindi
S ≤ n(M2 −∑α∈Fq
m2α).
Applicando il noto trucco della varianza (ovvero sviluppando la disuguaglianza1q
∑α(mα −
Pαmαq
)2 ≥ 0), si ha
∑α∈Fq
mα2 ≥
(∑α∈Fq mα
)2
q=M2
q,
e quindi
S ≤ n
(M2 − M2
q
)= nM2θ .
L’asserto finalmente segue da
dM(M − 1) ≤ S ≤ nM2θ .
CAPITOLO 2. CODICI LINEARI 34
Il codice CI associato ad un 4-arco I di PG(2, 4) e un [4, 1, 4]4 codice per il quale
4 = d > θn = 3 e vale l’uguaglianza
qk = 4 =d
d− θn.
Corollario 2.27. Sia n′ = bd−1θc ≤ n. Allora
Aq(n, d) ≤ dqn−n′.
Dimostrazione. Sia C un [n, k, d]q-codice. Proviamo che
qk ≤ dqn−n′. (2.2)
Se k ≤ n−n′, allora l’asserto e banale. Si assuma quindi k > n−n′. Grazie al Lemma di
impoverimento, esiste un [n′, k−n+n′, d]q-codice C ′. Risulta inoltre d ≥ θn′+1 > θn′.
Applicando la disuguaglianza di Plotkin a C ′ si ha che
qk−n+n′ ≤ d
d− θn′≤ d ,
ovvero
qk ≤ dqn−n′.
Esercizio 35. Provare che vale l’uguaglianza in (2.2) per i codici C = CI , dove I e
un 6-arco di PG(2, 4).
2.4.6 Disuguaglianza di Gilbert-Varshamov
Finora abbiamo visto risultati che affermavano l’impossibilita di avere un codice troppo
buono. Il prossimo teorema invece in un certo senso assicura l’esistenza di un codice
abbastanza buono.
Lemma 2.28. Sia I un n-insieme di PG(r, q). Se
Vq(n,mI − 2) < qr+1 .
allora I non e m-completo
CAPITOLO 2. CODICI LINEARI 35
Dimostrazione. I vettori non nulli che sono combinazione lineare di al piu mI−2 punti
di I sono in numero minore o uguale di
mI−2∑i=1
(n
i
)(q − 1)i = Vq(n,mI − 2)− 1 .
Siccome a q − 1 a q − 1 tali vettori corrispondono allo stesso punto, si ha che I non
puo essere completo se
Vq(n,mI − 2)− 1
q − 1< #PG(r, q) =
qr+1 − 1
q − 1,
da cui l’asserto.
Teorema 2.29. Siano q, n, d, k tali che d ≤ n− k + 1, k ≥ 1, d ≥ 2 e
Vq(n− 1, d− 2) < qn−k .
Allora esiste un [n, k, d]q-codice.
Dimostrazione. Consideriamo le coppie (n′, k′) con n′ = n − k + k′, k′ = 1, . . . , k.
Dimostriamo per induzione su k′ che esiste un [n′, k′, d]q-codice.
Per k′ = 1 basta osservare che un [n−k+1, 1, d]q-codice senz’altro esiste: basta prendere
il sottospazio di Fn−k+1q generato da un qualunque vettore di peso d, che esiste essendo
d ≤ n− k + 1.
Proviamo ora che l’esistenza di un [n− k+ k′− 1, k′− 1, d]q-codice C implica quella di
un [n− k + k′, k′, d]q-codice. Si ponga I = QC . Allora I e un (n− k + k′ − 1)-insieme
proprio di PG(n − k − 1, q) tale che d = mI . Si osservi che, essendo k′ ≤ k, si ha
n− k + k′ − 1 ≤ n− 1 e quindi
Vq(n− k + k′ − 1,mI − 2) ≤ Vq(n− 1, d− 2) < qn−k .
Pertanto, per il Lemma 2.28, I non e m-completo, e quindi esiste un (n − k + k′)-
insieme I ′ di PG(n − k − 1, q) tale che d = mI′ . Il codice corrispondente C⊥I′ e un
[n− k + k′, k′, d]q-codice.
L’ultimo passo dell’induzione, ovvero k′ = k, fornisce allora un [n, k, d]q-codice.
CAPITOLO 2. CODICI LINEARI 36
Corollario 2.30. Dati n, d, q, sia k l’intero tale che
n− logq Vq(n− 1, d− 2)− 1 ≤ k < n− logq Vq(n− 1, d− 2) . (2.3)
Allora esiste un [n, k, d]q-codice.
Dimostrazione. Da k < n− logq Vq(n− 1, d− 2) segue
qk <qn
Vq(n− 1, d− 2),
ovvero
qn−k > Vq(n− 1, d− 2) .
L’asserto quindi segue dal Teorema precedente.
Corollario 2.31. Dati n, d, q, si ha
Aq(n, d) ≥ qn−1
Vq(n− 1, d− 2).
Esercizio 36. Si provi che un n-arco completo di PG(2, q) consiste di almeno√
2q
punti.
2.5 Problemi asintotici
In estrema sintesi, lo scopo della teoria dei codici e trovare codici che ottimizzano gli
invarianti R e δ.
Sia q una potenza di un primo, e sia δ ∈ R con 0 ≤ δ ≤ 1. Si ponga
Rq(n, δ)
uguale al massimo R per cui esiste un [n, k, d]q-codice con d/n = δ. Equivalentemente,
Rq(n, δ) =1
nlogq Aq(n, δn).
Si ponga inoltre
αq(δ) = lim supn→+∞
1
nlogq Aq(n, bδnc) .
CAPITOLO 2. CODICI LINEARI 37
In altre parole, αq(δ) e il massimo R per cui esiste una sequenza di codici lineari definiti
su Fq tale che la distanza relativa tende a δ e il tasso di informazione tende a R.
Una diversa interpretazione della funzione αq e la seguente. Sia Uq ⊂ [0, 1]2 l’insieme
dei punti limite delle coppie (δ(C), R(C)) associate a codici lineari su Fq. La regione
Uq e limitata nel quadrato unitario dai lati del quadrato sugli assi e dal grafico della
funzione αq : [0, 1]→ [0, 1].
Si puo dimostrare che αq e continua, decrescente, e che per (q − 1)/q ≤ δ ≤ 1 si ha
αq(δ) = 0. Per 0 < δ < (q − 1)/q, il valore esatto di αq(δ) e sconosciuto, ma alcune
limitazioni inferiori e superiori sono state dimostrate.
La funzione entropia q-aria Hq : [0, 1− 1q]→ R e definita da Hq(0) = 0 e
Hq(x) = x logq(q − 1)− x logq(x)− (1− x) logq(1− x)
per 0 ≤ x ≤ 1 − 1q. Questa funzione e rilevante in teoria dei codici in quanto e legata
alla cardinalita di sfere di Hamming.
Lemma 2.32. Per ogni λ con 0 ≤ λ ≤ 1− 1q
si ha
Hq(λ) = limn→+∞
1
nlogq Vq(n, dλne) .
Proposizione 2.33. (a) (Disuguaglianza di Plotkin asintotica) Per 0 ≤ δ ≤ (q −1)/q,
αq(δ) ≤ 1− q
q − 1δ .
(b) (Disuguaglianza di Hamming asintotica) Per 0 ≤ δ ≤ 1,
αq(δ) ≤ 1−Hq
(δ
2
).
(c) (Disuguaglianza di Gilbert-Varshamov asintotica) Per 0 ≤ δ ≤ (q − 1)/q,
αq(δ) ≥ 1−Hq(δ) .
Dimostrazione.
CAPITOLO 2. CODICI LINEARI 38
(a) Sia C un [n, k, d]q-codice con δ < θ. Sia n′ = bd−1θc. Si noti che n′ < n, essendo
n′
n=
1
n
(⌊d− 1
θ
⌋)≤ 1
n
d
θ− 1
n
1
θ<δ
θ< 1.
Per il Corollario 2.27 si ha Aq(n, d) ≤ dqn−n′, e quindi
αq(δ) ≤ lim supn→+∞1n
logq(δnqn−n′)
= lim supn→+∞
(logq δ
n+
logq n
n+ 1− n′
n
)= 1− limn→+∞
n′
n
= 1− δθ
(b) Dal limite di Hamming si ha immediatamente che
Aq(n, δn) ≤ qn
Vq(n, d δn−12e).
Passando al massimo limite si ha
αq(δ) ≤ lim supn→+∞1n
(n− logq(Vq(n, d δn−1
2e)))
= 1− lim supn→+∞1n
logq(Vq(n, d δn−12e)) ,
da cui l’asserto.
(c) Dalla limitazione di Gilbert-Varshamov (2.3) segue che
Aq(n, δn) ≥ qn−1
Vq(n− 1, δn− 2).
Passando al massimo limite segue che
αq(δ) ≥ lim supn→+∞1n
(n− 1− logq(Vq(n− 1, δn− 2))
)= 1− lim supn→+∞
n−1n
1n−1
logq(Vq(n− 1, δn− 2))
= 1− lim supn→+∞1
n−1logq
(Vq(n− 1,
(δ + δ−2
n−1
)(n− 1)
))= 1−Hq(δ) .
CAPITOLO 2. CODICI LINEARI 39
Nota 2.34. Esistono altre limitazioni superiori su αq(δ), molto piu difficili da dimo-
strare. Ricordiamo soltanto la limitazione di Bassalygo-Elias Bound e quella di Mc-
Eliece-Rodemich-Rumsey-Welch, che sono piu precise rispetto a quelle di Hamming e
Plotkin.
2.6 Codici Reed-Solomon
Questa importante classe di codici e ben nota in teoria dei codici da molto tempo.
Come vedremo, i codici di Goppa sono una loro generalizzazione molto naturale.
Sia q una potenza di un primo, n e k siano interi con 1 ≤ k ≤ n ≤ q. Sia Fq[X] l’anello
dei polinomi in una indeterminata con coefficienti in Fq. Poniamo
Lk := {f ∈ Fq[X] : deg(f) ≤ k − 1} ∪ {0} ,
e per n elementi distinti P1, . . . , Pn di Fq, consideriamo la seguente applicazione:
e = eP1,...,Pn : Lk → Fnqf 7→ (f(P1), . . . , f(Pn)) .
Osserviamo innanzitutto che e e lineare. Inoltre e e iniettiva, dato che un polinomio
non nullo in Lk puo avere al massimo k − 1 zeri. Pertanto il codice C := e(Lk) ha
dimensione k. Il codice C e detto codice Reed-Solomon (codice RS in breve). Sia
x = (f(P1), . . . , fn(P )) ∈ C e assumiamo che w(x) = w. Allora f ha n − w zeri, e
quindi n−w ≤ k− 1. In particulare, n− d ≤ k− 1, dove d e la distanza minima di C.
Quindi n − k ≤ d − 1, e questo significa che C e un codice MDS. Si noti che siccome
1, X, . . . , Xk−1 e una base di Lk, una matrice generatrice di C e:1 1 . . . 1
P1 P2 . . . PnP 2
1 P 22 . . . P 2
n...
......
...
P k−11 P k−1
2 . . . P k−1n
CAPITOLO 2. CODICI LINEARI 40
Diamo ora una prima generalizzazione della costruzione precedente. Sia v =
(v1, . . . , vn), dove gli vi sono elementi non nulli (non necessariamente distinti) di Fq.Allora il codice che consiste dei vettori
(v1f(P1), . . . , vnf(Pn))
con f ∈ Fq[X] e deg(f) ≤ k − 1, e detto codice Reed Solomon Generalizzato (GRS in
breve). Si noti che per v = (1, 1, . . . , 1) tale codice e il codice Reed Solomon.
Capitolo 3
Curve algebriche piane
3.1 Definizioni
Le definizioni e le proprieta fondamentali riguardanti le curve algebriche piane reali o
complesse dovrebbero essere gia note al lettore dai corsi del primo e del secondo anno.
In questa sezione tali nozioni saranno rapidamente riviste in un contesto piu genererale,
ovvero quello delle curve algebriche definite su un campo qualsiasi.
Nel corso di questo capitolo per K intenderemo un campo algebricamente chiuso,
generalmente coincidente con la chiusura algebrica di un campo finito Fq.
In questo corso per curva algebrica definita su K intenderemo una classe di proporzio-
nalita di polinomi omogenei in tre indeterminate a coefficienti in K. Per indicare che
la curva X e rappresentata dal polinomio F (X0, X1, X2) scriveremo usualmente
X : F (X0, X1, X2) = 0 .
L’idea intuitiva di curva intesa come insieme di punti si realizza nella definizione di
supporto.
Definizione 3.1. Sia X : F (X0, X1, X2) = 0 una curva algebrica defnita su K. Il
supporto di X si definisce come l’insieme dei punti del piano proiettivo P2(K) le cui
coordinate omogenee (X0 : X1 : X2) soddisfano l’equazione
F (X0, X1, X2) = 0 .
41
CAPITOLO 3. CURVE ALGEBRICHE PIANE 42
Si noti che due curve distinte possono avere lo stesso supporto; si pensi ad esempio alle
curve algebriche
X : X1 = 0, Y : X21 = 0 .
Osserviamo che essendo le coordinate di un punto definite a meno di proporzionalita ,
l’omogeneita di F e necessaria altrimenti si potrebbe avere
F (X0, X1, X2) = 0, F (λX0, λX1, λX2) 6= 0 .
Se il polinomio F (o un suo multiplo scalare) e tale che i suoi coefficienti appartengono
ad un sottocampo L di K, diremo che X e una curva definita su L. Si noti comunque
che anche se una curva e definita su un sottocampo (possibilmente non algebricamente
chiuso, come ad esempio un campo finito), per definizione nell’insieme dei punti del
suo supporto includiamo anche i punti con coordinate nella chiusura algebrica L.
Con abuso di linguaggio spesso indicheremo il supporto di una curva X :
F (X0, X1, X2) = 0 con lo stesso simbolo X ; inoltre con l’espressione punto di una
curva X intenderemo il concetto di punto del supporto di una curva X .
Esempio 3.2. Si consideri la curva X : X20 + 2X2
1 = 0 definita sopra il campo finito
con 5 elementi F5. Se ci limitassimo ai soli punti con coordinate in F5, X sarebbe
costituita dal solo (0 : 1 : 0). Nella chiusura algebrica di F5 esiste pero un elemento
γ tale che γ2 = −2. E allora ad esempio anche il punto di coordinate (γ : 1 : 0) e un
punto di X .
Definizione 3.3. Sia X : F (X0, X1, X2) = 0 una curva algebrica. Il grado d del
polinomio F si dice ordine di X .
Definizione 3.4. Una curva algebrica si dice irriducibile se e definita da un polinomio
F irriducibile su K[X0, X1, X2].
Si noti che l’irriducibilita di F su un sottocampo di K non e sufficiente per garantire
l’irriducibilita della curva. Si consideri ad esempio la curva reale X : F (X0, X1, X2) = 0,
con F = X20 +X2
1 . Chiaramente F e irriducibile su R, ma in C[X0, X1, X2] si ha
X20 +X2
1 = (X0 + iX1)(X0 − iX1) ,
CAPITOLO 3. CURVE ALGEBRICHE PIANE 43
pertanto X si compone delle due rette di equazioni X0 + iX1 = 0 e X0 − iX1 =
0. Geometricamente, una curva X e irriducibile se e solo se non esiste una curva
propriamente contenuta in X .
Supponiamo ora che X : F (X0, X1, X2) non sia irriducibile. Ricordiamo che
K[X0, X1, X2] e dominio a fattorizzazione unica, e scriviamo il polinomio F come
prodotto di potenze di fattori irriducibilli (a due a due non proporzionali)
F = F r11 · F r2
2 · · ·F rss .
Diremo allora che le curve Xi : Fi(X0, X1, X2) = 0 sono le componenti irriducibili di
X , e che ri e la molteplicita di Xi come componente di X . Chiaramente l’insieme dei
punti di X e l’unione degli insiemi dei punti delle curve Xi.
Per praticita di calcolo, si preferisce in molte situazioni fare uso di coordinate non
omogenee per i punti e di polinomi non omogenei per le curve.
Sia `∞ la retta di P2(K) di equazione X0 = 0. Per ogni punto P di P2(K) non su `∞di coordinate omogenee (X0 : X1 : X2), si ponga
X =X1
X0
, Y =X2
X0
(cio e possibile essendo X0 6= 0). La coppia (X, Y ) e detta la coppia delle coordinate
affini di P . Scrivendo P = (X, Y ) intenderemo che P e il punto di coordinate omogenee
(1 : X : Y ). I punti di P ∈ P2(K) \ `∞ vengono detti punti affini di P2(K).
Se il punto P ∈ P2(K) \ `∞ appartiene a una curva X : F (X0 : X1 : X2) = 0, si avra
F (1, X, Y ) = F
(1,X1
X0
,X2
X0
)= F (X0, X1, X2) = 0 .
Si ponga F∗(X, Y ) = F (1, X, Y ). Il polinomio F∗ si dice il disomogeneizzato di F , e
l’equazione F∗(X, Y ) = 0 si chiama equazione affine di X .
Il processo si puo anche invertire. Se si ha un polinomio non omogeneo F (X, Y ) di
grado positivo d, il suo omogeneizzato F ∗(X0, X1, X2) si definisce come
F ∗(X0, X1, X2) = Xd0F
(X1
X0
,X2
X0
).
CAPITOLO 3. CURVE ALGEBRICHE PIANE 44
Esercizio 37. Con K = C, sia F = X2 − Y 3 + 3XY + 5. Si calcoli F ∗. Sia F = X2.
Si calcoli F ∗.
Esercizio 38. Provare che (F ∗)∗ = F . Provare che in generale non e vero che (F∗)∗ =
F .
Si puo dimostrare il seguente teorema.
Teorema 3.5. L’applicazione di omogeneizzazione stabilisce una biiezione fra i poli-
nomi in K[X, Y ] di grado d, e i polinomi in K[X0, X1, X2] omogenei di grado d che
non sono divisi da una potenza di X0.
In virtu di tale risultato, le curve che non hanno `∞ come componente sono in biie-
zione con i polinomi irriducibili in due indeterminate X, Y ; gli zeri di tali polinomi
corrispondono alle coordinate affini dei punti della curva che non giacciono sulla retta
`∞. Scrivendo X : F (X, Y ) = 0, F irriducibile, intenderemo la curva di equazione
omogenea F ∗(X0, X1, X2) = 0.
Concludiamo questa sezione osservando che le proiettivita di P2(K) agiscono in modo
naturale sulle curve algebriche. Sia φ la proiettivita φ indotta dalla matrice A, e sia
X : F (X0, X1, X2) una curva algebrica. Allora definiamo φ(X ) come la curva algebrica
definita dal polinomio
FA(X0, X1, X2) := F ((X0, X1, X2) · A−1).
Osserviamo che i punti di φ(X ) sono i trasformati dei punti di X mediante φ. Infatti,
se
(Y0, Y1, Y2) = (X0, X1, X2) · A
con (X0 : X1 : X2) ∈ X , allora
FA(Y0, Y1, Y2) = F ((Y0, Y1, Y2) ·A−1) = F ((X0, X1, X2) ·A ·A−1) = F (X0, X1, X2) = 0,
e quindi (Y0 : Y1 : Y2) ∈ φ(X ).
3.2 Punti semplici e singolari
Sia X : F (X0, X1, X2) = 0 una curva di ordine d definita su K, e sia P = (x0 : x1 : x2)
un punto di X . Sia ` una qualunque retta passante per P che non sia una componente
CAPITOLO 3. CURVE ALGEBRICHE PIANE 45
di X . Se Q = (y0 : y1 : y2) e un qualunque punto di ` distinto da P , avremo che il
generico punto di ` avra coordinate omogenee
(λx0 + µy0 : λx1 + µy1 : λx2 + µy2) , λ, µ ∈ K, (λ, µ) 6= (0, 0).
Sia FP,Q(λ, µ) il polinomio omogeneo
FP,Q = F (λx0 + µy0 : λx1 + µy1 : λx2 + µy2) .
Chiaramente gli zeri di FP,Q corrispondono ai punti comuni di X e `. Si noti che FP,Qnon puo essere identicamente nullo in quanto ` non e contenuta in X . Pertanto FP,Qha grado d. Essendo K algebricamente chiuso si avra
FP,Q = aΠdi=1(aiλ− biµ) ,
per qualche ai, bi ∈ K, i = 1, . . . , d. Si noti quindi che le coppie non proporzionali di
zeri di FP,Q sono al massimo d, e pertanto i punti comuni a X e ` saranno al piu d. Si
e pertanto provata la seguente proposizione.
Proposizione 3.6. Una curva algebrica di ordine d e una retta che non sia una sua
componente si incontrano in al piu d punti.
Definizione 3.7. Si definisce molteplicita di intersezione di X e ` nel punto P il
massimo intero m per cui µm divide FP,Q.
Si puo dimostrare che tale intero m non dipende dalla scelta di Q ma solo da ` e P .
Inoltre, se ` e componente di X , diremo che la molteplicita di intersezione di X e ` nel
punto P e infinita.
Nel caso in cui il punto P sia affine, i calcoli si possono semplificare di molto. Sia
X : F (X, Y ) = 0 e sia P = (x, y) un punto affine di X . Sia ` una retta per P . Se
Q = (a, b) e un altro punto affine di `, il generico punto affine di ` avra coordinate
affini
(x+ t(a− x), y + t(b− y)) .
La molteplicita di intersezione di X e ` nel punto P si puo allora calcolare come
molteplicita di t = 0 come radice del polinomio in t
F (x+ t(a− x), y + t(b− y)) .
CAPITOLO 3. CURVE ALGEBRICHE PIANE 46
Esercizio 39. Con K = C, sia X : XY 2 + 3X2 + 2X2Y 2, P = (0, 0), ` : X + 3Y = 0.
Si calcoli la molteplicita di intersezione di X e ` nel punto P .
Esercizio 40. Con K = C, sia X : X30 + 3X2
0X1 + 2X31 − 4X1X
22 , P = (0 : 0 : 1),
` : X0 +X1 = 0. Si calcoli la molteplicita di intersezione di X e ` nel punto P .
Vale il seguente teorema.
Teorema 3.8. Sia P un punto di una curva algebrica X di ordine d. Allora esiste un
intero s, 1 ≤ s ≤ d, tale che:
• la generica retta per P incontra X in P con molteplicita maggiore o uguale di s;
• esistono al piu s rette per P che incontrano X in P con molteplicita maggiore s.
L’intero s del Teorema precedente si indica con mP (X ). Se mP (X ) = 1, allora P si
dice punto semplice di X . Altrimenti, P si dice punto singolare di molteplicita mP (X ).
Le rette per P che incontrano la curva X con molteplicita maggiore di mP (X ) in P si
dicono tangenti principali (o semplicemente tangenti) di X in P .
Esercizio 41. Si dimostri che il punto affine O = (0, 0) e punto semplice di una curva
X : F (X, Y ) = 0 se e solo se il grado minimo dei monomi di F e esattamente 1.
L’esercizio precedente si puo generalizzare nel seguente modo. Sia X : F (X, Y ) = 0
una curva di ordine d passante per O = (0, 0). Si scriva
F (X, Y ) = Fd(X, Y ) + Fd−1(X, Y ) + . . .+ Fm(X, Y ),
con Fi(X, Y ) polinomio omogeneo di grado i. Allora mO(X ) = m. Inoltre, scrivendo
φm come prodotto di m polinomi di primo grado (non necessariamente distinti), si ha
che le tangenti principali di X in O sono le rette corrispondenti a tali polinomi.
Per la ricerca dei punti singolari di una curva algebrica si danno i seguenti criteri.
Teorema 3.9. Sia X : F (X, Y ) = 0 una curva e sia P = (a, b) un punto di X . Allora
P e singolare se e solo se
FX(a, b) = FY (a, b) = 0 .
Se P e semplice, un’equazione della retta tangente a X in P e
FX(a, b)(X − a) + FY (a, b)(Y − b) = 0 .
CAPITOLO 3. CURVE ALGEBRICHE PIANE 47
La versione in coordinate omogenee e la seguente.
Teorema 3.10. Sia X : F (X0, X1, X2) = 0 una curva e sia P = (a : b : c) un punto
di X . Allora P e singolare se e solo se
FX0(a, b, c) = FX1(a, b, c) = FX2(a, b, c) = 0 .
Se P e semplice, un’equazione della retta tangente a X in P e
FX0(a, b, c)X0 + FX1(a, b, c)X1 + FX2(a, b, c)X2 = 0 .
Si noti che se la caratteristica del campo base e 0, allora la condizione che P = (a : b : c)
sia un punto della curva e automaticamente soddisfatta se (a, b, c) annulla le tre derivate
parziali di F . Cio segue dal Teorema di Eulero sui polinomi omogeneei di grado m:
mF = X0FX0 +X1FX1 +X2FX2 .
Esempio 3.11. Sia K un campo di caratteristica 2 e sia X : X21X2 −X3
0 +X20X2. In
tal caso FX0 = X20 , FX1 = 0, FX2 = X2
1 −X20 = (X1 −X0)2. Pertanto P = (a : b : c) e
singolare se e solo se a = 0, b = a. Quindi P = (0 : 0 : 1) e l’unico punto singolare di
X .
Esempio 3.12. Sia X : X50 +X5
1 +X52 . Si vede che FX0 = 5X4
0 , FX1 = 5X41 , FX2 = 5X4
2 .
Se la caratteristica p di K e diversa da 5, allora X e non singolare. Altrimenti, ogni
punti di X e singolare. Per p = 5, X e infatti riducibile essendo F = (X0 +X1 +X2)5.
Esempio 3.13 (quartica di Klein). Sia K di caratteristica 2, e sia X : X30X1 +X3
1X2 +
X32X0. Si vede che FX0 = X2
0X1 + X32 , FX1 = X2
1X2 + X30 , FX2 = X2
2X0 + X31 .
Assumiamo che P = (a : b : c) sia singolare. Allora (i) a2b = c3 e (ii) a3b+b3c+c3a = 0
implicano b3c = 0. Se b = 0, allora (i) implica c = 0 e quindi (iii) FX1(P ) = 0 a sua
volta implica a = 0. Se c = 0, allora b = 0 da (i), e di nuovo a = 0 da (iii). Cio significa
che X e non singolare.
Esempio 3.14 (curva Hermitiana ). Sia X la curva definita su Fq da F = Xq0X2 +
X0Xq2−X
q+11 . Siccome FX0 = Xq
2 , FX1 = −Xq1 e FX2 = Xq
0 , la curva X e non singolare.
CAPITOLO 3. CURVE ALGEBRICHE PIANE 48
3.3 Risultante di due polinomi
Ricordiamo rapidamente la definizione e le principali proprieta del risultante di due
polinomi.
Sia D un dominio a fattorizzazione unica, e sia D[T ] l’anello dei polinomi su D. Siano
f(T ) = a0 +a1T + . . .+anTn e g(T ) = b0 +b1T + . . .+bmT
m due polinomi a coefficienti
in D di grado rispettivo n e m (ovvero supponiamo che anbm 6= 0). Si definisce
risultante di f e g l’elemento di D calcolato come determinante della seguente matrice
(m+ n)× (m+ n)
RT (f, g) = det
a0 a1 . . . an 0 . . . 0
0 a0 a1 . . . an 0 . . . 0...
...
0 . . . a0 a1 . . . anb0 b1 . . . bm 0 . . . 0
0 b0 b1 . . . bm 0 . . . 0...
...
0 . . . b0 b1 . . . bm
le cui prime m righe sono i coefficienti a0, . . . , an, mentre le successive n righe sono
formate dai coefficienti b0, . . . , bn.
Teorema 3.15. Esistono un polinomio p1 di grado minore o uguale di m e un polinomio
p2 di grado minore o uguale di n, entrambi a coefficienti in A, non entrambi nulli, tali
che
RT = p1f + p2g .
Dimostrazione. Notiamo che per ogni a ∈ A, due polinomi p′1 di grado minore o uguale
di m e p′2 di grado minore o uguale di n tali che
a = p′1f + p′2g .
corrispondono alle un sistema lineare a coefficienti in A, le cui incognite sono i
coefficienti di p′1 e p′2 e la cui matrice ha come determinante proprio RT (f, g).
Se RT (f, g) = 0, il rango della matrice del sistema omogeneo
0 = p′1f + p′2g
CAPITOLO 3. CURVE ALGEBRICHE PIANE 49
e minore di (m + n), per cui tale sistema ha una soluzione non nulla nel campo dei
quozienti di A. Eliminando i denominatori si ottiene la relazione voluta.
Supponiamo quindi che RT (f, g) 6= 0. Il sistema
1 = p′1f + p′2g .
ha una e una sola soluzione p′1, p′2 nel campo dei quozienti di A. Ponendo p1 =
RT (f, g)p′1 e p2 = RT (f, g)p′2 si ha che p1 e p2 hanno coeffienti in A per la regola
di Cramer. Chiaramente RT = p1f + p2g, e la dimostrazione e conclusa.
Siano ora F,G polinomi in r indeterminate a coefficienti in un campo K, diciamo F,G ∈K[X1, X2, . . . , Xr]. Ponendo A = K[X1, . . . , Xr−1], e possibile vedere F e G come
polinomi in A[Xr], e quindi calcolarne il risultante RXr(F,G), che sara un elemento
di K[X1, . . . , Xr−1]. Si noti in virtu del Teorema 3.15, per ogni r-pla (a1, . . . , ar) di
elementi di K che annulla sia F che G, si ha che (a1, . . . , ar−1) annulla RXr(F,G).
3.4 Intersezione di due curve
Per studiare l’intersezione di due curve algebriche X e Y definite su un campo K
iniziamo dal considerare la parte affine delle due curve. Sia quindi X : F (X, Y ) = 0,
Y : G(X, Y ).
Teorema 3.16. L’insieme dei punti affini comuni a due curve prive di componenti
comuni e un insieme finito.
Dimostrazione. Si calcoli RY (F,G), polinomio in K[X]. Se RY (F,G) e identicamente
nullo allora dal Teorema 3.15 segue che
p1(X)F (X, Y ) = p2(X)G(X, Y )
per due polinomi p1, p2 non identicamente nulli. Essendo G ed F senza fattori in
comune, ne segue che G(X, Y ) divide p1(X) e F (X, Y ) divide p2(X). Quindi sia F che
G sono polinomi in X privi di radici in comune, e l’asserto segue immediatamente.
Supponiamo allora che RY (F,G) non sia identicamente nullo. Sia quindi
RY (F,G) = aΠri=1(X − ai) .
CAPITOLO 3. CURVE ALGEBRICHE PIANE 50
Per quanto detto alla fine della sezione precedente, ogni punto di intersezione di X e
Y dovrebbe trovarsi su una retta di equazione affine X = ai per qualche i. Ma allora,
ancora grazie alla Proposizione 3.6, il numero di punti comuni a X e Y sarebbe al piu
dr, ove d e l’ordine di X .
Corollario 3.17. I punti comuni a due curve prive di componenti comuni sono in
numero finito.
Dimostrazione. L’asserto segue immediatamente dal teorema precedente e dalla
Proposizione 3.6 applicata alla retta `∞.
Il concetto di molteplicita di intersezione di una curva e una retta si generalizza grazie
al teorema seguente.
Teorema 3.18. Esiste ed e unica una applicazione I che associa a due curve X :
F (X0, X1, X2) = 0 e Y : G(X0, X1, X2) = 0 e ad un punto P un elemento I(P,X ∩Y) ∈Z≥0 ∪ {∞} con le seguenti proprieta :
1. I(P,X ∩ Y) e un intero non negativo se e solo se X e Y non hanno componenti
comuni passanti per P ;
2. I(P,X ∩ Y) = 0 se e solo se P /∈ X ∩ Y;
3. I(P,X ∩ Y) = 1 se X e Y sono rette distinte per P ;
4. I(P,X ∩ Y) = I(P,Y ∩ X );
5. Se P e affine, I(P,X ∩ Y) = I(P,X ∩ Z), dove Z : HF∗ + G∗ = 0 per qualche
H ∈ K[X, Y ];
6. Se Z : GH = 0, allora I(P,X ∩Z) = I(P,X ∩Y)+I(P,X ∩Y ′), dove Y ′ : H = 0;
7. I e invariante per proiettivita .
Non ci preoccuperemo della dimostrazione di questo risultato, ma piuttosto del
ricordare un efficiente procedimento di calcolo dell’intero I(P,X ∩ Y).
A meno di proiettivita , e possibile supporre che le curve prive di componenti comuni
X : F (X, Y ) = 0 e Y : G(X, Y ) = 0 ed il punto P soddisfino le seguenti proprieta :
CAPITOLO 3. CURVE ALGEBRICHE PIANE 51
• P = (a, b) sia affine;
• Y∞ = (0 : 0 : 1) non sia punto ne di X , ne di Y ;
• su ogni retta di equazione X = a vi sia al piu un punto di X ∩ Y ;
• nessuna tangente a X o Y in un punto di X ∩ Y sia di equazione X = a.
Allora I(P,X ∩ Y) e la molteplicita di a come radice del risultante RY (F,G).
Esempio 3.19.
Talvolta il calcolo di I(P,X ∩ Y) puo risultare semplificato. Si puo infatti dimostrare
questo teorema.
Teorema 3.20. Siano X e Y due curve prive di componenti in comune. Allora
I(P,X ∩ Y) ≥ mP (X )mP (Y);
inoltre l’uguaglianza vale se e solo se ogni tangente a X in P non e tangente a Y in
P .
Un metodo ancora piu veloce per il calcolo di I(P,X ∩Y) si puo descrivere nel caso in
cui P sia un punto semplice di una delle due curve, diciamo X . Sia X : F (X, Y ) = 0
e Y : G(X, Y ) = 0. A meno di proiettivita possiamo supporre che P coincida con
O = (0, 0), e che la tangente di X in O sia la retta di equazione X = 0. Se tale retta
non e tangente principale di Y in O, allora possiamo utilizzare il teorema precedente e
concludere che I(O,X ∩ Y) = mO(Y). Altrimenti, si avra :
F (X, Y ) = Fd(X, Y )+ . . .+F2(X, Y )+X, G(X, Y ) = Ge(X, Y )+ . . .+XGm−1(X, Y )
dove d e l’ordine di X , e e l’ordine di Y , m = mO(Y), Fi (risp. Gj) e omogeneo di
grado i (risp. j). Ora, poniamo H = G−Gm−1F e consideriamo la curva Z : H = 0.
Dalla proprieta 6 della molteplicita di intersezione segue che
I(O,X ∩ Y) = I(O,X ∩ Z) .
Scriviamo H come somma di polinomi omogenei di grado decrescente:
H = Hl + . . .+Hm′ .
CAPITOLO 3. CURVE ALGEBRICHE PIANE 52
Per costruzione, m′ > m. A questo punto avremo due possibilita . Se X non divide
Hm′ , allora possiamo concludere dal Teorema 3.20 che I(O,X ∩ Z) = m′. Se invece
X divide Hm′ , allora iteriamo il procedimento. L’algoritmo dovra concludersi dopo un
numero finito di passi in quanto e noto a priori che I(O,X ∩Y) e finito, e ad ogni passo
cresce l’intero m tale che I(O,X ∩ Y) > m.
Esercizio 42. Con K = C, si calcoli la molteplicita di intersezione nel punto (0, 0)
delle seguenti coppie di curve:
• X : Y 3 −X2 = 0, Y : 6Y 5 − 2Y 5X + 4X2 − 2Y 2 + 2X = 0;
• X : 3X2 + 2XY − 3X, Y : X3 + 5X3Y − 6Y 4.
Concludiamo questa sezione riportando il famoso Teorema di Bezout, di cui omettiamo
la dimostrazione.
Teorema 3.21. Due curve algebriche prive di componenti comuni di ordine rispettivo
m e n si incontrano in esattamente mn punti, contati con molteplicita .
3.5 Il campo delle funzioni razionali
D’ora in avanti in questo capitolo supporremo sempre che una curva algebrica X :
F (X0, X1, X2) sia priva di punti singolari. Va precisato che tale restrizione e molto
forte, tuttavia limitarsi alle curve non-singolari e l’unico modo per introdurre in mo-
do rapido i Codici Algebrico-Geometrici. Per studiare in modo appropriato i Codici
Algebrico-Geometrici su curve qualsiasi e necessaria una preparazione di base molto
forte in Geometria Algebrica (quale potrebbe essere quella di un intero corso semestrale
ad essa dedicato).
Cominciamo osservando che una curva non-singolare e necessariamente irriducibile. In
caso contrario, dalla proprieta 6 della molteplicita di intersezione, avremmo che ogni
punto comune a due sue componenti (non necessariamente distinte) sarebbe un punto
singolare per la curva.
Sia allora X : F (X, Y ) = 0, con F polinomio irriducibile a coefficienti in K. Con (F )
denoteremo l’ideale principale di K[X, Y ] generato da F .
CAPITOLO 3. CURVE ALGEBRICHE PIANE 53
Definizione 3.22. L’anello delle coordinate affini di X e definito come l’anello
quoziente
K[X ] = K[X, Y ]/(F )
Si noti che siccome un elemento α = G + (F ) ∈ K[V ] a meno di polinomi che si
annullano du X , esso induce una funzione ben definita α : X \ `∞ → K, α(a1, a2) =
f(a1, a2). Con un piccolo abuso di notazione scriveremo spesso α invece di α. Inoltre,
notiamo che K[X ] e un dominio di integrita siccome (F ) e un ideale primo. Pertanto
si puo considerare il suo campo dei quozienti.
Definizione 3.23. Il campo delle funzioni razionali K(X ) di X e il campo dei quozienti
di K[X ].
Una descrizione esplicita di K(X ) e
K(X ) =
{G+ (F )
H + (F )| G,H ∈ K[X, Y ], H /∈ (F )
}dove
G1 + (F )
H1 + (F )=G2 + (F )
H2 + (F )se F | G1H2 −G2H1.
Nota 3.24. Si noti che K(X ) = K(x, y) dove x = X + (F ), y = Y + (F ). Infatti, sia
α ∈ K(X ), α = G(X,Y )+(F )H(X,Y )+(F )
. Allora semplicemente per definizione di somma e prodotto
in K[X ], α = G(x,y)H(x,y)
. Questo prova che K(X ) ⊂ K(x, y). L’altra inclusione e ovvia.
Notiamo che G ∈ (F ) implica G(x, y) = 0.
Diversamente dagli elementi di K[X ], una funzione razionale α ∈ K(X ) puo non dar
luogo a una funzione genuina sui punti affini di X , dato che il suo denominatore puo
annullarsi in qualche punto. Se per P = (a1, a2) ∈ X esistono G,H ∈ K[X, Y ],
H(a1, a2) 6= 0, tali che α =G+ (F )
H + (F ), la funzione razionale α si dice regolare (or
definita) in P . In questo caso α(P ) =G(a1, a2)
H(a1, a2)e ben definito.
Esempio 3.25. Sia F (X, Y ) = X+X2+Y 2+Y 3. Sia α ∈ K(X ), α =X +X2 + (F )
Y + (F ), e
si ponga P = (0, 0). Apparentemente, α non e regolare in P , ma siccomeX+X2+(F ) =
−Y 2 − Y 3 + (F ), α =−Y 2 − Y 3 + (F )
Y + (F )=−Y − Y 2 + (F )
1 + (F ). Quindi α e definita in P
e α(P ) = 0.
CAPITOLO 3. CURVE ALGEBRICHE PIANE 54
Il campo delle funzioni razionali K(X ) puo essere rappresentato in modo equivalente
a partire dall’equazione omogenea di X . Sia quindi F (X0, X1, X2) omogeneo, e sia
Kh(X ) = K[X0, X1, X2]/(F ) .
Essendo F irriducibile Kh(X ) e dominio di integrita . Consideriamo allora il seguente
sottocampo L del campo dei quozienti di Kh(X ):
L =
{G+ (F )
H + (F )| G,H ∈ K[X0, X1, X2] omogenei, deg(H) = deg(G), H /∈ (F )
}.
Proposizione 3.26. Se X non e la retta `∞, allora il campo L e isomorfo a K(X ).
Dimostrazione. Ricordiamo che un’equazione affine di X e F∗(X, Y ) = 0, e pertanto
K(X ) =
{G+ (F∗)
H + (F∗)| G,H ∈ K[X, Y ], H /∈ (F∗)
}.
Si definisca un’applicazione ψ : L→ K(X ) ponendo
ψ
(G+ (F )
H + (F )
)=G∗ + (F∗)
H∗ + (F∗).
Si lascia al lettore la verifica che ψ e ben definita, e che e un isomorfismo di campi.
D’ora in avanti useremo indifferentemente le due rappresentazioni, affine e omogenea,
del campo delle funzioni razionali di X . Osserviamo che:
• nella rappresentazione omogenea si chiede sempre che numeratore e denominatore
di una funzione razionale abbiano lo stesso grado;
• nella rappresentazione omogenea il concetto di funzione razionale definita in un
punto si estende anche ai punti di X ∩ `∞.
3.6 Valutazioni
Richiamiamo innanzitutto alcuni concetti di Algebra.
CAPITOLO 3. CURVE ALGEBRICHE PIANE 55
Un anello commutativo R si dice Noetheriano se ogni ideale di R e generato da un
numero finito di elementi di R. Si puo dimostrare che R e Noetheriano se e solo se
per ogni catena ascendente di ideali I1 ⊂ I2 ⊂ I3 ⊂ . . . in R, esiste n ≥ 1 tale che
In+1 = In+2 = In+3 = . . . . Un campo K e sempre Noetheriano dato che K non contiene
ideali non banali.
Teorema 3.27 (Teorema della Base di Hilbert). Sia R un anello Noetheriano. Allora
l’anello dei polinomi R[X] e Noetheriano.
Corollario 3.28. Sia K un campo. Allora K[X1, . . . , Xn] e Noetheriano.
Dimostrazione. Si usi il Teorema della Base di Hilbert, e si proceda per induzione su
n.
Le seguenti condizioni sono equivalenti per un anello R:
1) L’insieme degli elementi non invertibili di R forma un ideale.
2) R ha un unico ideale massimale che contiene tutti gli ideali propri di R.
L’affermazione segue dal fatto che ogni ideale contenente un elemento invertibile deve
coincidere con l’intero anello. Un anello che soddisfa le condizioni appena descritte si
dice anello locale.
Torniamo ora alle curve algebriche. Sia X : F (X, Y ) = 0 e sia P = (a1, a2) un punto
affine di X .
Definizione 3.29. L’ anello locale di X in P e il sottoanello K[X ]P di K(X ) costituito
dalle funzioni di K(X ) che sono definite in P .
Proposizione 3.30. L’anello K[X ]P e un dominio locale Noetheriano.
Dimostrazione. Chiaramente K[X ]P e un dominio essendo contenuto nel campo K(X ).
Per provare che K[X ]P e Noetheriano, si fissi un ideale I ⊂ K[X ]P . Sia I ′ = I ∩K[X ]. Dato che K[X ] e Noetheriano (essendo per definizione un quoziente di un anello
Noetheriano), I ′ =< g1 + (F ), . . . , gs + (F ) > in K[X ] per qualche gi ∈ K[X, Y ]. Sia
α ∈ I. Allora c’e un polinomio b ∈ K[X, Y ], b(a1, a2) 6= 0, tale che (b + (F ))α ∈
CAPITOLO 3. CURVE ALGEBRICHE PIANE 56
K[X ] ∩ I = I ′. Pertanto (b+ (F ))α = (b1g1 + . . .+ bsgs) + (F ) per qualche polinomio
b1, . . . , bs, ovvero
α =b1 + (F )
b+ (F )g1 + . . .+
bs + (F )
b+ (F )gs .
Questo dimostra che I =< g1 + (F ), . . . , gs + (F ) > in K[X ]P .
Proviamo ora che K[X ]P e anello locale. Sia I = {α ∈ K[X ]P | α(P ) = 0}. Chia-
ramente I e un ideale proprio. Supponiamo che esista un ideale J $ K[X ]P non
contenuto in I e sia x ∈ J \ I. Si noti che x e invertibile in K[X ]P , dato che x(P ) 6= 0
implica che x−1 =1
xe definita in P . Pertanto l’ideale < x > contiene l’intero anello
K[X ]P , dato che ogni α ∈ K[X ]P puo essere scritto comeα
xx. Ma cio contraddice
< x >⊂ J $ K[X ]P .
L’insieme delle funzioni razionali di K(X ) che si annullano in P sara denotato MP .
Dalla dimostrazione precedente, MP e l’ideale massimale dell’anello locale K[X ]P .
Proposizione 3.31. Sia X una curva algebrica e sia P ∈ X . Se P e semplice, allora
MP e un ideale principale.
Dimostrazione. Senza restrizione sia P = (0, 0), e la retta tangente di X in P sia
Y = 0. Si puo immediatamente verificare che MP =< x, y >. Inoltre, f(X, Y ) =
Y + f(X, Y ) dove tutti i monomi di f hanno grado maggiore o uguale di 2. Si scriva
f = Y h(Y ) +Xs(X, Y ) con s(0, 0) = 0, h(0) = 0. Allora f(x, y) = 0 implica
y = −x(s(x, y)
1 + h(y)
).
Si noti ches(x, y)
1 + h(y)∈ K[X ]P siccome h(0) = 0, pertanto y ∈< x > e < x, y >=< x >.
La dimostrazione e cosı conclusa.
Definizione 3.32. Sia P punto semplice di una curva algebrica X . Un parametro
locale di X in P e un generatore di MP .
I risultati seguenti seguono dalla Proposizione 3.31.
CAPITOLO 3. CURVE ALGEBRICHE PIANE 57
Corollario 3.33. Sia X una curva algebrica, e P ∈ X un punto semplice. Sia l :
aX+bY +c = 0 una retta per P , distinta dalla tangente a X in P . Allora t = ax+by+c
e un parametro locale di X in P .
In termini proiettivi, si ha un risultato analogo.
Corollario 3.34. Sia X una curva algebrica di equazione F (X0, X1, X2) = 0, e P un
suo punto semplice. Sia l1 : aX0 + bX1 + cX2 = 0 una retta per P , distinta dalla
tangente a X in P . Sia inoltre l2 : a′X0 + b′X1 + c′X2 = 0 una qualsiasi retta non
passante per P . Allora
t =aX0 + bX1 + cX2 + (F )
a′X0 + b′X1 + c′X2 + (F )
e un parametro locale di X in P .
Un dominio locale Noetheriano tale che il suo ideale massimale e principale si dice anello
di valutazione discreta (DVR). La seguente proposizione spiega come una funzione
ordine su K(X ) possa essere associata a P .
Proposizione 3.35. Sia X una curva algebrica e sia t un parametro locale di X in
P . Allora per ogni α ∈ K[X ]P , α 6= 0, esiste un unico m ∈ Z, m ≥ 0, e un unico
u ∈ K[X ]P invertibile, tali che α = utm.
Dimostrazione. Supponiamo che tali m e u non esistano. Cio implica che se α = uti,
i ≥ 0, u ∈ K[X ]P , allora u non e invertibile, i.e. u ∈ MP . In particolare, α ∈ MP
dato che α = αt0. Definiamo induttivamente una sequenza di elementi ui ∈ K[X ]P .
Sia u1 ∈ K[X ]P con α = u1t, e per i > 1 sia ui ∈ K[X ]P tale che ui−1 = uit. Un tale
ui esiste dato che α = ui−1ti−1, e quindi ui−1 ∈ MP . Si noti che < ui−1 >$< ui >,
altrimenti ui = βui−1 = βuit per qualche β ∈ K[X ]P , e t sarebbe invertibile essendo
βt = 1. Pertanto la catena ascendente di ideali
< u1 >$< u2 >$ . . . $< ui >$ . . .
da luogo a una contraddizione essendo K[X ]P Noetheriano.
Per provare l’unicita si assuma utm = vts with m < s. Pertanto u = vts−m ∈ MP , che
contraddice il fatto che u e invertibile in K[X ]P .
CAPITOLO 3. CURVE ALGEBRICHE PIANE 58
Corollario 3.36. Sia X una curva algebrica, e sia t un suo parametro locale in un
suo punto semplice P . Allora per ogni α ∈ K(X ), α 6= 0, esiste un unico m ∈ Z, e un
unico u ∈ K[X ]P invertibile, tali che α = utm.
Dimostrazione. Ogni α ∈ K[X ]P , α 6= 0, si puo scrivere come quozienteβ
γcon β, γ
in K[X ]P . Dalla Proposizione 3.35, β = utm, γ = vts per due interi m, s e per due
elementi invertibili u, v ∈ K[X ]P . Pertanto α = (uv−1)tm−s. L’unicita puo essere
dimostrata come nella dimostrazione della Proposizione 3.35.
Esercizio 43. Si provi che l’intero m del Corollario 3.6 non dipende dalla scelta del
parametro locale t.
Definizione 3.37. Sia P punto di una curva algebrica non singolare X , e sia α ∈ K(X ),
α 6= 0. L’ ordine ordP (α) di α in P e l’intero m tale che α = utm, con u invertibile in
K[X ]P e t parametro locale in P . Per α = 0 si ponga ordP (0) =∞.
Si noti che K[X ]P coincide con l’insieme {α ∈ K(X ) | ordP (α) ≥ 0}, mentre MP =
{α ∈ K(X ) | ordP (α) > 0}.
Gli ordini di funzioni razionali hanno le seguenti proprieta elementare, la cui
dimostrazione e lasciata come esercizio.
Proposizione 3.38. Sia X una curva algebrica non singolare, e sia P un punto di X .
Allora
1. ordP (αβ) = ordP (α) + ordP (β) per ogni α, β ∈ K(X ) (e quindi ordP (αm) =
m · ordP (α) per ogni intero m);
2. ordP (α + β) ≥ min{ordP (α), ordP (β)} per ogni α, β ∈ K(X ); se ordP (α) 6=ordP (β) allora vale l’uguaglianza;
3. ordP (a) = 0 per ogni a ∈ K.
Definizione 3.39. Un punto P di una curva algebrica non singolare X e detto zero
di molteplicita m per α ∈ K(X ) se ordP (α) = m > 0, polo di molteplicita −m se
ordP (α) = m < 0.
CAPITOLO 3. CURVE ALGEBRICHE PIANE 59
Esempio 3.40. Sia X : Y = 0. I punti affini di X sono Pa = (a, 0), dove a varia
in K. Sia α = X2 + (F ) ∈ K(X ). Chiaramente α e definito in Pa per ogni a, e
α(Pa) = a2. Pertanto tra i punti Pa, l’unico zero di α e P0. Per il corollario 3.33 la
funzione t = X + (F ) e parametro locale in P0. Dato che α = t2, si ha ordP0(α) =
ordP0(t2) = 2ordP0(t) = 2, cioe P0 e uno zero di α di molteplicita due.
Esempio 3.41. Sia K = C e sia X : X2 + Y 2 − 1 = 0. Sia α =X(X − 1)2 + (F )
(Y − 1)2 + (F ).
Calcoliamo gli ordini di α nei punti P1 = (1, 0) e P2 = (0, 1). Si scriva α = Xu2, dove
u =X − 1 + (F )
Y − 1 + (F ). Dato che X e definita in P1 e X(P1) = 1, si ha che ordP1(X) = 0.
Per calcolare ordP1(u) si noti che in K(X ) si ha:
(X − 1)(X + 1) + (F )
(Y − 1)2 + (F )=
Y 2 + (F )
(Y − 1)2 + (F ),
ovvero u = h1h2 dove h1 =Y + (F )
Y − 1 + (F ), h2 =
Y + (F )
X + 1 + (F ). Per il Corollario 3.33 sia
h1 che h2 sono parametri locali in P1, e pertanto ordP1(α) = ordP1(X)+2ordP1(h1h2) =
0 + 2 + 2 = 4, cioe P1 e uno zero di α di molteplicita 4.
Per il Corollario 3.33 x e un parametro locale in P2. Si noti che
(Y − 1)(Y + 1) + (F )
(X − 1)2 + (F )=
X2 + (F )
(X − 1)2 + (F ),
cioe u−1 = g1g2 dove g1 = − X + (F )
X − 1 + (F ), g2 =
X + (F )
Y + 1 + (F ). Possiamo usare di
nuovo il Corollario 3.33 per affermare che sia g1 che g2 sono parametri local in P2.
Riassumento, ordP2(α) = ordP2(X) + ordP2(g−21 g−2
2 ) = 1− 2− 2 = −3. Pertanto P2 e
un polo di α di molteplicita 3.
Il prossimo teorema, di cui omettiamo la dimostrazione, fornisce una diversa prospettiva
sulla molteplicita di una funzione in un punto, e, soprattutto, un algoritmo per il suo
calcolo. Nell’enunciato si usa la rappresentazione omogenea di K(X ).
Teorema 3.42. 3.6 Sia α una funzione razionale della curva non singolare X :
F (X, Y ) = 0, e sia P un punto affine di X . Si scriva α come classe di un quoziente
di due polinomi:
α =G+ (F )
H + (F ).
CAPITOLO 3. CURVE ALGEBRICHE PIANE 60
Siano inoltre Y e Z le curve di equazione Y : G(X, Y ) = 0, Z : H(X, Y ) = 0. Allora
ordP (α) = I(P,Y ∩ X )− I(P,Z ∩ X ) .
Dimostrazione. Supponiamo per semplicita che P sia affine. Sia aX + bY + c = 0
l’equazione di una retta passante per P non tangente a X in P , e sia t = aX +
bY + c + (F ) il parametro locale di X in P corrispondente. Si ponga inoltre m =
ordP (α). Per definizione di ordine, esiste u ∈ K[X ]P , u invertibile, tale che α = tmu.
Dall’invertibilita di u segue che
u =G1 + (F )
H1 + (F )
per qualche G1, H1 che non si annullano in P . Da
α =G1(aX + bY + c)m + (F )
H1 + (F )
segue che F divide GH1 − G1HG1(aX + bY + c)m, ovvero esiste un polinomio Q ∈K[X, Y ] tale che
QF +G1H(aX + bY + c)m = GH1.
Dalla proprieta 5 della molteplicita di intersezione segue che
I(P,X ∩ {GH1 = 0}) = I(P,X ∩ {G1H(aX + bY + c)m = 0}),
e quindi dalla proprieta 6 si ha che I(P,X ∩ {G = 0}) + I(P,X ∩ {H1 = 0}) coincide
con
I(P,X ∩ {G1 = 0}) + I(P,X ∩ {H = 0}) +mI(P,X ∩ {aX + bY + c = 0}).
Dato che l’equazione aX + bY + c = 0 rappresenta una retta per P non tangente, si ha
I(P,X ∩ {aX + bY + c = 0}) = 1. Inoltre, dato che G1, H1 che non si annullano in P ,
si ottiene I(P,X ∩ {G1}) = I(P,X ∩ {H1}) = 0. Pertanto l’asserto e dimostrato.
La versione proiettiva del Teorema e la seguente
Teorema 3.43. Sia α una funzione razionale della curva non singolare X :
F (X0, X1, X2) = 0, e sia P un punto di X . Si scriva α come classe di un quoziente di
due polinomi omogenei dello stesso grado:
α =G+ (F )
H + (F ).
CAPITOLO 3. CURVE ALGEBRICHE PIANE 61
Siano inoltre Y e Z le curve di equazione Y : G(X0, X1, X2) = 0, Z : H(X0, X1, X2) =
0. Allora si ha che
ordP (α) = I(P,Y ∩ X )− I(P,Z ∩ X ) .
Teorema 3.44. Sia X una curva algebrica non singolare. Allora ogni funzione α ∈K(X ) non nulla ha lo stesso numero di zeri e di poli, contati con molteplicita .
Dimostrazione. L’asserto segue dal Teorema precedente e dal Teorema di Bezout.
Il numero di zeri (o di poli) di una funzione puo essere interpretato algebricamente nel
modo seguente.
Teorema 3.45. Sia α ∈ K(X ), α /∈ K. Allora il numero di zeri di α coincide con il
grado dell’estensione di campi
K(X ) : K(α) .
Esercizio 44. Sia X : F (X, Y ) = 0. Si dimostri il teorema precedente per α = x.
(Suggerimento: si ricordi che K(X ) = K(x, y), e che F (x, y) = 0).
3.7 Divisori
Sia X una curva algebrica piana non singolare.
Il gruppo abeliano libero generato dai punti di X e chiamato il gruppo dei divisori di
X . I suoi elementi sono detti divisori di X . In altre parole, un divisore D e una somma
formale finita di punti di X , ovvero D =∑
P∈X npP , dove nP e un intero, diverso da
0 solo per un numero finito di punti di X .
Il supporto di D si definisce come supp(D) := {P ∈ X | nP 6= 0}. Due divisori
D =∑
P∈X npP e D′ =∑
P∈X n′pP si sommano in modo naturale
D +D′ :=∑P∈X
(np + n′P )P .
L’elemento neutro del gruppo dei divisori e∑
P∈X nPP con nP = 0 per ogni P ∈ X .
Sara denotato come 0.
CAPITOLO 3. CURVE ALGEBRICHE PIANE 62
Un ordine parziale nel gruppo dei divisori e definito da
D ≤ D′ ⇔ nP ≤ n′P per ogni P ∈ X .
Se nP ≥ 0 per ogni P ∈ X diremo che D e positivo o effettivo. Il grado di D e la somma
degli interi nP , ovvero deg(D) =∑
P∈X np.
Ad ogni funzione razionale f non nulla si associa in modo naturale un divisore: (f) :=∑ordP (f)P . Tale divisore e il divisore nullo se e solo se f e costante. Se viceversa
f /∈ K, allora (f) si puo scrivere come differenza di due divisori effettivi: (f) =
(f)0 − (f)∞, dove (f)0 =∑
ordP (f)>0 ordP (f)P e il divisore degli zeri di f , e (f)∞ =∑ordP (f)<0−ordP (f)P e il divisore dei poli di f .
Esempio 3.46. Siano X e f definiti come nell’Esempio 3.40. Allora (f) = 2P0− 2P∞.
Due divisori D e D′ sono detti linearmente equivalenti se D − D′ = (f) per qualche
funzione razionale f .
Il concetto che introduciamo adesso giochera un ruolo cruciale nel seguito. Dato un
divisore D =∑npP , l’insieme di tutte le funzioni razionali f tali che ordP (f) ≥ −nP
in ogni punto P (comprendente anche la funzione nulla), si dice spazio associato a D
e si denota con L(D). Per un divisore effettivo D, L(D) consiste di quelle funzioni f
tali che tutti i poli di f appartengono al supporto di D, e la molteplicita di ogni polo
P di f e minore o uguale di nP . Si verifica facilmente che L(D) e uno spazio vettoriale
su K, la cui dimensione si indica con `(D). Si denoti con DX il gruppo dei divisori di
X . Proveremo il seguente lemma.
Lemma 3.47. Sia D ∈ DX .
1. Se D′ e linearmente equivalente a D, allora L(D) e isomorfo a L(D′) (come
spazio vettoriale su K);
2. se deg(D) < 0 allora L(D) = {0};
3. L(0) = K.
Dimostrazione. 1. Siccome D e D′ sono equivalenti esiste z ∈ K(X ) tale che D =
D′ + (z). Si definisca l’applicazione ϕ : L(D) → K(X ), x 7→ xz. Chiaramente
CAPITOLO 3. CURVE ALGEBRICHE PIANE 63
ϕ e K-lineare e la sua immagine e contenuta in L(D′): ordP (xz) = ordP (x) +
ordP (z) ≥ −nP + ordP (z) = −n′P per ogni P ∈ X . Inolte ϕ e biiettiva dato che
ψ : L(D′)→ L(D), x 7→ xz−1 e una sua inversa.
2. Supponiamo che esista x ∈ L(D) con x 6= 0. Allora D′ := D + (x) e effettivo e
linearmente equivalente a D. Pertanto 0 ≤ deg(D′) = deg(D), in contraddizione
con l’ipotesi.
3. Chiaramente K e contenuto in L(0). D’altro canto ogni elemento in L(0) non ha
poli, e quindi e necessariamente costante.
Una limitazione superiore alla dimensione di L(D) si puo dimostrare abbastanza
facilmente.
Proposizione 3.48. Sia D un divisore tale che D ≥ 0. Allora
dimK(L(D)) ≤ deg(D) + 1 .
Dimostrazione. Proviamo l’asserto per induzione su deg(D). Se deg(D) = 0, allora
D ≥ 0 implica D = 0. Dal Lemma 3.47 segue dunque che
dimK(L(D)) = dimK(L(0)) = dimK(K) = 1 = deg(D) + 1 .
Supponiamo allora che deg(D) > 0. Allora esiste P ∈ X tale che nP > 0. Sia
D′ = D − P . Essendo D′ ≥ 0 e deg(D′) = deg(D) − 1, per ipotesi induttiva si
ha dimK(L(D′)) ≤ deg(D). Per completare la dimostrazione rappresenteremo L(D′)
come nucleo di una applicazione lineare di L(D) in K. Sia t parametro locale di X in
P . Osserviamo che per ogni α in L(D) si ha ordP (tnPα) = nP + ordP (α) ≥ 0, ovvero
tnPα e definita in P . Pertanto l’applicazione
Φ : L(D)→ K, α 7→ (tnPα)(P )
e ben definita. Si verifica immediatamente che Φ e lineare. Inoltre, α ∈ Ker(Φ) se e
solo se P e uno zero di tnPα, ovvero
ordP (tnPα) > 0⇔ ordP (α) ≥ (nP − 1)⇔ (α) +D′ ≥ 0.
CAPITOLO 3. CURVE ALGEBRICHE PIANE 64
Pertanto, Ker(Φ) coincide con L(D′). Essendo
dimK(L(D)) = dimK(Ker(Φ)) + dimK(Im(Φ))
l’asserto segue da dimK(Ker(Φ)) ≤ deg(D) e dimK(Im(Φ)) ≤ 1.
Nota 3.49. Si noti che la condizione D ≥ 0 nella proposizione precedente puo essere
facilmente sostituita da deg(D) ≥ 0. Infatti se dimK(L(D)) = 0, allora non c’e niente
da dimostrare essendo 0 < deg(D) + 1; altrimenti esiste una funzione razionale α tale
che (α) + D ≥ 0. Dal Lemma 3.47 si ha allora che i divisori (α) + D e D oltre ad
avere lo stesso grado sono tali che L(D) e L((α) +D) sono isomorfi. Pertanto
dimK(L(D)) = dimK(L((α) +D)) ≤ deg(D) + 1 .
Esempio 3.50. Esaminiamo la curva X definita su F2 da X31 +X3
2 +X30 . Sia D = 2P ,
con P = (1 : 0 : 1) ∈ X . Cerchiamo elementi in L(D), ovvero funzioni razionali
che hanno un polo di molteplicita al piu 2 in P , e che sono definite in tutti gli altri
punti. Chiaramente ogni costante e contenuta in L(D). Esistono funzioni razionali non
costanti in L(D)? Osserviamo che la retta tangente a X in P e la retta X0 +X2 = 0;
tale retta incontra X nel solo punto P , con molteplicita 3. Osserviamo allora che ogni
funzione di tipo
α =L(X0, X1, X2)
X0 +X2
,
con L polinomio di primo grado, ha polo solo in P , e tale polo ha molteplicita al
massimo 3. Per far sı che ordP (α) sia maggiore o uguale di −2 bastera fare in modo
che L rappresenti una retta passante per P diversa dalla tangente. Ad esempio, si ha
che
α :X1
X2 +X0
∈ L(D) .
Dato che α e 1 sono chiaramente linearmente indipendenti su K, la dimensione di L(D)
e almeno 2. Vedremo in seguito che in realta vale l’uguaglianza.
Esempio 3.51. Sia X : F (X0, X1, X2) = 0 una curva algebrica non singolare di ordine
d > 3. Sia D∞ il divisore
D∞ =∑P∈`∞
I(P,X ∩ `∞)P .
CAPITOLO 3. CURVE ALGEBRICHE PIANE 65
Si ponga W = (d−3)D∞. Si osservi che il grado di W e d(d−3). Inoltre, ogni funzione
αi0,i1,i2 =X i0
0 Xi11 X
i22
Xd−30
= xi1 yi2
con i0, i1, i2 non negativi, i0 + i1 + i2 = d − 3, appartiene a L(W ). Le possibilita per
gli indici i0, i1, i2 sono in numero di
1 + 2 + . . .+ (d− 2) =(d− 1)(d− 2)
2.
Inoltre le funzioni αi0,i1,i2 sono linearmente indipendenti su K, altrimenti F dovrebbe
dividere un polinomio di grado d − 3. Pertanto la dimensione di L(W ) e almeno(d−1)(d−2)
2. Vedremo in seguito che vale l’uguaglianza.
3.7.1 Il Teorema di Riemann-Roch
Il Teorema di Riemann-Roch e uno dei teoremi piu famosi della Geometria Algebrica.
Sia X : F (X0, X1, X2) e sia d il grado di X . Poniamo g = (d − 1)(d − 2)/2; tale
intero si dice il genere di X 1. Diremo che un divisore W e un divisore canonico se
deg(W ) = 2g − 2 e `(W ) = g.
Teorema 3.52 (Teorema di Riemann-Roch). Dato un divisore D di una curva
algebrica X ,
`(D) = deg(D) + 1− g + `(W −D)
dove W e un qualsiasi divisore canonico.
Calcolare `(W −D) in generale non e facile. Se pero il grado di D e sufficientemente
grande, tale intero risulta essere uguale a zero
Corollario 3.53. Per ogni divisore D tale che deg(D) ≥ 2g − 1, si ha
`(D) = deg(D) + 1− g1Il genere di una curva algebrica e il piu importante invariante birazionale. Nel caso di curve
singolari o di curve non piane, la definizione di genere e piu complessa
CAPITOLO 3. CURVE ALGEBRICHE PIANE 66
Dimostrazione. Dal Teorema di Riemann-Roch segue `(D) = deg(D)+1−g+`(W−D),
essendo W un divisore canonico. Siccome deg(D) ≥ 2g − 1 e deg(W ) = 2g − 2,
abbiamo che deg(W − D) < 0. Da (2) del Lemma 3.47 segue che `(W − D) = 0, da
cui l’asserto.
Nel caso di curve non singolari e facile descrivere i divisori canonici.
Lemma 3.54. Sia D tale che deg(D) = 0. Allora `(D) ≤ 1.
Dimostrazione. L’asserto segue dalla Nota 3.49.
Proposizione 3.55. Il divisore D = (d− 3)D∞, dove
D∞ =∑P∈`∞
I(P,X ∩ `∞)P ,
e un divisore canonico
Dimostrazione. Osserviamo innanzitutto che il grado di D e uguale a d(d−3) = 2g−2.
Dal Teorema di Riemann-Roch allora si ha che
`(D) = 2g − 2 + 1− g + `(W −D),
dove W e un qualsiasi divisore canonico. Essendo deg(W −D) = 0, dal Lemma 3.54
segue che `(D) ≤ g. Nell’esempio 3.51 si e dimostrato che `(D) ≥ g, da cui `(D) = g
e quindi l’asserto.
Esercizio 45. Si provi che utti i divisori canonici di una curva algebrica sono linear-
mente equivalenti. (Suggerimento: si dimostri che, per due divisori canonici W1 e W2,
si ha `(W1 −W2) = 1).
Esempio 3.56. z Sia q una potenza di un primo, e sia X : F = 0, F = X2, K = Fq.Conserviamo la notazione usata nell’Esempio 3.40. Per un intero k, 1 ≤ k ≤ q, sia
D = (k − 1)P∞. Proveremo che L(D) coincide con lo spazio vettoriale
V =
{f(X0, X1) + (F )
Xk−10 + (F )
| f(X0, X1) ∈ Fq[X0, X1], omogeneo, deg(f) = k − 1
}.
CAPITOLO 3. CURVE ALGEBRICHE PIANE 67
Mostriamo innanzitutto che V ⊆ L(D). Per una funzione f ∈ V si scriva
f = (a0Xk−10 + a1X1X
k−20 + . . .+ ak−1X
k−11 )/Xk
0 .
Allora f = a0f0 + a1f1 + . . .+ ak−1fk−1, dove fi = (X1/X0)i. Siccome per il Corollario
3.33 f−11 e un parametro locale in P∞, la Proposizione 3.38 implica ordP∞(f) = −i0,
essendo
i0 = max{0 ≤ i ≤ k − 1 | i 6= 0} .
Tenendo conto del fatto che f e definita in ogni punto di X diverso da P∞, si ha che
(f)∞ = −i0P∞, e pertanto f ∈ L(D). Per provare l’asserto ora e sufficiente mostrare
che dim(V ) = `(D). Chiaramente dim(V ) = k. Siccome il genere di X e uguale a 0,
per il Corollario 3.53 si che anche `(D) e uguale a k.
Esempio 3.57. Sia X come nell’esempio 3.56. Siano P1 = (1 : a1 : 0), . . . , Pn =
(1 : an : 0) punti distinti di X . Per n elementi non nulli v1, v2, . . . , vn di Fq, sia
U ∈ Fq[X] tale che deg(U) ≤ n − 1 e U(ai) = vi per ogni i, 1 ≤ i ≤ n. Si scriva
U = u0 + u1X + . . . + un−1Xn−1; sia u la funzione razionale su X definita da u =
(u0Xn−10 + u1X1X
n−20 + . . . + un−1X
n−11 )/Xn−1
0 . Ora si consideri lo spazio L(D) con
D = (k − 1)P∞ − (u). Affermiamo che l’insieme
uf0, uf1, . . . , ufk−1,
con fi = (X1/X0)i, costituisce una base di L(D). Dall’ Esempio 3.56 sappiamo che
(fi) = iP0 − iP∞. Pertanto
(ufi) +D = (u) + (fi) + ((k − 1)P∞ − (u)) = iP0 + (k − 1− i)P∞ ≥ 0
cioe ufi ∈ L(D) per ogni i, 0 ≤ i ≤ k − 1. Si lascia come esercizio dimostrare che
le funzioni ufi sono linearmente indipendenti. Per il Corollario 3.53, la dimensione di
L(D) e uguale a k, e pertanto l’asserto e dimostrato.
3.7.2 Divisori one-point
In questa sezione consideriamo divisori di tipo D = mP , m > 0. Le funzioni di L(D)
sono quelle f ∈ K(X ) tali che (f)∞ = lP , l ≤ m. Sia H(P ) il seguente insieme di
interi non negativi:
H(P ) := {l| esiste f ∈ K(X ) con (f)∞ = lP}.
CAPITOLO 3. CURVE ALGEBRICHE PIANE 68
Si vede facilmente che H(P ) e un semigruppo (cioe un insieme chiuso rispetto alla
somma), chiamato il semigruppo di Weierstrass in P . Gli elementi di H(P ) sono
chiamati non-gaps di P , mentre ogni intero s ∈ N \H(P ) e detto gap.
Lemma 3.58. Un intero i e un non-gap in P se e solo se
L((i− 1)P ) $ L(iP )
Dimostrazione. Chiaramente ogni α per cui (α)∞ = −iP appartiene a L(iP ) ma non
a L((i− 1)P ).
In virtu della dimostrazione della Proposizione 3.48, vale anche la caratterizzazione
seguente.
Lemma 3.59. Un intero i e un non-gap in P se e solo se
`((i− 1)P ) = `(iP )− 1 .
Proposizione 3.60. La dimensione di L(mP ) coincide con il numero di non-gaps in
P minori o uguali di m.
Dimostrazione. Si consideri la catena di spazi vettoriali L(0) ⊆ L(P ) ⊆ L(2P ) ⊆ . . . ⊆L(mP ). Dal lemma precedente, per ogni i, 0 ≤ i ≤ m, la differenza `(iP )− `((i− 1)P )
e al piu 1. Inoltre da (3) del Lemma 3.47 si ha che dimL(0) = 1. Questo completa la
dimostrazione.
Proposizione 3.61. Siano i0 = 0, i1, . . . , ir tutti i non-gaps in P minori o uguali di m.
Siano f0, f1, . . . , fr ∈ K(X ) tali che ordP (fi) = −ii. Allora f0, f1, . . . , fr costituiscono
una base di L(mP ).
Dimostrazione. Dalla dimostrazione della proposizione precedente segue
L(0) $ L(i1P ) $ L(i2P ) $ . . . $ L(irP ) = L(mP ) ,
dove `(ijP ) = `(ij−1P )+1. Pertanto, dato che fj ∈ L(ijP )\L(ij−1P ), si ha L(ijP ) =<
L(ij−1P ), fj >. Segue allora che f0, f1, . . . , fr sono linearmente indipendenti, e che
L(mP ) =< f0, f1, . . . , fr > .
L’asserto e dunque provato.
CAPITOLO 3. CURVE ALGEBRICHE PIANE 69
Proposizione 3.62. Ogni intero i ≥ 2g e un non-gap in ogni punto P ∈ X .
Dimostrazione. Essendo 2g − 1 ≤ i− 1 < i, dal Teorema di Riemann-Roch segue che
`((i− 1)P ) = i− 1 + 1− g, `(iP ) = i+ 1− g .
Pertanto
`((i− 1)P ) = `(iP )− 1.
Proposizione 3.63. Ci sono esattamente g gaps in ogni punto P ∈ X .
Dimostrazione. Il Corollario 3.53 implica che `(2gP ) = g + 1. Dalla Proposizione 3.60
il numero di non-gaps in P che sono minori o uguali di 2g is g + 1. Pertanto, dalla
Proposizione 3.62 il numero di gaps in P e g.
Corollario 3.64. Se g ≥ 1 allora esiste almeno un gap in ogni punto P ∈ X . Inoltre
1 e un gap in ogni P ∈ X .
Esempio 3.65. Fissiamo le notazioni come nell’Esempio 3.50. Siccome il genere di Xe uguale 1, il solo gap in P e 1. Dalla Proposizione 3.60 segue `(2P ) = 2.
3.7.3 La curva Hermitiana
Sia X : Xq+11 −Xq
2X0−Xq0X2 = 0 curva definita sopra la chiusura algebrica del campo
finito Fq. Tale curva si dice curva Hermitiana, e vedremo nel prossimo capitolo che e
un oggetto molto rilevante in teoria dei codici. In questa sezione ne vedremo alcune
proprieta preliminari.
Si verifica facilmente che X e non singolare. Il suo genere g e quindi uguale a q(q−1)/2.
Si vede anche direttamente che l’unico punto di X appartenente alla retta `∞ : X0 = 0
e il punto P∞ = (0 : 0 : 1). Si vede facilmente che la tangente a X in P∞ e proprio la
retta all’infinito `∞, e che
I(P∞;X ∩ `∞) = q + 1 .
Definiamo x = X1
X0, y = X2
X0. Osserviamo che
ordP∞(x) = I(P∞;X ∩X1 = 0)− I(P∞;X ∩ `∞) = 1− (q + 1) = −q,
CAPITOLO 3. CURVE ALGEBRICHE PIANE 70
e
ordP∞(y) = I(P∞;X ∩X2 = 0)− I(P∞;X ∩ `∞) = 0− (q + 1) = −q − 1.
Inoltre dato che X0 non si annulla in nessun altro punto di X si ha che x e y hanno un
unico polo in P∞; pertanto
(x)∞ = qP∞, (y)∞ = (q + 1)P∞ .
Proposizione 3.66. Sia r un intero positivo. Una base di L(mP∞) e costituita dalle
funzioni
{xiyj | iq + j(q + 1) ≤ m, i ≥ 0, 0 ≤ j ≤ q − 1} .
Dimostrazione. Osserviamo innanzitutto che due elementi dell’insieme {xiyj | iq +
j(q + 1) ≤ m, i ≥ 0, 0 ≤ j ≤ q − 1} hanno ordine diverso in P∞. Infatti, se fosse
iq + j(q + 1) = i′q + j′(q + 1), supponendo senza restrizione j′ ≥ j, si avrebbe
(j′ − j)(q + 1) = (i− i′)q .
Essendo j′ − j un intero minore di q, ed essendo MCD(q, q + 1) = 1, non e possibile
che q divida il primo membro a meno che j = j′, nel qual caso si deve pero anche avere
i = i′.
Bastera ora provare che il semigruppo di Weierstrass H(P∞) coincide con l’insieme
{iq + j(q + 1) | i ≥ 0, 0 ≤ j ≤ q − 1} .
A tale scopo, osserviamo intanto che nell’insieme {iq+ j(q+ 1) | i ≥ 0, 0 ≤ j ≤ q− 1}si trovano almeno (q2− q)/2 = g elementi e minori o uguali di 2g− 1 = q(q− 1)− 1 =
q2− q− 1. Cio dipende dal fatto che le somme iq+ j(q+ 1) con 0 ≤ i+ j ≤ q− 2 sono
in numero di (q2 − q)/2.
Resta quindi da dimostrare che ogni intero n maggiore di 2g − 1 = q2 − q − 1 si
puo esprimere come combinazione di q e q + 1. Procediamo per induzione su n. Se
n = iq + j(q + 1) con i > 0, allora n + 1 = (i − 1)q + (j + 1)(q + 1); se n = j(q + 1)
con j = q − 1, allora n + 1 = q2 = iq con i = q (se n = j(q + 1) con j < q − 1, allora
n ≤ (q − 2)(q − 1) < 2g − 1).
Esercizio 46. Sia X la curva definita sopra il campo finito con 49 elementi da X72X0 +
X2X70 −X8
1 . Sia P = (0 : 0 : 1). Si trovino basi degli spazi L(10P ), L(20P ) e L(30P ).
CAPITOLO 3. CURVE ALGEBRICHE PIANE 71
Esercizio 47. Si consideri la quartica di Klein sopra F4, ovvero la curva algebrica di
equazione affine X : X3Y +Y 3 +X = 0. Sia P = (0, 0). Si calcoli una base dello spazio
L(nP ) per ogni intero positivo n. Suggerimento: si calcoli innanzitutto l’ordine in P
delle funzioni x e y; successivamente si considerino le funzioni yi/xj con j > i ≥ 0 e si
determini il semigruppo H(P ).
Esercizio 48. Si calcoli esplicitamente la dimensione dello spazio L(nP ) per la curva
Hermitiana sopra il campo finito con 16 elementi, ove P = (0 : 0 : 1).
Esercizio 49. Sia X : X7 + Y 7 − 1 = 0 sopra il campo finito con 16 elementi. Sia
P = (0, 1). Si calcoli L(nP ) per ogni intero n. Suggerimento: si considerino le funzioni
xiyj
(y + 1)i+j.
3.8 Morfismi di curve algebriche
Siano X : F (X0, X1, X2) = 0 e Y : G(X0, X1, X2) = 0 due curve algebriche piane
irriducibili.
Definizione 3.67. Una mappa razionale di X in Y e un elemento
ϕ = (α0 : α1 : α2)
di P2(K(X )) , con la seguente proprieta : per ogni punto P ∈ X in cui α0, α1, α2 sono
definite si ha
ϕ(P ) = (α0(P ) : α1(P ) : α2(P )) ∈ Y
(a meno che αi(P ) = 0 per ogni i).
Si noti che una mappa razionale ϕ non e necessariamente una funzione definita in tutti
i punti di X . Comunque talvolta e possibile calcolare ϕ(P ) anche in punti P di Xdove qualche αi non e definita, semplicemente rimpiazzando ogni αi con λαi per un
opportuno λ ∈ K(X ) non nullo.
Definizione 3.68. Una mappa razionale
ϕ : X → Y , ϕ = (α0 : α1 : α2)
e regolare (o definita) in P ∈ X se esiste una funzione λ ∈ K(X ), λ 6= 0 tale che
CAPITOLO 3. CURVE ALGEBRICHE PIANE 72
(i) ogni λαi e definita in P ,
(ii) per qualche i0, (λαi0)(P ) 6= 0.
Se una tale funzione λ esiste, si ponga
ϕ(P ) = ((λα0)(P ) : (λα1)(P ) : (λα2)(P )).
Definizione 3.69. Una mappa razionale
ϕ : X → Y , ϕ = (α0 : α1 : α2)
che e regolare in ogni punto P ∈ X si dice morfismo.
Proposizione 3.70. Sia P ∈ X un punto non singolare, e ϕ : X → Y una mappa
razionale. Allora ϕ e definita in P . In particolare, se X e non singolare, allora ϕ e un
morfismo.
Dimostrazione. Si scriva ϕ = (α0 : α1 : α2) con αi ∈ K(X ) e si scelga un parametro
locale t in P . Siano eP = −mini=0,1,2{ordP (αi)} e i0 l’intero tale che eP = −ordP (αi0).
Sin noti che ϕ = (tePα0 : tePα1 : tePα2) e ordP (tePαi) = eP + ordP (αi) ≥ 0. Siccome
ordP (tePαi0) = 0, entrambe le condizioni della Definizione 3.68 sono soddisfatte e
pertanto l’asserto e dimostrato.
Esercizio 50. Sia X : Y −X2 = 0, e sia Y : Y = 0. Si consideri il morfismo di X in Y
ϕ = (1 :x
y: 0) .
Si calcoli ϕ(1 : 0 : 0).
Riportiamo il seguente teorema senza dimostrazione.
Teorema 3.71. Sia ϕ : X → Y un morfismo di curve, con X non singolare. Allora ϕ
e costante o suriettiva.
Esempio 3.72. Sia X una curva non singolare, e sia α ∈ K(X ), α non costante. Sia
Y : Y = 0. Allora ϕ = (1 : α : 0) e un morfismo di X in Y . Si noti che
• gli zeri di α sono tutti e soli i punti P di X tali che ϕ(P ) = (1 : 0 : 0);
CAPITOLO 3. CURVE ALGEBRICHE PIANE 73
• i poli di α sono tutti e soli i punti P di X tali che ϕ(P ) = (0 : 1 : 0).
Sia ϕ : X → Y una morfismo non costante. Comporre una funzione razionale con ϕ
induce la seguente applicazione:
ϕ? : K(Y)→ K(X ), ϕ?(f) = f ◦ ϕ .
Chiaramente ϕ? e un omomorfismo di campi, essendo
(f + g) ◦ ϕ = (f ◦ ϕ) + (g ◦ ϕ), (fg) ◦ ϕ = (f ◦ ϕ)(g ◦ ϕ) .
Inoltre e immediato che gli elementi di K, ovvero le funzioni costanti, sono fissate da
ϕ?. L’omomorfismo ϕ? si dice pull-back di ϕ. Supponiamo ora che Y non sia la retta
di equazione X0 = 0. Sia Y : G = 0, e sia ϕ = (α0 : α1 : α2) con α0 6= 0. Indichiamo
con x e y le funzioni corrispondenti alle coordinate affini di Y , ovvero x = X1+(G)X0+(G)
,
y = X2+(G)X0+(G)
. Allora chiaramente si ha
ϕ?(x) =α1
α0
, ϕ?(y) =α2
α0
.
Ricordiamo inoltre che ogni elemento f di K(Y) si puo scrivere come rapporto
f =g(x, y)
h(x, y)
con g e h polinomi a coefficienti in K. Allora,
ϕ?(f) =g(α1
α0, α2
α0
)h(α1
α0, α2
α0
) .Nota 3.73. Si noti che
ϕ?(K(Y)) = K
(α1
α0
,α2
α0
).
Esempio 3.74. Sia ϕ come nell’Esempio 3.72. Allora ϕ?(K(Y)) = K(α). Si noti come
per il Teorema 3.45 il numero di controimmagini di (1 : 0 : 0) e di (0 : 1 : 0) mediante
ϕ coincide con il grado dell’estensione di campi
K(X ) : K(α) = K(X ) : ϕ?(K(Y)) .
In seguito vedremo che questa osservazione si generalizza ad ogni morfismo.
CAPITOLO 3. CURVE ALGEBRICHE PIANE 74
Esempio 3.75. Sia ϕ come nell’Esercizio 50. Allora ϕ? e una applicazione da K(Y)
in K(X ) definita in questo modo: sia β(x) una funzione di K(Y) (c’e dipendenza dalla
sola x in quanto y = 0); allora ϕ?(β) = β( xy). Inoltre
ϕ?(K(Y)) = K
(x
y
)⊂ K(x, y).
Esempio 3.76. Siano X : X6 + Y 6 + 1 = 0, Y : X2 + Y 3 + 1 = 0. Sia ϕ=(1 : x3 : y2).
Allora ϕ?(K(X )) = K(x3, y2) ⊂ K(X ) = K(x, y).
Enunciamo ora una proprieta molto importante del pull-back di una mappa razionale.
Teorema 3.77. Sia ϕ : X → Y una mappa razionale non costante. Allora l’estensione
di campi K(X ) : ϕ?(K(Y)) e finita.
Il grado dell’estensione K(X ) : ϕ?(K(Y)) e detto grado di ϕ e si denota con deg(ϕ).
Proposizione 3.78. Siano ϕ : X → Y e ψ : Y → Z mappe razionali non costanti.
Allora deg(ψ ◦ ϕ) = deg(ϕ)deg(ψ).
Dimostrazione. Si noti che (ψ ◦ ϕ)?(K(Z)) coincide con ϕ?(ψ?(K(Z))). Infatti, (ψ ◦ϕ)? = ϕ? ◦ ψ? dato che
(ψ ◦ ϕ)?(α) = α ◦ (ψ ◦ ϕ) = (α ◦ ψ) ◦ ϕ = ϕ?(ψ?(α))
per ogni α ∈ K(Z). Pertanto,
[K(X ) : (ψ ◦ ϕ)?(K(Z))] = [K(X ) : ϕ?(ψ?(K(Z)))] =
= [K(X ) : ϕ?(K(Y))][ϕ?(K(Y)) : ϕ?(ψ?(K(Z)))].
Infine si noti che [ϕ?(K(Y)) : ϕ?(ψ?(K(Z)))] = [K(Y) : ψ?(K(Z))] dato che ϕ? e
iniettiva come ogni omomorfismo di campi non costante.
Definizione 3.79. Due curve algebriche X , Y si dicono birazionalmente equivalenti se
esistono due mappe razionali ϕ : X → Y , ψ : Y → X tali che ψ ◦ϕ = idX , ϕ ◦ψ = idY .
In tal caso, ψ si denota con ϕ−1.
Se inoltre esistono due morfismi che definiscono una equivalenza birazionale, allora le
curve sono dette isomorfe.
CAPITOLO 3. CURVE ALGEBRICHE PIANE 75
Esercizio 51. Si mostri che X : X0X2 − X21 = 0 e Y : X2 = 0 sono isomorfe.
(Suggerimento: si provi che ϕ dell’Esercizio 50 e un isomorfismo).
Definizione 3.80. Sia ϕ : X → Y mappa razionale non costante. Allora ϕ si dice
separabile se l’estensione K(X ) : ϕ?(K(Y)) lo e .
Nota 3.81. Ricordiamo che un’estensione algebrica di campi L : K si dice separabile
se per ogni elemento a ∈ L il polinomio minimo di a su K non ha radici multiple (nella
chiusura algebrica di L). Un esempio di estensione non separabile e il seguente. Sia K
campo algebricamente chiuso di caratteristica p, e sia z un elemento non appartenente
a K. Allora
K(z) : K(zp)
e non separabile, in quanto il polinomio minimo di z su K(zp) e T p − zp, che ha una
sola radice contata p volte.
Il seguente teorema puo essere visto come una generalizzazione del fatto che il numero
di zeri di una funzione razionale coincide con il grado di una estensione di campi ad
essa associata.
Teorema 3.82. Sia ϕ : X → Y mappa razionale non costante fra curve non singolari.
Sia d = [K(X ) : ϕ?(K(Y))]. Allora per ogni punto Q ∈ Y,∑P∈ϕ−1(Q)
eP = d ,
dove eP = ordP (ϕ?(t)), con t un qualsiasi parametro locale di Y in Q. Inoltre, se ϕ
e separabile, allora eP = 1 tranne che per al piu un numero finito di punti P ∈ X (e
#ϕ−1(Q) = d per tutti tranne un numero finito di Q ∈ Y).
Si puo dimostrare che se il grado di una mappa razionale non e diviso dalla caratteristica
di K, allora la mappa razionale e separabile e pertanto si puo applicare il Teorema 3.82.
Esempio 3.83. Sia X una curva definita su Fq. Allora
Φ = (1 : xq : yq)
e una mappa razionale di X in se. L’estensione
K(X ) : Φ?(K(X ))
CAPITOLO 3. CURVE ALGEBRICHE PIANE 76
e l’estensione K(x, y) : K(xq, yq). Dimostriamo che il grado di tale estensione e
maggiore o uguale di q.
Lemma 3.84. L’estensione K(x, y) : K(xq, yq) e non separabile e di grado maggiore
o uguale di q.
Dimostrazione. Preliminarmente, si dimostri come esercizio che K(xq, yq) = {αq | α ∈K(x, y)}. Sia ora t un qualunque parametro locale di X in un suo punto P . Si noti
che il polinomio
h(T ) = T q − tq = (T − t)q
e un polinomio a coefficienti in K(xq, yq) di cui t e radice. Pertanto il polinomio minimo
mt(T ) di t su K(xq, yq) divide h(T ). Cio evidentemente implica che
mt(T ) = (T − t)i
per qualche 1 ≤ i ≤ q. Si noti che (−t)i e il termine noto di mt(T ), e pertanto
appartiene a K(xq, yq). Ovvero, (−t)i e potenza q-ma di un’altra funzione razionale,
diciamo α. Ma allora
i = ordP ((−t)i) = ordP (αq) = q · ordP (α).
Essendo ordP (α) intero, ed essendo 1 ≤ i ≤ q, si deve necessariamente avere i = q,
ovvero h(T ) e il polinomio minimo di t su K(xq, yq). Dato che h(T ) ha una sola radice
contata q volte, t non e separabile su K(xq, yq). Inoltre, si ha che il grado dell’estensione
K(xq, yq)(t) : K(xq, yq) e esattamente q. Essendo K(xq, yq)(t) chiaramente contenuto
in K(x, y) si ha che K(x, y) : K(xq, yq) ha grado almeno q.
Si osservi che q non puo essere la cardinalita della generica controimmagine ϕ−1(P ),
in quanto il sistema {xq = a
yq = b
ha un’unica soluzione nella chiusura algebrica di Fq, essendo l’elevamento alla q-ma
potenza un automorfismo del campo.
CAPITOLO 3. CURVE ALGEBRICHE PIANE 77
Esercizio 52. Siano X : X9 + Y 9 + 1 = 0, Y : X9 +X6 + Y 9 = 0 curve definite su un
campo algebricamente chiuso di caratteristica diversa da 3. Sia
ϕ = (1 : x3 : x2y) .
Si dimostri che il grado di tale morfismo e 3. Si dimostri che la controimmagine di un
punto consiste di una terna di tipo{(1 : a : b),
(1 : λa :
b
λ2
),
(1 : λ2a :
b
λ
)}dove λ e radice cubica primitiva dell’unita .
3.9 Curve definite su campi finiti
In questa sezione pertanto supporremo che X : F (X0, X1, X2) = 0 una curva algebrica
irriducibile definita sul campo Fq.
Definiamo le seguenti mappe.
1. σK : K → K , x 7→ xq;
2. σX : X → X , (a0 : a1 : a2) 7→ (σK(a0) : σK(a1) : σK(a2));
3. σK[X0,X1,X2] : K[X0, X1, X2]→ K[X0, X1, X2] ,∑ai0i1i2X
i00 X
i11 X
i22 7→
∑aqi0i1i2X
i00 X
i11 X
i22 ;
4. σK(X ) : K(X )→ K(X ) ,G+ (F )
H + (F )7→
σK[X0,X1,X2](G) + (F )
σK[X0,X1,X2](H) + (F );
5. σD : Div(X )→ Div(X ) ,∑nPP 7→
∑nPσX (P ).
Si lascia come esercizio dimostgrre che le applicazioni in 2) e 4) sono ben definite dato
che X e definita su Fq.
Con abuso di notazione scriveremo σ per ciascuna delle applicazioni di cui sopra,
quando il loro dominio sara chiaro dal contesto.
CAPITOLO 3. CURVE ALGEBRICHE PIANE 78
Definizione 3.85. Sia X una curva proiettiva non singolare definita su Fq.
• L’insieme dei punti Fq-razionali di X , denotato con X (Fq), e l’insieme dei punti
P ∈ X tali che σ(P ) = P . Equivalentemente, e l’insieme dei punti P = (a0 : a1 :
a2) di X per cui esiste λ ∈ K con λa0, λa1, λa2 ∈ Fq.
• L’insieme delle funzioni Fq-razionali di X , denotato con Fq(X ), e l’insieme delle
funzioni α ∈ K(X ) tali che σ(α) = α.
• L’insieme dei divisori Fq-razionali di X , denotato con DivFq(X ), e l’insieme dei
divisori D ∈ Div(X ) tali che σ(D) = D.
Sia Y : G(X0, X1, X2) = 0 un’altra curva algebrica irriducibile definita sul campo Fq.
Definizione 3.86. Una mappa razionale ϕ : X → Y e definita su Fq se ϕ = (α0 : α1 :
α2) per qualche αi ∈ Fq(X ).
Inotlre, X e Y sono dette Fq-birazionalmente equivalenti (risp. Fq-isomorfe) se la mappa
razionale che da luogo alla equivalenza birazionale (risp. isomorfismo) e definita su Fq.
La seguente proposizione tornera utile nel seguito.
Proposizione 3.87. Sia D ∈ DivFq(X ). Allora esiste una base dello spazio L(D)
costituita da elementi in Fq(X ).
Denotiamo con LFq(D) lo spazio vettoriale su Fq che consiste delle funzioni di L(D) ∩Fq(X ). Come conseguenza immediata della proposizione precedente si ha il seguente
risultato.
Corollario 3.88. Sia D ∈ DivFq(X ). Allora dimFqL(D) = `(D).
Esercizio 53. Si provi che se α ∈ Fq(X ) allora il divisore principale (α) appartiene a
DivFq(X ).
CAPITOLO 3. CURVE ALGEBRICHE PIANE 79
3.10 Il gruppo di Picard di una curva algebrica
piana
Sia X : F (X0, X1, X2) una curva algebrica piana non-singolare definita su Fq.
Denotiamo con Div0(X ) il sottogruppo di Div(X ) costituito dai divisori di grado 0, e
con P il sottogruppo dei divisori principali. Dato che ogni divisore principale ha grado
zero (ricordiamo che ogni funzione ha lo stesso numero di zeri e di poli), si ha che P e
un sottogruppo di Div0(X ).
Il gruppo quoziente
Pic0(X ) = Div0(X )/P
si definisce come il gruppo di Picard della curva X .
Il sottogruppo di Pic0(X ) degli elementi fissati dall’applicazione di Frobenius (definita
in modo naturale) costituisce un gruppo abeliano finito.
Capitolo 4
Codici Algebrico-Geometrici
4.1 Costruzioni
In tutto il capitolo faremo uso delle seguenti notazioni.
• X sara una curva definita sopra Fq.
• Fq(X ) (risp. DivFq(X )) denotera il campo delle funzioni razionali definite su Fq(risp. il gruppo degli Fq-divisori) di X .
• Per f ∈ Fq(X ) \ {0}, (f) indichera il divisore associato a f e (f)0 (risp. (f)∞) il
divisore degli zeri (risp. dei poli) di f .
• Per G ∈ DivFq(X ), LFq(G) denotera lo spazio vettoriale associato a G, ovvero
LFq(G) = {f ∈ Fq(X ) \ {0} : G+ (f) ≥ 0} ∪ {0} .
Per semplicita in questo capitolo indicheremo L(G) lo spazio vettoriale LFq(G). Inoltre,
per evitare confusione, un vettore x ∈ Fnq sara indicato sempre come ~x.
Siano P1, . . . , Pn punti Fq-razionali distinti di X , e sia G =∑nPP ∈ DivFq(X ) tale
che il nPi = 0 per ogni i = 1, . . . , n. Sia
e = eP1,...,Pn : L(G)→ Fnqf 7→ (f(P1), . . . , f(Pn)) .
80
CAPITOLO 4. CODICI ALGEBRICO-GEOMETRICI 81
Si noti che tale applicazione e Fq-lineare. Si ponga D := P1 + . . .+ Pn.
Definizione 4.1. Il codice di Goppa associato a D e G e CD,G := e(L(G)).
Esercizio 54. Si provi che il codice Reed-Solomon e un codice di Goppa costruito
dalla curve X : Y = 0, e associato ai divisori D = P1 + . . . + Pn e G = (k − 1)P∞ (cf.
Esempio 3.56).
Esercizio 55. Si provi che il codice Reed-Solomon Generalizzato e un codice di Goppa
costruito dalla curva X : Y = 0 e associato ai divisori D = P1 + . . . + Pn e G =
(k − 1)P∞ + (u) (cf. Esempio 3.57).
Lemma 4.2. Sia k := dim(CD,G) e d la distanza minima di CD,G. Allora
(1) k = `(G)− `(G−D);
(2) d ≥ n− deg(G).
Dimostrazione. (1) L’applicazione e e suriettiva L(G) su CG,D per definizione. Pertanto
k = `(G)− dimKer(e). Si osservi che Ker(e) = L(G−D). Infatti α ∈ Ker(e) se e solo
se
α(Pi) = 0⇔ ordPi(α) ≥ 1 ,
ovvero (α) +G ≥ (P1 + . . .+ Pn)⇒ (α) +G−D ≥ 0. Pertanto (1) e dimostrata.
(2) Sia ~x = (α(P1), . . . , α(Pn)) tale che w(~x) = d. Allora esistono n− d punti, diciamo
Pi1 , . . . , Pin−d , tali che α(Pij) = 0. In altri termini, ordPij (α) ≥ −(−1). Pertanto
α ∈ L(G− Pi1 − . . .− Pin−d).
Il fatto che L(G− Pi1 − . . .− Pin−d) non e vuoto implica che
deg(G− Pi1 − . . .− Pin−d) ≥ 0,
cioe
deg(G) ≥ n− d.
Proposizione 4.3. Sia CD,G un [n, k, d]q-codice di Goppa. Sia g il genere di X .
CAPITOLO 4. CODICI ALGEBRICO-GEOMETRICI 82
(1) Se n > deg(G), allora k = `(G). In particolare, k ≥ deg(G) + 1− g. Inoltre una
matrice generatrice di CD,G e
M :=
f1(P1) . . . f1(Pn)...
......
fk(P1) . . . fk(Pn)
,
dove f1, . . . , fk e una base di L(G) su Fq.
(2) Se n > deg(G) > 2g − 2, allora k = deg(G) + 1− g.
Dimostrazione. (1) Si ha che L(D−G) = 0, e quindi (1) segue dal Lemma 4.2(1) e dal
Teorema di Riemann-Roch.
(2) L’affermazione segue da (1) e dal Corollario 3.53.
Nota 4.4. La disuguaglianza di Singleton, insieme con (1) of della Proposizione 4.3,
per un codice C = CD,G con n > deg(G) implica
n+ 1− g ≤ d+ k ≤ n+ 1 .
In particolare, se la curva X ha genere 0, allora C e MDS.
Nota 4.5. In generale e un problema molto difficile ottenere limitazioni inferiori alla
distanza minima di una classe di codici. Una delle ragioni di interesse dei codici di
Goppa e proprio che per questi codici una limitazione inferiore per d si puo provare
facilmente.
Esercizio 56. La curva X : X3+Y 3+1 = 0 definita sopra il campo finito di ordine 16 ha
9 punti razionali P0, P1, . . . , P8, tutti definiti sul campo finito di ordine 4. Si costruisca
una matrice generatrice per il codice CD,5P0 , dove P0 = (0, 1), D = P1 + . . .+ P8.
Esercizio 57. La quartica di Klein X : X3Y +Y 3+X = 0 definita sopra il campo finito
di ordine 16 ha 17 punti razionali P0, P1, . . . , P16. Si costruisca una matrice generatrice
per il codice CD,9P0 , dove P0 = (0, 0), D = P1 + . . .+ P16.
Esercizio 58. La quartica X : X4 −X2 − Y 3 + Y = 0 definita sopra il campo finito
di ordine 3 ha 10 punti razionali P0, P1, . . . , P9. Si costruisca una matrice generatrice
per il codice CD,8P0 , dove P0 = (0 : 0 : 1), D = P1 + . . .+ P9. Si calcoli inoltre il valore
esatto della distanza minima del codice.
CAPITOLO 4. CODICI ALGEBRICO-GEOMETRICI 83
Esercizio 59. La quintica X : X4 + X + Y 5 + Y 2 = 0 definita sopra il campo finito
di ordine 4 ha 17 punti razionali P0, P1, . . . , P16. Si costruisca una matrice generatrice
per il codice CD,15P0 , dove P0 = (0 : 1 : 0), D = P1 + . . . + P16. Si calcoli inoltre il
valore esatto della distanza minima del codice.
4.2 Codici BCH
I codici Reed-Solomon non sono i soli codici classici che si possono interpretare come
codici di Goppa. In questa sezione vedremo come anche i codici BCH rientrano in
questa categoria.
I codici BCH sono usualmente definiti come segue (si faccia attenzione al fatto che il
codice e definito su un sottocampo Fq′ di Fq e non su Fq).
Sia q = q′m e sia n un divisore di q − 1. Si fissi inoltre un elemento primitivo ω di Fq,e si ponga η = ω
q−1n .
Definizione 4.6. Si fissino due interi l e ∆, con ∆ ≥ 2. Sia C(n, l,∆) il codice avente
come matrice di controllo di paritaηl η2l . . . η(n−1)l 1
ηl+1 η2(l+1) . . . η(n−1)(l+1) 1...
......
......
ηl+∆−2 η2(l+∆−2) . . . η(n−1)(l+∆−2) 1
(4.1)
Il codice ottenuto intersecando C(n, l,∆) con Fnq′ si dice codice BCH di distanza
designata ∆.
E ben noto che il codice BCH appena definito e un [n, k, d]q′-codice con distanza minima
d ≥ ∆. Noi proveremo questo risultato utilizzando la nozione di codice di Goppa.
Sia ora X la curva di equazione X2 = 0. Si ponga P∞ = (0 : 1 : 0) e P0 = (1 : 0 : 0).
Lemma 4.7. Siano a e b due interi con b > 0 e a + b > 0. Lo spazio L(aP0 + bP∞)
ha dimensione a+ b, e una sua base e
x−a, x−a+1, . . . , xb
CAPITOLO 4. CODICI ALGEBRICO-GEOMETRICI 84
Dimostrazione. L’affermazione sulla dimensione segue dal Corollario del Teorema di
Riemann-Roch, tenuto conto che g = 0 e a + b > 0 > 2g − 2. Si osservi che una
funzione xi =(X1+(X2)X0+(X2)
)iha come divisore iP0 − iP∞. Pertanto −a ≤ i ≤ b equivale a
ordP0(xi) = i ≥ −a, ordP0(xi) = −i ≥ −b,
ovvero xi ∈ L(aP0 + bP∞). Resta da provare che le a+ b funzioni
x−a, x−a+1, . . . , xb
sono linearmente indipendenti. Supponiamo per assurdo che una loro combinazione a
coefficienti in K sia nulla in K(X ). Allora esiste un polinomio in x a coefficienti in K
che si annulla su tutti i punti di X . Ma cio e chiaramente impossibile dato che ogni
polinomio ha un numero finito di radici.
Supponiamo ora che K sia la chiusura algebrica Fq di Fq, e siano n, ω e η come sopra.
Si ponga
Pi =(1 : ηi : 0
)per ogni i := 1, . . . , n. Sia inoltre
D = P1 + . . .+ Pn.
Proposizione 4.8. Siano a e b due interi tali che n > a+ b > 0, b > 0. Allora
C⊥D,aP0+bP∞ = CD,−(a+1)P0+(n−b−1)P∞ .
Dimostrazione. Sia C1 = CD,aP0+bP∞ e C2 = CD,−(a+1)P0+(n−b−1)P∞ . Si noti che C1 e C2
sono codici di lunghezza n, e di dimensione rispettiva a+ b+ 1 e n− (a+ b+ 1). Per
provare l’asserto basta quindi dimostrare che C2 ⊆ C⊥1 . Si osservi che ogni potenza di
η e radice n-ma dell’unita in Fq. Dal Lemma precedente una base di C1 e
B1 = {(ηj, η2j, . . . , η(n−1)j, 1) | j ∈ [−a, b]}
mentre una base di C2 e
B2 = {(ηk, η2k, . . . , η(n−1)k, 1) | k ∈ [a+ 1, n− b− 1]}.
CAPITOLO 4. CODICI ALGEBRICO-GEOMETRICI 85
Calcolando il prodotto scalare di due qualsiasi elementi delle due basi si ottiene
ηj+k + η2(j+k) + . . .+ η(n−1)(j+k) + 1,
che, essendo j + k < n, coincide con
(ηj+k)n − 1
ηj+k − 1= 0.
Questo prova l’asserto.
Proposizione 4.9. Il codice C(n, l,∆) della Definizione 4.6 coincide con il codice di
Goppa CD,(l−1)P0+(n−∆−l+1)P∞.
Dimostrazione. Nella dimostrazione della Proposizione precedente si e evidenziato che
{(ηj, η2j, . . . , η(n−1)j, 1) | j ∈ [−a, b]}
e una base di CD,aP0+bP∞ . Pertanto una matrice generatrice di CD,aP0+bP∞ e proprio la
matrice (4.1) dove si sostituiscono l con −a, e ∆ con a+b+2. Cio significa che il codice
C(n, l,∆) coincide con il duale del codice CD,aP0+bP∞ con a = −l e b = ∆− a− 2. Ma
dalla Proposizione precedente tale codice e proprio CD,(l−1)P0+(n−∆−l+1)P∞ .
Teorema 4.10. La distanza minima di un codice BCH e maggiore o uguale della sua
distanza designata.
Dimostrazione. Dalla Proposizione precedente si ha che un codice BCH di distanza
designata ∆ e l’intersezione di un codice CD,(l−1)P0+(n−∆−l+1)P∞ con Fnq′ . La distanza
minima del codice di Goppa CD,(l−1)P0+(n−∆−l+1)P∞ soddisfa la usuale limitazione
d ≥ n− deg(G) = n− deg((l − 1)P0 + (n−∆− l + 1)P∞) = ∆.
Intersecando il codice con Fnq′ il peso minimo di un vettore (non nullo) non puo certo
diminuire. Pertanto l’asserto e dimostrato.
CAPITOLO 4. CODICI ALGEBRICO-GEOMETRICI 86
4.3 Estensione ai punti del supporto di G
In questa sezione vediamo come condizione vPi(G) = 0 puo essere rimossa nella
costruzione di codici algebrico geometrici.
Siano P1, . . . , Pn punti Fq-razionali distinti di X e sia G =∑nPP ∈ DivFq(X ). Sia
nPi = bi. Per ogni punto Pi si scelga un parametro locale ti, e si noti che per ogni
φ ∈ L(G), la funzione tbii · φ e regolare in Pi essendo
ordPi(tbii · φ) = bi + ordPi(φ) ≥ bi + (−bi) = 0.
Sia
e′ = e′P1,...,Pn: L(G)→ Fnqf 7→ ((tb11 f)(P1), . . . , (tbnn f)(Pn)) ,
che e una mappa Fq-lineare. Si denoti D := P1 + . . .+ Pn.
Definizione 4.11. Il codice di Goppa C ′D,G associato a D e G e e′(L(G)).
Si noti che C ′D,G e un’estensione di CD′,G, dove D′ e la somma di quei punti Pi tali che
nPi = 0. Mostriamo ora che i parametri di tale codice continuano a soddisfare le stesse
limitazioni. Le dimostrazioni necessitano solo di piccole modifiche.
Lemma 4.12. Sia k := dim(C ′D,G) e d denoti la distanza minima di C ′D,G. Allora
(1) k = `(G)− `(G−D);
(2) d ≥ n− deg(G).
Dimostrazione.
(1) Sia f ∈ L(G). Allora si ha uno zero in i-ma posizione della parola codice e′(f) se e
solo se Pi e uno zero di tbii f . Pertanto f ∈ Ker(e′) se e solo se ordP (f) > −bi ≥ −(b1−1)
per ogni i, ovvero, f ∈ L(G−D).
CAPITOLO 4. CODICI ALGEBRICO-GEOMETRICI 87
(2) Supponiamo che una parola codice e′(f) abbia n − d zeri, che senza restrizione
possiamo supporre corrispondenti a P1, . . . , Pn−d. Cio significa che ordP (f) > −bi per
ogni i = 1, . . . , n− d, ovvero
f ∈ L(G− (P1 + . . .+ Pn−d)).
Pertanto deg(G)− n+ d ≥ 0.
Proposizione 4.13. Sia C ′D,G un [n, k, d]q-codice. Sia g il genere di X .
(1) Se n > deg(G), allora k = `(G). Inoltre una matrice generatrice di C ′D,G e
M :=
tb11 f1(P1) . . . tbnn f1(Pn)
......
...
tb11 fk(P1) . . . tbnn fk(Pn)
,
dove f1, . . . , fk e una base di L(G) sopra Fq.
(2) Se n > deg(G) > 2g − 2, allora k = deg(G) + 1− g.
Dimostrazione. (1) Si ha che L(D − G) = 0 e quindi (1) segue dal Lemma 4.12(1) e
dal Teorema di Riemann-Roch.
(2) L’affermazione segue da (1) e dal Corollario 3.53.
4.4 Codici di Goppa duali
Consideriamo ora i codici duali dei codici di tipo CD,G.
Sia X una curva algebrica di genere g sopra Fq. Siano P1, . . . , Pn punti Fq-razionali
distinti di X , e sia G =∑nPP ∈ DivFq(X ) tale che nPi = 0 per i = 1, . . . , n. Poniamo
al solito D = P1 + . . .+ Pn.
Proposizione 4.14. Sia C = C⊥D,G il codice duale di CD,G. Se deg(G) > 2g−2, allora
C e un [n, k, d]q-codice con
(a) k = n− deg(G) + g − 1 + `(G−D),
CAPITOLO 4. CODICI ALGEBRICO-GEOMETRICI 88
(b) d ≥ deg(G)− 2g + 2.
Dimostrazione. (a) Segue direttamente da (1) del Lemma 4.2, e da `(G) = deg(G)−g + 1 per deg(G) > 2g − 2.
(b) Sia ~x = (x1, . . . , xn) una parola codice non nulla di C. Senza restrizione si
ordinino i punti P1, . . . , Pn in modo tale che xj 6= 0 per j = 1, . . . , w, e xj = 0 per
w < j ≤ n. Supponiamo per assurdo che w < deg(G)−2g+2. Sia Bi =∑i
j=1 Pj.
Il grado di G − Bw, come quello di G − Bw−1 e allora maggiore di 2g − 2. Dal
Teorema di Riemann-Roch allora si ha che
`(G−Bw−1) = `(G−Bw) + 1 ,
ovvero esiste φ ∈ L(G − Bw−1) \ L(G − Bw). Questo implica che φ(Pj) = 0 per
j = 1, . . . , w−1 e φ(Pw) 6= 0. Poiche G−Bw−1 ≤ G, si ha che φ ∈ L(G), ed inoltre
il prodotto scalare di e(φ) per ~x coincide con φ(Pw) · xw 6= 0, contraddicendo
l’ipotesi che ~x appartenga al duale di CD,G.
Corollario 4.15. Se 2g − 2 < deg(G) < n, allora
(a) k = n− deg(G) + g − 1,
(b) d ≥ deg(G)− 2g + 2.
Dimostrazione. L’asserto e immediata conseguenza del fatto che per un qualsiasi
divisore A, deg(A) < 0 implica `(A) = 0.
Enunciamo un forte legame fra un codice di Goppa e il suo duale.
Proposizione 4.16. Esiste un divisore canonico W tale che
C⊥D,G = CD,D−G+W .
CAPITOLO 4. CODICI ALGEBRICO-GEOMETRICI 89
4.5 Stime sulla distanza minima di Codici di Goppa
duali e Codici di Goppa modificati
In questa sezione prenderemo in esame una modifica della costruzione di Goppa, pro-
posta da Feng e Rao nei primi anni ’90 relativamente al caso D = mP . La rilevanza di
tale variante sta nel fatto che la limitazione inferiore alla distanza minima del codice
duale (cf. Proposizione 4.14) viene talvolta migliorata.
Sia P un punto Fq-razionale di X e sia
H(P ) = {ρ1 = 0 < ρ2 < . . .}
il semigruppo di Weierstrass di X in P . Si ponga ρ0 = 0. Siano inoltre P1, . . . , Pnpunti di X diversi da P .
Denotiamo con C` il codice
C` = C⊥D,G
essendo
G = ρ`P D = P1 + . . .+ Pn.
Supponiamo che n > `+ 1. Cio garantisce che
dim(C`) = n− `.
Inoltre, dato che L(ρ`) ( L(ρ`+1), si ha
C` ) C`+1.
Per ogni ` ≥ 1 sia f` una funzione razionale tale che (f`)∞ = ρ`P . Poniamo
h` = (f`(P1), f`(P2), . . . , f`(Pn)) ∈ Fnq .
Lemma 4.17. Esistono n vettori h`1 , . . . , h`n linearmente indipendenti su Fq.
Dimostrazione. Sia k il massimo numero di vettori di tipo h` linearmente indipendenti.
Siano h`1 , . . . , h`k linearmente indipendenti. Supponiamo per assurdo che k sia minore
di n. Senza restrizione di generalita possiamo supporre che la matrice le cui righe
CAPITOLO 4. CODICI ALGEBRICO-GEOMETRICI 90
sono h`1 , . . . , h`k sia una matrice a scala i cui pivot siano in posizioni (1, 1), (2, 2),
. . ., (k, k) (ricordiamo che le operazioni dell’eliminazione di Gauss lasciano invariato lo
spazio generato dalle righe della matrice). Sia m tale che m > 2g − 2 + k + 1. Allora
m− (k + 1) > 2g − 2, e per il Teorema di Riemann-Roch esiste
f ∈ L(mP − (P1 + . . .+ Pk)) \ L(mP − (P1 + . . .+ Pk+1)).
Pertanto f(P1) = . . . = f(Pk) = 0 ma f(Pk+1) 6= 0. Il vettore
h = (f(P1), f(P2), . . . , f(Pn))
e quindi linearmente indipendente con h`1 , . . . , h`k . Essendo f una funzione che ha polo
solo in P , si ha necessariamente che h = h` per qualche `. E quindi abbiamo raggiunto
una contraddizione.
Per ogni intero ` ≥ 0 si definisca
ν` = #{(i, j) | i ≥ 1, j ≥ 1, ρi + ρj = ρ`+1}.
Si osservi ad esempio che ν0 = 1, dato che ρ1 = 0 e 0 puo essere ottenuto unicamente
come somma 0 + 0 = ρ1 + ρ1. Analogamente ν1 = 2, dato che ρ2 puo essere ottenuto
solo in due modi, precisamente come somma ρ1 + ρ2 e ρ2 + ρ1.
Lemma 4.18. Sia x un vettore del codice C` ma non di C`+1. Allora il peso di x e
maggiore o uguale di ν`.
Dimostrazione. Sia N tale che l’insieme di vettori h1, . . . , hN abbia rango n (N esiste
dal Lemma 4.17). Sia H la matrice N × n le cui righe sono h1, . . . , hN . Osserviamo
quindi che, essendo il rango di H pari a n, per ogni x = (x1, . . . , xn) ∈ Fnq si ha che il
peso di x e pari al rango della matrice
S = H
x1 0 0 . . . 0
0 x2 0 . . . 0...
......
......
0 0 0 . . . xn
H t.
Osserviamo che nella matrice S l’elemento Si,j di posizione (i, j) lo si puo calcolare
come
< x, hihj >,
CAPITOLO 4. CODICI ALGEBRICO-GEOMETRICI 91
essendo hihj il vettore
hihj = (fi(P1)fj(P1), fi(P2)fj(P2), . . . , fi(Pn)fj(Pn)) = ((fifj)(P1), (fifj)(P2), . . . , (fifj)(Pn)).
Supponiamo x ∈ C`. Si ha che
• se ρi + ρj ≤ ρ`, allora Si,j = 0.
Infatti ρi + ρj ≤ ρ` implica fifj ∈ L(ρ`P ), e quindi hihj appartiene al codice duale di
C`.
Supponendo inoltre x /∈ C`+1, abbiamo che
• se ρi + ρj = ρ`+1, allora Si,j 6= 0.
Infatti, ρi+ρj = ρ`+1 implica che fifj e uguale a f`+1 (a meno di una costante non nulla)
e pertanto hihj e vettore del duale di C`+1. Quindi se fosse Si,j = 0, x apparterrebbe
a C`+1.
Pertanto esistono ν` coppie (i, j) tali che Si,j 6= 0. Elenchiamo tali coppie
(i1, j1), (i2, j2), . . . , (iν` , jν`)
dimodoche i1 < i2 < . . . < iν` . E evidente allora che j1 > j2 > . . . > jν` . Fissato k
compreso fra 1 e ν`, osserviamo che Sik,jr = 0 per ogni r compreso fra 1 e jk−1; infatti,
ρik + ρjr < ρik + ρjk = ρ`+1 implica ρik + ρjr ≤ ρ`. Pertanto le righe corrispondenti a
i1, . . . , iν` e le colonne corrispondenti a j1, . . . , jν` individuano una sottomatrice di S di
ordine ν` triangolare superiore di rango ν`. Pertanto il peso di x e almeno ν`.
Proposizione 4.19. La distanza minima di C` e almeno pari a
dORD(C`) := min{νm | m ≥ `}.
Dimostrazione. Sia N tale che l’insieme di vettori h1, . . . , hN abbia rango n.
Consideriamo la catena di inclusioni
CN = (0, . . . , 0) ( CN−1 . . . ( Cr+1 ( Cr ( . . . C`+1 ( C`.
Per ogni x ∈ C` esiste m ≥ ` tale che x ∈ Cm \ Cm+1. Per il lemma precedente il peso
di x e almeno νm. L’asserto segue quindi dall’arbitrarieta di x.
CAPITOLO 4. CODICI ALGEBRICO-GEOMETRICI 92
Il calcolo di ν` puo essere facilitato dal seguente risultato.
Lemma 4.20. Sia µ` il numero di interi i in [0, ρ`+1] tali che sia i che ρ`+1 − i non
appartengono a H(P ). Allora
ν` = 2`+ 1− ρ`+1 + µ`.
In particolare,
ν` ≥ 2`+ 1− ρ`+1 ≥ `+ 1− g.
Dimostrazione. Osserviamo che
{(i, j) ∈ N2 | ρi + ρj = ρ`+1} = {(a, b) ∈ N20 | a+ b = ρ`+1} \ (A ∪ B)
essendo
A = {(a, b) ∈ N20 | a+ b = ρ`+1, a /∈ H(P )}
e
B = {(a, b) ∈ N20 | a+ b = ρ`+1, b /∈ H(P )}
Chiaramente la cardinalita diA e di B sono entrambe uguali a ρ`+1+1−(`+1) = ρ`+1−`.La cardinalita dell’intersezione e invece pari a µ`. Pertanto segue
ν` = ρ`+1 + 1− 2(ρ`+1 − `) + µ` = 2`+ µ` + 1− ρ`+1
Lemma 4.21. Se ` ≥ 3g, allora ν` = `+ 1− g.
Dimostrazione. Osserviamo che ` ≥ 3g implica ρ`+1 = ` + g ≥ 4g. Essendo quindi12ρ`+1 ≥ 2g, allora per ogni intero i maggiore o uguale di 1
2ρ`+1 si ha che i ∈ H(P ).
D’altro canto, per ogni intero i minore o uguale di 12ρ`+1 si ha ρ`+1 − i ∈ H(P ). Cio
dimostra che µ` = 0, e quindi l’asserto segue dal lemma precedente.
Come immediata conseguenza dei due lemmi precedenti si ha il seguente risultato.
Teorema 4.22. Si ha dORD(`) ≥ `+ 1− g, e si ha l’uguaglianza se ` ≥ 3g.
Osserviamo che se ` ≥ 3g, allora la Proposizione 4.19 coincide con la stima della
distanza minima della Proposizione 4.14. Infatti da ` > g segue ρ` = ` + g − 1.
Pertanto dORD(`) = `+ 1− g = ρ` + 2− 2g = deg(G)− 2g + 2.
CAPITOLO 4. CODICI ALGEBRICO-GEOMETRICI 93
4.5.1 Codici di Goppa modificati
Per ogni d > 1 si ponga
C(d) = {x ∈ Fnq |< x, hi+1 >= 0 per ogni i ≥ 0 tale che νi < d}.
Sia inoltre
rd := #{i tale che νi < d}.
Teorema 4.23. Il codice C(d) e un codice [n, k, d′]q dove
• k ≥ n− rd;
• d′ ≥ d.
Se inoltre n > d+ g, allora k = n− rd.
Dimostrazione. La prima affermazione segue dal fatto che C(d) e definito da rd equazio-
ni lineari omogenee. Calcoliamo ora il peso di un generico vettore non nullo x ∈ C(d).
Sia ` il minimo intero tale che < x, h`+1 >6= 0. Per la definizione del codice si ha che
ν` ≥ d. (4.2)
Da d > 1 segue allora che ` ≥ 0. Inoltre, per minimalita di ` si ha che x ∈ C` \ C`+1.
Per il Lemma 4.18 si ha che il peso di x e almeno ν`. Da (4.2) segue l’asserto.
Supponiamo ora n < d + g. Osserviamo che, dalla relazione νi ≥ i + 1 − g, l’insieme
{i tale che νi < d} e costituito da interi i minori di d + g − 1. Pertanto i vettori di
tipo hi+1 che definiscono C(d) corrispondono a valutazioni di funzioni (linearmente
indipendenti) appartenenti a L((d+ g)P ) su n punti. Da n > d+ g segue che i vettori
di tipo hi+1 sono linearmente indipendenti.
La seguente Proposizione dimostra che i codici di Goppa modificati possono dar luogo a
stime migliori di quelle viste finora. Precisamente, C(dORD(`)) ha una distanza minima
garantita di dORD(`) come il codice C`, ma rispetto a C` potrebbe avere dimensione
maggiore.
Proposizione 4.24. C` ⊆ C(dORD(`))
CAPITOLO 4. CODICI ALGEBRICO-GEOMETRICI 94
Dimostrazione. In C` troviamo tutti i vettori x tali che < x, hi+1 >= 0 per ogni i+ 1 ≤`. Osserviamo adesso che se vi < dORD(`), per definizione di dORD(`) necessariamente
si ha che i < `, e quindi i+ 1 ≤ `. Pertanto tutte le condizioni di appartenenza a
C(dORD(`)) sono soddisfatte da x.
Osserviamo che nella Proposizione precedente puo valere l’inclusione stretta solo se
esiste i ≤ ` con νi−1 > min{νm | m ≥ `}.
Enunciamo i seguenti risultati, omettendone la dimostrazione.
Proposizione 4.25. Se d ≥ 2g − 4, allora
rd = ρbd/2c + dd/2e
Proposizione 4.26. Se H(P ) e un semigruppo di Arf (ovvero ρi + ρj − ρk ∈ H(P )
per ogni i ≥ j ≥ k), allora per ogni d ≥ 1
rd = ρbd/2c + dd/2e
4.6 Codici buoni dalla Geometria Algebrica
Nota 4.27. In questa sezione per curva intenderemo una curva algebrica proiettiva
irriducibile e non singolare ma non necessariamente piana. Dato che il concetto di
curva algebrica di uno spazio di dimensione diversa da due non e stato affrontato in
questi appunti, quanto si dira e da ritenersi puramente informativo.
Consideriamo i parametri asintotici di un codice algebrico-geometrico. Si e dimostrato
che data una curva di genere g definita su Fq, e costruito su di essa un codice CD,G, con
deg(D) = n e 2g − 2 < deg(G) < n, si ha che tale codice ha lunghezza n, dimensione
k = deg(G) + 1 − g e distanza minima d ≥ n − deg(G). Pertanto R = deg(G)+1−gn
e
δ ≥ 1− deg(G)n
. Osserviamo allora che
R + δ ≥ 1
n− g
n+ 1 , (4.3)
e che cambiando il grado del divisore G possiamo ottenere molte coppie distinte (R, δ)
che soddisfino (4.3).
CAPITOLO 4. CODICI ALGEBRICO-GEOMETRICI 95
Per ogni q e per ogni intero positivo g definiamo
Nq(g) := max{#X (Fq) | X curva di genere g sopra Fq} .
Determinare Nq(g) e uno dei problemi aperti piu studiati, e piu difficili, dell’attuale
ricerca in Geometria Algebrica sopra campi finiti. Il risultato piu famoso riguardo
Nq(g) e la limitazione di Hasse-Weil, che di seguito riportiamo.
Teorema 4.28.
Nq(g) ≤ q + 1 + 2g√q
Sia
A(q) := lim supg→+∞
Nq(g)
g.
Teorema 4.29. Sia q potenza di un primo tale che A(q) > 2. Allora per ogni δ ∈(0, 1− 2
A(q)) si ha
αq(δ) ≥ −δ + 1− 1
A(q).
Dimostrazione. Sia Xi una sequenza di curve di genere gi tale che gi tenda a piu
infinito, e #Xi(Fq)gi
tenda a A(q). Chiaramente anche #Xi(Fq) dovra tendere a piu
infinito, essendo A(q) > 0.
Sia
Xi(Fq) = {P i0, P
i1, . . . , P
ini}
l’insieme dei punti Fq-razionali di Xi. Fissiamo un numero reale ε > 0 compreso fra2
A(q)e 1, e costruiamo una successione di interi ri tale che 2gi − 2 < ri < ni e
limi→+∞
rini
= ε.
Sia infine
Di = P i1 + . . .+ P i
niGi = riP0 .
Il codice CDi,Gi e quindi un codice di lunghezza ni e di parametri (Ri, δi) tali che
Ri =ri + 1− gi
ni, δi ≥ 1− ri
ni.
CAPITOLO 4. CODICI ALGEBRICO-GEOMETRICI 96
Pertanto
limi→+∞
ni = +∞, limi→+∞
Ri = ε− 1
A(q), lim
i→+∞δi ≥ 1− ε .
Sia δ = 1− ε, δ′ = limi→+∞ δi ≥ δ. Per definizione,
αq(δ′) ≥ ε− 1
A(q)= −δ + 1− 1
A(q).
Inoltre, essendo αq decrescente, si ha αq(δ) ≥ αq(δ′), e quindi
αq(δ) ≥ −δ + 1− 1
A(q).
Dall’arbitrarieta di ε segue l’asserto.
L’equazione R = −δ + 1 − 1A(q)
definisce una retta con coefficiente angolare negativo,
che intersechera il grafico di R = 1−Hq(δ) in 0, 1 o 2 punti. Se l’ultimo caso si verifica,
allora avremo per qualche δ un miglioramento della limitazione di Gilbert-Varshamov
in un sottointervallo di (0, 1− 2A(q)
). Vediamo pertanto cio che e noto riguardo A(q).
Teorema 4.30 (Drinfeld-Vladut). Per ogni q potenza di un primo si ha
A(q) ≤ √q − 1.
Per quanto riguarda limitazioni inferiori, il risultato seguente e dovuto a Tsfasman,
Vladut e Zink per m = 1 e m = 2, e a Ihara per il caso generale.
Teorema 4.31. Sia q = p2m quadrato. Allora esiste una successione di curve Xidefinite su Fq di genere gi e con Ni punti Fq-razionali, tale che
limi→+∞
= +∞ , limi→+∞
Ni
gi=√q − 1
Pertanto, si ha che se q e un quadrato, allora A(q) =√q − 1. Si puo inoltre provare
con calcoli diretti che se q ≥ 49, allora la retta R = −δ + 1 − 1√q−1
incontra il grafico
di R = 1−Hq(δ) esattamente in due punti.
Pertanto, un miglioramento della limitazione di Gilbert-Varshamov e stato ottenuto
grazie ai codici algebrico-geometrici. Questo spiega perche negli ultimi anni molta
attivita di ricerca sulle curve algebriche e concentrata sulla problematica di stimare
Nq(g) e A(q).
CAPITOLO 4. CODICI ALGEBRICO-GEOMETRICI 97
4.7 Codici Hermitiani
Riprendiamo lo studio della curva Hermitiana, iniziato nel capitolo precedente. Sia q
un quadrato, e sia X : X√q+1
1 −X√q
0 X2 −X0X√q
2 , e sia P∞ = (0 : 0 : 1). Nella sezione
3.7.3 abbiamo dimostrato che
• X e non singolare (e di genere√q(√q − 1)/2);
• P∞ e l’unico punto di X appartenente alla retta X0 = 0;
• una base di L(rP∞) e costituita dalle funzioni
{xiyj | i√q + j(√q + 1) ≤ m, i ≥ 0, 0 ≤ j ≤ √q − 1} .
Per valutare i parametri dei codici di Goppa costruiti da tale curva e necessario cono-
scerne il numero di punti razionali. Tale numero e il massimo possibile, ovvero viene
raggiunta la limitazione superiore di Hasse-Weil. Questo rende la curva Hermitiana di
importanza cruciale, sia per la teoria (si congettura che ogni curva che massimale sia
un quoziente della curva Hermitiana), che per le applicazioni.
Proposizione 4.32. Il numero di punti razionali di X e q√q + 1 = q + 1 + 2g
√q.
Dimostrazione. Sia ϕ1 l’omomorfismo additivo
ϕ1 : Fq → F√q, t 7→ t√q + t.
Si lascia al lettore la verifica della bonta della definizione e della additivita di ϕ1. Si
osservi che il nucleo di ϕ1 ha almeno cardinalita pari a√q, dato che
√q e il rapporto
fra la cardinalita del dominio e quella del codominio. Ma essendo tale nucleo costi-
tuito dagli zeri di un polinomio di grado√q, la sua cardinalita non puo superare
√q.
Pertanto,
1) per ogni a ∈ F√q esistono√q elementi y ∈ Fq tali che y
√q + y = a.
Consideriamo ora l’omomorfismo moltiplicativo ϕ2
ϕ2 : F∗q → F∗√q, t 7→ t√q+1.
CAPITOLO 4. CODICI ALGEBRICO-GEOMETRICI 98
Di nuovo si lascia al lettore la verifica della bonta della definizione e del fatto che ϕ2
e omomorfismo. Si osservi che il nucleo di ϕ2 ha almeno cardinalita pari a√q + 1,
essendo√q + 1 il rapporto fra la cardinalita del dominio e quella del codominio. Il
nucleo e costituito dagli zeri di un polinomio di grado√q+1, e quindi la sua cardinalita
non puo superare√q + 1. Pertanto,
2) per ogni a ∈ F√q, a 6= 0, esistono√q + 1 elementi x ∈ Fq tali che x
√q+1 = a.
Da 1) e 2) segue quindi che per ogni a ∈ F√q, a 6= 0, esistono√q(√q+1) coppie ordinate
(x, y) tali che x√q+1 = y
√q + y = a. In tutto abbiamo gia (
√q − 1)(q +
√q) punti
razionali. A questi vanno aggiunti i punti di coordinate affini (0, y) con y√q + y = 0.
Per 1), tali punti sono in numero di√q. Considerando anche l’unico punto all’infinito,
abbiamo in totale
(√q − 1)(q +
√q) +
√q + 1 = q
√q + 1
punti razionali di X .
Capitolo 5
Codici Lineari MDS e Archi di
Piani Proiettivi di Galois
5.1 Codici MDS
Due dei piu importanti pronblemi sui codici MDS sono: (a) trovare la massima lun-
ghezza di un codice MDS di fissata dimensione, (b) caratterizzare i codici MDS aventi
questa massima lunghezza. In questo capitolo tali problemi saranno affrontati da un
punto di vista geometrico, in termini di archi di spazi proiettivi finiti.
La massima lunghezza n di un [n, r+1, d]q-codice MDS, uguale alla massima cardinalita
di un n-arco in PG(r, q), si denota con m(r, q). La congettura che segue e nota come
la congettura principale sui codici MDS:
Congettura 5.1.
m(r, q) =
r + 2 se r > q − 1,
q + 2 se q e pari e r ∈ {2, q − 2},q + 1 in tutti gli altri casi.
99
CAPITOLO 5. CODICI MDS E ARCHI 100
5.2 Codici MDS di dimensione 3: gli n-archi di
PG(2, q)
La congettura principale sui codici MDS e stata provata per r = 2. E’ un classico
risultato di geometria combinatoria che risale agli anni ’50. Unm(2, q)-arco di PG(2, q),
q dispari, e detto ovale e un m(2, q)-arco di PG(2, q), q pari, e detto iperovale.
Ricordiamo preliminarmente che un n-arco A di PG(2, q) e un sottoinsieme di punti
a 3 a 3 non allinati; un n-arco si dice completo se non e contenuto in un (n + 1)-arco.
Osserviamo che, per il teorema di Bezout, ogni conica irriducibile e un (q + 1)-arco.
Dati un n-arco A e una retta l, la cardinalita dell’insieme A ∩ l puo essere solo 0, 1, 2;
nel primo caso l si dice esterna a A, nel secondo tangente di A, nel terzo corda di A.
Proposizione 5.2. Dato un n-arco A ed un suo punto P , per P passano esattamente
t = q − n+ 2 tangenti a A. Quindi, essendo t ≤ (q + 1), si ha
n ≤ (q + 2).
Dimostrazione. Le rette per P possono essere solo tangenti o secanti; e le secanti sono
esattamente quanti i punti di A diversi da P (infatti in una secante per P non puo
esserci piu di un punto di A distinto da P , essendo A un arco). Quindi q + 1 − t =
n− 1.
Proposizione 5.3. Sia A un (q + 2)-arco di PG(2, q). Allora q e pari.
Dimostrazione. Sia P un punto non di A. Per l’osservazione precedente, non esistono
tangenti di A; quindi tutti i punti di A giacciono su secanti per P , precisamente due
per ogni secante. Allora n = q + 2 e pari e tale e q.
Proposizione 5.4. Sia q dispari; allora la massima cardinalita di un n-arco in
PG(2, q) e (q + 1).
Dimostrazione. Dall’osservazione precedente, essendo q dispari, la cardinalita non puo
essere superiore a q+1; e tale valore e raggiunto nel caso di una conica irriducibile.
Nel seguito avremo bisogno dei seguenti semplici risultati.
CAPITOLO 5. CODICI MDS E ARCHI 101
Lemma 5.5. Sia f ∈ Fq[X], f = a0Xn + a1X
n−1 + . . . + an. Siano α1, α2, . . . , αn le
radici di f(non necessariamente tutte in Fq). Allora
n∏ı=1
αı =ana0
(−1)n.
Dimostrazione. Si ha
a0Xn + a1X
n−1 + . . .+ an = a0(X − α1)(X − α2) . . . (X − αn).
Uguagliando i termini noti di ambo i membri segue l’asserto.
Proposizione 5.6. Gli elementi α1, α2, . . . , αq−1 di F∗q soddisfano la relazione
q−1∏ı=1
αı = −1.
Dimostrazione. Basta applicare il Lemma 5.5 al polinomio f = Xq−1− 1 e considerare
che nel caso q pari si ha −1 = 1.
Proposizione 5.7. In PG(2, q) le tre rette di equazione X2 = k0X1, X0 = k1X2,
X1 = k2X0, passano per uno stesso punto se e solo se k0k1k2 = 1.
Dimostrazione. La dimostrazione consiste di una verifica diretta, ed e lasciata come
esercizio.
Il risultato chiave per la classificazioni di (q + 1)-archi in PG(2, q), q dispari, e il
cosiddetto Lemma delle Tangenti.
Proposizione 5.8. (Lemma delle Tangenti) Sia A un n-arco di PG(2, q), sia t =
q − n + 2, e siano P0, P1, P2 tre punti di A. Fissato come triangolo di riferimento T
quello i cui vertici sono P0, P1, P2, consideriamo le 3t tangenti a A passanti per essi;
tali tangenti abbiano le seguenti equazioni: X2 = k0,sX1, X0 = k1,sX2, X1 = k2,sX0
con s = 1, . . . t. Allora ∏r=0,1,2, s=1,...,t
kr,s = −1.
CAPITOLO 5. CODICI MDS E ARCHI 102
Dimostrazione. Definiamo gli insiemi
{β0,1, β0,2, . . . , β0,n−3} = F∗q \ {k0,s | s = 1, . . . , t},{β1,1, β1,2, . . . , β1,n−3} = F∗q \ {k1,s | s = 1, . . . , t},{β2,1, β2,2, . . . , β2,n−3} = F∗q \ {k2,s | s = 1, . . . , t};
dalla Proposizione 5.6 segue ∏s=1,...,t
k0,s
∏s′=1,...,n−3
β0,s′ = −1 , (5.1)
e analogamente ∏k1,s
∏β1,s′ =
∏k2,s
∏β2,s′ = −1. (5.2)
Proviamo ora che ∏r=0,1,2, s′=1,...,n−3
βr,s′ = 1. (5.3)
Fissiamo un punto Q in A ma non in T . Per Q passano tre secanti di A che intersecano
l’insieme dei vertici di T . Tali secanti siano
l2(Q) : X2 = β0,QX1, l0(Q) : X0 = β1,QX2, l1(Q) : X1 = β2,QX0.
Allora per la Proposizione 5.7 si ha
β0,Qβ1,Qβ2,Q = 1. (5.4)
Osserviamo a questo punto che le terne
{l0(Q), l1(Q), l2(Q)}Q∈A\T
costituiscono una partizione dell’insieme delle secanti di A passanti per uno ed un solo
vertice di T . Infatti evidentemente ogni secante di questo tipo deve essere una lr(Q) per
qualche Q. Inoltre lr(Q) e lr′(Q′) non possono coincidere se Q 6= Q′ perche altrimenti
avremmo 3 punti allienati in A.
Pertanto moltiplicando la (5.4) al variare di Q si ha la (5.3). Ora tiriamo le somme:
−1 = (−1)(−1)(−1) =
CAPITOLO 5. CODICI MDS E ARCHI 103
(dalla (5.1) e dalla (5.2))
=(∏
k0,s
∏β0,s′
)(∏k1,s
∏β1,s′
)(∏k2,s
∏β2,s′
)=
=(∏
k0,s
∏k1,s
∏k2,s
)(∏β0,s′
∏β1,s′
∏β2,s′
)=
=∏
r=0,1,2, s=1,...,t
kr,s∏
r=0,1,2, s′=1,...,n−3
βr,s′ =
(dalla (5.3))
=∏
kr,s.
Esercizio 60. Si consideri il seguente 5-arco di PG(2, 5):
A = {(1 : 0 : 0), (0 : 1 : 0), (0 : 0 : 1), (1 : 1 : 1), (1 : 2 : 4)}.
Si scrivano le equazioni delle rette tangenti e secanti di A passanti per i punti (1 : 0 :
0), (0 : 1 : 0), (0 : 0 : 1). Si verifichi la tesi del Lemma delle Tangenti.
Una variante del Lemma delle Tangenti si applica ai cosiddetti archi focalizzati.
Definizione 5.9. Un n-arco A di PG(2, q) si dice focalizzato se esiste una retta `
esterna all’arco tale che le secanti di A incontrano ` in esattamente n punti. In tal caso
` si dice retta fuoco di A.
Sia A un n-arco focalizzato e sia ` una sua retta fuoco. Sia S` l’insieme dei punti di `
che appartengono ad almeno una secante di A. Sia P un punto di A. Per esso passano
t = q + 2 − n tangenti di A, ma solo una di queste incontra S`: infatti ogni retta che
unisce P ad uno dei q + 1 − n punti di ` \ S` e una tangente di A. Chiameremo tale
retta tangente privilegiata in P rispetto a `.
Proposizione 5.10. Sia A un n-arco focalizzato di PG(2, q), e sia ` una sua retta
fuoco. Siano P0, P1, P2 tre punti di A. Fissato come triangolo di riferimento T quello
i cui vertici sono P0, P1, P2, consideriamo le 3 tangenti privilegiate passanti per essi;
tali tangenti abbiano le seguenti equazioni X2 = k0X1, X0 = k1X2, X1 = k2X0. Allora∏k0k1k2 = −1 .
CAPITOLO 5. CODICI MDS E ARCHI 104
Dimostrazione. La dimostrazione e analoga a quella del lemma delle tangenti. Basta
far variare il punto Q nei punti di A ∪ (` \ S`) diversi da P0, P1, P2.
Si noti che, se q e dispari, ogni (q + 1)-arco e focalizzato; basta prendere come retta
fuoco una qualsiasi retta esterna all’arco. In tal caso le tangenti privilegiate sono
esattamente le tangenti all’arco.
Definizione 5.11. Due triangoli T = {P0, P1, P2} e T ′ = {Q0, Q1, Q2} di PG(2, q) si
dicono prospettivi se le rette passanti per P0Q0, P1Q1 e P2Q2 sono concorrenti.
Corollario 5.12. Sia A un n-arco focalizzato di PG(2, q), q dispari. Sia T un qualun-
que triangolo inscritto in A, e sia T ′ il corrispondente triangolo circoscritto (ovvero il
triangolo i cui lati sono le tangenti privilegiate per i vertici di T ). Allora T e T ′ sono
prospettivi.
Dimostrazione. Supponiamo senza restrizione che i vertici P0, P1, P2 di T siano i punti
del triangolo di riferimento, ovvero P0 = (1 : 0 : 0), P1 = (0 : 1 : 0), P2 = (0 : 0 : 1).
Inoltre sia U = (1 : 1 : −1) il punto comune alle tangenti all’arco passanti per P0 e
P1. Allora i lati di T ′ sono le rette X1 + X2 = 0, X0 + X2 = 0, e, per il Lemma delle
tangenti, la retta X1 +X0 = 0. (Osserviamo che l’ipotesi q dispari e necessaria perche
altrimenti T ′ non sarebbe un triangolo: se fosse q pari da −1 = 1 seguirebbe che i lati
di T ′ sarebbero concorrenti per il Lemma 5.7). I vertici di T ′ sono
Q0 = (−1 : 1 : 1), Q1 = (1 : −1 : 1), Q2 = (1 : 1 : −1),
e le rette PiQi
P0Q0 : X2 = X1, P1Q1 : X0 = X2, P2Q2 : X1 = X0.
L’asserto segue dal Lemma 5.7.
Teorema 5.13. In PG(2, q), q dispari, ogni (q + 1)-arco consiste dei punti di una
conica irriducibile.
Dimostrazione. Sia A un (q + 1)-arco di PG(2, q). Siano P0, P1 e P2 tre punti di A, e
sia U il punto comune alle tangenti all’arco passanti per P0 e P1. Supponiamo senza
restrizioni che P0 = (1 : 0 : 0), P1 = (0 : 1 : 0), P2 = (0 : 0 : 1), U = (1 : 1 : −1).
CAPITOLO 5. CODICI MDS E ARCHI 105
Allora la tangente ad A in P0 e la retta X1 +X2 = 0, mentre quella in P1 ha equazione
X0 + X2 = 0. Dal Lemma delle tangenti segue immediatamente che la tangente in P2
e la retta X1 +X0 = 0.
Si consideri ora un ulteriore punto P = (y0 : y1 : y2) di A. Sia ` : d0X0 + d1X1 + d2X2
la tangente a A per P . Si applichi Corollario 5.12 al triangolo PP1P2. I vertici del
triangolo circoscritto sono allora i punti Q = (1 : −1 : −1), Q1 = (d2 : −d2 : d1 − d0),
Q2 = (d1 : d2 − d0 : −d1). Si ha inoltre che PQ : (y2 − y1)X0 + (y0 + y2)X1 + (−y0 −y1)X2 = 0, P1Q1 : (d1 − d0)X0 − d2X2 = 0, P2Q2 : (d2 − d0)X0 − d1X1 = 0. Dal
Corollario 5.12 segue quindi
det
y2 − y1 y0 + y2 −y0 − y1
d1 − d0 0 −d2
d2 − d0 −d1 0
= det
0 y0 + y2 −y0 − y1
d1 − d0 + d2 0 −d2
d2 − d0 + d1 −d1 0
= 0 ,
ovvero
(d0 − d1 − d2)[d1(y0 + y1)− d2(y0 + y2)] = 0.
Dato che ` non puo passare per Q, il punto comune alle tangenti per P1 e P2, (mai tre
tangenti ad un (q + 1)-arco sono concorrenti per q dispari), si ha che d0 − d1 − d2 6= 0.
Pertanto
d1(y0 + y1) = d2(y0 + y2).
Analogamente, considerando i triangoli PP0P1 e PP0P2 si ha che
d2(y1 + y2) = d0(y1 + y0)
d0(y0 + y2) = d1(y1 + y2).
In altre parole i tre minori di ordine due della matrice(d0 d1 d2
y1 + y2 y0 + y2 y0 + y1
)sono tutti nulli. Allora il rango di(
y0d0 y1d1 y2d2
y0y1 + y0y2 y1y0 + y1y2 y2y0 + y2y1
)e uguale a 1. Dato che la somma degli elementi della prima riga e d0y0+d1y1+d2y2 = 0,
si ha che anche gli elementi della seconda riga hanno somma zero, ovvero
2(y0y1 + y0y2 + y1y2) = 0.
CAPITOLO 5. CODICI MDS E ARCHI 106
Essendo q dispari si ha che 2 6= 0, e pertanto il punto P appartiene alla conica di
equazione
X1X2 +X0X2 +X0X1 = 0.
I q + 1 punti di tale conica sono quindi tutti e soli i punti di A.
Si lascia come esercizio dimostrare la seguente generalizzazione del Teorema di Segre,
dovuta a Wettl.
Teorema 5.14. In PG(2, q), q dispari, ogni n-arco focalizzato e contenuto in una
conica irriducibile.
Corollario 5.15. Tutti i codici MDS di dimensione 3 e lunghezza q+1 sopra un campo
di ordine dispari sono isomorfi.
Dimostrazione. Si puo dimostrare che tutte le coniche irriducibili di PG(2, q) sono
proiettivamente equivalenti. Pertanto dal Teorema 5.13 segue che tutti i (q+1)-archi di
PG(2, q) sono sistemi proiettivi equivalenti. Dalla Proposizione 2.12 segue l’asserto.
Per q pari, una conica piu il suo nucleo (ovvero il punto di intersezine delle sue tangenti)
e un (q+2)-arco. I (q+2)-archi di PG(2, q) sono detti iperovali. Un iperovale costituito
da una conica e dal suo nucleo si dice regolare. Come mostrato da Segre, per q = 2, 4, 8,
ogni iperovale e regolare. Per q = 2h, h ≥ 4, esistono iperovali irregolari. Diverse classi
infinite di iperovali sono conosciute. Il problema della classificazione degli iperovali e
tuttavia molto lontano dall’essere risolto. L’esempio piu semplice di classe infinita di
iperovali irregolari e il seguente.
Proposizione 5.16. Sia q = 2m. L’insieme di punti di PG(2, q)
{(1 : t : t2s) | t ∈ Fq} ∪ {(0 : 1 : 0), (0 : 0 : 1)}
e un (q + 2)-arco di PG(2, q) se e solo se (m, s) = 1.
Esercizio 61. Sia A un n-arco di PG(2, q) e sia ` una retta disgiunta da A. Si provi
che il numero di punti di ` che appartiene ad almeno una secante di A e maggiore o
uguale di n− 1.
CAPITOLO 5. CODICI MDS E ARCHI 107
Esercizio 62. Sia A un n-arco di PG(2, q) e sia ` una retta disgiunta da A. L’arco A
si dice iperfocalizzato rispetto a ` se il numero di punti di ` che appartiene ad almeno
una secante di A e esattamente n − 1. Si provi che se q e dispari, allora non esistono
n-archi iperfocalizzati con n > 2. (Suggerimento: si ammetta l’esistenza di un n-
arco iperfocalizzato con n > 2, e lo si privi di un punto Q; si ottiene cosi’ un arco
focalizzato A′, le cui tangenti privilegiate sono le rette che uniscono i punti di A′ a Q;
cio e assurdo perche le tangenti privilegiate di un arco focalizzato non possono essere
concorrenti dalla Proposizione 5.10).
Esercizio 63. Sia A un n-arco focalizzato di PG(2, q), q pari. Si dimostri che A e
contenuto in un (n + 1)-arco iperfocalizzato. (Suggerimento: dalla Proposizione 5.10
segue che le tangenti privilegiate di A sono concorrenti in un punto Q; allora A ∪ {Q}e un arco iperfocalizzato.)
Esercizio 64. Nel 2004 due ricercatori statunitensi hanno congetturato che ogni n-arco
iperfocalizzato di PG(2, q), q pari, con n >√q + 2 fosse contenuto in un (q + 2)-arco.
Di recente e stato provato che tale congettura non e vera. Lo studente particolarmente
motivato puo provare a cimentarsi nella ricerca di un controesempio (e un esercizio
difficile, ma non impossibile).
5.2.1 Il Teorema di Menelaus
Sia K la chiusura algebrica di Fq. E di verifica immediata che tre punti (c2 : 1 : 0),
(1 : 0 : c1), (0 : c0 : 1) di P2(K) sono allineati se e solo se c0c1c2 = −1. Questa
osservazione si generalizza nel seguente teorema classico di Geometria Algebrica.
Proposizione 5.17. (di Menelaus) Siano fissati 3n punti di P2(K), non necessaria-
mente distinti, (0 : c0,s : 1), (1 : 0 : c1,s), (c2,s : 1 : 0) (s = 1, . . . , n) distinti da
A0 = (1 : 0 : 0), A1 = (0 : 1 : 0), A2 = (0 : 0 : 1). Allora condizione necessaria e
sufficiente affinche esista una curva X di ordine n passante per quei 3n punti (e per
nessuno degli Ai) e che ∏r=0,1,2, s=1,...,n
cr,s = (−1)n . (5.5)
Dimostrazione. Sia X una curva di ordine n passante per i punti (0 : c0,s : 1), (1 : 0 :
CAPITOLO 5. CODICI MDS E ARCHI 108
c1,s), (c2,s : 1 : 0) (s = 1, . . . , n). Sia
X :∑
aijkXi0X
j1X
k2 = an00X
n0 + a0n0X
n1 + a00nX
n2 + . . . = 0 .
Allora an00a0n0a00n 6= 0 dato che X non passa per nessuno dei vertici del triangolo
fondamentale. Imponendo il passaggio per i punti (0 : c0,s : 1) si ha che
a0n0cn0,s + a0(n−1)0c
n−10,s . . .+ a00n = 0, per ogni s = 1, . . . , n;
ovvero gli elementi c0,s sono tutte e sole le radici di un polinomio
a0n0Tn + . . .+ a00n = 0 .
Dal Lemma 5.5 si ha quindi che∏s=1,...,n
c0,s = (−1)na00n/a0n0 .
Applicando lo stesso argomento ai punti (1 : 0 : c1,s) e (c2,s : 1 : 0) si ottiene∏s=1,...,n
c1,s = (−1)nan00/a00n,∏
s=1,...,n
c2,s = (−1)na0n0/an00,
da cui (5.5).
Ora supponiamo che la condizione (5.5) sia soddisfatta. Sia P = (0 : c0,1 : 1). Sia LPl’insieme delle curve di ordine n passanti per i restanti 3n − 1 punti. Chiaramente i
polinomi che definiscono le curve in LP costituiscono un K-sottospazio vettoriale dello
spazio vettoriale K[X, Y ]≤n dei polinomi di K[X, Y ] di grado minore o uguale di n.
Sia d la dimensione di LP . Osserviamo che la dimensione di K[X, Y ]≤n e uguale a(n+ 2
2
).
Inoltre si noti che imporre il passaggio per un punto equivale ad imporre una condizione
lineare in K[X, Y ]≤n. Pertanto si ha che(n+ 2
2
)− (3n− 1) ≤ d
CAPITOLO 5. CODICI MDS E ARCHI 109
Si noti che che
(n+ 2
2
)− (3n − 1) = 1 +
(n− 1
2
). Inoltre si osservi che le
curve di grado n che contengono le rette del triangolo fondamentale corrispondono alle
curve di grado n− 3, e pertanto costituiscono un sottospazio vettoriale di dimensione(n− 1
2
)< d. Cio implica che LP contiene una curva X che non passa per nessun
vertice del triangolo fondamentale: infatti se cosı non fosse ogni curva di LP dovrebbe
contenere i tre assi del triangolo per il Teorema di Bezout.
Per completare la dimostrazione occorre provare che X passa per P . Osserviamo
intanto che, sempre per il Teorema di Bezout, X passa per un ulteriore punto Q = (0 :
e : 1) con e 6= 0 del triangolo fondamentale. Pertanto, per quanto sopra dimostrato, Xsoddisfa la condizione (5.5) dove a c0,1 si sostituisca e, ovvero
e
∏r=0,1,2, s=1,...,n,(r,s) 6=(0,1)
cr,s
= (−1)n
Ma questo, messo a sistema con (5.5) medesimo, implica che c0,1 = e, e quindi P = Q.
Il teorema di Menelaus e stato generalizzato da B. Segre nel seguente modo.
Proposizione 5.18. Sia fissato un qualunque poligono in P2(K) di n lati a 3 a 3 non
concorrenti; si fissino n punti, non necessariamente distinti, in ogni lato, nessuno dei
quali coincidente con i vertici del poligono. Allora esiste una curva di ordine n passante
per i punti dati (e non per i vertici del poligono) se e solo se per ogni terna di lati del
poligono e soddisfatta la condizione del teorema precedente per i 3n punti giacenti su
di essa.
Si tenga presente che, anche in questo caso, le uniche intersezioni della curva con i lati
del poligono sono costituite dai punti di partenza.
5.2.2 Curve e inviluppi
Sia K la chiusura algebrica del campo finito Fq. Denotiamo con P2(K)∗ l’insieme delle
rette di P2(K).
CAPITOLO 5. CODICI MDS E ARCHI 110
Definizione 5.19. L’applicazione
D : P2(K)∗ → P2(K)
che associa alla retta di equazione l0X0 + l1X1 + l2X2 = 0 associa il punto di coordinate
(l0 : l1 : l2) si dice applicazione duale.
L’applicazione duale e chiaramente ben definita e biiettiva, dato che due rette l0X0 +
l1X1 + l2X2 = 0 e l′0X0 + l
′1X1 + l
′2X2 = 0 coincidono se e solo se le terne (l0 : l1 : l2)
e (l′0 : l
′1 : l
′2) sono coordinate omogenee di uno stesso punto. La terna (l0 : l1 : l2),
definita a meno di proporzionalita , si dice la terna delle coordinate pluckeriane della
retta l0X0 + l1X1 + l2X2 = 0.
Si considerino l’insieme dei punti di una retta ` di P2(K). La controimmagine di questi
punti rispetto all’applicazione duale consiste delle rette di un fascio. Piu precisamente,
e immediato verificarela controimmagine dei punti della retta di equazione a0X0 +
a1X1 + a2X2 = 0 consiste delle rette del fascio di centro il punto (a0 : a1 : a2).
Piu in generale, una famiglia di rette che sono la controimmagine di una curva algebrica
di P2(K) rispetto all’applicazione duale si dice inviluppo di P2(K)∗. Un fascio di rette
e l’esempio piu semplice di inviluppo.
Definizione 5.20. Un inviluppo di classe t, denotato con Γt, e un sottoinsieme di
rette di P2(K) le cui coordinate pluckeriane (l0 : l1 : l2) soddisfano un equazione
G(l0, l1, l2) = 0, essendo G(X0, X1, X2) un polinomio omogeneo di grado t.
Naturalmente tutte le proprieta delle curve algebriche possono essere interpretate in
termini di inviluppi. Ad esempio, sia Γt un inviluppo algebrico definito dal polinomio
G:
• se il punto P = (a : b : c) e tale che il polinomio aX0 + bX1 + cX2 non divide G,
allora t rette di Γt passano per P (opportunamente contate);
• se il punto P = (a : b : c) e tale che il polinomio aX0 + bX1 + cX2 divide G, allora
ogni retta per P appartiene a Γt;
• il numero massimo di fasci di rette contenute in Γt e t.
CAPITOLO 5. CODICI MDS E ARCHI 111
Si osservi inoltre che con l’espressione tangente di un inviluppo si deve intendere un
fascio di rette (che incontra l’inviluppo in una sua retta non singolare con molteplicita
maggiore di uno).
Dualizzando il teorema di Menelaus otteniamo i seguenti risultati.
Proposizione 5.21. (Teorema di Ceva) Sia T il triangolo di riferimento i cui vertici
sono A0 = (1 : 0 : 0), A1 = (0 : 1 : 0), A2 = (0 : 0 : 1). Siano fissate 3t rette di P2(K),
non necessariamente distinte, diverse dai lati di T , di equazione
X2 = k0,sX1, X0 = k1,sX2, X1 = k2,sX0.
Allora condizione necessaria e sufficiente affinche esista un inviluppo Γt contenente
quelle 3t rette (e non i lati di T ) e che∏r=0,1,2, s=1,...,t
kr,s = 1.
Dimostrazione. Basta osservare che una retta di equazione X2 = k0,ıX1 ha coordinate
pluckeriane (0 : −k0,ı : 1) (e similmente per gli altri due casi). Quindi, applicando il
Teorema di Menelaus, la condizione necessaria e sufficiente e∏(−kr,s) = (−1)t,
ovvero
(−1)3t∏
kr,s = (−1)t.
Ma (−1)3t = (−1)t, e quindi l’asserto e provato.
La versione piu generale e la seguente.
Proposizione 5.22. Siano fissati n punti di P2(K) a 3 a 3 non allineati; si scelgano
per ciascuno di tali punti t rette, non necessariamente distinte, passanti per esso e per
nessuno degli altri punti. Allora esiste un inviluppo di classe t contenente le rette scelte
(e nessuna altra retta per quei punti) se e solo se per ogni terna di punti e per le 3t
scelte rette passanti per essi e soddisfatta la condizione del teorema precedente.
Si tenga presente che le uniche rette appartenenti all’inviluppo passanti per uno degli
n punti dati P sono quelle scelte e passanti per P .
CAPITOLO 5. CODICI MDS E ARCHI 112
Nota 5.23. Per il teorema di Bezout, se nt > t2 esiste al piu un inviluppo irriducibile
contenente le nt rette fissate.
Riportiamo ora una limitazione superiore al numero dei punti razionali di una cur-
va algebrica, piu debole rispetto al Teorema di Hasse-Weil ma molto semplice da
dimostare.
Proposizione 5.24. Sia R il numero di punti Fq-razionali di una curva algebrica piana
di X ordine m definita su Fq e priva di componenti lineari Fq-razionali. Allora
R ≤ (m− 1)q +m.
Dimostrazione. Sia P un punto Fq-razionale di X . Dal Teorema di Bezout segue che
ogni retta per P incontra X in al piu m− 1 punti distinti da P . Pertanto,
R ≤ (q + 1)(m− 1) + 1 ,
da cui l’asserto.
5.2.3 n-archi completi di PG(2, q) con n < q + 1
Conseguenze immediate del Lemma delle tangenti e del Teorema di Ceva sono le due
seguenti proposizioni.
Proposizione 5.25. Sia q pari e sia A un n-arco di PG(2, q). Allora esiste un invi-
luppo Γt di classe t = q − n + 2, non contenente nessuno dei fasci di rette di centro
punti di A, tale che le nt tangenti di A sono tutte e sole le rette di Γt passanti per punti
di A.
Dimostrazione. Basta applicare il teorema di Ceva nella versione piu generale e tenere
presente che, essendo q pari, −1 = 1.
Proposizione 5.26. Sia q dispari e sia A un n-arco di PG(2, q). Allora esiste un
inviluppo ∆2t di classe 2t = 2(q − n+ 2), non contenente nessuno dei fasci di rette di
centro punti di A, tale che le nt tangenti di A sono tutte e sole le rette di ∆2t passanti
per punti di A, ciascuna contata due volte.
CAPITOLO 5. CODICI MDS E ARCHI 113
Dimostrazione. Contando ogni tangente di A due volte, il prodotto di tutti i coefficienti
del tipo kr,s diventa (−1)2 = 1; quindi siamo nelle condizioni del teorema di Ceva che
garantiscono l’esistenza di un inviluppo di classe 2t.
Corollario 5.27. Sia q dispari. Le q + 1 tangenti a una conica irriducibile C sono le
rette di un inviluppo Γ di classe 2. Inoltre le tangenti di Γ corrispondono ai fasci di
rette centrati nei punti di C.
Dimostrazione. L’asserto segue dalla Proposizione 5.26 applicata ai (q + 1)-archi, che
per q dispari sono tutte e sole le coniche irriducibili.
Trovare i valori di n per cui un n-arco piano e sempre contenuto in un ovale per q
dispari, o in un iperovale per q pari, e di estrema importanza per risolvere problemi
relativi agli archi di spazi di dimensione superiore (si veda la sezione successiva). In
questo contesto lo studio dell’inviluppo associato ad un n-arco si rivela decisivo. Per
prendere confidenza con la nozione di inviluppo di un arco dimostriamo il seguente
lemma, valido sia per q pari che per q dispari.
Lemma 5.28. Sia Γ inviluppo di un n-arco A di PG(2, q). Se Γ ha una componente
di classe 1, allora A e contenuto in un (n+ 1)-arco.
Dimostrazione. SiaQ il centro del fascio di rette corrispondente alla componente lineare
di Γ. Si noti che essuna retta per Q e una secante dell’arco (visto che ogni secante non
appartiene all’inviluppo). Pertanto A ∪ {P} e ancora un insieme di punti a tre a tre
non allineati.
Proposizione 5.29. Sia q pari, A un n-arco di PG(2, q) e Γt un inviluppo associato
a A. Se
n > q −√q +
1
4+
3
2
allora Γt ha una componente di classe 1.
Dimostrazione. Si osservi che dalla Proposizione 5.25 segue che il numero S di rette
semplici Fq-razionali di Γt e maggiore o uguale del numero di tangenti di A, ovvero
S ≥ nt = n(q − n + 2). Supponiamo ora che Γt non contenga le rette di un fascio
CAPITOLO 5. CODICI MDS E ARCHI 114
centrato in un punto di PG(2, q). Cio equivale ad affermare che Γt non ha componenti
Fq-razionali di ordine 1. Per la Proposizione 5.24 si ha allora che
n(q − n+ 2) = nt ≤ S ≤ (t− 1)q + t = q(q − n+ 1) + q − n+ 2 .
Pertanto q ≤ t(t− 1), in contraddizione con n > q −√q + 1
4+ 3
2.
In realta e possibile dimostrare, con strumenti piu sofisticati, che la condizione n >
q −√q + 1
4+ 3
2puo essere sostituita dalla piu semplice n > q −√q + 1.
Per q dispari dimostriamo un risultato decisamente piu debole. Premettiamo i seguenti
tre lemmi.
Lemma 5.30. Sia A un n-arco di PG(2, q), q dispari. Supponiamo che l’inviluppo Γ2t
di A abbia una componente Γ2 di classe 2 definita su Fq. Sia C la conica le cui tangenti
sono le rette di Γ2. Allora
#(A ∩ C) ≥ 2n− q − 1; .
Dimostrazione. Osserviamo innanzitutto che il fascio di rette centrato in un punto P
di A incontra Γ2 in due rette (tangenti dell’arco A). Queste due rette coincidono se e
solo se il fascio per P e tangente a Γ, ovvero se e solo se P e un punto della conica C.
Allora per ogni punto di A ∩ C passa una tangente di A appartenente a Γ; per ogni
punto di A \ C ne passano due. Siccome Γ ha q + 1 rette razionali in tutto, si ha
#(A ∩ C) + 2#(A \ C) ≤ q + 1 .
Essendo #(A \ C) = n−#(A ∩ C), l’asserto segue.
Lemma 5.31. Sia X una curva algebrica irriducibile di ordine d definita sulla chiusura
algebrica di Fq, ma non su Fq. Allora il numero di punti Fq-razionali di X e al massimo
d2.
Dimostrazione. Sia X := F = 0, dove
F (X0, X1, X2) =∑
i+j+k=d
aijkXi0X
j1X
k2 .
CAPITOLO 5. CODICI MDS E ARCHI 115
Sia X (1) la curva di equazione F (1) = 0, dove
F (1)(X0, X1, X2) =∑
i+j+k=d
aqijkXi0X
j1X
k2 .
Si ha che X e X (1) sono curve distinte (dello stesso grado d), dato che X non e definita
su Fq. Inoltre ogni punto P di X che sia Fq-razionale e anche punto di X (1). Infatti,
se P = (a : b : c) con a, b, c ∈ Fq, allora
F (1)(a, b, c) =∑
i+j+k=d
aqijkaibjck =
∑i+j+k=d
aqijkaqibqjcqk =
=
( ∑i+j+k=d
aijkaibjck
)q
= (F (a, b, c))q = 0 .
Dal Teorema di Bezout si ha allora che #X (Fq) ≤ d2.
Lemma 5.32. Sia X una curva algebrica definita su Fq. Il numero di componenti di
X di un fissato grado d non definite su Fq e 0 o strettamente maggiore di 1.
Dimostrazione. Sia X := F (X0, X1, X2) = 0. Sia Y :∑
i+j+k=d aijkXi0X
j1X
k2 = 0 una
componente di X non definita su Fq. Allora
F (X0, X1, X2) = H(X0, X1, X2)
( ∑i+j+k=d
aijkXi0X
j1X
k2
),
e quindi
F (X0, X1, X2)q = H(X0, X1, X2)q
( ∑i+j+k=d
aqijkXi0X
j1X
k2
).
Ma essendo X definita su Fq si ha F (X0, X1, X2)q = F (X0, X1, X2), cioe
Y(1) :∑
i+j+k=d
aqijkXi0X
j1X
k2 = 0
e ancora una componente di X , distinta da Y .
Proposizione 5.33. In PG(2, q), q dispari, q ≥ 49, ogni q-arco e contenuto in una
conica.
CAPITOLO 5. CODICI MDS E ARCHI 116
Dimostrazione. L’inviluppo dell’arco ∆2t e di classe 4 e consiste di almeno nt = 2q
rette Fq-razionali. Sia ∆2t irriducibile. Allora per il Teorema di Hasse-Weili
2q ≤ q + 1 + 6√q ,
che e chiaramente impossibile per q ≥ 49.
Supponiamo che ∆2t abbia solo componenti non Fq-razionali. Essendo ∆2t definita su
Fq, per il Lemma 5.32 cio e possibile solo se ∆2t consiste di due componenti non Fq-razionali di classe 2, oppure di quattro componenti non Fq-razionali di classe 1. Allora
dal Lemma 5.31, il numero di rette Fq-razionali di Γ2t sarebbe al massimo 8, ma cio e
evidentemente impossibile essendo 2q > 8.
Se Γ2t ha una componente Fq-razionale di classe 1, dal Lemma 5.28 A e contenuto in
un (q + 1)-arco, ovvero una conica.
Resta ora da esaminare la possibilit’a che ∆2t consista di due componenti Fq-razionali
di classe due. Dal Lemma 5.30 in tal caso esiste una conica C avente 2q− q− 1 = q− 1
punti in comune con A. Consideriamo le q − 1 rette che uniscono P agli altri punti
dell’arco. Chiaramente solo due di queste possono incontrare C in un ulteriore punto.
Si avrebbero cosı almeno q − 3 tangenti a C passanti per uno stesso punto. Ma cio
per q dispari e impossibile, dato che per il Lemma delle Tangenti tre tangenti a un
(q + 1)-arco non sono mai concorrenti.
Segnaliamo che il Teorema precedente puo essere raffinato e combinato con risultati
ottenuti al computer, in modo tale da poter eliminare l’ipotesi q ≥ 49.
Esercizio 65. Si provi il seguente risultato: In PG(2, q), q dispari, q > 83, ogni
(q− 1)-arco e contenuto in una conica. (Suggerimento: si segua la dimostrazione della
Proposizione 5.33).
In riferimento all’esercizio precedente, si noti che il problema di stabilire se esistono
(q− 1)-archi non contenuti in una conica per q minore o uguale di 83 e maggiore di 29
e ancora un problema aperto e di grande interesse.
Per q dispari vale una proposizione analoga alla Proposizione 5.29. La riportiamo
senza dimostrazione. Diremo soltanto che un ruolo decisivo e giocato dal Teorema di
Hasse-Weil.
CAPITOLO 5. CODICI MDS E ARCHI 117
Proposizione 5.34. Sia q dispari, A un n-arco di PG(2, q) e ∆2t un inviluppo asso-
ciato a A. Se n > q− 14
√q+ 7
4, allora ∆2t contiene un inviluppo conico irriducibile ∆2
come componente semplice. In questo caso, la conica C associata a ∆2 contiene A.
Si denoti con m′(2, q) la seconda piu grande cardinalita di un arco completo di PG(2, q).
Chiaramente si ha che per q dispari ogni arco di cardinalita maggiore di m′(2, q) e
contenuto in una conica.
A parte piccoli valori di q, m′(2, q) e stato determinato solo per q e un quadrato pari.
In tal caso, m′(2, q) = q −√q + 1.
5.3 Codici MDS di dimensione superiore: n-archi
di PG(r, q)
La problematica principale in materia e trovare una limitazione superiore alla cardina-
lita di un n-arco di PG(r, q), con r ≥ 3. La situazione e diversa a seconda che s sia
grande o piccolo rispetto a q. Esaminiamo innanzitutto il caso in cui r < q − 1.
Definizione 5.35. Una curva razionale normale di PG(r, q) e un sottoinsieme di punti
proiettivamente equivalente a
{(1 : t : t2 : . . . : tr) | t ∈ Fq} ∪ {(0 : 0 : . . . : 0 : 1)}.
Si puo facilmente verificare che una curva razionale normale di PG(r, q) e un (q + 1)-
arco. Naturalmente la domanda e se possono esistere archi piu grandi, oppure archi
della stessa cardinalita ma diversi.
Teorema 5.36 (Kaneta-Maruta). Sia s un intero tale che ogni n-arco di PG(r, q) con
n ≥ s e contenuto in una curva razionale normale. Allora ogni n-arco di PG(r + 1, q)
con n ≥ s+ 1 e contenuto in una curva razionale normale.
Schema della dimostrazione. Sia A un n-arco di PG(r+1, q) con n ≥ s+1. Si proietti
A dai suoi punti ri ∈ A su iperpiani αi tali che ri /∈ αi. Ciascuna proiezione e un
(n − 1)-arco di un PG(r, q). Essendo n − 1 ≥ s, ogni proiezione e contenuta in una
curva razionale normale Ai di αi. Osserviamo che A e contenuto nell’intersezione dei
CAPITOLO 5. CODICI MDS E ARCHI 118
coni di vertice ri e base Ai. L’asserto segue dal fatto che l’intersezione di tali coni e
una curva razionale normale.
Applicando induttivamente il teorema precedente ottiamo il seguente risultato.
Proposizione 5.37. Sia s un intero tale che ogni n-arco di PG(2, q) con n ≥ s e
contenuto in una curva razionale normale. Allora ogni n-arco di PG(t + 2, q) con
n ≥ s+ t e contenuto in una curva razionale normale.
Per q dispari, nella Proposizione 5.37 si puo scegliere s come m′(2, q)+1. Le limitazioni
viste in precedenza su m′(2, q) hanno quindi le seguenti conseguenze.
Teorema 5.38. Sia q dispari. Se r < q + 3−m′(2, q), allora
(a) m(r, q) = q + 1,
(b) ogni (q + 1)-arco di PG(r, q) e una curva razionale normale.
Per q = 9 si ha che m′(2, q) = 8. Pertanto q + 3 − m′(2, q) = 4, e quindi il teorema
precedente non garantisce che ogni (q+1)-arco di PG(4, 9) sia una curva razionale nor-
male. E infatti in PG(4, 9) esistono due (q + 1)-archi non proiettivamente equivalenti.
Oltre alla curva razionale normale, si ha l’insieme
{(1 : x : x2 + σx6 : x3 : x4)} ∪ {(0 : 0 : 0 : 0 : 1)}
dove σ e un qualunque non quadrato di F9.
Il caso q pari e piu complicato, e non e possibile ottenere risultati con la sola induzione.
Cio dipende essenzialmente dal fatto che i (q+1)-archi di PG(2, q) non sono classificati.
Teorema 5.39. In PG(3, q) con q = 2h ogni (q+1)-arco e proiettivamente equivalente
all’insieme
{(1 : t : t2r
: t2r+1)} ∪ {(0 : 0 : 0 : 1)}
per qualche r tale che (r, h) = 1.
Teorema 5.40. Ogni (q + 1)-arco di PG(4, q), q ≥ 8 pari, e una curva razionale
normale.
CAPITOLO 5. CODICI MDS E ARCHI 119
Il caso in cui la dimensione r e maggiore o uguale di q − 1 e molto piu semplice da
trattare. I punti del simplesso fondamentale S = {A0, A1, . . . , Ar, U}, dove
A0 = (1 : 0 : . . . : 0), A1 = (0 : 1 : . . . : 0)...
...
Ar = (0 : 0 : . . . : 1), U = (1 : 1 : . . . : 1),
costituiscono un (r + 2)-arco, e pertanto m(r, q) ≥ r + 2
Lemma 5.41. Il simplesso fondamentale S e un arco completo se r ≥ q − 1.
Dimostrazione. Sia P ∈ PG(r, q), P = (a0 : a1 : . . . : ar). Se una delle coordinate
e nulla, allora chiaramente P e dipendente con r punti di {A0, A1, . . . , Ar}. In caso
contrario, essendo q − 1 < r + 1, necessariamente si ha che ai = aj per qualche i 6= j.
Supponiamo senza restrizione che a0 = a1. Allora P appartiene all’iperpiano generato
da U , A2, . . ., Ar (avente equazione X0 = X1).
In realta e impossibile che esista un arco A con piu di r + 1 punti. Infatti, possiamo
assumere senza restrizione che un tale A contenga i punti del simplesso fondamentale
S. Ma essendo S completo, A non puo contenere propriamente S.
Proposizione 5.42. Se r e maggiore o uguale di q − 1, allora m(r, q) = r + 2.
5.4 Un’applicazione: divisione di un segreto a tre
livelli
Affrontiamo in quest’ultima sezione del capitolo un problema concreto di suddivisione
di un segreto a tre livelli. Il personale di una filiale di una banca consiste di un direttore,
s vicedirettori, n impiegati. Si vuole escogitare un sistema di attribuzione di codici di
accesso alla cassaforte della banca con le seguenti caratteristiche:
• con il proprio codice il direttore puo aprire la cassaforte;
• due vicedirettori possono aprire la cassaforte (digitando contestualmente i propri
codici);
CAPITOLO 5. CODICI MDS E ARCHI 120
• un vicedirettore e due impiegati possono aprire la cassaforte;
• tre impiegati possono aprire la cassaforte;
• ogni combinazione di dipendenti non inclusa nelle precedenti abbia la stessa pro-
babilita di aprire la cassaforte che quella che si avrebbe digitando un codice
casuale.
La geometria proiettiva puo risolvere questo problema. Si fissi q potenza di un primo,
e si scelga un piano π di PG(4, q). I possibili codici di accesso siano i q2 + q + q punti
di π. Il codice che apre la cassaforte corrisponda ad un punto P ∈ π, noto solo al
direttore. Il piano π si supponga invece noto a tutti.
Sia π1 un altro piano di PG(4, q) che incontra π solo in P , e sia ` una retta di π1
passante per P . Sia infine A un n-arco di π1 tale che nessuna sua secante passi per P .
Allora ad ogni impiegato della banca si rendano note le coordinate di uno dei punti di
A, mentre ad ogni vicedirettore quelle di un punto di ` non appartenente a nessuna
delle secanti di A. Il piano π1 e la retta ` devono essere mantenuti segrete. Allora,
• due vicedirettori possono ricostruire equazioni della retta `, e quindi calcolando
l’intersezione con π possono risalire alla chiave P ;
• tre impiegati, conoscendo le coordinate di tre punti non allineati di π1, possono
ricostruire equazioni del piano π1, e quindi calcolando l’intersezione con π possono
risalire alla chiave P ;
• due impiegati e un vicedirettore, dato che per costruzione nessuna delle secanti
di A passa per un punto associato ad un vicedirettore, conoscono tre punti non
allineati di π1. Pertanto possono ricostruire equazioni del piano π1, e quindi
calcolando l’intersezione con π possono risalire alla chiave P ;
• ogni combinazione non contenuta nelle precedenti non puo ricavare nessuna
informazione sulla chiave P .
Notiamo che fissato il numero di impiegati n, il numero di vicedirettori e vincolato
dalla condizione che nessuna delle secanti di A passa per un punto associato ad un
vicedirettore. Tale vincolo e chiaramente piu debole se l’arco A e focalizzato (o megli
CAPITOLO 5. CODICI MDS E ARCHI 121
ancora iperfocalizzato) sulla retta `. Questa osservazione ha negli ultimi anni restituito
un certo interesse agli archi focalizzati e iperfocalizzati.
Capitolo 6
Curve Algebriche in Crittografia:
Curve Ellittiche
Internet, e-commerce, smartcards e pay-tv. Sono questi i termini oggi piu usati nel
mondo dell’economia, delle finanze e delle comunicazioni; l’uso di cellulari, carte di
credito, schede prepagate e diventato, ormai, abitudine quotidiana. Nasce, quindi, l’e-
sigenza di creare sistemi crittografici con cui velocizzare al massimo la trasmissione
delle informazioni, garantendo, al tempo stesso, elevati livelli di sicurezza. Come mo-
strano i vari crittosistemi a chiave pubblica che sono stati proposti sino ad oggi, essa
dipende fortemente dalla difficolta del problema matematico su cui si basano i sistemi
stessi. Attualmente, solo la fattorizzazione di interi in numeri primi e il problema del
loga-ritmo discreto sulle curve ellittiche sono classificati come Hard Problem, cioe pro-
blemi computazionalmente intrattabili, irrisolvibili. La prima proposta di applicazione
di curve ellittiche nei sistemi crittografici avvenne nel 1985, in maniera indipendente,
da parte di Victor Miller (IBM) e Neil Koblitz (University of Washington) ma ben
presto la potenza dell’ECC, Elliptic Curves Criptosystem, ha raggiunto, e in taluni
casi anche superato, quella del crittosistema a chiave pubblica per eccellenza, l’RSA.
L’efficienza, infatti, dei crittosistemi basati su curve ellittiche puo rilevarsi in piu modi
:
• Efficienza di memorizzazione
• Riduzione del massimo numero di dati trasferibili in rete
122
CAPITOLO 6. CURVE ELLITTICHE 123
• Efficienza computazionale
Questi fattori portano, rispettivamente, alta velocita, basso consumo e riduzione della
lunghezza delle chiavi; percio un’implementazione di ECC e particolarmente adatta in
applicazioni, quali smartcards, che richiedono tali caratteristiche. Esse, infatti, hanno
obblighi estremamente rigidi per cio che riguarda potenza di processamento, parametri
di memorizzazione e spazio di codice, cioe lunghezza delle chiavi; le smartcards vengono
usate principalmente per firme e decifrazioni, operazioni in cui l’ECC e superiore in
efficienza e sicurezza all’RSA. Tutto cio e dovuto, in particolare, alla complessita della
struttura matematica su cui viene costruito l’ECC stesso: le curve ellittiche.
6.1 Segreti e Gruppi
In questa sezione forniremo una descrizione di un semplicissimo schema di crittografia
a chiave pubblica basato su un qualsiasi gruppo abeliano.
Ricordiamo che in un sistema di crittografia a chiave pubblica ogni utente A e dotato di
due chiavi: una chiave pubblica, nota a tutti, che denoteremo PubA; una chiave privata,
nota solo all’utente che denoteremo PrivA. La chiave pubblica serve per chiudere a
chiave il contenitore del messaggio destinato ad A; per questo viene usata da ogni altro
utente che deve comunicare informazioni ad A, e deve pertanto essere nota a tutti. La
chiave privata serve ad aprire quel contenitore, e quindi e indispensabile che sia nota
solo ad A.
6.1.1 Uno schema per garantire la segretezza del messaggio
Sia G un gruppo e sia g ∈ G un elemento di ordine N , dove N e un numero primo
(molto grande).
Ogni utente A sceglie come chiave privata un elemento a non nullo del campo ZN ;
inoltre calcola anche l’inverso a−1 di a in ZN , tenendolo ovviamente segreto. La chiave
pubblica sara l’elemento ga.
Gia a questo punto e evidente la prima proprieta che il gruppo G deve avere:
CAPITOLO 6. CURVE ELLITTICHE 124
(I) nel gruppo G l’equazione in x
h = gx (6.1)
deve essere computazionalmente impossibile da risolvere in tempi ragionevoli.
Se tale ipotesi non fosse soddisfatta, e ovvio che un intruso potrebbe risalire in tempi
ragionevoli alla chiave privata di A conoscendo la sua chiave pubblica. Il problema di
risolvere l’equazione (6.1) si chiama il Problema del Logaritmo Discreto in G.
Torniamo al nostro schema. Supponiamo che A voglia inviare a B un messaggio m.
Supporremo che m sia codificato come elemento del gruppo G. Allora cio che A inviera
a B sara
E = m(gb)a = mgab
(naturalmente b e gb indicano rispettivamente la chiave privata e la chiave pubblica di
B). Si noti che per calcolare E ad A servono solo la chiave pubblica di B e la propria
chiave privata (oltre ovviamente al messaggio m).
Grazie all’ipotesi (I), per un intruso non e possibile risalire a m. Come puo invece farlo
B? L’utente B compira le seguenti operazioni:
• calcola Eb−1, ottenendo cosı E ′ = mb−1
ga (si noti che bb−1 ≡ 1 (mod N) implica
bb−1 = sN + 1, da cui (mgab)b−1
= mb−1(ga)sN+1, ma essendo N l’ordine di g si
ha (ga)sN+1 = (ga)sNga = ga) ;
• calcola E ′/ga, ottenendo cosı E ′′ = mb−1;
• calcola (E ′′)b, ottenendo cosı finalmente m.
Ora e evidente che per essere efficace tale sistema c’e bisogno che le operazioni di
elevamento a potenza, da effettuare sia nella fase di chiusura che in quella di apertura
del messaggio, si possano effettuare in tempi ragionevoli. Pertanto, sara necessario che
(II) nel gruppo G l’elevamento a potenza deve essere calcolabile in tempi rapidi.
Le esigenze (I) e (II) sembrano in contrasto fra loro. In termini molto semplici, deve
essere trovato un compromesso: un gruppo G complicato, ma non troppo. Vedremo
che i gruppi associati a curve ellittiche si prestano a questo compromesso.
CAPITOLO 6. CURVE ELLITTICHE 125
6.1.2 Logaritmo discreto in gruppi qualsiasi
Contiamo (in verita in maniera molto grossolana) il numero di operazioni di gruppo
che sono necessarie per risolvere il problema del logaritmo discreto in un gruppo ciclico
〈g〉 ⊆ G, con G gruppo generico. Esprimeremo tale numero in funzione di n = log2(N),
dove N indica l’ordine di g (n rappresenta il numero di bits necessari per memorizzare
l’intero N).
Algoritmo Banale
L’algoritmo piu semplice per risolvere l’equazione (6.1) e quello di calcolare gli elementi
g, g2, g3, . . . , gs, . . .
finche non si trova i tale che gi = h. Naturalmente se siamo sfortunati possiamo dover
fare N elevamenti a potenza, ovvero un numero di operazioni di gruppo dell’ordine di
grandezza di
2n
Algoritmo Baby Step/Giant Step (BSGS)
Tale algoritmo e basato su un’idea molto semplice; nondimeno consente un risparmio
notevole in termini di numero di operazioni rispetto all’algoritmo banale. Osserviamo
che se applichiamo l’algoritmo di divisione euclidea ad un elemento x in {1, . . . , N} e
a d√Ne otteniamo come risultato due interi s e t tali che
x = sd√Ne+ t, 0 ≤ t ≤ d
√Ne − 1 ;
inoltre essendo x ≤ N si ha anche s ≤ d√Ne. Pertanto cercare x nell’equazione 6.1,
equivale a cercare s ∈ {0, 1, . . . , d√Ne} e t ∈ {0, 1, . . . , d
√Ne−1} tali che h = gsd
√Ne+t,
ovvero
hg−t = gsd√Ne .
Calcoliamo quindi la sequenza
h, hg−1, hg−2, . . . , hg−d√Ne+1;
CAPITOLO 6. CURVE ELLITTICHE 126
Poi calcoliamo le potenze
gd√Ne, g2d
√Ne, . . . ,
fino ad arrivare ad un elemento gia presente nella prima lista. Quando ci sara una tale
coincidenza avremo trovato s e t. Il numero di operazioni compiute e dell’ordine di
grandezza di 2d√Ne, ovvero
2n2
Di fatto, se del gruppo G non si conoscono altre informazioni, l’algoritmo BSGS, op-
portunamente perfezionato, e l’algoritmo piu veloce per la soluzione del problema del
logaritmo discreto.
6.1.3 Gruppi noti
Il gruppo additivo di un campo finito Zp
Il gruppo additivo di un campo finito Zp e senz’altro inadatto ad un utilizzo crittogra-
fico. In questo gruppo infatti gx e in realta xg. Pertanto l’equazione (6.1) ha soluzione
immediata x = h/g.
Il gruppo moltiplicativo di un campo finito Zp
In questo caso il logaritmo discreto non e certo banale. Tuttavia esistono algoritmi
molto piu veloci del BSGS. Precisamente, algoritmi per cui il numero di operazioni
necessarie e dell’ordine di grandezza di
ecn13 (logn)
23 ,
dove c e una costante indipendente da n. Il numero e considerevolmente inferiore a 2n2 .
Il gruppo di Picard di una curva algebrica
Ricordiamo che il gruppo di Picard Pic0(X ) di una curva algebrica X si definisce
come il gruppo quoziente del gruppo dei divisori di grado zero rispetto al sottogruppo
dei divisori principali. Per una curva generica X certamente non esistono algoritmi
CAPITOLO 6. CURVE ELLITTICHE 127
migliori del BSGS, quindi tale gruppo soddisfa senz’altro l’esigenza (I). Affinche anche
la velocita dell’elevamento a potenza sia garantita, occorre pero che la curva X sia una
curva abbastanza semplice; piu precisamente sia una curva di genere 1. Una curva di
genere 1 si dice anche curva ellittica.
Un confronto
Se si confronta il tempo (inteso come numero di operazioni) necessario per risolvere il
problema del logaritmo discreto nel gruppo di Picard di una curva ellittica con quello
relativo al gruppo moltiplicativo di un campo finito, i risultati sono impressionanti.
Infatti si impiega (piu o meno) lo stesso tempo per risolvere il logaritmo discreto in
un gruppo moltiplicativo di un campo finito di ordine p ∼ 21024, che per risolverlo in
un sottogruppo del gruppo di Picard di una curva ellittica di ordine q ∼ 2173 (stesso
discorso per p ∼ 24096, q ∼ 2313). Tutto cio motiva quanto asserito nell’introduzione a
questo capitolo.
6.2 Curve Ellittiche
Una curva ellittica X e una curva algebrica di genere g = 1. Ogni curva ellittica si puo
assumere sia una curva piana non singolare di ordine tre passante per (0 : 0 : 1) (cio e
ovvio se si considerano solo curve non singolari, non lo e invece se si considerano curve
singolari e curve di spazi di dimensione piu grande di due).
Una proprieta fondamentale delle curve ellittiche e che il gruppo di Picard di una curva
ellittica X puo essere descritto in termini del supporto di X .
Teorema 6.1. Sia X una curva ellittica e sia P0 un punto di X . Allora l’applicazione
Φ : X → Pic0(X ), P 7→ (P − P0) + P, e biiettiva. Pertanto X eredita da Pic0(X ) la
struttura di gruppo abeliano.
Dimostrazione. Proviamo l’iniettivita di Φ. Siano P,Q ∈ X , con P 6= Q, e si assuma
Φ(P ) = Φ(Q), ovvero (P − P0) − (Q − P0) ∈ P . Pertanto esiste α ∈ K(X ) tale che
(α) = (P − P0) − (Q − P0) = P − Q. Ma cio e impossibile, dato che dal Teorema di
Riemann-Roch lo spazio L(Q) consiste solo delle funzioni costanti.
CAPITOLO 6. CURVE ELLITTICHE 128
Dimostriamo ora la suriettivita. Sia D + P ∈ Pic0(X ). Dal Corollario 3.53 la dimen-
sione di (L(D+P0)) e uguale a 1, quindi esiste α ∈ K(X ) con (α) ≥ −D−P0. Inoltre
possiamo assumere che (α) 6= −D, perche in caso contrario D + P = P = Φ(P0).
Scriviamo D = D1 − D2 con Di ≥ 0, i = 1, 2, supp(D1) ∩ supp(D2) = ∅. Si noti che
deg(D1) = deg(D2) essendo D ∈ Div0(X ). Sia s il numero di zeri (e di poli) di α. Si
ha quindi
(α) = (α)0 − (α)∞ ≥ D2 − (D1 + P0) ,
e pertanto
(α)0 ≥ D2, (α)∞ ≤ D1 + P0 .
Essendo (α)0 ≥ D2 si ha s ≥ deg(D2). D’altronde (α)∞ ≤ D1 + P0 implica s ≤deg(D1)+1 = deg(D2)+1. Se s = deg(D2), allora (α) = D2−(D1−P )−P0 per qualche
P ∈ supp(D1) e quindiD−(P−P0) e principale. PertantoD+P = (P−P0)+P = Φ(P ).
Altrimenti, s = deg(D2) + 1 e (α) = D2 +Q−D1 − P0 per qualche Q in X . Di nuovo
D − (Q− P0) e principale e D + P = Φ(Q).
In tutto il capitolo supporremo che una curva ellittica X sia definita su un campo finito
Fq. Si noti che se la caratteristica p del campo base Fq e diversa da 2 e da 3, si puo
assumere che un’equazine affine di X sia Y 2 = X3 + AX + B con A,B ∈ Fq (si veda
[3]).
Supponendo che X passi per il puntoO = (0 : 0 : 1), e ponendo P0 = O nel Teorema 6.1,
si definisce una struttura di gruppo abeliano sui punti di X . Descriviamo l’operazione
di gruppo in termini geometrici. Siano P e Q due punti di X , e sia ` : L = 0 la retta per
P e Q se P 6= Q, la retta tangente a X in P in caso contrario. Chiamiamo T il terzo
punto dell’intersezione `∩X , e sia `′ : L′ = 0 la retta per T e (0 : 0 : 1). Sia infine S il
terzo punto nell’intersezione `′∩X . Si noti che (P +Q−2O)−(S−O) = P +Q−S−Oe il divisore principale (α), dove α =
L
L′. Questo vuol dire che (P +Q− 2O)− (S−O)
appartiene a P , ovvero che nel gruppo di Picard di X si ha
((P −O) + P) + ((Q−O) + P) = (S −O) + P .
Nella struttura di gruppo ereditata dal supporto di X si ha allora che la somma di P
e Q e proprio S.
D’ora in poi assumiamo che X abbia equazione
X22X0 + a1X1X2X0 + a3X2X
20 = X3
1 + a2X21X0 + a4X1X
20 + a6X
30 ,
CAPITOLO 6. CURVE ELLITTICHE 129
ai ∈ Fq per i = 1, . . . , 6, e che una struttura di gruppo sia fissata su X ponendo
P0 = O = (0 : 0 : 1) (si puo dimostrare che la forma scelta per l’equazione di X non
costituisce una restrizione). Inoltre poniamo x =X1
X0
, y =X2
X0
, per cui
y2 + a1xy + a3y = x3 + a2x2 + a4x+ a6 . (6.2)
Nel corso del capitolo denoteremo la somma in X con il simbolo ⊕. Per P e Q in Xsi noti quindi la differenza fra P ⊕ Q, che e un punto della curva, e P + Q che e un
divisore.
Esercizio 66. Si provi che l’opposto di un punto P e il terzo punto di X appartenente
alla retta passante per P e per O.
Esercizio 67. Si provi che tre punti P,Q,R di X sono allineati se e solo se
P ⊕Q⊕R = O .
La somma di due punti di X si puo descrivere anche in modo algebrico. Dati due
punti affini P = (xP , yP ) e Q = (xQ, yQ), cerchiamo innanzitutto le coordinate affini
del punto T = (xT , yT ). Occorrera risolvere il sistema che descrive l’intersezione fra Xe la retta per P e Q, ovvero{
y2 + a1xy + a3y − (x3 + a2x2 + a4x+ a6)
y − yP =yQ−yPxQ−xP
(x− xP )
Dopo aver operato l’eliminazione di y, la prima equazione resta un polinomio h(x) di
terzo grado uguagliato a zero; si noti che h ha come radici xP , xQ, xT . Pertanto
h(x)
(x− xP )(x− xQ)
e ancora un polinomio, di primo grado. Sia tale polinomio ux+ v. Si noti che:
• u e v dipendono da xP , yP , xQ, yQ in modo razionale (ovvero come rapporto di
polinomi);
• xT = − vu;
CAPITOLO 6. CURVE ELLITTICHE 130
• yT = yP +yQ−yPxQ−xP
(x− xP );
• la prima coordinata affine della somma P ⊕Q coincide con la prima coordinata
di T essendo P ⊕Q e T allineati con O = (0 : 0 : 1);
• la seconda coordinata affine della somma P ⊕ Q si calcola sostituendo x = xTnell’equazione di X ; resta un polinomio in y di secondo grado; lo si divide per
y − yT e cio che resta e un polinomio di primo grado che ha come radice proprio
la seconda coordinata della somma P ⊕Q.
Come conseguenza di questo algoritmo di calcolo, si ha che le coordinate della som-
ma dipensono in modo razionale dalle coordinate degli addendi. In altri termi-
ni, esistono polinomi g1, g2, g3, g4 tali che per due punti qualsiasi P1 = (1 : x1 :
y1), P2 = (1 : x2 : y2) ∈ X la somma P1 ⊕ P2 e il punto le cui coordinate so-
no
(1 :
g1(x1, y1, x2, y2)
g2(x1, y1, x2, y2):g3(x1, y1, x2, y2)
g4(x1, y1, x2, y2)
). Come caso particolare si ha la seguente
importante proposizione.
Proposizione 6.2. L’applicazione di X in se definita da
[2] : P 7→ P ⊕ P
si esprime come coppia di rapporti di polinomi nelle coordinate di P
Dimostrazione. Mantenendo le notazioni precedenti la proposizione, si ha che le
coordinate di P ⊕ P sono(1 :
g1(x1, y1, x1, y1)
g2(x1, y1, x1, y1):g3(x1, y1, x1, y1)
g3(x1, y1, x1, y1)
).
Cioe definendo i polinomi hi(x, y) = gi(x, y, x, y) si ha che le coordinate di P ⊕P sono(1 :
h1(x1, y1)
h2(x1, y1):h3(x1, y1)
h4(x1, y1)
).
Naturalmente la Proposizione precedente si generalizza per induzione ad ogni
applicazione[m] : X → X , P 7→ P ⊕ P ⊕ . . .⊕ P︸ ︷︷ ︸
m volte
CAPITOLO 6. CURVE ELLITTICHE 131
Esercizio 68. Sia X definita sul campo finito Fq. Si provi che X (Fq) e sottogruppo.
(Suggerimento: si dimostri preventivamente che se due punti P e Q sono Fq-razionali,
allora anche il terzo punto di X sulla retta per P e Q deve esserlo).
Esercizio 69. Si supponga che X (Fq) sia pari. Sia H il sottogruppo di X (Fq) di indice
2. Si dimostri che i punti del laterale di H sono i punti di un k-arco. (Suggerimento:
si tenga conto dell’Esercizio 67).
6.2.1 Isogenie
Definizione 6.3. Una isogenia di X e un morfismo ϕ : X → X tale che ϕ(O) = O.
L’insieme di tutte le isogenie di X si denota End(X ).
Esempio 6.4. Si consideri la curva ellittica X : Y 2−X3 +X = 0 definita su un campo
K di caratteristica diversa da 2. Sia i una radice primitiva quarta dell’unita in K. Il
morfismo definito da (1 : −x : iy) e un’isogenia.
Teorema 6.5. Ogni ϕ ∈ End(X ) e omomorfismo di gruppi.
Dimostrazione. Dimostreremo l’asserto solo nel caso in cui ϕ sia un isomorfismo (la
dimostrazione del caso generale richiede concetti di geometria algebrica che non sono
stati sviluppati nel corso).
Occorre provare che ϕ(P ⊕R) = ϕ(P )⊕ ϕ(R). Ricordiamo che
• la somma P ⊕R e l’unico punto di X tale che il divisore (P ⊕R) +O−P −R e
principale.
Sia dunque α ∈ K(X ) tale che
(α) = (P ⊕R) +O − P −R,
ovvero tale che gli zeri di α sono O e (P ⊕R), mentre i suoi poli sono P e R. Dato che
ϕ e isomorfismo, ha senso considerare il pull-back di α rispetto a ϕ−1, cioe la funzione
α ◦ ϕ−1. Chiaramente gli zeri di α ◦ ϕ−1 sono allora ϕ(O) e ϕ(P ⊕ R), mentre i poli
sono ϕ(P ) e ϕ(R). Essendo ϕ(O) = O, si ha allora
(α ◦ ϕ−1) = ϕ(P ⊕R) +O − ϕ(P )− ϕ(R) ,
CAPITOLO 6. CURVE ELLITTICHE 132
cioe ϕ(P ⊕ R) + O − ϕ(P ) − ϕ(R) e principale. Ma questo implica che ϕ(P ⊕ R) e
proprio la sommma di ϕ(P ) e ϕ(R).
Dalla Proposizione 6.2 segue che per ogni intero m l’applicazione
[m] : X → X , P 7→ P ⊕ P ⊕ . . .⊕ P︸ ︷︷ ︸m volte
e una isogenia di X .
Teorema 6.6. Per ogni m ∈ Z, m 6= 0, l’isogenia [m] e non costante.
Dimostrazione. Si veda [3].
In End(X ) si definisca la somma puntuale nel modo usuale: per ogni ϕ, ψ ∈ End(X )
si ponga
(ϕ⊕ ψ)(P ) = ϕ(P )⊕ ψ(P ).
Si lascia per esercizio la verifica che ϕ⊕ ψ ∈ End(X ).
Proposizione 6.7. L’insieme End(X ), rispetto alla somma puntuale e alla
composizione di applicazioni, e un anello contenente Z e privo di zero divisori.
Dimostrazione. La verifica che End(X ) e un anello e immediata. Per dimostrare la
non esistenza di zero divisori consideriamo che per il Teorema 3.71 ϕ ◦ ψ = 0 implica
che o ϕ o ψ e costante, ovvero ϕ = 0 o ψ = 0. Infine, l’applicazione Z → End(E),
m 7→ [m] e un omomorfismo di anelli dato che [m + n] = [m]⊕ [n] e [mn] = [m] ◦ [n].
Dal Teorema 6.6 questa applicazione e anche iniettiva.
D’ora in avanti per ϕ, ψ ∈ End(X ) scriveremo ϕψ invece di ϕ ◦ ψ, e ϕ+ ψ in luogo di
ϕ⊕ ψ.
Proposizione 6.8. Se ϕ ∈ End(X ) e separabile di grado d, allora per ogni Q ∈ X la
cardinalita dell’insieme ϕ−1(Q) e uguale a d.
Dimostrazione. La cardinalita di ϕ−1(Q) e costante dato che ϕ e un omomorfismo di
gruppi. Allora l’asserto segue dal Teorema 3.82.
CAPITOLO 6. CURVE ELLITTICHE 133
Esempio 6.9. Sia p > 3, e sia X : F (X, Y ) = Y 2 − (X3 + AX + B) = 0. Calcoliamo
la cardinalita dell’insieme delle controimmagini di un punto P rispetto all’isogenia [2].
Tale cardinalita e costante e coincide con quella di Ker([2]), il nucleo di [2]. Si ha
Ker([2]) = {P ∈ X | P ⊕ P = O} .
Dalla rappresentazione geometrica dell’operazione di somma segue che P ⊕ P = O se
e solo se P e punto di molteplicita due nell’intersezione di X con la retta per P e O.
In altri termini, se la tangente a X in P e verticale. Sia P = (a, b); la tangente in P a
X e allora la retta di equazione
FX(P )(X − a) + FY (P )(Y − b) = −(3a2 + A)(X − a) + (2b)(Y − b) = 0 ,
che e verticale se e solo se b = 0. I punti di Ker([2]) sono allora l’elemento neutro O,
e i tre punti di X appartenenti all’asse Y = 0. Vedremo che non e un caso che
#Ker([2]) = 4 .
Definizione 6.10. La mappa razionale Φ : X → P2(Fq), Φ = [1, xq, yq] si dice la
mappa di Frobenius di X .
Proposizione 6.11. La mappa di Frobenius Φ e una isogenia non separabile di X di
grado q.
Dimostrazione. Dato che X e definita su Fq, P ∈ X implica Φ(P ) ∈ X . Pertanto Φ
e un morfismo di X in X . Sia t un parametro locale di X in O, e si scriva Φ = (1 :
xq : yq) = (t3q : t3qxq : t3qyq). Chiaramente ordO(t3qxq) = q e ordO(t3qyq) = 0. Allora
Φ(O) = (0 : 0 : 1) = O, ovvero Φ ∈ End(X ).
Per il Lemma 3.84, Φ e non separabile di grado maggiore o uguale di q. Resta da
provare che vale l’uguaglianza.
Ricordiamo che nella dimostrazione del Lemma 3.84 e gia stato provato che per ogni
parametro locale t, il grado dell’estensione Fq(xq, yq)(t) : Fq(xq, yq) e esattamente q.
Osserviamo che i punti affini di X con tangente verticale sono i punti le cui coordinate
cartesiane annullano il polinomio
∂(Y 2 + a1XY + a3Y −X3 − a2X2 − a4X − a6)
∂Y= 2Y + a1X + a2.
CAPITOLO 6. CURVE ELLITTICHE 134
Supponiamo che il polinomio 2Y + a1X + a3 non sia identicamente nullo. Allora
chiaramente il numero di i punti affini di X con tangente verticale e finito. Cio implica
che esiste una costante a per cui x − a e parametro locale in qualche punto di X , e
quindi il grado dell’estensione
Fq(xq, yq)(x− a) : Fq(xq, yq)
e pari a q. E di immediata verifica che Fq(xq, yq)(x − a) = Fq(xq, yq)(x). Occorre
quindi dimostrare che Fq(xq, yq)(x) coincide con Fq(x, y), ovvero che y ∈ Fq(xq, yq)(x).
Sia my il polinomio minimo di y su Fq(xq, yq)(x). Dato che Fq(xq, yq) e contenuto
in Fq(xq, yq)(x), il polinomio my divide il polinomio minimo di y sopra Fq(xq, yq), e
pertanto my divide f(T ) = T q − yq. Per lo stesso motivo my divide il polinomio
minimo di y su Fq(x), che e g(T ) = T 2 + (a1x + a3)T − (x3 + a2x2 + a4x + a6)
da (6.2). Essendo X non singolare, g(T ) ha due radici distinte, ovvero y e y +√(a1x+ a3)2 + 4(x3 + a2x2 + a4x+ a6) per q dispari, y e y + a1x + a3 per q pari.
D’altronde f(T ) ha solo una radice di molteplicita q. Questo implica che my ha grado
1, cioe y ∈ Fq(xq, yq)(x).
Resta da esaminare il caso in cui il polinomio 2Y + a1X + a3 sia identicamente nullo.
Questo chiaramente accade solo se a1 = a3 = 0 e la caratteristica p di Fq e uguale a
2. In tal caso tutti i punti affini di X hanno tangente verticale, per cui la retta Y = 0
non e tangente a X in nessuno dei suoi punti. Cio implica che y e un parametro locale.
Ragionando come sopra basta quindi dimostrare che Fq(xq, yq)(y) coincide con Fq(x, y),
ovvero che x ∈ Fq(xq, yq)(y). Analogamente al caso precedente, si vede facilmente che
il polinomio minimo di x divide sia T q − xq che T 3 + a2T2 + a4T + a6 − y2, e quindi
deve essere necessariamente di grado 1.
Teorema 6.12. Siano n,m ∈ Z. Allora l’isogenia [m] + [n]Φ e separabile se e solo se
la caratteristica p di Fq non divide m.
Dimostrazione. Si veda [3].
Corollario 6.13. Il numero di punti Fq-razionali di X e il grado dell’isogenia Φ− [1].
Dimostrazione. Si noti innanzitutto che X (Fq) coincide con il nucleo Ker(Φ−[1]), dato
che P ∈ X (Fq) se e solo se Φ(P ) = P . Dal Teorema 6.12 l’isogenia Φ− [1] e separabile.
Allora dalla Proposizione 6.8 la cardinalita di Ker(Φ− [1]) = (Φ− [1])−1(O) coincide
con il grado di Φ− [1] .
CAPITOLO 6. CURVE ELLITTICHE 135
6.2.2 Teorema di Hasse
Quello che segue e il risultato chiave per la dimostrazione del famoso Teorema di Hasse
sul numero di punti Fq-razionali di una curva ellittica.
Teorema 6.14. Sia ϕ ∈ End(X ) una isogenia non costante di grado d. Allora esiste
un’unica ϕ ∈ End(X ) tale che ϕϕ = [d].
Definizione 6.15. L’isogenia ϕ si dice isogenia duale di ϕ.
Proposizione 6.16. Siano ϕ, ψ ∈ End(X ) due isogenie non costanti, e sia m un
intero. Valgono le seguenti proprieta.
1) ϕ+ ψ = ϕ+ ψ;
2) ϕψ = ψϕ;
3) [m] = [m];
4) deg([m]) = m2;
5) deg(ϕ) = deg(ϕ);
6) ˆϕ = ϕ.
Dimostrazione. 1) Si veda [3].
2) Per definizione di isogenia duale ψϕϕψ = ψ[deg(ϕ)]ψ = [deg(ϕ)]ψψ =
[deg(ϕ)][deg(ψ)] = [deg(ϕ)deg(ψ)]. Dalla Proposizione 3.78 segue
[deg(ϕ)deg(ψ)] = [deg(ϕψ)]. Pertanto ψϕϕψ = [deg(ϕψ)], e l’asserto segue dalla
definizione di isogenia duale.
3) Per definizione ˆ[1] = [1], dato che [1] altro non e che la mappa identica su X . Da 1)
segue che [1] + [1] + . . .+ [1] = ˆ[1]+ ˆ[1]+. . .+ ˆ[1]. Si scriva [m] = [1]+[1]+. . .+[1].
Allora m = [1] + [1] + . . .+ [1] = [1]+[1]+. . .+[1] = [m], e l’asserto e dimostrato.
4) Da 3) [deg([m])] = [m] ˆ[m] = [m][m] = [m2].
CAPITOLO 6. CURVE ELLITTICHE 136
5) Da 4) deg([deg(ϕ)]) = deg(ϕ)2. D’altronde deg([deg(ϕ)]) = deg(ϕϕ) per
definizione. L’asserto allora segue dalla Proposizione 3.78, dato che
deg(ϕ)2 = deg(ϕϕ) = deg(ϕ)deg(ϕ) .
6) L’asserto segue da 5) dato che ϕϕ = [deg(ϕ)] = [deg(ϕ)] = ϕϕ = ϕ ˆϕ.
Per provare il Teorema di Hasse il lemma seguente e necessario.
Lemma 6.17. Siano ϕ, ψ due isogenie non costanti di X . Allora
| deg(ψ − ϕ)− deg(ψ)− deg(ϕ) |≤ 2√deg(ϕ)deg(ψ) .
Dimostrazione. Per ogni m,n ∈ Z calcoliamo l’intero z = deg([m]ϕ − [n]ψ) −deg([m]ϕ)− deg([n]ψ). Per definizione di isogenia duale si ha allora
[z] = [deg([m]ϕ− [n]ψ)]− [deg([m]ϕ)]− [deg([n]ψ)] =
= ([m]ϕ− [n]ψ)([m]ϕ− [n]ψ)− ([m]ϕ)([m]ϕ)− ([n]ψ)([n]ψ) .
Da 1) e 2) della Proposizione 6.16 segue
[z] = −([m]ϕ[n]ψ + [n]ψ[m]ϕ) ,
e da 3) della Proposizione 6.16 abbiamo [z] = −[m][n](ϕψ + ψϕ). Essendo
−(ϕψ + ψϕ) = [deg(ψ − ϕ)− deg(ψ)− deg(ϕ)]
per definizione di isogenia duale, finalmente otteniamo [z] = [m][n][deg(ψ − ϕ) −deg(ψ)− deg(ϕ)], ovvero
deg([m]ϕ− [n]ψ)− deg([m]ϕ)− deg([n]ψ) = mn(deg(ψ − ϕ)− deg(ψ)− deg(ϕ)) .
Ora, essendo deg([m]ϕ − [n]ψ) non negativo, e dato che da 2) e 4) della Proposizione
6.16 deg([m]ϕ) = m2deg(ϕ) e deg([n]ψ) = n2deg(ψ), abbiamo
mn(deg(ψ − ϕ)− deg(ψ)− deg(ϕ)) +m2deg(ϕ) + n2deg(ψ) ≥ 0 .
CAPITOLO 6. CURVE ELLITTICHE 137
Per m = −(deg(ψ−ϕ)−deg(ψ)−deg(ϕ)) e n = 2deg(ϕ), la disuguaglianza precedente
diventa
−deg(ϕ)(deg(ψ − ϕ)− deg(ψ)− deg(ϕ))2 + 4deg(ϕ)2deg(ψ) ≥ 0 ,
ovvero deg(ϕ)(−(deg(ψ − ϕ)− deg(ψ)− deg(ϕ))2 + 4deg(ϕ)deg(ψ)) ≥ 0. Finalmente,
essendo deg(ϕ) ≥ 0 si ha (deg(ψ−ϕ)−deg(ψ)−deg(ϕ))2 ≤ 4deg(ϕ)deg(ψ), e il lemma
e dimostrato.
Teorema 6.18 (Teorema di Hasse). Sia X una curva ellittica definita su Fq. Allora
| #X (Fq)− (q + 1) |≤ 2√q .
Dimostrazione. Sia ψ = Φ e ϕ = [1]. Dal Lemma 6.17 si ha
| deg(Φ− [1])− deg(Φ)− deg([1]) |≤ 2√deg(Φ)deg([1]) .
Essendo deg(Φ) = q e deg([1]) = 1, segue che |deg(Φ − 1) − q − 1 |≤ 2√q. L’asserto
allora segue dal Corollario 6.13.
Corollario 6.19. Sia t := #X − (q + 1). Allora
Φ2 − Φ[t] + [q] = 0 .
Dimostrazione. Notiamo innanzitutto che dalla Proposizione 6.11 e dalla definizione
di isogenia duale si ha ΦΦ = [q]. Inoltre [t] = Φ + Φ. Infatti [q] + 1− [t] = [#X (Fq)] =(Φ− [1])(Φ − [1]) = ΦΦ + [1] − Φ − Φ = [q] + 1 − (Φ + Φ). Il Corollario e quindi
dimostrato, essendo 0 = (Φ)2 − Φ(Φ + Φ) + ΦΦ = Φ2 − Φ[t] + [q].
6.3 Weil Pairing
Sia X una curva ellittica, m ≥ 2 un intero primo con la caratteristica p del campo su
cui e stata costruita. Sia X [m] il gruppo dei punti di m-torsione di X , ovvero
X [m] = Ker([m]) = {P ∈ X | [m]P = O} .
D’ora in avanti con il simbolo⊕
intenderemo una sommatoria di punti di X . Si noti
la differenza fra le scritture
CAPITOLO 6. CURVE ELLITTICHE 138
•∑nPP (che rappresenta un divisore), e
•⊕
[nP ]P (che rappresenta un punto di X ).
Faremo uso del seguente risultato.
Proposizione 6.20. Sia D =∑nPP un divisore di X di grado 0. Allora D e
principale se e solo se⊕
[nP ]P = O.
Dimostrazione. Si osservi che, essendo deg(D) =∑nP = 0, si ha
D =∑
nPP =∑
nPP −∑
nPO =∑
nP (P −O).
Inoltre D e principale solo se la sua classe in Pic0(X ) e nulla. Pertanto D ∈ P se e
solo se
0 = [D] = [∑
nP (P −O)] =∑
nP [P −O].
Ricordando che la mappa P 7→ [P − O] e isomorfismo gruppale di (X ,⊕) in Pic0(X ),
si ha che
0 =∑
nP [P −O] (in P ic0(X ))⇔ O =⊕
[nP ]P (in (X ,⊕)).
Si fissi T ∈ X [m]. Consideriamo il divisore
D = mT −mO
Si osserva che [m]T ⊕ [−m]O = O; pertanto per la Proposizione precedente esiste fTin Fq(X ) tale che
(fT ) = mT −mO.
Sia ora T ′ ∈ X tale che [m]T ′ = T (ricordiamo che [m] non essendo costante e
suriettiva). Consideriamo il divisore
D′ =∑
R∈ X [m]
(T ′ ⊕R)−R .
CAPITOLO 6. CURVE ELLITTICHE 139
Si osservi che X [m] ha cardinalita m2 dato che m non e diviso dalla caratteristica p, e
quindi
{T ′ ⊕R | R ∈ X [m]}
consiste delle m2 controimmagini di T mediante [m]. Pertanto
D′ =∑
[m]S=T
S −∑
R∈ X [m]
R.
Chiaramente D′ ha grado uguale a 0. Inoltre,⊕R∈ X [m]
(T ′ ⊕R)⊕
R∈ X [m]
[−1]R =⊕
R∈ X [m]
T ′ = [m2]T ′ = [m]([m]T ′) = [m]T = O.
(la prima uguaglianza segue dal fatto che [−1]R e l’opposto di R nel gruppo dei punti
di X , e pertanto R ⊕ [−1]R = O). Allora per la Proposizione 6.20 esiste gT in Fq(X )
tale che
(gT ) =∑
R∈ X [m]
[(T ′ ⊕R)−R]
Proposizione 6.21. Le mappe (fT ◦ [m]) e gmT hanno lo stesso divisore.
Dimostrazione. Il divisore di gmT e
(gmT ) =∑
R∈X [m]
m(T ′ ⊕R)−∑
R∈X [m]
mR .
Gli zeri (risp. i poli) di fT ◦ [m] sono i punti mandati da [m] in T (risp. O), e la loro
molteplicita e m; pertanto
(fT ◦ [m]) = m
∑R∈X [m]
(T ′ ⊕R)−∑
R∈X [m]
R
.
Chiaramente i due divisori coincidono.
Dalla Proposizione appena dimostrata segue che esiste una costante non nulla λ ∈ Fqtale the
λ(fT ◦ [m]) = gmT .
CAPITOLO 6. CURVE ELLITTICHE 140
Si consideri un qualsiasi punto S ∈ X [m]. Si ha che per ogni X ∈ X
gmT (X ⊕ S) = λ(fT ◦ [m])(X ⊕ S) = λfT ([m](X ⊕ S)) = λfT ([m]X ⊕ [m]S))
= λfT ([m]X ⊕O) = λfT ([m]X) = λ(fT ◦ [m])(X) = gmT (X) .
Pertanto, per ogni X ∈ X ,
gmT (X ⊕ S)
gmT (X)= 1 .
In altre parolegT (X ⊕ S)
gT (X)e una radice m-esima dell’unita per ogni X ∈ X .
Definizione 6.22. Il Weil m-pairing si definisce come la funzione
em : X [m]×X [m] −→ µm
(T, S) 7−→ gT (X ⊕ S)
gT (X)
dove µm e il gruppo delle radici m-esime dell’unita in Fq e X un qualsiasi punto di Xper cui gT (X ⊕ S) e gT (X) esistono e non sono nulli.
Osservazione 6.23. La definizione e indipendente da X. Infatti la mappa razionale
Ψ =
(1 :
gT (· ⊕ S)
gT (·): 0
), Ψ : X −→ {X2 = 0}
e una mappa razionale non suriettiva in quanto il suo codominio e dato dai soli m
punti (1 : α : 0), con α radice m-esima dell’unita; ne segue che essa risulta costante su
tutti gli elementi X ∈ X .
Il Weil m-pairing gode delle seguenti proprieta, la cui dimostrazione esula dagli scopi
di questo corso.
1. ∀ P ∈ X [m], em(P, P ) = 1.
CAPITOLO 6. CURVE ELLITTICHE 141
2. ∀ P1, P2 ∈ X [m], em(P1, P2) = em(P2, P1)−1.
3. ∀ P1, P2 e P3 ∈ X [m], em(P1 ⊕ P2, P3) = em(P1, P3)em(P2, P3) e
em(P1, P2 ⊕ P3) = em(P1, P2)em(P1, P3).
4. Se P1 ∈ X [m], allora em(P1, O) = 1. Se em(P1, P2) = 1 ∀ P2 ∈ X [m], allora
P1 = O.
5. Se X [m] ⊆ X (Fqk) per un certo intero k, allora em(P1, P2) ∈ Fqk , ∀ P1, P2 ∈X [m].
6.4 L’attacco MOV al Problema del Logaritmo
Discreto
Sia X una curva ellittica costruita sul campo finito Fq. Fissato P ∈ X (Fq), sia Q il
punto
Q = [m]P.
Il Problema del Logaritmo discreto in una curva ellittica e il problema di conoscere m
essendo noti P e Q.
L’attacco MOV rappresenta un algoritmo di risoluzione del problema del logaritmo
discreto su curve ellittiche. Si applica a classi particolari di curve ellittiche, e ovvia-
mente tali classi non dovrannno essere prese in considerazione per la costruzione di
crittosistemi.
Analizzeremo quello che gli stessi ideatori, Alfred J.Menezes, Tatsuaki Okamoto e Scott
A.Vanstone, hanno descritto, sottolineando, tuttavia, che, attualmente, esistono delle
rivisitazioni dell’algoritmo iniziale.
Teorema 6.24. Sia X una curva ellittica sul campo Fq. Esistono due interi n1 e n2
tali che
X (Fq) ' Zn1 ⊗ Zn2
CAPITOLO 6. CURVE ELLITTICHE 142
con n2 che divide n1 e (q − 1). In tal caso si dice che la curva e di tipo (n1, n2).
Proposizione 6.25. L’ordine massimo di un punto razionale di una curva X di tipo
(n1, n2) e n1.
Dimostrazione. L’asserto segue dalle proprieta elementari del prodotto diretto di
gruppi finiti.
Lemma 6.26. Sia X una curva ellittica, e sia m un intero primo con q. Sia P ∈ X [m]
un punto di ordine m. Allora, per ogni P1, P2 ∈ X [m], P1 e P2 appartengono allo stesso
laterale rispetto al sottogruppo < P > se e solo se em(P, P1) = em(P, P2).
Dimostrazione. L’applicazione em(P, ·) : X [m] → µm e omomorfismo di gruppi dalla
proprieta (3) del Weil Pairing. Si puo dimostrare che il nucleo di tale omomorfismo e
proprio il sottogruppo di X [m] generato da P (una delle due inclusioni segue facilmente
da (1) e (3)). L’asserto quindi segue dalle proprieta elementari degli omomorfismi di
gruppi.
Sia data una curva ellittica di tipo (n1, n2). Si calcoli la cardinalita #X (Fq) e si
supponga che sia prima con q. Questo ci assicura che n1 e q sono primi tra loro.
Sia P ∈ X (Fq) un punto di ordine m, dove m e un intero noto che divide n1. Si ha
ovviamente che anche m e primo con q, e quindi con p, la caratteristica di Fq. Ha senso,
quindi, definire il Weil Pairing em. Dato un punto R di X cerchiamo di determinare,
se esiste, l’unico intero l, 0 ≤ l ≤ (m − 1), tale che R = [l]P . L’esistenza di l si puo
stabilire nel seguente modo. Dal Lemma 6.26 deduciamo che
R ∈< P > ⇐⇒ mR = O (R ∈ X [m]) e em(P,R) = 1.
Risulta che le due condizioni sono controllabili in tempo polinomiale. Vediamo ora
come determinare l utilizzando il Weil Pairing. Sia k il piu piccolo intero tale che
X [m] ⊆ X (Fqk). Proviamo che un tale intero esiste: per ogni punto Q della curva
esiste un intero iQ per cui Q e FqiQ -razionale; ogni comune multiplo s degli interi iQ,
con Q che varia negli m2 punti di X [m], allora e tale che X [m] ⊆ X (Fqs). Dalle
proprieta del Weil Pairing segue che em(P1, P2) ∈ Fqk per ogni P1, P2 ∈ X [m].
Teorema 6.27. Sia P ∈ X [m], e sia ω una radice primitiva m-esima dell’unita in Fq.Allora esiste Q ∈ X [m] tale che em(P,Q) = ω.
CAPITOLO 6. CURVE ELLITTICHE 143
Dimostrazione. Per ogni punto Q di n-torsione em(P,Q) ∈ µm. L’ordine del sottogrup-
po < P > in X [m] e m, ovvero esistono m laterali di < P > in X [m]. Ricordiamo che
Q e Q′ appartengono allo stesso laterale se e solo se em(P,Q) = em(P,Q′). Otteniamo
pertanto m valori distinti; cioe l’insieme {em(P,Qi)} esaurisce tutte le radici m-esime
dell’unita, da cui l’asserto.
Teorema 6.28. Sia Q ∈ X [m] tale che em(P,Q) e radice primitiva m-ma dell’unita.
Allora l’applicazionef : < P > −→ µm,
R 7−→ em(R,Q)
e un isomorfismo di gruppi.
Dimostrazione. L’applicazione e iniettiva. Sia em(R1, Q) = em(R2, Q), cioe
em(l1P,Q) = em(l2P,Q); per le proprieta del Weil Pairing, possiamo scrivere ωl1 =
em(l1P,Q) e ωl2 = em(l2P,Q), quindi l’iniettivita e banalmente provata. La suriettivita
segue dal fatto che i due gruppi hanno la stessa cardinalita.
Mediante tale isomorfismo, il problema viene spostato nel sottogruppo delle radici del-
l’unita del gruppo moltiplicativo di un’estensione finita del campo Fq. Se tale estensione
ha grado non troppo alto, e allora possibile risolvere il problema del logaritmo discreto
in X [m] in tempi paragonabili a quelli necessari in Fq. Riassumiamo quı di seguito i
passaggi dell’algoritmo MOV.
Sia P un punto di ordine m, R ∈< P > tale che
R = [l]P.
1. Determinare l’intero k tale che X [m] ⊆ X (Fqk). Tale intero corrisponde al
minimo k per cui m divide qk − 1.
2. Trovare Q ∈ X [m] tale che em(P,Q) e radice primitiva m-ma dell’unita; sia
α = em(P,Q).
3. Calcolare β = em(R,Q) = em([l]P,Q) = αl.
4. Calcolare il logaritmo di β in base α in µm.
CAPITOLO 6. CURVE ELLITTICHE 144
Classe t Struttura del gruppo n1 k Tipo della curva
(1) 0 ciclico q + 1 2 (q + 1, q + 1)
(2) 0 Z(q+1)/2 ⊗ Z2 (q + 1)/2 2 (q + 1, q + 1)
(3) ±√q ciclico q + 1∓√q 3 (√q3 ± 1,
√q3 ± 1)
(4) ±√
2q ciclico q + 1∓√
2q 4 (q2 + 1, q2 + 1)
(5) ±√
3q ciclico q + 1∓√
3q 6 (q3 + 1, q3 + 1)
(6) ±2√q Z√q∓1 ⊗ Z√q∓1
√q ∓ 1 1 (
√q ∓ 1,
√q ∓ 1)
Tabella 6.1: Caratteristiche delle curve supersingolari.
L’aspetto fondamentale di questo attacco e che, se k e troppo grande, la riduzione
sopra analizzata richiede un tempo esponenziale di risoluzione, quindi diventa un’azione
improponibile. Questa e la proprieta che si cerca di ottenere quando si sceglie una curva
ellittica con lo scopo di utilizzarla in crittografia: la sicurezza del crittosistema, basata
sul problema del logaritmo discreto su curve ellittiche, e garantita da un elevato valore
dell’intero k. Per tale motivo che le curve supersingolari, in cui la caratteristica p del
campo divide la traccia di Frobenius, non sono utilizzate in crittografia. Studi compiuti
su tali strutture, hanno portato ad una classificazione di tali curve in sole sei classi.
1. t = 0 e X (Fq) ' Zq+1.
2. t = 0 e X (Fq) ' Z(q+1)/2 ⊗ Z2.
3. t2 = q.
4. t2 = 2q.
5. t2 = 3q.
6. t2 = 4q.
Per ciascuna di tali classi, si e calcolato l’intero k e si e visto che il valore massimo
che si puo ottenere e 6. Questo ci dice che le curve supersingolari sono assai lontane
dai livelli di sicurezza garantiti da una “buona” curva ellittica. Riassumiamo tutti i
risultati sopra citati nella Tabella 6.1.
Capitolo 7
Message Authentication Codes
7.1 Introduzione
In crittografia un Message Authentication Code (MAC) e un piccolo blocco di dati
utilizzato per autenticare un messaggio digitale. Un algoritmo MAC accetta in ingresso
una chiave segreta ed un messaggio da autenticare di lunghezza arbitraria, e restituisce
un MAC (alle volte chiamato anche tag). Il valore MAC protegge sia l’integrita dei
dati del messaggio sia la sua autenticita permettendo al destinatario dello stesso (che
deve anch’egli possedere la chiave segreta) di rilevare qualsiasi modifica al messaggio.
I MAC differiscono dalle firme digitali in quanto sono sia generati che verificati uti-
lizzando la stessa chiave segreta. Questo implica che il mittente ed il destinatario del
messaggio devono scambiarsi la chiave prima di iniziare le comunicazioni, come nel caso
della crittografia simmetrica. Per questa ragione i MAC non forniscono la proprieta del
non ripudio offerta dalle firme digitali: qualunque utente che puo verificare un MAC e
anche capace di generare MAC per altri messaggi. Invece una firma digitale e generata
utilizzando la chiave privata di una coppia di chiavi (crittografia asimmetrica).
Il mittente deve inviare un messaggio ad un destinatario. Prima di effettuare l’opera-
zione si accorda col destinatario su una chiave segreta. Stabilita la chiave, il mittente
utilizza una funzione di MAC (MAC Algorithm) per calcolare il MAC del messaggio
ed infine invia entrambi al destinatario. Questi calcola il MAC del messaggio ricevuto
145
CAPITOLO 7. MESSAGE AUTHENTICATION CODES 146
e poi lo confronta con il MAC allegato al messaggio stesso: se coincidono, il messaggio
e integro, altrimenti qualcosa e andato storto.
La formalizzazione matematica di questa situazione e molto semplice: un sistema MAC
e una quaterna (X ,K,Y , E) dove:
• X e l’insieme dei possibili messaggi;
• Y e l’insieme dei possibili tag;
• K e l’insieme delle possibili chiavi;
• E e una legge che associa ad ogni chiave K ∈ K una funzione hK : X → Y .
Mittente e destinatario si accordano segretamente su una chiave K e il tag associato
al messaggio x ∈ X sara il valore di hK(x) ∈ Y .
Poniamo
#X = n, #Y = m, #K = b.
La sicurezza di un sistema MAC si valuta come capacita di resistere a due tipi di
attacchi: impersonation e substitution. Si ha impersonation quando un terzo soggetto
riesce a individuare il tag hK(x) di un messaggio x senza avere nessuna informazione
sulla chiave K. Si ha substitution quando un terzo soggetto riesce a individuare il tag
hK(x′) di un messaggio x′ a partire dalla sola conoscenza della tag hk(x) di un altro
messaggio x.
Valutiamo quindi la massima probabilita p0 di successo di un attacco di tipo
impersonation, e quella p1 di successo di un attacco di tipo substitution.
Se il terzo soggetto invia il messaggio x e una tag y, la probabilita che la tag venga
accettata dal destinatario e uguale alla probabilita che la chiave K concordata sia tale
che y = hK(x), ovvero
#{K ∈ K | y = hK(x)}#K
=#{K ∈ K | y = hK(x)}
b
Naturalmente tale probabilita varia al variare di x e y. Si ha quindi che
p0 = maxx∈X ,y∈Y
{#{K ∈ K | y = hK(x)}
b
}.
CAPITOLO 7. MESSAGE AUTHENTICATION CODES 147
Lemma 7.1. Si ha p0 ≥ 1m
e l’uguaglianza si verifica solo se
#{K ∈ K | y = hK(x)} =b
m
per ogni x ∈ X e per ogni y ∈ Y.
Dimostrazione. Si ha chiaramente∑y∈Y
#{K ∈ K | y = hK(x)} = #K = b (7.1)
Essendo gli addendi in numero di m si ha chiaramente che almeno un addendo e
maggiore o uguale di b/m, e quindi per almeno una coppia (x, y) la probabilita
#{K ∈ K | y = hK(x)}#K
= .#{K ∈ K | y = hK(x)}
b
e maggiore o uguale di 1m
. Quindi p0 ≥ 1m
. Se vale l’uguaglianza vuol dire che in nessun
caso un addendo della (7.1) e maggiore di b/m, da cui facilmente segue l’asserto.
Occupiamoci adesso del valore di p1. Supponiamo che il terzo soggetto sappia che la
chiave K e tale che hK(x) = y. Allora il suo attacco substitution sara costituito da una
coppia (x′, y′) tale che y′ = hK′(x′) per qualche K ′ tale che y = hK′(x). La probabilita
di successo di tale attacco dipendera da x, y, x′, y′ e precisamente sara data da
#{K ′ ∈ K | y′ = hK′(x′), y = hK′(x)}
#{K ′ ∈ K | y = hK′(x)}.
Il valore di p1 sara quindi il massimo di tale valore, al variare di x, x′, y, y′. Il seguente
risultato segue immediatamente dal Lemma 7.1.
Lemma 7.2. Se p0 = 1m
, allora
p1 = maxx,x′∈X ,y,y′∈Y,x 6=x′
{#{K ′ ∈ K | y′ = hK′(x
′), y = hK′(x)}b/m
}.
Nel caso in cui p0 = 1/m e p1 ≤ ε, la quaterna (X ,Y ,K, E) viene detta ε-Almost
Strongly Universal (o brevemente ε-ASU). In altre parole, (X ,Y ,K, E) e ε-ASU se si
verificano le seguenti due condizioni:
CAPITOLO 7. MESSAGE AUTHENTICATION CODES 148
(A)
#{K ∈ K | y = hK(x)} =b
mper ogni x ∈ X e per ogni y ∈ Y .
(B)
#{K ′ ∈ K | y′ = hK′(x′), y = hK′(x)} ≤ ε
b
mper ogni x, x′ ∈ X , x 6= x′ e per ogni y, y′ ∈ Y .
Proposizione 7.3. Per ogni una quaterna ε-ASU si ha ε ≥ 1m
e l’uguaglianza vale se
e solo se #{K ′ ∈ K | y′ = hK′(x′), y = hK′(x)} = b
m2 per ogni x, x′ ∈ X , y, y′ ∈ Y,
x 6= x′.
Dimostrazione. Fissati x e x′ si ha∑y,y′∈Y
#{K ′ ∈ K | y′ = hK′(x′), y = hK′(x)} = b.
Pertanto almeno un addendo vale almeno bm2 . Questo prova che ε ≥ 1
m. Se vale ε = 1
m
allora in nessun caso un addendo supera bm2 , e di conseguenza tutti gli addendi sono
uguali a bm2 .
Al fine di ottenere un sistema utile nella pratica, occorre limitare la quantita di tempo
e di spazio richiesta dall’autenticazione. Se per esempio avessimo b = 2100 e m = 240,
allora ogni tag consisterebbe di 40 bit e l’informazione sulla chiave (che deve essere
trasmessa preventivamente in un canale segreto) sarebbe una stringa di 100 bit. Non
avrebbe senso usare un tale sistema per esempio nel caso in cui n fosse 2100: non ci si
puo permettere di spendere meta del tempo di trasmissione per scopi di autenticazione.
Se consideriamo il numero di messaggi e i livelli di sicurezza richiesti (ovvero i parametri
p0, p1 e n) come dati, allora il nostro scopo diventa costruire sistemi MAC dove sia b
che m sono piu piccoli possibile. Osserviamo anche che a parita di p0, p1, b e m sono
preferibili i sistemi MAC con n grande.
Riportiamo senza dimostrazione il seguente teorema, dovuto a Bose e Bush.
Teorema 7.4. Sia (X ,Y ,K, E) una quaterna ε-ASU con ε = 1/m. Allora
b ≥ n(m− 1) + 1.
CAPITOLO 7. MESSAGE AUTHENTICATION CODES 149
In virtu di tale teorema, possiamo affermare che sistemi MAC ottimali dal punto di
vista della sicurezza sono praticamente irrealizzabili.
7.2 ε-ASU da curve algebriche, I
Sia X una curva algebrica definita su Fq e di genere g. Sia T un sottoinsieme di X (Fq).Sia inoltre D un divisore effettivo Fq-razionale tale che nessun punto di T appartenga
al supporto di D. Infine, si scelga un punto R di T e si ponga G = D −R.
Lemma 7.5. Lo spazio vettoriale LFq(D) e isomorfo alla somma diretta di Fq e LFq(G).
Precisamente si ha
LFq(D) = {α + f | f ∈ LFq(G), α ∈ Fq}.
Dimostrazione. Sia ϕ : LFq(D) → Fq l’applicazione che associa ad una funzione f il
valore f(R). Si noti che tale applicazione e ben definita dato che f ∈ L(D) implica
vR(f) ≥ 0. Inoltre ϕ e banalmente lineare. Il nucleo di ϕ consiste di quelle funzioni
tali che vR(f) ≥ −(−1), da cui segue che Ker(ϕ) = LFq(G). Visto che il nucleo ha
codimensione minore o uguale di 1, e tenuto conto del fatto che le costanti appartengono
a L(D) ma non al nucleo, segue immediatamente l’asserto.
Si consideri la quaterna (X ,Y ,K, E) dove:
• X = LFq(G);
• Y = Fq;
• K = {(P, α) | P ∈ T, α ∈ Fq};
• E = {hK | K ∈ K} dove h(P,α)(f) = f(P ) + α.
Lemma 7.6. Se deg(D) ≥ 2g + 1, allora le funzioni di E sono a due a due distinte.
Dimostrazione. Siano (P, α) e (Q, β) tali che h(P,α) = h(Q,β), ovvero per ogni f ∈ LFq(G)
si ha
f(P ) + α = f(Q) + β.
CAPITOLO 7. MESSAGE AUTHENTICATION CODES 150
Ponendo f = 0 si ha immediatamente che α = β, e quindi f(P ) = f(Q) per ogni
f ∈ LFq(G). Dal Lemma precedente allora si ha f(P ) = f(Q) per ogni f ∈ LFq(D).
Siccome deg(D−P ) > deg(D−P −Q) ≥ 2g− 1, dal Teorema di Riemann-Roch segue
che
`(D − P ) = deg(D)− g`(D − P −Q) = deg(D)− g − 1
Pertanto esiste una funzione u ∈ LFq(D − P ) \ LFq(D − P −Q). Se P e diverso da Q,
allora deve valere u(P ) = 0 e u(Q) 6= 0, che e una contraddizione. Pertanto P = Q.
Teorema 7.7. Se deg(D) ≥ 2g + 1 la quaterna (X ,Y ,K, E) e una ε-ASU con
n = qdeg(D)−g, m = q, b = q#T, ε =deg(D)
#T.
Dimostrazione. La cardinalita di X e pari alla cardinalita di LFq(G). Essendo LFq(G)
uno spazio vettoriale su Fq di dimensione `(G) = `(D) − 1, dal Teorema di Riemann-
Roch segue n = qdeg(D)−g. Le affermazioni su m e b sono banali. Restano quindi da
dimostrare le proprieta (A) e (B) per ε = deg(D)/#T . Contiamo innanzitutto, fissati
x ∈ LFq(G) e y ∈ Fq, il numero di elementi nell’insieme
{(P, α) | y = x(P ) + α}
E evidente che per ogni possibile scelta di P esiste un unico valore di α per cui α =
x(P ) − y. Pertanto la cardinalita dell’insieme e #T , che coincide con b/m. Questo
dimostra (A).
Fissiamo adesso x, x′ ∈ LFq(G) e y, y′ ∈ Fq, supponendo x 6= x′. Consideriamo l’insieme
{(P, α) | y′ = x′(P ) + α, y = x(P ) + α}.
Osserviamo che per ogni fissato P al massimo c’e una coppia (P, α) nell’insieme. Questo
accade precisamente quando y′ − y = (x′ − x)(P ), ovvero quando P e uno zero della
funzione razionale x′ − x − (y′ − y) ∈ LFq(D). Essendo D un divisore effettivo, ogni
funzione in L(D) ha al massimo deg(D) poli e quindi deg(D) zeri. Questo dimostra
che la cardinalita dell’insieme e al massimo deg(D). Questo dimostra (B).
CAPITOLO 7. MESSAGE AUTHENTICATION CODES 151
7.3 ε-ASU da curve algebriche, II
In questa sezione vedremo come i codici lineari, e in particolare i codici di Goppa,
possano essere utili per la costruzione di efficienti sistemi MAC.
Introduciamo innanzitutto il concetto di composizione di due sistemi MAC. Siano
M1 = (X1,Y1,K1, E1) e M2 = (X2,Y2,K2, E2) due sistemi MAC. Supponiamo che
X2 = Y1. Allora e possibile definire la composizione M1 ◦ M2 come la quaterna
(X ,Y ,K, E) dove
• X = X1,
• Y = Y2,
• K = K1 ×K2,
• E consiste delle funzioni h(K1,K2) : X → Y definite da
h(K1,K2)(x) = (hK2 ◦ hK1)(x).
Vediamo ora di stabilire come i parametri di M1 ◦M2 dipendono da quelli di M1 e
di M2. A tale scopo e utile introdurre una nuova nozione. La quaterna (X ,Y ,K, E)
viene detta ε-Almost Universal (o brevemente ε-AU) se
(C)
#{K ∈ K | hK(x) = hK(x′)} ≤ εb
per ogni x, x′ ∈ X , x 6= x′.
Esercizio 70. Provare che una quaterna ε-ASU e in particoalre ε-AU. Suggerimento:
#{K ∈ K | hK(x) = hK(x′)} =∑y∈Y
#{K ∈ K | hK(x) = hK(x′) = y}.
Vale questo importante risultato, dovuto a Stinson.
Teorema 7.8. Siano M1 = (X1,Y1,K1, E1) e M2 = (X2,Y2,K2, E2) due sistemi MAC
con X2 = Y1. Se M1 e ε1-AU e M2 e ε2-ASU, allora la composizione M2 ◦ M1 e
ε-ASU con
ε ≤ ε1 + ε2 − ε1ε2
CAPITOLO 7. MESSAGE AUTHENTICATION CODES 152
Il senso del precedente teorema e quello di ridurre sensibilmente il numero di chiavi e
di tag limitando in minima parte la sicurezza. Per esempio, grazie al Teorema 7.8 e
possibile costruire un sistema MAC ε-ASU con
n = 2217
, m = 220, b = 284, ε =1
219
Se avessimo voluto un sistema MAC ε-ASU con n = 2217, m = 220, ε = 1
220 (ovvero
il minimo valore teorico) allora, in conseguenza del Teorema di Bose-Bush, avremmo
avuto bisogno di almeno b ≥ 2217chiavi.
Citiamo il seguente corollario del Teorema di Stinson che useremo nel seguito.
Teorema 7.9. Sia q una potenza di un primo, m intero positivo, i intero positivo. Se
m
(1
qm, qm+i,M
)≤ Nm,i,
allora
mA
(2
qm, qm,M
)≤ Nm,i · q2m+i
Dimostrazione. Utilizziamo il teorema di Stinson tenendo conto che
mA( 1qm, qm, qm+i) ≤ q2m+i (questo e dimostrato ad esempio nel libro di Bierbrauer).
Il nostro obiettivo sara quindi quello di trovare stime sul valore di m( qj
qk, qk,M) con
j ≤ k.
Studiamo ore le proprieta delle quaterne di tipo ε-AU. Tali oggetti sono strettamente
collegati ai codici correttori di errore.
Proposizione 7.10. Si consideri una quaterna M = (X ,Y ,K, E) e si fissi un ordine
per l’insieme delle chiavi K. Allora M e ε-AU se e soltanto se i vettori
(hK1(x), hK2(x), . . . , hKb(x)) (7.2)
formano un codice con alfabeto Y di lunghezza b, cardinalita n e minima distanza d
con db≥ 1− ε.
CAPITOLO 7. MESSAGE AUTHENTICATION CODES 153
Dimostrazione. Sia C il codice le cui parole sono i vettori (7.2). Le affermazioni su
lunghezza e cardinalita sono ovvie. La distanza minima di tale codice e data da
minx,x′∈X ,x 6=x′
{#{K ∈ K | hK(x) 6= hK(x′)}} = minx,x′∈X ,x 6=x′
{b−#{K ∈ K | hK(x) = hK(x′)}} ,
e quindi
d(C) = b− maxx,x′∈X ,x 6=x′
{#{K ∈ K | hK(x) = hK(x′)}) ≥ b− εb = b(1− ε)
Se si volesse impiegare un codice C come MAC ε-AU come M1 nella costruzione
del Teorema 7.8, quali proprieta e opportuno che abbia? Supponiamo di aver fissato
M2. Allora l’alfabeto di C e fissato. Nella composizione M2 ◦M1 si ha che p0 e #Ydipendono solo daM2. Fissare p1 significa allora fissare il rapporto fra distanza minima
e lunghezza di C. Fissare X significa fissare la cardinalita del codice. La cardinalita di
K e invece direttamente proporzionale alla lunghezza di C, che e opportuno sia la piu
piccola possibile.
Ci limiteremo d’ora in avanti ai codici lineari. Definiamo il seguente parametro
m(ε, q,M) = min
{n | esiste [n, k, d]q codice con
d
n≥ 1− ε, M = qk
}.
Il seguente lemma puo essere utile nel caso si vogliano considerare valori di q grandi.
Lemma 7.11. Per ogni intero i ≥ 1,
m(ε, qi,M) ≤ m(ε, q,M).
Dimostrazione. Sia C un [n, k, d]q codice con dn≥ 1− ε, M = qk. Sia B una base di C.
Immergiamo B in Fnqi , e poniamo C ′ uguale al sottospazio di Fnqi generato dai vettori
di B. Allora chiaramente C ′ ha una stessa matrice generatrice di C, e quindi C ′ e C
hanno uguale lunghezza, uguale dimensione e uguale distanza minima.
Lemma 7.12. Sia k1 ≥ 1. Allora
m(ε1 + ε2, q, qkk1) ≤ m(ε2, q, q
k1) ·m(ε1, qk1 , qk)
CAPITOLO 7. MESSAGE AUTHENTICATION CODES 154
Dimostrazione. Sia C1 un [n1, k, d1]qk1 codice con d1
n1≥ 1− ε1, e sia C2 un [n2, k1, d2]q
codice con d2
n2≥ 1 − ε2. Si fissi un isomorfismo lineare α di Fqk1 in C2 ⊆ Fn2
q . In ogni
parola di C1 sostituiamo un elemento x ∈ Fqk1 con il vettore α(x). In questo modo
otteniamo un Fq-sottospazio vettoriale C3 di Fn1n2q . La dimensione di C3 e kk1, dato che
il numero di parole e lo stesso di C1, ovvero qkk1 . E facile anche concludere che il peso
di una parola di C3 e sempre maggiore o uguale di d1d2. Quindi C3 e un [n1n2, kk1, d]qcodice con d ≥ d1d2, il cui rapporto
n1n2
d≥ n1
d1
n2
d2
≥ (1− ε1)(1− ε2) = 1 + ε1ε2 − (ε1 + ε2) ≥ 1− (ε1 + ε2).
Lemma 7.13. Si ha
m(ε, q,M) ·(qm(ε,q,M)
)≥ M
ε,
ovvero
m(ε, q,M) · logqm(ε, q,M)− logqM ≥ − logq ε.
Dimostrazione. Da M ≤ qn e d ≤ n segue Mn−d ≤ qn, che e equivalente a nqn ≥ M
ε.
Il lemma precedente ci dice in qualche modo che fissati q ed ε un parametro per la
bonta di un codice e dato da
Γ = n logq n− k;
e opportuno che tale parametro sia il piu piccolo possibile (fissati q ed ε).
Se consideriamo il codice [q, 2, q − 1]q di Reed-Solomon, abbiamo che dn≥ 1 − 1
q, e
quindi
m(1
q, q, q2) ≤ q.
Applicando il Lemma 7.11 deduciamo inoltre che
m(i
q, q, q2i) ≤ qi.
Mostriamo ora come migliorare queste stime utilizzando i codici di Goppa.
CAPITOLO 7. MESSAGE AUTHENTICATION CODES 155
Teorema 7.14. Sia X una curva algebrica definita su Fq, e sia P0 un suo punto
Fq-razionale. Sia
H(P0) = {0 = ρ1 < ρ2 < . . .}
il semigruppo di Weierstrass di X in P0. Siano P1, . . . , Pn i punti razionali di X diversi
da P0, e sia
D = P1 + P2 + . . .+ Pn.
Se ρ` < n, allora
m(ρ`n, q, q`
)≤ n.
In particolare, se n− g > ` > g allora
m
(`+ g
n, q, q`
)≤ n.
Dimostrazione. Si consideri il codice di Goppa C = CD,G con G = ρ`P0. La dimensione
di L(G) e chiaramente uguale a `. Essendo ρ` < n si ha quindi che la dimensione di C
e uguale a `. La lunghezza di C e n. La distanza minima e almeno n − ρ`, pertanto
1− dn≥ ρ`
n.
Il g-mo elemento del semigruppo di Weierstrass in un punto e sempre 2g, e tutti gli
interi maggiori o uguali a 2g appartengono al semigruppo. Pertanto, se ` > g allora
ρ` = `+ g.
7.3.1 ε-AU dalla curva Hermitiana
Sia q = q20. Allora la curva hermitiana di equazione
xq0 + x = yq0+1
ha genere q0(q0−1)2
, q30+1 punti razionali, ed inoltre per un qualunque suo punto razionale
P0 si ha H(P0) =< q0, q0 + 1 >.
Lemma 7.15. Sia ρ` l’`-mo elemento del semigruppo generato dagli interi q0 e q0 + 1.
(i) Sia w intero positivo tale che w ≤ q0 − 1. Allora
wq0 = ρ` con ` =
(w + 1
2
)+ 1
CAPITOLO 7. MESSAGE AUTHENTICATION CODES 156
(ii) Sia w intero positivo tale che w > q0 − 1. Allora
wq0 = ρ` con ` = wq0 −q0(q0 − 1)
2
Dimostrazione. (i) Si e gia dimostrato che gli elementi di < q0, q0 + 1 > minori o
uguali di wq0 sono gli interi
iq0 + j(q0 + 1) ≤ wq0, i ≥ 0, 0 ≤ j ≤ q0 − 1.
Equivalentemente, sostituendo i + j con k e tenendo conto che w < q0 − 1, tali
interi sono precisamente
kq0 + j ≤ wq0, 0 ≤ j ≤ k ≤ q0 − 1.
Il loro numero e evidentemente
1 + 2 + . . .+ k + . . .+ w + 1 =
(w + 1
2
)+ 1
(ii) Si ha wq0 > 2g. Pertanto wq0 = ρwq0−g
Pertanto si ha il seguente teorema, corollario del Teorema 7.14.
Teorema 7.16. Se q e un quadrato e w < q, allora
m
(w
q, q, q(
w+12 )+1
)≤ q
32 .
Ponendo q = qm+i e w = qi, si ha
m
(1
qm, qm+i, q
(m+i)
„1+
qi(qi+1)2
«)≤ q
3m+3i2
e quindi, in virtu del Teorema 7.9, il seguente risultato.
Teorema 7.17. Per ogni coppia di interi positivi i e m si ha
mA
(2
qm, qm, q
(m+i)
„1+
qi(qi+1)2
«)≤ q
7m+5i2
Bibliografia
[1] I. Blake, G. Seroussi and N. Smart, Elliptic Curves in Cryptography, Cambridge
University Press, Cambridge, 1999.
[2] J.W.P. Hirschfeld, Projective Geometries over Finite Fields, Clarendon Press,
Oxford, 1998.
[3] J.H. Silverman, The Arithmetic of Elliptic Curves, Springer-Verlag, New-York
Berlin Heidelberg Tokio, 1985.
[4] M.A. Tsfasman and S.G. Vladut, Algebraic-Geometric Codes, Kluwer,
Amsterdam, 1991.
157
Indice
1 Nozioni Preliminari 3
1.1 Campi Finiti . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1.1 Esistenza e unicita . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1.2 Il gruppo moltiplicativo . . . . . . . . . . . . . . . . . . . . . . 8
1.1.3 Sottocampi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.1.4 Automorfismi di un campo finito . . . . . . . . . . . . . . . . . 11
1.2 Spazi proiettivi sopra un campo . . . . . . . . . . . . . . . . . . . . . . 11
1.2.1 Lo spazio PG(r, q) . . . . . . . . . . . . . . . . . . . . . . . . . 13
2 Codici Lineari 15
2.1 Codici e loro parametri . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.2 Equivalenze e automorfismi . . . . . . . . . . . . . . . . . . . . . . . . 18
2.3 Codici e sistemi proiettivi . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.4 Limitazioni . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.4.1 Disuguaglianza di Singleton . . . . . . . . . . . . . . . . . . . . 24
2.4.2 Lemma di Impoverimento . . . . . . . . . . . . . . . . . . . . . 25
2.4.3 Disuguaglianza di Hamming . . . . . . . . . . . . . . . . . . . . 27
2.4.4 Disuguaglianza di Griesmer . . . . . . . . . . . . . . . . . . . . 29
2.4.5 Disuguaglianza di Plotkin . . . . . . . . . . . . . . . . . . . . . 32
158
INDICE 159
2.4.6 Disuguaglianza di Gilbert-Varshamov . . . . . . . . . . . . . . . 34
2.5 Problemi asintotici . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
2.6 Codici Reed-Solomon . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3 Curve algebriche piane 41
3.1 Definizioni . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.2 Punti semplici e singolari . . . . . . . . . . . . . . . . . . . . . . . . . . 44
3.3 Risultante di due polinomi . . . . . . . . . . . . . . . . . . . . . . . . . 48
3.4 Intersezione di due curve . . . . . . . . . . . . . . . . . . . . . . . . . . 49
3.5 Il campo delle funzioni razionali . . . . . . . . . . . . . . . . . . . . . . 52
3.6 Valutazioni . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
3.7 Divisori . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
3.7.1 Il Teorema di Riemann-Roch . . . . . . . . . . . . . . . . . . . . 65
3.7.2 Divisori one-point . . . . . . . . . . . . . . . . . . . . . . . . . . 67
3.7.3 La curva Hermitiana . . . . . . . . . . . . . . . . . . . . . . . . 69
3.8 Morfismi di curve algebriche . . . . . . . . . . . . . . . . . . . . . . . . 71
3.9 Curve definite su campi finiti . . . . . . . . . . . . . . . . . . . . . . . 77
3.10 Il gruppo di Picard di una curva algebrica piana . . . . . . . . . . . . . 79
4 Codici Algebrico-Geometrici 80
4.1 Costruzioni . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
4.2 Codici BCH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
4.3 Estensione ai punti del supporto di G . . . . . . . . . . . . . . . . . . . 86
4.4 Codici di Goppa duali . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
4.5 Stime sulla distanza minima di Codici di Goppa duali e Codici di Goppa
modificati . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
4.5.1 Codici di Goppa modificati . . . . . . . . . . . . . . . . . . . . . 93
4.6 Codici buoni dalla Geometria Algebrica . . . . . . . . . . . . . . . . . . 94
INDICE 160
4.7 Codici Hermitiani . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
5 Codici MDS e Archi 99
5.1 Codici MDS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
5.2 Codici MDS di dimensione 3: gli n-archi di PG(2, q) . . . . . . . . . . . 100
5.2.1 Il Teorema di Menelaus . . . . . . . . . . . . . . . . . . . . . . . 107
5.2.2 Curve e inviluppi . . . . . . . . . . . . . . . . . . . . . . . . . . 109
5.2.3 n-archi completi di PG(2, q) con n < q + 1 . . . . . . . . . . . . 112
5.3 Codici MDS di dimensione superiore: n-archi di PG(r, q) . . . . . . . . 117
5.4 Un’applicazione: divisione di un segreto a tre livelli . . . . . . . . . . . 119
6 Curve Ellittiche 122
6.1 Segreti e Gruppi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
6.1.1 Uno schema per garantire la segretezza del messaggio . . . . . . 123
6.1.2 Logaritmo discreto in gruppi qualsiasi . . . . . . . . . . . . . . . 125
6.1.3 Gruppi noti . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
6.2 Curve Ellittiche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
6.2.1 Isogenie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
6.2.2 Teorema di Hasse . . . . . . . . . . . . . . . . . . . . . . . . . . 135
6.3 Weil Pairing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
6.4 L’attacco MOV al Problema del Logaritmo Discreto . . . . . . . . . . . 141
7 Message Authentication Codes 145
7.1 Introduzione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
7.2 ε-ASU da curve algebriche, I . . . . . . . . . . . . . . . . . . . . . . . . 149
7.3 ε-ASU da curve algebriche, II . . . . . . . . . . . . . . . . . . . . . . . 151
7.3.1 ε-AU dalla curva Hermitiana . . . . . . . . . . . . . . . . . . . . 155