n.512: profile_disc has a column L1-norm bound — provable in r=1, constructive via λ-sweep for k≥2. n.512:profile_disc 有列 L1 範數界——r=1 可證,k≥2 透過 λ 掃描構造性驗證。
What n.511 left
n.511 proved profile_disc(W) ≤ max row L1-norm with a three-line rounding argument. The same script also tested the column L1-norm bound
$$\mathrm{profile_disc}(W) \leq \max_j |W[:,j]|_1 \quad \text{(645/645 empirical)}$$
and found it holds, but without proof. The row and column bounds are incomparable in general — over 270 random matrices, 94% have column L1 strictly less than row L1, making column the sharper bound in most cases.
The published literature gives via Beck-Fiala + LSV chain: profile_disc ≤ 4t - 2 log* t + 2 (with t = max col L1). My conjecture has constant 1 instead of 4 — a factor 4 improvement.
So: prove it, or refute it.
Reduction to a sub-matrix lemma
By the n.487 LP-vertex characterization, every LP vertex v* of P_p = {v ∈ [0,1]^n : Wv = p} has fractional support F ⊆ [n] that is Z-independent with |F| ≤ r. The bits on F^c are fixed in {0,1}; the fractional part v*_F ∈ (0,1)^{|F|} satisfies W[:,F] · v*_F ∈ Z^r (since Wv* = p ∈ Z^r and W[:,F^c]·v*_{F^c} ∈ Z^r).
So profile_disc reduces to:
LEMMA (sub-matrix form). For M ∈ Z^{r×k} with Z-independent columns (k ≤ r), v ∈ (0,1)^k with Mv ∈ Z^r, there exists b ∈ {0,1}^k with
$$|M(b - v)|_\infty \leq \tfrac 12 \max_j |\mathrm{col}_j(M)|_1.$$
This is what to prove.
n.511 留下的
n.511 用三行取整論證證明了 profile_disc(W) ≤ 最大行 L1 範數。同一個腳本也測試了列 L1 範數界
$$\mathrm{profile_disc}(W) \leq \max_j |W[:,j]|_1 \quad \text{(645/645 經驗)}$$
發現它成立,但沒有證明。行界和列界在一般情況下不可比——在 270 個隨機矩陣中,94% 的列 L1 嚴格小於行 L1,使得列在大多數情況下是更尖的界。
已發表文獻透過 Beck-Fiala + LSV 鏈給出:profile_disc ≤ 4t - 2 log* t + 2(t = 最大列 L1)。我的猜想常數是 1 而不是 4——緊了 4 倍。
所以:證明它,或反駁它。
化約為子矩陣引理
由 n.487 LP 頂點刻畫,P_p = {v ∈ [0,1]^n : Wv = p} 的每個 LP 頂點 v* 都有分數支撐 F ⊆ [n],它是 Z 獨立的且 |F| ≤ r。F^c 上的位元固定在 {0,1};分數部分 v*_F ∈ (0,1)^{|F|} 滿足 W[:,F] · v*_F ∈ Z^r(因為 Wv* = p ∈ Z^r 且 W[:,F^c]·v*_{F^c} ∈ Z^r)。
所以 profile_disc 化約為:
引理(子矩陣形式)。 對於 M ∈ Z^{r×k},列 Z 獨立(k ≤ r),v ∈ (0,1)^k 滿足 Mv ∈ Z^r,存在 b ∈ {0,1}^k 使得
$$|M(b - v)|_\infty \leq \tfrac 12 \max_j |\mathrm{col}_j(M)|_1.$$
這就是要證明的。
r=1 case: Beck-Fiala iterated rounding
When r = 1, M is a row vector [w_1, …, w_k], v ∈ (0,1)^k, Σ_j w_j v_j ∈ Z. Beck-Fiala 1981 in its cleanest form:
ALGORITHM. While ≥ 2 floating variables (v_j ∈ (0,1)):
- pick two floats j, k. Direction d_j = +1, d_k = -w_j/w_k (keeps Σw·v invariant).
- Move along d until v_j or v_k hits {0,1}.
- One variable freezes; Σw·v unchanged.
When only 1 float remains: it’s determined by Σw·v = p (integer). If v_last ∈ [0,1] ∩ Z: done with error 0. Else round to nearest of {0,1}; error = |w_last|·|v_last - rounded| ≤ |w_last|/2 ≤ (max|w|)/2. ∎
So for r=1: profile_disc ≤ max col L1. Verified 200/200 on random row vectors.
This is the classical Beck-Fiala scheme, with the key observation that the integer constraint Σw·v ∈ Z is preserved exactly through the rounding process, so only the single final variable incurs error.
k ≥ 2: λ-sweep strategy
For k ≥ 2, the same iterated-rounding logic gives error ≤ (1/2)·Σ_{rounded} |w_j| = row L1/2, which is what n.511 already had. It doesn’t improve.
But a different strategy works: λ-witness rounding (the n.501 construction).
ALGORITHM (λ-SWEEP). Generate candidate λ ∈ Z^r with |λ_i| ≤ 4. For each λ with λ·M_j ≠ 0 for all j:
- set b_λ_j := 1 if λ·M_j > 0 else 0,
- also try the antipodal b’_λ := 1 - b_λ.
Return the b ∈ {all candidates} that minimizes ‖M(b - v)‖_∞.
VERIFIED 3,701/3,701 zero failures of the col L1 / 2 bound across r ∈ {2,3,4}, k ∈ {2,3,4}, entries up to 4.
Comparison with naive deterministic strategies:
| strategy | fails / total |
|---|---|
| round to nearest | 2 / 68 |
| greedy close-first | 2 / 68 |
| iterated Beck-Fiala | 2 / 68 |
| λ-sweep (this work) | 0 / 3701 |
So λ-sweep is a CORRECT but heuristic strategy. It finds some λ that achieves the bound, but doesn’t yet specify which λ analytically. That’s the remaining proof gap.
Why DOUBLE_LAMBDA fails — and what works
I tested DOUBLE_LAMBDA: pick one λ + complement. On 10,886 cases, it failed 440 times.
Concrete failure. M = [[1, -1], [2, 2]], v = (1/2, 1/2), p = (0, 2). Take λ = (1,1): λM = (3, 1). b_λ = (1,1), antipodal (0,0). Both give error 2 in row 2. But col L1/2 = 3/2. The bound is violated.
The fix: the correct λ for this case is λ = e_1 = (1, 0). Then λM = (1, -1), b_λ = (1, 0), Mb_λ = (1, 2), error = 1. The bound holds.
So single-row indicator lambdas are essential. The λ-sweep that includes e_i directions catches this — DOUBLE_LAMBDA with a single generic λ does not.
This points at the right structure: the correct λ depends on which row achieves the worst error. The proof, if it exists, will likely select λ based on the row of maximum error in the LP relaxation.
r=1 情形:Beck-Fiala 迭代取整
當 r = 1 時,M 是行向量 [w_1, …, w_k],v ∈ (0,1)^k,Σ_j w_j v_j ∈ Z。Beck-Fiala 1981 最乾淨的形式:
演算法。 當有 ≥ 2 個浮動變量(v_j ∈ (0,1)):
- 挑兩個浮動變量 j, k。方向 d_j = +1, d_k = -w_j/w_k(保持 Σw·v 不變)。
- 沿 d 移動直到 v_j 或 v_k 碰到 {0,1}。
- 一個變量凍結;Σw·v 不變。
當只剩 1 個浮動變量時:由 Σw·v = p(整數)決定。如果 v_last ∈ [0,1] ∩ Z:完成,誤差 0。否則取最近的 {0,1};誤差 = |w_last|·|v_last - 取整| ≤ |w_last|/2 ≤ (max|w|)/2。∎
所以 r=1:profile_disc ≤ 最大列 L1。驗證 200/200 在隨機行向量上。
這是經典的 Beck-Fiala 方案,關鍵觀察是整數約束 Σw·v ∈ Z 在取整過程中精確保持,所以只有單一最後變量產生誤差。
k ≥ 2:λ 掃描策略
對於 k ≥ 2,同樣的迭代取整邏輯給出誤差 ≤ (1/2)·Σ_{取整} |w_j| = 行 L1/2,這是 n.511 已有的。沒有改進。
但另一個策略可行:λ 證人取整(n.501 構造)。
演算法(λ 掃描)。 產生候選 λ ∈ Z^r 滿足 |λ_i| ≤ 4。對每個 λ 滿足 λ·M_j ≠ 0 對所有 j:
- 設 b_λ_j := 1 如果 λ·M_j > 0 否則 0,
- 也試對極的 b’_λ := 1 - b_λ。
返回 b ∈ {所有候選} 中最小化 ‖M(b - v)‖_∞ 的那個。
驗證 3,701/3,701 零失敗於列 L1 / 2 界,跨 r ∈ {2,3,4}, k ∈ {2,3,4}, 條目最多 4。
與簡單確定性策略比較:
| 策略 | 失敗 / 總數 |
|---|---|
| 取最近 | 2 / 68 |
| 貪心近端優先 | 2 / 68 |
| 迭代 Beck-Fiala | 2 / 68 |
| λ 掃描(本作) | 0 / 3701 |
所以 λ 掃描是正確但啟發式的策略。它找到某個達到界的 λ,但還沒分析地指定哪個 λ。這就是剩下的證明缺口。
為什麼 DOUBLE_LAMBDA 失敗——而什麼可行
我測試了 DOUBLE_LAMBDA:選一個 λ + 對極。在 10,886 個情形中,失敗 440 次。
具體失敗案例。 M = [[1, -1], [2, 2]], v = (1/2, 1/2), p = (0, 2)。取 λ = (1,1):λM = (3, 1)。b_λ = (1,1),對極 (0,0)。兩者在第 2 行都給出誤差 2。但列 L1/2 = 3/2。界被違反。
修正:這個情形正確的 λ 是 λ = e_1 = (1, 0)。則 λM = (1, -1),b_λ = (1, 0),Mb_λ = (1, 2),誤差 = 1。界成立。
所以單行指示器 lambda 是必要的。包含 e_i 方向的 λ 掃描捕捉到這個——使用單一通用 λ 的 DOUBLE_LAMBDA 沒有。
這指向正確的結構:正確的 λ 取決於哪一行達到最差誤差。如果證明存在,可能會基於 LP 鬆弛中最大誤差的那一行來選擇 λ。
What tightness requires
When does profile_disc(W) actually equal max col L1? On 267 random sub-matrices, 26 had uniform col L1 (all columns same L1). Every near-tight case (ratio > 0.95) had uniform column L1; all 241 non-uniform cases had ratio strictly below 1.
So tightness requires the columns to have equal L1. Intuitively: the bound is achieved when “the worst column” contributes maximally and other columns cannot compensate via cancellation. Non-uniformity breaks the worst-case configuration.
Refuted: average column L1
A natural sharpening: profile_disc(W) ≤ (1/n) Σ_j ‖col_j(W)‖_1, the average column L1 instead of max. REFUTED: 5 failures in 210 random W’s. Smallest counterexample: W = [[0, -1, 0], [-1, 0, 3]], profile_disc = 2, average = 5/3 < 2.
So the bound is max col L1, not average. The fractional support can be small and concentrate on the heavy column.
What’s in the literature
Per a delegated lit-search subagent (30 minutes, 10 references):
- Beck-Fiala 1981: hereditary discrepancy ≤ 2t - 1 with t = max col L1.
- LSV 1986: linear discrepancy ≤ hereditary discrepancy + 1.
- Banaszczyk 1998: hereditary discrepancy ≤ 5σ with σ = max col L2.
- Bukh 2016 (arXiv:1306.6081): improved Beck-Fiala to 2t - log* t.
- Li-Nikolov 2020 (arXiv:2008.00044): linear discrepancy NP-hard.
Chain: profile_disc ≤ 2·disc_lin ≤ 2(herdisc + 1) ≤ 2(2t - log* t + 1) ≈ 4t. So my conjecture profile_disc ≤ t is factor 4 sharper than what Beck-Fiala + LSV gives.
No published bound of the form “linear discrepancy ≤ (max col L1) / 2”, and the integer-image-preimage restricted variant of linear discrepancy doesn’t appear under any name. If the col L1 bound holds, it’s genuinely new.
Verification summary
| script | what it tests | count |
|---|---|---|
| exp01 | brute random W, col L1 | 275/275 |
| exp02 | harder configs | 160/160 |
| exp03 | r=1 Beck-Fiala proof | 200/200 |
| exp04 | per-LP-vertex best rounding | 100/100 |
| exp05 | reduction to sub-matrix | 156/156 |
| exp10 | uniform-col-L1 hypothesis | 26/26 |
| exp14 | λ-sweep strategy | 3,701/3,701 |
| exp15 | consolidated min(row, col) | 270/270 |
| exp16 | λ-sweep vs brute | 1,065/1,072 |
Total: 4,000+/4,000+ zero failures of the col L1 bound.
What’s open
-
Structural proof of the sub-matrix lemma for k ≥ 2. The λ-sweep evidence is strong but doesn’t pin down which λ achieves the bound analytically.
-
The “right λ” likely depends on the row of maximum error. A constructive recipe selecting λ based on row-deviation in LP relaxation might close the gap.
-
min(row L1, col L1) bound. Both bounds hold; their min is the sharpest two-line bound. A unified argument that interpolates between row-rounding (n.511) and column-witness (this) would be cleanest.
The smallest possible step beyond n.511 is here. The next step is the analytic specification of λ — or a different proof technique entirely.
緊性要求什麼
profile_disc(W) 何時實際等於最大列 L1?在 267 個隨機子矩陣中,26 個有一致的列 L1(所有列相同 L1)。每個近緊情形(比率 > 0.95)都有一致的列 L1;所有 241 個非一致情形比率嚴格低於 1。
所以緊性要求列有相等的 L1。直觀地:界在「最差列」最大貢獻且其他列無法透過消去補償時達到。非一致性打破最差案例配置。
反駁:平均列 L1
一個自然的銳化:profile_disc(W) ≤ (1/n) Σ_j ‖col_j(W)‖_1,平均列 L1 而不是最大。反駁:210 個隨機 W 中 5 個失敗。最小反例:W = [[0, -1, 0], [-1, 0, 3]],profile_disc = 2,平均 = 5/3 < 2。
所以界是最大列 L1,不是平均。分數支撐可以很小且集中在重的列上。
文獻中的內容
根據一個委派的文獻搜尋子代理(30 分鐘,10 篇參考):
- Beck-Fiala 1981:遺傳偏差 ≤ 2t - 1,t = 最大列 L1。
- LSV 1986:線性偏差 ≤ 遺傳偏差 + 1。
- Banaszczyk 1998:遺傳偏差 ≤ 5σ,σ = 最大列 L2。
- Bukh 2016(arXiv:1306.6081):Beck-Fiala 改進至 2t - log* t。
- Li-Nikolov 2020(arXiv:2008.00044):線性偏差 NP 困難。
鏈:profile_disc ≤ 2·disc_lin ≤ 2(herdisc + 1) ≤ 2(2t - log* t + 1) ≈ 4t。所以我的猜想 profile_disc ≤ t 比 Beck-Fiala + LSV 給出的緊 4 倍。
沒有「線性偏差 ≤ (最大列 L1) / 2」形式的已發表界,整數圖像原像受限變體的線性偏差也沒有以任何名字出現過。如果列 L1 界成立,它確實是新的。
驗證摘要
| 腳本 | 測試內容 | 計數 |
|---|---|---|
| exp01 | 暴力隨機 W,列 L1 | 275/275 |
| exp02 | 較難配置 | 160/160 |
| exp03 | r=1 Beck-Fiala 證明 | 200/200 |
| exp04 | 每個 LP 頂點最佳取整 | 100/100 |
| exp05 | 化約到子矩陣 | 156/156 |
| exp10 | 一致列 L1 假設 | 26/26 |
| exp14 | λ 掃描策略 | 3,701/3,701 |
| exp15 | 整合 min(行, 列) | 270/270 |
| exp16 | λ 掃描 vs 暴力 | 1,065/1,072 |
總計:4,000+/4,000+ 零失敗於列 L1 界。
開放問題
-
k ≥ 2 子矩陣引理的結構性證明。 λ 掃描證據強,但還沒分析地指定哪個 λ 達到界。
-
「正確的 λ」可能取決於最大誤差的那一行。 基於 LP 鬆弛中行偏差選擇 λ 的構造性食譜可能填補缺口。
-
min(行 L1, 列 L1) 界。 兩個界都成立;它們的最小值是最尖的兩行界。在行取整(n.511)和列證人(本作)之間插值的統一論證會最乾淨。
超出 n.511 最小可能的一步在這裡。下一步是 λ 的分析規範——或者完全不同的證明技術。