ปริศนาอักษรไขว้ Regex NP-hard หรือไม่


13

ฉันหลอกไปเมื่อวันก่อนในเว็บไซต์นี้: http://regexcrossword.com/และทำให้ฉันสงสัยว่าวิธีที่ดีที่สุดในการแก้ไขคืออะไร

คุณสามารถแก้ปัญหาดังต่อไปนี้ในเวลาพหุนามหรือว่าเป็น NP- ยาก?

ให้กริด NxM ที่มีนิพจน์ปกติ N สำหรับคอลัมน์และ M สำหรับแถวหาวิธีแก้ปัญหาใด ๆ ที่กริดเช่นว่านิพจน์ปกติทั้งหมดพอใจหรือกล่าวว่าไม่มีวิธีแก้ปัญหา


ยังไม่ได้ดูไซต์ แต่คำถามกับ Regexes มีแนวโน้มที่จะเป็น PSPACE ที่สมบูรณ์ซึ่งเป็นคลาสที่ยากพอ ๆ กับ NP
— jmite

1
@ jmite การคาดเดาสตริงที่เหมาะสมกับการแสดงออกปกติบางอย่างนั้น "ง่าย" เหมือนกับที่เราไม่จำเป็นต้องได้มาซึ่งคุณสมบัติโกลบอลของนิพจน์ทั่วไป ในความเป็นจริงผมคิดว่าปัญหาอยู่ใน NP (ดูความคิดเห็นด้านล่างคำตอบของ FrankW.)
— ราฟาเอล

คำตอบ:


11

ปัญหาคือ NP-hard

เราแสดงสิ่งนี้โดยการลดจุดสุดยอด:

G=(V,E)kV′⊆VkEV′

|E|+1|V|

0∗1(0|1)∗

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

  • 1

  • 0∗

k

ความสอดคล้องกันระหว่างวิธีการแก้ปัญหาคำไขว้ของ regex และจุดสุดยอดนั้นควรจะชัดเจน

ตัวอย่าง:

ค้นหาจุดสุดยอดปกขนาด 2 สำหรับกราฟต่อไปนี้:

https://i.imgur.com/TY6sjjV.png

VA=0∗|10110

VB=0∗|11101

VC=0∗|10011

VD=0∗|11000

Counter=0∗|0∗10∗|0∗10∗10∗

E1=0∗1(0|1)∗

E2=0∗1(0|1)∗

E3=0∗1(0|1)∗

E4=0∗1(0|1)∗

VAVDCounterE1E4

VA,VBVC,VB

Counter0∗|0∗10∗


2
เนื่องจากเราสามารถ a) คำนวณ NFA ขนาดพหุนามสำหรับนิพจน์ทั่วไปรวมทั้งเดา b) การแก้ปัญหาและ c) (ขนาดเชิงเส้น) การคำนวณของ NFA ทั้งหมดและ d) ตรวจสอบ (ในเวลาพหุนาม) ว่าการคำนวณเหมาะสมกับคำที่เดา ปัญหายังอยู่ใน NP
— กราฟิลส์

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