Succinct MCSP #
Succinct MCSP asks, given samples (x₁, b₁), …, (x_t, b_t) of a Boolean function on n inputs
and a threshold s, whether some circuit with at most s gates takes the value bᵢ at xᵢ for
every i [OliveiraPichSanthanam2019, proof of Theorem 1.4]. Its instances list samples instead
of a whole truth table, so they may be much shorter than the 2 ^ n bits of an instance of MCSP.
Contradictory samples are allowed; they make a no-instance.
When the samples are the values of f on a set S of inputs (Instance.ofFunction), the
question is whether f has complexity at most s on S, cslib's
complexityOn interpretation S (single f) (ofFunction_mem_iff). Taking every input as a sample
gives MCSP (ofFunction_univ_mem_iff). Sholomov's bound for partial functions gives a Shannon
window here too: on 2 p inputs, every instance of at most 2 ^ p consistent samples is a
yes-instance at every threshold of at least (1 + ε) 2 ^ p / p, for large p
(eventually_ofFunction_mem).
Main definitions #
Cslib.SuccinctMCSP.Instance,Cslib.SuccinctMCSP: the instances and yes-instances.
Main results #
Cslib.SuccinctMCSP.ofFunction_mem_iff: samples of a function, as complexity on a support.Cslib.SuccinctMCSP.ofFunction_univ_mem_iff: all samples of a function, as MCSP.Cslib.SuccinctMCSP.eventually_ofFunction_mem: few samples always have small circuits.
References #
The instance whose samples are the values of f on the inputs in S, with threshold s.
Instances For
The yes-instances are those satisfied by some function computable within the threshold.
Samples of f on S are a yes-instance exactly when f has complexity at most s on S.
With every input as a sample, Succinct MCSP is MCSP.
Dropping samples keeps a yes-instance a yes-instance.
Few samples have small circuits [Sho69]. For every ε > 0 and all large p,
every instance of at most 2 ^ p samples of a function on 2 p inputs is a yes-instance at every
threshold of at least (1 + ε) 2 ^ p / p.