Randomized reductions with one-sided error on promise problems #
For randomized hardness results in metacomplexity Ilango, Section 2, p. 34:11,
Ilango, Loff and Oliveira, Section 4.2, Lemmas 15–16, pp. 22:20–22:23,
Hirahara, ECCC TR22-119, Lemma 8.3, p. 26 and Theorem 8.5, pp. 30–31, a
randomized polynomial-time many-one reduction with one-sided error
(PromiseProblem.RPReducible, and the threshold-indexed generalization
PromiseProblem.RPReducibleWithError) is a uniform strict PPT program R : α → ProbComp β that
maps every yes-instance of X exclusively into Y.yes and maps every no-instance of X into
Y.no with probability at least 2 / 3 (or s a).
Following the terminology of Ilango, Section 2, p. 34:11, RPReducible errs only on
no-instances (the coRP error orientation): in metacomplexity reductions, upper bounds on
circuit or Kolmogorov complexity hold deterministically for every random choice on yes-instances
while lower bounds on no-instances hold with high probability. Consequently, PromiseCoRP and
PromiseBPP are closed under RPReducible (PromiseProblem.RPReducible.mem_PromiseCoRP,
PromiseProblem.RPReducible.mem_PromiseBPP, PromiseProblem.NP_subset_coRP_of_forall_rpReducible,
PromiseProblem.NP_subset_BPP_of_forall_rpReducible), whereas the dual RP error orientation (zero
error on no-instances, bounded error on yes-instances, as in [Valiant and Vazirani, pp. 86–87]
[VV86]) is expressed via promise-problem complement as
RPReducibleWithError encA encB s Xᶜ Yᶜ (PromiseProblem.rpReducibleWithError_compl_iff,
PromiseProblem.RPReducible.mem_PromiseRP_of_compl).
Because outer measures are non-negative, the soundness inequality in RPReducibleWithError holds
vacuously at any no-instance a with s a ≤ 0; in particular, the additive composition lemma
PromiseProblem.RPReducibleWithError.trans_add (which produces threshold s₁ a + s₂ - 1) gives a
non-trivial soundness bound at a only when 1 < s₁ a + s₂.
Main definitions #
Cslib.Complexity.PromiseProblem.RPReducibleWithError,Cslib.Complexity.PromiseProblem.RPReducible: randomized polynomial-time many-one reductions with one-sided error on promise problems.
Main results #
Cslib.Complexity.PromiseProblem.rpReducibleWithError_iff_probability,Cslib.Complexity.PromiseProblem.rpReducible_iff_probability,Cslib.Complexity.PromiseProblem.rpReducibleWithError_iff_toOuterMeasure_eq_one,Cslib.Complexity.PromiseProblem.rpReducible_iff_toOuterMeasure_eq_one,Cslib.Complexity.PromiseProblem.rpReducible_iff_exists_seeded,Cslib.Complexity.PromiseProblem.rpReducibleWithError_compl_iff: faithfulness and convention bridges.Cslib.Complexity.PromiseProblem.RPReducibleWithError.mono,Cslib.Complexity.PromiseProblem.PolyTimeReducible.rpReducibleWithError,Cslib.Complexity.PromiseProblem.PolyTimeReducible.rpReducible,Cslib.Complexity.PolyTimeReducible.rpReducible_ofSet,Cslib.Complexity.PromiseProblem.RPReducibleWithError.refl,Cslib.Complexity.PromiseProblem.RPReducible.refl,Cslib.Complexity.PromiseProblem.RPReducibleWithError.of_subset,Cslib.Complexity.PromiseProblem.RPReducible.of_subset: monotonicity, reflexivity, and lifting of deterministic reductions.Cslib.Complexity.PromiseProblem.RPReducibleWithError.trans,Cslib.Complexity.PromiseProblem.RPReducibleWithError.trans_add,Cslib.Complexity.PromiseProblem.RPReducibleWithError.of_computableInPolyTime,Cslib.Complexity.PromiseProblem.PolyTimeReducible.trans_rpReducibleWithError,Cslib.Complexity.PromiseProblem.RPReducibleWithError.trans_polyTimeReducible,Cslib.Complexity.PromiseProblem.PolyTimeReducible.trans_rpReducible,Cslib.Complexity.PromiseProblem.RPReducible.trans_polyTimeReducible: composition of randomized and deterministic reductions with multiplicative and additive error accounting.Cslib.Complexity.PromiseProblem.RPReducible.mem_PromiseCoRP,Cslib.Complexity.PromiseProblem.RPReducible.mem_PromiseCoRP_of_mem_PromiseP,Cslib.Complexity.PromiseProblem.RPReducible.mem_coRP_of_ofSet,Cslib.Complexity.PromiseProblem.RPReducible.mem_PromiseBPP,Cslib.Complexity.PromiseProblem.RPReducible.mem_BPP_of_ofSet,Cslib.Complexity.PromiseProblem.RPReducible.mem_PromiseRP_of_compl,Cslib.Complexity.PromiseProblem.RPReducible.mem_PromiseBPP_of_compl,Cslib.Complexity.PromiseProblem.RPReducible.mem_RP_of_compl_ofSet,Cslib.Complexity.PromiseProblem.NP_subset_coRP_of_forall_rpReducible,Cslib.Complexity.PromiseProblem.NP_subset_BPP_of_forall_rpReducible: closure ofPromiseCoRP,PromiseBPPandPromiseRPunder randomized one-sided reductions.
References #
- O. Goldreich, On promise problems: a survey
- R. Ilango, Approaching MCSP from Above and Below: Hardness for a Conditional Variant and AC⁰[p], Section 2, p. 34:11
- R. Ilango, B. Loff, I. C. Oliveira, NP-Hardness of Circuit Minimization for Multi-Output Functions, Section 4.2, Lemmas 15–16, pp. 22:20–22:23
- S. Hirahara, NP-Hardness of Learning Programs and Partial MCSP, ECCC TR22-119, Section 8, Lemma 8.3 and Theorem 8.5
- M. Sipser, Introduction to the Theory of Computation
- L. G. Valiant, V. V. Vazirani, NP is as Easy as Detecting Unique Solutions, pp. 86–87
Randomized reductions with one-sided error #
A randomized polynomial-time many-one reduction with one-sided error and soundness
threshold s : α → ℝ from a promise problem X to a promise problem Y (library generalization of
the fixed-threshold reduction of Ilango, Section 2, p. 34:11 to support general
constant or subconstant soundness thresholds as in
Ilango, Loff and Oliveira, Section 4.2, Lemmas 15–16, pp. 22:20–22:23 and
Hirahara, ECCC TR22-119, Lemma 8.3, p. 26 and Theorem 8.5, pp. 30–31): a uniform
strict PPT program R : α → ProbComp β such that:
- Completeness (no false negatives on
X.yes): for everya ∈ X.yes, every supported output ofR alies inY.yes; - Soundness (
s aonX.no): for everya ∈ X.no,R aoutputs an instance inY.nowith probability at leasts a.
This is the coRP error orientation (error only on no-instances); the dual RP error orientation
(error only on yes-instances) is RPReducibleWithError encA encB s Xᶜ Yᶜ
(rpReducibleWithError_compl_iff). Because outer measures are non-negative, the soundness
condition at a ∈ X.no holds vacuously whenever s a ≤ 0. Instances outside X.yes ∪ X.no are
unconstrained.
Instances For
A randomized polynomial-time many-one reduction with one-sided error from a promise problem
X to a promise problem Y, with the standard soundness threshold 2 / 3
Ilango, Section 2, p. 34:11: a uniform strict PPT program R : α → ProbComp β
mapping every yes-instance of X exclusively into Y.yes and mapping every no-instance of X into
Y.no with probability at least 2 / 3. Following [Ila20a], this has one-sided error on
no-instances (coRP orientation); see RPReducible.mem_PromiseCoRP and
rpReducibleWithError_compl_iff.
Instances For
Characterization of RPReducibleWithError using the Pr[...] event notation.
Characterization of RPReducible using the Pr[...] event notation.
Equivalence of support-based completeness and probability-one completeness for
RPReducibleWithError.
Equivalence of support-based completeness and probability-one completeness for
RPReducible Ilango, Section 2, p. 34:11.
Lowering the soundness threshold preserves RPReducibleWithError.
Complement-duality identity for RPReducibleWithError (library identity): a randomized
reduction between the complement promise problems Xᶜ and Yᶜ with threshold s is a randomized
reduction from X to Y in the dual one-sided error orientation, mapping no-instances exclusively
into Y.no and mapping yes-instances into Y.yes with probability at least s a. When s a is an
inverse-polynomial threshold such as 1 / (4 * n), this represents the unamplified one-sided
orientation of Valiant and Vazirani [Valiant and Vazirani, Section 1, Theorem 1.1, pp. 86–87]
[VV86], Goldreich, Section 6.2.
Seeded-function characterization of RPReducible Ilango, Section 2, p. 34:11:
X is RPReducible to Y if and only if there are a polynomial p and a function
f : α × List Bool → β, computable in polynomial time with respect to encPair encA encBits and
encB, such that for every a ∈ X.yes and every random string r of length p(|a|) we have
f(a, r) ∈ Y.yes, and for every a ∈ X.no at least two thirds of the random strings r of length
p(|a|) satisfy f(a, r) ∈ Y.no.
Lifting deterministic reductions and structural closure #
Every deterministic polynomial-time reduction of promise problems lifts to a randomized
reduction with soundness 1 (zero error).
Every deterministic polynomial-time reduction of promise problems is a randomized one-sided
reduction (RPReducible).
Every deterministic polynomial-time reduction between decision problems gives an RPReducible
reduction between their promise problems.
Every promise problem reduces to itself by a zero-error randomized reduction.
Every promise problem is RPReducible to itself.
Enlarging the target promise preserves RPReducibleWithError.
Enlarging the target promise preserves RPReducible.
Composition of randomized one-sided reductions (multiplicative soundness, library lemma):
composing a reduction from X to Y with soundness s₁ a and a reduction from Y to Z with
uniform soundness s₂ yields a reduction from X to Z with soundness s₁ a * s₂.
Composition of randomized one-sided reductions (additive error accounting, library lemma):
composing a reduction from X to Y with soundness s₁ a (error 1 - s₁ a) and a reduction from
Y to Z with soundness s₂ (error 1 - s₂) yields a reduction from X to Z with soundness
s₁ a + s₂ - 1. Note that when s₁ a + s₂ ≤ 1, the resulting threshold s₁ a + s₂ - 1 ≤ 0 holds
vacuously by non-negativity of outer measure.
Precomposing an RPReducibleWithError reduction with an explicit deterministic polynomial-time
reduction f from X to Y pulls back its soundness threshold along f.
Precomposing an RPReducibleWithError reduction at a uniform threshold with a deterministic
polynomial-time reduction preserves its soundness threshold. Because PolyTimeReducible
existentially quantifies over the reduction function f, the output threshold cannot refer to
f a; for an instance-dependent threshold fun a => s (f a), use
RPReducibleWithError.of_computableInPolyTime with an explicit f.
Postcomposing an RPReducibleWithError reduction with a deterministic polynomial-time reduction
preserves its soundness threshold.
Precomposing an RPReducible reduction with a deterministic polynomial-time reduction yields
an RPReducible reduction.
Postcomposing an RPReducible reduction with a deterministic polynomial-time reduction yields
an RPReducible reduction.
Closure of PromiseCoRP, PromiseBPP and PromiseRP under RPReducible #
PromiseCoRP is closed under RPReducible (library lemma): if X reduces to Y by a
randomized one-sided reduction and Y ∈ PromiseCoRP encB, then X ∈ PromiseCoRP encA.
If X is RPReducible to Y and Y ∈ PromiseP encB, then X ∈ PromiseCoRP encA.
If a decision problem A is RPReducible to Y and Y ∈ PromiseCoRP encB, then
A ∈ coRP encA.
PromiseBPP is closed under RPReducible (library lemma; on the promise classes of
Goldreich, Definition 1.2, amplifying as in
Sipser, Lemma 10.5): if X reduces to Y by a randomized one-sided reduction and
Y ∈ PromiseBPP encB, then X ∈ PromiseBPP encA.
If a decision problem A is RPReducible to Y and Y ∈ PromiseBPP encB, then
A ∈ BPP encA.
PromiseRP is closed under dual (Xᶜ to Yᶜ) RPReducible reductions (library lemma).
PromiseBPP is closed under dual (Xᶜ to Yᶜ) RPReducible reductions.
If a decision problem A reduces to Y in the dual one-sided error orientation
(RPReducible encA encB (ofSet A)ᶜ Yᶜ) and Y ∈ PromiseRP encB, then A ∈ RP encA.
If every problem in NP encA reduces to Y via RPReducible and Y ∈ PromiseCoRP encB,
then NP encA ⊆ coRP encA (library lemma).
If every problem in NP encA reduces to Y via RPReducible and Y ∈ PromiseBPP encB,
then NP encA ⊆ BPP encA (library lemma).