Professional Documents
Culture Documents
Funciones
1
2.13 Construcciones recursivas . . . . . . . . . . . . . . . . . . . . . 34
2.13.1 Proyección y acortamiento . . . . . . . . . . . . . . . . 34
2.13.2 Alargamiento . . . . . . . . . . . . . . . . . . . . . . . 35
2.13.3 Construcción X . . . . . . . . . . . . . . . . . . . . . . 35
2.13.4 Construcción XX . . . . . . . . . . . . . . . . . . . . . 36
2.13.5 Encadenamiento . . . . . . . . . . . . . . . . . . . . . 36
2.14 Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
3 Códigos cı́clicos 38
3.1 Códigos cı́clicos . . . . . . . . . . . . . . . . . . . . . . . . . . 38
3.2 Codificación sistemática . . . . . . . . . . . . . . . . . . . . . 40
3.3 Decodificación . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.4 Ejemplos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.5 Ceros de un código cı́clico . . . . . . . . . . . . . . . . . . . . 42
3.5.1 Códigos BCH . . . . . . . . . . . . . . . . . . . . . . . 43
3.6 El idempotente de un código cı́clico . . . . . . . . . . . . . . . 45
3.7 Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
2
Introducción
3
estructura algebraica: es simplemene el complemento ortogonal del vector
(1, 1, 1, 1, 1, 1, 1, 1, 1) en el espacio vectorial Z92 respecto del producto interno
canónico. Este es un ejemplo de un código lineal.
Estas notas tienen como propósito brindar un panorama general de al-
gunos de los métodos mas usados para la construcción de Códigos Correctores
de errores. Nos enfocaremos a códigos lineales construidos sobre campos fini-
tos. Damos al principio un breve repaso de la teorı́a de extensiones de campos
que normalmente se ve en un curso de Álgebra Moderna II enfocándonos en
la construcción de campos finitos.
En el capı́tulo 2 exponemos los métodos de construcción de Códigos Co-
rrectores lineales comunmente usados. Debido a su extensión y riqueza se
dedica el capı́tulo 3 a la construcción de Códigos Cı́clicos. Tratamos de
describir, en la medida de lo posible, los métodos de decodificación de los
códigos de Hamming, Reed-Solomon y de los Códigos Cı́clicos.
El resto de las notas está dedicado a la construcción de los Códigos de
Goppa. Dichos códigos poseen las mejores propiedades en cuanto a capacidad
de corrección de errores, volumen de información codificable y simetrı́as. Es
una de las construcciones mas elegantes dentro de la Teorı́a de Códigos. El
capı́tulo 4 introduce todo el andamiaje algebraico necesario para definir un
código de Goppa y en el capı́tulo 5 construimos ejemplos concretos basados
en curvas elı́pticas e hiperelı́pticas.
4
Capı́tulo 1
1.1 Introducción
En este capı́tulo resumimos algunos resultados de la teorı́a de extensiones de
campos que nos serán útiles mas adelante. Discusiones mas amplias y detal-
ladas de estos resultados se pueden encontrar en textos de Álgebra Moderna
como [5].
Sea K un campo. Un campo F se dice que es una extensión de K si K
es un subcampo de F . Sea F una extensión de K y sea S un subconjunto
de F . Denotaremos por K(S) al subcampo mas pequeño de F que contiene
a K y a S. El campo K(S) es la intersección de todos los subcampos de
F que contienen a K y a S. El campo K(S) es una extensión de K y
diremos que es el campo que se obtiene de K pegándole los elementos de S.
Si S es un conjunto finito, digamos S = {a1 , . . . , an }, denotaremos a K(S)
por K(a1 , . . . , an ). Si F es una extensión de K entonces F es un espacio
vectorial sobre K. Llamaremos a la dimensión de F sobre K el grado de la
extensión de F sobre K y lo denotaremos por
[F : K].
Nota que el grado puede ser finito o infinito. Diremos que F es una extensión
finita de K si [F : K] es finito. Ahora supongamos que F ′ es una extensión
de F . Sean a1 , . . . , am ∈ F ′ elementos linealmente independientes sobre F y
b1 , . . . , bn ∈ F elementos linealmente independientes sobre K y supongamos
5
que
m X
X n
cij ai bj = 0
i=1 j=1
Por otro lado, para i = 1, . . . , m tenemos que existen elementos yi1 , . . . , yin ∈
K tales que
Xn
xi = yij bj
j=1
por lo que
m X
X n
x= yij ai bj .
i=1 j=1
Con esto vemos que los mn productos ai bj forman una base para F ′ sobre
K. Se sigue que
[F ′ : K] = [F ′ : F ][F : K]. (1.1)
Si F es una extensión finita de K y si a1 , . . . , P
an es una base para F sobre
K entonces todo elemento F se escribe como xi ai y como todas estas
sumas pertenecen a K(a1 , . . . , an ) tenemos que F = K(a1 , . . . , an ).
6
Por comodidad usaremos la notación F/K para indicar que F es una
extensión de K. Diremos que una extensón F/K es simple si F = K(a)
para alguna a ∈ F .
Consideremos ahora la extensión F = K(S) de K donde S ⊆ F . Sea
p(x1 , . . . , xn ) un polinomio en n indeterminadas con coeficientes en K. Si
a1 , . . . , an ∈ S entonces p(a1 , . . . , an ) ∈ F . El conjunto de todos estos ele-
mentos forman un subanillo, denotado por K[S], de F que contiene a K y a
S. El campo de cocientes de K[S] es un subcampo de F que contiene a K
y a S, por lo tanto (como F es el campo mas pequeño con esta propiedad)
coincide con F , es decir K(S) es el campo de cocientes del anillo K[S]. Se
sigue que K(S) consiste de elementos de la forma
p(x1 , . . . , xn )
,
q(y1 , . . . , ym )
donde p y q son polinomios con coeficientes en K en n y m indeterminadas
respectivamente, x1 , . . . , xn , y1 , . . . , ym ∈ S y q(y1 , . . . , ym ) 6= 0.
Sea F/K una extensión y sea a ∈ F . Decimos que el elemento a es
algebraico sobre K si existe un polinomio f (x) ∈ K[x] tal que f (a) = 0,
en caso contrario decimos que a es trascendente sobre K. Diremos que la
extensión F/K es una extensión algebraica de K si todo elemento de F es
algebraico sobre K. En caso de existir al menos un elemento x ∈ F que sea
trascendente sobre K diremos que F/K es una extensión trascendente de
K.
Sea F una extensión finita de K, digamos que n = [F : K], si a ∈ F
entonces los n + 1 elementos 1, a, a2 , . . . , an son linealmente dependientes por
lo que existe una combinación lineal no trivial con escalares c0 , c1 , . . . , cn ∈ K
tales que
c0 + c1 a + c2 a2 + · · · + cn an = 0,
es decir, el elemento a es raı́z del polinomio
p(x) = c0 + c1 x + c2 x2 + · · · + cn xn ∈ K[x].
Por lo tanto todo elemento de la extensión finita F es algebraico sobre K.
Sea a ∈ F un elemento algebraico sobre K. Un mapeo importante es el
mapeo evaluación en a:
ϕ : K[x] −→ K[a]
definido como ϕ(f (x)) := f (a). El homomorfismo ϕ tiene un kernel no
trivial, pues a es algebraico. Dicho kernel es un ideal principal de K[x] de
7
la forma (p(x)), para algún polinomio mónico p(x). Entonces K[x]/(p(x)) es
isomorfo a K[a] y por lo tanto es un dominio entero. Esto último implica
que el ideal (p(x)) es primo y por lo tanto el polinomio p(x) es irreducible en
K[x]. Como todo ideal primo de K[x] es maximal, tenemos que K[x]/(p(x))
y por tanto K[a] son campos. Se sigue que K(a) = K[a]. Por otro lado,
dado f (x) ∈ K[x], existen polinomios únicos q(x), r(x) ∈ K[x] tales que
con grado(r(x)) < grado(p(x)) o r(x) = 0 por lo que todo elemento en K(a)
se puede escribir como r(a). A cada elemento algebraico a ∈ F le podemos
asociar, de manera única, el polinomio mónico irreducible p(x) ∈ K[x] que
tiene como raı́z a a. Denotaremos a dicho polinomio por Irr(K, a) y le
llamaremos el polinomio minimal de a sobre K. Si a, b ∈ F son elementos
algebraicos sobre K entonces a − b y ab−1 tambien lo son, pues pertenecen
al campo K(a, b) el cual es una extensión algebraica de K. Definimos la
cerradura algebraica de K en F como el subcampo
1.2 Ejercicios
1. Sean K un campo, F una extensión de K, S, T ⊆ F . Demuestra que
K(S ∪ T ) = K(S)(T ) = K(T )(S).
8
no pueden ser todos distintos. Entonces existe m < n tal que n · 1 = m · 1. Se
sigue que (n − m) · 1 = 0. Denotemos por a al número natural más pequeño
tal que a · 1 = 0. Al ser F un campo, y en particular un dominio entero,
concluimos que a = p debe ser primo. Se sigue por minimalidad que p es el
único primo con esta propiedad, y que n · 1 = 0 sı́ y solo sı́ n es un múltiplo
de p. Vemos también que los i · 1, i = 0, 1, . . . , p − 1 forman un subcampo
de F , isomorfo a Fp . Llamaremos a p la caracterı́stica de F y a Fp , el
subcampo generado por 1, su campo primo. Entonces todo campo finito
F se puede ver como una extensión de su campo primo Fp . Por definición F
es un espacio vectorial sobre Fp , por lo que el número de elementos de F es
pn para alguna n (de hecho, n = [F : Fp ]).
En el párrafo anterior asumimos que Z/pZ es un campo (lo cual no es
difı́cil de ver). Otra manera de demostrar la existencia y unicidad de campos
finitos es la siguiente: Sea q = pn , p un primo, n un natural. El campo
de descomposición del polinomio f = xq − x ∈ Fp [x] es un campo finito
con q elementos. La unicidad de Fq se sigue de la unicidad del campo de
descomposición de un polinomio. Los elementos de Fq son las raı́ces (todas
distintas) de f . Esto se aclara mas adelante.
Para construir directamente campos finitos hacemos uso de polinomios
irreducibles: Sea f (x) ∈ Fp [x] un polinomio irreducible de grado n. Supon-
gamos que f (x) es mónico, i.e. el coeficiente de xn es 1, de tal forma que
f (x) = xn + an−1 xn−1 + · · · + a1 x + a0 . Afirmamos que F = Fp [x]/(f (x)), el
anillo cociente de el anillo de polinomios sobre el ideal (maximal) generado
por f (x), es un campo con pn elementos: sea X la imagen de x modulo
(f (x)), el ideal generado por f (x). Recordemos que (f (x)) no es mas que
el conjunto de polinomios en Fp [x] que son múltiplos de f (x). Primero que
nada observamos que F es un espacio vectorial de dimensión n sobre Fp , de
aquı́ que |F | = pn . LosPelementos de F se pueden representar de manera
n−1
única en la forma u = i=0 ci X i . De hecho, ya que X n = −an−1 X n−1 −
· · · − a1 X − a0 , todo elemento de F tiene esta forma (en pocas palabras
F es el conjunto de polinomios en Fp [x] de grado < n). Por otro lado, las
X i , i = 0, 1, . . . , n − 1 son linealmente independientes, de lo contrario f (x)
dividirı́a a un polinomio no nulo de grado < n, lo cual es imposible. Entoces
todo elemento no nulo de F se puede escribir de manera única como polinomio
de grado < n con coeficientes en Fp . Supongamos ahora que h(X), g(X) son
tales polinomios y que g(X)h(X) = 0. Esto querrı́a decir que f (x) divide
a g(x)h(x), y al ser f (x) irreducible entonces f (x) divide a h(x) o a g(x)
por lo que h(X) = 0 o g(X) = 0. Esto demuestra que F es un dominio
9
entero (no tiene divisores de cero). Falta demostrar que todo elemento en F
tiene un inverso multiplicativo. Sea pues g(x) un polinomio no nulo de grado
< n. Como f (x) es irreducible, debe ser primo relativo a g(x). Usando el
algoritmo de Euclides encontramos polinomios h(x) y l(x) tales que
1 = g(x)h(x) + f (x)l(x).
10
Demostración: Sean x, y ∈ F . Tenemos que σ(xy) = xp y p = σ(x)σ(y) y
σ(x + y) = (x + y)p . Usando el teorema del binomio tenemos que
p µ ¶
p
X p
(x + y) = xi y p−i .
i
i=0
µ ¶
p
Pero es múltiplo de p si i 6= 0, p por lo que (x + y)p = xp + y p (el
i
sueño de todo estudiante de secundaria). Con esto, σ(x + y) = σ(x) + σ(y).
Hemos demostrado que σ abre productos y sumas. ¥
Usando el Lema 1.4.1 podemos demostrar que la suma y el producto de
n
raı́ces del polinomio X p − X son de nuevo raı́ces. Es decir, demostramos la
existencia y unicidad de un campo con pn elementos.
Resumimos lo anterior en el siguiente
11
xd − 1. Entonces, para cada divisor d de pn − 1 existe a lo mas un subgrupo
cı́clico de orden d. Por lo tanto F× pn es un grupo cı́clico.¥
n
Sea q := p . En los párrafos anteriores discutimos la existencia y unicidad
de un campo con q elementos. Hablaremos un poco acerca de la extensión
F q n ⊃ Fq .
Lema 1.5.1. Considerese la extensión Fqn ⊃ Fq , q una potencia de un primo.
El mapeo σ, donde σ(x) = xq , es un automorfismo de Fqn sobre Fq , es
decir, los elementos del campo base son fijados por σ. Las potencias de σ
forman un grupo de automorfismos de orden n. Llamaremos a este grupo el
grupo de Galois G(Fqn /Fq ).
Demostración: σ es una potencia del automorfismo de Frobenio. En-
tonces σ es ciertamente un automorfismo de Fqn . Los elementos del campo
base satisfacen la ecuación xq = x por lo que todo elemento de Fq es fijado
por σ. Por esta misma razón vemos que σ n es el mapeo identidad en Fqn , lo
cual no es el caso para ninguna otra potencia menor de σ. ¥
Definición 1.5.1 (Traza). Sea σ el generador de G(Fqn /Fq ). Entonces la
traza tr : Fqn −→ Fq se define como
n−1
X
tr(x) = σ i (x) (1.2)
i=0
12
1.6 Ejemplos de campos finitos
Ejemplo 1: En el anillo Z2 [x] existe un único polinomio irreducible de grado
dos: x2 + x + 1. Tenemos que
F4 = Z2 [x]/(x2 + x + 1).
F4 = {0, 1, α, α2 }.
0 = 1 + β + β 4 = 1 + β 2 + β 8 = 1 + β 3 + β 14 ;
0 = 1 + β 6 + β 13 = 1 + β 7 + β 9 = 1 + β 11 + β 12 .
13
1.7 El campo de funciones racionales K(x)
Sea K un campo y x un elemento trascendente sobre K, es decir, un elemento
no algebraico sobre K. Sea K[x] el anillo de polinomios en la ”variable” x
con coeficientes en K. El campo de funciones racionales K(x) se define como
f (x)
K(x) := { |f (x), q(x) ∈ K[x], q(x) 6= 0}.
q(x)
f (x)
Op(x) := { ∈ K(x)|p(x) 6 |q(x)}
q(x)
y
f (x)
Pp(x) := { ∈ K(x)|p(x)|f (x), p(x) 6 |q(x)}.
q(x)
El lector puede verificar que Op(x) es un anillo con ideal maximal Pp(x) .
Definimos una función
vp(x) : K(x) −→ Z ∪ {∞}
z 7→ np(x) ,
y que
Pp(x) = {z ∈ K(x)|vp(x) (z) > 0}.
De ahora en adelante llamaremos al anillo Op(x) anillo de valoración y
a Pp(x) le llamaremos lugar.
Asociamos al polinomio irreducible p(x) el campo Kp(x) ⊂ K(x): Al ser
Pp(x) un ideal maximal del anillo Op(x) podemos definir el campo residual
Kp(x) := Op(x) /Pp(x) . Definimos el grado de un lugar Pp(x) como
14
En ambos casos su campo residual es F8 . Ejemplo: Los lugares de grado 1
de Z3 (x) son P0 , P1 , P2 y P∞ (ver más abajo), los campos residuales corre-
spondientes son isomorfos a Z3 .
Dado un elemento z ∈ K(x) y un lugar P de grado uno entonces podemos
interpretar a z como una funcion P 7→ z(P ) ∈ K ∪ {∞}. Esto justifica el
nombre de campo de funciones. Notemos que si P = Px−a donde a ∈ K y si
z = f /q, entonces z(P ) = z(a) y z(a) := ∞ si q(a) = 0.
En K(x) existe otro anillo de valoración:
f (x)
O∞ := { ∈ K(x)|grado(f (x)) ≤ grado(q(x))}
q(x)
con ideal maximal
f (x)
P∞ = { ∈ K(x)|grado(f (x)) < grado(q(x))}.
g(x)
El lugar P∞ es llamado el lugar infinito de K(x). Cabe notar que esta
etiqueta depende del generador de la extensión K(x)/K que se utilice, pues,
por ejemplo P0 es el lugar infinito de K(1/x).
Se sigue que existe una correspondencia biyectiva entre los lugares de
grado 1 de K(x) y los puntos de la recta proyectiva P G(1, K).
15
Demostración: Sea F una extensión algebraica de K, a ∈ F y p(x) =
Irr(K, a). Supongamos primero que K p = K y que a no es separable sobre
K. Esto implica que p′ (a) = 0. Como grado(p′ (x)) < grado(p(x)) contra-
decimos que p(x) es el polinomio minimal de a a menos que p′ (x) = 0. Sea
pm xm un monomio de p(x). Entonces mpm xm = 0 por lo cual, o bien, pm = 0
o m es divisible entre p. Por lo tanto
n
X
p(x) = pi xpi .
i=0
Por hipótesis, cada pi tiene una raı́z p-ésima, digamos ri . Entonces podemos
factorizar à n !p
X
p(x) = ri x i ,
i=0
contradiciendo el hecho que p(x) es irreducible. Por lo que F/K debe ser
separable y entonces K es perfecto.
Ahora supongamos que K es perfecto. Queremos demostrar que K p = K.
Sea f (x) = xp −a ∈ K[x]. Si f (x) tiene una raı́z b ∈ K entonces a = bp ∈ K p .
Supongamos que f (x) no tiene raı́ces en K y que p(x) es un factor irreducible
de f (x). Consideremos la extensión K(b)/K con p(b) = 0. En el anillo de
polinomios K(b)[x] tenemos que f (x) = xp − a = xp − bp = (x − b)p , por otro
lado p(x) divide a f (x) por lo que p(x) = (x − b)m para alguna m. Si m = 1
tendrı́amos que b ∈ K, lo cual no es el caso, entonces m > 1. Pero entonces
b no es raı́z simple de p(x), es decir, b no es separable sobre K. Esto último
contradice el hecho que K es perfecto. Por tanto a ∈ K p para toda a ∈ K,
es decir K p = K.¥
16
e
Cada coeficiente de p(x) pertence a K, en particular, map ∈ K. Como p
e
no divide a m se sigue que ap ∈ K. Por otro lado, p(x) es irreducible sobre
d
K, por lo que m = 1. Ahora bien, si d < e y ap ∈ K tendrı́amos que
d d
f (x) = xp − ap ∈ K[x] y que f (a) = 0 lo que implica que p(x)|f (x), lo cual
es imposible. Acabamos de demostrar que el grado del polinomio minimal de
d
un elemento puramente inseparable es pe , para alguna e > 0 y que ap 6∈ K
para 0 ≤ d < e.
Corolario 1.8.2. Si F es una extensión puramente inseparable de K en-
tonces [F : K] es una potencia de p.
Demostración: Ver ejercicios.
Teorema 1.8.2. Sea a ∈ K tal que a 6∈ K p . Entonces, para todo entero
e
e ≥ 0 el polinomio f (x) = xp − a es irreducible en K[x].
Demostración: Sea p(x) un factor no constante, mónico e irreducible de
e
f (x) y sea F = K(b) con p(b) = 0. Entonces f (b) = 0 y a = bp . En F [x]
tenemos que
e
f (x) = (x − b)p ,
lo que nos dice que todo factor irreducible q(x) de f (x) en K[x] es una
potencia de (x−b) y, en particular, q(b) = 0 por lo que p(x)|q(x). Se sigue que
q(x) = p(x) y que f (x) = p(x)m para alguna m ≥ 1. Como grado(f (x)) = pe
tenemos que grado(p(x)) y m son potencias de p, con lo que
r
f (x) = p(x)p
17
e
es irreducible en K[x] y entonces Irr(K, a) = (x − a)p por lo que a es
puramente inseparable sobre K.¥
Un elemento a ∈ F que sea al mismo tiempo separable y puramente
inseparable sobre K necesariamente es un elemento de K: Sea e el entero no
e e e
negativo mas pequeño tal que ap ∈ K . Tenemos que Irr(K, a) = xp − ap .
Como a es tambien separable tenemos que la derivada (Irr(K, a))′ 6= 0. Se
sigue que e = 0 y por lo tanto a ∈ K.
1.9 Ejercicios
1. Sea f (x) = f0 + f1 x + · · · + fn xn ∈ K[x] un polinomio con coeficientes
en K. Definimos
demuestra que, para g(x) ∈ K[x], (f (x) + g(x))′ = f ′ (x) + g ′ (x) y que
(f (x)g(x))′ = f (x)g ′ (x) + f ′ (x)g(x).
6. Demuestra que Op(x) es un anillo tal que para toda z ∈ K(x) z ∈ Op(x)
z ∈ Op(x) o z −1 ∈ Op(x) . Demuestre tambien que Pp(x) es el único ideal
maximal de Op(x) (hint: un ideal maximal no contiene unidades, i.e.
∗
Pp(x) = Op(x) − Op(x) ).
18
9. Demuestre que la función v := vp(x) definida anteriormente satisface:
v(zw) = v(z) + v(w), v(z + w) ≥ min{v(z), v(w)} y v(r) = 0 para
z, w ∈ K(x), r ∈ K.
19
Capı́tulo 2
2.1 Introducción
Sea A un conjunto finito con v ∈ N elementos. Un código C de longitud n
sobre el alfabeto A es un subconjunto del producto cartesiano An , es decir,
C ⊆ An . A los elementos de C les llamaremos palabras.
Dados a, b ∈ C, digamos a = (a1 , . . . , an ) y b = (b1 , . . . , bn ), definimos la
distancia de Hamming enre las palabras a y b como
20
d = min{w(a)|a ∈ C, a 6= 0}, es decir la distancia mı́nima es igual al peso
mı́nimo.
Para ahorrar espacio, diremos que C es un [n, k, d]q código lineal si C
tiene longitud n, dimensión k sobre el campo Fq y distancia mı́nima d.
Para describir un código lineal C ≤ Fnq de dimensión k basta con especi-
ficar una base. Una matriz generadora para el código lineal C es una
matriz k × n cuyos k renglones contienen las coordenadas de los vectores de
una base dada. Esta manera de representar a C permite codificar el mensaje
m = (m1 , . . . , mk ) en la palabra
m · G.
Como C es un subespacio lineal de Fnq es conveniente fijarnos el el comple-
mento ortogonal C ⊥ ≤ Fnq de C. Una matriz de verificación para el código
C es una matriz H cuyos renglones contienen las coordenadas de los vectores
de una base para C ⊥ . Tenemos entonces que
c ∈ C si y solo si H · c = 0.
De esta manera, al recibir una palabra c, el receptor verifica si hubo errores
de transmisión calculando el producto H ·c. Si el resultado de dicho producto
es distinto de cero entonces concluye que hubo errores en la transmisión.
En este curso nos enfocaremos a la construcción de códigos lineales por
diversos métodos y seguiremos parte del contenido de los textos [1] y [13].
2.2 Ejercicios
1. Demuestra que la distancia de Hamming es una métrica en An .
21
y el mapeo φ : Lk −→ Fqq dado por
k + d ≤ n + 1.
k + q − k + 1 = q + 1.
22
Teorema 2.5.1 (interpolación de Lagrange). Sea F un campo. Dados n
elementos distintos a1 , . . . , an ∈ F y n elementos arbitrarios b1 , . . . , bn ∈
F existe exactamente un polinomio p(x) ∈ F [x], grado(p(x)) < n, tal que
p(ai ) = bi , i = 1, . . . , n.
B := {i|f (αi ) = yi },
M := {i|f (αi ) 6= yi } y
e := |M |.
Definimos los siguientes polinomios:
Y
w(x) := (x − αi )
i∈B
y Y
w̄(x) := (x − αi ).
i∈M
yi − f (αi )
∆(αi ) = .
w(αi )
23
Finalmente, sean
q
Y
p0 := w · w̄ = (x − αi ) = xq − x,
i=1
p1 := w · ∆ + f.
Notemos primero que p1 (αi ) = yi para i = 1, . . . , q. Sean r0 := w̄ y r1 :=
∆. Mediante el algoritmo de Euclides extendido, obtenemos la secuencia
ri−1 := qi ri + ri+1
ri = ui r0 + vi r1 = ui w̄ + vi ∆ para 0 ≤ i ≤ m + 1
Ahora escribimos
pi := ui p 0 + v i p 1
= ui w · w̄ + vi w · ∆ + vi · f
= w(ui · w̄ + vi · ∆) + vi · f
= w · ri + vi · f.
q+k
grado(w · ri ) ≥ q − e ≥ > e + k − 1 ≥ grado(vi · f ).
2
24
Se sigue que grado(pi ) = grado(w̄ · ri ) el cual es estrictamente decreciente.
Es decir, grado(pi+1 ) < grado(pi ). Con esto último vemos que los mismos
cocientes qi se obtienen al aplicar el algoritmo de Euclides extendido a p0 y
p1 . En particular, fijándonos en
Paso 3 Dividimos pm (x) = f (x)vm (x) + r(x). Si r(x) = 0 y grado(f (x)) < k
entonces el polinomio es f (x), en caso contrario declaramos Falla de
decodificación.
2.7 Ejercicios
1. Construye una matriz generadora para el código RS(4, 11).
3. Construye una base para Lk de tal manera que la matriz generadora del
código RS(k, q) sea de la forma [Ik |P ] donde Ik es la matriz identidad
k × k y P es una matriz k × (q − k).
25
2.8 Códigos Simplex y de Hamming
Sea V = Fkq . V es un espacio vectorial de dimensión k sobre Fq . El número
de subespacios de V de dimensión 1 es
qk − 1
.
q−1
Esto es, el numerador de la expresión anterior dice que vamos a considerar
solo vectores no nulos de V . El denominador dice que cada subespacio de
dimensión 1 tiene exactamente q − 1 vectores no nulos. Definimos el Código
Simplex de dimensión k sobre Fq , denotado por S(k, q), como el código
generado por los renglones de la matriz G que tiene por columnas a vectores
representantes de todos y cada uno de los subespacios de dimensión 1 de V .
k −1
El código Simplex tiene longitud qq−1 y dimensión k. A las columnas de G
las denoteremos por C1 , . . . , C qk −1 .
q−1
Para calcular su distancia mı́nima procedemos de la siguiente manera: sea
x ∈ S(k, q) un vector no nulo. El conjunto {x} es linealmente independiente;
al ser x un vector no nulo, se puede extender a una base para el espacio
S(k, q). Podemos pensar pues que x es un renglón de la matriz G. Ahora
bien, el número de ceros en un renglón de la matriz G es (q k−1 − 1)/(q − 1),
esto se sigue pues de que la columna correspondiente es representante de un
subespacio de dimensión 1 de V , por lo que las k − 1 entradas restantes de
dicha columna no pueden ser todas iguales a cero. El peso de un renglón de
la matriz G es entonces
q k − 1 q k−1 − 1
− = q k−1 .
q−1 q−1
El código Simplex S(k, q) tiene parámetros
26
Sea x ∈ H(k, q). Supongamos que peso(x) = 1 y que xi es su única coor-
denada no nula. Como x ∈ H(k, q) tenemos que G · x = 0̄ como G · x = xi Ci
tendrı́amos que la i-ésima columna de G es nula, esto es imposible. Si x
tiene peso igual a 2, digamos que las coordenadas no nulas de x son i y j,
entonces tendrı́amos que G · x = 0̄ pero por otro lado G · x = xi Ci + xj Cj = 0̄
contradiciendo el hecho que las columnas Ci y Cj de G son linealmente inde-
pendientes. Concluimos pues que peso(x) ≥ 3. Las columnas de G son dos a
dos linealmente independientes. El subespacio de dimensión 2 generado por
cualquier par de columnas de G, digamos Ci y Cj , necesariamente contiene
al menos otro subespacio de dimensión 1 distinto de < Ci > y de < Cj >.
por lo que tenemos que la distancia mı́nima de H(k, q) es d = 3. El código
de Hamming H(k, q) tiene parámetros
(q k − 1) (q k − 1)
[ , − k, 3]q ,
(q − 1) (q − 1)
y puede corregir 1 error de transmisión.
Ejemplo: Consideremos el código H(3, 4) con parámetros [21, 18, 3]4 .
Recordemos que F4 = {0, 1, z, z 2 } con z 2 + z + 1 = 0. Una matriz de verifi-
cación para H(3, 4) es cualquier matriz generadora para S(k, q). Por ejemplo
z2 z2 z2 z2
0 1
0 1 1 1 1 z z z z 1 1 1 1 0 0 0 0
G=@ 1 0 1 z z2 z2 z 1 0 z2 z 1 0 z2 z 1 0 z2 z 1 0 A.
1 1 0 z2 z 1 0 z2 z 0 1 z z2 z2 z 1 0 z z2 0 1
27
2.9 Códigos perfectos y empaquetado por es-
feras
Sea A, como siempre, un conjunto finito de sı́mbolos con v elementos. Con-
sideramos An equipado con la métrica de Hamming. Definimos la bola de
radio r con centro en a ∈ An como el conjunto de palabras a distancia de
Hamming menor o igual a r. En realidad estamos interesados en su volumen
r
X
V (r, n, v) := C(n, i)(v − 1)i . (2.9)
i=0
Sea e := ⌊ d−1
2
⌋. Si C ⊆ An es un código con distancia mı́nima d entonces
las bolas de radio e centradas en las palabras de C son ajenas. Por lo tanto
tenemos que
|C| · V (e, n, v) ≤ v n . (2.10)
A la desigualdad 2.10 se le llama cota de empaquetado por esferas y a los
códigos que la satisfagan con igualdad les llamaremos códigos perfectos.
En el caso del código de Hamming H(k, q) tenemos que e = 1, v = q y
k −1
n = qq−1 . Tenemos que
q k −1
−k qk − 1 q k −1
|H(k, q)| · V (e, n, v) = q q−1 · (1 + (q − 1) ) = q q−1 .
q−1
Por lo que concluimos que los códigos H(k, q) son códigos perfectos.
2.10 Ejercicios
1. Sea V = Fnq . Demuestra que el número de subespacios de V de di-
mensión i, i = 1, . . . , n es
(q n − 1)(q n − q) · · · (q n − q i−1 )
G(n, i) := . (2.11)
(q i − 1)(q i − q) · · · (q i − q i−1 )
y = (1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 0, 0, 1, 1) ∈ F21
4
28
por el canal de transmisión y que estás usando el código de Hamming
H(3, 4). Verifica que la palabra recibida pertenece a dicho código o
realiza su correción.
3. Demuestra que un código perfecto con distancia mı́nima d = 2e + 1
tiene radio de cubierta ρ = e.
4. Sea C un código lineal binario con distancia mı́nima impar d. Sea D ⊂
C el subconjunto de todas las palabras de peso par de C. Demuestra
que D es un subespacio de codimensión 1 en C.
29
2.11.1 Códigos asociados a conjuntos de puntos
Podemos pensar en las columnas de una matriz generadora k × n, G, de
un código lineal C como representantes de n puntos P1 , . . . , Pn en el espacio
proyectivo P G(k−1, q). Esto nos da una interpretación geométrica del código
C. Notemos que en esta interpretación podemos repetir puntos, pues G puede
tener columnas repetidas o puede tener columnas que sean múltiplos de otras.
En este sentido, diremos que un código es proyectivo si ninguna columna
de G es múltiplo de alguna otra. A la interpretación geométrica de C le
llamaremos descripción geométrica del código C.
Para calcular el peso de una palabra arbitraria no nula xP∈ C hacemos lo
siguiente: sean r1 , . . . , rk los renglones de G. Entonces x = ki=1 ai ri . Ahora
bien, la coordenada j de x es xj = ki=1 ai rij . La coordenada xj es cero si el
P
punto (r1j , . . . , rkj ) pertenece al hiperplano (a1 , . . . , ak )⊥ . Por lo que el peso
mı́nimo de una palabra no nula en C es
30
donde a, b, c, f, g, h son números reales. Ejemplos de cónicas son los cı́rculos,
elipses, parábolas e hipérbolas. En el Plano Proyectivo la situación es más
simple:
La ecuación general de una cónica en el Plano Proyectivo es:
31
cada uno cuentan las tangentes en los q − 1 puntos restantes en la cónica);
los 21 (q + 1) puntos restantes son internos. Obtenemos la configuracion con
parámetros µ ¶
q
2 1 (q+1)
2
µ ¶ µ ¶
q q
formada por los puntos internos y las rectas externas. Y la
2 2
configuración con parámetros
µ ¶
q+1
2 1
(q−1)
2
µ ¶ µ ¶
q+1 q+1
formada por los puntos externos y las secantes. Ver
2 2
[3].
Usando los puntos internos y un punto de la cónica podemos construir
un código con parámetros
[C(q, 2) + 1, 3, (q − 1)2 /2]q .
Usando los puntos externos y todos los puntos de la cónica obtenemos un
código con parámetros
[C(q + 1, 2) + 1, 3, (q 2 − 1)/2]q .
32
Demostración: Sea x ∈ C una palabra de peso d. Sin pérdida de gen-
eralidad, podemos suponer que x tiene sus entradas distintas de cero en sus
primeras d coordenadas y que éstas son todas iguales a 1.
Vamos a construir el código residual, C ′ , de C respecto de la palabra
x. Consideremos el complemento en C del subespacio < x > y proyectemos
sus vectores en las últimas n − d coordenadas. Sea C ′ la imagen de dicha
proyección. Entonce C ′ ∪ {0̄} tiene longitud n − d y dimensión k − 1.
Ahora vamos a calcular la distancia mı́nima d′ de C ′ . Sea y ∈ C una
palabra cuya proyección tiene peso i en C ′ . Entonces y debe de tener al
menos d − i entradas distintas de cero en las primeras d coordenadas, de las
cuales al menos (d − i)/(q − 1) tienen la misma entrada. Podemos suponer
que esta entrada es igual a 1. Tenemos que 0 6= y − x ∈ C, entonces d ≤
(d−i)
peso(y − x) ≤ i + d − (q−1) . Resolviendo para i obtenemos que i ≥ d/q. Por
lo tando d ≥ ⌈d/q⌉. Iterando este procedimiento con C ′ obtenemos la Cota
′
de Griesmer.
2.12 Ejercicios
1. Demuestra que todas las palabras no nulas en el código Simplex S(k, q)
tienen el mismo peso. Es decir, el código Simplex es un código de peso
constante.
5. Sea C un código lineal con parámetros [n, k, d]q y sea x ∈ C una palabra
no nula en C con peso(x)−⌈ peso(x)
q
⌉ < d. Basiándote en la demostración
del Teorema 2.11.1 construye el código residual Cx de C respecto de
33
x proyectando C en el conjunto de coordenadas nulas de x. Calcula los
parámetros de Cx como código lineal.
T : C −→ Fq
34
tendrı́a un kernel no trivial, lo que implica que d = 1. Al código D′ le
llamaremos la proyección de C en n − 1 de sus coordenadas.
En particular, la existencia de un código C con parámetros [n, k, d]q im-
plica la existencia de códigos con parámetros [n−1, k−1, d]q y [n−1, k, d−1]q .
2.13.2 Alargamiento
Consideremos el código binario C con parámetros [n, k, d]2 y supongamos que
d es impar. Construimos el código C ′ de longitud n + 1
2.13.3 Construcción X
Sean C un código con parámetros [n, k, d]q , D ≤ C un subcódigo de C con
parámetros [n, k −k ′ , d′ ]q con d′ > d y supongamos que existe un código auxi-
liar E con parámetros [l, k ′ , δ]q . Entonces existe un código C ′ con parámetros
[n+l, k, min(d+δ, d′ )]q . Esta construcción se llama construcción X en [4] y
consiste en alargar C l veces. Describimos el código C ′ mediante una matriz
generadora:
GD 0
.
GC/D GE
Donde GD , GC/D y GE son matrices generadoras para los códigos D, C/D y
E respectivamente.
35
2.13.4 Construcción XX
Sean C un código con parámetros [n, k, d]q , y Ci ≤ C, i = 1, 2, dos subcódigos
con parámetros [n, k − ki , di ]q respectivamente. Sea D el peso mı́nimo de una
palabra en C1 ∩C2 . Supongamos además que existen dos códigos auxiliares E1
y E2 con parámetros [li , ki , δi ]q respectivamente. Entonces existe un código
con parámetros
[n + l1 + l2 , k, min(D, d2 + δ1 , d1 + δ2 , d + δ1 + δ2 )]q .
min(d1 , d + δ1 ).
2.13.5 Encadenamiento
Sea Q = q h . El método de encadenamieno construye un código E sobre
Fq de un código sobre FQ : Sea C un código con parámetros [N, K, D]Q .
Y supongamos que existe un código I con parámetros [n, h, d]q . Fijamos
cualquier isomorfismo ϕ : FQ −→ I ⊆ Fnq . Entonces
[N · n, K · h, D · d]q .
2.14 Ejercicios
1. Calcula los parámetros del código lineal que resulta de proyectar el
código Reed-Solomon RS(k, q) en las columnas correspondientes a los
elementos de F∗q . Verifica si el código resultante es MDS.
36
2. Calcula los parámetros del código lineal que resulta al extender cada
palabra del código Reed-Solomon RS(k, q) en una coordenada, donde
esta coordenada se define como el coeficiente de xk−1 del polinomio
asociado a la palabra. Compara el código extendido RS(3, q) con el
código geométrico que resulta de usar todos los puntos de la cónica
y 2 − xz = 0 sobre Fq .
37
Capı́tulo 3
Códigos cı́clicos
Decimos que dos códigos son equivalentes si uno se puede obtener del otro
mediante una permutación de sus coordenadas. Un automorfismo de un
código C es una permutación de las coordenadas de C que deja fijo a C.
El conjunto de todos los automorfismos de C es un grupo bajo la operación
composición. Denotaremos a dicho grupo por Aut(C).
En esta parte del curso describiremos la construcción de códigos cı́clicos
lineales. Dichos códigos tienen como caracterı́stica principal un grupo de
automorfismos no trivial.
38
Con esta identificación hablaremos indistintamente de la palabra c ∈ C o
de la palabra c(x) ∈ C. Tambien diremos que C es un subconjunto de
polinomios del anillo R.
Si C es un código cı́clico tenemos que xi c(x) mod xn − 1 ∈ C para toda
i ≥ 0. Si a(x) ∈ R, se sigue por linealidad que a(x)c(x) ∈ C. Esto último
nos dice que C es un ideal de R. Por otro lado, si C es un ideal de R entonces
xi c(x) mod xn −1 ∈ C para toda i ≥ 0, por lo que C es un código cı́clico. Es
decir, existe una correspondencia uno a uno entre los códigos cı́clicos lineales
y los ideales de R.
El anillo R es un anillo de ideales principales, es decir, todo ideal C está
generado por un único elemento g(x), escribimos
39
Una base para el código cı́clico C =< g(x) > es g(x), xg(x), . . . , xk−1 g(x).
Es decir C es un código lineal de longitud n y dimensión k. Calcularemos
una cota inferior para la distancia mı́nima mas adelante.
Para codificar un mensaje m(x) = m0 +m1 x+· · ·+mk−1 xk−1 simplemente
hacemos la multiplicación m(x)g(x) mod xn − 1. Si recibimos un mensaje
r(x), podemos verificar si dicho mensaje pertenece a C calculando el residuo
módulo g(x); si dicho residuo es cero, entonces r(x) pertenece a C. En caso
contrario concluimos que hubo errores en la transmisión.
3.3 Decodificación
Supongamos que recibimos la palabra r(x). Dividiendo entre el polinomio
generador g(x) tenemos
r(x) = q(x)g(x) + s(x)
40
donde
g(x) = g0 + g1 x + g2 x2 + · · · + gn−k−1 xn−k−1 + gn−k xn−k
y
s(x) = s0 + s1 x + s2 x2 + · · · + sn−k−1 xn−k−1
es el residuo. Notemos que r(x) es una palabra del código si y solo si s(x) = 0.
Llamaremos a s(x) el sı́ndrome de r(x).
Como r(x) = c(x) + e(x) y r(x) = q(x)g(x) + s(x) tenemos que
e(x) = q(x)g(x) + s(x) − c(x)
= q(x)g(x) + s(x) − q ′ (x)g(x)
= (q(x) − q ′ (x))g(x) + s(x)
Por lo que s(x) es el residuo que se obtiene al dividir e(x) entre g(x).
3.4 Ejemplos
Sea q = 3 y n = 7. Entonces
x7 − 1 = (x − 1)(x6 + x5 + x4 + x3 + x2 + x + 1).
Entonces los únicos códigos cı́clicos de longitud 7 sobre Z3 son
{(0, 0, 0, 0, 0, 0, 0)}, < x − 1 >, < x6 + x5 + x4 + x3 + x2 + x + 1 > y Z73 .
El primero corresponde al polinomio g(x) = 0 = x7 − 1, el segundo es el
código suma cero, el tercero es el código de repetición, y Z73 corresponde al
polinomio g(x) = 1.
Consideremos ahora el caso n = 8. Tenemos que
x8 − 1 = (x − 1)(x + 1)(x2 + 1)(x2 + x − 1)(x2 − x − 1).
Por lo que hay 25 = 32 códigos cı́clicos de longitud 8 sobre Z3 . Por ejemplo,
consideremos el generado por g(x) = (x2 − x − 1)(x + 1). El código C =<
g(x) > tiene longitud 8 y dimensión 5. Calculemos una base para C:
x3 = (1)g(x) + (2x + 2) g(x) 7→ (2, 1, 0, 1, 0, 0, 0, 0)
x4 = (x)g(x) + (2x2 + x) x4 + x2 + 2x 7→ (0, 2, 1, 0, 1, 0, 0, 0)
x5 = (x2 − 1)g(x) + (x2 + x + 2) x5 + 2x2 + 2x + 1 7→ (1, 2, 2, 0, 0, 1, 0, 0)
x6 = (x3 − x + 1)g(x) + (x2 + x + 1) x6 + 2x2 + 2x + 2) 7 → (2, 2, 2, 0, 0, 0, 1, 0)
x7 = (x4 − x2 + x + 1)g(x) + (x2 + 1) x7 + 2x2 + 2) 7 → (2, 2, 0, 2, 0, 0, 0, 1)
(3.1)
41
Por lo que una matriz generadora para C es
2 1 0 1 0 0 0 0
0 2 1 0 1 0 0 0
G= 1 2 2 0 0 1 0 0
2 2 2 0 0 0 1 0
2 2 0 2 0 0 0 1
Supongamos que queremos enviar el mensaje
m = (0, 1, 2, 2, 1) 7→ m(x) = x + 2x2 + 2x3 + x4 .
Para codificarlo primero multiplicamos x3 m(x) y dividimos entre g(x) =
x3 + x + 2:
x3 m(x) = (x4 − x3 + x2 + 1)g(x) + (x2 − x + 1).
Entonces nuestro mensaje codificado es
c(x) = x3 m(x) − (x2 − x + 1) = 2 + x + 2x2 + x4 + 2x5 + 2x6 + x7 .
La palabra asociada es c := (2, 1, 2, 0, 1, 2, 2, 1). Esta papalbra se transmite
por el canal. El receptor, al recibir la palabra r = (2, 1, 2, 0, 2, 2, 2, 1), le
asocia el polinomio
2 + x + 2x2 + 2x4 + 2x5 + x6 + x7
y divide entre x3 + x + 2:
2 + x + 2x2 + 2x4 + 2x5 + x6 + x7 = (1 + x + x2 + 2x3 + x4 )g(x) + (2x2 + x).
Y fijándose en la tabla 3.1 se da cuenta que x4 tiene el mismo sı́ndrome
que r(x) por lo que debió de ocurrir un error de transmisión en la cuarta
coordenada. Concluye que esta debe de ser igual a uno.
42
con β una raı́z primitiva de la unidad en alguna cerradura algebraica de
Fq . Sea C un código cı́clico de longitud n con polinomio generador g(x) de
grado n−k. Recordemos que g(x)|(xn −1). Supongamos que α1 , α2 , . . . , αn−k
son todas las raı́ces de g(x) en alguna cerradura algebraica de Fq . Al ser β
una raiz primitiva de la unidad, tenemos que para i = 1, . . . , n − k
αi = β j p. a. j ∈ {0, 1, . . . , n − 1}.
1 β δ1 β 2δ1 . . . β (n−1)δ1
1 β δ2 β 2δ2 . . . β (n−1)δ2
. . . .
H := .
. . .
. . . .
δn−k 2δn−k
1 β β . . . β (n−1)δn−k
43
distancia mı́nima ≥ d. Para ver esto escribimos la matriz de verificación H
como en la sección anterior
βl β 2l β (n−1)l
1 ...
1 β l+1 β 2(l+1) . . . β (n−1)(l+1)
. . . .
H :=
. . . .
. . . .
l+d−2 2(l+d−2) (n−1)(l+d−2)
1 β β ... β
β i1 l β i2 l β i3 l β id−1 l
...
β i1 (l+1) β i2 (l+1) β i3 (l+1) . . . β id−1 (l+1)
′
. . . .
H :=
.
. . . .
. . . .
i1 (l+d−2) i2 (l+d−2) i3 (l+d−2) id−1 (l+d−2)
β β β ... β
pues β es raiz primitiva de la unidad. Esto último quiere decir que cualquier
conjunto de d − 1 columnas de H es linealmente independiente y como
c · HT = 0
44
3.6 El idempotente de un código cı́clico
Recordemos la hipótesis que hicimos respecto del polinomio xn − 1: no tiene
factores repetidos. Si g(x) es un divisor de xn − 1 entoces existe h(x) tal que
xn − 1 = g(x)h(x). Como xn − 1 no tiene factores repetidos, los polinomios
g(x) y h(x) no tienen ningún factor en común, por lo que existen polinomios
a(x), b(x) ∈ Fq [x] tales que
a(x)g(x) + b(x)h(x) = 1
de donde
1 − b(x)h(x) = a(x)g(x).
Esto último implica que i(x) := 1 − b(x)h(x) pertenece al código cı́clico C
generado por g(x). Pero eso no es todo: si p(x)g(x) ∈ C tenemos que
i(x)p(x)g(x) = (1 − b(x)h(x))p(x)g(x) = p(x)g(x) − b(x)h(x)p(x)g(x)
≡ p(x)g(x) mod xn − 1.
Entonces i(x) es una identidad para el código C, y por lo tanto es único.
En particular
i2 (x) = i(x) (3.2)
por lo que i(x) se le llama el idempotente de C.
Como cada palabra c(x) ∈ C se puede escribir como c(x)i(x) vemos que
i(x) es un generador para C.
Notemos que, por 3.2, si el término xa aparece en el polinomio i(x),
entonces tambien aparece el término x2a en i(x).
3.7 Ejercicios
1. Describe todos los códigos cı́clicos de longitud 7 sobre F2 .
2. Sea C un código cı́clico de longitud n sobre Fq . Demuestra que la
permutación de coordenadas i 7→ iq mod n es un automorfismo de C.
3. Sea C un código cı́clico de longitud n y distancia mı́nima d > 2 sobre
Fq , supongamos que recibimos la palabra r(x) y que ocurrieron ≤ e =
⌊ d−1
2
⌋ errores de transmisión. Demuestra que si s(x) es el sı́ndrome
de r(x), entonces xi s(x) es el sı́ndrome de xi r(x). (hint: si r(x) =
r0 + r1 x + · · · + rn−1 xn−1 entonces xr(x) = xr(x) − rn−1 (xn − 1)).
45
4. (Cota BCH:) Sea β una raiz n-ésima primitiva de la unidad sobre Fq .
Supón que C es un código cı́clico de longitud n sobre Fq con conjunto
de definición D(β) y que D(β) contiene un subconjunto de d−1 enteros
consecutivos. Demuestra que C tiene distancia mı́nima ≥ d.
46
Capı́tulo 4
Campos de Funciones
Algebraicos
En este capı́tulo introducimos los conceptos básicos que nos permitirán estu-
diar curvas algebraicas sobre campos finitos y construir códigos correctores de
errores basados en estas. Uno puede buscar en la literatura disponible (bas-
tante amplia) y darse cuenta que en la gran mayorı́a de los textos se hace
referencia a resultados profundos de geometrı́a algebraica. En este capı́tulo
resumiremos los resultados necesarios de la teorı́a de campos de funciones
que nos permitirán definir y estudiar los códigos de Goppa. Seguiremos las
exposiciones de [12], [10], [11], [9], [13], [7] y de [8].
K := {z ∈ F |z es algebraico sobre K}
47
z ∈ F es trascendente si y sólo si [F : K(z)] < ∞ pues K(z) es isomorfo a
K(x).
En un campo de funciones F/K no tenemos la noción de elemento ir-
reducible como en el caso de el campo de funciones racionales K(x). Para
contrarrestar esto generalizaremos el concepto de lugar.
1. K & O & F , y
2. para cualquier z ∈ F , z ∈ O o z −1 ∈ O.
P = O\O∗
3. K j O y K ∩ P = {0}.
48
z −1 (ar (z −1 )r + · · · + a1 ) = −1 y asi z = −(ar (z −1 )r + · · · + a1 ) ∈ K[z −1 ] ∈ O.
Como P no contiene unidades, se sigue que K ∩ P = {0}.¥
Un hecho interesante es el siguiente: sea O un anillo de valoración de
F/K, sea P su ideal maximal y sea x ∈ P , x 6= 0. Construimos la secuencia
x1 = x, xi ∈ xi+1 P , para i = 1, . . . , n, con n un entero positivo. El conjunto
{x1 , . . . , xn } es un conjunto linealmente independiente sobre K(x). Como
x ∈ P , x no es algebraico sobre K, y entonces [F : K(x)] < ∞, por lo que la
longitud de cualquier secuencia ası́ construida estará acotada por [F : K(x)].
Supongamos entonces que existe una combinación lineal no trivial de las xi
tal que
Xn
ϕi xi = 0 (4.1)
i=1
Todos los sumandos del lado derecho pertenecen a P : de hecho para i < j
xi ∈ xj P por lo que xxji ∈ P y xxj ∈ P . Entonces ϕj ∈ P . Por otro lado
ϕj = aj + xgj , con gj ∈ K[x] ⊆ O, 0 6= aj ∈ K y x ∈ P por lo que
aj = ϕj − xgj ∈ P ∩ K = {0}, y como aj 6= 0 contradecimos la parte (3) de
la Proposición anterior. Resumimos este resultado en el siguiente Lema.
Lema 4.1.1. Sea O un anillo de valoración de F/K, P su ideal maximal
y 0 6= x ∈ P . Sean x1 , . . . , xn ∈ P tales que x1 = x, xi ∈ xi+1 P para
i = 1, . . . , n − 1. Entonces tenemos que n ≤ [F : K(x)] < ∞.¥
Teorema 4.1.1. Sea O un anillo de valoración de F/K, P su ideal maximal.
Entonces
49
1. P es un ideal principal.
2. si P = tO entonces toda 0 6= z ∈ F tiene una representación única de
la forma z = tn u para alguna n ∈ Z, y u ∈ O∗ .
3. O es un dominio de ideales principales. De manera más precisa, si
P = tO y {0} 6= I ⊆ O es un ideal entonces I = tn O para alguna
n ∈ N.
50
Diremos entonces que OP := O es el anillo de valoración del lugar P .
Otra descripción de los lugares de un campo de funciones se puede obtener
en términos de valoraciones discretas:
Definición 4.1.4. Una valoración discreta de F/K es una función
v : F → Z ∪ {∞}
con las siguientes propiedades:
1. v(x) = ∞ si y solo si x = 0.
2. v(xy) = v(x) + v(y) para toda x, y ∈ F .
3. v(x + y) ≥ min{v(x), v(y)}.
4. Existe un elemento z ∈ F tal que v(z) = 1.
5. v(a) = 0 para toda a ∈ K.
En este contexto ∞ + ∞ = ∞ + n = n + ∞ = ∞ y ∞ > m para toda
n, m ∈ Z.
La función v es sobre: dada m ∈ Z buscamos una z ∈ F con v(z) = 1 y
entonces v(z m ) = m. La propiedad 3 es conocida en este contexto como la
desigualdad del triángulo.
Lema 4.1.2 (Desigualdad del triángulo estricta). Sea v una valoración dis-
creta de F/K, y x, y ∈ F con v(x) 6= v(y). Entonces v(x+y) = min{v(x), v(y)}.
51
Teorema 4.1.2. Sea F/K un campo de funciones.
1. para P ∈ PF , la función vP definida arriba es una valoración discreta
de F/K. Ademas, tenemos que
52
En particular, por la Proposición 4.1.1 el campo de constantes K queda
inmerso en el campo residual FP . Esto último es importante, pues en caso
de existir un lugar P de grado 1 tendrı́amos que K = K.
El grado de un lugar P se define como
53
Demostración. Consideremos el siguiente conjunto
F := {S|S es subanillo de F con R ⊆ S and IS 6= S}.
P
(Por definición, IS es el conjunto de sumas finitas de la forma aν sν con
aν ∈ I, sν ∈ S ; IS es un ideal de S.) F es no vacio pues R ∈ F, y F
esta ordenado de manera inductiva por inclusion. De hecho, S si H ⊆ F es un
subconjunto totalmente ordenado de F entonces T := {S|S ∈ H} es un
subanillo de F con R ⊆ T . TenemosPn que verificar que IT 6= T . Supongamos
que no es cierto, entonces 1 = ν=1 aν sν con aν ∈ I, sν ∈ T . Como H es
un conjunto totalmente
Pn ordenado existe S0 ∈ H tal que s1 , . . . , sn ∈ S0 , y
entonces 1 = ν=1 aν , lo cual es una contradicción.
Por el Lema de Zorn F contiene un elemento maximal i.e. existe un anillo
O ⊆ F tal que R ⊆ O ⊆ F , IO 6= O, y O es maximal con respecto a esas
propiedades. Queremos demostrar que O es anillo de valoración de F/K.
Como I 6= {0} e IO 6= O tenemos que O & F and I ⊆ O\O∗ . Supongase
que existe un elemento z ∈ F con z 6∈ O y z −1 6∈ O. Entonces IO[z] = O[z]
e IO[z −1 ] = O[z −1 ], y podemos encontrar a0 , . . . , an , b0 , . . . , bm ∈ IO con
1 = a0 + a1 z + · · · + an z n and (4.4)
1 = b0 + b1 z −1 + · · · + an z −m . (4.5)
Claramente n ≥ 1 y m ≥ 1. Podemos suponer que m, n en 4.4 y 4.5 se
escogen minimales y m ≤ n. Multiplicando 4.4 por 1 − b0 y 4.5 por an z n
obtenemos
1 − b0 = (1 − b0 )a0 + (1 − b0 )a1 z + · · · + (1 − b0 )an z n , y
0 = (b0 − 1)an z n + b1 an z n−1 + · · · + bm z −m .
Sumando estas ecuaciones obtenemos que 1 = c0 + c1 z + · · · + cn−1 z n−1
con coeficientes ci ∈ IO. Esto es una contradicción a la minimalidad de n
en 4.4 . Hemos probado que z ∈ O o z −1 ∈ O para toda z ∈ F , por lo tanto
O es anillo de valoración de F/K. ¥
Corolario 4.1.1. Sea F/K un campo de funciones, z ∈ F trascendente sobre
K. Entonces z tiene al menos un cero y un polo. En particular PF 6= ∅.
Demostración. Consideremos el anillo R = K[z] y el ideal I = zK[z]. El
Teorema anterior asegura la existencia de un lugar P ∈ PF con z ∈ P , por
lo tanto P es un cero de z. El mismo argumento demuestra que z −1 tiene un
cero Q ∈ PF . Entonces Q es un polo de z. ¥
54
4.2 El teorema de aproximación débil
Teorema 4.2.1 (Teorema de aproximación débil). Sean F/K un campo de
funciones, P1 , . . . , Pn ∈ PF lugares de F/K distintos dos a dos, x1 , . . . , xn ∈
F y r1 , . . . , rn ∈ Z. Entonces existe una función x ∈ F tal que
vPi (x − xi ) = ri for i = 1, . . . , n.
55
De nuevo por el Paso 3 existe z ′ ∈ F con vi (z ′ − zi ) > ri para i = 1, . . . , n.
Se sigue que
Sea x := z + z ′ . Entonces
vi (x − xi ) = vi ((z − xi ) + z ′ ) = min{vi (z − xi ), vi (z ′ )} = ri .¥
sean una base para FPi sobre K. Por el teorema de aproximación débil existen
funciones zij ∈ F tales que lo siguiente se cumple para toda i, j:
56
Afirmamos que los elementos
tai · zij , 1 ≤ i ≤ r, 1 ≤ j ≤ fi , 1 ≤ a ≤ ei
Pr
Pr son linealmente independientes sobre K(x). En número son i=1 fi ei =
v
i=1 Pi · grado(P i ), entonces la proposición se seguirá directamente.
El argumento es standar: Supongamos que existe una combinación lineal
no trivial de la forma
r X fi ei −1
X X
ϕija zij = 0 (4.7)
i=1 j=1 a=0
sobre K(x). Sin pérdida de generalidad podemos suponer que ϕija ∈ K[x] y
no todas las ϕija son divisibles por x. entonces existen ı́ndices k ∈ {1, . . . , r}
y c ∈ {1, . . . , ek − 1} tales que
fi ei −1
r X
X X
ϕija tai t−c
k zij = 0. (4.9)
i=1 j=1 a=0
≥ 0 + 0 − c + ek > 0.
Para i = k y a < c tenemos que
vk (ϕkja ta−c
k zkj ) ≥ ek + a − c ≥ ek − c > 0.
57
Observemos que ϕkjc (Pk ) ∈ K, y no todas las ϕkjc (Pk ) = 0 (por 4.8),
entonces 4.10 nos da la combinación lineal no trivial
fk
X
ϕkjc (Pk ) · zkj (Pk ) = 0
j=1
sobre K. Esto es una contradiction, pues los elementos zk1 (Pk ), . . . , zkfk (Pk )
son una base de FPk /K. ¥
Corolario 4.2.2. En un campo de funciones F/K, todo elemento 0 6= x ∈ F
tiene un número finito de ceros y de polos.
Demostración. Si x es una constante, entonces x no tiene ni ceros ni
polos. Si x es trascendente sobre K, el número de ceros está acotado por
[F : K(x)] por la Proposición 4.2.1. El mismo argumento muestra que x−1
tiene solo un número finito de ceros, cada uno de ellos siendo un polo de x.
¥
4.3 Divisores
Como el campo K de constantes de una extensión algebraica F/K es una
extensión finita de K, y F se puede ver como un campo de funciones sobre
K, entonces podemos suponer que F/K es un campo de funciones tal que K
es el campo de constantes.
Definición 4.3.1. Denotaremos por DF , al grupo abeliano libre generado
por los lugares de F/K. Le llamaremos el grupo de divisores de F/K.
Llamaremos a los elementos de DF divisores de F/K. En otras palabras
un divisor D es una suma formal de lugares
X
D= nP P con nP ∈ Z, y casi todas las nP = 0.
P ∈PF
58
donde S ⊆ PF es un conjunto finito y S ⊇ supp(D).
Un divisor
P de la forma
′
P= ′P con P ∈ PF se le llama divisor primo .
D
Dados D = nP P y D = nP P se suman coeficiente a coeficiente:
X
D + D′ = (nP + n′P )P .
P ∈PF
59
Claramente (x)0 y (x)∞ son divisores positivos. Y
X
(x) = vP (x)P . (4.11)
P ∈PF
CF := DF /PF
60
Lema 4.3.1. Sea A ∈ DF . Tenemos que
1. L(A) es espacio vectorial sobre K.
2. Si A′ es un divisor equivalente a A entonces L(A) ≃ L(A′ ) como espa-
cios vectoriales sobre K.
61
Demostración. Sea x ∈ L(A) entonces, para todo P ∈ PF ,
vP (x) ≥ −A ≥ −B
Para x ∈ L(B) tenemos que vP (x) ≥ −vP (B) = −vP (t), y entonces xt ∈ OP .
De esta manera obtenemos el mapeo K-lineal
½
L(B) → FP ,
ψ:
x 7→ (xt)(P ).
x pertenece al kernel de ψ si y solo si vP (xt) > 0, i.e. vP (x) > −vP (A). Se
sigue que Ker(ψ) = L(A), y que ψ induce un mapeo K-lineal inyectivo de
L(B)/L(A) a FP . Entonces
62
Teorema 4.3.1. Todo divisor principal tiene grado cero. Sea x ∈ F \K
y denotemos por (x)0 y (x)∞ el divisor de ceros y el divisor de polos de x
respectivamente. Entonces
por la Proposición 4.2.1. Por otro lado, podemos elegir una base u1 , . . . , un de
F/K(x) y un divisor C ≥ 0 teles que (ui ) ≥ −C para i = 1, . . . , n. Entonces
grado(x)∞ = [F : K(x)].
63
(b) Si grado(A) < 0 entonces dim(A) = 0
(c) Sea A un divisor de grado cero. Las siguientes afirmaciones son equi-
valentes
(1) A es principal.
(2) dim(A) ≥ 1.
(3) dim(A) = 1
Proposición 4.3.2. Existe una constante γ ∈ Z tal que, para todo divisor
A ∈ DF , se tiene que
grado(A) − dim(A) ≤ γ.
dim(lB + C) ≥ (l + 1)grado(B)
64
para toda l ≥ 0 (ver ecuación 4.12). Por otro lado,
65
Notemos que si A = 0 entonces
grado(0) − dim(0) + 1 = 0 − 1 + 1 = 0
por lo tanto g ≥ 0.
Teorema 4.3.2 (Teorema de Riemann). Sea F/K un campo de funciones
de género g.
(a) Para todo divisor A ∈ DF ,
dim(A) ≥ grado(A) + 1 − g.
66
4.4 El Teorema de Riemann-Roch
En esta sección F/K denota un campo de funciones algebraico de género g.
Q ∈ PF . Considera-
tal que αP ∈ OP excepto en un número finito de lugaresP
remos a los adeles como elementos del producto directo P ∈PF F . Usaremos
la notación α = (αP ).
vP (α) := vP (αP ),
67
Definición 4.4.3. Dado A ∈ DF definimos
grado(A2 ) − grado(A1 ).
La sucesión
0 → L(A2 )/L(A1 ) → AF (A2 )/AF (A1 )
(4.17)
→ (AF (A2 ) + F )/(AF (A1 ) + F ) → 0
68
Ahora supongamos que B ∈ DF es tal que dim(B) = grado(B) + 1 − g.
Si B1 ≥ B entonces
dim(B1 ) ≥ grado(B1 ) + 1 − g
por lo que
AF = AF (B) + F. (4.19)
69
Demostración. i(0) = dim(0) − grado(0) + g − 1 = 1 − 0 + g − 1 = g.¥
Resulta útil pensar en el espacio dual de AF /(AF (A) + F ), es decir,
en el espacio de funcionales lineales (AF /(AF (A) + F ))∗ . El concepto de
diferencial de Weil es fundamental para una segunda interpretación de el
ı́ndice de especialidad de un divisor.
(xω)(α) := ω(xα).
70
Proposición 4.4.1. ΩF es un espacio vectorial de dimensión uno sobre F .
Demostración. Sea ω1 ∈ ΩF −{0}. Tenemos que demostrar que para cada
ω2 ∈ ΩF existe z ∈ F tal que ω2 = zω1 . Supongamos que ω2 6= 0 (si ω2 = 0
entonces z = 0). Y sean A1 , A2 ∈ DF tales que ω1 ∈ ΩF (A1 ) y ω2 ∈ ΩF (A2 ).
Sea B ∈ DF , B ≥ 0, de grado suficientemente grande para que dim(Ai +
B) = grado(Ai +B)+1−g para i = 1, 2 (esto es posible por el Teorema 4.3.2).
Definimos los mapeos ϕi : L(Ai + B) −→ ΩF (−B) como ϕi (x) := xωi . Estos
mapeos son lineales (sobre K) e inyectivos. Definimos Ui = ϕi (L(Ai + B)) ≤
ΩF (−B).
Como
dim(ΩF (−B)) = i(−B) = 0 − grado(−B) + g − 1 = grado(B) + g − 1
tenemos que
dim(U1 ) + dim(U2 ) − dim(ΩF (−B)) =
grado(B) + (grado(A1 ) + grado(A2 ) + 3(1 − g)).
Observamos que el segundo sumando en el lado derecho de la ecuación ante-
rior es independiente de B, por lo que dim(U1 )+dim(U2 )−dim(ΩF (−B)) > 0
si grado(B) es lo suficientemente grande. Entonces
U1 ∩ U2 = ϕ1 (L(A1 + B)) ∩ ϕ2 (L(A2 + B)) 6= {0}.
Por lo que existen funciones x1 ∈ L(A1 + B) y x2 ∈ L(A2 + B) tales que
x1 ω1 = x2 ω2 6= 0 entonces ω2 = x1 x−1
2 ω1 . Esto demuestra la Proposición.¥
A cada diferencial de Weil le asociaremos un divisor como sigue: consi-
deremos el conjunto
M (ω) := {A ∈ DF |ω se anula en AF (A) + F }.
Lema 4.4.3. Sea 0 6= ω ∈ ΩF . Entonces existe un divisor, determinado de
manera única, W ∈ M (ω) tal que A ≤ W para todo divisor A ∈ M (ω).
Demostración. Por el Teorema de Riemann existe una constante c, que
depende solo de F/K, tal que i(A) = 0 siempre que grado(A) ≥ c. Como
dim(AF /(AF (A) + F )) = i(A) tenemos que grado(A) < c para todo A ∈
M (ω). Ası́ que podemos escoger W ∈ M (ω) de grado máximo.
Supongamos que exite un divisor A0 ∈ M (ω) con W < A0 , i.e. vQ (A0 ) >
vQ (W ) para algún Q ∈ PF . Demostraremos que
W + Q ∈ M (ω). (4.20)
71
Consideremos un adele α = (αP ) ∈ AF (W + Q). Lo escribimos como
α = α′ + α′′ con
½ ½
′ αP si P 6= Q, ′′ 0 si P 6= Q,
α := y α :=
0 si P = Q, αP si P = Q
1. ω se anula en AF ((ω)) + F .
2. Si ω se anula en AF (A) + F entonces A ≤ (ω).
(c) Decimos que un lugar P es un cero (resp. polo) si vP ((ω)) > 0 (resp.
vP ((ω)) < 0). ω se dice que es regular en P si vP ((ω)) ≥ 0, ω se dice
regular si es regular en todo P ∈ PF .
ΩF (A) = {ω ∈ ΩF |ω = 0 o (ω) ≥ A}
y, en particular que
ΩF (0) = {ω ∈ ΩF |ω es regular }.
72
(b) Cualesquiera dos divisores canónicos de F/K son equivalentes.
Demostración. (a) Si ω se anula en AF (A) + F entonces xω se anula
en AF (A + (x)) + F , por lo que (ω) + (x) ≤ (xω), en particular xω se
anula en AF ((ω) + (x)) + F ası́ que (ω) + (x) ≤ (xω). De igual manera
(xω) + (x−1 ) ≤ (x−1 xω) = (ω), de lo que se sigue que
73
Teorema 4.4.3 (Riemann-Roch). Sea W un divisor canónico de F/K. En-
tonces para todo A ∈ DF ,
dim(A) = grado(A) + 1 − g + dim(W − A).¥
Corolario 4.4.2. Para un divisor canónico W , tenemos que
grado(W ) = 2g − 2 y dim(W ) = g.
Demostración. Para 0 = A ∈ DF tenemos, por el teorema de Riemann-
Roch que
1 = dim(0) = grado(0) + 1 − g + dim(W − 0).
Entonces dim(W ) = g. Para A = W tenemos que
g = dim(W ) = grado(W ) + 1 − g + dim(W − W ) = grado(W ) + 2 − g.
Por lo tanto grado(W ) = 2g − 2.¥
La constante c en el teorema de Riemann se puede escoger igual a 2g − 1:
Teorema 4.4.4. Si A ∈ DF tiene grado ≥ 2g − 1 entonces i(A) = 0 i.e.
dim(A) = grado(A) + 1 − g.
Demostración. El teorema de Riemann-Roch dice que dim(A) = grado(A)+
1 − g + dim(W − A) para un divisor canónico W de F/K. Pero grado(W ) =
2g − 2 < 2g − 1 = grado(A), por lo que grado(W − A) < 0 y entonces
dim(W − A) = 0.¥
El teorema de Riemann-Roch caracteriza al género y a la clase canónica:
Teorema 4.4.5. Supongamos que g0 ∈ Z y W0 ∈ DF satisfacen
dim(A) = grado(A) + 1 − g0 + dim(W0 − A)
para todo divisor A ∈ DF . Entonces g0 = g y el divisor W0 es canónico.
Demostración. Tomando A = 0 y A = W0 obtenemos, por hipótesis,
que dim(W0 ) = g0 y grado(W0 ) = 2g0 − 2 respectivamente. Sea A un
divisor de F/K con grado(A) > max{2g − 2, 2g0 − 2} entonces, por un lado
dim(A) = grado(A) + 1 − g, y por hipotesis dim(A) = grado(A) + 1 − g0 .
Entonces, g = g0 .
Ahora tomamos A = W . Entonces, por hipotesis, tenemos que g =
(2g − 2) + 1 − g + dim(W0 − W ). Entonces dim(W0 − W ) = 1. Como
grado(W0 − W ) = 0 tenemos que el divisorW0 − W es principal. Y entonces
W0 W .¥
74
Proposición 4.4.3. Un divisor B es canónico si y solo si grado(B) = 2g −2
y dim(B) ≥ g.
75
el conjunto de órdenes polares un subsemigrupo de N y g > 0 entonces 1 no
puede ser un orden polar (no habrı́a saltos).¥
Cuando K es un campo algebraicamente cerrado, casi todos los lugares de
grado uno tienen la misma secuencia de saltos de Weierstrass. Dichos lugares
se dicen ordinarios. Cualquier lugar no ordinario se le llama punto de
Weierstrass. Los puntos de Weierstrass son fundamentales para el cálculo
del grupo de automorfismos de F/K.
por lo que X
ω(α) = ωP (αP ).
P ∈S
76
Recordemos que vP (ω) = vP (W ), donde W = (ω) es el divisor canónico
asociado. Sea s := vP (ω), entonces, si x ∈ F es tal que vP (x) ≥ −s tenemos
que ιP (x) ∈ AF (W ), por lo que ωP (x) = ωP (ιP (x)) = 0. Supongamos ahora
que ωP (x) = 0 para toda x ∈ F con vP (x) ≥ −s − 1. Sea α = (αQ )Q∈PF ∈
AF (W + P ). Entonces
α = (α − ιP (αP )) + ιP (αP )
77
Ahor bien, supongamos que [K ′ : K] < ∞ y sea x ∈ F − K. Entonces x
es trascendente sobre K ′ y F ′ /K ′ (x) es una extensión finita por lo que
y entonces
[F ′ : K(x)] = [F ′ : K ′ (x)][K ′ (x) : K(x)] < ∞.
Como K(x) ⊆ F ⊆ F ′ tenemos que [F ′ : F ] < ∞. En resumen, F ′ /K ′ es
una extensión algebraica finita de F/K si y solo si [K ′ : K] < ∞.
1. P ′ |P .
2. OP ⊆ OP′ .
78
Por la desigualdad del triángulo estricta tenemos que
vP′ (x) = vP′ (xt−r ) + vP′ (tr ) = 0 + rvP′ (t) = evP (x).
79
1. Al entero e(P ′ |P ) := e con vP ′ (x) = e · vP (x) para toda x ∈ F se le
llama el ı́ndice de ramificación de P ′ sobre P . Diremos que P ′ |P
es ramificado si e(P ′ |P ) > 1, y P ′ |P es no ramificado si e(P ′ |P ) = 1.
cn tn + cn−1 tn−1 + · · · + ct + c0 = 0
80
aquı́ la suma corre sobre todos los lugares P ′ ∈ PF ′ que están encima de P .
Este mapeo se extiende de manera natural a DF como sigue:
X X
ConF ′ /F ( nP P ) := nP ConF ′ /F (P ),
Una propiedad interesante de la conorma es que manda divisores princi-
pales en divisores principales: sea x ∈ F . El divisor principal de x en F ′ ,
′
denotado por (x)F es
′
X X X
(x)F = vP ′ (x)P ′ = e(P ′ |P )vP (x)P ′
P ′ ∈PF ′ P ∈PF P ′ |P
X X
= vP (x)ConF ′ /F (P ) = ConF ′ /F ( vP (x)P )
P ∈PF P ∈PF
81
1. |{P ′ ∈ PF ′ |P ′ está sobre P }| ≤ [F ′ : F ].
2. Si P ′ |P entonces e(P ′ |P ) ≤ [F ′ : F ] y f (P ′ |P ) ≤ [F ′ : F ].
Sea P ∈ PF . Entonces
³P ´
′ ′
grado(ConF ′ /F (P )) = grado P ′ |P e(P |P ) · P
′ ′ ′
P
= P ′ |P e(P |P ) · [FP ′ : K ]
′
[F :K]
′
P
= P ′ |P e(P |P ) · [KP′′:K]
= [K ′1:K] · P ′ |P e(P ′ |P ) · [FP′ ′ : FP ][FP : K]
P
³P ´
= [K ′1:K] · P |P
′ e(P ′
|P ) · f (P ′
|P ) · grado(P )
[F ′ :F ]
= [K ′ :K]
· grado(P ).
[F ′ : F ]
grado(ConF ′ /F (D)) = · grado(D).
[K ′ : K]
M CD(n, vP (a0 )) = 1.
M CD(n, vP (a0 )) = 1.
82
Demostración: Consideremos la extensión F ′ = F (y) con ϕ(y) = 0.
Tenemos que [F ′ : F ] = grado(ϕ) si y solo si ϕ(T ) es irreducible. Sea P ′
alguna extensión de P en F ′ . Tenemos que
Supongamos que ocurre (a): vemos que vP ′ (y) > 0. Sea e := e(P ′ |P ),
entonces vP ′ (a0 ) = e · vP (a0 ) y vP ′ (ai y i ) = e · vP (ai ) + i · vP ′ (y) > e · vP (a0 )
para i = 1, . . . , n − 1. La desigualdad del triángulo estricta nos dice que
n · vP ′ (y) = e · vP (a0 ).
n = e = [F ′ : F ].¥
D := P1 + · · · + Pn ∈ DF ,
D = P0 + P1 + Pα + · · · + Pαq−2
83
y
G = k · P∞ .
Se sigue que Ker(evD ) = L(G − D) por lo que, usando Riemann-Roch
Ahora sea f ∈ L(G) tal que d = peso(evD (f )). Entonces f tiene exactamente
n − d ceros Pi1 , . . . , Pin−d ∈ soporte(D). Esto último nos dice que
de donde
84
Capı́tulo 5
Consideremos el polinomio
T 2 + a(x) ∈ K(x)[T ]
con
a(x) = xm + am−1 xm−1 + · · · + a1 x + a0
y P = (x)∞ , m > 2 impar. Por el criterio de Einsenstein (b) el polinomio
ϕ(T ) := T 2 + a(x) es irreducible sobre K(x). Sea F := K(x, y) con
ϕ(y) = y 2 + a(x) = 0.
El mismo criterio nos dice que P tiene una única extensión Q en F , e(Q|P ) =
2 y f (Q|P ) = 1. Es decir Q es un lugar de grado uno y K es el campo de
constantes de F .
Entonces
(x)F∞ = −vQ (x)Q = −2 · vP (x)Q = 2Q.
Como
y 2 = −a(x) = −(xm + am−1 xm−1 + · · · + a1 x + a0 )
tenemos que
2vQ (y) = mvQ (x) = 2mvP (x) = −2m,
es decir vQ (y) = −m. Por lo que
(y)F∞ = mQ.
Como consecuencia inmediata tenemos que 2 y m son órdenes polares de Q.
Como el conjunto de órdenes polares de Q es un semigrupo, tenemos que
85
todo natural > 2m − 2 − m = m − 2 es órden polar de Q. El Teorema se los
saltos de Weierstrass nos dice que
m−1
g=
2
pues, en particular 2i es orden polar de Q para i = 1, 2, . . ..
Supongamos que F es una extensión cuadrática de K(x) de género g > 0.
Entonces existe z ∈ F tal que z 2 ∈ K(x) si char(K) 6= 2. En particular
F = K(x, z) con z 2 = a(x) ∈ K(x). Escribiendo
Y
a(x) = c · pi (x)αi , c ∈ K − {0},
86
con a1 , . . . , g1 ∈ K, a1 , d1 6= 0. Despues de multiplicar por a31 d21 y susti-
tuyendo y2 = a21 d1 y1 y x2 = a1 d1 x2 obtenemos que F = K(x2 , y2 ) con
y22 + (b2 x2 + c2 )y2 = x32 + e2 x22 + f2 x2 + g2
con b2 , c2 , e2 , f2 , g2 ∈ K.
Si char(K) 6= 2 podemos sustituir y = y2 + (b2 x2 + C2 )/2 y x = x2 para
obtener que F = K(x, y) con
y 2 = x3 + ex2 + f x + g = f (x) ∈ K[x].
Por otro lado, si char(K) = 2 entonces sustituimos
y2
y3 = .
(b2 x2 + c2 )
Nota que b2 x2 + c2 6= 0 pues, en caso contrario, y22 ∈ K(x2 ) implica que
la extensión F/K(x2 ) es puramente inseparable de grado 2, es decir F 2 =
K(x2 ); como el género de K(x2 )/K es cero y el género de F 2 /K es uno (F
y F 2 son isomorfos via Frobenio) aribamos a una contradicción. Obtenemos
que F = K(x2 , y3 ) con
x32 + e2 x22 + f2 x2 + g2
y32 + y3 = .
(b2 x2 + c2 )2
Si b2 = 0 entonces el lado derecho es un polinomio de grado 3 en K[x2 ].
Si b2 6= 0 entonces el lado derecho de la ecuación se puede escribir (usando
fracciones parciales) como
C D
Ax2 + B + 2
+
(b2 x2 + c2 ) b2 X2 + c2
con A, B, C, D ∈ K, A 6= 0. Sea C1 ∈ K tal que C = C12 . Sea
C1
y4 = y3 + ,
b2 X2 + c2
entonces
C2
y42 + y4 = A2 x2 + B2 +
b2 X2 + c2
con A2 , B2 , C2 ∈ K, A = A2 6= 0. Notemos que C2 6= 0 pues, de otra manera,
F = (x2 , y4 ) serı́a racional. Finalmente escribimos y = y4 y x = A2 X2 + B2
para obtener que F = K(x, y) con
1
y2 + y = x +
ax + b
con a, b ∈ K, a 6= 0.
87
5.2 Ejemplo
En este ejemplo usaremos como campo base a F4 = {0, 1, α, α2 } donde
α2 + α + 1 = 0.
Consideremos el campo de funciones F := F4 (x, y) con
y 2 + y = x3 .
Sea P∞ el polo de x en Fx (x). Por el criterio de Einsenstein, usando P∞ , el
polinomio T 2 + T − x3 es irreducible por lo que [F : F4 (x)] = 2. El mismo
criterio nos dice que hay un único lugar Q∞ ∈ PF que está encima de P∞ ,
que e(Q∞ |P∞ ) = 2 y por lo tanto f (Q∞ |P∞ ) = 1 lo que nos dice que Q∞ es
un lugar de grado uno en F . Entonces
vQ∞ (x) = 2 · vP∞ (x) = −2,
vQ∞ (y 2 + y) = min{2vQ∞ (y), vQ∞ (y)} = 2vQ∞ (y) = −2 · 3
por lo que
vQ∞ (y) = −3.
Tenemos que
(x)F∞ = 2Q∞
y
(y)F∞ = 3Q∞ .
De lo anterior tenemos que las funciones xi y j ∈ L(rQ∞ ) para 0 ≤ 2i+3j ≤ r.
Supongamos ahora que Q ∈ PF − {Q∞ } es un lugar de grado uno. Eva-
luando en Q obtenemos x1 = x(Q) ∈ F4 , y1 := y(Q) ∈ F4 tales que
y12 + y1 = x31 .
Por lo que los lugares de grado uno de F quedan determinados por pares de
elementos (x1 , y1 ) en F24 tales que y12 + y1 = x31 . En este ejemplo podemos
calcular todos los lugares de grado uno distintos de Q∞ :
(0, 0), (0, 1), (1, α), (1, α2 ), (α, α), (α, α2 ), (α2 , α), (α2 , α2 ).
Podemos ahora construir un código de Goppa: Por ejemplo, definimos los
divisores D, G ∈ DF
D := (0, 0) + (0, 1) + (1, α) + (1, α2 ) + (α, α) + (α, α2 ) + (α2 , α) + (α2 , α2 )
88
y
G := 3 · Q∞ .
Las funciones 1, x, y ∈ L(G), y son linealmente independientes. Como
grado(G) = dim(G) = 3
las funciones 1, x, y son una base para L(G). Una matriz generadora para el
código de Goppa asociado a los divisores D y G es
[8, 3, 5]4
5.3 Ejercicios
1. Demuestra que si char(K) 6= 2 el polinomio cúbico f (x) en la ecuación
y 2 = f (x) no tiene factores cuadráticos.
µ2 + µ = δ 3 .
89
A = (x)∞ , entonces 1, x ∈ L(A) por lo que dim(A) ≥ 2. Por lo que todo
campo hiperelı́ptico tiene al menos un divisor A ∈ DF con grado(A) = 2 y
dim(A) ≥ 2.
Recı́procamente, supongamos que F/K es un campo de funciones de
género g ≥ 2 y tal que existe A ∈ DF con grado(A) = 2 y dim(A) ≥ 2. Se
sigue que existen un divisor efectivo A1 ∼ A, con grado(A1 ) = 2 y dim(A1 ) ≥
2 y x ∈ L(A1 ) − K. Entonces (x)∞ ≤ A1 y [F : K(x)] = grado((x)∞ ) ≤ 2.
Pero como F no es racional (g ≥ 2) tenemos que, en particular, F 6= K(x),
por lo tanto [F : K(x)] = 2. Entonces todo campo de funciones F/K de
género g ≥ 2 tal que existe a ∈ DF con grado(A) = 2 y dim(A) ≥ 2 es
hiperelı́ptico.
Podemos demostrar ahora que todo campo de funciones de género g = 2
es hiperelı́ptico: Consideremos un divisor canónico W ∈ DF . Tenemos que
grado(W ) = 2g − 2 = 2 y dim(W ) = g = 2. El párrafo anterior nos dice que
F/K es hiperelı́ptico.
5.5 Ejemplo
Sea F8 = {0, 1, α, α2 , α3 , α4 , α5 , α6 } tal que α3 + α2 + 1 = 0. Consideremos
el campo de funciones hiperelı́ptico de género 2 F = F8 (x, y) con
(x)F∞ = 2Q∞
y que
(y)F∞ = 5Q∞ .
Definimos los divisores
90
y
G := 5 · Q∞ .
Tenemos que las funciones xi y j pertenecen a L(G) si y solo si 2i + 5j ≤ 5.
Por Riemann-Roch
dim(G) = grado(G) + 1 − g = 5 + 1 − 2 = 4.
[12, 4, 7]8
91
Bibliografı́a
92