Time Hierarchies Time Hierarchies for for Heuristic Algorithms Heuristic Algorithms Konstantin Pervyshev Konstantin Pervyshev UCSD UCSD
Dec 20, 2015
Time HierarchiesTime Hierarchies for for
Heuristic Algorithms Heuristic Algorithms
Konstantin PervyshevKonstantin Pervyshev
UCSDUCSD
OutlineOutline
• IntroductionIntroduction– known/unknown about time hierarchiesknown/unknown about time hierarchies
& why heuristics& why heuristics
• One sketchOne sketch– time hierarchy for heuristics NPtime hierarchy for heuristics NP
via error-correctionvia error-correction
Time HierarchiesTime Hierarchies
• Problems having odd complexityProblems having odd complexity– O(nO(n100100) and not much less) and not much less
• Proven forProven for– any syntactic model (like P & NP)any syntactic model (like P & NP)– no semantic model (like BPP)no semantic model (like BPP)
Syntactic vs. SemanticSyntactic vs. Semantic
• Syntactic modelsSyntactic models– Syntactically correct machinesSyntactically correct machines– Examples: P, NP, coNP, ParityPExamples: P, NP, coNP, ParityP
• Semantic modelsSemantic models– Additional semantic constraintsAdditional semantic constraints– Examples: BPP, AM, UPExamples: BPP, AM, UP
Open QuestionOpen Question
• Time hierarchies for semantic modelsTime hierarchies for semantic models– probabilistic algorithms (BPP / RP / ZPP)probabilistic algorithms (BPP / RP / ZPP)– Arthur-Merlin & Merlin-Arthur games (AM / Arthur-Merlin & Merlin-Arthur games (AM /
MA)MA)– unambigous machines (UP)unambigous machines (UP)– other semantic classesother semantic classes
Non-Traditional SettingsNon-Traditional Settings
Slightly non-uniformSlightly non-uniformalgorithmsalgorithms[Barak’02][Barak’02]
HeuristicHeuristicalgorithmsalgorithms
[Fortnow,Santhanam’04][Fortnow,Santhanam’04]
Time Hierarchies in Other Settings
input x of length n input x of length n + (short) advice a+ (short) advice ann
make mistakes on make mistakes on δ(n)-fraction of inputsδ(n)-fraction of inputs
Time Hierarchies forTime Hierarchies for1-Bit Non-Uniform Algorithms1-Bit Non-Uniform Algorithms
• Syntactic modelsSyntactic models– any model/1any model/1
• Semantic modelsSemantic models– BPP/1BPP/1 & & BQP/1BQP/1 [Fortnow, [Fortnow,
Santhanam’04]Santhanam’04]– RP/1RP/1 [Fortnow, Santhanam, [Fortnow, Santhanam,
Trevisan’05]Trevisan’05]– any model/1any model/1 [van Melkebeek, P. ’06] [van Melkebeek, P. ’06]
Time Hierarchies forTime Hierarchies forHeuristic AlgorithmsHeuristic Algorithms
• Syntactic modelsSyntactic models– any model closed under complementany model closed under complement– UnknownUnknown: those that are not closed: those that are not closed
(think of (think of heurNPheurNP))
• Semantic modelsSemantic models– heurBPPheurBPP & & heurBQPheurBQP
[Fortnow, Santhanam’04][Fortnow, Santhanam’04]– UnknownUnknown: any other: any other
Scope of This TalkScope of This Talk
Slightly non-uniformSlightly non-uniformDONEDONE
HeuristicHeuristicTHIS WORKTHIS WORK
Time Hierarchies in Other Settings
Our Results:Our Results:More Time Hierarchies for More Time Hierarchies for HeuristicsHeuristics• Syntactic models:Syntactic models:
– any model closed under majorityany model closed under majority
(NP, co-NP, alternation classes)(NP, co-NP, alternation classes)
• Semantic models:Semantic models:– some more probabilistic modelssome more probabilistic models
(AM, MA, a stronger hierarchy for BPP)(AM, MA, a stronger hierarchy for BPP)
Hierarchies for NPHierarchies for NP
NPNP not subset of not subset of NTime[n]NTime[n]– poly-time poly-time NN vs. linear-time vs. linear-time MMii
– for some for some xx, , N(x) ≠ MN(x) ≠ Mii(x)(x)
NPNP not subset of not subset of heurheur1/2+1/n1/2+1/na a NTime[n]NTime[n]
– whatever whatever MMii, for some , for some nn, ,
PrPrx in {0,1}x in {0,1}nn [N(x) ≠ M [N(x) ≠ Mii(x)] > 1/2-1/n(x)] > 1/2-1/naa
Non-Heuristic Case:Non-Heuristic Case:ReviewReview
• Assume that for every Assume that for every xx, , N(x) = N(x) = MMii(x) (x)
• Construct Construct NN so that for some so that for some xx,,
N(x) ≠ MN(x) ≠ Mii(x) (x)
• Hence, a contradictionHence, a contradiction
Non-Heuristic Case:Non-Heuristic Case:ReviewReview
we wantwe wantN(xN(xnn) = b) = b
xxkk = “0…0” = “0…0” of length k of length k
xn xn+1 x2nx2n - 1xn+2 x2n - 2. . . .
b = ¬ Mb = ¬ Mii(x(xnn))
we canwe canN(xN(x22nn) = b) = b
Non-Heuristic Case:Non-Heuristic Case:ReviewReview
we needwe needN(xN(xkk) = N(x) = N(xk+1k+1))
MMii(x(xk+1k+1) = ) = N(xN(xk+1k+1))
(by assumption)(by assumption)
N(xN(xkk) = M) = Mii(x(xk+1k+1))(by construction)(by construction)
xn xn+1 x2nx2n - 1xn+2 x2n - 2. . . .
Heuristic CaseHeuristic Case
weaker assumptionweaker assumption
for any n, for any n,
PrPrx in {0,1}x in {0,1}nn [M [Mii(x) = N(x)] > (x) = N(x)] > 1/2+1/n1/2+1/naa
Transmission FailureTransmission Failure
we needwe needN(xN(xkk) = N(x) = N(xk+1k+1))
MMii(x(xk+1k+1) ) ?? N(x N(xk+1k+1))(by assumption)(by assumption)
N(xN(xkk) = M) = Mii(x(xk+1k+1))(by construction)(by construction)
xn xn+1 x2nx2n - 1xn+2 x2n - 2. . . .
Repairing the ChannelRepairing the Channel
• Question: can we repair the Question: can we repair the channel ?channel ?
Answer: Answer: yesyes, ,
use error-correction!use error-correction!
• Repetition code ( Repetition code ( b b … b b b b … b b ))
High-Level ViewHigh-Level View
we wantwe wantN(x) = bN(x) = bfor anyfor anyx x inin Y Ynn
YYkk = {0,1} = {0,1}kk
Yn Yn+1 Y2nY2n - 1Yn+2 Y2n - 2. . . .
b = ¬ maj b = ¬ maj x in Yx in Ynn {M{Mii(x)}(x)}
we canwe canN(x) = bN(x) = bfor anyfor anyx x inin Y Y22nn
One Step of TransmissionOne Step of Transmission
N(x) = bN(x) = bfor any for any xx in in YYk+1k+1
““codeword of codeword of bb””
maj maj x in Yx in Yk+1k+1 {M {Mii(x)} = b(x)} = b
““corrupted message”corrupted message”
N(x) = b N(x) = b for any for any xx in in YYkk
““recovered codeword of recovered codeword of bb””
Codeword RecoveryCodeword Recovery
maj maj x in Yx in Yk+1k+1 {M {Mii(x)} = b(x)} = b
““corrupted message”corrupted message”
N(x) = b N(x) = b (almost)(almost) for any for any xx in in YYkk
““recovered codeword of recovered codeword of bb””
Expanders
Q.E.D.
A few words about A few words about heuristic BPPheuristic BPP
heurheur1-1/n1-1/naaBPPBPP
not subset ofnot subset of
heurheur1/2+1/n1/2+1/na a BPTime[n]BPTime[n]
Heuristic Heuristic BPPBPP
• More easy:More easy:
compute majority by estimatingcompute majority by estimating
θ ≈ θ ≈ PrPrx in Yx in Yk+1k+1 [M [Mii(x) = 1](x) = 1]
& comparing θ to a threshold ½& comparing θ to a threshold ½
• More difficult:More difficult:
NN should be semantically correct; should be semantically correct;
on different inputs, use different thresholdson different inputs, use different thresholds
ResultsResults
• NPNP
not subset ofnot subset of
heurheur1/2+1/n1/2+1/na a NTime[n]NTime[n]
• heurheur1-1/n1-1/na a AM/MA/BPPAM/MA/BPP
not subset ofnot subset of
heurheur1/2+1/n1/2+1/na a AM/MA/BPTime[n]AM/MA/BPTime[n]
Open QuestionsOpen Questions
• Time hierarchies for heuristic Time hierarchies for heuristic RP/ZPPRP/ZPP
• heurheur1-ε 1-ε NP NP vs. vs. heurheur½½ NTime[n] NTime[n] &&
heurheur1-ε 1-ε BPP BPP vs. vs. heurheur½½ BPTime[n]BPTime[n]
• Time hierarchies for non-heuristic Time hierarchies for non-heuristic semantic modelssemantic models