Documentation

TauCeti.FieldTheory.FunctionField.Hyperelliptic.Genus.Basic

The genus of y ^ 2 = f(x) #

Let k be a field of characteristic other than two and F / k(x) an extension generated by an element y with y ^ 2 = f(x), where f ∈ k[X] is squarefree of degree m ≥ 1; then F / k(x) is finite and separable. This file computes the invariants of F / k from the ramification of F / k(x):

For odd m, the place at infinity is totally ramified with a unique rational place above it in every characteristic, without squarefreeness; these models also have exact constants.

The local input is the ramification of the radical extension y ^ 2 = f at a place P of k(x) (TauCeti.Place.ramificationIdx_eq_of_pow_eq_of_prime and TauCeti.Place.differentExponent_eq_of_pow_eq_of_prime): the places above P are ramified, with different exponent one, exactly when ord_P f is odd. Since f is a squarefree polynomial, ord_P f is 0 or 1 at a finite place, and -m at infinity. To add up the different without counting the places above each ramified P, compare it with the conorm of the divisor B of k(x) consisting of the places where ord_P f is odd: every place above B has ramification index two, so Con B = 2 · Diff(F / k(x)), and the conorm multiplies degrees by [F : k(x)] = 2. Hence deg Diff(F / k(x)) = deg B, and deg B = m + (m mod 2) because the zeros of f have total degree m by the product formula.

Exactness of the constants comes from the ramification as well: a finite separable extension with a totally ramified place acquires no new constants (TauCeti.isIntegrallyClosedIn_of_isTotallyRamified).

Main results #

References #

The branch divisor on k(x) #

The degree of y ^ 2 = f #

theorem TauCeti.finrank_ratFunc_eq_two_of_sq_eq {k : Type u_1} {F : Type u_2} [Field k] [Field F] [Algebra (RatFunc k) F] {f : Polynomial k} (hf : Squarefree f) (hdeg : 0 < f.natDegree) {y : F} (hgen : (RatFunc k)⟮y⟯ = ⊤) (hy : y ^ 2 = (algebraMap (RatFunc k) F) ((algebraMap (Polynomial k) (RatFunc k)) f)) :

y ^ 2 = f has degree two over k(x) for a squarefree nonconstant polynomial f. No hypothesis on the characteristic is needed.

theorem TauCeti.finiteDimensional_and_isSeparable_of_sq_eq {k : Type u_1} {F : Type u_2} [Field k] [Field F] [Algebra (RatFunc k) F] (h2 : 2 ≠ 0) {f : Polynomial k} (hf : Squarefree f) (hdeg : 0 < f.natDegree) {y : F} (hgen : (RatFunc k)⟮y⟯ = ⊤) (hy : y ^ 2 = (algebraMap (RatFunc k) F) ((algebraMap (Polynomial k) (RatFunc k)) f)) :

A squarefree nonconstant polynomial model generates a finite separable extension of k(x) away from characteristic two.

theorem TauCeti.finrank_ratFunc_eq_two_of_sq_eq_of_odd {k : Type u_1} {F : Type u_2} [Field k] [Field F] [Algebra (RatFunc k) F] {f : Polynomial k} (hodd : Odd f.natDegree) {y : F} (hgen : (RatFunc k)⟮y⟯ = ⊤) (hy : y ^ 2 = (algebraMap (RatFunc k) F) ((algebraMap (Polynomial k) (RatFunc k)) f)) :

An odd-degree polynomial model has degree two over k(x), in every characteristic and without squarefreeness.

Ramification and the different of y ^ 2 = f #

theorem TauCeti.Place.isTotallyRamified_of_sq_eq_of_odd {k : Type u_1} {F : Type u_2} [Field k] [Field F] [Algebra (RatFunc k) F] [Algebra k F] [IsScalarTower k (RatFunc k) F] {f : Polynomial k} (hodd : Odd f.natDegree) {y : F} (hgen : (RatFunc k)⟮y⟯ = ⊤) (hy : y ^ 2 = (algebraMap (RatFunc k) F) ((algebraMap (Polynomial k) (RatFunc k)) f)) {P : Place k F} :

In a polynomial model of odd degree, every place above infinity is totally ramified. This also holds in characteristic two, without squarefreeness.

theorem TauCeti.Place.existsUnique_restrict_eq_infty_of_sq_eq_of_odd {k : Type u_1} {F : Type u_2} [Field k] [Field F] [Algebra (RatFunc k) F] [Algebra k F] [IsScalarTower k (RatFunc k) F] {f : Polynomial k} (hodd : Odd f.natDegree) {y : F} (hgen : (RatFunc k)⟮y⟯ = ⊤) (hy : y ^ 2 = (algebraMap (RatFunc k) F) ((algebraMap (Polynomial k) (RatFunc k)) f)) :
∃ (P : Place k F), restrict k (RatFunc k) P = infty k ∧ P.degree = 1 ∧ ∀ (Q : Place k F), restrict k (RatFunc k) Q = infty k → Q = P

An odd-degree polynomial model has a unique place above infinity; that place has degree one. No squarefreeness, separability, or characteristic assumption is needed.

theorem TauCeti.isIntegrallyClosedIn_of_sq_eq_of_odd {k : Type u_1} {F : Type u_2} [Field k] [Field F] [Algebra (RatFunc k) F] [Algebra k F] [IsScalarTower k (RatFunc k) F] {f : Polynomial k} (hodd : Odd f.natDegree) {y : F} (hgen : (RatFunc k)⟮y⟯ = ⊤) (hy : y ^ 2 = (algebraMap (RatFunc k) F) ((algebraMap (Polynomial k) (RatFunc k)) f)) :

The constants of an odd-degree polynomial model are exactly k. No squarefreeness, separability, or characteristic assumption is needed.

theorem TauCeti.Place.one_lt_ramificationIdx_iff_of_sq_eq {k : Type u_1} {F : Type u_2} [Field k] [Field F] [Algebra (RatFunc k) F] [Algebra k F] [IsScalarTower k (RatFunc k) F] [FiniteDimensional (RatFunc k) F] [Algebra.IsSeparable (RatFunc k) F] (h2 : 2 ≠ 0) {f : Polynomial k} (hf : Squarefree f) {y : F} (hgen : (RatFunc k)⟮y⟯ = ⊤) (hy : y ^ 2 = (algebraMap (RatFunc k) F) ((algebraMap (Polynomial k) (RatFunc k)) f)) (P' : Place k F) :

The ramified places of y ^ 2 = f (Stichtenoth, Proposition 6.2.3): a place of F is ramified over k(x) exactly when it lies over a zero of f, or over the place at infinity with deg f odd. Its ramification index is then two, by TauCeti.Place.ramificationIdx_eq_of_pow_eq_of_prime.

theorem TauCeti.Place.ramificationIdx_eq_one_of_restrict_eq {k : Type u_1} {F : Type u_2} [Field k] [Field F] [Algebra (RatFunc k) F] [Algebra k F] [IsScalarTower k (RatFunc k) F] [FiniteDimensional (RatFunc k) F] [Algebra.IsSeparable (RatFunc k) F] (h2 : 2 ≠ 0) {f : Polynomial k} (hf : Squarefree f) {y : F} (hgen : (RatFunc k)⟮y⟯ = ⊤) (hy : y ^ 2 = (algebraMap (RatFunc k) F) ((algebraMap (Polynomial k) (RatFunc k)) f)) {q : Polynomial k} (hq : Irreducible q) (hqf : ¬q ∣ f) {P : Place k F} (hP : restrict k (RatFunc k) P = adicOfIrreducible hq) :

Away from the branch locus, a place over a finite place q of k(x) not dividing f is unramified over k(x): it lies neither over infinity nor over a zero of f.

theorem TauCeti.degree_different_ratFunc_of_sq_eq {k : Type u_1} {F : Type u_2} [Field k] [Field F] [Algebra (RatFunc k) F] [Algebra k F] [IsScalarTower k (RatFunc k) F] [FiniteDimensional (RatFunc k) F] [Algebra.IsSeparable (RatFunc k) F] (h2 : 2 ≠ 0) {f : Polynomial k} (hf : Squarefree f) (hdeg : 0 < f.natDegree) {y : F} (hgen : (RatFunc k)⟮y⟯ = ⊤) (hy : y ^ 2 = (algebraMap (RatFunc k) F) ((algebraMap (Polynomial k) (RatFunc k)) f)) :

The degree of the different of y ^ 2 = f: for a squarefree polynomial f of degree m ≥ 1, the different of F / k(x) has degree m + (m mod 2), the number of branch points counted with their degrees.

The constants and the genus of y ^ 2 = f #

theorem TauCeti.isIntegrallyClosedIn_of_sq_eq {k : Type u_1} {F : Type u_2} [Field k] [Field F] [Algebra (RatFunc k) F] [Algebra k F] [IsScalarTower k (RatFunc k) F] (h2 : 2 ≠ 0) {f : Polynomial k} (hf : Squarefree f) (hdeg : 0 < f.natDegree) {y : F} (hgen : (RatFunc k)⟮y⟯ = ⊤) (hy : y ^ 2 = (algebraMap (RatFunc k) F) ((algebraMap (Polynomial k) (RatFunc k)) f)) :

The constant field of y ^ 2 = f is exact: for a squarefree nonconstant polynomial f, k is algebraically closed in F = k(x, y).

theorem TauCeti.genus_eq_of_sq_eq {k : Type u_1} {F : Type u_2} [Field k] [Field F] [Algebra (RatFunc k) F] [Algebra k F] [IsScalarTower k (RatFunc k) F] (h2 : 2 ≠ 0) {f : Polynomial k} (hf : Squarefree f) (hdeg : 0 < f.natDegree) {y : F} (hgen : (RatFunc k)⟮y⟯ = ⊤) (hy : y ^ 2 = (algebraMap (RatFunc k) F) ((algebraMap (Polynomial k) (RatFunc k)) f)) :
genus k F = (f.natDegree - 1) / 2

The genus of y ^ 2 = f(x) (Stichtenoth, Example 3.7.6 and Proposition 6.2.3): away from characteristic two, if F = k(x, y) with y ^ 2 = f(x) for a squarefree polynomial f of degree m ≥ 1, then F / k has genus ⌊(m - 1) / 2⌋: (m - 1) / 2 for odd m and (m - 2) / 2 for even m.

theorem TauCeti.isHyperellipticFunctionField_of_sq_eq {k : Type u_1} {F : Type u_2} [Field k] [Field F] [Algebra (RatFunc k) F] [Algebra k F] [IsScalarTower k (RatFunc k) F] (h2 : 2 ≠ 0) {f : Polynomial k} (hf : Squarefree f) (hdeg : 5 ≤ f.natDegree) {y : F} (hgen : (RatFunc k)⟮y⟯ = ⊤) (hy : y ^ 2 = (algebraMap (RatFunc k) F) ((algebraMap (Polynomial k) (RatFunc k)) f)) :

y ^ 2 = f(x) is hyperelliptic when deg f ≥ 5 (Stichtenoth, Proposition 6.2.3): away from characteristic two, if F = k(x, y) with y ^ 2 = f(x) for a squarefree polynomial f of degree at least five, then F / k is a hyperelliptic function field.