Documentation

TauCeti.RingTheory.Huber.Padic.Field

The p-adic numbers are a Tate ring #

ℚ_[p] is a Tate ring, with (ℤ_[p], (p)) as a pair of definition and p as a pseudouniformiser. Together with TauCeti.Huber.PadicInt.not_isTateRing this is the roadmap's Layer-0 example separating the two notions: the same ideal of definition makes ℤ_[p] Huber but not Tate, and ℚ_[p] Tate, the difference being that p becomes a unit in ℚ_[p].

No Ideal.comap is needed here. Mathlib's ℤ_[p] is the subtype {x : ℚ_[p] // ‖x‖ ≤ 1} and PadicInt.subring p is a separate declaration cutting out the same set, so ℤ_[p] and ↥(PadicInt.subring p) are definitionally equal. That is why idealOfDefinition := maximalIdeal ℤ_[p] typechecks against the expected Ideal ↥(PadicInt.subring p) below.

Main definitions #

Main results #

References #

p is a pseudouniformiser of ℚ_[p]: it is a unit, and its powers have norm p⁻ⁿ → 0.

The pair of definition (ℤ_[p], (p)) exhibiting ℚ_[p] as a Huber ring.

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

    The ring of definition of pairOfDefinition is ℤ_[p].

    The companion projection, the ideal of definition, is characterised by TauCeti.Huber.Padic.mem_pairOfDefinition_idealOfDefinition in membership form rather than by an equation; that lemma's docstring gives the reason.

    @[simp]

    The ideal of definition of pairOfDefinition is (p), in membership form: an element belongs exactly when its norm is less than one.

    The membership form is used because the equation pairOfDefinition.idealOfDefinition = maximalIdeal ℤ_[p] does not elaborate. The two sides are definitionally equal — marking pairOfDefinition @[expose] makes that very statement typecheck and closes it by rfl — but at the transparency the elaborator uses it will not unfold a definition whose body is unexposed, so checking Ideal ℤ_[p] against Ideal ↥pairOfDefinition.ringOfDefinition fails with the note that pairOfDefinition "was not unfolded because their definition is not exposed". This is a limit on elaboration, not a statement that the projection cannot reduce. Exposing the body is not worth it here, since it would force the proof-only isOpen_padicIntSubring public too; membership sidesteps the issue entirely, as x already inhabits the dependent type.

    ℚ_[p] is a Huber ring, with (ℤ_[p], (p)) as a pair of definition.

    ℚ_[p] is a Tate ring, with p as a pseudouniformiser.