Documentation

Atlas.Buildings.code.Valuation.LatticesValuations

structure DVRContext :
Type (max (u_1 + 1) (u_2 + 1))

Discrete valuation context: a bundle of data describing a discrete valuation field. It consists of a field $k$, an integral domain $\mathfrak{o}$ (the ring of integers), an injective ring embedding $\mathfrak{o} \hookrightarrow k$, a chosen uniformizer $\pi \in \mathfrak{o}$ generating the maximal ideal, and a positive integer $n$ specifying the rank of the ambient module $k^n$ used for lattices and the building of $GL_n$.

Instances For

    The maximal ideal of $\mathfrak{o}$: the principal ideal $(\pi) \subseteq \mathfrak{o}$ generated by the chosen uniformizer $\pi$. In a DVR this is the unique maximal ideal.

    Instances For
      def DVRContext.oscal (C : DVRContext) (r : C.๐”ฌ) (v : Fin C.n โ†’ C.k) :
      Fin C.n โ†’ C.k

      $\mathfrak{o}$-scalar action on $k^n$: pointwise multiplication by the image $\iota(r) \in k$ of $r \in \mathfrak{o}$. Used to express the $\mathfrak{o}$-module structure of $k^n$ via the embedding $\iota = $embed.

      Instances For
        def DVRContext.isInO (C : DVRContext) (x : C.k) :

        Predicate "$x \in \mathfrak{o}$": an element $x \in k$ lies in the valuation ring iff it is the image of some $r \in \mathfrak{o}$ under the embedding $\iota$.

        Instances For

          Predicate "$x \in \mathfrak{m}$": an element $x \in k$ lies in the maximal ideal iff it is the image of some $r \in (\pi) \subseteq \mathfrak{o}$.

          Instances For

            Predicate "$x \in \mathfrak{o}^\times$": an element $x \in k$ is a unit of the valuation ring iff it is the image of a unit $r \in \mathfrak{o}^\times$.

            Instances For
              theorem DVRContext.isUnitInO_isInO (C : DVRContext) {x : C.k} (h : C.isUnitInO x) :
              C.isInO x

              Units lie in $\mathfrak{o}$: every unit in $\mathfrak{o}$ is in particular an element of $\mathfrak{o}$.

              theorem DVRContext.isInMaxIdeal_isInO (C : DVRContext) {x : C.k} (h : C.isInMaxIdeal x) :
              C.isInO x

              The maximal ideal lies in $\mathfrak{o}$: every element of the maximal ideal is in particular an element of $\mathfrak{o}$.

              noncomputable def DVRContext.newtonSeq (C : DVRContext) (f : Polynomial C.๐”ฌ) (xโ‚€ : C.๐”ฌ) :

              Newton iteration sequence: starting from $x_0$, iteratively define $x_{n+1} = x_n - f(x_n) / f'(x_n)$ using Ring.inverse for the division. This is the underlying sequence used in Hensel's lemma to produce a root of $f$.

              Instances For

                Hensel's lemma: in an adically complete local ring $\mathfrak{o}$, if $a_0 \in \mathfrak{o}$ satisfies $f(a_0) \in \mathfrak{m}$ and $f'(a_0) \notin \mathfrak{m}$, then there exists a root $a \in \mathfrak{o}$ of $f$ with $a \equiv a_0 \pmod{\mathfrak{m}}$. Moreover the Newton iterates $c_n$ satisfy $f(c_n) \in \mathfrak{m}^{n+1}$ and $f'(c_n)$ is a unit for all $n$.

                structure DVRContext.OLattice (C : DVRContext) :
                Type u_1

                An $\mathfrak{o}$-lattice in $V = k^n$: a subset $\Lambda \subseteq k^n$ that is an $\mathfrak{o}$-submodule (contains zero, is closed under addition and under the action of $\mathfrak{o}$), spans $V$ as a $k$-vector space, and is closed under $\mathfrak{o}$-linear combinations of $n$ vectors with $\mathfrak{o}$-coefficients (used as a substitute for finite generation over $\mathfrak{o}$).

                Instances For
                  def DVRContext.OLattice.scale (C : DVRContext) (ฮ› : C.OLattice) (ฮฑ : C.k) :
                  Set (Fin C.n โ†’ C.k)

                  Scaling a lattice by a scalar: $\alpha \cdot \Lambda := \{\alpha \cdot w : w \in \Lambda\}$, used to define the homothety relation between lattices.

                  Instances For
                    def DVRContext.OLattice.IsHomothetic (C : DVRContext) (ฮ›โ‚ ฮ›โ‚‚ : C.OLattice) :

                    Homothety relation on lattices: two lattices $\Lambda_1, \Lambda_2$ are homothetic iff $\Lambda_1 = \alpha \cdot \Lambda_2$ for some nonzero scalar $\alpha \in k^\times$. The quotient by this relation yields the vertices of the Bruhat--Tits building.

                    Instances For

                      Vertex set of the Bruhat--Tits building: the quotient of the set of $\mathfrak{o}$-lattices in $V = k^n$ by the homothety equivalence relation.

                      Instances For
                        structure DVRContext.PrimitiveLattice (C : DVRContext) extends C.OLattice :
                        Type u_1

                        Primitive lattice with a bilinear form: an $\mathfrak{o}$-lattice $\Lambda$ equipped with a bilinear form form $: V \times V \to k$ such that the form is integral on $\Lambda$ (takes values in $\mathfrak{o}$) and is nondegenerate modulo $\pi$: any element $v \in \Lambda$ that is not divisible by the uniformizer pairs to a unit against some element of $\Lambda$.

                        Instances For
                          @[reducible, inline]

                          Abbreviation for $GL_n(k)$: the general linear group of invertible $n \times n$ matrices over the field $k$.

                          Instances For

                            Upper unipotent subgroup of $GL_n(k)$: matrices with $1$'s on the diagonal and zeros strictly below the diagonal.

                            Instances For

                              Lower unipotent subgroup of $GL_n(k)$: matrices with $1$'s on the diagonal and zeros strictly above the diagonal.

                              Instances For

                                Diagonal subgroup of $GL_n(k)$: invertible matrices whose off-diagonal entries vanish.

                                Instances For

                                  Iwahori subgroup of $GL_n(k)$: invertible matrices whose diagonal entries are units in $\mathfrak{o}$, whose strictly-upper-triangular entries lie in $\mathfrak{o}$, and whose strictly-lower-triangular entries lie in the maximal ideal $\mathfrak{m}$.

                                  Instances For

                                    Maximal compact subgroup $GL_n(\mathfrak{o})$: invertible matrices over $\mathfrak{o}$ whose inverse also has entries in $\mathfrak{o}$. Equivalently, $GL_n(\mathfrak{o})$ is the group of $\mathfrak{o}$-linear automorphisms of the standard lattice.

                                    Instances For

                                      DVR closure axioms: a packaging of the algebraic closure properties of $\mathfrak{o} \subseteq k$ that are used throughout the development: $0, 1 \in \mathfrak{o}$, closure of $\mathfrak{o}$ under negation, addition, and multiplication, integers are in $\mathfrak{o}$, the inverse of a unit in $\mathfrak{o}$ is in $\mathfrak{o}$, and the determinant of any matrix satisfying the Iwahori conditions is a unit in $\mathfrak{o}$.

                                      Instances
                                        theorem DVRContext.isInO_sum (C : DVRContext) [C.DVRClosure] {ฮน : Type u_1} {s : Finset ฮน} {f : ฮน โ†’ C.k} (hf : โˆ€ i โˆˆ s, C.isInO (f i)) :
                                        C.isInO (โˆ‘ i โˆˆ s, f i)

                                        Sums of $\mathfrak{o}$-elements lie in $\mathfrak{o}$: a finite sum of elements all in $\mathfrak{o}$ remains in $\mathfrak{o}$.

                                        theorem DVRContext.isInO_prod (C : DVRContext) [C.DVRClosure] {ฮน : Type u_1} {s : Finset ฮน} {f : ฮน โ†’ C.k} (hf : โˆ€ i โˆˆ s, C.isInO (f i)) :
                                        C.isInO (โˆ i โˆˆ s, f i)

                                        Products of $\mathfrak{o}$-elements lie in $\mathfrak{o}$: a finite product of elements all in $\mathfrak{o}$ remains in $\mathfrak{o}$.

                                        theorem DVRContext.det_isInO (C : DVRContext) [C.DVRClosure] {m : โ„•} (A : Matrix (Fin m) (Fin m) C.k) (hA : โˆ€ (i j : Fin m), C.isInO (A i j)) :

                                        Determinant of an $\mathfrak{o}$-matrix lies in $\mathfrak{o}$: if all entries of an $m \times m$ matrix $A$ over $k$ lie in $\mathfrak{o}$, then so does $\det A$.

                                        theorem DVRContext.adjugate_isInO (C : DVRContext) [C.DVRClosure] {m : โ„•} (A : Matrix (Fin m) (Fin m) C.k) (hA : โˆ€ (i j : Fin m), C.isInO (A i j)) (i j : Fin m) :
                                        C.isInO (A.adjugate i j)

                                        Adjugate of an $\mathfrak{o}$-matrix has $\mathfrak{o}$-entries: if all entries of $A$ lie in $\mathfrak{o}$, then every entry of the adjugate matrix $\mathrm{adj}(A)$ also lies in $\mathfrak{o}$.

                                        theorem DVRContext.nonsing_inv_isInO (C : DVRContext) [C.DVRClosure] {m : โ„•} (A : Matrix (Fin m) (Fin m) C.k) (hA : โˆ€ (i j : Fin m), C.isInO (A i j)) (hdet : C.isUnitInO A.det) (i j : Fin m) :

                                        Inverse of an integral matrix with unit determinant has $\mathfrak{o}$-entries: if $A$ has entries in $\mathfrak{o}$ and $\det A$ is a unit in $\mathfrak{o}$, then $A^{-1}$ also has entries in $\mathfrak{o}$. This is the analogue for integral matrices of the unimodularity condition for $GL_n(\mathfrak{o})$.

                                        DVR topology axioms: bundle together an ultrametric normed-field structure on $k$ and the assertions that the valuation predicates isInO, isInMaxIdeal, isUnitInO correspond to the standard normed conditions $\|x\| \le 1$, $\|x\| < 1$, $\|x\| = 1$ respectively. This turns the algebraic DVR data into a topological one.

                                        Instances

                                          The valuation ring $\mathfrak{o}$ is clopen in $k$: under the ultrametric topology of $k$, the set $\{x \in k : \|x\| \le 1\} = \mathfrak{o}$ is both open and closed. This is a key feature distinguishing the ultrametric setting from the archimedean one.

                                          The maximal ideal $\mathfrak{m}$ is clopen in $k$: under the ultrametric topology of $k$, the set $\{x \in k : \|x\| < 1\} = \mathfrak{m}$ is both open and closed.

                                          The unit sphere $\mathfrak{o}^\times$ is clopen in $k$: the set $\{x \in k : \|x\| = 1\} = \mathfrak{o}^\times$ is both open and closed, expressed as the difference of two clopen balls.

                                          All three valuation-defined subsets are clopen: $\mathfrak{o}$, $\mathfrak{o}^\times$, and $\mathfrak{m}$ are all simultaneously open and closed in the ultrametric topology of $k$. A convenient packaging of the three preceding theorems.