การกำหนดความสามารถของเครื่องสถานะขั้นต่ำ (หรือแปลกใหม่) เครื่อง


44

ดูจุดสิ้นสุดของโพสต์นี้สำหรับการชี้แจงเกี่ยวกับคำจำกัดความของ min-heap ออโตมาตา

สามารถจินตนาการได้ว่าใช้โครงสร้างข้อมูลที่หลากหลายสำหรับจัดเก็บข้อมูลเพื่อใช้งานโดยเครื่องของรัฐ ตัวอย่างเช่นการกดออโตมาเก็บข้อมูลในสแต็กและเครื่องทัวริงใช้เทป เครื่องแสดงสถานะโดยใช้คิวและเครื่องที่ใช้สองชุดซ้อนกันหรือหลายเทปได้แสดงให้เห็นว่าเทียบเท่ากับกำลังของเครื่องจักรทัวริง

ลองนึกภาพเครื่อง min-heap มันทำงานเหมือนกับหุ่นยนต์กดลงโดยมีข้อยกเว้นดังต่อไปนี้:

  1. แทนที่จะดูสิ่งสุดท้ายที่คุณเพิ่มลงใน heap คุณจะได้ดูองค์ประกอบที่เล็กที่สุดเท่านั้น (ด้วยการสั่งซื้อที่กำหนดไว้ตามเครื่องต่อเครื่อง) ที่อยู่บนฮีป
  2. แทนที่จะเอาสิ่งสุดท้ายที่คุณเพิ่มลงใน heap ออกคุณจะได้เพียงแค่ลบหนึ่งในองค์ประกอบที่เล็กที่สุด (ด้วยการเรียงลำดับที่กำหนดไว้ตามเครื่องต่อเครื่อง) ใน heap
  3. แทนที่จะเพิ่มองค์ประกอบเข้าไปที่ด้านบนของ heap คุณสามารถเพิ่มองค์ประกอบเข้ากับ heap ได้เท่านั้นโดยตำแหน่งของมันจะถูกกำหนดตามองค์ประกอบอื่น ๆ ใน heap (โดยมีการเรียงลำดับที่กำหนดไว้ในแต่ละเครื่อง)

เครื่องนี้สามารถยอมรับภาษาปกติทั้งหมดเพียงแค่ไม่ใช้ฮีป นอกจากนี้ยังสามารถรับภาษาโดยการเพิ่ม's ไปกอง และลบ 'ออกจาก heap เมื่อมันอ่าน ' สามารถยอมรับภาษาที่ไม่มีบริบทอื่น ๆ ได้หลากหลาย อย่างไรก็ตามมันไม่สามารถยอมรับได้เช่น (ระบุโดยไม่มีการพิสูจน์) แก้ไข: หรือสามารถ ฉันไม่คิดว่าจะทำได้ แต่ฉันแปลกใจมาก่อนและฉันแน่ใจว่าฉันจะประหลาดใจเมื่อสมมติฐานของฉันทำให้ฉันเป็น ...{anbn{a,b}n0}aab{w{a,b}w=wR}

มันสามารถรับภาษาตามบริบทหรือภาษาทัวริงที่สมบูรณ์ได้หรือไม่?

โดยทั่วไปแล้วงานวิจัยใดที่มีการดำเนินไปในทิศทางนี้? มีผลลัพธ์อะไรบ้างถ้ามี? ฉันยังสนใจในเครื่องรัฐแปลกใหม่อื่น ๆ อีกมากมายซึ่งอาจเป็นไปได้ว่าผู้ใช้โครงสร้างข้อมูลอื่น ๆ สำหรับการจัดเก็บหรือข้อ จำกัด ชนิดต่าง ๆ ในการเข้าถึง (เช่นวิธีการ LBAs ถูก จำกัด TM) การอ้างอิงได้รับการชื่นชม ฉันต้องขออภัยล่วงหน้าหากคำถามนี้แสดงถึงความไม่รู้


นิยามอย่างเป็นทางการ:

ฉันให้คำจำกัดความโดยละเอียดเพิ่มเติมของ min-heap ออโตมาที่นี่เพื่อชี้แจงการอภิปรายเพิ่มเติมในคำถามที่อ้างอิงเนื้อหานี้

เรากำหนดประเภท -1 nondeterministic min-heapเป็นหุ่นยนต์ 7-tupleโดยที่ ...

(Q,q0,A,Σ,Γ,Z0,δ)
  1. Qคือเซตของสถานะที่ไม่ จำกัด และว่างเปล่า;
  2. q0Qเป็นสถานะเริ่มต้น;
  3. AQคือชุดของการยอมรับสถานะ;
  4. Σเป็นตัวอักษรอินพุตที่ไม่ จำกัด และว่างเปล่า;
  5. γ แกมมาW ( γ ) N W ( γ 1 ) = W ( γ 2 )Γเป็นตัวอักษรอินพุตไม่ จำกัด ที่มีน้ำหนักของสัญลักษณ์ ,เป็นเช่นนั้น ;γΓw(γ)Nw(γ1)=w(γ2)γ1=γ2
  6. Z0Γเป็นสัญลักษณ์พิเศษด้านล่างสุดของกอง
  7. δ:Q×(Σ{ϵ})×(Γ{Z0})P(Q×Γ)คือ ฟังก์ชั่นการเปลี่ยนแปลง

ฟังก์ชั่นการเปลี่ยนแปลงการทำงานโดยสมมติว่ากองแรกที่ว่างเปล่าประกอบด้วยเพียงZ_0ฟังก์ชั่นการเปลี่ยนแปลงอาจเพิ่มกองคอลเลกชันโดยพลการ (แน่นอน แต่อาจจะเป็นที่ว่างเปล่าหรือมีการซ้ำ) ขององค์ประกอบ\ อีกทางหนึ่งฟังก์ชั่นการเปลี่ยนแปลงอาจลบตัวอย่างขององค์ประกอบมีน้ำหนักต่ำสุดขององค์ประกอบทั้งหมดที่เหลืออยู่บนกอง (เช่นองค์ประกอบที่อยู่ด้านบนของกอง) ฟังก์ชั่นการเปลี่ยนภาพอาจใช้สัญลักษณ์อินสแตนซ์บนสุด (กล่าวคือมีน้ำหนักน้อยที่สุด) ในการกำหนดช่วงการเปลี่ยนภาพใด ๆγ 1 , แกมมา2 , . . , γ kแกมมาγ W ( γ )Z0γ1,γ2,...,γkΓγw(γ)

นอกจากนี้ให้กำหนดประเภทที่ 1 กำหนด min-heap หุ่นยนต์เพื่อเป็นรูปแบบที่ 1 nondeterministic min-heap อัตโนมัติซึ่งเป็นไปตามคุณสมบัติต่อไปนี้: สำหรับสตริงทั้งหมดเช่นนั้นและ ,1| x | = n σ Σ | δ n + 1 ( Q 0 , x σ Y , Z 0 ) | 1xσyΣ|x|=nσΣ|δn+1(q0,xσy,Z0)|1

กำหนดยังเป็นประเภทที่ 2 nondeterministic min-heap อัตโนมัติเหมือนกับชนิดที่ 1 nondeterministic min-heap เป็นหุ่นยนต์ยกเว้นการเปลี่ยนแปลงต่อไปนี้:

  1. γ แกมมาW ( γ ) N W ( γ 1 ) = W ( γ 2 ) γ 1 = γ 2Γเป็นตัวอักษรอินพุตไม่ จำกัด ที่มีน้ำหนักของสัญลักษณ์ ,เป็นเช่นนั้นไม่ได้แปลว่า ; กล่าวอีกนัยหนึ่งสัญลักษณ์กองแตกต่างกันสามารถมีน้ำหนักเท่ากันγΓw(γ)Nw(γ1)=w(γ2)γ1=γ2
  2. เมื่ออินสแตนซ์ของสัญลักษณ์ฮีปที่แตกต่างกันที่มีน้ำหนักเท่ากันถูกเพิ่มลงในฮีปลำดับที่สัมพันธ์กันของพวกเขาจะถูกเก็บไว้ตามการเรียงลำดับเหมือนสแต็กล่าสุดเข้า - ออกก่อน (LIFO)

ขอบคุณราฟาเอลที่ชี้ให้เห็นคำจำกัดความที่เป็นธรรมชาติมากขึ้นซึ่งรวบรวม (และขยาย) ภาษาที่ไม่ใช้บริบท


ผลลัพธ์บางรายการแสดงให้เห็นว่า:

  1. Type-1 min-heap automata รู้จักชุดของภาษาซึ่งไม่ใช่เซ็ตย่อยหรือเซ็ตของภาษาที่ไม่มีบริบท [ 1 , 2 ]
  2. Type-2 min-heap automata ตามนิยามของพวกมันจะจดจำชุดภาษาซึ่งเป็นชุดภาษาที่เหมาะสมของภาษาที่ไม่มีบริบทรวมถึงชุดภาษาที่เหมาะสมของภาษาที่ได้รับการยอมรับโดย type-1 min-heap automata
  3. ภาษาที่ยอมรับโดยประเภท -1 นาที - กองอัตโนมัติดูเหมือนจะถูกปิดภายใต้สหภาพการเรียงต่อกันและดาว Kleene แต่ไม่อยู่ภายใต้การเสริม [ 1 ] แยกหรือความแตกต่าง;
  4. ภาษาที่ยอมรับโดย min-heap ประเภท 1 nondeterministic ออโตมาตาดูเหมือนจะเป็นชุดภาษาที่เหมาะสมซึ่งเป็นที่ยอมรับโดยออปโตคอร์ min-heap ประเภทที่ 1

อาจมีผลลัพธ์อื่น ๆ ที่ฉันพลาดไป ผลลัพธ์เพิ่มเติมคือ (อาจ) ระหว่างทาง


คำถามติดตาม

  1. ปิดภายใต้การกลับรายการ? - เปิด
  2. ปิดภายใต้การเสริม? - ไม่!
  3. nondeterminism เพิ่มพลังหรือไม่? - ใช่
  4. คือสำหรับประเภทที่ 2? HALCSL- เปิด
  5. การเพิ่ม heaps เพิ่มพลังให้กับ type-1 หรือไม่? -สำหรับ (?)HAL1HAL2=HALkk>2
  6. การเพิ่มสแต็กเพิ่มพลังให้กับ type-1 หรือไม่? - เปิด

1
เป็นคำถามที่ดีมาก ฉันถูกล่อลวงให้ขุดหาบทแทรกสำหรับออโตมาตะเหล่านี้
Raphael

@ ราฟาเอล: ฉันคิดว่าคุณสามารถใช้การพิสูจน์ (อัปเดต) ของฉันสำหรับบทแทรกดังกล่าว: ภาษาใด ๆ ที่คุณจำเป็นต้อง 'จดจำ' มากกว่าจำนวนข้อมูลเชิงเส้นในสตริงย่อยบางส่วนเพื่อให้ตรงกับซับสตริงที่ตามมาอย่างถูกต้อง มีนาอัตโนมัติขนาดเล็ก ฉันไม่แน่ใจว่าบทแทรกรูปแบบการสูบที่แท้จริงเป็นไปได้หรือไม่ - มันอาจเป็นกรณีพิเศษของบทแทรกของฉันเช่นกัน
Alex สิบ Brink

@AlextenBrink เนื่องจากการรวมกันของหมายเลขสัญลักษณ์ฮีปสามารถใช้ในการเข้ารหัสสิ่งต่าง ๆ ได้ฉันไม่แน่ใจว่าพอเพียงกับขอบเขตเชิงเส้น
กราฟิลส์

คำตอบ:


25

คุณสามารถรับรู้ภาษาที่ไม่ใช่บริบท (แต่ขึ้นอยู่กับบริบท) ซึ่งเป็นที่ยอมรับตามหลักการไม่ใช่บริบท (ด้วยเครื่องสถานะประเภทนี้ ปมคือการที่คุณเพิ่มราชสกุลการกองทุกตัวอักษรและในขณะที่การแยกตัวอักษรที่คุณเพิ่มราชสกุล 'ขนาดใหญ่' เพื่อกองเพื่อให้พวกเขาเท่านั้นที่จบลงที่ด้านล่างของกองเมื่อคุณได้แยกวิเคราะห์ทั้งหมดตัวละคร{anbncn | n1}abb

สัญลักษณ์กองมีและที่<bเรากินทุกสัญลักษณ์การป้อนข้อมูลและเพิ่มสัญลักษณ์กอง หากเราพบ aเราจะเปลี่ยนกลยุทธ์: สำหรับทุก ๆเราเจอในภายหลังเราจะลบออกจาก heap และเพิ่ม aลงใน heap เมื่อเราพบเราควรจะได้วิ่งออกมาจากที่จะเอาออกแล้วทุกในการป้อนข้อมูลที่เหลือเราเอาจากกอง ถ้า heap ว่างเปล่าในตอนท้ายสตริงจะเป็นภาษา เห็นได้ชัดว่าเราปฏิเสธถ้ามีอะไรผิดพลาดaba<baabbabcacb

ปรับปรุง:

ภาษาไม่สามารถรับรู้ได้โดย min-heap ออโตมาตา สมมติว่าเรามีออโตเมติกขั้นต่ำที่สามารถจดจำได้ เราดูที่ 'สถานะ' หุ่นยนต์อยู่หลังจากอ่าน (ส่วนแรกของอินพุตดังนั้นจึงเป็นถัดไป) รัฐเดียวที่เรามีอยู่ที่เนื้อหาของกองและรัฐโดยเฉพาะอย่างยิ่งของหุ่นยนต์มันอยู่ใน. ซึ่งหมายความว่าหลังจากที่ตระหนักถึงนี้ความต้องการของ 'รัฐ' เพื่อเก็บข้อมูลมากพอที่จะตรงกับ REPAL={wwR|w{a,b}}EPALwwRwwR

โดยเฉพาะอย่างยิ่งในการที่จะทำเช่นนี้จะต้องมีเป็นไปได้ที่แตกต่างกันของรัฐ (ที่ ) เป็นมีคำที่เป็นไปประกอบด้วยและตัวอักษร ขณะที่มีเพียงจำนวน จำกัด ของรัฐและมีเพียงจำนวน จำกัด ของตัวละครกองนี้หมายถึงว่ามีบางคำที่กองมีจำนวนชี้แจงของตัวละครกองบางพูดx2nn=|w|2nabwx

ก่อนอื่นเราพิสูจน์ทฤษฎีบทของการกำหนดค่าอัตโนมัติแบบ min-heap จากนั้นขยายการพิสูจน์นี้เป็นแบบอัตโนมัติขนาดเล็กที่ไม่สามารถกำหนดค่าได้ โดยเฉพาะอย่างยิ่ง deterministic ออโตมาตะที่รับรู้ภาษาบางอย่างจะไม่ทำให้ตัวเองอยู่ในวงวนไม่สิ้นสุดซึ่งเป็นคุณสมบัติที่มีประโยชน์

เราจะพิสูจน์ว่าฮีปสามารถมีได้ไม่เกินจำนวนโทเค็นฮีปที่เป็นเชิงเส้นในจำนวนอักขระที่อ่านจากอินพุต นี่จะออกกฎทันทีที่ปรากฏเป็นจำนวนครั้งของเลขชี้กำลังบนฮีปซึ่งทำให้การพิสูจน์เสร็จสมบูรณ์ซึ่งไม่สามารถจดจำได้โดยอัตโนมัติด้วย min-heapxEPAL

เนื่องจากเรามีสถานะจำนวน จำกัด ในหุ่นยนต์ของเราเท่านั้นและเนื่องจากหุ่นยนต์ที่กำหนดได้จะไม่ทำให้ตัวเองเข้าสู่วงวนไม่สิ้นสุดเมื่ออ่านสัญญาณอินพุตมันจะเพิ่มอักขระฮีปจำนวนมากเข้ากับฮีป ในทำนองเดียวกันในการบริโภคบางสัญลักษณ์กองก็สามารถเพิ่มที่มากที่สุดจำนวนคงที่ของตัวละครกองที่มีขนาดใหญ่กว่าอย่างเคร่งครัดและก็สามารถลดจำนวนของสัญลักษณ์บนสแต็ค (มิฉะนั้นเราจะได้รับวง จำกัด )yyy

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

ในกรณีที่ไม่ได้รับการพิสูจน์หลักฐานมีความคล้ายคลึงกัน แต่ค่อนข้างยุ่งยาก: แทนที่จะเพิ่มจำนวนฮีพโทเค็นจำนวนมากให้กับฮีพเป็นจำนวนคงที่จะเพิ่มโทเค็นฮีปจำนวนมากให้กับฮีป แต่จุดสำคัญคือว่าจำนวนนี้ไม่ได้ขึ้นอยู่กับnโดยเฉพาะอย่างยิ่งถ้าเราไม่สามารถกำหนดสัญลักษณ์ฮีปที่เหมาะสมบนฮีปได้หลังจากจดจำ (ขวาสำหรับการรับรู้ ) เรายังสามารถเลือกสัญลักษณ์ฮีปที่ตรงกับคำอื่น ๆ ของด้วย รู้จักจึงขัดแย้งว่าหุ่นยนต์นาทีกองตระหนักว่าEPALnwwRwwwREPAL

อัปเดต 3:ฉันจะทำการโต้แย้งครั้งสุดท้าย (เกี่ยวกับการตัดสินใจที่ไม่กำหนด) อย่างเข้มงวด จากอาร์กิวเมนต์ข้างต้นจะต้องมีชุดคำที่ไม่มีที่สิ้นสุดเช่นนั้นสำหรับทุกหลังจากจดจำแล้วฮีปจะมีองค์ประกอบองค์ประกอบ ( โปรดทราบว่าเราสามารถพูดคุยเกี่ยวกับในขณะที่เรามีชุดคำไม่ จำกัด ) ในขณะที่เราไม่สามารถรับองค์ประกอบจำนวนมากใน heap ผ่านวิธีการที่กำหนดขึ้นได้เราจะต้องมีรูปแบบของการวนรอบที่เราไม่เลือกที่จะเพิ่มองค์ประกอบเพิ่มเติมลงใน heap (โดยไม่ต้องใช้อินพุต) และหลังจากนั้นเลือกที่จะออกจากสิ่งนี้ วนรอบและเราจะต้องวนรอบนี้ครั้งW{a,b}wWwω(|w|)O(f(|w|))ω(1)

ใช้ชุดของลูปดังกล่าวทั้งหมดที่ใช้โดยWขณะที่มีเพียงรัฐขนาดของชุดนี้คือและชุดย่อยทั้งหมดยังเป็น(1) ตอนนี้ให้สังเกตว่าส่วน 'deterministic' ของเส้นทางการดำเนินการสามารถมีส่วนร่วมกับของโทเค็นเท่านั้นซึ่งหมายความว่าจำนวนคำที่แตกต่างกันจำนวนมากของคำที่แตกต่างกันจะต้องมีเส้นทางการดำเนินการ โทเค็นกับกอง โดยเฉพาะอย่างยิ่งวิธีเดียวที่จะได้รับโทเค็นมากขึ้นคือการใช้ลูปที่เราระบุไว้ข้างต้นWO(1)O(1)O(1)O(|w|)

การรวมการสังเกตเหล่านี้หมายความว่าจะต้องมีคำสองคำที่แตกต่างกันใน ,และพูดซึ่งส่วนของ 'deterministic' ของเส้นทางการดำเนินการมีส่วนร่วมโทเค็นเดียวกันกับกองและแตกต่างโดยการบางส่วนของลูปข้างต้น จำนวนครั้งที่แตกต่างกัน แต่ใช้ลูปย่อยเดียวกัน (จำไว้ว่ามีเพียงของลูปเหล่านี้)Ww1w2O(1)

ตอนนี้เราสามารถแสดงให้เห็นว่านั้นสามารถรับรู้ได้โดย min-heap automaton: เราทำตามเส้นทางการดำเนินการสำหรับดังที่กล่าวมา แต่เราสำรวจวนรอบจำนวนครั้งที่เส้นทางการดำเนินการของลัดเลาะไปตามนั้น สิ่งนี้เติม min-heap ด้วยโทเค็นซึ่งยอมรับว่าเป็นคำต่อท้ายดังนั้นการพิสูจน์ให้สมบูรณ์w1w2w1w2w2

อัปเดต 2:

มันเกิดขึ้นกับฉันว่าข้างต้นหมายความว่าเราสามารถจำลองหุ่นยนต์ min-heap ที่กำหนดขึ้นได้โดยใช้พื้นที่ลอการิทึมเท่านั้น: เราเก็บตัวนับสำหรับอักขระทุกประเภทใน min-heap ดังที่แสดงข้างต้นตัวนับนี้จะเป็นมากที่สุดและด้วยเหตุนี้สามารถจัดเก็บได้โดยใช้พื้นที่ (เนื่องจากมีจำนวนคงที่ของตัวนับเหล่านี้เท่านั้น) สิ่งนี้ทำให้เรา:O(n)O(logn)

DHALL

HALNL

โดยที่เป็นชุดของภาษาที่รับรู้โดยหุ่นยนต์ min-heap ที่กำหนดได้DHAL


1
+1 สำหรับความเข้าใจที่ดีเยี่ยมดูเหมือนว่าคุณเข้าใจความหมายของฉันครบถ้วน ฉันถูกต้องในการประเมินของฉันหรือไม่ว่าเครื่องดังกล่าวไม่สามารถรับรู้ปาลิโมโดรมได้ เนื่องจากลำดับของสัญลักษณ์ที่เพิ่มไม่ได้ถูกสงวนไว้จึงไม่สามารถทำได้
Patrick87

@ Patrick87: ฉันคิดเกี่ยวกับปัญหาที่เกิดขึ้นว่าตอนนี้ :)
อเล็กซ์บริงค์สิบ

@Raphael ข้อสังเกตที่เจ๋งมากเกี่ยวกับเครื่องจักรทัวริงที่มีข้อ จำกัด ด้านลอการิทึมพวกคุณทั้งสองได้ทำงานที่ยอดเยี่ยมในการตรวจสอบออโตมาตะเหล่านี้ คุณรู้ไหมฉันแค่โยนหุ่นยนต์มินฮีปออกมาเป็นตัวอย่างของสิ่งที่ฉันสนใจ แต่ดูเหมือนว่าจะได้รับการตอบรับดี มีคำถามอื่นอีกที่สามารถตอบเกี่ยวกับออโตมาตะดังกล่าว DHAL = HAL หรือไม่ คุณสมบัติการปิดของ HAL คืออะไร การสำรวจเพิ่มเติมนั้นคุ้มค่าหรือไม่หากเป็นเช่นนั้นพวกเขาควรจะอยู่ที่นี่หรือถูกตั้งคำถามใหม่หรือไม่? ขอบคุณอีกครั้งสำหรับข้อมูลเชิงลึกที่ยอดเยี่ยม
Patrick87

1
@ ราฟาเอล: ฉันทำส่วนนั้นอย่างเข้มงวด คุณมีสิทธิที่จะต้องมีขนาดใหญ่พอ - ฉันกลบเกลื่อนรายละเอียดบางอย่างทางซ้ายและขวา n
Alex สิบ Brink

1
@ ราฟาเอล: แน่นอนมันทำ ดังนั้นโดยทฤษฎีบทลำดับชั้นพื้นที่และการรวมบางอย่าง CSL=NLINSPACEDHALCSL
Alex สิบ Brink

19

นี่คือสิ่งที่เรา (เชื่อ) รู้:

  • HALCFL (type-1, type-2)
  • CFLHAL (ประเภท -1)
  • CFLHAL (ประเภท -2 ตามคำนิยาม)
  • CSLHAL (type-1, type-2)

ดูรายละเอียดและหมายเหตุอื่น ๆ ด้านล่าง


HALCFL

ส่วนนี้ของคำตอบนั้นเกี่ยวข้องกับทั้ง type-1 และ type-2

หุ่นยนต์ min-heap (HA) ที่มีขอบเขต จำกัด ตัวอักษรฮีพสั่งทั้งหมดยอมรับ{}L={anbncnnN}CSLCFL

ข้อสันนิษฐาน: คล้ายกับ PDA ฟังก์ชั่นการเปลี่ยนแปลงของเราใช้สัญลักษณ์ฮีปส่วนใหญ่และเขียนสัญลักษณ์ฮีปจำนวนมากตามอำเภอใจ ฮีปแรกประกอบด้วยสัญลักษณ์ที่แตกต่างซึ่งใหญ่กว่าสัญลักษณ์ฮีปอื่นทั้งหมด$

ให้หุ่นยนต์อัตโนมัติขนาดเล็กA=(Q,ΣI,ΣH,,q0,QF)

  • Q={q0,q1,q2,qf}ชุดของสถานะ
  • ΣI={a,b,c}ตัวอักษรอินพุต
  • ΣH=a,b,$อักษรกองกับการสั่งซื้อ $a<b<$
  • QF={qf}
  •  (Q×ΣI×ΣH)×(Q×ΣH)ด้วย
    • (q0,a,σ)(q0,aσ)สำหรับσΣH
    • (q0,b,a)(q1,b)
    • (q1,b,a)(q1,b)
    • (q1,c,b)(q2,ε)
    • (q2,c,b)(q2,ε)
    • (q2,c,$)(qf,ε)

ออโตเขียนหนึ่งการกองทุกในการป้อนข้อมูล เมื่อเกิดขึ้นมันกินเป็นจำนวนมากเป็นมีการเขียนกองสำหรับการพบทุกขนี้ไม่นับไม่รบกวนเพราะกองอำนวยความสะดวกช่วยให้ด้านบน แต่หลังจากที่ทุกถูกนำมาจากกองที่มีได้รับการยอมรับ หลังจากพบมากที่สุดเท่าที่ (และจากนั้นเป็น )ยอมรับด้วย heap เปล่าและสถานะสุดท้ายaabbabbaaccbaA

ดังนั้นLL(A)=L


CFLHAL

ส่วนหนึ่งของคำตอบนี้เกี่ยวข้องกับการพิมพ์ 1 เท่านั้น

พิจารณาชุดของ palindromes แม้แต่และถือว่ามี HA กับLEPAL={wwRw{a,b}}AL(A)=L

การคาดเดา: เราพบด้วยและเช่นนั้นอยู่ในสถานะเดียวกันและมีเนื้อหาฮีปเดียวกันหลังจากอ่านและตามลำดับ เนื่องจากยอมรับทั้งและดังนั้นจึงยอมรับ (และ ) ซึ่งขัดแย้งกับEPAL}w1,w2{a,b}w1w2|w1|=|w2|Aw1w2Aw1w1Rw2w2Rw1w2REPALw2w1RL(A)=EPAL


CSLHAL

ส่วนนี้ของคำตอบนั้นเกี่ยวข้องกับทั้ง type-1 และ type-2

เราใช้เหตุผลเดียวกันกับ (สำหรับประเภท -1) เพื่อแสดงให้เห็นว่าภาษาที่ไวต่อบริบทไม่ได้อยู่ใน{}EPAL{www{a,b}}HAL


HAL?CSL

สิ่งนี้ยังคงเปิดอยู่สำหรับทั้ง type-1 และ type-2


Factoids เพิ่มเติม

ดูเหมือนว่า HA จะตั้งฉากกับส่วนย่อยของภาษาที่มีบริบทอ่อนโยนซึ่งยอมรับโดยEmbedded Pushdown Automata : ในขณะที่ HA สามารถจำลองจำนวนกองซ้อนที่มีขอบเขตได้พวกเขาไม่สามารถจำลองจำนวนมากตามอำเภอใจ (เช่น EPA สามารถ) อย่างไรก็ตาม HA สามารถเข้าถึงสัญลักษณ์ด้านบนของสแต็คในขณะนี้ไม่ได้อยู่ด้านบน (EPA ใดที่ไม่สามารถทำได้)


+1, การตอบสนองที่ดีเยี่ยม เทียบเท่ากับวิธีการของ Brink ใช่ไหม? ถึงกระนั้นความแม่นยำและความแม่นยำก็ยังโดดเด่น คุณเคยคิดบ้างไหมว่าเครื่องจักรดังกล่าวสามารถรับ CFL ทั้งหมดได้หรือไม่? ดูเหมือนว่าเป็นไปไม่ได้เนื่องจากข้อมูลการสั่งซื้อหายไปจากกอง ...
Patrick87

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

ฉันรู้สึกว่าฉันควรจะมีหลักฐานของความถูกต้องเพื่อที่จะได้รับเครดิตพิเศษสำหรับความแม่นยำ ;) มันไม่ควรจะยากเกินไปโดยอุปนัยเหนือฉันเดา n
Raphael

หลักฐานแสดงให้เห็นว่าคุณติดป้ายว่าการคาดเดาคือสิ่งที่ฉันมีอยู่ในใจและฉันคิดว่ามันค่อนข้างน่าเชื่อถือ ... เช่นกันและนี่คือจุดทางเทคนิคเล็กน้อยฉันคิดว่าคุณกำลังใช้ภาษาของ palindromes ที่มีความยาวเท่ากัน palindromes ... ถึงแม้ว่าการพิสูจน์จะใช้ได้ทั้งสองทาง (โปรดทราบว่ามันยังใช้งานได้กับ palindromes ธรรมดาดังนั้น HAL จึงไม่แข็งแรงเท่ากับ DPDAs และเป็นอีกผลลัพธ์หนึ่ง)
Patrick87

@ Patrick87 ปัญหาคือว่าอาจมีการกำหนดค่าที่เป็นไปได้มากขึ้น HA ที่กำหนดสามารถอยู่ในหลังจากที่อ่านสัญลักษณ์กว่ามีคำโดยเฉพาะอย่างยิ่งถ้าเราอนุญาตให้ -transitions ที่วางสัญลักษณ์บนกอง nε
Raphael
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.