คำอธิบายคลาส P และ NP ผ่านแลมบ์ดาแคลคูลัส


36

ในการแนะนำและคำอธิบาย P และ NP ระดับความซับซ้อนมักจะได้รับผ่านเครื่องทัวริง หนึ่งในรูปแบบของการคำนวณคือแลมบ์ดา - แคลคูลัส ฉันเข้าใจว่าการคำนวณทุกรูปแบบมีค่าเท่ากัน (และถ้าเราสามารถแนะนำอะไรก็ได้ในแง่ของเครื่องจักรทัวริงเราสามารถแนะนำสิ่งนี้ในรูปแบบของการคำนวณใด ๆ ) แต่ฉันไม่เคยเห็นแนวคิดคำอธิบาย P และ NP . ทุกคนสามารถอธิบายพัฒนาการความซับซ้อนของคลาส P และ NP ได้โดยไม่ต้องใช้เครื่องจักรทัวริงและมีแคลคูลัสแลมบ์ดาเป็นรูปแบบการคำนวณเท่านั้น


5
พลังในการคำนวณของพวกมันนั้นเทียบเท่ากับฟังก์ชั่นเหนือธรรมชาติ
Kaveh

ทัวริงสมบูรณ์บางครั้งก็เป็นแนวคิดทางทฤษฎีมากขึ้นเพื่อแสดงให้เห็นถึงการเชื่อมต่อ แต่นำมาใช้มากขึ้น "แปลง" ระหว่างระบบ TM สมบูรณ์ไม่เคยดำเนินการจริงออกในทางปฏิบัติเช่นบางครั้งมากขึ้นเกี่ยวกับการพิสูจน์การดำรงอยู่ ...
vzn

คำตอบ:


38

เครื่องจักรทัวริงและ -calculus เทียบเท่ากับฟังก์ชันเท่านั้นที่สามารถกำหนดได้λNN

จากมุมมองของความซับซ้อนในการคำนวณพวกเขาดูเหมือนจะทำงานแตกต่างกัน เหตุผลหลักที่คนใช้เครื่องจักรทัวริงและไม่แคลคูลัสเหตุผลเกี่ยวกับความซับซ้อนคือการใช้แคลคูลัสนำไปสู่การไร้เดียงสากับมาตรการความซับซ้อนที่ไม่สมจริงเพราะคุณสามารถคัดลอกแง่ (ขนาดพล) ได้อย่างอิสระในหนึ่งเดียว -reduction ขั้นตอน เช่นกล่าวอีกนัยหนึ่งการลดขั้นตอนเดียวใน -calculus เป็นรูปแบบการคิดต้นทุนที่มีหมัด ในทางตรงกันข้ามขั้นตอนการลดขนาดของเครื่องจักรทัวริงทำงานได้ดีมาก (ในแง่ของการเป็นตัวทำนายที่ดีของโปรแกรมเวลาทำงานจริง)λλβ(λx.xxx)MMMM.λ

ไม่มีใครรู้ว่าจะกู้ทฤษฎีทัวริงจักรตามทฤษฎีความซับซ้อนใน -calculus ได้อย่างไร ในการพัฒนาล่าสุด (2014) Accattoli และ Dal Lago สามารถแสดงให้เห็นว่าเวลาที่ซับซ้อนขนาดใหญ่เช่น ,และสามารถได้รับสูตรธรรมชาติ -calculus แต่คลาสที่เล็กกว่าเช่นหรือไม่สามารถนำเสนอได้โดยใช้เทคนิค Accattoli / Dal LagoλP N P E X P λ O ( n 2 ) O ( nPNPEXPλO(n2)O(nlogn)

วิธีการกู้คืนความซับซ้อนของพื้นที่ทั่วไปโดยใช้ -calculus ไม่เป็นที่รู้จักλ


4
ฉันรู้สึกว่าต้องชี้แจงที่นี่: ไม่มี "เทคนิค" พิเศษ Accattoli และ Dal Lago ใช้เพื่อเรียน "เวลา" งานนำเสนอคือ "ไร้เดียงสา" หนึ่ง: defineเป็นคลาสของภาษาที่ decidable โดย -term ใน -reduction ขั้นตอนภายใต้กลยุทธ์การลดมาตรฐานใด ๆ ( เช่นซ้ายสุด) -outermost) Accattoli และ Dal Lago แสดงให้เห็นว่าการใช้เทคนิคมาจากตรรกะเชิงเส้นที่มีความเป็นพหุนามดังกล่าวว่า .λTIME(f(n))λf(n) βpλTIME(f(n))=TIME(p(f(n))
Damiano Mazza

@DamianoMazza ใช่ที่เหมาะสมสิ่งที่ฉันหมายความว่าฉันไม่คิดว่าเทคนิคที่ใช้ในการแสดงผลนี้สามารถใช้ในการแสดงเช่น2) λTIME(n2)=TIME(n2)
Martin Berger

3
โอเคฉันเข้าใจแล้ว ที่จริงแล้วฉันเดาว่า : คลาสความซับซ้อนเช่นหรือไม่แข็งแรงใครไม่สามารถคาดหวังได้ มีเสถียรภาพภายใต้การเปลี่ยนแปลงในโมเดลการคำนวณ (นี่คือกรณีที่เกิดขึ้นแม้ว่าเราจะติดอยู่กับเครื่องจักรทัวริงเช่นเทปเดี่ยวกับเทปหลาย ๆ ) T I M E ( n 2 ) T I M E ( n บันทึกn )λTIME(n2)TIME(n2)TIME(n2)TIME(nlogn)
Damiano Mazza

3
@DamianoMazza ฉันเห็นด้วยเช่นเดียวกันกับขนาดของตัวอักษรที่เลือก แต่อัลกอริทึมที่ทำงานในบนเครื่อง -tape สามารถจำลองในบนเครื่อง 1 เทปซึ่งเป็นการระเบิดกำลังสอง การแปลปัจจุบันของ Accattoli และ Dal Lago คืออะไร ฉันจำไม่ได้ว่าพวกเขาระบุไว้ชัดเจนหรือไม่ n 5 k f 2 ( n )f(n)n5kf2(n)
Martin Berger

1
@Jake บทความที่อ้างถึงพูดถึงการทำให้เป็นมาตรฐานเบต้า (ดูหน้าสอง) ผลลัพธ์ที่คล้ายกันเป็นที่รู้จักกันแล้วสำหรับการลดรูปแบบอื่น ๆ เช่นการลดลงเล็กน้อย (นั่นคือการเรียกตามค่า) —see Dal Lago & Martini, 2008 (กล่าวถึงในบทความนี้และในcstheory.stackexchange.com/a/397/989 )
Blaisorblade

12

ฉันวางส่วนหนึ่งของคำตอบที่ฉันเขียนสำหรับคำถามอื่น :

ความซับซ้อนของการคำนวณโดยนัยมีจุดมุ่งหมายเพื่ออธิบายลักษณะของคลาสที่ซับซ้อนโดยใช้ภาษาเฉพาะ ผลลัพธ์แรกเช่นทฤษฎีบทของ Bellantoni-Cookได้ระบุไว้ในแง่ของฟังก์ชันการเรียกคืน แต่ผลลัพธ์ล่าสุดใช้คำศัพท์และเทคนิคของ -calculus เห็นนี้แนะนำสั้นไปโดยปริยายคำนวณซับซ้อนสำหรับคำแนะนำเพิ่มเติมและหรือการดำเนินการของการประชุมเชิงปฏิบัติการ DICEλμλ

มีการระบุลักษณะของ (อย่างน้อย)โดยใช้ -calculus λFPλ


5

ฉันไม่รู้ว่าคำตอบนี้เป็นส่วนหนึ่งของคำถามของคุณหรือไม่ แต่มีลักษณะทางเลือกของคลาสที่ซับซ้อน (esp.และ ) ในแง่ของ logics (ลำดับที่ 1 ตรรกะลำดับที่ 2 ตรรกะ ฯลฯ .. )PNP

ตัวอย่างเช่นงานของR. Fagin (et al.) ในพื้นที่นี้มีความโดดเด่น (และ imo อาจให้ข้อมูลเชิงลึกที่เกี่ยวข้องกับปัญหา vsและความสัมพันธ์กับความซับซ้อนเชิงพรรณนาและอัลกอริธึม )PNP

บาง characterizations ต่อไปของการเรียนคอมพิวเตอร์ที่ซับซ้อนในแง่ของอัลกอริทึม (Kolmogorov-Solomonov) ความซับซ้อนสามารถพบได้ (ตัวอย่าง) ที่นี่และที่นี่

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