การทดสอบความเป็นบวกมากกว่าความเท่าเทียมกัน


14

Alice และ Bob มีสตริง n-bit และต้องการทราบว่าพวกเขาเท่ากันหรือไม่ในการสื่อสารเล็กน้อย วิธีการแก้ปัญหาแบบสุ่มมาตรฐานคือการรักษาสตริง n บิตเป็นพหุนามของปริญญาแล้วประเมินพหุนามมากกว่าองค์ประกอบสุ่มเลือกไม่กี่จากสนามที่มีขนาดใหญ่กว่าn นี้จะใช้เวลาO ( เข้าสู่ระบบ| F | )การสื่อสารnnO(log|F|)

สมมติว่าเราแก้ไขการเรียงลำดับพจนานุกรมด้วยสตริงและต้องการแทนเพื่อพิจารณาว่าสตริงใดที่ "ใหญ่กว่า" ซึ่งเทียบเท่ากับการค้นหาบิตซ้ายสุดที่สตริงแตกต่างกัน

มีโปรโตคอลแบบสุ่มที่คล้ายกันสำหรับการทำเช่นนี้หรือขอบเขตล่างที่รู้จักกัน? ดูเหมือนว่าจะเกี่ยวข้องกับการทดสอบความเป็นบวกของพหุนาม

ป.ล. ในขณะที่คำสั่งทางพจนานุกรมดูเหมือนชัดเจนที่สุดฉันพอใจกับคำสั่งอื่น ๆ : เพื่อจุดประสงค์ที่ฉันสนใจสิ่งที่เราต้องการคือคำสั่งบางอย่าง


1
ฉันคิดว่าวิธีการสุ่มแบบมาตรฐานคือการเลือกการผสมเชิงเส้นแบบสุ่มของบิตและเพียงแค่ส่งพาริตีที่เป็นผลลัพธ์ซึ่งใช้การสื่อสารเท่านั้น O(1)
Joshua Grochow

@JoshuaGrochow ฉันคิดว่ามันขึ้นอยู่กับลักษณะของการสุ่ม - สาธารณะหรือส่วนตัว โปรโตคอลที่คุณพูดถึงใช้การสุ่มของสาธารณะ
Sasho Nikolov

1
สำหรับการเปรียบเทียบอาจจะคุ้มค่าที่จะกล่าวถึงความซับซ้อนที่กำหนดขึ้นได้คือดังนั้นโปรโตคอลเล็กน้อยจึงเหมาะสมที่สุด สิ่งนี้ให้ช่องว่างแบบเอ็กซ์โปเนนเชียลที่ดีระหว่างโซลูชันที่กำหนดขึ้นแน่นอนและแบบสุ่มแสดงให้เห็นว่า (อย่างน้อยในความซับซ้อนของการสื่อสาร) การสุ่มสามารถช่วยได้จริงๆ n+1
András Salamon

1
อืม ... ใช่ การสื่อสารจำเป็นสำหรับอัลกอริทึมที่ไม่เคยให้คำตอบที่ผิดและสำหรับคู่อินพุตทั้งหมดให้ MAYBE กับคู่อินพุตนั้นด้วยความน่าจะเป็นที่ 1/2 มากที่สุด?

1
บางทีมันอาจจะเป็นมูลค่าที่จะกล่าวถึงว่าซับซ้อนสื่อสารตลอดทั้งปีมากกว่าคือΩ ( n 1 / k k - 2 )ใน IE โดยเฉพาะอย่างยิ่งมันเป็นเชิงเส้นสำหรับk = 1ดูarxiv.org/abs/cs/0309033 มันเป็นกระดาษที่ดี :)kΩ(n1/kk2)k=1
Marc Bury

คำตอบ:


11

สิ่งนี้เรียกว่าปัญหามากกว่าความซับซ้อนในการสื่อสาร มีอัลกอริทึมที่มีความซับซ้อนของการสื่อสารอยู่ (แบบฝึกหัด 3.18 ในหนังสือ Nisan-Kushilevitz)O(logn)

แก้ไข: อัลกอริทึมเกิดจาก Nisan (หน้า 10): http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.57.6891&rep=rep1&type=pdf

มันใช้วิธีการที่แนะนำโดย @Sasho Nikolov ด้านล่าง --- ทำการค้นหาแบบไบนารีโดยใช้การทดสอบความเท่าเทียมกันที่มีข้อผิดพลาดคงที่เพื่อทำการเปรียบเทียบ สิ่งนี้สามารถทำได้ด้วยแบบสอบถามโดยใช้ "อัลกอริทึมการค้นหาไบนารีที่มีเสียงดัง" โดย Feige, Peleg, Raghavan และ Upfal: http://cs.brown.edu/~eli/papers/SICOMP23FRPU.pdfO(logn)

หากต้องการรับโพรโทคอลการสุ่มแบบส่วนบุคคล (ไม่ชัดเจน) สามารถใช้ผลลัพธ์ของนิวแมน: http://pdf.aminer.org/000/933/113/private_vs_common_random_bits_in_communication_complexity.pdf


5
เข้าสู่ระบบnO(1)

2
O(เข้าสู่ระบบnเข้าสู่ระบบเข้าสู่ระบบn)O(1/เข้าสู่ระบบn)O(เข้าสู่ระบบเข้าสู่ระบบn)

2
@SashoNikolov ตกลงฉันเดาบางอย่างเช่นนี้สามารถใช้เป็น "การค้นหาไบนารีที่มีเสียงดัง" ซึ่งยอมรับเศษเสี้ยวคงที่ของข้อผิดพลาดเพื่อให้เราสามารถใช้ความน่าจะเป็นข้อผิดพลาดคงที่ในการทดสอบความเสมอภาค: dl.acm.org/citation.cfm? id = 167129
Grigory Yaroslavtsev

1
จริง ฉันหมายถึงการค้นหาแบบไบนารีที่การเปรียบเทียบแต่ละครั้งสามารถให้ผลลัพธ์ที่ผิดพร้อมความน่าจะเป็นคงที่เล็กน้อย ฉันคิดว่าบทความนี้ให้ผลลัพธ์ที่ต้องการตัวอย่างเช่น: dl.acm.org/citation.cfm?id=100230
Sasho Nikolov

ย้ายการอภิปรายไปยังคำตอบ
กริกอ Yaroslavtsev

7

ดูความซับซ้อนของการสื่อสารนอกจากนี้

ดังที่กล่าวไว้ว่ากริกอมีโปรโตคอลที่มีการสื่อสาร O(เข้าสู่ระบบn). นี่คือเนื่องจากนิสันและ Safra โปรโตคอลของพวกเขาอาจใช้การสุ่มของสาธารณะหรือไม่ชัดเจน กระดาษด้านบนให้หนึ่งที่ใช้การสุ่มแบบเป็นส่วนตัวและชัดเจน (ผ่านการใช้เครื่องกำเนิดไฟฟ้าเทียมหลอกมาตรฐาน) มันยังกล่าวถึงการจับคู่ขอบเขตที่ต่ำกว่าในรูปแบบการสุ่มของสาธารณะ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.