Module

MaximalAdicCompletionModuleHomDescent.lean

Nyll.EtaleFundamentalGroups.Purity.Local.MaximalAdicCompletionModuleHomDescent
2 declarations indexed from sourceView source ↗

Hom descent along maximal-adic completion

This specializes faithfully flat Hom descent to the completion map of a Noetherian local ring. It is the full-faithfulness input for module formal gluing at the closed point.

Declarations

EtaleFundamentalGroups.maximalAdicCompletionModuleHomDescentEquiv

Linear maps over a Noetherian local ring are exactly the compatible maps between their maximal-adic completions.

Source context 5 commands

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

noncomputable section
namespace EtaleFundamentalGroups
open IsLocalRing
open scoped TensorProduct
universe u v w
def maximalAdicCompletionModuleHomDescentEquiv
    (R : Type u) [CommRing R] [IsLocalRing R] [IsNoetherianRing R]
    (M : Type v) [AddCommGroup M] [Module R M]
    (N : Type w) [AddCommGroup N] [Module R N] :
    (M →ₗ[R] N) ≃ₗ[R]
      tensorProductDescentCompatibleLinearMaps
        (R := R) (S := AdicCompletion (maximalIdeal R) R)
        (M := M) (N := N)
EtaleFundamentalGroups.maximalAdicCompletionModuleHomDescentEquiv_apply
Source context 5 commands

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

noncomputable section
namespace EtaleFundamentalGroups
open IsLocalRing
open scoped TensorProduct
universe u v w
theorem maximalAdicCompletionModuleHomDescentEquiv_apply
    (R : Type u) [CommRing R] [IsLocalRing R] [IsNoetherianRing R]
    (M : Type v) [AddCommGroup M] [Module R M]
    (N : Type w) [AddCommGroup N] [Module R N]
    (f : M →ₗ[R] N) :
    ((maximalAdicCompletionModuleHomDescentEquiv R M N) f :
        (AdicCompletion (maximalIdeal R) R ⊗[R] M) →ₗ[
          AdicCompletion (maximalIdeal R) R]
        (AdicCompletion (maximalIdeal R) R ⊗[R] N)) =
      f.baseChange (AdicCompletion (maximalIdeal R) R)