Formula-Size Complexity Classes (Formula[s] and Formula[poly]) #
A language over Bool lies in FormulaSIZE s (Formula[s] in
Oliveira and Santhanam, Sections 1.2 and 3.1) when for every input length
n, its n-bit slice (Language.slice) has a De Morgan formula of leaf size at most s n
(Cslib.Circuits.Boolean.formulaSize) Jukna, Chapter 6. It lies in FormulaPoly
(Formula[poly]) when the formula leaf size of its n-bit slice is polynomially bounded in n.
For decision problems over an arbitrary type α with encoding enc : α ↪ List Bool,
FormulaSIZEOn enc s and FormulaPolyOn enc are the classes of problems whose image under enc
agrees with a language in FormulaSIZE s or FormulaPoly, respectively, mirroring PPoly and
PPolyOn (Complexity.Computability.Circuit.Boolean.PPoly).
Main definitions #
Cslib.Circuits.Boolean.FormulaSIZE: languages with De Morgan formulas of leaf size at mosts nat each input lengthn.Cslib.Circuits.Boolean.FormulaPoly: languages overBoolwith De Morgan formulas of polynomial leaf size.Cslib.Circuits.Boolean.FormulaSIZEOn,Cslib.Circuits.Boolean.FormulaPolyOn: problems with De Morgan formulas of leaf sizesor polynomial leaf size under an encodingenc.
Main results #
Cslib.Circuits.Boolean.formulaSize_not,Cslib.Circuits.Boolean.formulaSize_and_le,Cslib.Circuits.Boolean.formulaSize_or_le: leaf-size bounds for Boolean operations on functions.Cslib.Circuits.Boolean.FormulaSIZE_mono: monotonicity ofFormulaSIZE.Cslib.Circuits.Boolean.mem_FormulaPoly_iff_exists_formulas: characterization ofFormulaPolyby explicit formula families.Cslib.Circuits.Boolean.mem_FormulaPoly_iff_exists_mem_FormulaSIZE:FormulaPolyis the union ofFormulaSIZE (fun n => c * (n + 1) ^ c).Cslib.Circuits.Boolean.FormulaPoly.compl,Cslib.Circuits.Boolean.FormulaPoly.sup,Cslib.Circuits.Boolean.FormulaPoly.inf: closure ofFormulaPolyunder the Boolean operations.Cslib.Circuits.Boolean.mem_FormulaSIZEOn_encBits_iff,Cslib.Circuits.Boolean.mem_FormulaPolyOn_encBits_iff,Cslib.Circuits.Boolean.FormulaPolyOn.compl: agreement onencBitsand closure under complement.
References #
Negating a Boolean function does not increase its De Morgan formula leaf size.
Negating a Boolean function preserves its De Morgan formula leaf size.
The De Morgan formula leaf size of a conjunction is at most the sum of the leaf sizes of its conjuncts.
The De Morgan formula leaf size of a disjunction is at most the sum of the leaf sizes of its disjuncts.
FormulaSIZE is monotone in the leaf-size bound.
A language is in FormulaPoly if and only if the formula leaf size of its slices is
polynomially bounded.
FormulaPoly with formula families. A language is in FormulaPoly exactly when it has a
family of De Morgan formulas, one for each input length, whose leaf sizes are polynomially
bounded.
FormulaPoly is the union of the classes FormulaSIZE (fun n => c * (n + 1) ^ c).
The empty language is in FormulaPoly.
The universal language is in FormulaPoly.
FormulaPoly is closed under complement.
FormulaPoly is closed under union.
FormulaPoly is closed under intersection.
Problems with De Morgan formulas of leaf size s. A decision problem A : Set α, with
encoding enc : α ↪ List Bool of its instances, lies in FormulaSIZEOn enc s when some language
L ∈ FormulaSIZE s agrees with A along enc.
Instances For
Membership in FormulaSIZEOn enc s unfolds to agreement with a language in FormulaSIZE s.
Over bitstrings (encBits), membership in FormulaSIZEOn encBits s is membership in
FormulaSIZE s.
Problems with De Morgan formulas of polynomial leaf size. A decision problem A : Set α,
with encoding enc : α ↪ List Bool of its instances, lies in FormulaPolyOn enc when some
language L ∈ FormulaPoly agrees with A along enc.
Instances For
A problem is in FormulaPolyOn enc if and only if some language in FormulaPoly agrees with it
along enc.
FormulaPolyOn enc is the union of FormulaSIZEOn enc (fun n => c * (n + 1) ^ c).
Over bitstrings (encBits), membership in FormulaPolyOn encBits is membership in
FormulaPoly.
FormulaPolyOn is closed under complement.
A complement lies in FormulaPolyOn enc if and only if the problem does.