Documentation

LeanPool.ErdosGinzburgZiv.EGZ.Decomposition.Basic

Flag decompositions #

This file contains the definitions from the beginning of Section 4 of the paper. The ambient finite-field space and every lattice fibre use the coordinate models from EGZ.Convex.Coordinate.

There are two different lifted weights. hat is cumulative over all nodes below x; localLift uses only the summand based at x. Proper-point generators are defined from localLift. This distinction is the correction integrated into the current version of the paper.

Slabs, thinness, and thickness #

A residue has an integer representative in the interval [-K, K].

This definition remains meaningful without a large-prime hypothesis. Such a hypothesis is needed only when uniqueness of the representative is used.

Equations
Instances For
    def EGZ.slab {p d : ℕ} (ξ : FpCoord p d →ᵃ[ZMod p] ZMod p) (K : ℕ) :
    Set (FpCoord p d)

    The K-slab cut out by an affine functional on 𝔽_p^d.

    Equations
    Instances For
      noncomputable def EGZ.natMassOn {α : Type u_1} [Fintype α] (w : α → ℕ) (S : Set α) :

      The mass of a natural-valued function on a subset of a finite type.

      Equations
      Instances For
        noncomputable def EGZ.natMass {α : Type u_1} [Fintype α] (w : α → ℕ) :

        The total mass of a natural-valued function on a finite type.

        Equations
        Instances For
          noncomputable def EGZ.nnrealMassOn {α : Type u_1} [Fintype α] (w : α → NNReal) (S : Set α) :

          Mass of an NNReal-valued function on a subset of a finite type.

          Equations
          Instances For
            noncomputable def EGZ.nnrealMass {α : Type u_1} [Fintype α] (w : α → NNReal) :

            Total mass of an NNReal-valued function on a finite type.

            Equations
            Instances For
              def EGZ.IsThinAlongNNReal {p d : ℕ} [NeZero p] (w : FpCoord p d → NNReal) (ξ : FpCoord p d →ᵃ[ZMod p] ZMod p) (K : ℕ) (ε : ℝ) :

              Definition 4.1 for the nonnegative real weights used in the paper.

              Equations
              Instances For
                def EGZ.IsThinAlong {p d : ℕ} [NeZero p] (w : FpCoord p d → ℕ) (ξ : FpCoord p d →ᵃ[ZMod p] ZMod p) (K : ℕ) (ε : ℝ) :

                Natural-valued specialization used by flag decompositions and Theorem 4.13.

                Equations
                Instances For
                  def EGZ.IsThickAlong {p d : ℕ} [NeZero p] (w : FpCoord p d → ℕ) (ξ : FpCoord p d →ᵃ[ZMod p] ZMod p) (K : ℕ) (ε : ℝ) :

                  Thickness is the negation of thinness, as in Definition tt.

                  Equations
                  Instances For

                    Representations of a lattice flag over 𝔽_p #

                    structure EGZ.FpRepresentation (p d : ℕ) (F : ConvexFlag) :
                    Type u_1

                    An 𝔽_p-representation of a convex lattice flag in the ambient affine space 𝔽_p^d.

                    The maps are stored as affine maps on the ambient coordinate space and are required to be surjective only after restriction to space x. Every affine map on an affine subspace of this finite-dimensional space extends to the ambient space, while this representation avoids dependent subtype maps in all fibre sums below.

                    Instances For

                      An affine functional is nonconstant on the fibres of the representation at x if two points in one fibre receive different values.

                      Equations
                      Instances For

                        Coordinate lifts #

                        def EGZ.latticeSupNorm {n : ℕ} (z : IntCoord n) :

                        Sup norm in the chosen affine-lattice coordinates.

                        Equations
                        Instances For
                          def EGZ.IsCenteredLift (p : ℕ) {n : ℕ} (z : IntCoord n) :

                          A lattice coordinate lies in the centered representative box modulo p.

                          Equations
                          Instances For
                            noncomputable def EGZ.FlagDecompositionRaw.retainedWeight {p d : ℕ} {F : ConvexFlag} (pieces : F.Node → FpCoord p d → ℕ) (v : FpCoord p d) :

                            Sum of all local summands at an ambient point.

                            Equations
                            Instances For
                              noncomputable def EGZ.FlagDecompositionRaw.cumulativeWeight {p d : ℕ} {F : ConvexFlag} (pieces : F.Node → FpCoord p d → ℕ) (x : F.Node) (v : FpCoord p d) :

                              The cumulative function f_{≼ x}.

                              Equations
                              Instances For
                                noncomputable def EGZ.FlagDecompositionRaw.affineFibreMass {p d : ℕ} [NeZero p] {n : ℕ} (w : FpCoord p d → ℕ) (φ : FpCoord p d → FpCoord p n) (c : FpCoord p n) :

                                Push a finite weight through an affine map whose target rank may vary.

                                Equations
                                Instances For
                                  noncomputable def EGZ.FlagDecompositionRaw.localLift {p d : ℕ} [NeZero p] {F : ConvexFlag} (R : FpRepresentation p d F) (pieces : F.Node → FpCoord p d → ℕ) (x : F.Node) (q : IntCoord (F.rank x)) :

                                  The local centered lift f_x°, using only the summand based at x.

                                  Equations
                                  Instances For
                                    noncomputable def EGZ.FlagDecompositionRaw.hat {p d : ℕ} [NeZero p] {F : ConvexFlag} (R : FpRepresentation p d F) (pieces : F.Node → FpCoord p d → ℕ) (x : F.Node) (q : IntCoord (F.rank x)) :

                                    The cumulative centered lift hat f_x.

                                    Equations
                                    • One or more equations did not get rendered due to their size.
                                    Instances For
                                      def EGZ.FlagDecompositionRaw.omegaZero {p d : ℕ} [NeZero p] {F : ConvexFlag} (R : FpRepresentation p d F) (pieces : F.Node → FpCoord p d → ℕ) :

                                      Corrected local generating points. A generator based at x is selected by positive localLift, not by cumulative hat.

                                      Equations
                                      Instances For
                                        def EGZ.FlagDecompositionRaw.omega {p d : ℕ} [NeZero p] {F : ConvexFlag} (R : FpRepresentation p d F) (pieces : F.Node → FpCoord p d → ℕ) :

                                        Proper points associated with local decomposition data.

                                        Equations
                                        Instances For
                                          def EGZ.FlagDecompositionRaw.pointsOnFace {p d : ℕ} [NeZero p] {F : ConvexFlag} (R : FpRepresentation p d F) (pieces : F.Node → FpCoord p d → ℕ) (x : F.Node) (Γ : (F.polytope x).Face) :

                                          Proper points whose coordinate at x lies on a given face.

                                          Equations
                                          Instances For
                                            def EGZ.FlagDecompositionRaw.VisibleFace {p d : ℕ} [NeZero p] {F : ConvexFlag} (R : FpRepresentation p d F) (pieces : F.Node → FpCoord p d → ℕ) (x : F.Node) (Γ : (F.polytope x).Face) :

                                            Visibility before packaging the data into a FlagDecomposition.

                                            Equations
                                            Instances For
                                              theorem EGZ.FlagDecompositionRaw.omega_convex_closed {p d : ℕ} [NeZero p] {F : ConvexFlag} (R : FpRepresentation p d F) (pieces : F.Node → FpCoord p d → ℕ) :
                                              F.convexHull (omega R pieces) ⊆ omega R pieces

                                              The proper-point set is convex-closed because it is itself defined as a flag convex hull.

                                              Flag decompositions #

                                              structure EGZ.FlagDecomposition (p d : ℕ) [NeZero p] (f : FpCoord p d → ℕ) :

                                              A natural-valued flag decomposition of f.

                                              The finite lifted support is stored explicitly. Besides making the later mass and gap definitions computationally finite, the accompanying fields record the support/polytope invariant and rule out inactive nodes with empty cumulative support.

                                              Instances For
                                                noncomputable def EGZ.FlagDecomposition.retainedWeight {p d : ℕ} [NeZero p] {f : FpCoord p d → ℕ} (Φ : FlagDecomposition p d f) :
                                                FpCoord p d → ℕ

                                                Total retained function f^Φ.

                                                Equations
                                                Instances For
                                                  noncomputable def EGZ.FlagDecomposition.cumulativeWeight {p d : ℕ} [NeZero p] {f : FpCoord p d → ℕ} (Φ : FlagDecomposition p d f) (x : Φ.flag.Node) :
                                                  FpCoord p d → ℕ

                                                  Cumulative function f_{≼ x}.

                                                  Equations
                                                  Instances For
                                                    noncomputable def EGZ.FlagDecomposition.localLift {p d : ℕ} [NeZero p] {f : FpCoord p d → ℕ} (Φ : FlagDecomposition p d f) (x : Φ.flag.Node) :
                                                    IntCoord (Φ.flag.rank x) → ℕ

                                                    Local centered lifted function f_x°.

                                                    Equations
                                                    Instances For
                                                      noncomputable def EGZ.FlagDecomposition.hat {p d : ℕ} [NeZero p] {f : FpCoord p d → ℕ} (Φ : FlagDecomposition p d f) (x : Φ.flag.Node) :
                                                      IntCoord (Φ.flag.rank x) → ℕ

                                                      Cumulative centered lifted function hat f_x.

                                                      Equations
                                                      Instances For
                                                        noncomputable def EGZ.FlagDecomposition.retainedMass {p d : ℕ} [NeZero p] {f : FpCoord p d → ℕ} (Φ : FlagDecomposition p d f) :

                                                        Total retained mass f^Φ(V).

                                                        Equations
                                                        Instances For
                                                          noncomputable def EGZ.FlagDecomposition.liftedMassOn {p d : ℕ} [NeZero p] {f : FpCoord p d → ℕ} (Φ : FlagDecomposition p d f) (x : Φ.flag.Node) (S : Set (RealCoord (Φ.flag.rank x))) :

                                                          Mass of hat f_x over lattice points whose real coordinates lie in S. The stored support makes this a finite sum.

                                                          Equations
                                                          Instances For
                                                            def EGZ.FlagDecomposition.omegaZero {p d : ℕ} [NeZero p] {f : FpCoord p d → ℕ} (Φ : FlagDecomposition p d f) :

                                                            Corrected set Ω₀ of local generating points.

                                                            Equations
                                                            Instances For
                                                              def EGZ.FlagDecomposition.omega {p d : ℕ} [NeZero p] {f : FpCoord p d → ℕ} (Φ : FlagDecomposition p d f) :

                                                              Corrected proper-point set Ω = conv Ω₀.

                                                              Equations
                                                              Instances For

                                                                The corrected proper points, packaged with convex closure.

                                                                Equations
                                                                Instances For
                                                                  def EGZ.FlagDecomposition.HasLocalPointMass {p d : ℕ} [NeZero p] {f : FpCoord p d → ℕ} (Φ : FlagDecomposition p d f) (q : Φ.flag.Point) (m : ℕ) :

                                                                  The paper's pointwise local mass f° on flag points. The existential form avoids choosing integer coordinates; realification is injective, so the value is unambiguous whenever it is nonzero.

                                                                  Equations
                                                                  Instances For
                                                                    def EGZ.FlagDecomposition.pointsOnFace {p d : ℕ} [NeZero p] {f : FpCoord p d → ℕ} (Φ : FlagDecomposition p d f) (x : Φ.flag.Node) (Γ : (Φ.flag.polytope x).Face) :

                                                                    Points of Ω lying over the face Γ at x.

                                                                    Equations
                                                                    Instances For
                                                                      def EGZ.FlagDecomposition.IsVisibleFace {p d : ℕ} [NeZero p] {f : FpCoord p d → ℕ} (Φ : FlagDecomposition p d f) (x : Φ.flag.Node) (Γ : (Φ.flag.polytope x).Face) :

                                                                      A face is visible when a proper point lies over it.

                                                                      Equations
                                                                      Instances For
                                                                        noncomputable def EGZ.FlagDecomposition.faceBases {p d : ℕ} [NeZero p] {f : FpCoord p d → ℕ} (Φ : FlagDecomposition p d f) (x : Φ.flag.Node) (Γ : (Φ.flag.polytope x).Face) :

                                                                        The finite set of bases used to define x_Γ.

                                                                        Equations
                                                                        Instances For
                                                                          noncomputable def EGZ.FlagDecomposition.faceIndex {p d : ℕ} [NeZero p] {f : FpCoord p d → ℕ} (Φ : FlagDecomposition p d f) (x : Φ.flag.Node) (Γ : (Φ.flag.polytope x).Face) :

                                                                          The element x_Γ: the supremum of the bases of proper points over a face. Every face of a flag decomposition is visible.

                                                                          Equations
                                                                          Instances For
                                                                            theorem EGZ.FlagDecomposition.faceIndex_le {p d : ℕ} [NeZero p] {f : FpCoord p d → ℕ} (Φ : FlagDecomposition p d f) (x : Φ.flag.Node) (Γ : (Φ.flag.polytope x).Face) :
                                                                            Φ.faceIndex x Γ ≤ x
                                                                            def EGZ.FlagDecomposition.IsRealizedFace {p d : ℕ} [NeZero p] {f : FpCoord p d → ℕ} (Φ : FlagDecomposition p d f) (x : Φ.flag.Node) (Γ : (Φ.flag.polytope x).Face) :

                                                                            A face is realized when the polytope at x_Γ maps into it.

                                                                            Equations
                                                                            Instances For
                                                                              def EGZ.FlagDecomposition.IsReducedElement {p d : ℕ} [NeZero p] {f : FpCoord p d → ℕ} (Φ : FlagDecomposition p d f) (x : Φ.flag.Node) :

                                                                              An element is reduced when some proper point is based exactly there.

                                                                              Equations
                                                                              Instances For
                                                                                def EGZ.FlagDecomposition.IsReduced {p d : ℕ} [NeZero p] {f : FpCoord p d → ℕ} (Φ : FlagDecomposition p d f) :

                                                                                Every element of the decomposition is reduced.

                                                                                Equations
                                                                                Instances For

                                                                                  A finite set of lattice points affinely generates the full coordinate lattice over ℤ.

                                                                                  Equations
                                                                                  Instances For
                                                                                    def EGZ.FlagDecomposition.IsMinimal {p d : ℕ} [NeZero p] {f : FpCoord p d → ℕ} (Φ : FlagDecomposition p d f) :

                                                                                    Minimality of the finite-field affine spaces and affine lattices.

                                                                                    Equations
                                                                                    • One or more equations did not get rendered due to their size.
                                                                                    Instances For
                                                                                      def EGZ.FlagDecomposition.IsKBounded {p d : ℕ} [NeZero p] {f : FpCoord p d → ℕ} (Φ : FlagDecomposition p d f) (K : Φ.flag.Node → ℕ) :

                                                                                      The chosen affine-lattice coordinates are bounded by K on every lattice point of every node polytope.

                                                                                      Equations
                                                                                      Instances For
                                                                                        def EGZ.FlagDecomposition.IsLargeFace {p d : ℕ} [NeZero p] {f : FpCoord p d → ℕ} (Φ : FlagDecomposition p d f) (ε : ℝ) (x : Φ.flag.Node) (Γ : (Φ.flag.polytope x).Face) :

                                                                                        An ε-large face, Definition largef.

                                                                                        Equations
                                                                                        • One or more equations did not get rendered due to their size.
                                                                                        Instances For
                                                                                          def EGZ.FlagDecomposition.IsLargeElement {p d : ℕ} [NeZero p] {f : FpCoord p d → ℕ} (Φ : FlagDecomposition p d f) (ε : ℝ) (x : Φ.flag.Node) :

                                                                                          An ε-large flag element.

                                                                                          Equations
                                                                                          Instances For
                                                                                            noncomputable def EGZ.FlagDecomposition.gap {p d : ℕ} [NeZero p] {f : FpCoord p d → ℕ} (Φ : FlagDecomposition p d f) (x : Φ.flag.Node) :

                                                                                            The minimum positive cumulative lifted mass at a node.

                                                                                            Equations
                                                                                            Instances For
                                                                                              def EGZ.FlagDecomposition.IsCompleteElement {p d : ℕ} [NeZero p] {f : FpCoord p d → ℕ} (Φ : FlagDecomposition p d f) (x : Φ.flag.Node) (t : ℕ) (δ : ℝ) :

                                                                                              Completeness of one element: every affine functional which varies on a representation fibre sees a thick cumulative weight.

                                                                                              Equations
                                                                                              Instances For
                                                                                                def EGZ.FlagDecomposition.IsComplete {p d : ℕ} [NeZero p] {f : FpCoord p d → ℕ} (Φ : FlagDecomposition p d f) (T : Φ.flag.Node → ℕ) (ε δ : ℝ) :

                                                                                                A (T, ε, δ)-complete flag decomposition.

                                                                                                Equations
                                                                                                • One or more equations did not get rendered due to their size.
                                                                                                Instances For
                                                                                                  def EGZ.IsGrowing (g : ℕ → ℕ) :

                                                                                                  A growing function is monotone and strictly exceeds the identity.

                                                                                                  Equations
                                                                                                  Instances For