noncomputable def
CommunicationComplexity.Deterministic.Rank.boolFunctionMatrix
{X : Type u_1}
{Y : Type u_2}
(f : X → Y → Bool)
:
The real-valued matrix of a Boolean function f : X → Y → Bool,
where the (x, y) entry is 1 if f x y = true and 0 otherwise.
Equations
Instances For
noncomputable def
CommunicationComplexity.Deterministic.Rank.boolFunctionRank
{X : Type u_1}
{Y : Type u_2}
[Fintype Y]
(f : X → Y → Bool)
:
The rank of a Boolean function f, defined as the rank of its
real-valued matrix over ℝ.
Equations
Instances For
noncomputable def
CommunicationComplexity.Deterministic.Rank.rectMatrix
{X : Type u_1}
{Y : Type u_2}
(R : Set (X × Y))
:
The {0,1}-matrix of a subset R ⊆ X × Y.
Equations
Instances For
theorem
CommunicationComplexity.Deterministic.Rank.rank_rectMatrix_le_one
{X : Type u_1}
{Y : Type u_2}
[Fintype Y]
(R : Set (X × Y))
(hR : Rectangle.IsRectangle R)
:
For a rectangle R = A ×ˢ B, rectMatrix R is an outer product,
hence has rank ≤ 1.
theorem
CommunicationComplexity.Deterministic.Rank.boolFunctionRank_le_ncard
{X : Type u_1}
{Y : Type u_2}
[Finite X]
[Fintype Y]
(f : X → Y → Bool)
(Part : Set (Set (X × Y)))
(hPart : Rectangle.IsMonoPartition Part f)
:
The rank of a Boolean function is at most the number of rectangles in any monochromatic rectangle partition. Each true-mono rectangle contributes a rank-1 matrix, M_f is their sum, and rank is subadditive.
theorem
CommunicationComplexity.Deterministic.Rank.boolFunctionRank_le_pow_of_communicationComplexity_le
{X : Type u_1}
{Y : Type u_2}
[Finite X]
[Fintype Y]
(f : X → Y → Bool)
(n : ℕ)
(h : communicationComplexity f ≤ ↑n)
:
If the deterministic CC of f is at most n, then the rank
of f is at most 2^n.