แยกรายการคำ


10

มีปัญหาแบบเปิดในภาษาทางการที่เรียกว่าปัญหาการแยก ซึ่งระบุไว้สั้น ๆ ตามที่กำหนดสองสายยาว , DFA ขนาดใหญ่จะต้อง "แยก" พวกเขาความหมายรับสายหนึ่ง แต่ปฏิเสธอีกสายหนึ่งn

นี่คือบางส่วนเอกสารที่เกี่ยวข้อง1 , 2 (ฉันมีอีกไม่กี่ แต่ฉันไม่มีชื่อเสียงพอที่จะโพสต์พวกเขา)

สิ่งเหล่านี้ล้วนกล่าวถึงปัญหาการแยกสองสายที่แตกต่างกัน ผมสงสัยว่าถ้ามีรับงานใด ๆ ทำในพื้นที่ของการแยกรายชื่อของสตริงที่มีความหมายให้ทั้งสองรายการของสตริง, และ , สิ่งที่ขนาด DFA จะต้องยอมรับสตริงในทุกและปฏิเสธสตริงในทุกBปัญหานี้เทียบเท่ากับกอล์ฟ regexB A BABAB

มีคำถามพื้นฐานบางอย่างที่ฉันได้ทำเช่นถ้ารายการใดรายการหนึ่งมีขนาดหรือถ้าสตริงทั้งหมดมีความยาวแตกต่างกัน1

ฉันค้นหามาแล้วแต่ยังไม่พบเอกสารใด ๆ ที่จัดการกับปัญหาประเภทนี้ มีการทำวิจัยในเรื่องนี้หรือไม่?

ขอบคุณล่วงหน้า.



ลิงก์ของ VZN เยี่ยมมาก! อย่างไรก็ตามฉันเชื่อว่าคุณสามารถหาข้อมูลได้มากขึ้นหากคุณดูในภาคผนวกของ: "คอมพิวเตอร์และการใช้งานไม่ได้: คำแนะนำเกี่ยวกับทฤษฎีความสมบูรณ์แบบของ NP"
Michael Wehar

นอกจากนี้หากคุณสนใจที่จะแยกรายการสองรายการด้วยเครื่องทัวริงแบบ จำกัด เวลาเชิงเส้นฉันให้การก่อสร้างเพียงเล็กน้อยและโพสต์บทความแบบออนไลน์ (ไม่มีอะไรพิเศษ) โดยทั่วไปสำหรับสององค์ประกอบ k รายการที่แต่ละสายมีความยาวไม่เกิน n คุณสามารถแยกรายการด้วยเครื่องทัวริงที่มี state และมี " เวลาทำงานที่เหมาะสม " klog(n)log(log(n))
Michael Wehar

1
โดย Gold1978 เรารู้ว่าปัญหาในการพิจารณาว่ารายการสองรายการสามารถคั่นด้วย DFA ที่ขนาดที่กำหนดคือ NP-complete หากคุณแก้ไขปัญหาที่จะพูดโดยแยกออกจากเครื่องทัวริงที่มีเวลาที่เขียนเป็นเอกภาพก็จะไม่ทราบว่าปัญหา NP-complete มีคนแนะนำว่าปัญหานี้อาจเกี่ยวข้องกับปัญหาวงจรขั้นต่ำซึ่งในกรณีนี้มันจะแก้ไขปัญหาที่เปิดในความซับซ้อนของโครงสร้างถ้าคุณแสดงว่ามันเป็น P หรือถ้ามันเป็นปัญหาที่สมบูรณ์
Michael Wehar

คำตอบ:


8

คำถามที่คุณจะถามเป็นที่รู้จักกันเป็นปัญหาแยกสำหรับภาษา: ให้สองภาษาและจะมีภาษาที่สาม (คั่น) ที่แยกพวกเขาคือและ\L M K M M L = KLMKMML=

คุณมีความสนใจในกรณีที่มีข้อ จำกัด ที่และมี จำกัด และในขนาดของ DFA สำหรับML MKLM

ในกระดาษ 2013ผู้เขียนระบุ:

แม้ว่าปัญหาการแยกจะเกิดขึ้นบ่อยครั้ง แต่ก็ยังไม่ได้รับการศึกษาอย่างเป็นระบบแม้ในกรณีที่มีข้อ จำกัด แต่ก็ยังมีความท้าทายในภาษาปกติ

อย่างไรก็ตามพวกเขากล่าวถึงกรณีพิเศษหลายอย่างที่ได้รับการแก้ไขและแน่นอนที่สุดครอบคลุมกรณีที่แน่นอน

คุณอาจต้องการดูinterpolant Craigปัญหาที่คล้ายกันในสูตรตรรกะ การแก้ไขนั้นใช้สำหรับการตรวจสอบแบบจำลองโดยใช้ SAT ในการตั้งค่าที่ฉันคิดว่าใกล้เคียงกับสิ่งที่คุณกำลังมองหา (โดยเฉพาะอย่างยิ่งเกี่ยวกับความละเอียดของอินพุต) บทความนี้ควรเป็นจุดเริ่มต้นที่ดี


ฉันขอขอบคุณที่คุณแบ่งปันสิ่งนี้ ฉันไม่รู้เกี่ยวกับกระดาษนี้ ขอบคุณ. :)
Michael Wehar

3

กรณีพิเศษของการมีตรงหนึ่งคำในและเป็นหนึ่งในคำในได้รับการกล่าวถึงที่นี่ก่อนBAB

สิ่งนี้เรียกว่า "ปัญหาการแยกคำ" ภาพนิ่งโดย Shallit ครอบคลุมทุกอย่างที่รู้เกี่ยวกับปัญหา (ดูสไลด์ 1และสไลด์ 2 )


หากคุณสนใจที่จะหา DFA ที่เล็กที่สุดสำหรับกรณีพิเศษดูได้ที่: cstheory.stackexchange.com/questions/29119/…
Michael Wehar
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.