วิทยาศาสตร์คอมพิวเตอร์เชิงทฤษฎี

คำถาม & คำตอบสำหรับนักวิทยาศาสตร์คอมพิวเตอร์เชิงทฤษฎีและนักวิจัยในสาขาที่เกี่ยวข้อง

3
ปัญหากราฟสมบูรณ์แบบ NP เกี่ยวกับคุณสมบัติโครงสร้าง
คำถามนี้ถูกย้ายจาก Computer Science Stack Exchange เพราะสามารถตอบได้ใน Theoretical Computer Science Exchange Exchange อพยพ 6 ปีที่แล้ว (คำถามนี้เป็นบิตของ "แบบสำรวจ") ขณะนี้ฉันกำลังทำงานกับปัญหาที่ฉันพยายามแบ่งขอบของทัวร์นาเมนต์ออกเป็นสองชุดซึ่งทั้งสองอย่างนี้จำเป็นต้องมีคุณสมบัติโครงสร้างบางอย่าง ปัญหา "รู้สึก" ค่อนข้างยากและฉันคาดหวังอย่างเต็มที่ว่าจะเป็นNPNP\mathcal{NP}สมบูรณ์ด้วยเหตุผลบางอย่างที่ฉันมีเวลาที่ยากลำบากแม้จะพบปัญหาที่คล้ายกันในวรรณคดี ตัวอย่างของปัญหาที่ฉันจะพิจารณาเปรียบเทียบกับสิ่งที่ฉันจัดการกับ: กำหนดทัวร์นาเมนต์แบบถ่วงน้ำหนัก , มีส่วนโค้งตอบรับเป็นG หรือไม่G=(V,E,w)G=(V,E,w)G = (V,E,w)GGGที่ขอบซึ่งตอบสนองความไม่เท่าเทียมกันของรูปสามเหลี่ยม? สังเกตความแตกต่างของปัญหาชุดความคิดเห็นย้อนกลับแบบดั้งเดิม: ฉันไม่สนใจขนาดของชุด แต่ฉันสนใจว่าชุดตัวเองมีคุณสมบัติโครงสร้างบางอย่างหรือไม่ คุณเคยเจอปัญหาการตัดสินใจที่รู้สึกเช่นนี้หรือไม่? คุณจำได้ไหมว่าพวกเขาเป็นสมบูรณ์หรือในP ? ความช่วยเหลือใด ๆ และทั้งหมดชื่นชมNPNP\mathcal{NP}PP\mathcal{P}

2
การแจกแจงความน่าจะเป็นเชิงลึกที่ถูกผูกไว้
คำถามที่เกี่ยวข้องสองข้อเกี่ยวกับการคำนวณเชิงลึกแบบมีขอบเขต: 1) สมมติว่าคุณเริ่มต้นด้วย n bits และเริ่มต้นด้วย bit i สามารถเป็น 0 หรือ 1 ที่มีความน่าจะเป็น p (i) โดยอิสระ (ถ้าทำให้ปัญหาง่ายขึ้นเราสามารถสันนิษฐานได้ว่า p (i) s ทั้งหมดคือ 0,1 หรือ 1/2หรือแม้แต่ทั้งหมดก็ 1/2) ตอนนี้คุณทำการคำนวณรอบที่ จำกัด ในแต่ละรอบคุณใช้ประตูคลาสสิกย้อนกลับในชุดบิตที่ไม่ปะติดปะต่อ (แก้ไขชุดประตูย้อนกลับคลาสสิคคลาสสิกที่คุณชื่นชอบ) ในตอนท้ายคุณจะได้รับการแจกแจงความน่าจะเป็นในสตริงที่ n บิต มีผลต่อการ จำกัด การแจกแจงดังกล่าวหรือไม่? ฉันกำลังมองหาบางสิ่งที่คล้ายคลึงกับ Hastad switch lemme, Boppana ทำให้ผลลัพธ์ทั้งหมดมีอิทธิพลน้อยหรือทฤษฎี LMN 2) คำถามเดียวกันกับ 1) แต่มีวงจรควอนตัมเชิงลึกที่มีขอบเขต จำกัด

2
อัลกอริธึมการประมาณเวลาแบบพหุนามขั้นสูงสำหรับ MAX 3SAT
พีซีทฤษฎีบทรัฐว่าไม่มีอัลกอริทึมเวลาพหุนามสำหรับ MAX 3SAT ที่จะหางานที่น่าพอใจคำสั่งของสูตร 3SAT พอใจเว้นแต่NPP = N P7 / 8 + ε7/8+ϵ7/8+ \epsilonP= NPP=NPP = NP มีอัลกอริธึมเวลาพหุนามเล็กน้อยที่ตอบสนองของอนุประโยค ดังนั้นเราสามารถทำได้ดีกว่าถ้าเราอนุญาตอัลกอริทึมแบบพหุนาม อัตราส่วนการประมาณแบบใดที่เราสามารถทำได้ด้วยอัลกอริธึมกึ่งเวลาแบบโพลิโนเมียล ( ) หรือด้วยอัลกอริธึมเวลาแบบเอ็กซ์โพเนนเชียลย่อย ( ) ฉันกำลังมองหาการอ้างอิงถึงอัลกอริทึมดังกล่าว7 / 8 + ε n O ( บันทึกn ) 2 o ( n )7 / 87/87/87 / 8 + ε7/8+ϵ7/8+ \epsilon nO ( บันทึกn …

5
คอมไพเลอร์พิสูจน์ความถูกต้อง
ฉันกำลังมองหาวัสดุการสอนที่ครอบคลุมการพิสูจน์ความถูกต้องของคอมไพเลอร์โดยเฉพาะอย่างยิ่งการใช้วิธีการ denotational ในระดับเริ่มต้นของนักเรียนที่จบการศึกษา อีกวิธีหนึ่งคุณรู้ตัวอย่างคอมไพเลอร์ง่ายๆที่ฉันสามารถใช้เพื่ออธิบายปัญหาหรือไม่ (ตัวอย่างแรกที่เกิดขึ้นกับฉันคือนักแปลจากการแสดงออกไปยัง postfix แต่ไม่สามารถแสดงสิ่งที่น่าสนใจอื่น ๆ นอกเหนือจากวิธีการเหนี่ยวนำในไวยากรณ์)

2
อัลกอริธึม diff ที่มีประสิทธิภาพสำหรับต้นไม้และระยะทาง Levenshtein
ฉันเพิ่งอ่านบทสรุปของปัญหาที่เกี่ยวข้องกับการทำแตกต่างกันระหว่างต้นไม้และทำให้ฉันสนใจที่จะเรียนรู้ว่าสถานะของศิลปะสำหรับปัญหานี้คืออะไร นอกจากนี้สมมติว่าระหว่างการดำเนินการแก้ไขที่อนุญาตของคุณคือโหนดการเพิ่ม / ลบแบบดั้งเดิมแก้ไขเนื้อหาที่คุณเพิ่มการดำเนินการเพิ่มเติมของทรีย่อยการคัดลอก / ย้ายสิ่งนี้ทำให้เกิดปัญหา (จากการค้นหา diff ที่ดีที่สุด) ง่ายขึ้นหรือยากขึ้น?

4
โครงสร้างข้อมูลมีความผิดปกติ
ข้อจำกัดความรับผิดชอบ: ฉันไม่ใช่นักทฤษฎี CS มาจากพีชคณิตนามธรรมฉันคุ้นเคยกับสิ่งต่าง ๆ ที่มีความเท่าเทียมกับมอร์ฟิซึ่มส์ - แต่ฉันมีปัญหาในการแปลงแนวคิดนี้เป็นโครงสร้างข้อมูล ฉันแรกคิดว่าตรง morphisms bijective ตั้งทฤษฎีจะพอเพียง แต่ฉันวิ่งเข้าไปในกำแพงค่อนข้างเร็ว - เหล่านั้นเป็นเพียงการเข้ารหัสและไม่จับสาระสำคัญการคำนวณของโครงสร้างข้อมูล มีคำจำกัดความที่เข้มงวดกว่า (แต่มีประโยชน์มากกว่า) หรือไม่? (หรือถ้าไม่ใช่ทำไม?) มีคำจำกัดความตามบัญญัติของหมวดหมู่ "โครงสร้างข้อมูลที่สร้างขึ้น" หรือไม่?

2
การจับคู่รูปแบบ n- มิติ
อะไรคือผลลัพธ์ที่ทราบกันดีในการค้นหา subarray n-มิติที่แน่นอนภายในอาร์เรย์ n-Dim? ใน 1D มันเป็นเพียงปัญหาการจับคู่สตริง KMP ทำในเวลาเชิงเส้น ใน 2D บทความนี้แสดงให้เห็นว่าสามารถทำได้ในเวลาเชิงเส้นพร้อมพื้นที่เพิ่มเติมเล็กน้อย สามารถแก้ไขปัญหานี้ในกรณีที่เป็นเส้นตรงเวลาที่แย่ที่สุดสำหรับมิติข้อมูลคงที่ได้หรือไม่?

1
การทำกราฟวงจรคี่ที่ไม่มีคอร์ดขั้นต่ำขั้นต่ำ: มันเป็น NP-hard หรือไม่?
ปัญหาที่น่าสนใจต่อไปนี้เกิดขึ้นในงานวิจัยของฉันเมื่อเร็ว ๆ นี้: เช่น: กราฟE)G(V,E)G(V,E)G(V, E) การแก้ไข: ความสมบูรณ์แบบควอร์ดที่ไม่มีคอร์ดกำหนดเป็นชุดของชุดขอบเพื่อให้กราฟที่เสร็จสมบูรณ์มีคุณสมบัติที่ทุกขอบของมีอยู่ในวงจรคดเคี้ยวแบบคดเคี้ยวE′E′E'EEEG′(V,E′)G′(V,E′)G'(V, E')G′G′G' วัด: ขนาดของความสำเร็จคือ.|E′−E||E′−E||E' - E| จนถึงตอนนี้เราสามารถพิสูจน์ได้ว่าปัญหาที่แก้ไขแล้วของรุ่นนี้คือปัญหา NP-complete ซึ่งแทนที่จะต้องการให้ "ทุก ๆ ขอบของถูกบรรจุอยู่ในวงจรคี่ไร้คอร์ด" เราต้องการคุณสมบัติที่แข็งแกร่งกว่า "ทุก ๆ ขอบนั้นมีอยู่ ในรูปสามเหลี่ยม (รอบความยาว 3) " (โปรดทราบว่าสิ่งนี้ไม่เทียบเท่ากับปัญหาการย่อกราฟขั้นต่ำ )G′G′G' อดีตนั้นเห็นได้อย่างง่ายดายว่าเป็นลักษณะทั่วไปของสิ่งหลัง แต่นี่เป็นความพยายามทั้งหมดของฉันที่จะพิสูจน์ว่ามันล้มเหลว ใครสามารถมาพร้อมกับตัวชี้ / การอ้างอิง / ฯลฯ

5
ลดการใช้พื้นที่ของการเชื่อมต่อ st ด้วยหลายรอบหรือไม่
สมมติว่ากราฟมีจุดยอดแสดงเป็นสตรีมของขอบแต่อนุญาตให้ผ่านได้หลายครั้งผ่านกระแสn เมตรGGGnnnม.mm Monika Rauch Henzinger, Prabhakar Raghavan และ Sridar Rajagopalanตั้งข้อสังเกตว่ามีความจำเป็นที่จะต้องพิจารณาว่ามีช่องว่างระหว่างจุดสองจุดที่กำหนดในหรือไม่ถ้าอนุญาตผ่านข้อมูล (ดูที่เวอร์ชันรายงานทางเทคนิคด้วย) อย่างไรก็ตามจะไม่มีการจัดทำอัลกอริทึมเพื่อให้บรรลุข้อผูกพันนี้ ฉันคิดว่าอัลกอริทึมที่ดีที่สุดจริงจะใช้เวลาพื้นที่ในแบบจำลองคอมพิวเตอร์ที่สมจริงตั้งแต่หนึ่งที่มีการแยกแยะความแตกต่างจุดที่แตกต่างกันหากไม่สามารถหน่วยความจำดัชนีโดยใช้ตัวชี้ขนาดคงที่G k O ( ( nΩ(n/k)Ω(n/k)\Omega(n/k)GGGkkknO((nlogn)/k)O((nlogn)/k)O((n\, \log\, n)/k)nnn เราจะตัดสินใจเลือกการเชื่อมต่อกราฟที่มีผ่านโดยใช้พื้นที่อย่างไรO ( ( nkkkO((nlogn)/k)O((nlogn)/k)O((n\, \log\, n)/k) หากอนุญาตให้ส่งผ่านได้เพียงครั้งเดียวข้อมูลอินพุตสามารถจัดเก็บเป็นพาร์ติชันของชุดจุดยอดรวมชุดถ้าขอบถูกมองเห็นระหว่างจุดยอดในชุดต่าง ๆ ที่สอง สิ่งนี้ต้องมีพื้นที่มากที่สุดอย่างชัดเจน คำถามของฉันเกี่ยวกับ : เราจะใช้บัตรผ่านเพิ่มเติมเพื่อลดพื้นที่ที่ต้องการได้อย่างไรk > 1O(nlogn)O(nlogn)O(n\, \log\, n)k>1k>1k > 1 (เพื่อหลีกเลี่ยงเรื่องไร้สาระเป็นพารามิเตอร์ที่ไม่สามารถ จำกัด ขอบเขตนิรนัยได้โดยค่าคงที่และขอบเขตของพื้นที่เป็นนิพจน์ที่เกี่ยวข้องกับฟังก์ชันของทั้งและ )n kkkknnnkkk อัปเดต: แม้แต่สำหรับมันจะมีประโยชน์มากที่จะมีวิธีเก็บเฉพาะจุดยอดหรือมีขอบเขตต่ำกว่าที่แข็งแกร่งกว่าสำหรับค่าคงที่โดยไม่คำนึงถึง ?n / 2 c …

4
กราฟไม่มีขีด จำกัด เหมาะสำหรับอะไร?
ฉันเพิ่งอ่านวิกิพีเดียภาษาเยอรมันว่ากราฟไม่มีที่สิ้นสุดเป็นกราฟที่มีจำนวนโหนดไม่ จำกัด หรือจำนวนขอบไม่ จำกัด ฉันรู้เฉพาะแอปพลิเคชั่นและอัลกอริธึมสำหรับกราฟ จำกัด กราฟไม่มีขีด จำกัด เหมาะสำหรับอะไร? แอปพลิเคชันของสิ่งเหล่านั้นคืออะไร? ฉันนึกภาพไม่ออกว่าอัลกอริธึมที่ใช้กับกราฟไม่สิ้นสุดเนื่องจากคุณไม่สามารถจัดเก็บกราฟไม่สิ้นสุด ดังนั้นคุณไม่สามารถใช้งานได้

3
หากเครื่องนามธรรมสามารถจำลองตัวเองได้นั่นทำให้ทัวริงสมบูรณ์หรือไม่
ยกตัวอย่างเช่นในภาษาการเขียนโปรแกรมมันเป็นเรื่องธรรมดาที่จะเขียน X-in-X คอมไพเลอร์ / ล่าม แต่ในระดับทั่วไปที่หลายคนรู้จักระบบทัวริงสมบูรณ์สามารถจำลองตัวเองในรูปแบบที่น่าประทับใจ (เช่นการจำลองเกมชีวิต Conway ในเกมชีวิต ) ดังนั้นคำถามของฉันคือ: ระบบสามารถจำลองตัวเองได้เพียงพอที่จะพิสูจน์ว่าเป็นทัวริงสมบูรณ์หรือไม่ เป็นเงื่อนไขที่จำเป็นอย่างแน่นอน

1
FPT vs W [P] - ความซับซ้อนแบบ Parameterized
ในความซับซ้อน parametrized, ⊆ W [ 2 ] ⊆ ... ⊆ W [ P ] มันถูกคาดเดาว่าแต่ละข้อบรรจุนั้นเหมาะสมF P T ⊆ W [1]FPT⊆W[1]\mathsf{FPT} \subseteq \mathsf{W}[1] ⊆ W [ 2 ]⊆W[2]\subseteq \mathsf{W}[2] ⊆ … ⊆ W [ P]⊆...⊆W[P]\subseteq \ldots \subseteq \mathsf{W}[P] ถ้าแล้วP = W [ P ]F P T = W [ P]FPT=W[P]\mathsf{FPT}=\mathsf{W}[P]P = …

3
ปัญหาที่ทำให้ NP สมบูรณ์ภายใต้การสุ่มหรือการลดค่า P / โพลี
ในคำถามนี้เราพบว่ามีปัญหาตามธรรมชาติที่เป็นปัญหา NP-complete ภายใต้การลดแบบสุ่ม แต่อาจไม่ได้อยู่ภายใต้การลดลงที่กำหนด (แม้ว่าจะขึ้นอยู่กับสมมติฐานที่พิสูจน์ไม่ได้ในทฤษฎีจำนวน) ทราบถึงปัญหาอื่น ๆ อีกหรือไม่? มีปัญหาตามธรรมชาติใดบ้างที่ NP-complete ภายใต้การลด P / โพลี แต่ไม่ทราบว่าอยู่ภายใต้การลด P?

4
การเปลี่ยนแปลงของเกม
นี่เป็นการทบทวนคำถามก่อนหน้านี้อีกครั้ง พิจารณาเกมข้อมูลที่สมบูรณ์แบบที่เป็นกลาง ต่อไปนี้ระหว่างผู้เล่นสองคนคืออลิซและบ็อบ ผู้เล่นจะได้รับการเปลี่ยนแปลงของจำนวนเต็ม 1 ถึง n ในแต่ละเทิร์นหากการเปลี่ยนรูปปัจจุบันเพิ่มขึ้นผู้เล่นปัจจุบันแพ้และผู้เล่นคนอื่นชนะ มิฉะนั้นผู้เล่นปัจจุบันจะลบหนึ่งในตัวเลขและเล่นผ่านไปยังผู้เล่นอื่น อลิซเล่นเป็นอันดับแรก ตัวอย่างเช่น: (1,2,3,4) - บ๊อบชนะทันทีตามคำจำกัดความ (4,3,2,1) - อลิซชนะหลังจากสามรอบไม่ว่าใครจะเล่น (2,4,1,3) - บ๊อบสามารถชนะในรอบแรกได้ไม่ว่าอลิซจะเล่นอย่างไร (1,3,2,4) - อลิซชนะทันทีโดยลบ 2 หรือ 3; ไม่เช่นนั้นบ๊อบสามารถชนะในเทิร์นแรกของเขาได้โดยการลบ 2 หรือ 3 (1,4,3,2) - ในที่สุดอลิซชนะถ้าเธอใช้ 1 ในเทิร์นแรกของเธอ; ไม่เช่นนั้นบ๊อบสามารถชนะในเทิร์นแรกของเขาได้โดยไม่ลบ 1 มีอัลกอริธึมเวลาพหุนามเพื่อพิจารณาว่าผู้เล่นคนไหนที่ชนะเกมนี้จากการเปลี่ยนแปลงเริ่มต้นที่กำหนดโดยสมมติว่าเป็นการเล่นที่สมบูรณ์แบบ ? โดยทั่วไปแล้วเนื่องจากเป็นเกมที่เป็นกลางมาตรฐานการเปลี่ยนแปลงทุกครั้งมีค่าSprague – Grundy ; ตัวอย่างเช่น (1,2,4,3) มีค่า* 1และ (1,3,2) มีค่า * …

1
การค้นหาระยะห่างระหว่างชื่อพหุนามสองแบบ (แสดงเป็นต้นไม้)
เพื่อนร่วมงานที่ทำงานเกี่ยวกับการเขียนโปรแกรมทางพันธุกรรมถามคำถามต่อไปนี้ ก่อนอื่นฉันพยายามแก้มันโดยใช้วิธีโลภ แต่จากความคิดที่สองฉันพบตัวอย่างของอัลกอริทึมโลภ ดังนั้นฉันคิดว่ามันควรค่าแก่การกล่าวถึงที่นี่ พิจารณาพหุนามสองอันซึ่งแสดงโดยต้นไม้แสดงออกของพวกเขา ตัวอย่างเช่นx3−2x+1x3−2x+1x^3-2x+1และx2+4x2+4x^2 + 4มีภาพประกอบด้านล่าง: กฎ: แต่ละโหนดเป็นชื่อตัวแปร ( x,y,z,…x,y,z,…x, y, z, \ldots ), ตัวเลขหรือการดำเนินการ (+, -, ×) การสำรวจเส้นทางตามลำดับของต้นไม้ควรส่งผลให้พหุนามถูกต้อง โหนดการดำเนินการมีระดับ 2 โหนดอื่น ๆ มีระดับ -0 โหนดทั้งหมดมีระดับที่ 1 (ยกเว้นรูทซึ่งมีระดับนอกเป็น 0) บนโหนด N ของแผนผังกำหนดการดำเนินการพื้นฐานดังนี้: xxx××\times การดำเนินการขั้นพื้นฐานสามารถสร้างแผนภูมินิพจน์ด้านบนของ N (ดูตัวอย่างด้านล่าง) ค่าใช้จ่ายของการดำเนินการพื้นฐานของประเภท 1คือ 1 ค่าใช้จ่ายสำหรับประเภท 2เท่ากับจำนวนการดำเนินงาน {+, -, ×} ในต้นไม้นิพจน์ที่สร้างขึ้นใหม่ ตัวอย่างสำหรับชนิดที่ 2:ค่าใช้จ่ายของการดำเนินการพื้นฐานต่อไปนี้คือ 2 …

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