รับ PDA M ซึ่ง L (M) อยู่ใน DCFL สร้าง DPDA N ซึ่ง L (N) = L (M)


11

มันเป็นไปได้ที่จะสร้างอัลกอริทึมซึ่งจะใช้เวลาเป็น input โฆษณาขยายลงแบบหุ่นยนต์พร้อมกับสัญญาว่าภาษาที่ได้รับการยอมรับโดยหุ่นยนต์นี้เป็นภาษาบริบทกำหนดและผลกำหนดขยายลงหุ่นยนต์ที่รับได้อย่างแม่นยำภาษาที่ได้รับการยอมรับ โดย ?ML(M)ยังไม่มีข้อความM

เป็นปัญหาที่เทียบเท่าจะสร้างอัลกอริทึมซึ่งจะใช้เวลาเป็น input โฆษณาขยายลงแบบออโต (มีสัญญาว่าเป็นกำหนดขึ้นดังกล่าวข้างต้น) และกำหนดขยายลงออNเอาท์พุทจะใช่ถ้าและไม่มีถ้า(N)ML(M)ยังไม่มีข้อความL(M)=L(ยังไม่มีข้อความ)L(M)L(ยังไม่มีข้อความ)

ฉันเชื่อว่าอัลกอริทึมที่แก้ปัญหาแรกจะให้อัลกอริธึมที่สองโดยความสามารถในการตัดสินใจของความเท่าเทียมกันของการกดลงอัตโนมัติ ฉันคิดว่าวิธีแก้ปัญหาข้อที่สองจะบอกถึงวิธีแก้ปัญหาข้อแรกเนื่องจากเราแจกแจงออโตเมตดาต้าที่กำหนดไว้ทั้งหมดและเรียกใช้อัลกอริธึมทีละหนึ่งเมื่อเราได้รับอินสแตนซ์ใช่แล้ว

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


1
ความมุ่งมั่นและความเท่าเทียมเป็นปัญหาที่ไม่อาจทราบได้ คุณจะพบพวกเขาในHopcroft & Ullman (1979)ตัวอย่างเช่น
Sylvain

2
ใช่พวกเขาเป็นที่รู้จักกันดีว่าเป็นปัญหาที่ไม่อาจตัดสินใจได้ แต่ฉันไม่ได้ถามว่าเป็นไปได้หรือไม่ที่จะตัดสินใจว่า ความเท่าเทียมกันที่ฉันขอเป็นของ PDA ซึ่งยอมรับภาษาที่กำหนดขึ้นแน่นอนและ DPDA เว้นแต่ฉันจะพลาดบางสิ่งบางอย่างไม่มีเหตุผลชัดเจนว่าทำไมสิ่งนี้จึงไม่สามารถตัดสินใจได้ฉันไม่สามารถเห็นได้ว่าทำไมมันจึงควรติดตามจากปัญหาความไม่เท่าเทียมของ PDAs
Sam Jones

ไม่ดีฉันอ่านโพสต์ของคุณเร็วเกินไป คำถามที่น่าสนใจจริง
Sylvain

คำตอบ:


9

ใช้กำหนด TMและคำWพิจารณาของประวัติศาสตร์การคำนวณสำหรับคำว่าWให้เป็นประวัติศาสตร์ที่ไม่ถูกต้อง (สิ่งที่ไม่ได้ขึ้นต้นด้วยไม่จบด้วยการยอมรับหรือไม่ถูกต้อง) ทั้ง (ไม่ยอมรับ ) หรือสำหรับบางสตริง (ยอมรับที่มีประวัติในการคำนวณ ) ประการแรกคือ CFL ที่มีประสิทธิภาพในแง่ที่ว่าคุณสามารถสร้างไวยากรณ์ / PDA ที่รับรู้ได้ ยิ่งกว่านั้นMWw L W L = A M w L = A - { h } h M W h L LwLwL=AMwL=A{h}hMwhLLเป็น DCFL (ไม่มีประสิทธิภาพ) แต่คุณไม่สามารถแสดง DPDA ได้อย่างมีประสิทธิภาพ ยิ่งไปกว่านั้นLเป็นปกติ (ไม่มีผล)

ความกระจ่างเล็กน้อย:

คุณถามว่าปัญหาต่อไปนี้สามารถตัดสินใจได้:

รับ PDA Mสัญญาว่าL(M)เป็น DCFL และ DPDA Nตรวจสอบว่าL(M)=L(N) )

คำตอบคือไม่และในความเป็นจริงความจริงดังต่อไปนี้ถือ: ปัญหาต่อไปนี้คือ undecidable:

รับ PDA Mสัญญาว่าL(M)เป็นปกติตรวจสอบว่าL(M)=A *


ฉันไม่เข้าใจสิ่งที่คุณกำลังทำ A คืออะไร ถ้าเป็นตัวอักษรสำหรับการป้อนข้อมูลของ TM แล้วบอกว่าประวัติศาสตร์ที่ไม่ถูกต้องเป็น*บอกว่า TM ยอมรับเซตว่าง DCFG คืออะไร คุณหมายถึง DPDA หรือเปล่า A* * * *
Sam Jones

@ Sam Jones: พิจารณาประวัติการคำนวณที่ไม่ได้ขึ้นต้นด้วย word ว่าไม่ถูกต้อง แล้วประวัติศาสตร์ที่ไม่ถูกต้อง*ถ้าหากMไม่ยอมรับคำW ใช่ฉันหมายถึง DPDA WAMW
sdcvvc

ดูเหมือนว่าคุณกำลังสันนิษฐานว่าทัวริงเครื่องจักรสามารถยอมรับได้มากที่สุดหนึ่งคำ คุณยังไม่ได้พิสูจน์ว่าคุณไม่สามารถแสดง DPDA สำหรับหรือL = A - { h } ที่คุณระบุไว้ ฉันรู้วิธีสร้าง DPDA ที่ยอมรับภาษาเหล่านั้นแต่ละภาษา L=AL=A{h}
Sam Jones

2
เพราะคุณสามารถเปรียบเทียบได้อย่างมีประสิทธิภาพกับการยอมรับหุ่นยนต์ทั้งหมดและพิจารณาว่าหยุดทำงานกับwหรือไม่ หากคุณต้องการคุณสามารถ จำกัดตัวMไว้ในเครื่องที่ยอมรับได้มากที่สุดw (ไม่มีคำอื่น ๆ ) แต่สิ่งนี้จะไม่เปลี่ยนแปลงอะไรเลย สิ่งสำคัญเพียงอย่างเดียวคือMกำหนดขึ้นได้ MwMwM
sdcvvc

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