Documentation

Complexity.Computability.QueryComplexity.SensitivitySeparation.Internal.Defs

Superquadratic sensitivity separation: model #

This file fixes the model of Boolean functions f : (I → Bool) → Bool used throughout the separation: flipping a finite set of input coordinates, the sensitivity of f at an input and overall, and the block sensitivity of f at an input and overall. All maxima are Finset.sups over the actual finite input space or the finite space of block families, so the definitions agree literally with the standard ones. These measures are internal to the construction, which needs arbitrary finite coordinate types; Bridge identifies them on Fin n with CSLib's BitString.sensitivity and QueryComplexity.blockSensitivity.

Main definitions #

References #

noncomputable def Cslib.QueryComplexity.SensitivitySeparation.Internal.flip {I : Type} (x : I → Bool) (B : Finset I) :
I → Bool

Flip exactly the coordinates belonging to the specified block.

Instances For
    theorem Cslib.QueryComplexity.SensitivitySeparation.Internal.flip_apply {I : Type} (x : I → Bool) (B : Finset I) (i : I) :
    flip x B i = if i ∈ B then !x i else x i

    Coordinatewise, flip x B negates exactly the coordinates in B.

    noncomputable def Cslib.QueryComplexity.SensitivitySeparation.Internal.sensitivityAt {I : Type} [Fintype I] (f : (I → Bool) → Bool) (x : I → Bool) :

    The ordinary number of sensitive individual input coordinates.

    Instances For

      Maximum ordinary sensitivity over all Boolean inputs.

      Instances For
        noncomputable def Cslib.QueryComplexity.SensitivitySeparation.Internal.blockSensitivityAt {I : Type} [Fintype I] (f : (I → Bool) → Bool) (x : I → Bool) :

        Maximum size of a family of disjoint nonempty sensitive blocks at an input. The empty family is allowed and contributes zero. Invalid families contribute zero.

        Instances For

          Maximum block sensitivity over all Boolean inputs.

          Instances For