Documentation

Atlas.NumberTheoryI.code.IdealNorms

noncomputable def localModuleIndex {R : Type u_1} [CommRing R] {K : Type u_2} [Field K] [Algebra R K] [IsFractionRing R K] {M : Type u_3} [AddCommGroup M] [Module R M] (φ : M →ₗ[R] M) :
Instances For
    theorem localModuleIndex_comp_equiv {R : Type u_1} [CommRing R] [IsDomain R] {K : Type u_2} [Field K] [Algebra R K] [IsFractionRing R K] {M : Type u_3} [AddCommGroup M] [Module R M] (φ : M →ₗ[R] M) (u v : M ≃ₗ[R] M) :
    theorem localModuleIndex_comp {R : Type u_1} [CommRing R] {K : Type u_2} [Field K] [Algebra R K] [IsFractionRing R K] {M : Type u_3} [AddCommGroup M] [Module R M] (φ ψ : M →ₗ[R] M) :
    @[simp]
    theorem localModuleIndex_id {R : Type u_1} [CommRing R] {K : Type u_2} [Field K] [Algebra R K] [IsFractionRing R K] {M : Type u_3} [AddCommGroup M] [Module R M] :
    theorem prod_ne_zero_of_ne_bot {A : Type u_1} [CommRing A] [IsDomain A] (K : Type u_2) [Field K] [Algebra A K] [IsFractionRing A K] {n : } (J : Fin nIdeal A) (hJ : ∀ (i : Fin n), J i ) :
    (∏ i : Fin n, J i) 0
    theorem comparison_map_membership {A : Type u_1} [CommRing A] [IsDomain A] [IsDedekindDomain A] (K : Type u_2) [Field K] [Algebra A K] [IsFractionRing A K] {V : Type u_3} [AddCommGroup V] [Module K V] [Module A V] [IsScalarTower A K V] [FiniteDimensional K V] (M N : Submodule A V) [Module.Finite A M] [Module.Finite A N] :
    ∃ (φ : V →ₗ[A] V), ∀ (x : V), x M φ x N
    theorem comparison_map_det_ne_zero {A : Type u_1} [CommRing A] [IsDomain A] [IsDedekindDomain A] (K : Type u_2) [Field K] [Algebra A K] [IsFractionRing A K] {V : Type u_3} [AddCommGroup V] [Module K V] [Module A V] [IsScalarTower A K V] [FiniteDimensional K V] (M N : Submodule A V) [Module.Finite A M] [Module.Finite A N] (φ : V →ₗ[A] V) ( : ∀ (x : V), x M φ x N) :
    theorem lattice_comparison_map_exists {A : Type u_1} [CommRing A] [IsDomain A] [IsDedekindDomain A] (K : Type u_2) [Field K] [Algebra A K] [IsFractionRing A K] {V : Type u_3} [AddCommGroup V] [Module K V] [Module A V] [IsScalarTower A K V] [FiniteDimensional K V] (M N : Submodule A V) [Module.Finite A M] [Module.Finite A N] :
    ∃ (φ : V →ₗ[A] V), (∀ (x : V), x M φ x N) (algebraMap A K) (LinearMap.det φ) 0
    theorem snf_det_eq_prod_count_at_prime {A : Type u_1} [CommRing A] [IsDomain A] [IsDedekindDomain A] (K : Type u_2) [Field K] [Algebra A K] [IsFractionRing A K] {V : Type u_3} [AddCommGroup V] [Module K V] [Module A V] [IsScalarTower A K V] [FiniteDimensional K V] (M N : Submodule A V) [Module.Finite A M] [Module.Finite A N] :
    N M∀ {n : } (J : Fin nIdeal A), (∀ (i : Fin n), J i )∀ (x✝ : (M Submodule.comap M.subtype N) ≃ₗ[A] DirectSum (Fin n) fun (i : Fin n) => A J i) (φ : V →ₗ[A] V), (∀ (x : V), x M φ x N)∀ (v : IsDedekindDomain.HeightOneSpectrum A), FractionalIdeal.count K v (FractionalIdeal.spanSingleton (nonZeroDivisors A) ((algebraMap A K) (LinearMap.det φ))) = FractionalIdeal.count K v (∏ i : Fin n, J i)
    theorem snf_local_ideal_eq_prod {A : Type u_1} [CommRing A] [IsDomain A] [IsDedekindDomain A] (K : Type u_2) [Field K] [Algebra A K] [IsFractionRing A K] {V : Type u_3} [AddCommGroup V] [Module K V] [Module A V] [IsScalarTower A K V] [FiniteDimensional K V] (M N : Submodule A V) [Module.Finite A M] [Module.Finite A N] (hle : N M) {n : } (J : Fin nIdeal A) (hJ : ∀ (i : Fin n), J i ) (hiso : (M Submodule.comap M.subtype N) ≃ₗ[A] DirectSum (Fin n) fun (i : Fin n) => A J i) (φ : V →ₗ[A] V) ( : ∀ (x : V), x M φ x N) (P : Ideal A) (x✝ : P.IsMaximal) :
    theorem snf_ideal_eq_prod {A : Type u_1} [CommRing A] [IsDomain A] [IsDedekindDomain A] (K : Type u_2) [Field K] [Algebra A K] [IsFractionRing A K] {V : Type u_3} [AddCommGroup V] [Module K V] [Module A V] [IsScalarTower A K V] [FiniteDimensional K V] (M N : Submodule A V) [Module.Finite A M] [Module.Finite A N] (hle : N M) {n : } (J : Fin nIdeal A) (hJ : ∀ (i : Fin n), J i ) (hiso : (M Submodule.comap M.subtype N) ≃ₗ[A] DirectSum (Fin n) fun (i : Fin n) => A J i) (φ : V →ₗ[A] V) ( : ∀ (x : V), x M φ x N) :
    Ideal.span {LinearMap.det φ} = i : Fin n, J i
    theorem local_det_eq_prod_at_prime {A : Type u_1} [CommRing A] [IsDomain A] [IsDedekindDomain A] (K : Type u_2) [Field K] [Algebra A K] [IsFractionRing A K] {V : Type u_3} [AddCommGroup V] [Module K V] [Module A V] [IsScalarTower A K V] [FiniteDimensional K V] (M N : Submodule A V) [Module.Finite A M] [Module.Finite A N] (hle : N M) {n : } (J : Fin nIdeal A) (hJ : ∀ (i : Fin n), J i ) (hiso : (M Submodule.comap M.subtype N) ≃ₗ[A] DirectSum (Fin n) fun (i : Fin n) => A J i) (φ : V →ₗ[A] V) ( : ∀ (x : V), x M φ x N) (P : Ideal A) (hP : P.IsMaximal) :
    theorem smith_normal_form_det_eq_prod_global {A : Type u_1} [CommRing A] [IsDomain A] [IsDedekindDomain A] (K : Type u_2) [Field K] [Algebra A K] [IsFractionRing A K] {V : Type u_3} [AddCommGroup V] [Module K V] [Module A V] [IsScalarTower A K V] [FiniteDimensional K V] (M N : Submodule A V) [Module.Finite A M] [Module.Finite A N] (hle : N M) {n : } (J : Fin nIdeal A) (hJ : ∀ (i : Fin n), J i ) (hiso : (M Submodule.comap M.subtype N) ≃ₗ[A] DirectSum (Fin n) fun (i : Fin n) => A J i) (φ : V →ₗ[A] V) ( : ∀ (x : V), x M φ x N) :
    Ideal.span {LinearMap.det φ} = i : Fin n, J i
    theorem smith_normal_form_local_at_prime {A : Type u_1} [CommRing A] [IsDomain A] [IsDedekindDomain A] (K : Type u_2) [Field K] [Algebra A K] [IsFractionRing A K] {V : Type u_3} [AddCommGroup V] [Module K V] [Module A V] [IsScalarTower A K V] [FiniteDimensional K V] (M N : Submodule A V) [Module.Finite A M] [Module.Finite A N] (hle : N M) {n : } (J : Fin nIdeal A) (hJ : ∀ (i : Fin n), J i ) (hiso : (M Submodule.comap M.subtype N) ≃ₗ[A] DirectSum (Fin n) fun (i : Fin n) => A J i) (φ : V →ₗ[A] V) ( : ∀ (x : V), x M φ x N) (P : Ideal A) (x✝ : P.IsMaximal) :
    theorem lattice_comparison_det_eq_prod {A : Type u_1} [CommRing A] [IsDomain A] [IsDedekindDomain A] (K : Type u_2) [Field K] [Algebra A K] [IsFractionRing A K] {V : Type u_3} [AddCommGroup V] [Module K V] [Module A V] [IsScalarTower A K V] [FiniteDimensional K V] (M N : Submodule A V) [Module.Finite A M] [Module.Finite A N] (hle : N M) {n : } (J : Fin nIdeal A) (hJ : ∀ (i : Fin n), J i ) (hiso : (M Submodule.comap M.subtype N) ≃ₗ[A] DirectSum (Fin n) fun (i : Fin n) => A J i) (φ : V →ₗ[A] V) ( : ∀ (x : V), x M φ x N) :
    Ideal.span {LinearMap.det φ} = i : Fin n, J i
    theorem smith_normal_form_det_eq_prod_count {A : Type u_1} [CommRing A] [IsDomain A] [IsDedekindDomain A] (K : Type u_2) [Field K] [Algebra A K] [IsFractionRing A K] {V : Type u_3} [AddCommGroup V] [Module K V] [Module A V] [IsScalarTower A K V] [FiniteDimensional K V] (M N : Submodule A V) [Module.Finite A M] [Module.Finite A N] :
    N M∀ {n : } (J : Fin nIdeal A), (∀ (i : Fin n), J i )∀ (x✝ : (M Submodule.comap M.subtype N) ≃ₗ[A] DirectSum (Fin n) fun (i : Fin n) => A J i) (φ : V →ₗ[A] V), (∀ (x : V), x M φ x N)∀ (v : IsDedekindDomain.HeightOneSpectrum A), FractionalIdeal.count K v (FractionalIdeal.spanSingleton (nonZeroDivisors A) ((algebraMap A K) (LinearMap.det φ))) = FractionalIdeal.count K v (∏ i : Fin n, J i)
    theorem product_property_from_local_analysis {A : Type u_1} [CommRing A] [IsDomain A] [IsDedekindDomain A] (K : Type u_2) [Field K] [Algebra A K] [IsFractionRing A K] {V : Type u_3} [AddCommGroup V] [Module K V] [Module A V] [IsScalarTower A K V] [FiniteDimensional K V] (M N : Submodule A V) [Module.Finite A M] [Module.Finite A N] (I : FractionalIdeal (nonZeroDivisors A) K) (hI : I 0) (hcount : ∀ (v : IsDedekindDomain.HeightOneSpectrum A) (φ : V →ₗ[A] V), (∀ (x : V), x M φ x N)FractionalIdeal.count K v I = FractionalIdeal.count K v (FractionalIdeal.spanSingleton (nonZeroDivisors A) ((algebraMap A K) (LinearMap.det φ)))) :
    N M∀ {n : } (J : Fin nIdeal A), (∀ (i : Fin n), J i )∀ (x✝ : (M Submodule.comap M.subtype N) ≃ₗ[A] DirectSum (Fin n) fun (i : Fin n) => A J i), I = (∏ i : Fin n, J i)
    theorem dedekind_domain_glue_local_to_global {A : Type u_1} [CommRing A] [IsDomain A] [IsDedekindDomain A] (K : Type u_2) [Field K] [Algebra A K] [IsFractionRing A K] {V : Type u_3} [AddCommGroup V] [Module K V] [Module A V] [IsScalarTower A K V] [FiniteDimensional K V] (M N : Submodule A V) [Module.Finite A M] [Module.Finite A N] :
    ∃ (I : FractionalIdeal (nonZeroDivisors A) K), I 0 (N M∀ {n : } (J : Fin nIdeal A), (∀ (i : Fin n), J i )∀ (x : (M Submodule.comap M.subtype N) ≃ₗ[A] DirectSum (Fin n) fun (i : Fin n) => A J i), I = (∏ i : Fin n, J i)) ∀ (v : IsDedekindDomain.HeightOneSpectrum A) (φ : V →ₗ[A] V), (∀ (x : V), x M φ x N)FractionalIdeal.count K v I = FractionalIdeal.count K v (FractionalIdeal.spanSingleton (nonZeroDivisors A) ((algebraMap A K) (LinearMap.det φ)))
    theorem moduleIndex_exists_with_product {A : Type u_1} [CommRing A] [IsDomain A] [IsDedekindDomain A] (K : Type u_2) [Field K] [Algebra A K] [IsFractionRing A K] {V : Type u_3} [AddCommGroup V] [Module K V] [Module A V] [IsScalarTower A K V] [FiniteDimensional K V] (M N : Submodule A V) [Module.Finite A M] [Module.Finite A N] :
    ∃ (I : FractionalIdeal (nonZeroDivisors A) K), I 0 (N M∀ {n : } (J : Fin nIdeal A), (∀ (i : Fin n), J i )∀ (x : (M Submodule.comap M.subtype N) ≃ₗ[A] DirectSum (Fin n) fun (i : Fin n) => A J i), I = (∏ i : Fin n, J i))
    noncomputable def moduleIndex {A : Type u_1} [CommRing A] [IsDomain A] [IsDedekindDomain A] (K : Type u_2) [Field K] [Algebra A K] [IsFractionRing A K] {V : Type u_3} [AddCommGroup V] [Module K V] [Module A V] [IsScalarTower A K V] [FiniteDimensional K V] (M N : Submodule A V) [Module.Finite A M] [Module.Finite A N] :
    Instances For
      theorem moduleIndex_ne_zero {A : Type u_1} [CommRing A] [IsDomain A] [IsDedekindDomain A] (K : Type u_2) [Field K] [Algebra A K] [IsFractionRing A K] {V : Type u_3} [AddCommGroup V] [Module K V] [Module A V] [IsScalarTower A K V] [FiniteDimensional K V] (M N : Submodule A V) [Module.Finite A M] [Module.Finite A N] :
      theorem moduleIndex_count_eq_local {A : Type u_1} [CommRing A] [IsDomain A] [IsDedekindDomain A] (K : Type u_2) [Field K] [Algebra A K] [IsFractionRing A K] {V : Type u_3} [AddCommGroup V] [Module K V] [Module A V] [IsScalarTower A K V] [FiniteDimensional K V] (M N : Submodule A V) [Module.Finite A M] [Module.Finite A N] (v : IsDedekindDomain.HeightOneSpectrum A) (φ : V →ₗ[A] V) ( : ∀ (x : V), x M φ x N) :
      theorem proposition_6_2 {A : Type u_1} [CommRing A] [IsDomain A] [IsDedekindDomain A] (K : Type u_2) [Field K] [Algebra A K] [IsFractionRing A K] {V : Type u_3} [AddCommGroup V] [Module K V] [Module A V] [IsScalarTower A K V] [FiniteDimensional K V] (M N : Submodule A V) [Module.Finite A M] [Module.Finite A N] :
      theorem moduleIndex_mul {A : Type u_1} [CommRing A] [IsDomain A] [IsDedekindDomain A] (K : Type u_2) [Field K] [Algebra A K] [IsFractionRing A K] {V : Type u_3} [AddCommGroup V] [Module K V] [Module A V] [IsScalarTower A K V] [FiniteDimensional K V] (M N P : Submodule A V) [Module.Finite A M] [Module.Finite A N] [Module.Finite A P] :
      theorem moduleIndex_self {A : Type u_1} [CommRing A] [IsDomain A] [IsDedekindDomain A] (K : Type u_2) [Field K] [Algebra A K] [IsFractionRing A K] {V : Type u_3} [AddCommGroup V] [Module K V] [Module A V] [IsScalarTower A K V] [FiniteDimensional K V] (M : Submodule A V) [Module.Finite A M] :
      moduleIndex K M M = 1
      theorem moduleIndex_swap {A : Type u_1} [CommRing A] [IsDomain A] [IsDedekindDomain A] (K : Type u_2) [Field K] [Algebra A K] [IsFractionRing A K] {V : Type u_3} [AddCommGroup V] [Module K V] [Module A V] [IsScalarTower A K V] [FiniteDimensional K V] (M N : Submodule A V) [Module.Finite A M] [Module.Finite A N] :
      theorem moduleIndex_eq_prod {A : Type u_1} [CommRing A] [IsDomain A] [IsDedekindDomain A] {K : Type u_2} [Field K] [Algebra A K] [IsFractionRing A K] {V : Type u_3} [AddCommGroup V] [Module K V] [Module A V] [IsScalarTower A K V] [FiniteDimensional K V] (M N : Submodule A V) [Module.Finite A M] [Module.Finite A N] (hNM : N M) {n : } (I : Fin nIdeal A) (hI : ∀ (i : Fin n), I i ) (hiso : (M Submodule.comap M.subtype N) ≃ₗ[A] DirectSum (Fin n) fun (i : Fin n) => A I i) :
      moduleIndex K M N = (∏ i : Fin n, I i)
      noncomputable def concreteModuleIndex {R : Type u_1} [Ring R] {M : Type u_2} [AddCommGroup M] [Module R M] (N : Submodule R M) :
      Instances For
        @[simp]
        theorem concreteModuleIndex_top {R : Type u_1} [Ring R] {M : Type u_2} [AddCommGroup M] [Module R M] :
        theorem concreteModuleIndex_mul_tower {R : Type u_1} [Ring R] {M : Type u_2} [AddCommGroup M] [Module R M] (N P : Submodule R M) (hPN : P N) :
        Instances For
          noncomputable def fractionalIdealNorm {A : Type u_3} [CommRing A] [IsDomain A] [IsDedekindDomain A] (K : Type u_4) [Field K] [Algebra A K] [IsFractionRing A K] {L : Type u_5} [Field L] [Algebra K L] [Algebra A L] [IsScalarTower A K L] [FiniteDimensional K L] {B : Type u_6} [CommRing B] [IsDomain B] [IsDedekindDomain B] [Algebra A B] [Algebra B L] [IsScalarTower A B L] [Module.Finite A L] (𝔍 : FractionalIdeal (nonZeroDivisors B) L) :
          Instances For
            theorem fractionalIdealNorm_coeIdeal {A : Type u_3} [CommRing A] [IsDomain A] [IsDedekindDomain A] [IsIntegrallyClosed A] (K : Type u_4) [Field K] [Algebra A K] [IsFractionRing A K] {L : Type u_5} [Field L] [Algebra K L] [Algebra A L] [IsScalarTower A K L] [FiniteDimensional K L] {B : Type u_6} [CommRing B] [IsDomain B] [IsDedekindDomain B] [IsIntegrallyClosed B] [Algebra A B] [Module.Finite A B] [Module.IsTorsionFree A B] [Algebra B L] [IsScalarTower A B L] [IsFractionRing B L] [Module.Finite A L] (I : Ideal B) (hI : I ) :
            theorem fractionalIdeal_multiplicative_comparison_map {A : Type u_1} [CommRing A] [IsDomain A] [IsDedekindDomain A] [IsIntegrallyClosed A] (K : Type u_2) [Field K] [Algebra A K] [IsFractionRing A K] {L : Type u_3} [Field L] [Algebra K L] [Algebra A L] [IsScalarTower A K L] [FiniteDimensional K L] {B : Type u_4} [CommRing B] [IsDomain B] [IsDedekindDomain B] [IsIntegrallyClosed B] [Algebra A B] [Module.Finite A B] [Module.IsTorsionFree A B] [Algebra B L] [IsScalarTower A B L] [IsFractionRing B L] [Module.Finite A L] (𝔍₁ 𝔍₂ : FractionalIdeal (nonZeroDivisors B) L) :
            ∃ (φ : L →ₗ[A] L), (∀ (x : L), x φ x Submodule.restrictScalars A 𝔍₂) (∀ (x : L), x Submodule.restrictScalars A 𝔍₁ φ x Submodule.restrictScalars A ↑(𝔍₁ * 𝔍₂)) (algebraMap A K) (LinearMap.det φ) 0
            theorem fractionalIdealNorm_mul {A : Type u_3} [CommRing A] [IsDomain A] [IsDedekindDomain A] [IsIntegrallyClosed A] (K : Type u_4) [Field K] [Algebra A K] [IsFractionRing A K] {L : Type u_5} [Field L] [Algebra K L] [Algebra A L] [IsScalarTower A K L] [FiniteDimensional K L] {B : Type u_6} [CommRing B] [IsDomain B] [IsDedekindDomain B] [IsIntegrallyClosed B] [Algebra A B] [Module.Finite A B] [Module.IsTorsionFree A B] [Algebra B L] [IsScalarTower A B L] [IsFractionRing B L] [Module.Finite A L] (𝔍₁ 𝔍₂ : FractionalIdeal (nonZeroDivisors B) L) :
            fractionalIdealNorm K (𝔍₁ * 𝔍₂) = fractionalIdealNorm K 𝔍₁ * fractionalIdealNorm K 𝔍₂