Documentation

Mathlib.Topology.Algebra.Valued.WithVal

Ring topologised by a valuation #

For a given valuation v : Valuation R Γ₀ on a ring R taking values in Γ₀, this file defines the type synonym WithVal v of R. By assigning a Valued (WithVal v) Γ₀ instance, WithVal v represents the ring R equipped with the topology coming from v. The type synonym WithVal v is in isomorphism to R as rings via WithVal.equiv v. This isomorphism should be used to explicitly map terms of WithVal v to terms of R.

The WithVal type synonym is used to define the completion of R with respect to v in Valuation.Completion. An example application of this is IsDedekindDomain.HeightOneSpectrum.adicCompletion, which is the completion of the field of fractions of a Dedekind domain with respect to a height-one prime ideal of the domain.

Main definitions #

def WithVal {R : Type u_1} {Γ₀ : Type u_2} [LinearOrderedCommGroupWithZero Γ₀] [Ring R] :
Valuation R Γ₀Type u_1

Type synonym for a ring equipped with the topology coming from a valuation.

Equations
    Instances For
      instance WithVal.instRing {R : Type u_1} {Γ₀ : Type u_2} [LinearOrderedCommGroupWithZero Γ₀] [Ring R] (v : Valuation R Γ₀) :
      Equations
        instance WithVal.instCommRing {R : Type u_1} {Γ₀ : Type u_2} [LinearOrderedCommGroupWithZero Γ₀] [CommRing R] (v : Valuation R Γ₀) :
        Equations
          instance WithVal.instField {R : Type u_1} {Γ₀ : Type u_2} [LinearOrderedCommGroupWithZero Γ₀] [Field R] (v : Valuation R Γ₀) :
          Equations
            instance WithVal.instInhabited {R : Type u_1} {Γ₀ : Type u_2} [LinearOrderedCommGroupWithZero Γ₀] [Ring R] (v : Valuation R Γ₀) :
            Equations
              instance WithVal.instPreorder {R : Type u_1} {Γ₀ : Type u_2} [LinearOrderedCommGroupWithZero Γ₀] [Ring R] (v : Valuation R Γ₀) :
              Equations
                instance WithVal.instAlgebra {R : Type u_1} {Γ₀ : Type u_2} [LinearOrderedCommGroupWithZero Γ₀] {S : Type u_4} [CommSemiring S] [CommRing R] [Algebra S R] (v : Valuation R Γ₀) :
                Equations
                  instance WithVal.instIsFractionRing {R : Type u_1} {Γ₀ : Type u_2} [LinearOrderedCommGroupWithZero Γ₀] {S : Type u_4} [CommRing S] [CommRing R] [Algebra S R] [IsFractionRing S R] (v : Valuation R Γ₀) :
                  instance WithVal.instSMul {R : Type u_1} {Γ₀ : Type u_2} [LinearOrderedCommGroupWithZero Γ₀] {S : Type u_4} [Ring R] [SMul S R] (v : Valuation R Γ₀) :
                  Equations
                    instance WithVal.instIsScalarTower {R : Type u_1} {Γ₀ : Type u_2} [LinearOrderedCommGroupWithZero Γ₀] {P : Type u_3} {S : Type u_4} [Ring R] [SMul P S] [SMul S R] [SMul P R] [IsScalarTower P S R] (v : Valuation R Γ₀) :
                    instance WithVal.instAlgebra_1 {R : Type u_1} {Γ₀ : Type u_2} [LinearOrderedCommGroupWithZero Γ₀] [CommRing R] (v : Valuation R Γ₀) {S : Type u_5} [Ring S] [Algebra R S] :
                    Equations
                      instance WithVal.instAlgebra_2 {R : Type u_1} {Γ₀ : Type u_2} [LinearOrderedCommGroupWithZero Γ₀] [CommRing R] {S : Type u_5} [Ring S] [Algebra R S] (w : Valuation S Γ₀) :
                      Equations
                        instance WithVal.instIsScalarTower_1 {R : Type u_1} {Γ₀ : Type u_2} [LinearOrderedCommGroupWithZero Γ₀] [CommRing R] (v : Valuation R Γ₀) {P : Type u_5} {S : Type u_6} [Ring S] [Semiring P] [Module P R] [Module P S] [Algebra R S] [IsScalarTower P R S] :
                        def WithVal.equiv {R : Type u_1} {Γ₀ : Type u_2} [LinearOrderedCommGroupWithZero Γ₀] [Ring R] (v : Valuation R Γ₀) :

                        Canonical ring equivalence between WithVal v and R.

                        Equations
                          Instances For
                            def WithVal.valuation {R : Type u_1} {Γ₀ : Type u_2} [LinearOrderedCommGroupWithZero Γ₀] [Ring R] (v : Valuation R Γ₀) :
                            Valuation (WithVal v) Γ₀

                            Canonical valuation on the WithVal v type synonym.

                            Equations
                              Instances For
                                @[simp]
                                theorem WithVal.valuation_equiv_symm {R : Type u_1} {Γ₀ : Type u_2} [LinearOrderedCommGroupWithZero Γ₀] [Ring R] (v : Valuation R Γ₀) (x : R) :
                                (valuation v) ((equiv v).symm x) = v x
                                def WithVal.equivWithVal {R : Type u_1} {Γ₀ : Type u_2} [LinearOrderedCommGroupWithZero Γ₀] [Ring R] {Γ'₀ : Type u_3} [LinearOrderedCommGroupWithZero Γ'₀] (v : Valuation R Γ₀) (w : Valuation R Γ'₀) :

                                Canonical ring equivalence between WithVal v and WithVal w.

                                Equations
                                  Instances For
                                    theorem WithVal.equivWithVal_symm {R : Type u_1} {Γ₀ : Type u_2} [LinearOrderedCommGroupWithZero Γ₀] [Ring R] {Γ'₀ : Type u_3} [LinearOrderedCommGroupWithZero Γ'₀] (v : Valuation R Γ₀) (w : Valuation R Γ'₀) :
                                    @[simp]
                                    theorem WithVal.equivWithVal_apply {R : Type u_1} {Γ₀ : Type u_2} [LinearOrderedCommGroupWithZero Γ₀] [Ring R] {Γ'₀ : Type u_3} [LinearOrderedCommGroupWithZero Γ'₀] (v : Valuation R Γ₀) (w : Valuation R Γ'₀) {x : WithVal v} :
                                    (equivWithVal v w) x = (equiv w).symm ((equiv v) x)
                                    @[simp]
                                    theorem WithVal.equivWithVal_symm_apply {R : Type u_1} {Γ₀ : Type u_2} [LinearOrderedCommGroupWithZero Γ₀] [Ring R] {Γ'₀ : Type u_3} [LinearOrderedCommGroupWithZero Γ'₀] (v : Valuation R Γ₀) (w : Valuation R Γ'₀) {x : WithVal w} :
                                    (equivWithVal v w).symm x = (equiv v).symm ((equiv w) x)
                                    instance WithVal.instValued {Γ₀ : Type u_2} [LinearOrderedCommGroupWithZero Γ₀] {R : Type u_4} [Ring R] (v : Valuation R Γ₀) :
                                    Valued (WithVal v) Γ₀
                                    Equations
                                      theorem WithVal.apply_equiv {R : Type u_1} {Γ₀ : Type u_2} [LinearOrderedCommGroupWithZero Γ₀] [Ring R] (v : Valuation R Γ₀) (r : WithVal v) :
                                      v ((equiv v) r) = Valued.v r
                                      @[simp]
                                      theorem WithVal.apply_symm_equiv {R : Type u_1} {Γ₀ : Type u_2} [LinearOrderedCommGroupWithZero Γ₀] [Ring R] (v : Valuation R Γ₀) (r : R) :
                                      Valued.v ((equiv v).symm r) = v r
                                      theorem WithVal.le_def {R : Type u_1} {Γ₀ : Type u_2} [LinearOrderedCommGroupWithZero Γ₀] [Ring R] {v : Valuation R Γ₀} {a b : WithVal v} :
                                      a b v ((equiv v) a) v ((equiv v) b)
                                      theorem WithVal.lt_def {R : Type u_1} {Γ₀ : Type u_2} [LinearOrderedCommGroupWithZero Γ₀] [Ring R] {v : Valuation R Γ₀} {a b : WithVal v} :
                                      a < b v ((equiv v) a) < v ((equiv v) b)
                                      instance WithVal.instValuativeRel {R : Type u_1} {Γ₀ : Type u_2} [LinearOrderedCommGroupWithZero Γ₀] [CommRing R] (v : Valuation R Γ₀) :
                                      Equations

                                        The completion of a field with respect to a valuation.

                                        @[reducible, inline]
                                        abbrev Valuation.Completion {Γ₀ : Type u_2} [LinearOrderedCommGroupWithZero Γ₀] {R : Type u_3} [Ring R] (v : Valuation R Γ₀) :
                                        Type u_3

                                        The completion of a field with respect to a valuation.

                                        Equations
                                          Instances For
                                            instance Valuation.instCoeCompletion {Γ₀ : Type u_2} [LinearOrderedCommGroupWithZero Γ₀] {R : Type u_3} [Ring R] (v : Valuation R Γ₀) :
                                            Equations

                                              The uniform isomorphism between WithVal v and WithVal w when v and w are equivalent.

                                              def Valuation.IsEquiv.orderRingIso {R : Type u_4} {Γ₀ : Type u_5} {Γ₀' : Type u_6} [Ring R] [LinearOrderedCommGroupWithZero Γ₀] [LinearOrderedCommGroupWithZero Γ₀'] {v : Valuation R Γ₀} {w : Valuation R Γ₀'} (h : v.IsEquiv w) :

                                              If two valuations v and w are equivalent then WithVal v is order-isomorphic to WithVal w.

                                              Equations
                                                Instances For
                                                  @[simp]
                                                  theorem Valuation.IsEquiv.orderRingIso_apply {R : Type u_4} {Γ₀ : Type u_5} {Γ₀' : Type u_6} [Ring R] [LinearOrderedCommGroupWithZero Γ₀] [LinearOrderedCommGroupWithZero Γ₀'] {v : Valuation R Γ₀} {w : Valuation R Γ₀'} (h : v.IsEquiv w) (x : WithVal v) :
                                                  @[simp]
                                                  theorem Valuation.IsEquiv.orderRingIso_symm_apply {R : Type u_4} {Γ₀ : Type u_5} {Γ₀' : Type u_6} [Ring R] [LinearOrderedCommGroupWithZero Γ₀] [LinearOrderedCommGroupWithZero Γ₀'] {v : Valuation R Γ₀} {w : Valuation R Γ₀'} (h : v.IsEquiv w) (x : WithVal w) :
                                                  theorem Valuation.IsEquiv.uniformContinuous_equivWithVal {R : Type u_4} {Γ₀ : Type u_5} {Γ₀' : Type u_6} [Ring R] [LinearOrderedCommGroupWithZero Γ₀] [LinearOrderedCommGroupWithZero Γ₀'] {v : Valuation R Γ₀} {w : Valuation R Γ₀'} (hw : ∀ (γ : Γ₀'ˣ), ∃ (r : R) (s : R), 0 < w r 0 < w s w r / w s = γ) (h : v.IsEquiv w) :
                                                  def Valuation.IsEquiv.uniformEquiv {R : Type u_4} {Γ₀ : Type u_5} {Γ₀' : Type u_6} [Ring R] [LinearOrderedCommGroupWithZero Γ₀] [LinearOrderedCommGroupWithZero Γ₀'] {v : Valuation R Γ₀} {w : Valuation R Γ₀'} (hv : ∀ (γ : Γ₀ˣ), ∃ (r : R) (s : R), 0 < v r 0 < v s v r / v s = γ) (hw : ∀ (γ : Γ₀'ˣ), ∃ (r : R) (s : R), 0 < w r 0 < w s w r / w s = γ) (h : v.IsEquiv w) :

                                                  If two valuations v and w are equivalent then WithVal v and WithVal w are isomorphic as uniform spaces.

                                                  Equations
                                                    Instances For
                                                      theorem Valuation.exists_div_eq_of_surjective {K : Type u_7} [Field K] {Γ₀ : Type u_8} [LinearOrderedCommGroupWithZero Γ₀] {v : Valuation K Γ₀} (hv : Function.Surjective v) (γ : Γ₀ˣ) :
                                                      ∃ (r : K) (s : K), 0 < v r 0 < v s v r / v s = γ

                                                      The ring equivalence between 𝓞 (WithVal v) and an integral closure of in K.

                                                      Equations
                                                        Instances For
                                                          @[simp]
                                                          theorem NumberField.RingOfIntegers.withValEquiv_symm_apply {Γ₀ : Type u_2} [LinearOrderedCommGroupWithZero Γ₀] {K : Type u_3} [Field K] (v : Valuation K Γ₀) (R : Type u_4) [CommRing R] [Algebra R K] [IsIntegralClosure R K] (a✝ : R) :
                                                          @[simp]
                                                          theorem NumberField.RingOfIntegers.withValEquiv_apply {Γ₀ : Type u_2} [LinearOrderedCommGroupWithZero Γ₀] {K : Type u_3} [Field K] (v : Valuation K Γ₀) (R : Type u_4) [CommRing R] [Algebra R K] [IsIntegralClosure R K] (a✝ : RingOfIntegers (WithVal v)) :

                                                          The ring of integers of WithVal v, when v is a valuation on , is equivalent to .

                                                          Equations
                                                            Instances For