Documentation

CommunicationComplexity.Deterministic.Rank

noncomputable def CommunicationComplexity.Deterministic.Rank.boolFunctionMatrix {X : Type u_1} {Y : Type u_2} (f : XYBool) :

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 : XYBool) :

    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

        For a rectangle R = A ×ˢ B, rectMatrix R is an outer product, hence has rank ≤ 1.

        theorem Matrix.rank_add_le {X : Type u_1} {Y : Type u_2} [Fintype Y] (A B : Matrix X Y ) :
        (A + B).rank A.rank + B.rank

        Matrix rank is subadditive: rank (A + B) ≤ rank A + rank B.

        theorem Matrix.rank_sum_le {X : Type u_1} {Y : Type u_2} [Fintype Y] {ι : Type u_3} (s : Finset ι) (A : ιMatrix X Y ) :
        (∑ is, A i).rank is, (A i).rank

        Matrix rank is subadditive over finite sums.

        theorem CommunicationComplexity.Deterministic.Rank.boolFunctionRank_le_ncard {X : Type u_1} {Y : Type u_2} [Finite X] [Fintype Y] (f : XYBool) (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.

        If the deterministic CC of f is at most n, then the rank of f is at most 2^n.

        Log-rank lower bound: the deterministic communication complexity of a Boolean function f is at least ⌈log₂(rank f)⌉.