The complete, two-orbit and cyclic shapes of a five-dimensional W ⊇ span(1, u, u⁻¹) in canonical form: D1, D2a or D2b
ProvedDiazModulus.quadratic_eigen_forms_canonicalLet be transcendental, that is, (the algebraic numbers); spans and linear independence are over . Let be a -vector subspace of dimension with , that is, for . Let be coprime with , write , and suppose has one of the three shapes of DiazModulus.quadratic_complement_eigen_forms:
- (scalar) for some , for every of degree at most ;
- (two-orbit) for some in and of degree at most , ;
- (cyclic) for some and of degree at most , .
Then one of the following holds:
- (D1) there are linearly independent with and for every ;
- (D2a, two-orbit) for some with coprime, and ;
- (D2b, cyclic) for some such .
Proof. By DiazModulus.coprime_pencil_mobius, and, for , are again coprime of maximal degree . Scalar: and lie in (take and ). A relation times gives in ( is transcendental), and coprimality with degree forces : (D1). Two-orbit: with , , , , , the canonical generators differ from the given ones by , so the spans agree: (D2a); the denominators are non-zero, the five generators of being independent. Cyclic: , , , give (D2b) verbatim.
Novelty. Not found in the sources read; routine.
import Definitions.Def_DiazModulus
open Complex ComplexConjugate
namespace DiazModulus
open Polynomial in
theorem quadratic_eigen_forms_canonical (u : ℂ) (hu : u ∉ Qbar) (W : Submodule (↥Qbar) ℂ) [FiniteDimensional (↥Qbar) W]
(hW : Module.finrank (↥Qbar) W = 5) (h1 : (1 : ℂ) ∈ W) (hu1 : u ∈ W) (hui : u⁻¹ ∈ W) (P Q : (↥Qbar)[X])
(hcop : IsCoprime P Q) (hdeg : max P.natDegree Q.natDegree = 2)
(hform :
(∃ c : ↥Qbar, ∀ R : (↥Qbar)[X], R.natDegree ≤ 2 → aeval u Q * aeval u R / (u * (aeval u P - (c : ℂ) * aeval u Q)) ∈
W) ∨
(∃ c₁ c₂ : ↥Qbar, c₁ ≠ c₂ ∧ ∃ R₁ R₂ : (↥Qbar)[X], R₁.natDegree ≤ 2 ∧ R₂.natDegree ≤ 2 ∧
W = Submodule.span Qbar ({1, u, u⁻¹, aeval u Q * aeval u R₁ / (u * (aeval u P - (c₁ : ℂ) * aeval u Q)),
aeval u Q * aeval u R₂ / (u * (aeval u P - (c₂ : ℂ) * aeval u Q))} : Set ℂ)) ∨
(∃ c : ↥Qbar, ∃ R₀ R₁ : (↥Qbar)[X], R₀.natDegree ≤ 2 ∧ R₁.natDegree ≤ 2 ∧
W = Submodule.span Qbar ({1, u, u⁻¹, aeval u Q * aeval u R₀ / (u * (aeval u P - (c : ℂ) * aeval u Q)),
aeval u Q * (aeval u Q * aeval u R₀ + (aeval u P - (c : ℂ) * aeval u Q) * aeval u R₁) / (u * (aeval u P - (c : ℂ) * aeval u Q) ^ 2)} :
Set ℂ))) :
(∃ t : Fin 3 → ℂ, LinearIndependent (↥Qbar) t ∧ ∀ j, t j ∈ W ∧ u * t j ∈ W) ∨ (∃ P' Q' S₁ S₂ : (↥Qbar)[X], IsCoprime P' Q' ∧ max P'.natDegree Q'.natDegree = 2 ∧
S₁.natDegree ≤ 2 ∧ S₂.natDegree ≤ 2 ∧
W = Submodule.span Qbar ({1, u, u⁻¹, aeval u Q' * aeval u S₁ / (u * aeval u P'),
aeval u P' * aeval u S₂ / (u * aeval u Q')} : Set ℂ)) ∨
(∃ P' Q' S₁ S₂ : (↥Qbar)[X], IsCoprime P' Q' ∧ max P'.natDegree Q'.natDegree = 2 ∧
S₁.natDegree ≤ 2 ∧ S₂.natDegree ≤ 2 ∧
W = Submodule.span Qbar ({1, u, u⁻¹, aeval u Q' * aeval u S₁ / (u * aeval u P'),
aeval u Q' * (aeval u Q' * aeval u S₁ + aeval u P' * aeval u S₂) / (u * aeval u P' ^ 2)} :
Set ℂ)) := by
sorry
end DiazModulus