Moment form (round six, `labels_no_saving`)
ProvedIntMul.Kappa.R6.Bit.QHNet.labels_no_savingMoment form. Under the hypotheses of prop11H_labels, histMoment C.hist m τ ≥ W for
every 0 < τ ≤ 1.
The following holds (Lean statement, in the scope of module Solutions.R6BitNBObst):
theorem IntMul.Kappa.R6.Bit.QHNet.labels_no_saving [Nontrivial R] (C : QHNet R W T m) (hm : 0 < m) {q : ℕ} (hq : q.Prime)
(hruns : C.RunsOK) (hE : C.EdgesOK q) (hlab : C.LabOK q) (hsc : C.ScalarOK) {τ : ℝ}
(_hτ0 : 0 < τ) (hτ1 : τ ≤ 1) : (W : ℝ) ≤ histMoment C.hist m τ
Context. Round six, bit side: the label route prop11H_labels admits no saving
prop11H_labels (R6BitProp11) derives C.OK from EdgesOK, LabOK, ScalarOK: every gate
touches wires with equal frame labels, and every role ends at label swapMat. This file proves
that these hypotheses force the total child width to be at least W m:
- the
H × DblockhdBof a frame matrix is subadditive in rank under products (rank_hdB_mul_le), vanishes on lower triangular Bruhat factors and on1, and has rankmonswapMat; - an edge
E₁ σ E₂therefore hasrank hdB ≤ #transpositions ≤ Σ run widths(rank_hdB_edgeMat_le); - along each role wire the labels go from
1toswapMat, so each of theW(distinct, byScalarOK) role wires carries edges of total width≥ m(widths_sum_ge).
Consequently histMoment C.hist m τ ≥ W for every 0 < τ ≤ 1 (labels_no_saving): the
hypotheses of prop11H_labels are jointly inconsistent (prop11H_labels_vacuous), and in
particular no network with the histogram Jain.bitR6 (rank sum W m − 1344189) satisfies them
(no_bitR6_labels).
The real two-stage network escapes this because its data outputs are sums of terms at
different frames (B = F x + E y, fixed by the copy correction T F = E), which the
single-label invariant cannot express. See R6BitNBFormal for the replacement calculus.
Formalization Note. Part of the Lean formalization of the round-six κ-improvement (integer-multiplication-kappa campaign, target IntMul.Kappa.jain_round6_framework). The statement is copied verbatim from the Lean development; the platform node carries the same declaration name. Definitions it mentions live in the IntMul_Kappa_R6_Defs* bundles (on top of the published κ bundles IntMul_Kappa_K_Defs*).
-- Round-six κ development (integer-multiplication-kappa), generated by skeleton subtraction.
import Definitions.Def_IntMul_Kappa_R6_Defs4
import Definitions.Def_IntMul_KappaJainData
set_option autoImplicit false
set_option relaxedAutoImplicit false
set_option maxHeartbeats 1000000
open IntMul IntMul.Kappa IntMul.Kappa.R6 IntMul.Kappa.R6.Bit IntMul.Kappa.R6.Bit.QHNet
open AModel AModelFac Matrix
variable {R : Type*} [CommRing R] {W T m : ℕ}
theorem IntMul.Kappa.R6.Bit.QHNet.labels_no_saving [Nontrivial R] (C : QHNet R W T m) (hm : 0 < m) {q : ℕ} (hq : q.Prime)
(hruns : C.RunsOK) (hE : C.EdgesOK q) (hlab : C.LabOK q) (hsc : C.ScalarOK) {τ : ℝ}
(_hτ0 : 0 < τ) (hτ1 : τ ≤ 1) : (W : ℝ) ≤ histMoment C.hist m τ := by sorry