DFA ที่เล็กที่สุดที่ยอมรับสตริงที่กำหนดและปฏิเสธสตริงที่กำหนดอื่น ๆ


11

ป.ร. ให้ไว้สองชุด, Bของสตริงมากกว่าตัวอักษรΣเราสามารถคำนวณที่เล็กที่สุดที่กำหนดขอบเขตของรัฐหุ่นยนต์ (DFA) Mเช่นว่าL ( M )และL ( M ) Σ *B ?A,BΣMAL(M)L(M)ΣB

กล่าวอีกนัยหมายถึงชุดตัวอย่างเชิงบวก สตริงทั้งหมดในAต้องได้รับการยอมรับจาก DFA Bหมายถึงชุดตัวอย่างเชิงลบ DFA ไม่ควรยอมรับสตริงในBAABB

มีวิธีแก้ปัญหานี้หรือไม่อาจใช้เทคนิคการย่อขนาด DFAหรือไม่ ฉันนึกภาพได้ว่าการสร้างหุ่นยนต์คล้าย DFA ที่มีสถานะอยู่สามแบบ: ยอมรับสถานะปฏิเสธสถานะและ "ไม่สนใจ" (ข้อมูลใด ๆ ที่ลงท้ายด้วยสถานะ "ไม่สนใจ" สามารถยอมรับได้ หรือถูกปฏิเสธ) แต่เราสามารถหาวิธีที่จะลดสิ่งนี้ให้เป็น DFA สามัญได้หรือไม่?

คุณอาจคิดว่านี่เป็นปัญหาของการเรียนรู้ DFA โดยให้ตัวอย่างที่เป็นบวกและลบ

นี่คือแรงบันดาลใจจาก สนามกอล์ฟ regex คือ NP-Complete หรือไม่? ซึ่งถามคำถามที่คล้ายกันสำหรับ regexps แทน DFAs


1
AB

มีวรรณคดีมากมายเกี่ยวกับฟังก์ชั่นการเรียนรู้ / ภาษาเช่นยื่นภายใต้การเรียนรู้ในขีด จำกัด สิ่งเหล่านี้ไม่ตรงกับปัญหาของคุณ แต่อาจน่าสนใจ
ราฟาเอล

คำตอบ:


7

AB

โปรดทราบว่า @reinierpost ระบุว่าไม่มีข้อ จำกัด ใด ๆ ใน A และ B ปัญหาอาจไม่สามารถตัดสินใจได้


หาก A และ B เป็นทั้งภาษาปกติและหากมีการอนุญาตให้ยอมรับหรือปฏิเสธการป้อนข้อมูลใด ๆ ที่ A และ B จะให้ผลเหมือนกันฉันก็ไม่เห็นว่าปัญหาจะไม่สามารถตัดสินใจได้ สำหรับ DFA ที่มีขนาดเฉพาะใด ๆ มันเป็นไปได้ที่จะสร้างชุดของอินพุตที่ครอบคลุมอย่างสมบูรณ์ซึ่งมันควรจะยอมรับและอินพุทที่มันควรจะปฏิเสธเช่น DFA ใด ๆ ที่มีจำนวนสถานะเดียวกันหรือน้อยกว่านั้นจัดการกรณีทดสอบทั้งหมดได้อย่างถูกต้อง สามารถรับประกันการทำงานเหมือนกันในทุกกรณี ตั้งแต่เครื่องที่ยอมรับทุกสิ่งที่ยอมรับและปฏิเสธทุกอย่างอื่นจะ ...
SuperCat

... เป็นไปตามข้อ จำกัด เราสามารถกำหนดขีด จำกัด บนของจำนวนเครื่องที่จะบรรจุได้ เนื่องจากมีจำนวน จำกัด ของเครื่องจักรที่เป็นไปได้ในทุกขนาดและจำนวนกรณีทดสอบที่จะได้รับการประเมินจึงสามารถสร้างเครื่องจักรที่เป็นไปได้ทั้งหมดซึ่งมีขนาดเล็กกว่า A และดูว่ามีเงื่อนไขที่จำเป็นหรือไม่ ไม่ใช่วิธีที่รวดเร็วในการแก้ปัญหา แต่แน่นอนว่าถ้า A และ B เป็นปกติ หากพวกเขาไม่ปกติ DFA จะไม่สามารถแก้ไข A หรือ B บางครั้ง "ความแตกต่าง" อาจเป็นเรื่องปกติแม้ว่า A และ B จะไม่ปกติ แต่นั่น ...
supercat

... จะเป็นกรณี "ผิดปกติ"
supercat

8

ABAB=AAB

การค้นหา DFA ขั้นต่ำที่สอดคล้องกับชุดสตริงที่กำหนดคือ NP-complete ผลที่ได้นี้จะปรากฏเป็นทฤษฎีบท 1 ในกระดาษ Angluin ของความซับซ้อนของการอนุมานต่ำสุดของชุดปกติ เห็นได้ชัดว่าปัญหาของคุณยังเป็นปัญหาที่สมบูรณ์

สำหรับจำนวนของการเชื่อมโยงที่ดีและการอภิปรายเกี่ยวกับการเรียนรู้ภาษาปกติตรวจสอบ blogpost CSTheory ในการเรียนรู้ภาษาปกติ


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