Documentation

LeanPool.MetricCodes.Foundations

Foundations for binary and spherical code bounds #

Elementary coding-theory definitions, projection certificates, and the finite Johnson bound.

@[reducible, inline]

The ambient used in the metric-code argument.

Equations
Instances For
    @[reducible, inline]

    The binary word used in the metric-code argument.

    Equations
    Instances For
      @[reducible, inline]
      abbrev MetricCodes.hammingDist {n : ℕ} (x y : BinaryWord n) :

      The hamming dist used in the metric-code argument.

      Equations
      Instances For

        The binary weight used in the metric-code argument.

        Equations
        Instances For

          The predicate asserting binary code.

          Equations
          Instances For
            @[reducible, inline]

            The johnson sphere used in the Johnson-code argument.

            Equations
            Instances For
              noncomputable def MetricCodes.hammingCorrelation {n : ℕ} (x y : BinaryWord n) :

              The hamming correlation used in the metric-code argument.

              Equations
              Instances For
                theorem MetricCodes.hammingCorrelation_le_of_dist_le {n d : ℕ} (hn : 0 < n) {x y : BinaryWord n} (hd : d ≤ hammingDist x y) :
                hammingCorrelation x y ≤ 1 - 2 * ↑d / ↑n
                noncomputable def MetricCodes.sphericalEntropy (u : ℝ) :

                The spherical entropy used in the metric-code argument.

                Equations
                Instances For
                  theorem MetricCodes.sphericalEntropy_eq_log_add {u : ℝ} (hu : 0 < u) :
                  sphericalEntropy u = Real.logb 2 (1 + u) + u * Real.logb 2 ((1 + u) / u)
                  noncomputable def MetricCodes.binaryEntropy (u : ℝ) :

                  The binary entropy used in the metric-code argument.

                  Equations
                  Instances For
                    theorem MetricCodes.binaryEntropy_nonneg {u : ℝ} (hu : 0 ≤ u) (hu' : u ≤ 1) :
                    noncomputable def MetricCodes.Gamma (a b : ℝ) :

                    The gamma used in the metric-code argument.

                    Equations
                    Instances For
                      theorem MetricCodes.Gamma_eq_sub (a b : ℝ) :
                      Gamma a b = (a * (1 + a) - b * (1 + b)) / ((1 + 2 * a) * √(a * (1 + a)))
                      noncomputable def MetricCodes.classicalThreshold (s : ℝ) :

                      The classical threshold used in the metric-code argument.

                      Equations
                      Instances For
                        theorem MetricCodes.classicalThreshold_pos {s : ℝ} (hs : 0 < s) (hs' : s < 1) :

                        The boolean harmonic dimension used in the metric-code argument.

                        Equations
                        Instances For
                          @[reducible, inline]

                          The hamming fibre dimension used in the metric-code argument.

                          Equations
                          Instances For

                            The johnson fibre dimension used in the metric-code argument.

                            Equations
                            Instances For
                              noncomputable def MetricCodes.hammingJacobiEntry (n k i : ℕ) :

                              The hamming jacobi entry used in the metric-code argument.

                              Equations
                              Instances For
                                theorem MetricCodes.hammingJacobiEntry_pos {n k i : ℕ} (hn : 0 < n) (hki : k ≤ i) (hi : i + k < n) :
                                noncomputable def MetricCodes.hammingJacobiMatrix (n k L : ℕ) :
                                Matrix (Fin (L - k + 1)) (Fin (L - k + 1)) ℝ

                                The hamming jacobi matrix used in the metric-code argument.

                                Equations
                                Instances For
                                  noncomputable def MetricCodes.hammingGamma (a b : ℝ) :

                                  The hamming gamma used in the metric-code argument.

                                  Equations
                                  Instances For
                                    noncomputable def MetricCodes.johnsonJ1 (w p : ℕ) :

                                    The johnson j1 used in the metric-code argument.

                                    Equations
                                    Instances For
                                      noncomputable def MetricCodes.johnsonJ2 (n w q : ℕ) :

                                      The johnson j2 used in the metric-code argument.

                                      Equations
                                      Instances For
                                        noncomputable def MetricCodes.johnsonJ (n j : ℕ) :

                                        The johnson j used in the metric-code argument.

                                        Equations
                                        Instances For
                                          noncomputable def MetricCodes.johnsonM (n w : ℕ) :

                                          The johnson m used in the metric-code argument.

                                          Equations
                                          Instances For
                                            noncomputable def MetricCodes.johnsonSigma (n w p q : ℕ) :

                                            The johnson sigma used in the metric-code argument.

                                            Equations
                                            Instances For
                                              noncomputable def MetricCodes.johnsonDelta (n w p q : ℕ) :

                                              The johnson delta used in the metric-code argument.

                                              Equations
                                              Instances For

                                                The johnson last degree used in the metric-code argument.

                                                Equations
                                                Instances For
                                                  noncomputable def MetricCodes.johnsonMu (n w p q j : ℕ) :

                                                  The johnson mu used in the metric-code argument.

                                                  Equations
                                                  • One or more equations did not get rendered due to their size.
                                                  Instances For
                                                    noncomputable def MetricCodes.johnsonNu (n w p q j : ℕ) :

                                                    The johnson nu used in the metric-code argument.

                                                    Equations
                                                    • One or more equations did not get rendered due to their size.
                                                    Instances For
                                                      noncomputable def MetricCodes.johnsonDiagonal (n w p q j : ℕ) :

                                                      The johnson diagonal used in the metric-code argument.

                                                      Equations
                                                      Instances For
                                                        noncomputable def MetricCodes.johnsonEdge (n w p q j : ℕ) :

                                                        The johnson edge used in the metric-code argument.

                                                        Equations
                                                        Instances For
                                                          noncomputable def MetricCodes.johnsonZonalDiagonal (n w j : ℕ) :

                                                          The johnson zonal diagonal used in the metric-code argument.

                                                          Equations
                                                          Instances For
                                                            noncomputable def MetricCodes.johnsonZonalEdge (n w j : ℕ) :

                                                            The johnson zonal edge used in the metric-code argument.

                                                            Equations
                                                            Instances For
                                                              noncomputable def MetricCodes.johnsonHattedDiagonal (n w p q j : ℕ) :

                                                              The johnson hatted diagonal used in the metric-code argument.

                                                              Equations
                                                              Instances For
                                                                noncomputable def MetricCodes.johnsonHattedEdge (n w p q j : ℕ) :

                                                                The johnson hatted edge used in the metric-code argument.

                                                                Equations
                                                                Instances For
                                                                  noncomputable def MetricCodes.johnsonJacobiMatrix (n w p q L : ℕ) :
                                                                  Matrix (Fin (L - (p + q) + 1)) (Fin (L - (p + q) + 1)) ℝ

                                                                  The johnson jacobi matrix used in the metric-code argument.

                                                                  Equations
                                                                  • One or more equations did not get rendered due to their size.
                                                                  Instances For
                                                                    @[simp]
                                                                    theorem MetricCodes.johnsonJacobiMatrix_diag (n w p q L : ℕ) (i : Fin (L - (p + q) + 1)) :
                                                                    johnsonJacobiMatrix n w p q L i i = johnsonHattedDiagonal n w p q (p + q + ↑i)
                                                                    @[reducible, inline]

                                                                    The function used in the binary-code argument.

                                                                    Equations
                                                                    Instances For
                                                                      @[reducible, inline]

                                                                      The level used in the binary-code argument.

                                                                      Equations
                                                                      Instances For
                                                                        def MetricCodes.Boolean.raiseAt {n : ℕ} (a : Fin n) (f : Function n) (S : Finset (Fin n)) :

                                                                        The raise at used in the binary-code argument.

                                                                        Equations
                                                                        Instances For
                                                                          def MetricCodes.Boolean.lowerAt {n : ℕ} (a : Fin n) (f : Function n) (S : Finset (Fin n)) :

                                                                          The lower at used in the binary-code argument.

                                                                          Equations
                                                                          Instances For
                                                                            def MetricCodes.Boolean.raise {n : ℕ} (f : Function n) (S : Finset (Fin n)) :

                                                                            The raise used in the binary-code argument.

                                                                            Equations
                                                                            Instances For
                                                                              def MetricCodes.Boolean.lower {n : ℕ} (f : Function n) (S : Finset (Fin n)) :

                                                                              The lower used in the binary-code argument.

                                                                              Equations
                                                                              Instances For

                                                                                The predicate asserting level.

                                                                                Equations
                                                                                Instances For

                                                                                  The predicate asserting harmonic.

                                                                                  Equations
                                                                                  Instances For
                                                                                    theorem MetricCodes.Boolean.lowerAt_raiseAt_of_ne {n : ℕ} (f : Function n) (a b : Fin n) (hab : a ≠ b) (S : Finset (Fin n)) :
                                                                                    lowerAt a (raiseAt b f) S = raiseAt b (lowerAt a f) S
                                                                                    theorem MetricCodes.Boolean.lowerAt_raiseAt_self {n : ℕ} (f : Function n) (a : Fin n) (S : Finset (Fin n)) :
                                                                                    lowerAt a (raiseAt a f) S = if a ∈ S then 0 else f S
                                                                                    theorem MetricCodes.Boolean.raiseAt_lowerAt_self {n : ℕ} (f : Function n) (a : Fin n) (S : Finset (Fin n)) :
                                                                                    raiseAt a (lowerAt a f) S = if a ∈ S then f S else 0
                                                                                    theorem MetricCodes.Boolean.lowerAt_raise {n : ℕ} (f : Function n) (a : Fin n) (S : Finset (Fin n)) :
                                                                                    lowerAt a (raise f) S = ∑ b : Fin n, lowerAt a (raiseAt b f) S
                                                                                    theorem MetricCodes.Boolean.raiseAt_lower {n : ℕ} (f : Function n) (a : Fin n) (S : Finset (Fin n)) :
                                                                                    raiseAt a (lower f) S = ∑ b : Fin n, raiseAt a (lowerAt b f) S
                                                                                    theorem MetricCodes.Boolean.sum_mem_indicator {n : ℕ} (S : Finset (Fin n)) (x : ℝ) :
                                                                                    (∑ a : Fin n, if a ∈ S then x else 0) = ↑S.card * x
                                                                                    theorem MetricCodes.Boolean.lower_raise_sub_raise_lower {n : ℕ} (f : Function n) (S : Finset (Fin n)) :
                                                                                    lower (raise f) S - raise (lower f) S = (↑n - 2 * ↑S.card) * f S
                                                                                    theorem MetricCodes.Boolean.lower_raise_sub_raise_lower_of_level {n k : ℕ} (f : Function n) (hf : IsLevel k f) (S : Finset (Fin n)) :
                                                                                    lower (raise f) S - raise (lower f) S = (↑n - 2 * ↑k) * f S
                                                                                    theorem MetricCodes.Boolean.lower_raise_of_harmonic {n k : ℕ} (f : Function n) (hf : IsHarmonic k f) (S : Finset (Fin n)) :
                                                                                    lower (raise f) S = (↑n - 2 * ↑k) * f S
                                                                                    theorem MetricCodes.Boolean.raise_add {n : ℕ} (f g : Function n) :
                                                                                    raise (f + g) = raise f + raise g
                                                                                    theorem MetricCodes.Boolean.raise_smul {n : ℕ} (c : ℝ) (f : Function n) :
                                                                                    raise (c • f) = c • raise f
                                                                                    theorem MetricCodes.Boolean.lower_add {n : ℕ} (f g : Function n) :
                                                                                    lower (f + g) = lower f + lower g
                                                                                    theorem MetricCodes.Boolean.lower_smul {n : ℕ} (c : ℝ) (f : Function n) :
                                                                                    lower (c • f) = c • lower f

                                                                                    The raise linear used in the binary-code argument.

                                                                                    Equations
                                                                                    Instances For

                                                                                      The lower linear used in the binary-code argument.

                                                                                      Equations
                                                                                      Instances For
                                                                                        theorem MetricCodes.Boolean.IsLevel.raise {n k : ℕ} {f : Function n} (hf : IsLevel k f) :
                                                                                        theorem MetricCodes.Boolean.IsLevel.lower {n k : ℕ} {f : Function n} (hf : IsLevel (k + 1) f) :

                                                                                        The raised used in the binary-code argument.

                                                                                        Equations
                                                                                        Instances For
                                                                                          @[simp]
                                                                                          theorem MetricCodes.Boolean.raised_succ {n : ℕ} (f : Function n) (r : ℕ) :
                                                                                          raised f (r + 1) = raise (raised f r)
                                                                                          theorem MetricCodes.Boolean.IsLevel.raised {n k : ℕ} {f : Function n} (hf : IsLevel k f) (r : ℕ) :

                                                                                          The harmonic coefficient used in the binary-code argument.

                                                                                          Equations
                                                                                          Instances For
                                                                                            def MetricCodes.Boolean.toggle {n : ℕ} (a : Fin n) (S : Finset (Fin n)) :

                                                                                            Toggle membership of the coordinate a in a finite subset.

                                                                                            Equations
                                                                                            Instances For
                                                                                              @[simp]
                                                                                              theorem MetricCodes.Boolean.toggle_toggle {n : ℕ} (a : Fin n) (S : Finset (Fin n)) :
                                                                                              toggle a (toggle a S) = S

                                                                                              The dot used in the binary-code argument.

                                                                                              Equations
                                                                                              Instances For
                                                                                                theorem MetricCodes.Boolean.dot_raiseAt_eq_lowerAt {n : ℕ} (a : Fin n) (f g : Function n) :
                                                                                                dot (raiseAt a f) g = dot f (lowerAt a g)
                                                                                                theorem MetricCodes.Boolean.dot_comm {n : ℕ} (f g : Function n) :
                                                                                                dot f g = dot g f
                                                                                                theorem MetricCodes.Boolean.dot_smul_right {n : ℕ} (f g : Function n) (c : ℝ) :
                                                                                                dot f (c • g) = c * dot f g
                                                                                                @[simp]
                                                                                                theorem MetricCodes.Boolean.normSq_eq_zero_iff {n : ℕ} (f : Function n) :
                                                                                                dot f f = 0 ↔ f = 0
                                                                                                structure MetricCodes.ProjectionFamily (X : Type u_1) (D d : ℕ) :
                                                                                                Type u_1

                                                                                                Data encoding the projection family construction.

                                                                                                Instances For
                                                                                                  def MetricCodes.ProjectionFamily.overlap {X : Type u_1} {D d : ℕ} (P : ProjectionFamily X D d) (x y : X) :

                                                                                                  The overlap used in the metric-code argument.

                                                                                                  Equations
                                                                                                  Instances For
                                                                                                    @[simp]
                                                                                                    theorem MetricCodes.ProjectionFamily.overlap_self {X : Type u_1} {D d : ℕ} (P : ProjectionFamily X D d) (x : X) :
                                                                                                    P.overlap x x = ↑d
                                                                                                    theorem MetricCodes.ProjectionFamily.overlap_nonneg {X : Type u_1} {D d : ℕ} (P : ProjectionFamily X D d) (x y : X) :
                                                                                                    0 ≤ P.overlap x y
                                                                                                    theorem MetricCodes.ProjectionFamily.sum_symmetric {X : Type u_1} {D d : ℕ} (P : ProjectionFamily X D d) (C : Finset X) :
                                                                                                    (∑ x ∈ C, P.projection x).transpose = ∑ x ∈ C, P.projection x
                                                                                                    theorem MetricCodes.ProjectionFamily.sum_overlap_eq_trace_mul_sum {X : Type u_1} {D d : ℕ} (P : ProjectionFamily X D d) (C : Finset X) :
                                                                                                    ∑ x ∈ C, ∑ y ∈ C, P.overlap x y = ((∑ x ∈ C, P.projection x) * ∑ y ∈ C, P.projection y).trace
                                                                                                    theorem MetricCodes.ProjectionFamily.card_mul_rank_sq_le_dimension_mul_sum_overlap {X : Type u_1} {D d : ℕ} (P : ProjectionFamily X D d) (C : Finset X) :
                                                                                                    (↑C.card * ↑d) ^ 2 ≤ ↑D * ∑ x ∈ C, ∑ y ∈ C, P.overlap x y
                                                                                                    theorem MetricCodes.gram_double_sum_nonneg {X : Type u_1} {E : Type u_2} [NormedAddCommGroup E] [InnerProductSpace ℝ E] (C : Finset X) (q : X → E) :
                                                                                                    0 ≤ ∑ x ∈ C, ∑ y ∈ C, inner ℝ (q x) (q y)
                                                                                                    theorem MetricCodes.projection_certificate_mul {X : Type u_1} {E : Type u_2} [NormedAddCommGroup E] [InnerProductSpace ℝ E] {D d : ℕ} (P : ProjectionFamily X D d) (C : Finset X) (t : X → X → ℝ) (q : X → E) {s lam : ℝ} (hd : 0 < d) (hs : s < 1) (hgap : s < lam) (hdiag : ∀ x ∈ C, t x x = 1) (hsep : ∀ x ∈ C, ∀ y ∈ C, x ≠ y → t x y ≤ s) (hgram : ∀ x ∈ C, ∀ y ∈ C, inner ℝ (q x) (q y) = (t x y - lam) * P.overlap x y) :
                                                                                                    ↑C.card * (lam - s) * ↑d ≤ (1 - s) * ↑D
                                                                                                    theorem MetricCodes.projection_certificate {X : Type u_1} {E : Type u_2} [NormedAddCommGroup E] [InnerProductSpace ℝ E] {D d : ℕ} (P : ProjectionFamily X D d) (C : Finset X) (t : X → X → ℝ) (q : X → E) {s lam : ℝ} (hd : 0 < d) (hs : s < 1) (hgap : s < lam) (hdiag : ∀ x ∈ C, t x x = 1) (hsep : ∀ x ∈ C, ∀ y ∈ C, x ≠ y → t x y ≤ s) (hgram : ∀ x ∈ C, ∀ y ∈ C, inner ℝ (q x) (q y) = (t x y - lam) * P.overlap x y) :
                                                                                                    ↑C.card ≤ (1 - s) / (lam - s) * (↑D / ↑d)

                                                                                                    The sign used in the binary-code argument.

                                                                                                    Equations
                                                                                                    Instances For

                                                                                                      The Boolean character given by the product of the signs of x on S.

                                                                                                      Equations
                                                                                                      Instances For
                                                                                                        @[simp]
                                                                                                        def MetricCodes.Boolean.twist {n : ℕ} (x : BinaryWord n) (f : Function n) (S : Finset (Fin n)) :

                                                                                                        Multiply a function pointwise by the Boolean character of x.

                                                                                                        Equations
                                                                                                        Instances For
                                                                                                          theorem MetricCodes.Boolean.twist_smul {n : ℕ} (x : BinaryWord n) (c : ℝ) (f : Function n) :
                                                                                                          twist x (c • f) = c • twist x f
                                                                                                          theorem MetricCodes.Boolean.dot_twist {n : ℕ} (x : BinaryWord n) (f g : Function n) :
                                                                                                          dot (twist x f) (twist x g) = dot f g
                                                                                                          theorem MetricCodes.Boolean.IsLevel.twist {n k : ℕ} {f : Function n} (hf : IsLevel k f) (x : BinaryWord n) :
                                                                                                          @[reducible, inline]

                                                                                                          The coordinate function used in the binary-code argument.

                                                                                                          Equations
                                                                                                          Instances For

                                                                                                            The coordinate dot used in the binary-code argument.

                                                                                                            Equations
                                                                                                            Instances For
                                                                                                              noncomputable def MetricCodes.Boolean.deleteChannel {n : ℕ} (i : ℕ) (f : Function n) :

                                                                                                              The delete channel used in the binary-code argument.

                                                                                                              Equations
                                                                                                              Instances For
                                                                                                                noncomputable def MetricCodes.Boolean.addChannel {n : ℕ} (i : ℕ) (f : Function n) :

                                                                                                                The coordinate raising channels scaled by the inverse square root of n - i.

                                                                                                                Equations
                                                                                                                Instances For
                                                                                                                  theorem MetricCodes.Boolean.sum_not_mem_indicator {n : ℕ} (S : Finset (Fin n)) (z : ℝ) :
                                                                                                                  (∑ a : Fin n, if a ∈ S then 0 else z) = (↑n - ↑S.card) * z
                                                                                                                  theorem MetricCodes.Boolean.sum_dot_lowerAt {n : ℕ} (f g : Function n) :
                                                                                                                  ∑ a : Fin n, dot (lowerAt a f) (lowerAt a g) = ∑ S : Finset (Fin n), ↑S.card * f S * g S
                                                                                                                  theorem MetricCodes.Boolean.sum_dot_raiseAt {n : ℕ} (f g : Function n) :
                                                                                                                  ∑ a : Fin n, dot (raiseAt a f) (raiseAt a g) = ∑ S : Finset (Fin n), (↑n - ↑S.card) * f S * g S
                                                                                                                  theorem MetricCodes.Boolean.sum_dot_lowerAt_of_level {n i : ℕ} (f g : Function n) (hf : IsLevel i f) :
                                                                                                                  ∑ a : Fin n, dot (lowerAt a f) (lowerAt a g) = ↑i * dot f g
                                                                                                                  theorem MetricCodes.Boolean.sum_dot_raiseAt_of_level {n i : ℕ} (f g : Function n) (hf : IsLevel i f) :
                                                                                                                  ∑ a : Fin n, dot (raiseAt a f) (raiseAt a g) = (↑n - ↑i) * dot f g
                                                                                                                  theorem MetricCodes.Boolean.dot_smul_left {n : ℕ} (f g : Function n) (c : ℝ) :
                                                                                                                  dot (c • f) g = c * dot f g
                                                                                                                  theorem MetricCodes.Boolean.dot_add_right {n : ℕ} (f g h : Function n) :
                                                                                                                  dot f (g + h) = dot f g + dot f h
                                                                                                                  theorem MetricCodes.Boolean.normSq_raise_of_level {n i : ℕ} (f : Function n) (hf : IsLevel i f) :
                                                                                                                  dot (raise f) (raise f) = dot (lower f) (lower f) + (↑n - 2 * ↑i) * dot f f
                                                                                                                  theorem MetricCodes.Boolean.raise_eq_zero_iff_of_level {n i : ℕ} (hi : 2 * i < n) (f : Function n) (hf : IsLevel i f) :
                                                                                                                  raise f = 0 ↔ f = 0
                                                                                                                  @[reducible, inline]

                                                                                                                  The layer function used in the binary-code argument.

                                                                                                                  Equations
                                                                                                                  Instances For

                                                                                                                    The layer extend used in the binary-code argument.

                                                                                                                    Equations
                                                                                                                    Instances For

                                                                                                                      The layer restrict used in the binary-code argument.

                                                                                                                      Equations
                                                                                                                      Instances For

                                                                                                                        Extend a function on the kth layer by zero, bundled as a linear map.

                                                                                                                        Equations
                                                                                                                        Instances For

                                                                                                                          Restrict a function to the kth layer, bundled as a linear map.

                                                                                                                          Equations
                                                                                                                          Instances For

                                                                                                                            The raising map from layer k to layer k + 1, obtained by extending and restricting.

                                                                                                                            Equations
                                                                                                                            Instances For

                                                                                                                              The lowering map from layer k + 1 to layer k, obtained by extending and restricting.

                                                                                                                              Equations
                                                                                                                              Instances For
                                                                                                                                @[simp]

                                                                                                                                The layer dot used in the binary-code argument.

                                                                                                                                Equations
                                                                                                                                Instances For

                                                                                                                                  The harmonic layer used in the binary-code argument.

                                                                                                                                  Equations
                                                                                                                                  Instances For
                                                                                                                                    theorem MetricCodes.Boolean.deleteChannel_isometry {n i : ℕ} (hi : 0 < i) (f g : Function n) (hf : IsLevel i f) :
                                                                                                                                    theorem MetricCodes.Boolean.addChannel_isometry {n i : ℕ} (hi : i < n) (f g : Function n) (hf : IsLevel i f) :
                                                                                                                                    theorem MetricCodes.Boolean.dot_lowerAt_raiseAt {n : ℕ} (a : Fin n) (f g : Function n) :
                                                                                                                                    dot (lowerAt a f) (raiseAt a g) = 0

                                                                                                                                    The harmonic norm factor used in the binary-code argument.

                                                                                                                                    Equations
                                                                                                                                    Instances For
                                                                                                                                      theorem MetricCodes.Boolean.harmonicCoefficient_pos {n k r : ℕ} (hr : 0 < r) (hbound : 2 * k + r ≤ n) :
                                                                                                                                      theorem MetricCodes.Boolean.harmonicNormFactor_pos {n k r : ℕ} (hbound : 2 * k + r ≤ n) :
                                                                                                                                      theorem MetricCodes.Boolean.dot_raised_succ_of_harmonic {n k : ℕ} (f g : Function n) (hg : IsHarmonic k g) (r : ℕ) :
                                                                                                                                      dot (raised f (r + 1)) (raised g (r + 1)) = harmonicCoefficient n k (r + 1) * dot (raised f r) (raised g r)
                                                                                                                                      theorem MetricCodes.Boolean.dot_raised_of_harmonic {n k : ℕ} (f g : Function n) (hg : IsHarmonic k g) (r : ℕ) :
                                                                                                                                      dot (raised f r) (raised g r) = harmonicNormFactor n k r * dot f g
                                                                                                                                      noncomputable def MetricCodes.Boolean.harmonicEmbedding {n : ℕ} (k r : ℕ) (f : Function n) :

                                                                                                                                      The harmonic embedding used in the binary-code argument.

                                                                                                                                      Equations
                                                                                                                                      Instances For
                                                                                                                                        noncomputable def MetricCodes.Boolean.wordHarmonicEmbedding {n : ℕ} (x : BinaryWord n) (k r : ℕ) (f : Function n) :

                                                                                                                                        The normalized harmonic embedding twisted by the Boolean character of x.

                                                                                                                                        Equations
                                                                                                                                        Instances For
                                                                                                                                          theorem MetricCodes.Boolean.harmonicEmbedding_isometry {n k : ℕ} (f g : Function n) (hg : IsHarmonic k g) (r : ℕ) (hbound : 2 * k + r ≤ n) :
                                                                                                                                          theorem MetricCodes.Boolean.wordHarmonicEmbedding_isometry {n k : ℕ} (x : BinaryWord n) (f g : Function n) (hg : IsHarmonic k g) (r : ℕ) (hbound : 2 * k + r ≤ n) :
                                                                                                                                          @[reducible, inline]

                                                                                                                                          The euclidean layer used in the binary-code argument.

                                                                                                                                          Equations
                                                                                                                                          Instances For

                                                                                                                                            The harmonic orthonormal basis used in the binary-code argument.

                                                                                                                                            Equations
                                                                                                                                            Instances For
                                                                                                                                              noncomputable def MetricCodes.Boolean.harmonicBasisFunction (n k : ℕ) (hk : 2 * k ≤ n) (p : Fin (hammingFibreDimension n k)) :

                                                                                                                                              The harmonic basis function used in the binary-code argument.

                                                                                                                                              Equations
                                                                                                                                              Instances For

                                                                                                                                                The sum of the layer dimensions over the offsets in Fin (L - k + 1).

                                                                                                                                                Equations
                                                                                                                                                Instances For
                                                                                                                                                  @[reducible, inline]

                                                                                                                                                  Indices consisting of a window offset and a subset in its corresponding Hamming layer.

                                                                                                                                                  Equations
                                                                                                                                                  Instances For

                                                                                                                                                    Enumerate the Hamming window indices by their total dimension.

                                                                                                                                                    Equations
                                                                                                                                                    Instances For
                                                                                                                                                      noncomputable def MetricCodes.Boolean.hammingRecurrenceWeight (n k L : ℕ) (v : EuclideanSpace ℝ (Fin (L - k + 1))) (j : Fin (L - k + 1)) :

                                                                                                                                                      A recurrence coordinate weighted by the square root of its Hamming layer dimension.

                                                                                                                                                      Equations
                                                                                                                                                      Instances For
                                                                                                                                                        noncomputable def MetricCodes.Boolean.hammingRecurrenceNormalization (n k L : ℕ) (v : EuclideanSpace ℝ (Fin (L - k + 1))) :

                                                                                                                                                        The sum of the dimension-weighted Hamming recurrence coordinates.

                                                                                                                                                        Equations
                                                                                                                                                        Instances For
                                                                                                                                                          noncomputable def MetricCodes.Boolean.hammingFibreAmplitude (n k L : ℕ) (v : EuclideanSpace ℝ (Fin (L - k + 1))) (j : Fin (L - k + 1)) :

                                                                                                                                                          The square root of a normalized Hamming recurrence weight, used as a fibre amplitude.

                                                                                                                                                          Equations
                                                                                                                                                          Instances For
                                                                                                                                                            theorem MetricCodes.Boolean.hammingRecurrenceWeight_nonneg (n k L : ℕ) (v : EuclideanSpace ℝ (Fin (L - k + 1))) (hv : ∀ (j : Fin (L - k + 1)), 0 ≤ v.ofLp j) (j : Fin (L - k + 1)) :
                                                                                                                                                            theorem MetricCodes.Boolean.hammingRecurrenceNormalization_pos {n k L : ℕ} (hkL : k ≤ L) (hLn : L + k ≤ n) (v : EuclideanSpace ℝ (Fin (L - k + 1))) (hunit : ‖v‖ = 1) (hv : ∀ (j : Fin (L - k + 1)), 0 ≤ v.ofLp j) :
                                                                                                                                                            theorem MetricCodes.Boolean.hammingFibreAmplitude_sq {n k L : ℕ} (hkL : k ≤ L) (hLn : L + k ≤ n) (v : EuclideanSpace ℝ (Fin (L - k + 1))) (hunit : ‖v‖ = 1) (hv : ∀ (j : Fin (L - k + 1)), 0 ≤ v.ofLp j) (j : Fin (L - k + 1)) :
                                                                                                                                                            theorem MetricCodes.Boolean.hammingFibreAmplitude_sq_sum {n k L : ℕ} (hkL : k ≤ L) (hLn : L + k ≤ n) (v : EuclideanSpace ℝ (Fin (L - k + 1))) (hunit : ‖v‖ = 1) (hv : ∀ (j : Fin (L - k + 1)), 0 ≤ v.ofLp j) :
                                                                                                                                                            ∑ j : Fin (L - k + 1), hammingFibreAmplitude n k L v j ^ 2 = 1
                                                                                                                                                            noncomputable def MetricCodes.Boolean.hammingWindowFibreMatrix (n k L : ℕ) (hk : 2 * k ≤ n) (v : EuclideanSpace ℝ (Fin (L - k + 1))) (x : BinaryWord n) :

                                                                                                                                                            The matrix of twisted harmonic basis embeddings weighted by their window fibre amplitudes.

                                                                                                                                                            Equations
                                                                                                                                                            • One or more equations did not get rendered due to their size.
                                                                                                                                                            Instances For
                                                                                                                                                              theorem MetricCodes.Boolean.hammingWindowFibreMatrix_transpose_mul {n k L : ℕ} (hk : 2 * k ≤ n) (hkL : k ≤ L) (hLn : L + k ≤ n) (v : EuclideanSpace ℝ (Fin (L - k + 1))) (hunit : ‖v‖ = 1) (hv : ∀ (j : Fin (L - k + 1)), 0 ≤ v.ofLp j) (x : BinaryWord n) :
                                                                                                                                                              noncomputable def MetricCodes.Boolean.hammingFibreMatrix (n k L : ℕ) (hk : 2 * k ≤ n) (v : EuclideanSpace ℝ (Fin (L - k + 1))) (x : BinaryWord n) :

                                                                                                                                                              The Hamming window fibre matrix with its rows enumerated by the window dimension.

                                                                                                                                                              Equations
                                                                                                                                                              Instances For
                                                                                                                                                                theorem MetricCodes.Boolean.hammingFibreMatrix_transpose_mul {n k L : ℕ} (hk : 2 * k ≤ n) (hkL : k ≤ L) (hLn : L + k ≤ n) (v : EuclideanSpace ℝ (Fin (L - k + 1))) (hunit : ‖v‖ = 1) (hv : ∀ (j : Fin (L - k + 1)), 0 ≤ v.ofLp j) (x : BinaryWord n) :
                                                                                                                                                                (hammingFibreMatrix n k L hk v x).transpose * hammingFibreMatrix n k L hk v x = 1
                                                                                                                                                                noncomputable def MetricCodes.Boolean.hammingProjectionFamily {n k L : ℕ} (hk : 2 * k ≤ n) (hkL : k ≤ L) (hLn : L + k ≤ n) (v : EuclideanSpace ℝ (Fin (L - k + 1))) (hunit : ‖v‖ = 1) (hv : ∀ (j : Fin (L - k + 1)), 0 ≤ v.ofLp j) :

                                                                                                                                                                The hamming projection family used in the binary-code argument.

                                                                                                                                                                Equations
                                                                                                                                                                • One or more equations did not get rendered due to their size.
                                                                                                                                                                Instances For
                                                                                                                                                                  theorem MetricCodes.Boolean.sum_sign_mul_eq_hammingDist {n : ℕ} (x y : BinaryWord n) :
                                                                                                                                                                  ∑ a : Fin n, sign (x a) * sign (y a) = ↑n - 2 * ↑(hammingDist x y)

                                                                                                                                                                  The Euclidean sign vector of a binary word, scaled by the inverse square root of n.

                                                                                                                                                                  Equations
                                                                                                                                                                  Instances For
                                                                                                                                                                    theorem MetricCodes.Boolean.character_insert {n : ℕ} (x : BinaryWord n) (a : Fin n) (S : Finset (Fin n)) (ha : a ∉ S) :
                                                                                                                                                                    character x (insert a S) = sign (x a) * character x S
                                                                                                                                                                    theorem MetricCodes.Boolean.character_erase {n : ℕ} (x : BinaryWord n) (a : Fin n) (S : Finset (Fin n)) (ha : a ∈ S) :
                                                                                                                                                                    character x S = sign (x a) * character x (S.erase a)
                                                                                                                                                                    theorem MetricCodes.Boolean.lowerAt_twist {n : ℕ} (x : BinaryWord n) (a : Fin n) (f : Function n) :
                                                                                                                                                                    lowerAt a (twist x f) = sign (x a) • twist x (lowerAt a f)
                                                                                                                                                                    theorem MetricCodes.Boolean.raiseAt_twist {n : ℕ} (x : BinaryWord n) (a : Fin n) (f : Function n) :
                                                                                                                                                                    raiseAt a (twist x f) = sign (x a) • twist x (raiseAt a f)

                                                                                                                                                                    The Euclidean vector of matrix entries used to express the Hilbert–Schmidt inner product.

                                                                                                                                                                    Equations
                                                                                                                                                                    Instances For
                                                                                                                                                                      def MetricCodes.Boolean.matrixAxisLift {κ : Type u_1} {ι : Type u_2} {ρ : Type u_3} (z : κ → ℝ) (A : Matrix ι ρ ℝ) :
                                                                                                                                                                      Matrix (κ × ι) ρ ℝ

                                                                                                                                                                      The matrix axis lift used in the binary-code argument.

                                                                                                                                                                      Equations
                                                                                                                                                                      Instances For
                                                                                                                                                                        theorem MetricCodes.Boolean.matrixAxisLift_transpose_mul {κ : Type u_1} {ι : Type u_2} {ρ : Type u_3} [Fintype κ] [Fintype ι] (z w : κ → ℝ) (A B : Matrix ι ρ ℝ) :
                                                                                                                                                                        (matrixAxisLift z A).transpose * matrixAxisLift w B = (∑ a : κ, z a * w a) • (A.transpose * B)
                                                                                                                                                                        def MetricCodes.Boolean.matrixAxisResidual {X : Type u_1} {κ : Type u_2} {D d : ℕ} (P : ProjectionFamily X D d) (axis : X → κ → ℝ) (B : Matrix (κ × Fin D) (Fin D) ℝ) (c : ℝ) (x : X) :
                                                                                                                                                                        Matrix (κ × Fin D) (Fin D) ℝ

                                                                                                                                                                        The axis-lifted projection minus the scaled channel image of that projection.

                                                                                                                                                                        Equations
                                                                                                                                                                        Instances For
                                                                                                                                                                          def MetricCodes.Boolean.matrixAxisGramFeature {X : Type u_1} {κ : Type u_2} {D d : ℕ} (P : ProjectionFamily X D d) (axis : X → κ → ℝ) (B : Matrix (κ × Fin D) (Fin D) ℝ) (c : ℝ) (x : X) :

                                                                                                                                                                          The matrix axis gram feature used in the binary-code argument.

                                                                                                                                                                          Equations
                                                                                                                                                                          Instances For
                                                                                                                                                                            theorem MetricCodes.Boolean.matrixAxisResidual_gram {X : Type u_1} {κ : Type u_2} [Fintype κ] {D d : ℕ} (P : ProjectionFamily X D d) (axis : X → κ → ℝ) (B : Matrix (κ × Fin D) (Fin D) ℝ) (c lam : ℝ) (hB : B.transpose * B = 1) (haxis : ∀ (x : X), B.transpose * matrixAxisLift (axis x) (P.projection x) = c • P.projection x) (hsq : c ^ 2 = lam) (x y : X) :
                                                                                                                                                                            inner ℝ (matrixAxisGramFeature P axis B c x) (matrixAxisGramFeature P axis B c y) = (∑ a : κ, axis x a * axis y a - lam) * P.overlap x y
                                                                                                                                                                            theorem MetricCodes.Boolean.raise_harmonicEmbedding {n k : ℕ} (f : Function n) (r : ℕ) (hbound : 2 * k + (r + 1) ≤ n) :
                                                                                                                                                                            theorem MetricCodes.Boolean.lower_harmonicEmbedding {n k : ℕ} (f : Function n) (hf : IsHarmonic k f) (r : ℕ) (hbound : 2 * k + (r + 1) ≤ n) :
                                                                                                                                                                            noncomputable def MetricCodes.Boolean.hammingSourceChannelCoefficient (n k L : ℕ) (m i : Fin (L - k + 1)) :

                                                                                                                                                                            The Hamming Jacobi entry rescaled by the square roots of the source and target layer dimensions.

                                                                                                                                                                            Equations
                                                                                                                                                                            Instances For
                                                                                                                                                                              theorem MetricCodes.Boolean.hammingSourceChannelCoefficient_mul_sqrt_choose {n k L : ℕ} (hkL : k ≤ L) (hLn : L + k ≤ n) (m i : Fin (L - k + 1)) :
                                                                                                                                                                              hammingSourceChannelCoefficient n k L m i * √↑(n.choose (k + ↑i)) = hammingJacobiMatrix n k L m i * √↑(n.choose (k + ↑m))
                                                                                                                                                                              theorem MetricCodes.Boolean.hammingSourceChannelCoefficient_nonneg {n k L : ℕ} (hn : 0 < n) (hkL : k ≤ L) (hLn : L + k ≤ n) (m i : Fin (L - k + 1)) :
                                                                                                                                                                              theorem MetricCodes.Boolean.hammingRecurrenceWeight_eigenrecurrence {n k L : ℕ} (hkL : k ≤ L) (hLn : L + k ≤ n) (v : EuclideanSpace ℝ (Fin (L - k + 1))) (lam : ℝ) (heigen : (Matrix.toEuclideanLin (hammingJacobiMatrix n k L)) v = lam • v) (m : Fin (L - k + 1)) :
                                                                                                                                                                              ∑ i : Fin (L - k + 1), hammingSourceChannelCoefficient n k L m i * hammingRecurrenceWeight n k L v i = lam * hammingRecurrenceWeight n k L v m
                                                                                                                                                                              theorem MetricCodes.Boolean.hammingRecurrenceWeight_pos_of_pos {n k L : ℕ} (hkL : k ≤ L) (hLn : L + k ≤ n) (v : EuclideanSpace ℝ (Fin (L - k + 1))) (hv : ∀ (i : Fin (L - k + 1)), 0 < v.ofLp i) (i : Fin (L - k + 1)) :
                                                                                                                                                                              theorem MetricCodes.Boolean.hammingFibreAmplitude_pos_of_pos {n k L : ℕ} (hkL : k ≤ L) (hLn : L + k ≤ n) (v : EuclideanSpace ℝ (Fin (L - k + 1))) (hunit : ‖v‖ = 1) (hv : ∀ (i : Fin (L - k + 1)), 0 < v.ofLp i) (i : Fin (L - k + 1)) :
                                                                                                                                                                              noncomputable def MetricCodes.Boolean.hammingAdjacentBlockCoefficient (n k L : ℕ) (v : EuclideanSpace ℝ (Fin (L - k + 1))) (lam : ℝ) (target source : Fin (L - k + 1)) :

                                                                                                                                                                              The square-root weight for an adjacent channel block, normalized by the eigenvalue and source recurrence weight.

                                                                                                                                                                              Equations
                                                                                                                                                                              • One or more equations did not get rendered due to their size.
                                                                                                                                                                              Instances For
                                                                                                                                                                                theorem MetricCodes.Boolean.hammingAdjacentBlockCoefficient_sq {n k L : ℕ} (hn : 0 < n) (hkL : k ≤ L) (hLn : L + k ≤ n) (v : EuclideanSpace ℝ (Fin (L - k + 1))) (hv : ∀ (i : Fin (L - k + 1)), 0 < v.ofLp i) (lam : ℝ) (hlam : 0 < lam) (target source : Fin (L - k + 1)) :
                                                                                                                                                                                hammingAdjacentBlockCoefficient n k L v lam target source ^ 2 = hammingSourceChannelCoefficient n k L source target * hammingRecurrenceWeight n k L v target / (lam * hammingRecurrenceWeight n k L v source)
                                                                                                                                                                                theorem MetricCodes.Boolean.hammingAdjacentBlockCoefficient_sq_sum {n k L : ℕ} (hn : 0 < n) (hkL : k ≤ L) (hLn : L + k ≤ n) (v : EuclideanSpace ℝ (Fin (L - k + 1))) (hv : ∀ (i : Fin (L - k + 1)), 0 < v.ofLp i) (lam : ℝ) (hlam : 0 < lam) (heigen : (Matrix.toEuclideanLin (hammingJacobiMatrix n k L)) v = lam • v) (source : Fin (L - k + 1)) :
                                                                                                                                                                                ∑ target : Fin (L - k + 1), hammingAdjacentBlockCoefficient n k L v lam target source ^ 2 = 1
                                                                                                                                                                                theorem MetricCodes.Boolean.hammingAdjacentBlockCoefficient_amplitude_identity {n k L : ℕ} (hn : 0 < n) (hkL : k ≤ L) (hLn : L + k ≤ n) (v : EuclideanSpace ℝ (Fin (L - k + 1))) (hunit : ‖v‖ = 1) (hv : ∀ (i : Fin (L - k + 1)), 0 < v.ofLp i) (lam : ℝ) (hlam : 0 < lam) (target source : Fin (L - k + 1)) :
                                                                                                                                                                                hammingAdjacentBlockCoefficient n k L v lam target source * hammingFibreAmplitude n k L v target * √(hammingSourceChannelCoefficient n k L source target) = hammingAdjacentBlockCoefficient n k L v lam target source ^ 2 * √lam * hammingFibreAmplitude n k L v source
                                                                                                                                                                                theorem MetricCodes.Boolean.hammingAdjacentBlockCoefficient_amplitude_sum {n k L : ℕ} (hn : 0 < n) (hkL : k ≤ L) (hLn : L + k ≤ n) (v : EuclideanSpace ℝ (Fin (L - k + 1))) (hunit : ‖v‖ = 1) (hv : ∀ (i : Fin (L - k + 1)), 0 < v.ofLp i) (lam : ℝ) (hlam : 0 < lam) (heigen : (Matrix.toEuclideanLin (hammingJacobiMatrix n k L)) v = lam • v) (source : Fin (L - k + 1)) :
                                                                                                                                                                                ∑ target : Fin (L - k + 1), hammingAdjacentBlockCoefficient n k L v lam target source * hammingFibreAmplitude n k L v target * √(hammingSourceChannelCoefficient n k L source target) = √lam * hammingFibreAmplitude n k L v source
                                                                                                                                                                                theorem MetricCodes.Boolean.IsLevel.smul {n i : ℕ} {f : Function n} (hf : IsLevel i f) (c : ℝ) :
                                                                                                                                                                                IsLevel i (c • f)
                                                                                                                                                                                theorem MetricCodes.Boolean.IsLevel.lowerAt {n i : ℕ} {f : Function n} (hf : IsLevel (i + 1) f) (a : Fin n) :
                                                                                                                                                                                theorem MetricCodes.Boolean.IsLevel.raiseAt {n i : ℕ} {f : Function n} (hf : IsLevel i f) (a : Fin n) :

                                                                                                                                                                                The indicator function of the subset specified by a Hamming window index.

                                                                                                                                                                                Equations
                                                                                                                                                                                Instances For
                                                                                                                                                                                  noncomputable def MetricCodes.Boolean.hammingAdjacentChannel (n k L : ℕ) (target source : Fin (L - k + 1)) (f : Function n) :

                                                                                                                                                                                  The deletion or insertion channel between adjacent window levels, and zero otherwise.

                                                                                                                                                                                  Equations
                                                                                                                                                                                  • One or more equations did not get rendered due to their size.
                                                                                                                                                                                  Instances For
                                                                                                                                                                                    theorem MetricCodes.Boolean.hammingAdjacentChannel_isometry {n k L : ℕ} (hkL : k ≤ L) (hLn : L + k ≤ n) (target source : Fin (L - k + 1)) (hadjacent : ↑target + 1 = ↑source ∨ ↑source + 1 = ↑target) (f g : Function n) (hf : IsLevel (k + ↑source) f) :
                                                                                                                                                                                    coordinateDot (hammingAdjacentChannel n k L target source f) (hammingAdjacentChannel n k L target source g) = dot f g
                                                                                                                                                                                    theorem MetricCodes.Boolean.hammingAdjacentChannel_orthogonal (n k L : ℕ) (target source other : Fin (L - k + 1)) (hne : source ≠ other) (f g : Function n) :
                                                                                                                                                                                    coordinateDot (hammingAdjacentChannel n k L target source f) (hammingAdjacentChannel n k L target other g) = 0
                                                                                                                                                                                    theorem MetricCodes.Boolean.hammingAdjacentChannel_isLevel (n k L : ℕ) (target source : Fin (L - k + 1)) (f : Function n) (hf : IsLevel (k + ↑source) f) (a : Fin n) :
                                                                                                                                                                                    IsLevel (k + ↑target) (hammingAdjacentChannel n k L target source f a)
                                                                                                                                                                                    theorem MetricCodes.Boolean.hammingAdjacentChannel_restricted_coordinateDot (n k L : ℕ) (target source other : Fin (L - k + 1)) (f g : Function n) (hf : IsLevel (k + ↑source) f) (hg : IsLevel (k + ↑other) g) :
                                                                                                                                                                                    ∑ a : Fin n, ∑ S : Level n (k + ↑target), hammingAdjacentChannel n k L target source f a ↑S * hammingAdjacentChannel n k L target other g a ↑S = coordinateDot (hammingAdjacentChannel n k L target source f) (hammingAdjacentChannel n k L target other g)
                                                                                                                                                                                    theorem MetricCodes.Boolean.hammingSourceChannelCoefficient_eq_zero_of_not_adjacent (n k L : ℕ) (source target : Fin (L - k + 1)) (hnot : ¬(↑target + 1 = ↑source ∨ ↑source + 1 = ↑target)) :
                                                                                                                                                                                    hammingSourceChannelCoefficient n k L source target = 0
                                                                                                                                                                                    noncomputable def MetricCodes.Boolean.hammingWindowChannelMatrix (n k L : ℕ) (v : EuclideanSpace ℝ (Fin (L - k + 1))) (lam : ℝ) :

                                                                                                                                                                                    The weighted adjacent-channel matrix in the Hamming window basis.

                                                                                                                                                                                    Equations
                                                                                                                                                                                    • One or more equations did not get rendered due to their size.
                                                                                                                                                                                    Instances For
                                                                                                                                                                                      theorem MetricCodes.Boolean.hammingWindowChannelMatrix_pairing (n k L : ℕ) (v : EuclideanSpace ℝ (Fin (L - k + 1))) (lam : ℝ) (Q R : HammingWindowIndex n k L) :
                                                                                                                                                                                      ∑ p : Fin n × HammingWindowIndex n k L, hammingWindowChannelMatrix n k L v lam p Q * hammingWindowChannelMatrix n k L v lam p R = ∑ target : Fin (L - k + 1), hammingAdjacentBlockCoefficient n k L v lam target Q.fst * hammingAdjacentBlockCoefficient n k L v lam target R.fst * coordinateDot (hammingAdjacentChannel n k L target Q.fst (hammingWindowBasis n k L Q)) (hammingAdjacentChannel n k L target R.fst (hammingWindowBasis n k L R))
                                                                                                                                                                                      theorem MetricCodes.Boolean.hammingWindowChannelMatrix_transpose_mul {n k L : ℕ} (hn : 0 < n) (hkL : k ≤ L) (hLn : L + k ≤ n) (v : EuclideanSpace ℝ (Fin (L - k + 1))) (hv : ∀ (i : Fin (L - k + 1)), 0 < v.ofLp i) (lam : ℝ) (hlam : 0 < lam) (heigen : (Matrix.toEuclideanLin (hammingJacobiMatrix n k L)) v = lam • v) :
                                                                                                                                                                                      noncomputable def MetricCodes.Boolean.hammingChannelMatrix (n k L : ℕ) (v : EuclideanSpace ℝ (Fin (L - k + 1))) (lam : ℝ) :

                                                                                                                                                                                      The Hamming window channel matrix with both window indices enumerated by their total dimension.

                                                                                                                                                                                      Equations
                                                                                                                                                                                      • One or more equations did not get rendered due to their size.
                                                                                                                                                                                      Instances For
                                                                                                                                                                                        theorem MetricCodes.Boolean.hammingChannelMatrix_transpose_mul {n k L : ℕ} (hn : 0 < n) (hkL : k ≤ L) (hLn : L + k ≤ n) (v : EuclideanSpace ℝ (Fin (L - k + 1))) (hv : ∀ (i : Fin (L - k + 1)), 0 < v.ofLp i) (lam : ℝ) (hlam : 0 < lam) (heigen : (Matrix.toEuclideanLin (hammingJacobiMatrix n k L)) v = lam • v) :
                                                                                                                                                                                        theorem MetricCodes.Boolean.hammingPositiveRadicalSymmetrization {d e a b N r : ℝ} (hd : 0 < d) (he : 0 < e) (ha : 0 < a) (hb : 0 < b) (hN : 0 < N) (hcross : d * b = e * a) :
                                                                                                                                                                                        r / (N * a) * √d = r / (N * √(a * b)) * √e

                                                                                                                                                                                        The squared deletion-channel coefficient relating levels i and i + 1 in harmonic degree k.

                                                                                                                                                                                        Equations
                                                                                                                                                                                        Instances For

                                                                                                                                                                                          The squared insertion-channel coefficient relating levels i and i + 1 in harmonic degree k.

                                                                                                                                                                                          Equations
                                                                                                                                                                                          Instances For
                                                                                                                                                                                            theorem MetricCodes.Boolean.hammingDeletionChannelSquare_mul_sqrt_choose {n k i : ℕ} (hn : 0 < n) :
                                                                                                                                                                                            k ≤ i → ∀ (hboundary : i + k < n), hammingDeletionChannelSquare n k i * √↑(n.choose i) = hammingJacobiEntry n k i * √↑(n.choose (i + 1))
                                                                                                                                                                                            theorem MetricCodes.Boolean.hammingInsertionChannelSquare_mul_sqrt_choose {n k i : ℕ} (hn : 0 < n) :
                                                                                                                                                                                            k ≤ i → ∀ (hboundary : i + k < n), hammingInsertionChannelSquare n k i * √↑(n.choose (i + 1)) = hammingJacobiEntry n k i * √↑(n.choose i)
                                                                                                                                                                                            theorem MetricCodes.Boolean.hammingSourceChannelCoefficient_eq_deletion {n k L : ℕ} (hn : 0 < n) (hkL : k ≤ L) (hLn : L + k ≤ n) (source target : Fin (L - k + 1)) (hadjacent : ↑target + 1 = ↑source) :
                                                                                                                                                                                            hammingSourceChannelCoefficient n k L source target = hammingDeletionChannelSquare n k (k + ↑target)
                                                                                                                                                                                            theorem MetricCodes.Boolean.hammingSourceChannelCoefficient_eq_insertion {n k L : ℕ} (hn : 0 < n) (hkL : k ≤ L) (hLn : L + k ≤ n) (source target : Fin (L - k + 1)) (hadjacent : ↑source + 1 = ↑target) :
                                                                                                                                                                                            theorem MetricCodes.Boolean.dot_lowerAt_eq_raiseAt {n : ℕ} (a : Fin n) (f g : Function n) :
                                                                                                                                                                                            dot (lowerAt a f) g = dot f (raiseAt a g)
                                                                                                                                                                                            theorem MetricCodes.Boolean.sum_dot_twist_raiseAt {n : ℕ} (x : BinaryWord n) (f g : Function n) :
                                                                                                                                                                                            ∑ a : Fin n, dot f (twist x (raiseAt a g)) = dot f (twist x (raise g))
                                                                                                                                                                                            theorem MetricCodes.Boolean.sum_dot_twist_lowerAt {n : ℕ} (x : BinaryWord n) (f g : Function n) :
                                                                                                                                                                                            ∑ a : Fin n, dot f (twist x (lowerAt a g)) = dot f (twist x (lower g))

                                                                                                                                                                                            The coordinate-valued function obtained by tensoring f with the Hamming axis of x.

                                                                                                                                                                                            Equations
                                                                                                                                                                                            Instances For
                                                                                                                                                                                              theorem MetricCodes.Boolean.hammingSqrtDivProduct {r a b : ℝ} (hr : 0 ≤ r) (ha : 0 < a) (hb : 0 < b) :
                                                                                                                                                                                              √(r / (a * b)) = (√a)⁻¹ * (√b)⁻¹ * √r
                                                                                                                                                                                              theorem MetricCodes.Boolean.hammingSourceChannelCoefficient_sqrt_deletion {n k L : ℕ} (hn : 0 < n) (hkL : k ≤ L) (hLn : L + k ≤ n) (source target : Fin (L - k + 1)) (hadjacent : ↑target + 1 = ↑source) :
                                                                                                                                                                                              √(hammingSourceChannelCoefficient n k L source target) = (√↑n)⁻¹ * (√(↑k + ↑↑source))⁻¹ * √(harmonicCoefficient n k ↑source)
                                                                                                                                                                                              theorem MetricCodes.Boolean.hammingSourceChannelCoefficient_sqrt_insertion {n k L : ℕ} (hn : 0 < n) (hkL : k ≤ L) (hLn : L + k ≤ n) (source target : Fin (L - k + 1)) (hadjacent : ↑source + 1 = ↑target) :
                                                                                                                                                                                              √(hammingSourceChannelCoefficient n k L source target) = (√↑n)⁻¹ * (√(↑n - (↑k + ↑↑source)))⁻¹ * √(harmonicCoefficient n k ↑target)
                                                                                                                                                                                              theorem MetricCodes.Boolean.hammingAdjacentChannel_axis_inner {n k L : ℕ} (hn : 0 < n) (hkL : k ≤ L) (hLn : L + k ≤ n) (x : BinaryWord n) (target source : Fin (L - k + 1)) (f h : Function n) (hh : IsHarmonic k h) :
                                                                                                                                                                                              coordinateDot (hammingAdjacentChannel n k L target source f) (hammingAxisTensor x (wordHarmonicEmbedding x k (↑target) h)) = √(hammingSourceChannelCoefficient n k L source target) * dot f (wordHarmonicEmbedding x k (↑source) h)
                                                                                                                                                                                              theorem MetricCodes.Boolean.hammingAdjacentChannel_restricted_axisDot (n k L : ℕ) (x : BinaryWord n) (target source : Fin (L - k + 1)) (f g : Function n) (hf : IsLevel (k + ↑source) f) (hg : IsLevel (k + ↑target) g) :
                                                                                                                                                                                              ∑ a : Fin n, ∑ S : Level n (k + ↑target), hammingAdjacentChannel n k L target source f a ↑S * ((hammingAxis x).ofLp a * g ↑S) = coordinateDot (hammingAdjacentChannel n k L target source f) (hammingAxisTensor x g)
                                                                                                                                                                                              theorem MetricCodes.Boolean.hammingWindowChannelMatrix_transpose_axis_fibre {n k L : ℕ} (hn : 0 < n) (hk : 2 * k ≤ n) (hkL : k ≤ L) (hLn : L + k ≤ n) (v : EuclideanSpace ℝ (Fin (L - k + 1))) (hunit : ‖v‖ = 1) (hv : ∀ (i : Fin (L - k + 1)), 0 < v.ofLp i) (lam : ℝ) (hlam : 0 < lam) (heigen : (Matrix.toEuclideanLin (hammingJacobiMatrix n k L)) v = lam • v) (x : BinaryWord n) :
                                                                                                                                                                                              theorem MetricCodes.Boolean.hammingChannelMatrix_transpose_axis_fibre {n k L : ℕ} (hn : 0 < n) (hk : 2 * k ≤ n) (hkL : k ≤ L) (hLn : L + k ≤ n) (v : EuclideanSpace ℝ (Fin (L - k + 1))) (hunit : ‖v‖ = 1) (hv : ∀ (i : Fin (L - k + 1)), 0 < v.ofLp i) (lam : ℝ) (hlam : 0 < lam) (heigen : (Matrix.toEuclideanLin (hammingJacobiMatrix n k L)) v = lam • v) (x : BinaryWord n) :
                                                                                                                                                                                              (hammingChannelMatrix n k L v lam).transpose * matrixAxisLift (fun (a : Fin n) => (hammingAxis x).ofLp a) (hammingFibreMatrix n k L hk v x) = √lam • hammingFibreMatrix n k L hk v x
                                                                                                                                                                                              theorem MetricCodes.Boolean.matrixAxisLift_mul {κ : Type u_1} {ι : Type u_2} {ρ : Type u_3} {σ : Type u_4} [Fintype ρ] (z : κ → ℝ) (A : Matrix ι ρ ℝ) (C : Matrix ρ σ ℝ) :
                                                                                                                                                                                              theorem MetricCodes.Boolean.hammingChannelMatrix_transpose_axis_projection {n k L : ℕ} (hn : 0 < n) (hk : 2 * k ≤ n) (hkL : k ≤ L) (hLn : L + k ≤ n) (v : EuclideanSpace ℝ (Fin (L - k + 1))) (hunit : ‖v‖ = 1) (hv : ∀ (i : Fin (L - k + 1)), 0 < v.ofLp i) (lam : ℝ) (hlam : 0 < lam) (heigen : (Matrix.toEuclideanLin (hammingJacobiMatrix n k L)) v = lam • v) (x : BinaryWord n) :
                                                                                                                                                                                              (hammingChannelMatrix n k L v lam).transpose * matrixAxisLift (fun (a : Fin n) => (hammingAxis x).ofLp a) ((hammingProjectionFamily hk hkL hLn v hunit ⋯).projection x) = √lam • (hammingProjectionFamily hk hkL hLn v hunit ⋯).projection x
                                                                                                                                                                                              noncomputable def MetricCodes.Boolean.hammingProjectionGramFeature {n k L : ℕ} (hk : 2 * k ≤ n) (hkL : k ≤ L) (hLn : L + k ≤ n) (v : EuclideanSpace ℝ (Fin (L - k + 1))) (hunit : ‖v‖ = 1) (hv : ∀ (i : Fin (L - k + 1)), 0 < v.ofLp i) (lam : ℝ) (x : BinaryWord n) :

                                                                                                                                                                                              The hamming projection gram feature used in the binary-code argument.

                                                                                                                                                                                              Equations
                                                                                                                                                                                              • One or more equations did not get rendered due to their size.
                                                                                                                                                                                              Instances For
                                                                                                                                                                                                theorem MetricCodes.Boolean.hammingProjectionGramFeature_inner {n k L : ℕ} (hn : 0 < n) (hk : 2 * k ≤ n) (hkL : k ≤ L) (hLn : L + k ≤ n) (v : EuclideanSpace ℝ (Fin (L - k + 1))) (hunit : ‖v‖ = 1) (hv : ∀ (i : Fin (L - k + 1)), 0 < v.ofLp i) (lam : ℝ) (hlam : 0 < lam) (heigen : (Matrix.toEuclideanLin (hammingJacobiMatrix n k L)) v = lam • v) (x y : BinaryWord n) :
                                                                                                                                                                                                inner ℝ (hammingProjectionGramFeature hk hkL hLn v hunit hv lam x) (hammingProjectionGramFeature hk hkL hLn v hunit hv lam y) = (hammingCorrelation x y - lam) * (hammingProjectionFamily hk hkL hLn v hunit ⋯).overlap x y

                                                                                                                                                                                                The word support used in the metric-code argument.

                                                                                                                                                                                                Equations
                                                                                                                                                                                                Instances For
                                                                                                                                                                                                  @[simp]
                                                                                                                                                                                                  theorem MetricCodes.mem_wordSupport {n : ℕ} (x : BinaryWord n) (i : Fin n) :

                                                                                                                                                                                                  The binary word whose true coordinates are exactly the elements of s.

                                                                                                                                                                                                  Equations
                                                                                                                                                                                                  Instances For
                                                                                                                                                                                                    @[simp]
                                                                                                                                                                                                    theorem MetricCodes.wordOfSupport_apply {n : ℕ} (s : Finset (Fin n)) (i : Fin n) :
                                                                                                                                                                                                    def MetricCodes.johnsonDist {n w : ℕ} (x y : JohnsonSphere n w) :

                                                                                                                                                                                                    The johnson dist used in the metric-code argument.

                                                                                                                                                                                                    Equations
                                                                                                                                                                                                    Instances For

                                                                                                                                                                                                      Translate a binary word by coordinatewise exclusive-or with x.

                                                                                                                                                                                                      Equations
                                                                                                                                                                                                      Instances For

                                                                                                                                                                                                        The finite set of length-n binary words of weight w.

                                                                                                                                                                                                        Equations
                                                                                                                                                                                                        Instances For

                                                                                                                                                                                                          The finite set of binary words at Hamming distance exactly r from x.

                                                                                                                                                                                                          Equations
                                                                                                                                                                                                          Instances For
                                                                                                                                                                                                            @[simp]

                                                                                                                                                                                                            The words of C whose translate by z has weight w.

                                                                                                                                                                                                            Equations
                                                                                                                                                                                                            Instances For

                                                                                                                                                                                                              Translate the localized code by z into the weight-w shell.

                                                                                                                                                                                                              Equations
                                                                                                                                                                                                              Instances For
                                                                                                                                                                                                                theorem MetricCodes.bassalygo_elias_bound {n d w B : ℕ} (C : Finset (BinaryWord n)) (hC : IsBinaryCode d C) (hB : ∀ D ⊆ weightShell n w, IsBinaryCode d D → D.card ≤ B) :
                                                                                                                                                                                                                C.card * n.choose w ≤ 2 ^ n * B

                                                                                                                                                                                                                The preceding binomial used in the metric-code argument.

                                                                                                                                                                                                                Equations
                                                                                                                                                                                                                Instances For
                                                                                                                                                                                                                  theorem MetricCodes.choose_monotone_to_half (n : ℕ) {i j : ℕ} (hij : i ≤ j) (hj : j ≤ n / 2) :
                                                                                                                                                                                                                  n.choose i ≤ n.choose j

                                                                                                                                                                                                                  The johnson ambient dimension used in the metric-code argument.

                                                                                                                                                                                                                  Equations
                                                                                                                                                                                                                  Instances For
                                                                                                                                                                                                                    theorem MetricCodes.johnsonAmbientDimension_eq_of_fibre (n p q L : ℕ) (hpq : p + q ≤ L) (hL : L ≤ n / 2) :
                                                                                                                                                                                                                    @[reducible, inline]

                                                                                                                                                                                                                    The euclidean used in the spherical-code argument.

                                                                                                                                                                                                                    Equations
                                                                                                                                                                                                                    Instances For
                                                                                                                                                                                                                      noncomputable def SpherePacking.factorialLogError (n : ℕ) :

                                                                                                                                                                                                                      The error in the normalized factorial-log approximation log (n!) / n = log n - 1.

                                                                                                                                                                                                                      Equations
                                                                                                                                                                                                                      Instances For
                                                                                                                                                                                                                        theorem SpherePacking.scaled_log_factorial_identity (m n : ℕ) (hm : m ≠ 0) (hn : n ≠ 0) :
                                                                                                                                                                                                                        Real.log ↑m.factorial / ↑n - ↑m / ↑n * Real.log ↑n = ↑m / ↑n * (factorialLogError m + Real.log (↑m / ↑n) - 1)
                                                                                                                                                                                                                        theorem SpherePacking.tendsto_scaled_log_factorial_sub (k : ℕ → ℕ) (u : ℝ) (hk : Filter.Tendsto k Filter.atTop Filter.atTop) (hratio : Filter.Tendsto (fun (n : ℕ) => ↑(k n) / ↑n) Filter.atTop (nhds u)) (hu : u ≠ 0) :
                                                                                                                                                                                                                        Filter.Tendsto (fun (n : ℕ) => Real.log ↑(k n).factorial / ↑n - ↑(k n) / ↑n * Real.log ↑n) Filter.atTop (nhds (u * Real.log u - u))
                                                                                                                                                                                                                        theorem SpherePacking.log_add_choose_div_eq (a b n : ℕ) :
                                                                                                                                                                                                                        Real.log ↑((a + b).choose a) / ↑n = Real.log ↑(a + b).factorial / ↑n - Real.log ↑a.factorial / ↑n - Real.log ↑b.factorial / ↑n
                                                                                                                                                                                                                        theorem SpherePacking.tendsto_log_add_choose_div (k l : ℕ → ℕ) (u v : ℝ) (hk : Filter.Tendsto k Filter.atTop Filter.atTop) (hl : Filter.Tendsto l Filter.atTop Filter.atTop) (hku : Filter.Tendsto (fun (n : ℕ) => ↑(k n) / ↑n) Filter.atTop (nhds u)) (hlv : Filter.Tendsto (fun (n : ℕ) => ↑(l n) / ↑n) Filter.atTop (nhds v)) (hu : 0 < u) (hv : 0 < v) :
                                                                                                                                                                                                                        Filter.Tendsto (fun (n : ℕ) => Real.log ↑((k n + l n).choose (k n)) / ↑n) Filter.atTop (nhds ((u + v) * Real.log (u + v) - u * Real.log u - v * Real.log v))
                                                                                                                                                                                                                        noncomputable def MetricCodes.Hamming.validCodes (n d : ℕ) :

                                                                                                                                                                                                                        The finite family of length-n binary codes with minimum distance at least d.

                                                                                                                                                                                                                        Equations
                                                                                                                                                                                                                        Instances For
                                                                                                                                                                                                                          noncomputable def MetricCodes.Hamming.codeNumber (n d : ℕ) :

                                                                                                                                                                                                                          The code number used in the binary-code argument.

                                                                                                                                                                                                                          Equations
                                                                                                                                                                                                                          Instances For
                                                                                                                                                                                                                            theorem MetricCodes.Hamming.codeNumber_real_le_of_forall {n d : ℕ} {B : ℝ} (h : ∀ (C : Finset (BinaryWord n)), IsBinaryCode d C → ↑C.card ≤ B) :
                                                                                                                                                                                                                            ↑(codeNumber n d) ≤ B

                                                                                                                                                                                                                            The ambient dimension used in the binary-code argument.

                                                                                                                                                                                                                            Equations
                                                                                                                                                                                                                            Instances For
                                                                                                                                                                                                                              noncomputable def MetricCodes.Hamming.threshold (n d : ℕ) :

                                                                                                                                                                                                                              The threshold used in the binary-code argument.

                                                                                                                                                                                                                              Equations
                                                                                                                                                                                                                              Instances For
                                                                                                                                                                                                                                theorem MetricCodes.Hamming.threshold_lt_one {n d : ℕ} (hn : 0 < n) (hd : 0 < d) :
                                                                                                                                                                                                                                threshold n d < 1
                                                                                                                                                                                                                                @[reducible, inline]

                                                                                                                                                                                                                                The index used in the binary-code argument.

                                                                                                                                                                                                                                Equations
                                                                                                                                                                                                                                Instances For
                                                                                                                                                                                                                                  @[reducible, inline]

                                                                                                                                                                                                                                  The space used in the binary-code argument.

                                                                                                                                                                                                                                  Equations
                                                                                                                                                                                                                                  Instances For
                                                                                                                                                                                                                                    noncomputable def MetricCodes.Hamming.matrix (n k L : ℕ) :
                                                                                                                                                                                                                                    Matrix (Index k L) (Index k L) ℝ

                                                                                                                                                                                                                                    The matrix used in the binary-code argument.

                                                                                                                                                                                                                                    Equations
                                                                                                                                                                                                                                    Instances For
                                                                                                                                                                                                                                      noncomputable def MetricCodes.Hamming.operator (n k L : ℕ) :

                                                                                                                                                                                                                                      The operator used in the binary-code argument.

                                                                                                                                                                                                                                      Equations
                                                                                                                                                                                                                                      Instances For
                                                                                                                                                                                                                                        noncomputable def MetricCodes.Hamming.continuousOperator (n k L : ℕ) :

                                                                                                                                                                                                                                        The continuous operator used in the binary-code argument.

                                                                                                                                                                                                                                        Equations
                                                                                                                                                                                                                                        Instances For
                                                                                                                                                                                                                                          noncomputable def MetricCodes.Hamming.rayleigh (n k L : ℕ) (x : Space k L) :

                                                                                                                                                                                                                                          The rayleigh used in the binary-code argument.

                                                                                                                                                                                                                                          Equations
                                                                                                                                                                                                                                          Instances For
                                                                                                                                                                                                                                            theorem MetricCodes.Hamming.rayleigh_bddAbove (n k L : ℕ) :
                                                                                                                                                                                                                                            BddAbove (Set.range fun (x : { x : Space k L // x ≠ 0 }) => rayleigh n k L ↑x)
                                                                                                                                                                                                                                            noncomputable def MetricCodes.Hamming.topEigenvalue (n k L : ℕ) :

                                                                                                                                                                                                                                            The top eigenvalue used in the binary-code argument.

                                                                                                                                                                                                                                            Equations
                                                                                                                                                                                                                                            Instances For
                                                                                                                                                                                                                                              theorem MetricCodes.Hamming.rayleigh_le_top (n k L : ℕ) (x : Space k L) (hx : x ≠ 0) :
                                                                                                                                                                                                                                              rayleigh n k L x ≤ topEigenvalue n k L
                                                                                                                                                                                                                                              theorem MetricCodes.Hamming.exists_topEigenvector (n k L : ℕ) :
                                                                                                                                                                                                                                              ∃ (x : Space k L), x ≠ 0 ∧ (operator n k L) x = topEigenvalue n k L • x
                                                                                                                                                                                                                                              theorem MetricCodes.Hamming.rayleigh_eq_inner (n k L : ℕ) (x : Space k L) :
                                                                                                                                                                                                                                              rayleigh n k L x = inner ℝ ((operator n k L) x) x / ‖x‖ ^ 2
                                                                                                                                                                                                                                              @[reducible, inline]
                                                                                                                                                                                                                                              abbrev MetricCodes.Hamming.coordinateAbs (k L : ℕ) (x : Space k L) :
                                                                                                                                                                                                                                              Space k L

                                                                                                                                                                                                                                              The coordinate abs used in the binary-code argument.

                                                                                                                                                                                                                                              Equations
                                                                                                                                                                                                                                              Instances For
                                                                                                                                                                                                                                                theorem MetricCodes.Hamming.coordinateAbs_nonneg (k L : ℕ) (x : Space k L) (p : Index k L) :
                                                                                                                                                                                                                                                0 ≤ (coordinateAbs k L x).ofLp p
                                                                                                                                                                                                                                                theorem MetricCodes.Hamming.coordinateAbs_ne_zero (k L : ℕ) {x : Space k L} (hx : x ≠ 0) :
                                                                                                                                                                                                                                                theorem MetricCodes.Hamming.matrix_entry_nonneg {n k L : ℕ} (hn : 0 < n) (hkL : k ≤ L) (hLn : L + k ≤ n) (p q : Index k L) :
                                                                                                                                                                                                                                                0 ≤ matrix n k L p q
                                                                                                                                                                                                                                                theorem MetricCodes.Hamming.inner_le_inner_coordinateAbs {n k L : ℕ} (hn : 0 < n) (hkL : k ≤ L) (hLn : L + k ≤ n) (x : Space k L) :
                                                                                                                                                                                                                                                inner ℝ ((operator n k L) x) x ≤ inner ℝ ((operator n k L) (coordinateAbs k L x)) (coordinateAbs k L x)
                                                                                                                                                                                                                                                theorem MetricCodes.Hamming.rayleigh_le_coordinateAbs {n k L : ℕ} (hn : 0 < n) (hkL : k ≤ L) (hLn : L + k ≤ n) (x : Space k L) :
                                                                                                                                                                                                                                                rayleigh n k L x ≤ rayleigh n k L (coordinateAbs k L x)
                                                                                                                                                                                                                                                theorem MetricCodes.Hamming.rayleigh_eq_of_eigenvector (n k L : ℕ) (x : Space k L) (hx : x ≠ 0) (eigenvalue : ℝ) (heig : (operator n k L) x = eigenvalue • x) :
                                                                                                                                                                                                                                                rayleigh n k L x = eigenvalue
                                                                                                                                                                                                                                                theorem MetricCodes.Hamming.coordinateAbs_top_rayleigh {n k L : ℕ} (hn : 0 < n) (hkL : k ≤ L) (hLn : L + k ≤ n) (x : Space k L) (hx : x ≠ 0) (heig : (operator n k L) x = topEigenvalue n k L • x) :
                                                                                                                                                                                                                                                theorem MetricCodes.Hamming.exists_nonnegative_topEigenvector {n k L : ℕ} (hn : 0 < n) (hkL : k ≤ L) (hLn : L + k ≤ n) :
                                                                                                                                                                                                                                                ∃ (x : Space k L), x ≠ 0 ∧ (operator n k L) x = topEigenvalue n k L • x ∧ ∀ (p : Index k L), 0 ≤ x.ofLp p
                                                                                                                                                                                                                                                theorem MetricCodes.Hamming.exists_nonnegative_unit_topEigenvector {n k L : ℕ} (hn : 0 < n) (hkL : k ≤ L) (hLn : L + k ≤ n) :
                                                                                                                                                                                                                                                ∃ (x : Space k L), ‖x‖ = 1 ∧ (operator n k L) x = topEigenvalue n k L • x ∧ ∀ (p : Index k L), 0 ≤ x.ofLp p
                                                                                                                                                                                                                                                theorem MetricCodes.Hamming.matrix_adjacent_pos {n k L : ℕ} (hn : 0 < n) (hkL : k ≤ L) (hLn : L + k ≤ n) (p q : Index k L) (hadjacent : ↑p + 1 = ↑q ∨ ↑q + 1 = ↑p) :
                                                                                                                                                                                                                                                0 < matrix n k L p q
                                                                                                                                                                                                                                                theorem MetricCodes.Hamming.nonnegative_eigenvector_zero_propagates {n k L : ℕ} (hn : 0 < n) (hkL : k ≤ L) (hLn : L + k ≤ n) (v : Space k L) (eigenvalue : ℝ) (heigen : (operator n k L) v = eigenvalue • v) (hnonnegative : ∀ (i : Index k L), 0 ≤ v.ofLp i) (p q : Index k L) (hp : v.ofLp p = 0) (hadjacent : ↑p + 1 = ↑q ∨ ↑q + 1 = ↑p) :
                                                                                                                                                                                                                                                v.ofLp q = 0
                                                                                                                                                                                                                                                theorem MetricCodes.Hamming.nonnegative_eigenvector_coordinate_pos {n k L : ℕ} (hn : 0 < n) (hkL : k ≤ L) (hLn : L + k ≤ n) (v : Space k L) (eigenvalue : ℝ) (heigen : (operator n k L) v = eigenvalue • v) (hnonnegative : ∀ (i : Index k L), 0 ≤ v.ofLp i) (hnonzero : v ≠ 0) (i : Index k L) :
                                                                                                                                                                                                                                                0 < v.ofLp i
                                                                                                                                                                                                                                                theorem MetricCodes.Hamming.nonnegative_eigenvalue_pos_of_lt {n k L : ℕ} (hn : 0 < n) (hkL : k < L) (hLn : L + k ≤ n) (v : Space k L) (eigenvalue : ℝ) (heigen : (operator n k L) v = eigenvalue • v) (hnonnegative : ∀ (i : Index k L), 0 ≤ v.ofLp i) (hnonzero : v ≠ 0) :
                                                                                                                                                                                                                                                0 < eigenvalue
                                                                                                                                                                                                                                                theorem MetricCodes.Hamming.exists_positive_unit_topEigenvector {n k L : ℕ} (hn : 0 < n) (hkL : k ≤ L) (hLn : L + k ≤ n) :
                                                                                                                                                                                                                                                ∃ (v : Space k L), ‖v‖ = 1 ∧ (operator n k L) v = topEigenvalue n k L • v ∧ ∀ (i : Index k L), 0 < v.ofLp i
                                                                                                                                                                                                                                                theorem MetricCodes.Hamming.topEigenvalue_pos {n k L : ℕ} (hn : 0 < n) (hkL : k < L) (hLn : L + k ≤ n) :
                                                                                                                                                                                                                                                theorem MetricCodes.Hamming.finite_bound_of_projection_gram {E : Type u_1} [NormedAddCommGroup E] [InnerProductSpace ℝ E] {n k L d : ℕ} (hn : 0 < n) (hd : 0 < d) (C : Finset (BinaryWord n)) (hC : IsBinaryCode d C) (P : ProjectionFamily (BinaryWord n) (ambientDimension n k L) (hammingFibreDimension n k)) (q : BinaryWord n → E) (hrank : 0 < hammingFibreDimension n k) (hgap : threshold n d < topEigenvalue n k L) (hgram : ∀ x ∈ C, ∀ y ∈ C, inner ℝ (q x) (q y) = (hammingCorrelation x y - topEigenvalue n k L) * P.overlap x y) :
                                                                                                                                                                                                                                                ↑C.card ≤ (1 - threshold n d) / (topEigenvalue n k L - threshold n d) * (↑(ambientDimension n k L) / ↑(hammingFibreDimension n k))
                                                                                                                                                                                                                                                theorem MetricCodes.Hamming.finite_codeNumber_bound_of_projection_gram {E : Type u_1} [NormedAddCommGroup E] [InnerProductSpace ℝ E] {n k L d : ℕ} (hn : 0 < n) (hd : 0 < d) (P : ProjectionFamily (BinaryWord n) (ambientDimension n k L) (hammingFibreDimension n k)) (q : BinaryWord n → E) (hrank : 0 < hammingFibreDimension n k) (hgap : threshold n d < topEigenvalue n k L) (hgram : ∀ (x y : BinaryWord n), inner ℝ (q x) (q y) = (hammingCorrelation x y - topEigenvalue n k L) * P.overlap x y) :
                                                                                                                                                                                                                                                ↑(codeNumber n d) ≤ (1 - threshold n d) / (topEigenvalue n k L - threshold n d) * (↑(ambientDimension n k L) / ↑(hammingFibreDimension n k))

                                                                                                                                                                                                                                                The feasible used in the binary-code argument.

                                                                                                                                                                                                                                                Equations
                                                                                                                                                                                                                                                Instances For

                                                                                                                                                                                                                                                  The rate set used in the binary-code argument.

                                                                                                                                                                                                                                                  Equations
                                                                                                                                                                                                                                                  Instances For
                                                                                                                                                                                                                                                    noncomputable def MetricCodes.Hamming.variationalRate (δ : ℝ) :

                                                                                                                                                                                                                                                    The variational rate used in the binary-code argument.

                                                                                                                                                                                                                                                    Equations
                                                                                                                                                                                                                                                    Instances For

                                                                                                                                                                                                                                                      The classical parameter used in the binary-code argument.

                                                                                                                                                                                                                                                      Equations
                                                                                                                                                                                                                                                      Instances For
                                                                                                                                                                                                                                                        noncomputable def MetricCodes.Hamming.classicalRate (δ : ℝ) :

                                                                                                                                                                                                                                                        The classical rate used in the binary-code argument.

                                                                                                                                                                                                                                                        Equations
                                                                                                                                                                                                                                                        Instances For
                                                                                                                                                                                                                                                          theorem MetricCodes.Hamming.classicalParameter_lt_half {δ : ℝ} (hδ : 0 < δ) (hδ' : δ < 1 / 2) :
                                                                                                                                                                                                                                                          theorem MetricCodes.Hamming.classicalParameter_pos {δ : ℝ} (hδ : 0 < δ) (hδ' : δ < 1 / 2) :
                                                                                                                                                                                                                                                          theorem MetricCodes.Hamming.classicalParameter_mul_one_sub {δ : ℝ} (hδ : 0 < δ) (hδ' : δ < 1 / 2) :
                                                                                                                                                                                                                                                          classicalParameter δ * (1 - classicalParameter δ) = (1 / 2 - δ) ^ 2
                                                                                                                                                                                                                                                          theorem MetricCodes.Hamming.hammingGamma_zero {a : ℝ} (ha : 0 < a) (ha' : a < 1) :
                                                                                                                                                                                                                                                          hammingGamma a 0 = 2 * √(a * (1 - a))
                                                                                                                                                                                                                                                          theorem MetricCodes.Hamming.hammingGamma_classicalParameter {δ : ℝ} (hδ : 0 < δ) (hδ' : δ < 1 / 2) :

                                                                                                                                                                                                                                                          The slope 2 / (1 - 2 * a) + 1 used to perturb the Hamming bound parameters.

                                                                                                                                                                                                                                                          Equations
                                                                                                                                                                                                                                                          Instances For
                                                                                                                                                                                                                                                            noncomputable def MetricCodes.Hamming.improvementPath (a b : ℝ) :

                                                                                                                                                                                                                                                            The affine perturbation of a with slope improvementSlope a and parameter b.

                                                                                                                                                                                                                                                            Equations
                                                                                                                                                                                                                                                            Instances For

                                                                                                                                                                                                                                                              The cubic factor remaining after extracting b from the difference of the squared spectral- bound expressions.

                                                                                                                                                                                                                                                              Equations
                                                                                                                                                                                                                                                              • One or more equations did not get rendered due to their size.
                                                                                                                                                                                                                                                              Instances For
                                                                                                                                                                                                                                                                theorem MetricCodes.Hamming.spectralMarginPolynomial_factor (a c b : ℝ) :
                                                                                                                                                                                                                                                                ((a + c * b - b) * (1 - (a + c * b) - b)) ^ 2 - a * (1 - a) * ((a + c * b) * (1 - (a + c * b))) = b * spectralMarginPolynomial a c b
                                                                                                                                                                                                                                                                theorem MetricCodes.Hamming.exists_strict_improving_feasible {δ : ℝ} (hδ : 0 < δ) (hδ' : δ < 1 / 2) :
                                                                                                                                                                                                                                                                ∃ (a : ℝ) (b : ℝ), Feasible δ a b ∧ binaryEntropy a - binaryEntropy b < classicalRate δ
                                                                                                                                                                                                                                                                noncomputable def MetricCodes.Hamming.longitudinalDegree (a : ℝ) (n : ℕ) :

                                                                                                                                                                                                                                                                The longitudinal degree used in the binary-code argument.

                                                                                                                                                                                                                                                                Equations
                                                                                                                                                                                                                                                                Instances For
                                                                                                                                                                                                                                                                  noncomputable def MetricCodes.Hamming.transverseDegree (b : ℝ) (n : ℕ) :

                                                                                                                                                                                                                                                                  The transverse degree used in the binary-code argument.

                                                                                                                                                                                                                                                                  Equations
                                                                                                                                                                                                                                                                  Instances For
                                                                                                                                                                                                                                                                    theorem MetricCodes.Hamming.tendsto_terminal_degree_ratio {a : ℝ} (ha : 0 < a) (r : ℕ) :
                                                                                                                                                                                                                                                                    Filter.Tendsto (fun (n : ℕ) => ↑(longitudinalDegree a n - r) / ↑n) Filter.atTop (nhds a)

                                                                                                                                                                                                                                                                    The normalized coefficient used in the binary-code argument.

                                                                                                                                                                                                                                                                    Equations
                                                                                                                                                                                                                                                                    Instances For
                                                                                                                                                                                                                                                                      theorem MetricCodes.Hamming.hammingJacobiEntry_eq_normalized (n k i : ℕ) (hn : 0 < n) :
                                                                                                                                                                                                                                                                      hammingJacobiEntry n k i = normalizedCoefficient (↑i / ↑n) (↑k / ↑n) (1 / ↑n)
                                                                                                                                                                                                                                                                      theorem MetricCodes.Hamming.tendsto_terminal_coefficient {a b : ℝ} (ha : 0 < a) (ha' : a < 1) (hb : 0 ≤ b) (r : ℕ) :
                                                                                                                                                                                                                                                                      theorem MetricCodes.Hamming.tridiagonal_quadratic_sum (d : ℕ) (c v : ℕ → ℝ) :
                                                                                                                                                                                                                                                                      ∑ p ∈ Finset.range (d + 1), ∑ q ∈ Finset.range (d + 1), (if p + 1 = q then c p else if q + 1 = p then c q else 0) * v q * v p = 2 * ∑ p ∈ Finset.range d, c p * v p * v (p + 1)

                                                                                                                                                                                                                                                                      The terminal indicator used in the binary-code argument.

                                                                                                                                                                                                                                                                      Equations
                                                                                                                                                                                                                                                                      Instances For
                                                                                                                                                                                                                                                                        theorem MetricCodes.Hamming.terminal_indicator_sum (d m : ℕ) (hm : m ≤ d) :
                                                                                                                                                                                                                                                                        ∑ p ∈ Finset.range (d + 1), terminalIndicator d m p = ↑m + 1
                                                                                                                                                                                                                                                                        theorem MetricCodes.Hamming.terminal_indicator_edge_sum (d m : ℕ) (hm : m ≤ d) (c : ℕ → ℝ) :
                                                                                                                                                                                                                                                                        ∑ p ∈ Finset.range d, c p * terminalIndicator d m p * terminalIndicator d m (p + 1) = ∑ r ∈ Finset.range m, c (d - m + r)

                                                                                                                                                                                                                                                                        The terminal vector used in the binary-code argument.

                                                                                                                                                                                                                                                                        Equations
                                                                                                                                                                                                                                                                        Instances For
                                                                                                                                                                                                                                                                          theorem MetricCodes.Hamming.terminalVector_norm_sq (k L m : ℕ) (hm : m ≤ L - k) :
                                                                                                                                                                                                                                                                          ‖terminalVector k L m‖ ^ 2 = ↑m + 1
                                                                                                                                                                                                                                                                          theorem MetricCodes.Hamming.terminalVector_inner (n k L m : ℕ) (hkl : k ≤ L) (hm : m ≤ L - k) :
                                                                                                                                                                                                                                                                          inner ℝ ((operator n k L) (terminalVector k L m)) (terminalVector k L m) = 2 * ∑ r ∈ Finset.range m, hammingJacobiEntry n k (L - m + r)
                                                                                                                                                                                                                                                                          theorem MetricCodes.Hamming.terminalVector_rayleigh (n k L m : ℕ) (hkl : k ≤ L) (hm : m ≤ L - k) :
                                                                                                                                                                                                                                                                          rayleigh n k L (terminalVector k L m) = (2 * ∑ r ∈ Finset.range m, hammingJacobiEntry n k (L - m + r)) / (↑m + 1)
                                                                                                                                                                                                                                                                          theorem MetricCodes.Hamming.terminal_edge_sum_le_top (n k L m : ℕ) (hkl : k ≤ L) (hm : m ≤ L - k) :
                                                                                                                                                                                                                                                                          (2 * ∑ r ∈ Finset.range m, hammingJacobiEntry n k (L - m + r)) / (↑m + 1) ≤ topEigenvalue n k L
                                                                                                                                                                                                                                                                          noncomputable def MetricCodes.Hamming.terminalEdgeRayleigh (a b : ℝ) (m n : ℕ) :

                                                                                                                                                                                                                                                                          The terminal edge rayleigh used in the binary-code argument.

                                                                                                                                                                                                                                                                          Equations
                                                                                                                                                                                                                                                                          • One or more equations did not get rendered due to their size.
                                                                                                                                                                                                                                                                          Instances For
                                                                                                                                                                                                                                                                            theorem MetricCodes.Hamming.tendsto_terminalEdgeRayleigh {a b : ℝ} (ha : 0 < a) (ha' : a < 1) (hb : 0 ≤ b) (m : ℕ) :
                                                                                                                                                                                                                                                                            theorem MetricCodes.Hamming.eventually_topEigenvalue_gt {a b s : ℝ} (hb : 0 ≤ b) (hba : b < a) (ha : a ≤ 1 / 2) (hs : s < hammingGamma a b) :
                                                                                                                                                                                                                                                                            theorem MetricCodes.Hamming.tendsto_complement_longitudinal_ratio {a : ℝ} (ha : 0 ≤ a) (ha' : a ≤ 1) :
                                                                                                                                                                                                                                                                            Filter.Tendsto (fun (n : ℕ) => ↑(n - longitudinalDegree a n) / ↑n) Filter.atTop (nhds (1 - a))
                                                                                                                                                                                                                                                                            theorem MetricCodes.Hamming.ambientDimension_le_mul_choose (n k L : ℕ) (hkL : k ≤ L) (hL : L ≤ n / 2) :
                                                                                                                                                                                                                                                                            ambientDimension n k L ≤ (n + 1) * n.choose L
                                                                                                                                                                                                                                                                            theorem MetricCodes.Hamming.tendsto_logb_ambientDimension {a b : ℝ} (hb : 0 ≤ b) (hba : b < a) (ha : a ≤ 1 / 2) :
                                                                                                                                                                                                                                                                            noncomputable def MetricCodes.Hamming.binaryRate (δ : ℝ) :

                                                                                                                                                                                                                                                                            The binary rate used in the binary-code argument.

                                                                                                                                                                                                                                                                            Equations
                                                                                                                                                                                                                                                                            Instances For
                                                                                                                                                                                                                                                                              theorem MetricCodes.Hamming.tendsto_ceil_distance_ratio {δ : ℝ} (hδ : 0 ≤ δ) :
                                                                                                                                                                                                                                                                              Filter.Tendsto (fun (n : ℕ) => ↑⌈δ * ↑n⌉₊ / ↑n) Filter.atTop (nhds δ)
                                                                                                                                                                                                                                                                              theorem MetricCodes.Hamming.tendsto_threshold_ceil {δ : ℝ} (hδ : 0 ≤ δ) :
                                                                                                                                                                                                                                                                              Filter.Tendsto (fun (n : ℕ) => threshold n ⌈δ * ↑n⌉₊) Filter.atTop (nhds (1 - 2 * δ))
                                                                                                                                                                                                                                                                              theorem MetricCodes.Hamming.ceil_distance_pos {δ : ℝ} (hδ : 0 < δ) {n : ℕ} (hn : 0 < n) :
                                                                                                                                                                                                                                                                              0 < ⌈δ * ↑n⌉₊
                                                                                                                                                                                                                                                                              noncomputable def MetricCodes.Hamming.windowFibreQuotient (a b : ℝ) (n : ℕ) :

                                                                                                                                                                                                                                                                              The window fibre quotient used in the binary-code argument.

                                                                                                                                                                                                                                                                              Equations
                                                                                                                                                                                                                                                                              • One or more equations did not get rendered due to their size.
                                                                                                                                                                                                                                                                              Instances For
                                                                                                                                                                                                                                                                                theorem MetricCodes.Hamming.eventually_windowFibreQuotient_pos {a b : ℝ} (hb : 0 ≤ b) (hba : b < a) (ha : a ≤ 1 / 2) :
                                                                                                                                                                                                                                                                                theorem MetricCodes.Hamming.tendsto_logb_windowFibreQuotient {a b : ℝ} (hb : 0 < b) (hba : b < a) (ha : a ≤ 1 / 2) :
                                                                                                                                                                                                                                                                                theorem MetricCodes.Hamming.tendsto_logb_const_mul_windowFibreQuotient {a b C : ℝ} (hb : 0 < b) (hba : b < a) (ha : a ≤ 1 / 2) (hC : 0 < C) :
                                                                                                                                                                                                                                                                                theorem MetricCodes.Hamming.ceil_distance_le_dimension {δ : ℝ} (hδ : δ ≤ 1) (n : ℕ) :
                                                                                                                                                                                                                                                                                ⌈δ * ↑n⌉₊ ≤ n
                                                                                                                                                                                                                                                                                theorem MetricCodes.Hamming.threshold_ceil_numerator_le_two {δ : ℝ} (hδ : δ ≤ 1) {n : ℕ} (hn : 0 < n) :
                                                                                                                                                                                                                                                                                1 - threshold n ⌈δ * ↑n⌉₊ ≤ 2
                                                                                                                                                                                                                                                                                noncomputable def MetricCodes.Hamming.spectralGap (δ a b : ℝ) :

                                                                                                                                                                                                                                                                                The spectral gap used in the binary-code argument.

                                                                                                                                                                                                                                                                                Equations
                                                                                                                                                                                                                                                                                Instances For
                                                                                                                                                                                                                                                                                  theorem MetricCodes.Hamming.spectralGap_pos {δ a b : ℝ} (h : Feasible δ a b) :
                                                                                                                                                                                                                                                                                  0 < spectralGap δ a b
                                                                                                                                                                                                                                                                                  noncomputable def MetricCodes.Hamming.spectralPrefactor (δ a b : ℝ) :

                                                                                                                                                                                                                                                                                  The spectral prefactor used in the binary-code argument.

                                                                                                                                                                                                                                                                                  Equations
                                                                                                                                                                                                                                                                                  Instances For
                                                                                                                                                                                                                                                                                    theorem MetricCodes.Hamming.rateSet_nonempty_of_interior {δ : ℝ} (hδ : 0 < δ) (hδ' : δ < 1 / 2) :
                                                                                                                                                                                                                                                                                    theorem MetricCodes.Hamming.exists_positive_feasible_of_zero {δ a : ℝ} (h : Feasible δ a 0) :
                                                                                                                                                                                                                                                                                    ∃ (b : ℝ), 0 < b ∧ Feasible δ a b
                                                                                                                                                                                                                                                                                    theorem MetricCodes.Hamming.binaryRate_le_of_eventually_windowFibreQuotient {δ a b C : ℝ} (hb : 0 < b) (hba : b < a) (ha : a ≤ 1 / 2) (hC : 0 < C) (hbound : ∀ᶠ (n : ℕ) in Filter.atTop, ↑(codeNumber n ⌈δ * ↑n⌉₊) ≤ C * windowFibreQuotient a b n) :
                                                                                                                                                                                                                                                                                    theorem MetricCodes.Hamming.binaryRate_le_variationalRate_of_positive_feasible_bounds {δ : ℝ} (hδ : 0 < δ) (hδ' : δ < 1 / 2) (hbound : ∀ ⦃a b : ℝ⦄, Feasible δ a b → 0 < b → ∀ᶠ (n : ℕ) in Filter.atTop, ↑(codeNumber n ⌈δ * ↑n⌉₊) ≤ spectralPrefactor δ a b * windowFibreQuotient a b n) :
                                                                                                                                                                                                                                                                                    theorem MetricCodes.Hamming.finite_bound {n k L d : ℕ} (hn : 0 < n) (hd : 0 < d) (hkL : k < L) (hLn : L + k ≤ n) (hgap : threshold n d < topEigenvalue n k L) :
                                                                                                                                                                                                                                                                                    ↑(codeNumber n d) ≤ (1 - threshold n d) / (topEigenvalue n k L - threshold n d) * (↑(ambientDimension n k L) / ↑(hammingFibreDimension n k))
                                                                                                                                                                                                                                                                                    theorem MetricCodes.Hamming.binaryRate_le_variationalRate {δ : ℝ} (hδ : 0 < δ) (hδ' : δ < 1 / 2) :

                                                                                                                                                                                                                                                                                    The finite family of binary codes of length n and minimum distance at least d.

                                                                                                                                                                                                                                                                                    Equations
                                                                                                                                                                                                                                                                                    Instances For
                                                                                                                                                                                                                                                                                      noncomputable def MetricCodes.Johnson.binaryCodeNumber (n d : ℕ) :

                                                                                                                                                                                                                                                                                      The binary code number used in the Johnson-code argument.

                                                                                                                                                                                                                                                                                      Equations
                                                                                                                                                                                                                                                                                      Instances For

                                                                                                                                                                                                                                                                                        The finite family of minimum-distance-d codes contained in the weight-w shell.

                                                                                                                                                                                                                                                                                        Equations
                                                                                                                                                                                                                                                                                        Instances For
                                                                                                                                                                                                                                                                                          noncomputable def MetricCodes.Johnson.shellCodeNumber (n w d : ℕ) :

                                                                                                                                                                                                                                                                                          The largest cardinality of a minimum-distance-d code in the weight-w shell.

                                                                                                                                                                                                                                                                                          Equations
                                                                                                                                                                                                                                                                                          Instances For
                                                                                                                                                                                                                                                                                            theorem MetricCodes.Johnson.card_le_shellCodeNumber {n w d : ℕ} (C : Finset (BinaryWord n)) (hweight : C ⊆ weightShell n w) (hC : IsBinaryCode d C) :
                                                                                                                                                                                                                                                                                            theorem MetricCodes.Johnson.bassalygo_elias_real {n w d : ℕ} (hw : w ≤ n) :
                                                                                                                                                                                                                                                                                            ↑(binaryCodeNumber n d) ≤ 2 ^ n / ↑(n.choose w) * ↑(shellCodeNumber n w d)

                                                                                                                                                                                                                                                                                            Forget the weight proof on each point of a finite Johnson-sphere code.

                                                                                                                                                                                                                                                                                            Equations
                                                                                                                                                                                                                                                                                            Instances For

                                                                                                                                                                                                                                                                                              The minimum-distance condition on the underlying binary words of a Johnson-sphere code.

                                                                                                                                                                                                                                                                                              Equations
                                                                                                                                                                                                                                                                                              Instances For
                                                                                                                                                                                                                                                                                                def MetricCodes.Johnson.asSubtype {n w : ℕ} (C : Finset (BinaryWord n)) (hweight : C ⊆ weightShell n w) :

                                                                                                                                                                                                                                                                                                Regard a code contained in the weight-w shell as a finite set of Johnson-sphere points.

                                                                                                                                                                                                                                                                                                Equations
                                                                                                                                                                                                                                                                                                Instances For
                                                                                                                                                                                                                                                                                                  theorem MetricCodes.Johnson.card_asSubtype {n w : ℕ} (C : Finset (BinaryWord n)) (hweight : C ⊆ weightShell n w) :
                                                                                                                                                                                                                                                                                                  (asSubtype C hweight).card = C.card
                                                                                                                                                                                                                                                                                                  theorem MetricCodes.Johnson.words_asSubtype {n w : ℕ} (C : Finset (BinaryWord n)) (hweight : C ⊆ weightShell n w) :
                                                                                                                                                                                                                                                                                                  words (asSubtype C hweight) = C
                                                                                                                                                                                                                                                                                                  theorem MetricCodes.Johnson.isCode_asSubtype {n w d : ℕ} (C : Finset (BinaryWord n)) (hweight : C ⊆ weightShell n w) (hC : IsBinaryCode d C) :
                                                                                                                                                                                                                                                                                                  IsCode d (asSubtype C hweight)
                                                                                                                                                                                                                                                                                                  noncomputable def MetricCodes.Johnson.correlation {n w : ℕ} (x y : JohnsonSphere n w) :

                                                                                                                                                                                                                                                                                                  The correlation used in the Johnson-code argument.

                                                                                                                                                                                                                                                                                                  Equations
                                                                                                                                                                                                                                                                                                  Instances For
                                                                                                                                                                                                                                                                                                    noncomputable def MetricCodes.Johnson.threshold (n w d : ℕ) :

                                                                                                                                                                                                                                                                                                    The threshold used in the Johnson-code argument.

                                                                                                                                                                                                                                                                                                    Equations
                                                                                                                                                                                                                                                                                                    Instances For
                                                                                                                                                                                                                                                                                                      theorem MetricCodes.Johnson.correlation_eq_hamming {n w : ℕ} (hw : 0 < w) (hwn : w < n) (x y : JohnsonSphere n w) :
                                                                                                                                                                                                                                                                                                      correlation x y = 1 - ↑n * ↑(hammingDist ↑x ↑y) / (2 * ↑w * ↑(n - w))
                                                                                                                                                                                                                                                                                                      theorem MetricCodes.Johnson.threshold_lt_one {n w d : ℕ} (hw : 0 < w) (hwn : w < n) (hd : 0 < d) :
                                                                                                                                                                                                                                                                                                      threshold n w d < 1
                                                                                                                                                                                                                                                                                                      theorem MetricCodes.Johnson.correlation_le_threshold {n w d : ℕ} (hw : 0 < w) (hwn : w < n) {x y : JohnsonSphere n w} (hd : d ≤ hammingDist ↑x ↑y) :
                                                                                                                                                                                                                                                                                                      theorem MetricCodes.Johnson.correlation_le_threshold_of_code {n w d : ℕ} (hw : 0 < w) (hwn : w < n) {C : Finset (JohnsonSphere n w)} (hC : IsCode d C) {x y : JohnsonSphere n w} (hx : x ∈ C) (hy : y ∈ C) (hxy : x ≠ y) :

                                                                                                                                                                                                                                                                                                      The coordinate indicator used in the Johnson-code argument.

                                                                                                                                                                                                                                                                                                      Equations
                                                                                                                                                                                                                                                                                                      Instances For
                                                                                                                                                                                                                                                                                                        theorem MetricCodes.Johnson.centered_coordinate_inner_sum {n w : ℕ} (hn : 0 < n) (x y : JohnsonSphere n w) :
                                                                                                                                                                                                                                                                                                        ∑ i : Fin n, (coordinateIndicator (↑x) i - ↑w / ↑n) * (coordinateIndicator (↑y) i - ↑w / ↑n) = ↑(wordSupport ↑x ∩ wordSupport ↑y).card - ↑w ^ 2 / ↑n
                                                                                                                                                                                                                                                                                                        noncomputable def MetricCodes.Johnson.geometricAxis {n w : ℕ} (x : JohnsonSphere n w) :

                                                                                                                                                                                                                                                                                                        The geometric axis used in the Johnson-code argument.

                                                                                                                                                                                                                                                                                                        Equations
                                                                                                                                                                                                                                                                                                        Instances For
                                                                                                                                                                                                                                                                                                          theorem MetricCodes.Johnson.geometricAxis_inner {n w : ℕ} (hw : 0 < w) (hwn : w < n) (x y : JohnsonSphere n w) :
                                                                                                                                                                                                                                                                                                          @[reducible, inline]

                                                                                                                                                                                                                                                                                                          The support coordinates used in the Johnson-code argument.

                                                                                                                                                                                                                                                                                                          Equations
                                                                                                                                                                                                                                                                                                          Instances For
                                                                                                                                                                                                                                                                                                            @[reducible, inline]

                                                                                                                                                                                                                                                                                                            The complement coordinates used in the Johnson-code argument.

                                                                                                                                                                                                                                                                                                            Equations
                                                                                                                                                                                                                                                                                                            Instances For

                                                                                                                                                                                                                                                                                                              The support coordinate equiv used in the Johnson-code argument.

                                                                                                                                                                                                                                                                                                              Equations
                                                                                                                                                                                                                                                                                                              Instances For

                                                                                                                                                                                                                                                                                                                The complement coordinate equiv used in the Johnson-code argument.

                                                                                                                                                                                                                                                                                                                Equations
                                                                                                                                                                                                                                                                                                                Instances For
                                                                                                                                                                                                                                                                                                                  @[reducible, inline]

                                                                                                                                                                                                                                                                                                                  The harmonic fibre index used in the Johnson-code argument.

                                                                                                                                                                                                                                                                                                                  Equations
                                                                                                                                                                                                                                                                                                                  Instances For

                                                                                                                                                                                                                                                                                                                    The harmonic fibre index equiv used in the Johnson-code argument.

                                                                                                                                                                                                                                                                                                                    Equations
                                                                                                                                                                                                                                                                                                                    Instances For
                                                                                                                                                                                                                                                                                                                      @[reducible, inline]

                                                                                                                                                                                                                                                                                                                      The shell window index used in the Johnson-code argument.

                                                                                                                                                                                                                                                                                                                      Equations
                                                                                                                                                                                                                                                                                                                      Instances For
                                                                                                                                                                                                                                                                                                                        noncomputable def MetricCodes.Johnson.shellWindowIndexEquiv (n p q L : ℕ) (hfirst : p + q ≤ L) :

                                                                                                                                                                                                                                                                                                                        The shell window index equiv used in the Johnson-code argument.

                                                                                                                                                                                                                                                                                                                        Equations
                                                                                                                                                                                                                                                                                                                        Instances For
                                                                                                                                                                                                                                                                                                                          @[reducible, inline]

                                                                                                                                                                                                                                                                                                                          The index used in the Johnson-code argument.

                                                                                                                                                                                                                                                                                                                          Equations
                                                                                                                                                                                                                                                                                                                          Instances For
                                                                                                                                                                                                                                                                                                                            @[reducible, inline]

                                                                                                                                                                                                                                                                                                                            The space used in the Johnson-code argument.

                                                                                                                                                                                                                                                                                                                            Equations
                                                                                                                                                                                                                                                                                                                            Instances For
                                                                                                                                                                                                                                                                                                                              noncomputable def MetricCodes.Johnson.matrix (n w p q L : ℕ) :
                                                                                                                                                                                                                                                                                                                              Matrix (Index p q L) (Index p q L) ℝ

                                                                                                                                                                                                                                                                                                                              The matrix used in the Johnson-code argument.

                                                                                                                                                                                                                                                                                                                              Equations
                                                                                                                                                                                                                                                                                                                              Instances For
                                                                                                                                                                                                                                                                                                                                noncomputable def MetricCodes.Johnson.operator (n w p q L : ℕ) :
                                                                                                                                                                                                                                                                                                                                Space p q L →ₗ[ℝ] Space p q L

                                                                                                                                                                                                                                                                                                                                The operator used in the Johnson-code argument.

                                                                                                                                                                                                                                                                                                                                Equations
                                                                                                                                                                                                                                                                                                                                Instances For
                                                                                                                                                                                                                                                                                                                                  noncomputable def MetricCodes.Johnson.continuousOperator (n w p q L : ℕ) :
                                                                                                                                                                                                                                                                                                                                  Space p q L →L[ℝ] Space p q L

                                                                                                                                                                                                                                                                                                                                  The continuous operator used in the Johnson-code argument.

                                                                                                                                                                                                                                                                                                                                  Equations
                                                                                                                                                                                                                                                                                                                                  Instances For
                                                                                                                                                                                                                                                                                                                                    noncomputable def MetricCodes.Johnson.rayleigh (n w p q L : ℕ) (x : Space p q L) :

                                                                                                                                                                                                                                                                                                                                    The rayleigh used in the Johnson-code argument.

                                                                                                                                                                                                                                                                                                                                    Equations
                                                                                                                                                                                                                                                                                                                                    Instances For
                                                                                                                                                                                                                                                                                                                                      theorem MetricCodes.Johnson.rayleigh_bddAbove (n w p q L : ℕ) :
                                                                                                                                                                                                                                                                                                                                      BddAbove (Set.range fun (x : { x : Space p q L // x ≠ 0 }) => rayleigh n w p q L ↑x)
                                                                                                                                                                                                                                                                                                                                      noncomputable def MetricCodes.Johnson.topEigenvalue (n w p q L : ℕ) :

                                                                                                                                                                                                                                                                                                                                      The top eigenvalue used in the Johnson-code argument.

                                                                                                                                                                                                                                                                                                                                      Equations
                                                                                                                                                                                                                                                                                                                                      Instances For
                                                                                                                                                                                                                                                                                                                                        theorem MetricCodes.Johnson.rayleigh_le_top (n w p q L : ℕ) (x : Space p q L) (hx : x ≠ 0) :
                                                                                                                                                                                                                                                                                                                                        rayleigh n w p q L x ≤ topEigenvalue n w p q L
                                                                                                                                                                                                                                                                                                                                        theorem MetricCodes.Johnson.exists_topEigenvector (n w p q L : ℕ) :
                                                                                                                                                                                                                                                                                                                                        ∃ (x : Space p q L), x ≠ 0 ∧ (operator n w p q L) x = topEigenvalue n w p q L • x
                                                                                                                                                                                                                                                                                                                                        theorem MetricCodes.Johnson.rayleigh_eq_inner (n w p q L : ℕ) (x : Space p q L) :
                                                                                                                                                                                                                                                                                                                                        rayleigh n w p q L x = inner ℝ ((operator n w p q L) x) x / ‖x‖ ^ 2

                                                                                                                                                                                                                                                                                                                                        Data encoding the admissible degrees construction.

                                                                                                                                                                                                                                                                                                                                        Instances For
                                                                                                                                                                                                                                                                                                                                          theorem MetricCodes.Johnson.zonalDiagonal_eq {n w j : ℕ} (hw : 0 < w) (hhalf : 2 * w < n) (hj : j ≤ w) :
                                                                                                                                                                                                                                                                                                                                          johnsonZonalDiagonal n w j = johnsonM n w ^ 2 * ↑j * (↑n - ↑j + 1) / (↑w * ↑(n - w) * johnsonJ n j * (johnsonJ n j + 1))
                                                                                                                                                                                                                                                                                                                                          theorem MetricCodes.Johnson.zonalDiagonal_pos {n w j : ℕ} (hw : 0 < w) (hhalf : 2 * w < n) (hj : 0 < j) (hjw : j ≤ w) :
                                                                                                                                                                                                                                                                                                                                          theorem MetricCodes.Johnson.associatedEdge_pos {n w p q j : ℕ} (hw : 0 < w) (hhalf : 2 * w < n) (hp : 2 * p ≤ w) (hq : 2 * q ≤ n - w) (hfirst : p + q ≤ j) (hlast : j < johnsonLastDegree n w p q) :
                                                                                                                                                                                                                                                                                                                                          0 < johnsonEdge n w p q j
                                                                                                                                                                                                                                                                                                                                          theorem MetricCodes.Johnson.zonalEdge_pos {n w j : ℕ} (hw : 0 < w) (hhalf : 2 * w < n) (hj : j < w) :
                                                                                                                                                                                                                                                                                                                                          theorem MetricCodes.Johnson.hattedDiagonal_nonneg {n w p q j : ℕ} (hw : 0 < w) (hhalf : 2 * w < n) (hj : j ≤ w) :
                                                                                                                                                                                                                                                                                                                                          theorem MetricCodes.Johnson.hattedEdge_pos {n w p q j : ℕ} (hw : 0 < w) (hhalf : 2 * w < n) (hp : 2 * p ≤ w) (hq : 2 * q ≤ n - w) (hfirst : p + q ≤ j) (hlast : j < johnsonLastDegree n w p q) :
                                                                                                                                                                                                                                                                                                                                          0 < johnsonHattedEdge n w p q j
                                                                                                                                                                                                                                                                                                                                          theorem MetricCodes.Johnson.matrix_entry_nonneg {n w p q L : ℕ} (h : AdmissibleDegrees n w p q L) (hstrict : 2 * w < n) (i j : Index p q L) :
                                                                                                                                                                                                                                                                                                                                          0 ≤ matrix n w p q L i j
                                                                                                                                                                                                                                                                                                                                          @[reducible, inline]
                                                                                                                                                                                                                                                                                                                                          abbrev MetricCodes.Johnson.coordinateAbs (p q L : ℕ) (x : Space p q L) :
                                                                                                                                                                                                                                                                                                                                          Space p q L

                                                                                                                                                                                                                                                                                                                                          The coordinate abs used in the Johnson-code argument.

                                                                                                                                                                                                                                                                                                                                          Equations
                                                                                                                                                                                                                                                                                                                                          Instances For
                                                                                                                                                                                                                                                                                                                                            theorem MetricCodes.Johnson.coordinateAbs_ne_zero (p q L : ℕ) {x : Space p q L} (hx : x ≠ 0) :
                                                                                                                                                                                                                                                                                                                                            coordinateAbs p q L x ≠ 0
                                                                                                                                                                                                                                                                                                                                            theorem MetricCodes.Johnson.inner_le_inner_coordinateAbs {n w p q L : ℕ} (h : AdmissibleDegrees n w p q L) (hstrict : 2 * w < n) (x : Space p q L) :
                                                                                                                                                                                                                                                                                                                                            inner ℝ ((operator n w p q L) x) x ≤ inner ℝ ((operator n w p q L) (coordinateAbs p q L x)) (coordinateAbs p q L x)
                                                                                                                                                                                                                                                                                                                                            theorem MetricCodes.Johnson.rayleigh_le_coordinateAbs {n w p q L : ℕ} (h : AdmissibleDegrees n w p q L) (hstrict : 2 * w < n) (x : Space p q L) :
                                                                                                                                                                                                                                                                                                                                            rayleigh n w p q L x ≤ rayleigh n w p q L (coordinateAbs p q L x)
                                                                                                                                                                                                                                                                                                                                            theorem MetricCodes.Johnson.rayleigh_eq_of_eigenvector (n w p q L : ℕ) (x : Space p q L) (hx : x ≠ 0) (eigenvalue : ℝ) (heigen : (operator n w p q L) x = eigenvalue • x) :
                                                                                                                                                                                                                                                                                                                                            rayleigh n w p q L x = eigenvalue
                                                                                                                                                                                                                                                                                                                                            theorem MetricCodes.Johnson.coordinateAbs_top_rayleigh {n w p q L : ℕ} (h : AdmissibleDegrees n w p q L) (hstrict : 2 * w < n) (x : Space p q L) (hx : x ≠ 0) (heigen : (operator n w p q L) x = topEigenvalue n w p q L • x) :
                                                                                                                                                                                                                                                                                                                                            rayleigh n w p q L (coordinateAbs p q L x) = topEigenvalue n w p q L
                                                                                                                                                                                                                                                                                                                                            theorem MetricCodes.Johnson.exists_nonnegative_topEigenvector {n w p q L : ℕ} (h : AdmissibleDegrees n w p q L) (hstrict : 2 * w < n) :
                                                                                                                                                                                                                                                                                                                                            ∃ (x : Space p q L), x ≠ 0 ∧ (operator n w p q L) x = topEigenvalue n w p q L • x ∧ ∀ (i : Index p q L), 0 ≤ x.ofLp i
                                                                                                                                                                                                                                                                                                                                            theorem MetricCodes.Johnson.exists_nonnegative_unit_topEigenvector {n w p q L : ℕ} (h : AdmissibleDegrees n w p q L) (hstrict : 2 * w < n) :
                                                                                                                                                                                                                                                                                                                                            ∃ (x : Space p q L), ‖x‖ = 1 ∧ (operator n w p q L) x = topEigenvalue n w p q L • x ∧ ∀ (i : Index p q L), 0 ≤ x.ofLp i
                                                                                                                                                                                                                                                                                                                                            theorem MetricCodes.Johnson.matrix_adjacent_pos {n w p q L : ℕ} (h : AdmissibleDegrees n w p q L) (hstrict : 2 * w < n) (i j : Index p q L) (hadjacent : ↑i + 1 = ↑j ∨ ↑j + 1 = ↑i) :
                                                                                                                                                                                                                                                                                                                                            0 < matrix n w p q L i j
                                                                                                                                                                                                                                                                                                                                            theorem MetricCodes.Johnson.nonnegative_eigenvector_zero_propagates {n w p q L : ℕ} (h : AdmissibleDegrees n w p q L) (hstrict : 2 * w < n) (v : Space p q L) (eigenvalue : ℝ) (heigen : (operator n w p q L) v = eigenvalue • v) (hnonnegative : ∀ (i : Index p q L), 0 ≤ v.ofLp i) (i j : Index p q L) (hzero : v.ofLp i = 0) (hadjacent : ↑i + 1 = ↑j ∨ ↑j + 1 = ↑i) :
                                                                                                                                                                                                                                                                                                                                            v.ofLp j = 0
                                                                                                                                                                                                                                                                                                                                            theorem MetricCodes.Johnson.nonnegative_eigenvector_coordinate_pos {n w p q L : ℕ} (h : AdmissibleDegrees n w p q L) (hstrict : 2 * w < n) (v : Space p q L) (eigenvalue : ℝ) (heigen : (operator n w p q L) v = eigenvalue • v) (hnonnegative : ∀ (i : Index p q L), 0 ≤ v.ofLp i) (hnonzero : v ≠ 0) (i : Index p q L) :
                                                                                                                                                                                                                                                                                                                                            0 < v.ofLp i
                                                                                                                                                                                                                                                                                                                                            theorem MetricCodes.Johnson.exists_positive_unit_topEigenvector {n w p q L : ℕ} (h : AdmissibleDegrees n w p q L) (hstrict : 2 * w < n) :
                                                                                                                                                                                                                                                                                                                                            ∃ (v : Space p q L), ‖v‖ = 1 ∧ (operator n w p q L) v = topEigenvalue n w p q L • v ∧ ∀ (i : Index p q L), 0 < v.ofLp i
                                                                                                                                                                                                                                                                                                                                            theorem MetricCodes.Johnson.topEigenvalue_pos {n w p q L : ℕ} (h : AdmissibleDegrees n w p q L) (hstrict : 2 * w < n) (hwindow : p + q < L) :
                                                                                                                                                                                                                                                                                                                                            0 < topEigenvalue n w p q L
                                                                                                                                                                                                                                                                                                                                            noncomputable def MetricCodes.Johnson.johnsonRecurrenceWeight (n : ℕ) :
                                                                                                                                                                                                                                                                                                                                            ℕ → (p q L : ℕ) → (v : Space p q L) → (i : Index p q L) → ℝ

                                                                                                                                                                                                                                                                                                                                            The johnson recurrence weight used in the Johnson-code argument.

                                                                                                                                                                                                                                                                                                                                            Equations
                                                                                                                                                                                                                                                                                                                                            Instances For
                                                                                                                                                                                                                                                                                                                                              noncomputable def MetricCodes.Johnson.johnsonSourceChannelCoefficient (n w p q L : ℕ) (m i : Index p q L) :

                                                                                                                                                                                                                                                                                                                                              The johnson source channel coefficient used in the Johnson-code argument.

                                                                                                                                                                                                                                                                                                                                              Equations
                                                                                                                                                                                                                                                                                                                                              • One or more equations did not get rendered due to their size.
                                                                                                                                                                                                                                                                                                                                              Instances For
                                                                                                                                                                                                                                                                                                                                                theorem MetricCodes.Johnson.johnsonSourceChannelCoefficient_nonneg {n w p q L : ℕ} (h : AdmissibleDegrees n w p q L) (hstrict : 2 * w < n) (m i : Index p q L) :
                                                                                                                                                                                                                                                                                                                                                theorem MetricCodes.Johnson.johnsonRecurrenceWeight_pos_of_pos {n w p q L : ℕ} (h : AdmissibleDegrees n w p q L) (v : Space p q L) (hv : ∀ (i : Index p q L), 0 < v.ofLp i) (i : Index p q L) :
                                                                                                                                                                                                                                                                                                                                                0 < johnsonRecurrenceWeight n w p q L v i
                                                                                                                                                                                                                                                                                                                                                theorem MetricCodes.Johnson.johnsonRecurrenceWeight_eigenrecurrence {n w p q L : ℕ} (h : AdmissibleDegrees n w p q L) (v : Space p q L) (lam : ℝ) (heigen : (operator n w p q L) v = lam • v) (m : Index p q L) :
                                                                                                                                                                                                                                                                                                                                                ∑ i : Index p q L, johnsonSourceChannelCoefficient n w p q L m i * johnsonRecurrenceWeight n w p q L v i = lam * johnsonRecurrenceWeight n w p q L v m
                                                                                                                                                                                                                                                                                                                                                noncomputable def MetricCodes.Johnson.johnsonAdjacentBlockCoefficient (n w p q L : ℕ) (v : Space p q L) (lam : ℝ) (target source : Index p q L) :

                                                                                                                                                                                                                                                                                                                                                The johnson adjacent block coefficient used in the Johnson-code argument.

                                                                                                                                                                                                                                                                                                                                                Equations
                                                                                                                                                                                                                                                                                                                                                • One or more equations did not get rendered due to their size.
                                                                                                                                                                                                                                                                                                                                                Instances For
                                                                                                                                                                                                                                                                                                                                                  theorem MetricCodes.Johnson.johnsonAdjacentBlockCoefficient_sq {n w p q L : ℕ} (h : AdmissibleDegrees n w p q L) (hstrict : 2 * w < n) (v : Space p q L) (hv : ∀ (i : Index p q L), 0 < v.ofLp i) (lam : ℝ) (hlam : 0 < lam) (target source : Index p q L) :
                                                                                                                                                                                                                                                                                                                                                  johnsonAdjacentBlockCoefficient n w p q L v lam target source ^ 2 = johnsonSourceChannelCoefficient n w p q L source target * johnsonRecurrenceWeight n w p q L v target / (lam * johnsonRecurrenceWeight n w p q L v source)
                                                                                                                                                                                                                                                                                                                                                  theorem MetricCodes.Johnson.johnsonAdjacentBlockCoefficient_sq_sum {n w p q L : ℕ} (h : AdmissibleDegrees n w p q L) (hstrict : 2 * w < n) (v : Space p q L) (hv : ∀ (i : Index p q L), 0 < v.ofLp i) (lam : ℝ) (hlam : 0 < lam) (heigen : (operator n w p q L) v = lam • v) (source : Index p q L) :
                                                                                                                                                                                                                                                                                                                                                  ∑ target : Index p q L, johnsonAdjacentBlockCoefficient n w p q L v lam target source ^ 2 = 1
                                                                                                                                                                                                                                                                                                                                                  noncomputable def MetricCodes.Johnson.johnsonRecurrenceNormalization (n w p q L : ℕ) (v : Space p q L) :

                                                                                                                                                                                                                                                                                                                                                  The sum of the Johnson recurrence weights over the admissible index range.

                                                                                                                                                                                                                                                                                                                                                  Equations
                                                                                                                                                                                                                                                                                                                                                  Instances For
                                                                                                                                                                                                                                                                                                                                                    noncomputable def MetricCodes.Johnson.johnsonFibreAmplitude (n w p q L : ℕ) (v : Space p q L) (i : Index p q L) :

                                                                                                                                                                                                                                                                                                                                                    The johnson fibre amplitude used in the Johnson-code argument.

                                                                                                                                                                                                                                                                                                                                                    Equations
                                                                                                                                                                                                                                                                                                                                                    Instances For
                                                                                                                                                                                                                                                                                                                                                      theorem MetricCodes.Johnson.johnsonRecurrenceNormalization_pos {n w p q L : ℕ} (h : AdmissibleDegrees n w p q L) (v : Space p q L) (hv : ∀ (i : Index p q L), 0 < v.ofLp i) :
                                                                                                                                                                                                                                                                                                                                                      theorem MetricCodes.Johnson.johnsonFibreAmplitude_sq {n w p q L : ℕ} (h : AdmissibleDegrees n w p q L) (v : Space p q L) (hv : ∀ (i : Index p q L), 0 < v.ofLp i) (i : Index p q L) :
                                                                                                                                                                                                                                                                                                                                                      theorem MetricCodes.Johnson.johnsonFibreAmplitude_sq_sum {n w p q L : ℕ} (h : AdmissibleDegrees n w p q L) (v : Space p q L) (hv : ∀ (i : Index p q L), 0 < v.ofLp i) :
                                                                                                                                                                                                                                                                                                                                                      ∑ i : Index p q L, johnsonFibreAmplitude n w p q L v i ^ 2 = 1
                                                                                                                                                                                                                                                                                                                                                      theorem MetricCodes.Johnson.johnsonFibreAmplitude_pos_of_pos {n w p q L : ℕ} (h : AdmissibleDegrees n w p q L) (v : Space p q L) (hv : ∀ (i : Index p q L), 0 < v.ofLp i) (i : Index p q L) :
                                                                                                                                                                                                                                                                                                                                                      0 < johnsonFibreAmplitude n w p q L v i
                                                                                                                                                                                                                                                                                                                                                      theorem MetricCodes.Johnson.johnsonAdjacentBlockCoefficient_amplitude_identity {n w p q L : ℕ} (h : AdmissibleDegrees n w p q L) (hstrict : 2 * w < n) (v : Space p q L) (hv : ∀ (i : Index p q L), 0 < v.ofLp i) (lam : ℝ) (hlam : 0 < lam) (target source : Index p q L) :
                                                                                                                                                                                                                                                                                                                                                      johnsonAdjacentBlockCoefficient n w p q L v lam target source * johnsonFibreAmplitude n w p q L v target * √(johnsonSourceChannelCoefficient n w p q L source target) = johnsonAdjacentBlockCoefficient n w p q L v lam target source ^ 2 * √lam * johnsonFibreAmplitude n w p q L v source
                                                                                                                                                                                                                                                                                                                                                      theorem MetricCodes.Johnson.johnsonAdjacentBlockCoefficient_amplitude_sum {n w p q L : ℕ} (h : AdmissibleDegrees n w p q L) (hstrict : 2 * w < n) (v : Space p q L) (hv : ∀ (i : Index p q L), 0 < v.ofLp i) (lam : ℝ) (hlam : 0 < lam) (heigen : (operator n w p q L) v = lam • v) (source : Index p q L) :
                                                                                                                                                                                                                                                                                                                                                      ∑ target : Index p q L, johnsonAdjacentBlockCoefficient n w p q L v lam target source * johnsonFibreAmplitude n w p q L v target * √(johnsonSourceChannelCoefficient n w p q L source target) = √lam * johnsonFibreAmplitude n w p q L v source

                                                                                                                                                                                                                                                                                                                                                      Data encoding the projection gram construction.

                                                                                                                                                                                                                                                                                                                                                      Instances For
                                                                                                                                                                                                                                                                                                                                                        theorem MetricCodes.Johnson.finite_bound_of_projection_gram {n w p q L d : ℕ} (hdegree : AdmissibleDegrees n w p q L) (hd : 0 < d) (data : ProjectionGram n w p q L) (C : Finset (JohnsonSphere n w)) (hC : IsCode d C) (hgap : threshold n w d < topEigenvalue n w p q L) :
                                                                                                                                                                                                                                                                                                                                                        ↑C.card ≤ (1 - threshold n w d) / (topEigenvalue n w p q L - threshold n w d) * (↑(johnsonAmbientDimension n (p + q) L) / ↑(johnsonFibreDimension n w p q))
                                                                                                                                                                                                                                                                                                                                                        theorem MetricCodes.Johnson.finite_shellCodeNumber_bound_of_projection_gram {n w p q L d : ℕ} (hdegree : AdmissibleDegrees n w p q L) (hd : 0 < d) (data : ProjectionGram n w p q L) (hgap : threshold n w d < topEigenvalue n w p q L) :
                                                                                                                                                                                                                                                                                                                                                        ↑(shellCodeNumber n w d) ≤ (1 - threshold n w d) / (topEigenvalue n w p q L - threshold n w d) * (↑(johnsonAmbientDimension n (p + q) L) / ↑(johnsonFibreDimension n w p q))
                                                                                                                                                                                                                                                                                                                                                        theorem MetricCodes.Johnson.finite_binaryCodeNumber_bound_of_projection_gram {n w p q L d : ℕ} (hdegree : AdmissibleDegrees n w p q L) (hd : 0 < d) (data : ProjectionGram n w p q L) (hgap : threshold n w d < topEigenvalue n w p q L) :
                                                                                                                                                                                                                                                                                                                                                        ↑(binaryCodeNumber n d) ≤ 2 ^ n / ↑(n.choose w) * ((1 - threshold n w d) / (topEigenvalue n w p q L - threshold n w d) * (↑(johnsonAmbientDimension n (p + q) L) / ↑(johnsonFibreDimension n w p q)))

                                                                                                                                                                                                                                                                                                                                                        The centered eta used in the Johnson-code argument.

                                                                                                                                                                                                                                                                                                                                                        Equations
                                                                                                                                                                                                                                                                                                                                                        Instances For
                                                                                                                                                                                                                                                                                                                                                          noncomputable def MetricCodes.Johnson.spectralLimit (α β γ u : ℝ) :

                                                                                                                                                                                                                                                                                                                                                          The spectral limit used in the Johnson-code argument.

                                                                                                                                                                                                                                                                                                                                                          Equations
                                                                                                                                                                                                                                                                                                                                                          • One or more equations did not get rendered due to their size.
                                                                                                                                                                                                                                                                                                                                                          Instances For
                                                                                                                                                                                                                                                                                                                                                            theorem MetricCodes.Johnson.sqrt_one_sub_centeredDegree_sq {u : ℝ} (hu : 0 < u) (hhalf : u < 1 / 2) :
                                                                                                                                                                                                                                                                                                                                                            √(1 - (1 - 2 * u) ^ 2) = 2 * √(u * (1 - u))
                                                                                                                                                                                                                                                                                                                                                            theorem MetricCodes.Johnson.zero_fibre_spectral_algebra (z m s : ℝ) (hz : z ≠ 0) (hm : 1 - m ^ 2 ≠ 0) (hs : s ≠ 0) (hplus : 1 + 2 * s ≠ 0) (hsquare : 4 * s ^ 2 = 1 - z ^ 2) :
                                                                                                                                                                                                                                                                                                                                                            1 - ((m - m * z ^ 2) ^ 2 / (z ^ 2 * (1 - m ^ 2) * (1 - z ^ 2)) + (z ^ 2 - m ^ 2) * (1 - z ^ 2) / (z ^ 2 * (1 - m ^ 2) * (2 * s))) = (z ^ 2 - m ^ 2) / ((1 - m ^ 2) * (1 + 2 * s))
                                                                                                                                                                                                                                                                                                                                                            theorem MetricCodes.Johnson.spectralLimit_zero_fibre_boundary {α u : ℝ} (hu : 0 < u) (hua : u < α) (ha : α < 1 / 2) :
                                                                                                                                                                                                                                                                                                                                                            1 - spectralLimit α 0 0 u = (α * (1 - α) - u * (1 - u)) / (α * (1 - α) * (1 + 2 * √(u * (1 - u))))
                                                                                                                                                                                                                                                                                                                                                            noncomputable def MetricCodes.Johnson.asymptoticThreshold (δ α : ℝ) :

                                                                                                                                                                                                                                                                                                                                                            The asymptotic threshold used in the Johnson-code argument.

                                                                                                                                                                                                                                                                                                                                                            Equations
                                                                                                                                                                                                                                                                                                                                                            Instances For
                                                                                                                                                                                                                                                                                                                                                              noncomputable def MetricCodes.Johnson.rankPenalty (α β γ : ℝ) :

                                                                                                                                                                                                                                                                                                                                                              The rank penalty used in the Johnson-code argument.

                                                                                                                                                                                                                                                                                                                                                              Equations
                                                                                                                                                                                                                                                                                                                                                              Instances For
                                                                                                                                                                                                                                                                                                                                                                noncomputable def MetricCodes.Johnson.shellRate (α β γ u : ℝ) :

                                                                                                                                                                                                                                                                                                                                                                The shell rate used in the Johnson-code argument.

                                                                                                                                                                                                                                                                                                                                                                Equations
                                                                                                                                                                                                                                                                                                                                                                Instances For

                                                                                                                                                                                                                                                                                                                                                                  Data encoding the asymptotic parameters construction.

                                                                                                                                                                                                                                                                                                                                                                  • distance_pos : 0 < δ
                                                                                                                                                                                                                                                                                                                                                                  • distance_lt_half : δ < 1 / 2
                                                                                                                                                                                                                                                                                                                                                                  • weight_gt_distance : δ / 2 < α
                                                                                                                                                                                                                                                                                                                                                                  • weight_lt_half : α < 1 / 2
                                                                                                                                                                                                                                                                                                                                                                  • support_nonneg : 0 ≤ β
                                                                                                                                                                                                                                                                                                                                                                  • support_lt_half : β < α / 2
                                                                                                                                                                                                                                                                                                                                                                  • complement_nonneg : 0 ≤ γ
                                                                                                                                                                                                                                                                                                                                                                  • complement_lt_half : γ < (1 - α) / 2
                                                                                                                                                                                                                                                                                                                                                                  • first_lt_degree : β + γ < u
                                                                                                                                                                                                                                                                                                                                                                  • degree_lt_weight : u < α
                                                                                                                                                                                                                                                                                                                                                                  • degree_lt_left : u < α - β + γ
                                                                                                                                                                                                                                                                                                                                                                  • degree_lt_right : u < 1 - α + β - γ
                                                                                                                                                                                                                                                                                                                                                                  Instances For
                                                                                                                                                                                                                                                                                                                                                                    theorem MetricCodes.Johnson.AsymptoticParameters.weight_pos {δ α β γ u : ℝ} (h : AsymptoticParameters δ α β γ u) :
                                                                                                                                                                                                                                                                                                                                                                    0 < α
                                                                                                                                                                                                                                                                                                                                                                    theorem MetricCodes.Johnson.AsymptoticParameters.degree_pos {δ α β γ u : ℝ} (h : AsymptoticParameters δ α β γ u) :
                                                                                                                                                                                                                                                                                                                                                                    0 < u
                                                                                                                                                                                                                                                                                                                                                                    theorem MetricCodes.Johnson.AsymptoticParameters.centeredWeight_pos {δ α β γ u : ℝ} (h : AsymptoticParameters δ α β γ u) :
                                                                                                                                                                                                                                                                                                                                                                    0 < 1 - 2 * α
                                                                                                                                                                                                                                                                                                                                                                    theorem MetricCodes.Johnson.AsymptoticParameters.centeredSigma_gt_degree {δ α β γ u : ℝ} (h : AsymptoticParameters δ α β γ u) :
                                                                                                                                                                                                                                                                                                                                                                    1 - 2 * u < 1 - 2 * β - 2 * γ
                                                                                                                                                                                                                                                                                                                                                                    theorem MetricCodes.Johnson.AsymptoticParameters.centeredSigma_pos {δ α β γ u : ℝ} (h : AsymptoticParameters δ α β γ u) :
                                                                                                                                                                                                                                                                                                                                                                    0 < 1 - 2 * β - 2 * γ
                                                                                                                                                                                                                                                                                                                                                                    theorem MetricCodes.Johnson.AsymptoticParameters.degree_sq_sub_eta_sq_pos {δ α β γ u : ℝ} (h : AsymptoticParameters δ α β γ u) :
                                                                                                                                                                                                                                                                                                                                                                    0 < (1 - 2 * u) ^ 2 - centeredEta α β γ ^ 2
                                                                                                                                                                                                                                                                                                                                                                    theorem MetricCodes.Johnson.AsymptoticParameters.sigma_sq_sub_degree_sq_pos {δ α β γ u : ℝ} (h : AsymptoticParameters δ α β γ u) :
                                                                                                                                                                                                                                                                                                                                                                    0 < (1 - 2 * β - 2 * γ) ^ 2 - (1 - 2 * u) ^ 2
                                                                                                                                                                                                                                                                                                                                                                    theorem MetricCodes.Johnson.AsymptoticParameters.shellRate_lower {δ α β γ u : ℝ} (h : AsymptoticParameters δ α β γ u) :
                                                                                                                                                                                                                                                                                                                                                                    -1 ≤ shellRate α β γ u

                                                                                                                                                                                                                                                                                                                                                                    The predicate asserting spectrally feasible.

                                                                                                                                                                                                                                                                                                                                                                    Equations
                                                                                                                                                                                                                                                                                                                                                                    Instances For
                                                                                                                                                                                                                                                                                                                                                                      def MetricCodes.Johnson.Feasible (δ α β γ u : ℝ) :

                                                                                                                                                                                                                                                                                                                                                                      The feasible used in the Johnson-code argument.

                                                                                                                                                                                                                                                                                                                                                                      Equations
                                                                                                                                                                                                                                                                                                                                                                      Instances For

                                                                                                                                                                                                                                                                                                                                                                        The rate set used in the Johnson-code argument.

                                                                                                                                                                                                                                                                                                                                                                        Equations
                                                                                                                                                                                                                                                                                                                                                                        Instances For
                                                                                                                                                                                                                                                                                                                                                                          noncomputable def MetricCodes.Johnson.variationalRate (δ : ℝ) :

                                                                                                                                                                                                                                                                                                                                                                          The variational rate used in the Johnson-code argument.

                                                                                                                                                                                                                                                                                                                                                                          Equations
                                                                                                                                                                                                                                                                                                                                                                          Instances For
                                                                                                                                                                                                                                                                                                                                                                            theorem MetricCodes.Johnson.variationalRate_le_of_feasible {δ α β γ u : ℝ} (h : Feasible δ α β γ u) :
                                                                                                                                                                                                                                                                                                                                                                            noncomputable def MetricCodes.Johnson.mrrwG (v : ℝ) :

                                                                                                                                                                                                                                                                                                                                                                            The mrrw g used in the Johnson-code argument.

                                                                                                                                                                                                                                                                                                                                                                            Equations
                                                                                                                                                                                                                                                                                                                                                                            Instances For
                                                                                                                                                                                                                                                                                                                                                                              noncomputable def MetricCodes.Johnson.mrrwObjective (δ r : ℝ) :

                                                                                                                                                                                                                                                                                                                                                                              The mrrw objective used in the Johnson-code argument.

                                                                                                                                                                                                                                                                                                                                                                              Equations
                                                                                                                                                                                                                                                                                                                                                                              Instances For
                                                                                                                                                                                                                                                                                                                                                                                theorem MetricCodes.Johnson.mrrwObjective_endpoint {δ : ℝ} (hδ : 0 < δ) (hhalf : δ < 1 / 2) :
                                                                                                                                                                                                                                                                                                                                                                                theorem MetricCodes.Johnson.mrrwG_variance {u : ℝ} (hu : u ≤ 1 / 2) :
                                                                                                                                                                                                                                                                                                                                                                                mrrwG (4 * u * (1 - u)) = binaryEntropy u
                                                                                                                                                                                                                                                                                                                                                                                theorem MetricCodes.Johnson.zero_fibre_boundary_variance {δ α u : ℝ} (hu : 0 < u) (hua : u < α) (ha : α < 1 / 2) (hboundary : spectralLimit α 0 0 u = asymptoticThreshold δ α) :
                                                                                                                                                                                                                                                                                                                                                                                4 * α * (1 - α) = (2 * √(u * (1 - u))) ^ 2 + 2 * δ * (2 * √(u * (1 - u))) + 2 * δ
                                                                                                                                                                                                                                                                                                                                                                                theorem MetricCodes.Johnson.mrrwObjective_zero_fibre_boundary {δ α u : ℝ} (hu : 0 < u) (hua : u < α) (ha : α < 1 / 2) (hboundary : spectralLimit α 0 0 u = asymptoticThreshold δ α) :
                                                                                                                                                                                                                                                                                                                                                                                mrrwObjective δ (2 * √(u * (1 - u))) = shellRate α 0 0 u

                                                                                                                                                                                                                                                                                                                                                                                The values of the MRRW objective as r ranges from zero to 1 - 2 * δ.

                                                                                                                                                                                                                                                                                                                                                                                Equations
                                                                                                                                                                                                                                                                                                                                                                                Instances For
                                                                                                                                                                                                                                                                                                                                                                                  noncomputable def MetricCodes.Johnson.mrrwRate (δ : ℝ) :

                                                                                                                                                                                                                                                                                                                                                                                  The mrrw rate used in the Johnson-code argument.

                                                                                                                                                                                                                                                                                                                                                                                  Equations
                                                                                                                                                                                                                                                                                                                                                                                  Instances For
                                                                                                                                                                                                                                                                                                                                                                                    theorem MetricCodes.Johnson.mrrwRate_le_objective {δ r : ℝ} (hr : 0 ≤ r) (hupper : r ≤ 1 - 2 * δ) :
                                                                                                                                                                                                                                                                                                                                                                                    theorem MetricCodes.Johnson.exists_mrrw_minimizer {δ : ℝ} (hhalf : δ ≤ 1 / 2) :
                                                                                                                                                                                                                                                                                                                                                                                    ∃ (r : ℝ), 0 ≤ r ∧ r ≤ 1 - 2 * δ ∧ ∀ (s : ℝ), 0 ≤ s → s ≤ 1 - 2 * δ → mrrwObjective δ r ≤ mrrwObjective δ s
                                                                                                                                                                                                                                                                                                                                                                                    theorem MetricCodes.Johnson.mrrwRate_eq_objective_of_minimizer {δ r : ℝ} (hr : 0 ≤ r) (hupper : r ≤ 1 - 2 * δ) (hmin : ∀ (s : ℝ), 0 ≤ s → s ≤ 1 - 2 * δ → mrrwObjective δ r ≤ mrrwObjective δ s) :
                                                                                                                                                                                                                                                                                                                                                                                    theorem MetricCodes.Johnson.mrrwRate_le_classicalRate {δ : ℝ} (hδ : 0 < δ) (hhalf : δ < 1 / 2) :

                                                                                                                                                                                                                                                                                                                                                                                    The combined variational rate used in the Johnson-code argument.

                                                                                                                                                                                                                                                                                                                                                                                    Equations
                                                                                                                                                                                                                                                                                                                                                                                    Instances For