Documentation

TauCeti.NumberTheory.Padics.Module

Topological ℤ_[p]-modules and their additive groups #

A continuous additive map f : E →+ F between topological ℤ_[p]-modules with F Hausdorff is automatically ℤ_[p]-linear: for fixed x, the continuous maps c ↦ f (c • x) and c ↦ c • f x agree on the dense subset ℕ of ℤ_[p], and two continuous maps into a Hausdorff space that agree on a dense set are equal. So the ℤ_[p]-module structure of a Hausdorff topological ℤ_[p]-module is determined by its topological group structure, and continuous additive maps and isomorphisms between such modules can be treated as continuous ℤ_[p]-linear ones. In the automatic-linearity and rank results, the codomain F is assumed Hausdorff.

This file adapts Mathlib/Topology/Instances/RealVectorSpace.lean (Yury Kudryashov) from ℝ to ℤ_[p]: TauCeti.map_padicInt_smul, AddMonoidHom.toPadicIntLinearMap, and AddEquiv.toPadicIntLinearEquiv are the ℤ_[p] counterparts of map_real_smul, AddMonoidHom.toRealLinearMap, and AddEquiv.toRealLinearEquiv.

In particular the rank of a finite free ℤ_[p]-module is a topological invariant: a continuous additive isomorphism between two such modules preserves Module.finrank, and ℤ_[p] ^ r and ℤ_[p] ^ r' are topologically isomorphic groups only when r = r'.

Main results #

theorem TauCeti.map_padicInt_smul {E : Type u_1} [AddCommMonoid E] [TopologicalSpace E] {F : Type u_2} [AddCommMonoid F] [TopologicalSpace F] [T2Space F] {p : ℕ} [Fact (Nat.Prime p)] [Module ℤ_[p] E] [ContinuousSMul ℤ_[p] E] [Module ℤ_[p] F] [ContinuousSMul ℤ_[p] F] {G : Type u_3} [FunLike G E F] [AddMonoidHomClass G E F] (f : G) (hf : Continuous ⇑f) (c : ℤ_[p]) (x : E) :
f (c • x) = c • f x

A continuous additive map between two topological ℤ_[p]-modules, the codomain being Hausdorff, is ℤ_[p]-linear.

A continuous additive isomorphism between topological ℤ_[p]-modules, the codomain being Hausdorff, preserves the ℤ_[p]-rank: the rank of a finite free ℤ_[p]-module is a topological invariant.

The rank of ℤ_[p] ^ r is a topological invariant: if the additive groups ℤ_[p] ^ r and ℤ_[p] ^ r', written multiplicatively, are topologically isomorphic, then r = r'.

theorem ClosedAddSubgroup.padicInt_smul_mem (p : ℕ) [Fact (Nat.Prime p)] {M : Type u_3} [AddCommGroup M] [TopologicalSpace M] [Module ℤ_[p] M] [ContinuousSMul ℤ_[p] M] (H : ClosedAddSubgroup M) {x : M} (hx : x ∈ H) (c : ℤ_[p]) :
c • x ∈ H

A closed additive subgroup of a topological ℤ_[p]-module is stable under ℤ_[p]-scalars. No separation or compactness hypothesis is needed.

The closed ℤ_[p]-submodule with the same carrier as a closed additive subgroup.

Equations
Instances For

    Closed additive subgroups and closed ℤ_[p]-submodules of a topological ℤ_[p]-module are the same ordered collection of subsets.

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For

      Reinterpret a continuous additive homomorphism between two topological ℤ_[p]-modules, the codomain being Hausdorff, as a continuous ℤ_[p]-linear map. The prime is explicit because the map does not determine it.

      Equations
      Instances For

        Reinterpret a continuous additive equivalence between two topological ℤ_[p]-modules, the codomain being Hausdorff, as a continuous ℤ_[p]-linear equivalence. The prime is explicit because the equivalence does not determine it.

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          @[simp]
          theorem AddEquiv.coe_toPadicIntLinearEquiv {E : Type u_1} [AddCommMonoid E] [TopologicalSpace E] {F : Type u_2} [AddCommMonoid F] [TopologicalSpace F] [T2Space F] (p : ℕ) [Fact (Nat.Prime p)] [Module ℤ_[p] E] [ContinuousSMul ℤ_[p] E] [Module ℤ_[p] F] [ContinuousSMul ℤ_[p] F] (e : E ≃+ F) (h₁ : Continuous ⇑e) (h₂ : Continuous ⇑e.symm) :
          ⇑(toPadicIntLinearEquiv p e h₁ h₂) = ⇑e
          @[simp]
          theorem AddEquiv.coe_toPadicIntLinearEquiv_symm {E : Type u_1} [AddCommMonoid E] [TopologicalSpace E] {F : Type u_2} [AddCommMonoid F] [TopologicalSpace F] [T2Space F] (p : ℕ) [Fact (Nat.Prime p)] [Module ℤ_[p] E] [ContinuousSMul ℤ_[p] E] [Module ℤ_[p] F] [ContinuousSMul ℤ_[p] F] (e : E ≃+ F) (h₁ : Continuous ⇑e) (h₂ : Continuous ⇑e.symm) :
          ⇑(toPadicIntLinearEquiv p e h₁ h₂).symm = ⇑e.symm

          The torsion submodule of a ℤ_[p]-module is its torsion subgroup. This is the ℤ_[p] analogue of Submodule.torsion_int.

          @[simp]

          Over ℤ_p, the p-power torsion is the whole torsion submodule: a nonzero p-adic integer is a unit times a power of p.

          Modulo its p-power torsion, a module over ℤ_p is torsion-free: the quotient is the quotient by the whole torsion submodule.

          def LinearMap.padicIntCodRestrict {p : ℕ} [Fact (Nat.Prime p)] {X : Type u_3} [AddCommGroup X] [Module ℤ_[p] X] (Φ : X →ₗ[ℤ_[p]] ℚ_[p]) (h : ∀ (x : X), Φ x ∈ 1) :

          A ℚ_[p]-valued ℤ_[p]-linear map whose values lie in ℤ_[p], as a ℤ_[p]-valued functional.

          Equations
          Instances For
            @[simp]
            theorem LinearMap.coe_padicIntCodRestrict_apply {p : ℕ} [Fact (Nat.Prime p)] {X : Type u_3} [AddCommGroup X] [Module ℤ_[p] X] (Φ : X →ₗ[ℤ_[p]] ℚ_[p]) (h : ∀ (x : X), Φ x ∈ 1) (x : X) :
            ↑((Φ.padicIntCodRestrict h) x) = Φ x