Large fibers from disjoint conjunction summaries #
Each disjoint signed conjunction has three majority assignments on its two
variables. After selecting all these majority outcomes, any remaining finite
message partitions a set of exactly 3 ^ |E| * 2 ^ (|V| - 2 * |E|) inputs.
@[simp]
theorem
Algebraic.Cutwidth.Aggregate.Geometry.Fiber.mem_majorityInputs
{E : Type u_1}
{V : Type u_2}
[Fintype E]
[Fintype V]
(edge : E → Entropy.SignedEdge V)
(x : V → Bool)
:
Majority inputs make every selected signed conjunction false.
theorem
Algebraic.Cutwidth.Aggregate.Geometry.Fiber.two_mul_card_le
{E : Type u_1}
{V : Type u_2}
[Fintype E]
[Fintype V]
(edge : E → Entropy.SignedEdge V)
(disjoint : Function.Injective (endpoint edge))
:
Disjoint signed pairs occupy exactly two distinct coordinates per edge.
theorem
Algebraic.Cutwidth.Aggregate.Geometry.Fiber.card_majorityInputs
{E : Type u_1}
{V : Type u_2}
[Fintype E]
[Fintype V]
(edge : E → Entropy.SignedEdge V)
(disjoint : Function.Injective (endpoint edge))
:
All majority outcomes of disjoint signed conjunctions occur on this many inputs.
theorem
Algebraic.Cutwidth.Aggregate.Geometry.Fiber.card_majorityInputs_le_mul_of_fibers
{E : Type u_1}
{V : Type u_2}
{Y : Type u_3}
[Fintype E]
[Fintype V]
[Fintype Y]
(edge : E → Entropy.SignedEdge V)
(key : (V → Bool) → Y)
{K : ℕ}
(fibers : ∀ (y : Y), {x ∈ majorityInputs edge | key x = y}.card ≤ K)
:
Restricting to majority outcomes leaves the same finite-key fiber bound.
theorem
Algebraic.Cutwidth.Aggregate.Geometry.Fiber.majority_product_le_of_fibers
{E : Type u_1}
{V : Type u_2}
{Y : Type u_3}
[Fintype E]
[Fintype V]
[Fintype Y]
(edge : E → Entropy.SignedEdge V)
(disjoint : Function.Injective (endpoint edge))
(key : (V → Bool) → Y)
{K : ℕ}
(fibers : ∀ (y : Y), {x ∈ majorityInputs edge | key x = y}.card ≤ K)
:
Exact majority counting and a fiber cap bound the residual message alphabet.
theorem
Algebraic.Cutwidth.Aggregate.Geometry.Fiber.log_card_le_of_fibers
{E : Type u_1}
{V : Type u_2}
{Y : Type u_3}
[Fintype E]
[Fintype V]
[Fintype Y]
(edge : E → Entropy.SignedEdge V)
(disjoint : Function.Injective (endpoint edge))
(key : (V → Bool) → Y)
{K : ℕ}
(hK : 0 < K)
(fibers : ∀ (y : Y), {x ∈ majorityInputs edge | key x = y}.card ≤ K)
:
↑(Fintype.card V) + (Real.logb 2 3 - 2) * ↑(Fintype.card E) ≤ Real.logb 2 ↑(Fintype.card Y) + Real.logb 2 ↑K
The logarithmic count for an arbitrary finite residual message alphabet.
theorem
Algebraic.Cutwidth.Aggregate.Geometry.Fiber.log_card_le_of_boolean_fibers
{E : Type u_1}
{V : Type u_2}
{R : Type u_3}
[Fintype E]
[Fintype V]
[Fintype R]
(edge : E → Entropy.SignedEdge V)
(disjoint : Function.Injective (endpoint edge))
(key : (V → Bool) → R → Bool)
{K : ℕ}
(hK : 0 < K)
(fibers : ∀ (y : R → Bool), {x ∈ majorityInputs edge | key x = y}.card ≤ K)
:
A residual Boolean key spends one bit per coordinate after majority selection.