Module

ValuationSubring_exists_pow_valuation_eq_valuation_algebraMap_of_isAlgebraic.lean

Nyll.AlgebraicCurves.Valuations.ValuationSubring_exists_pow_valuation_eq_valuation_algebraMap_of_isAlgebraic
3 declarations indexed from sourceView source ↗

Valuation Subring exists pow valuation eq valuation algebra Map of is Algebraic

Declarations

AlgebraicCurves.Valuations.Proofs.ValuationSubring_exists_pow_valuation_eq_valuation_algebraMap_of_isAlgebraic.TorSol.exists_ne_map_eq_of_sum_eq_zero
Source context 4 commands

Surrounding namespaces, section variables, and local commands at this declaration.

section ProofImplementation
namespace AlgebraicCurves.Valuations.Proofs
namespace ValuationSubring_exists_pow_valuation_eq_valuation_algebraMap_of_isAlgebraic
namespace TorSol
lemma exists_ne_map_eq_of_sum_eq_zero {R : Type*} [CommRing R]
    {Γ₀ : Type*} [LinearOrderedCommGroupWithZero Γ₀] (v : Valuation R Γ₀)
    {ι : Type*} (s : Finset ι) (t : ι → R) (hs : s.Nonempty) (ht : ∀ i ∈ s, v (t i) ≠ 0)
    (hsum : ∑ i ∈ s, t i = 0) : ∃ i ∈ s, ∃ j ∈ s, i ≠ j ∧ v (t i) = v (t j)
AlgebraicCurves.Valuations.Proofs.ValuationSubring_exists_pow_valuation_eq_valuation_algebraMap_of_isAlgebraic.TorSol.exists_lt_valuation_eq
Source context 4 commands

Surrounding namespaces, section variables, and local commands at this declaration.

section ProofImplementation
namespace AlgebraicCurves.Valuations.Proofs
namespace ValuationSubring_exists_pow_valuation_eq_valuation_algebraMap_of_isAlgebraic
namespace TorSol
lemma exists_lt_valuation_eq {E F : Type*} [Field E] [Field F] [Algebra E F]
    (O : ValuationSubring F) {g : F} (hg : g ≠ 0) {p : Polynomial E} (hp : p ≠ 0)
    (hpg : Polynomial.aeval g p = 0) :
    ∃ i j : ℕ, i < j ∧ p.coeff i ≠ 0 ∧ p.coeff j ≠ 0 ∧
      O.valuation (algebraMap E F (p.coeff i) * g ^ i) =
        O.valuation (algebraMap E F (p.coeff j) * g ^ j)
ValuationSubring.exists_pow_valuation_eq_valuation_algebraMap_of_isAlgebraic
Source context 4 commands

Surrounding namespaces, section variables, and local commands at this declaration.

section ProofImplementation
namespace AlgebraicCurves.Valuations.Proofs
namespace ValuationSubring_exists_pow_valuation_eq_valuation_algebraMap_of_isAlgebraic
open TorSol in
theorem _root_.ValuationSubring.exists_pow_valuation_eq_valuation_algebraMap_of_isAlgebraic
    {E F : Type*} [Field E] [Field F] [Algebra E F] [Algebra.IsAlgebraic E F]
    (O : ValuationSubring F) {g : F} (hg : g ≠ 0) :
    ∃ n : ℕ, 0 < n ∧ ∃ c : E, c ≠ 0 ∧ O.valuation (g ^ n) = O.valuation (algebraMap E F c)