การจำลอง BPP ที่รู้จักกันเร็วที่สุดคืออะไรโดยใช้อัลกอริทึม Las Vegas?


10

BPPและเป็นคลาสความซับซ้อนที่น่าจะเป็นพื้นฐานสองชั้นZPP

BPPเป็นชั้นของภาษาตัดสินใจโดยขั้นตอนวิธีการทัวริงน่าจะเป็นพหุนามเวลาที่น่าจะเป็นของอัลกอริทึมกลับคำตอบที่ไม่ถูกต้องเป็นที่สิ้นสุดคือความน่าจะเป็นข้อผิดพลาดเป็นอย่างมาก (ทั้งใช่และ ไม่มีอินสแตนซ์)13

ในทางกลับกัน อัลกอริทึมสามารถดูได้เป็นอัลกอริธึมที่น่าจะเป็นซึ่งไม่เคยส่งคืนคำตอบที่ไม่ถูกต้องเมื่อใดก็ตามที่พวกเขากลับคำตอบมันถูกต้อง อย่างไรก็ตามเวลาทำงานของพวกเขาไม่ได้ จำกัด โดยพหุนามZPP

Letเป็นระดับของภาษาตัดสินใจโดยขั้นตอนวิธีการน่าจะเป็นกับศูนย์ความน่าจะเป็นข้อผิดพลาดและคาดว่าทำงานเวลาฉเหล่านี้จะยังเรียกว่าอัลกอริทึมลาสเวกัสและ(1)})ZPTime(f)fZPP=ZPTime(nO(1))

คำถามของฉันคือสิ่งที่ดีที่สุดรู้การจำลองอัลกอริทึมโดยใช้อัลกอริทึมลาสเวกัส เราสามารถจำลองพวกมันในเวลาที่คาดหมายได้หรือไม่? มีการปรับปรุงใด ๆ ที่ทราบกันดีกว่าการจำลองแบบสัตว์เดรัจฉานแบบบังคับซึ่งใช้เวลานานมาก?BPP

อย่างเป็นทางการมากขึ้นเรารู้ว่า หรือสำหรับบางส่วน ?B P PZ P T ฉันm e ( 2 n - n ϵ ) ϵ > 0BPPZPTผมม.อี(2O(nε))BPPZPTผมม.อี(2n-nε)ε>0


3
n คืออะไรความยาวของอินพุต ทำไมเราสามารถยอมรับใน2n ?
domotorp

1
2พีโอล.Y(n)-nεคือสิ่งเดียวกับ2พีโอล.Y(n) )
Emil Jeřábek

2
ฉันพบคำถามที่น่าสนใจทีเดียว ฉันแก้ไขคำถามเพื่อให้อ่านง่ายขึ้นและแม่นยำยิ่งขึ้น อย่าลังเลที่จะแก้ไขเพิ่มเติม PS: ฉันเดาว่าคุณอาจต้องการที่จะนำเข้าบัญชีบิตสุ่มหลาย polynomially ใช้โดยอัลกอริทึม BPP เป็นพารามิเตอร์สำหรับเวลาการจำลอง แต่เป็นเอมิลชี้ให้เห็นสิ่งที่คุณเขียนให้2พีโอล.Y(n) ) หากคุณต้องการให้คุณแทนที่ BPP ด้วยคลาสเฉพาะของอัลกอริธึมข้อผิดพลาดน่าจะเป็นขอบเขตที่มีพารามิเตอร์สำหรับจำนวนบิตสุ่มที่ใช้โดยอัลกอริทึม
Kaveh

คุณสามารถถามว่าเราสามารถจำลองอัลกอริธึม BPP ซึ่งใช้บิตสุ่มR(n)ในZPTผมม.อี(2R(n)-nεnO(1))ตั้งแต่การจำลองแบบเดรัจฉานบังคับใน2R(n)nO(1)เวลา
Kaveh

คำตอบ:


13

ขั้นแรกให้สังเกตว่าถ้าBPPZPTผมME[2n]สำหรับบางคงแล้วBPPยังไม่มีข้อความEXP P (พิสูจน์โดยลำดับชั้นของเวลา nondeterministic) ดังนั้นการพิสูจน์ว่าการรวมนั้นมีความสำคัญไม่ใช่เพียงเพราะมันเป็นการจำลองสถานการณ์ที่ได้รับการปรับปรุงให้ดีขึ้น

ถัดไปพิจารณาชั้นPRโอม.ผมsอีBPPซึ่งปัญหาดังต่อไปนี้คือ " -hard":PRโอม.ผมsอีBPP

วงจรการประมาณความน่าจะเป็นปัญหา (CAPP): กำหนดวงจร , การส่งออกน่าจะได้รับการยอมรับของCไปภายใน1 / 6ปัจจัยสารเติมแต่ง1/6

ผลการ Impagliazzo, Kabanets และ Wigderson 2002 บ่งบอกว่าเวลาขั้นตอนวิธีการศูนย์ข้อผิดพลาดสำหรับ CAPP (ที่nคือขนาดของC ) จะบ่งบอกN E X PP / P o L Y ใน STOC'10 ฉันขยายสิ่งนี้เพื่อแสดง: สมมติว่าทุกC ที่มีอินพุตบิตkและขนาดnหนึ่งสามารถคำนวณ CAPP nondeterministically (ดังนั้นศูนย์พอเพียงข้อผิดพลาด) ใน2 k - ω ( log k ) p o l y (2nεnCNEXPP/polyCknเวลาแล้ว N E X PP / P o L Y นั่นคือมีปัญหาที่คำนวณได้อย่างแน่นอนกับการสุ่มสองด้านข้อผิดพลาดซึ่งอัลกอริธึมศูนย์ข้อผิดพลาดที่แม้แต่การค้นหาที่ละเอียดอ่อนอย่างละเอียดก็อาจบ่งบอกวงจรที่ต่ำกว่าได้ ฉันเชื่อว่าสิ่งนี้ควรถูกตีความว่าเป็นวิธีที่เป็นไปได้สำหรับการพิสูจน์ขอบเขตที่ต่ำกว่า; ไมล์สะสมของคุณอาจแตกต่างกันไป2kω(logk)poly(n)NEXPP/poly

ขอให้สังเกตว่าแม้พิสูจน์ยังเปิดและพิสูจน์ว่ายังจะบ่งบอกถึงขอบเขตล่าง: โดย Kabanets และ Impagliazzo ปี 2004 ถ้าการทดสอบตัวตนของพหุนาม (กo R Pปัญหา) เป็น ในZ P T I M E [ 2 n ε ]สำหรับทุกε > 0จากนั้นเรามีขอบเขตที่ต่ำกว่าสำหรับแบบถาวรหรือN E X PRPZPTIME[2nε]coRPZPTIME[2nε]ε>0NEXP. เมื่อเร็ว ๆ นี้ (กำลังจะมาถึง STOC'13) ฉันพิสูจน์ได้อย่างไม่มีเงื่อนไขว่าหรือR T I M E [ 2 n ]มีวงจรขนาดn cการสร้างด้วยวิธี "พยานง่าย" ของ Kabanets นี่หมายถึงสองสิ่ง:BPPioZPTIME[2nε]/nεRTIME[2n]n

  1. มีเช่นนั้นสำหรับทุกε > 0 , R Pไม่มีเงื่อนไขในi o Z P T ฉันM E [ 2 n ε ] / n c - นี่เป็นเรื่องเกี่ยวกับ derandomization ที่ไม่มีเงื่อนไขที่ดีที่สุดของR P / B P PในZ P Pที่เรารู้จนถึงตอนนี้ε>0RPผมโอZPTผมME[2nε]/nRP/BPPZPP

  2. ในการเริ่มต้นการจำลองสถานการณ์แบบช่วงชิงที่น่าสนใจของคุณ "เพียง" ต้องถือว่าR T I M E [ 2 n ]ไม่มีวงจรขนาดพหุนามคงที่BPPRTIME[2n]


ขอบคุณ Niel ที่สละเวลาตอบคำถามของฉันให้ชัดเจน :)
Ryan Williams

2
ไรอันผมคิดว่าผมจะถามคำถามโง่มาก แต่ที่นี่ผมไปในประโยคแรกของคุณทำไมคุณต้อง "สำหรับทุก "? ไม่เซ็ตย่อย BPP ของ ZPTIME (2 ^ (n ^ c)) สำหรับบาง c คงหมายถึงเซ็ตย่อย BPP ของ RTIME (2 ^ (n ^ c)) ดังนั้น NTIME (2 ^ (n ^ c)) ดังนั้น BPP จึงเป็น ไม่เท่ากับ NEXP หรืออย่างอื่น NTIME (2 ^ (2n ^ c)) เป็นชุดย่อยของ NTIME (2 ^ (n ^ c))? ϵ
Sasho Nikolov

1
ไม่โง่เลย - แน่นอนสำหรับบางcเพียงพอสำหรับB P P N E X Pขอบคุณที่ชี้ให้เห็น แม้ว่าอัลกอริธึมเวลาเอ็กซ์โพเนนเชียลเป็นสิ่งจำเป็นสำหรับผลลัพธ์อื่น ๆ BPPNTIME(2nc)cBPPNEXP
Ryan Williams

Ryan: ถ้าฉันต้องการที่จะเข้าใจกระดาษของคุณคุณต้องการแนะนำให้รู้จักหนังสือ / กระดาษเกี่ยวกับความซับซ้อนของวงจร
T ....

สวัสดี Arul โชคดีที่ Bill Gasarch ถามคำถามนี้ซักครู่แล้ววางหน้าเว็บของลิงค์ต่อไปนี้: cs.umd.edu/~gasarch/ryan/ryan.html
Ryan Williams

8

ขึ้นอยู่กับสมมติฐานที่คุณยินดีทำ

ภายใต้สมมติฐานความแข็งบางอย่างคือคุณจะได้รับที่P = B P P โดยเฉพาะอย่างยิ่งนี้หมายความว่าB P P = Z P Pและดังนั้นทุกภาษาL B P Pได้รับการยอมรับจากเครื่องลาสเวกัส (ดู "P = BPP ยกเว้น E มีวงจรเอ็กซ์โพแนนเชียล: Derandomizing XOR Lemma" โดย Impagliazzo และ Wigderson)ESผมZE(2εn)P=BPPBPP=ZPPLBPP

นอกจากนี้คุณยังสามารถทำให้สมมติฐานจ้าแข็งคือว่าและได้รับที่B P P = Z P P (ดูบทแทรก 46 "ในการค้นหาของ พยานง่าย: เวลาเอ็กซ์โพเนนเชียลกับเวลาพหุนามน่าจะเป็น "โดย Impagliazzo, Kabanets และ Wigderson)ZPEผมโอ-DTผมME(2εn)BPP=ZPP


4

ยกเว้นความก้าวหน้าในการสุ่มตัวอย่างดูเหมือนว่าสำหรับความต้องการที่เครื่องลาสเวกัสไม่มีข้อผิดพลาดเป็นสิ่งสำคัญดังนั้นจึงไม่มีประโยชน์ที่จะมีการสุ่มในกรณีนี้

สำหรับBPPภาษาตัดสินใจโดยขั้นตอนวิธีการที่เหมาะสมซึ่งทำหน้าที่เกี่ยวกับปัจจัยการผลิตx { 0 , 1 } nและสตริงแบบสุ่มR { 0 , 1 } N ( n )เป็นตัวแทนของทางเลือกสุ่มเกณฑ์ศูนย์ข้อผิดพลาดหมายถึง ที่เครื่องลาสเวกัสจะต้องตรวจสอบให้แน่ใจว่าทั้งสองกรณีPr r ( A  ยอมรับ  ( x , r ) ) 2LAx{0,1}nr{0,1}N(n)ถือ หากเราไม่ได้รับข้อมูลเพิ่มเติมเกี่ยวกับAดังนั้นนี่เป็นปัญหาที่สำคัญของสัญญาพยากรณ์: ให้ oracleAคำนวณA(r)=A(x,r)และให้สัญญาว่าAให้ผลผลิตหนึ่งaa{0,1}เป็นเวลาอย่างน้อยสองเท่าของอินพุตจำนวนมากเป็นเอาต์พุตตรงข้าม1-a, พิจารณาว่าเอาต์พุตใดเป็นเรื่องธรรมดา

Prr(A accepts (x,r))23orPrr(A accepts (x,r))13
AAA(r)=A(x,r)Aa{0,1}1a

แม้ว่าเครื่องลาสเวกัสอาจใช้เทคนิคการสุ่ม แต่ถ้าเราถูกบังคับให้ปฏิบัติต่อในฐานะนักพยากรณ์เราจะเห็นได้ว่ากลยุทธ์เดียวที่มีให้สำหรับเครื่องลาสเวกัสคือการสำรวจแบบสำรวจค่อนข้างละเอียด สตริงสุ่มrเพื่อดูว่ามีคำตอบใดให้บ้าง สามารถมั่นใจได้หากพบมากกว่า2 N ( n )Arสตริงที่แตกต่าง rซึ่งทั้งหมดก่อให้เกิดผลลัพธ์เดียวกัน; มิฉะนั้นด้วยความน่าจะเป็นที่มีขนาดเล็ก (แต่ไม่ใช่ศูนย์!) มันอาจจะโชคร้ายและได้รับตัวอย่างที่ไม่ใช่ตัวแทนของเอาต์พุตที่เป็นไปได้ ในการรับข้อผิดพลาดเป็นศูนย์จะต้องสุ่มตัวอย่างอย่างน้อย 2 N ( n )2N(n)/3rอินพุต r .2N(n)/3r

เพราะเครื่องที่ลาสเวกัจะต้องตรวจสอบอย่างน้อยส่วนคงที่ของทั้งหมดของสตริงสุ่มไปได้ , asymptotically เราไม่มีดีกว่าถ้าเราdeterministicallyทดสอบทั้งหมดสตริงสุ่มที่เป็นไปได้ เราไม่ได้รับประโยชน์แบบอะซิมโทติคในการจำลองอัลกอริธึมของBPPแบบสุ่มในการตั้งค่าที่ไม่มีข้อผิดพลาดr

หมายเหตุว่าอาร์กิวเมนต์เดียวกันนี้ก่อให้เกิดการแยก oracle ระหว่างBPPและZpp , เช่น  มีการพยากรณ์ดังกล่าวว่าZ P PB P P เพราะZppขั้นตอนวิธีการต้องใช้เวลาในการชี้แจงในขณะที่BPPอัลกอริทึมสามารถแก้คำถามเกี่ยวกับ Oracle ในแบบสอบถามเดียวและประสบความสำเร็จกับข้อผิดพลาดที่ถูกผูกไว้ อย่างไรก็ตามมันไม่ได้บอกอะไรคุณมากไปกว่าสิ่งที่คุณสงสัยแล้ว (การจำลองค่าใช้จ่ายอาจเลวร้ายยิ่งกว่าพหุนาม) และไม่ต้องแสดงอาการเชิงเส้นประสาทที่ไม่ดีเท่าการจำลองแบบไร้เดียงสาที่ไร้เดียงสาA

ZPPABPPA

แก้ไขให้ฉันถ้าฉันผิด: คุณกำลังให้เหตุผลที่เข้าใจง่ายว่าทำไมการทำให้กระจัดกระจายดูเหมือนเป็นไปไม่ได้ แต่เรารู้ว่าภายใต้สมมติฐานที่สมเหตุสมผล BPP, ZPP และ P ล้วนเป็นสิ่งเดียวกัน ดังนั้นสัญชาตญาณจึงไม่จำเป็นต้องดีนัก
Sasho Nikolov

1
ไม่ใช่เลย. Derandomization น่าจะเป็นความเข้าใจที่ลึกซึ้งเกี่ยวกับวิธีการจำลองBPPโดยPใช่ไหม? ฉันแค่อธิบายว่าถ้าเขาต้องการผลลัพธ์ที่ไม่มีเงื่อนไขซึ่งไม่ใช้ประโยชน์จากโครงสร้างของอัลกอริธึมเองเขาก็อาจทำการจำลองแบบกำหนดแน่นอนว่าเป็นข้อผิดพลาดแบบสุ่มที่ไม่มีศูนย์ หรือมีบางอย่างผิดปกติกับคำอธิบายนี้หรือไม่?
Niel de Beaudrap

1
ฉันคิดว่าทุกสิ่งที่คุณพูดคือการจำลองสถานการณ์ไร้เดียงสาของ BPP โดย ZPP นั้นไม่ได้เร็วไปกว่าการจำลองสถานการณ์ไร้เดียงสาของ BPP โดย P. แต่ฉันไม่เห็นว่าควรจะแสดงอะไร สำหรับฉันนี่เป็นเหมือนใครบางคนถามว่า 'อะไรคืออัลกอริธึมที่เร็วที่สุดในการค้นหาการจับคู่สูงสุด' และได้คำตอบว่า 'ดีโดยไม่เข้าใจถึงโครงสร้างของการจับคู่ คำถามจะถามว่ามีความเข้าใจที่รู้จักกันในโครงสร้างของ BPP ที่ทำให้สามารถทำการจำลอง ZPP ได้อย่างมีประสิทธิภาพหรือไม่
Sasho Nikolov

1
@SashoNikolov: มันไม่ได้มีความหมายลึกซึ้งนัก จากถ้อยคำของคำถามดูเหมือนว่าฉันจะเป็นเส้นแบ่งเขตสำหรับการย้ายไปยัง CS.SE ฉันตัดสินใจที่จะตอบคำถามนี้อย่างแท้จริงถึงปัญญา: เท่าที่เราทราบเวลาในการใช้งานที่คาดว่าจะมีประสิทธิภาพมากที่สุดของเครื่อง Las Vegas ที่ยอมรับภาษาL∈BPPนั้นไม่ได้ดีไปกว่าเครื่องจักรที่กำหนดขึ้นซึ่งสำรวจความเป็นไปได้ที่กำลังดุร้าย คำตอบที่บอกว่ามันอาจจะเป็นขอบเขตพหุนามบางอย่างถ้าเงื่อนไขบางอย่างถือเป็นเลิศและให้ข้อมูลและฉันลงคะแนนให้พวกเขา; แต่ฉันตอบคำถามจริง
Niel de Beaudrap

1
ฉันคิดว่านี่เป็นคำตอบที่ดี (ยิ่งอ่านได้หลังจากแก้ไข) เราไม่มีผลลัพธ์ตามเงื่อนไขเช่น "P = ZPP หมายถึง P = BPP" หรือ "ZPP = BPP หมายถึง P = BPP" ดังนั้นจึงเป็นไปได้ที่เราสามารถจำลอง BPP ด้วยอัลกอริธึม ZP เร็วกว่าอัลกอริธึมที่กำหนดขึ้น อย่างไรก็ตามผลของความสัมพันธ์นั้นดูเหมือนจะบอกเป็นนัยว่าสิ่งนี้ไม่สามารถเกิดขึ้นได้จากการจำลองความสัมพันธ์ใด ๆ ฉันเข้าใจได้อย่างถูกต้องหรือไม่?
Kaveh
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.