หลักฐานการปั๊มบทแทรกสำหรับภาษาที่ไม่มีบริบทโดยใช้แบบกดลงอัตโนมัติ


21

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

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

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

คำตอบ:


16

ฉันคิดถึงปัญหานี้อีกครั้งและฉันคิดว่าฉันมีหลักฐานครบถ้วน มันค่อนข้างยุ่งยากกว่าที่ฉันคาดไว้ ความเห็นยินดีต้อนรับมาก! อัปเดต:ฉันส่งหลักฐานนี้ใน arXiv ในกรณีที่มีประโยชน์กับใครบางคน: http://arxiv.org/abs/1207.2819

ให้LLเป็นภาษาบริบทฟรีผ่านตัวอักษร\ΣΣให้เป็นหุ่นยนต์ที่ขยายลงซึ่งตระหนักLกับสแต็คตัวอักษร\ แกมมา เราแสดงโดย| A | จำนวนของรัฐของ เราสามารถสันนิษฐานได้ว่าการเปลี่ยนแปลงของA pop เป็นสัญลักษณ์สูงสุดของสแต็กและไม่มีการกดสัญลักษณ์บนสแต็กหรือกดที่สแต็กสัญลักษณ์บนสุดก่อนหน้าและสัญลักษณ์อื่น ๆAALLΓΓ| A ||A|AAAA

เรากำหนดและระยะเวลาในการปั๊มและจะแสดงให้เห็นว่านั้นมีการสลายตัวของรูปแบบเช่นนั้น ,และLp = | A | 2 | Γ | p = | A | ( | Γ | + 1 ) p w L | w | > p w = u v x y z | v x y | p | v y | 1 n 0 , คุณv n xp=|A|2|Γ|p=|A|(|Γ|+1)pwL|w|>pw=uvxyz|vxy|p|vy|1y n z Ln0,uvnxynzL

ให้เช่นนั้น . ให้เป็นเส้นทางที่ยอมรับความยาวน้อยที่สุดสำหรับ (แสดงเป็นลำดับของช่วงการเปลี่ยนภาพ ) เราแสดงความยาวโดย. เราสามารถกำหนดสำหรับ,ขนาดของสแต็กที่ตำแหน่งของพา ธ การยอมรับ สำหรับทั้งหมดเรากำหนด levelเหนือเป็นชุดของสามดัชนีกับเช่นนั้น:w LwL|w|>p|w|>pππwwAA|π||π|0i<|π|0i<|π|sisiiiN>0N>0NNππi,j,ki,j,k0i<j<kp0i<j<kp

  1. s i = s k , s j = s i + Nsi=sk,sj=si+N
  2. สำหรับทั้งหมดเช่น ,n ฉันn J s ฉันs ns Jninjsisnsj
  3. สำหรับทุกดังกล่าวว่า ,s_kn j n k s ks ns knjnksksnsk

(สำหรับตัวอย่างนี้ดูรูปภาพสำหรับกรณีที่ 2 ด้านล่างซึ่งแสดงระดับ )ยังไม่มีข้อความN

เรากำหนดระดับของเป็นค่าสูงสุดซึ่งมี ระดับคำจำกัดความนี้ได้รับแรงบันดาลใจจากคุณสมบัติต่อไปนี้: หากขนาดของสแต็คเหนือพา ธมีขนาดใหญ่กว่าระดับดังนั้นสัญลักษณ์สแต็กที่มีความลึกมากกว่าระดับจะไม่ปรากฏขึ้น ตอนนี้เราจะแยกความแตกต่างสองกรณี: อย่างใดอย่างหนึ่งซึ่งในกรณีนี้เรารู้ว่าการกำหนดค่าเดียวกันสำหรับสถานะออโตมาตาและสัญลักษณ์สูงสุดของสแต็กจะพบสองครั้งในขั้นตอนแรกของหรือl π N π N π l llπNπNπll l < p l p + 1 π l p l<plp+1πlpและจะต้องมีการวางซ้อนและตำแหน่ง unstacking ที่สามารถทำซ้ำจำนวนข้อของครั้งจากที่เราสร้างและYv yvy

Case 1 <p' เรากำหนดค่าของเป็นคู่ของสถานะและลำดับของสัญลักษณ์สแต็ก (ที่สแต็กที่มีขนาดน้อยกว่ามีการแสดงโดย padding ให้เป็นด้วยสัญลักษณ์ว่างพิเศษซึ่งเป็นเหตุผลที่เราใช้เมื่อกำหนด ) ตามคำนิยามมี การกำหนดค่าดังกล่าวซึ่งมีค่าน้อยกว่าPดังนั้นในขั้นตอนแรกของ , การตั้งค่าเดียวกันจะพบสองครั้งที่สองตำแหน่งที่แตกต่างกันกล่าวว่า<J แสดงโดยl < p A A l l l | Γ | + 1 p | A | ( |แกมมา| + 1 ) ลิตรพีพี+ 1 π ฉัน< J ฉันl<pAAlll|Γ|+1p|A|(|Γ|+1)lpp+1πi<jiˆ (resp. ) ตำแหน่งของตัวอักษรตัวสุดท้ายของอ่านในขั้นตอนที่ (resp. ) ของ\เรามี{J} ดังนั้นเราสามารถแยกด้วย , , ,|} (โดยเราแสดงถึงตัวอักษรของจากรวมถึงเฉพาะตัวของ ) โดยการก่อสร้าง .ˆjjˆwwiijjππˆiˆjiˆjˆw=uvxyzw=uvxyzyz=ϵyz=ϵu=w0ˆiu=w0iˆv=wˆiˆjv=wiˆjˆx=wˆj|w|x=wjˆ|w|wxywxywwxxyy|vxy|p|vxy|p

เราต้องแสดงให้เห็นว่าแต่สิ่งนี้ตามมาจากการสังเกตของเราด้านบน: สัญลักษณ์สแต็กที่ลึกกว่าไม่เคยถูกแยกดังนั้นจึงไม่มีทางแยกแยะได้ การกำหนดค่าที่เท่ากันตามคำจำกัดความของเราและเส้นทางการยอมรับสำหรับถูกสร้างขึ้นจากที่ของโดยทำซ้ำขั้นตอนระหว่างและ ,ครั้งn0,uvnxynz=uvnxLn0,uvnxynz=uvnxLlluvnxuvnxwwiijjnn

สุดท้ายเราก็มีเพราะถ้าเพราะเรามีการกำหนดค่าเดียวกันที่ขั้นตอนและใน ,จะเป็นเส้นทางการยอมรับสำหรับ , ขัดแย้ง minimality ของ\|v|>0|v|>0v=ϵv=ϵiijjπππ=π0iπj|π|π=π0iπj|π|wwππ

(โปรดทราบว่ากรณีนี้มีจำนวนเท่ากับการใช้คำสั่งปั๊มสำหรับภาษาปกติโดยการเข้ารหัสสัญลักษณ์ stack สูงสุดในสถานะออโตเมติกซึ่งเพียงพอเนื่องจากมีขนาดเล็กพอที่จะให้แน่ใจว่ามีขนาดใหญ่กว่าจำนวนสถานะของหุ่นยนต์นี้ . เคล็ดลับหลักคือเราต้องปรับสำหรับ -transitions)llll|w||w|ϵϵ

กรณีที่ 2. พี' ให้เป็นระดับ สำหรับขนาดสแต็คใด ๆ ,เราจะเชื่อมโยงการกดครั้งสุดท้ายและป๊อปแรก\}) ตามคำนิยามและk นี่คือภาพประกอบของการก่อสร้างนี้ เพื่อให้การวาดง่ายขึ้นฉันจะไม่แยกความแตกต่างระหว่างตำแหน่งของเส้นทางและตำแหน่งของคำที่เราจะต้องทำในภายหลังlplpi,j,ki,j,kpphhsihsjsihsj lp(h)=max({yj|sy=h})lp(h)=max({yj|sy=h}) fp(h)=min({yj|sy=h})ilp(h)jjfp(h)k

ภาพประกอบของสิ่งก่อสร้างสำหรับกรณีที่ 2 เพื่อทำให้การวาดง่ายขึ้นความแตกต่างระหว่างตำแหน่งของเส้นทางและตำแหน่งของคำจะถูกลบล้าง

เราบอกว่าสถานะทั้งหมดของสแต็กขนาดคือสามเท่าที่เกิดขึ้นโดย:h

  1. สถานะของหุ่นยนต์ที่ตำแหน่งlp(h)
  2. สัญลักษณ์สแต็คสูงสุดที่ตำแหน่งlp(h)
  3. สถานะของหุ่นยนต์ที่ตำแหน่งfp(h)

นอกจากนี้เป็นไปได้รัฐเต็มรูปแบบและขนาดสแต็คระหว่างและ ดังนั้นโดยหลักการ pidgeonhole มีอยู่สองสแต็คขนาดกับ ดังกล่าวที่รัฐเต็มรูปแบบ ที่และเหมือนกัน เช่นเดียวกับในกรณีที่ 1 เรากำหนดโดย , ,และตำแหน่งของตัวอักษรสุดท้ายของอ่านได้ที่ตำแหน่งที่สอดคล้องกันใน\เราโดยที่pp+1sisjg,hsig<hsjgh^lp(g)^lp(h)^fp(h)^fp(g)wπw=uvxyzu=w0^lp(g), , , และ|}v=w^lp(g)^lp(h)x=w^lp(h)^fp(h)y=w^fp(h)^fp(g)z=w^fp(g)|w|

การแยกตัวประกอบนี้ทำให้มั่นใจได้ว่า (เพราะตามคำจำกัดความของระดับของเรา)|vxy|pkp

นอกจากนี้เรายังจะต้องแสดงให้เห็นว่าL ในการทำเช่นนั้นให้สังเกตว่าในแต่ละครั้งที่เราทำซ้ำเราจะเริ่มจากสถานะเดียวกันและบนสุดของสแต็คเดียวกันและเราจะไม่ปรากฏใต้ตำแหน่งปัจจุบันของเราในสแต็ก (มิฉะนั้นเราจะต้องกดอีกครั้งที่ตำแหน่งปัจจุบัน maximality ของ ) เพื่อให้เราสามารถติดตามเส้นทางเดียวกันในและกดลำดับสัญลักษณ์เดียวกันบนสแต็ก โดย maximality ของและ minimality ของในขณะที่อ่านเราจะไม่ปรากฏใต้ตำแหน่งปัจจุบันของเราในสแต็คดังนั้นเส้นทางที่ตามมาในหุ่นยนต์จะเหมือนกันโดยไม่คำนึงถึงจำนวน ครั้งที่เราทำซ้ำn0,uvnxynzLvlp(g)Alp(h)fp(h)xv. ตอนนี้ถ้าเราทำซ้ำหลายครั้งตามที่เราทำซ้ำตั้งแต่เราเริ่มต้นจากสภาพเดียวกันเนื่องจากเรามีการผลักดันลำดับสัญลักษณ์เดียวกันในกองด้วยซ้ำของเราและเนื่องจากเราไม่ได้ปรากฏมากกว่าสิ่งที่มี stacked โดย minimality ของเราสามารถทำตามพา ธ เดียวกันในและ pop ลำดับสัญลักษณ์เดียวกันจาก stack ดังนั้นการยอมรับจากเส้นทางสามารถถูกสร้างขึ้นจากเส้นทางการยอมรับสำหรับWwvvvfp(g)Auvnxynzw

สุดท้ายเราก็มีเพราะเหมือนในกรณีที่ 1 ถ้าและเราสามารถสร้างเส้นทางที่ยอมรับได้สั้นกว่าสำหรับโดยการลบและ(g)}|vy|>1v=ϵy=ϵwπlp(g)lp(h)πfp(h)fp(g)

ดังนั้นเรามีการแยกตัวประกอบที่เพียงพอในทั้งสองกรณีและผลลัพธ์ได้รับการพิสูจน์แล้ว

(เครดิตไปที่ Marc Jeanmougin ที่ช่วยฉันในการพิสูจน์หลักฐานนี้)


7

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

สำหรับการกำหนดค่าพื้นผิวกระดาษเกือบทั้งหมดใน LogCFL ควรมีความหมายของมัน นี่คือรายงานล่าสุดและนี่คือวิทยานิพนธ์

บางทีคนที่มีพลังมากขึ้นก็สามารถสะกดรายละเอียดออกไป


ขอบคุณสำหรับคำตอบ! ใช่มันค่อนข้างเป็นธรรมชาติที่จะดูการรวมกันของสถานะออโตเมติกและสัญลักษณ์สแต็คสูงสุด ฉันยังคงคิดเกี่ยวกับปัญหานี้อยู่และฉันก็ไม่สามารถหารายละเอียดได้ ... ช่วยชื่นชม :-)
a3nm

3

เพื่อความสมบูรณ์การอ้างอิงถึงการพิสูจน์ในทิศทางนี้

A.Ehrenfeucht, HJHoogeboom, G.Rozenberg: ระบบคู่ที่มีการประสานงาน I: คำ Dyck และการปั๊มแบบดั้งเดิม RAIRO, Inf theor Appl 20, 405-424 (1986)

นามธรรม. แนวคิดของระบบคู่ที่มีการประสานงาน [... ] สอดคล้องกับอย่างใกล้ชิดกับ (เป็นอีกสูตรหนึ่ง) ความคิดของหุ่นยนต์แบบกดลง ในบทความนี้เรา [... ] ตรวจสอบความเป็นไปได้ของการได้รับคุณสมบัติการปั๊มของภาษาที่ไม่มีบริบทผ่านการวิเคราะห์การคำนวณในระบบ cp ในการทำเช่นนี้เราจะวิเคราะห์โครงสร้าง combinatorial ของคำ Dyck คุณสมบัติของคำ Dyck ที่เราตรวจสอบต้นกำเนิดจากการวิเคราะห์เชิง combinatorial ของการคำนวณในระบบ cp เราแสดงให้เห็นว่าการโต้ตอบนี้สามารถใช้ในการพิสูจน์บทแทรกซึมคลาสสิกได้อย่างไร


1

เมื่อพูดถึงปัญหานี้กับGéraudSénizerguesเขาชี้ให้ฉันเห็นบทความนี้โดย Sakarovitch ที่พิสูจน์ผลลัพธ์นี้แล้ว หลักฐานดูเหมือนจะย้อนกลับไปที่เอกสารนี้โดย Ogden

อ้างอิง:

  • Sakarovitch, Jacques Sur une propriétéd'itération des langages algébriquesdéterministes (ภาษาฝรั่งเศส. สรุปภาษาอังกฤษ) คณิตศาสตร์. ทฤษฎีระบบ 14 (1981), ฉบับที่ 3, 247–288
  • William F. Ogden 2512. ทฤษฎี Intercalation สำหรับภาษาสแต็ก ในการประชุมวิชาการ ACM ประจำปีครั้งแรกในทฤษฎีการคำนวณ (STOC '69)
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.