มีงานที่สามารถแก้ไขได้ในเวลาพหุนาม แต่ไม่สามารถตรวจสอบได้ในเวลาพหุนาม?


34

เพื่อนร่วมงานของฉันและฉันเพิ่งอ่านโน้ตของอาจารย์คนหนึ่งของเรา หมายเหตุระบุว่ามีงานที่สามารถแก้ไขได้ในเวลาพหุนาม (อยู่ในชั้นเรียนของ PF) แต่ไม่สามารถตรวจสอบได้ในเวลาพหุนาม (ไม่อยู่ในชั้นเรียนของ NPF)

ในการอธิบายอย่างละเอียดเกี่ยวกับคลาสเหล่านี้: เราได้รับอินพุต X และสร้างเอาต์พุต Y บางส่วนซึ่ง (X, Y) สัมพันธ์กับ R แทนงานของเรา หากเป็นไปได้ที่จะได้ Y สำหรับ X ในเวลาพหุนามงานนี้เป็นของคลาสของ PF ถ้าเป็นไปได้ที่จะตรวจสอบใบรับรองความยาวพหุนาม Z ที่พิสูจน์ tuple (X, Y) อยู่ในความสัมพันธ์ R ในเวลาพหุนามงานเป็นของคลาสของ NPF

เราไม่ได้พูดถึงปัญหาการตัดสินใจโดยที่คำตอบนั้นเป็นเพียงแค่ใช่หรือไม่ใช่ (อย่างเป็นทางการมากขึ้นถ้าสตริงบางอันเป็นของบางภาษา) สำหรับปัญหาการตัดสินใจปรากฏว่า PF เป็นเซตย่อยที่เหมาะสมของ NPF อย่างไรก็ตามสำหรับงานอื่น ๆ อาจแตกต่างกัน

คุณรู้จักงานที่สามารถแก้ไขได้ในเวลาพหุนาม แต่ไม่ตรวจสอบในเวลาพหุนามหรือไม่


8
บางทีฉันอาจเข้าใจผิด แต่ทำไมต่อไปนี้ไม่ใช่ขั้นตอนวิธีการยืนยันพหุนาม ป.ร. ให้ไว้คำนวณฟังก์ชันด้วยตัวเองโดยใช้อัลกอริทึมพหุนามเวลาและกลับ "ถูกต้อง" ถ้า yเป็นไปได้หรือไม่ที่คุณอ่านผิดหรืออาจารย์สะกดผิดและตั้งใจจะบอกว่ามีปัญหาที่พิสูจน์ได้ในเวลาพหุนาม แต่ไม่สามารถแก้ไขได้ในเวลาพหุนาม f ( x ) f ( x ) = y(x,Y)(x)(x)=Y
Lieuwe Vinkhuijzen

1
@LieuweVinkhuijzen "จะบอกว่ามีปัญหาที่ตรวจสอบได้ในเวลาพหุนาม แต่ไม่สามารถแก้ไขได้ในเวลาพหุนาม?" [อ้างอิง จำเป็นต้องใช้]
T. Verron

@ T. Veron Haha ใช่ฉันก็มีความสุขมากที่เห็นหลักฐานของศาสตราจารย์สำหรับการเรียกร้องนี้;)
Lieuwe Vinkhuijzen

คำตอบ:


44

สิ่งนี้เป็นไปได้ก็ต่อเมื่อมีเอาต์พุตที่ยอมรับได้จำนวนมากสำหรับอินพุตที่กำหนด คือเมื่อความสัมพันธ์ไม่ใช่ฟังก์ชันเพราะมันละเมิดเอกลักษณ์R

ตัวอย่างเช่นพิจารณาปัญหานี้:

รับ (แสดงเป็นเอกภาพ) และ TMสร้าง TMอีกอันที่และ (โดยที่ย่อมาจากการเข้ารหัส ( หมายเลขGödel) ของเป็นจำนวนธรรมชาติ) M N L ( M ) = L ( N ) # N > n # N Nnยังไม่มีข้อความMยังไม่มีข้อความL(M)=L(ยังไม่มีข้อความ)#ยังไม่มีข้อความ>n#ยังไม่มีข้อความยังไม่มีข้อความ

การแก้นี้จิ๊บจ๊อย: เก็บเพิ่มรัฐซ้ำซ้อนไม่กี่ TM , อาจมีบางอย่างเปลี่ยนหุ่นระหว่างพวกเขาจนกว่าการเข้ารหัสสูงกว่าnนี่เป็นแอปพลิเคชั่นพื้นฐานของ Padding Lemma บน TMs ซ้ำ ๆ สิ่งนี้จะต้องใช้ช่องว่างภายในซึ่งแต่ละอันสามารถเพิ่มหนึ่งสถานะดังนั้นจึงสามารถทำได้ในเวลาพหุนามn nMnn

บนมืออื่น ๆ ที่ได้รับมันเป็น undecidable เพื่อตรวจสอบว่าเป็นผลผลิตที่ถูกต้องสำหรับปัจจัยการผลิต M อันที่จริงการตรวจสอบไม่แน่นอน (ใช้ทฤษฎีบทข้าว) และข้อ จำกัดเพียงแค่กำจัด s จำนวนมากอย่างแน่นอนจากสิ่งเหล่านั้น เนื่องจากเราลบองค์ประกอบจำนวน จำกัด ออกจากปัญหาที่ไม่สามารถตัดสินใจได้เรายังคงได้รับปัญหาที่ไม่สามารถตัดสินใจได้N n , M L ( M ) = L ( N ) # N > nn,M,ยังไม่มีข้อความยังไม่มีข้อความn,ML(M)=L(ยังไม่มีข้อความ)#ยังไม่มีข้อความ>nยังไม่มีข้อความ

คุณยังสามารถแทนที่คุณสมบัติที่ไม่สามารถตัดสินใจได้เพื่อรับรูปแบบที่ยังคงคำนวณได้ แต่ NP hard / complete เช่นได้รับn (เป็นเอกภาพ) มันเป็นเรื่องง่ายที่จะคำนวณกราฟG ที่มีn -clique อยู่ข้างใน แต่ให้n , Gเป็นการยากที่จะตรวจสอบว่ามีn -clique อยู่หรือไม่L(M)=L(ยังไม่มีข้อความ)nGnn,Gn


1
คาดว่าสิ่งนี้จะไม่เกิดขึ้น คำตอบที่ดี!
Filip Haglund

7
นี่ไม่ได้ตอบคำถาม OP ขอมาโดยเฉพาะสำหรับปัญหาที่ไม่สามารถตรวจสอบได้ในความหมายปกติที่นอกเหนือจากการป้อนข้อมูลและคำตอบที่ถูกกล่าวหาเราได้รับใบรับรองซึ่งรับรองความถูกต้องของคำตอบ ในกรณีของคุณใบรับรองคือบิตที่ใช้ในการสร้างเครื่องทัวริงเทียบเท่าใหม่ เมื่อให้M , Nและzมันง่ายที่จะตรวจสอบว่าzให้เครื่องMหรือไม่ หากไม่มีzคำถามคือการสร้างอินสแตนซ์ที่ยากของภาษา (NPC) หรือไม่ซึ่งเป็นจริงใน Minicrypt และ Cryptomania เท่านั้น ZM,ยังไม่มีข้อความZZMZ
Lieuwe Vinkhuijzen

2
@chi ไม่ใช่ทุกคู่สามารถรับรอง แต่ชุดของคู่M , N ที่สร้างโดยอัลกอริทึมของคุณสามารถรับรองได้ ใบรับรองคือการถอดเสียงของอัลกอริทึมของคุณที่สร้างNจากM (เช่น "เริ่มต้นด้วยMจากนั้นเพิ่มสถานะนี้และเพิ่มการเปลี่ยนแปลงนี้จากนั้น ... และvoilà, N !") โดยทั่วไปถ้าTเป็นอัลกอริทึมแบบ nondeterministic ที่ซึ่งxให้คำนวณเสมอที่ยอมรับได้yแล้วบันทึกของเส้นทางการคำนวณของT ( x )คือใบรับรองที่y ที่ได้รับนั้นเป็นที่ยอมรับM,ยังไม่มีข้อความM,ยังไม่มีข้อความยังไม่มีข้อความMMยังไม่มีข้อความTxYT(x)y
Lieuwe Vinkhuijzen

3
@chi มีความแตกต่างกันเล็กน้อยในคำถาม: สำหรับความสัมพันธ์โดยพลการเป็นไปได้ว่าไม่ใช่ทุกคนที่คุณยอมรับได้และรับรองได้และคุณยกตัวอย่างที่สง่างาม อย่างไรก็ตามคำถามไม่ได้ถามว่าความสัมพันธ์ที่ยอมรับได้ แต่มีความสัมพันธ์ที่ไม่แน่นอน(คำตอบคือใช่โดยตัวอย่างของคุณ) แทนที่จะถามว่าเราสามารถมีอัลกอริทึมที่สร้างผลลัพธ์ที่ยอมรับได้และไม่แน่นอนหรือไม่ คำตอบที่นี่จะต้องไม่เพราะเหตุผลข้างต้น Ry
Lieuwe Vinkhuijzen

2
@chi ฉันไม่รู้ว่า OP ต้องการจะถามอะไร แต่ฉันพบคำตอบของคุณที่ให้ความกระจ่างมากอย่างไรก็ตามฉันได้เรียนรู้อะไรบางอย่าง! imo คำถามสามารถอ่านได้ในแบบที่คุณทำหรือเป็นไปได้อย่างเท่าเทียมกันว่า " มีฟังก์ชั่นทางเดียวอยู่หรือเปล่า " (อาจจะ) หรือ " เป็นกรณีที่ยากของปัญหา NP ที่สร้างง่าย " (ฉันหวังว่าสำหรับ RSA) หรือ วิธีที่ผมอ่านมันว่า " Is ?NPP " (ไม่ได้)
Lieuwe Vinkhuijzen

1

นี่เป็นเพียงรายละเอียดของประโยคแรกของคำตอบของ @ chi เนื่องจากฉันไม่พบว่าชัดเจน

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

  1. ก่อนหน้านี้คุณได้พิสูจน์แล้ว (ทางคณิตศาสตร์) ว่าผลลัพธ์ของอัลกอริทึมเป็นวิธีการแก้ปัญหาซึ่งในกรณีนี้ขั้นตอนของอัลกอริทึมนั้นเองก็เป็นข้อพิสูจน์ความถูกต้อง

  2. คุณมีอัลกอริธึมที่แตกต่างกันสำหรับการตรวจสอบว่าผลลัพธ์เป็นทางออกแน่นอนซึ่งในกรณีนี้คุณต้องใช้อัลกอริทึมนี้

ดังนั้นจึงไม่มีปัญหาดังกล่าว


ฉันไม่เข้าใจ # 2 หมายความว่าอะไรอัลกอริทึมที่แตกต่างกันทำงานในเวลาพหุนาม
Albert Hendriks

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