เงื่อนไขสำหรับความเป็นสากลของ NFA


28

พิจารณา nondeterministic จำกัด ออโต= ( Q , Σ , δ , Q 0 , F )และฟังก์ชั่นF ( n ) นอกจากนี้เรากำหนดΣ k = ฉันk ΣฉันA=(Q,Σ,δ,q0,F)f(n)Σk=ikΣi

ตอนนี้ให้วิเคราะห์คำสั่งต่อไปนี้:

หากΣf(|Q|)L(A)แล้วL(A)=Σ *

มันง่ายที่จะแสดงว่าสำหรับf(n)=2n+1มันเป็นเรื่องจริงดังนั้นหากออโตมาตะสร้างทุกคำที่มีความยาวไม่เกิน2|Q|+1แล้วมันผลิตΣ *

แต่มันจะยังคงอยู่หรือไม่ถ้าfเป็นพหุนาม?

ApΣp(|Q|)L(A)Σ


ผมอยากจะให้เงินรางวัลที่จะพิสูจน์หรือพิสูจน์หักล้างว่ากรณี2 และถ้าไม่มีเลยฉันจะมอบสิ่งที่ดีที่สุดที่จะได้รับ | Σ | 2f(n)=2no(n)|Σ|2
เซียน - จื้อฉาง張顯之

คำตอบ:


22

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

[แก้ไข: การวิเคราะห์มีการปรับปรุงเล็กน้อยในการแก้ไข 2]

นี่คือภาพร่างที่พิสูจน์ได้ สมมติว่าคำสั่งเก็บไว้และปล่อยให้fเป็นฟังก์ชันที่ NFA ทุกตัวที่มีสถานะnมากที่สุดที่ยอมรับสตริงทั้งหมดที่มีความยาวมากที่สุดf ( n ) ยอมรับสตริงทั้งหมดใด ๆ เราจะพิสูจน์ให้เห็นว่าทุกC > 0 และมีขนาดใหญ่เพียงพอnเรามี ( n )> 2 C ⋅√ n

ทฤษฎีบทจำนวนที่สำคัญหมายถึงว่าทุก <LG อีและขนาดใหญ่พอkมีอย่างน้อย ⋅2 k / kเฉพาะในช่วง [2 k 2 k 1 ] เรารับc = 1 สำหรับkดังกล่าวให้N k = ⌈2 k / k ⌉และกำหนด NFA M kดังนี้ ให้p 1 , …, p N kเป็นค่าเฉพาะในช่วง [2 k , 2 k +1] NFA M kมีS k = 1 + p 1 + … + p N kสถานะ นอกเหนือจากสถานะเริ่มต้นรัฐจะถูกแบ่งออกเป็นN kรอบที่ฉันรอบวันที่มีความยาวหน้าฉัน ในแต่ละรอบรัฐทั้งหมดยกเว้นหนึ่งรัฐเป็นที่ยอมรับ สถานะเริ่มต้นมีN kขอบขาออกซึ่งแต่ละสถานะจะเข้าสู่สถานะทันทีหลังจากสถานะถูกปฏิเสธในแต่ละรอบ ในที่สุดสถานะเริ่มต้นก็เป็นที่ยอมรับเช่นกัน

Let P kเป็นผลิตภัณฑ์ที่หน้า1 ... P N k มันเป็นเรื่องง่ายที่จะเห็นว่าM kยอมรับสตริงทั้งหมดของความยาวน้อยกว่าP kแต่ปฏิเสธสตริงของความยาวP k ดังนั้นF ( S k ) ≥ P k

โปรดทราบว่าS k ≤ 1 + N k ⋅2 k 1 = o (2 2 k ) และP k ≥ (2 k ) N k ≥ 2 2 k ส่วนที่เหลือเป็นมาตรฐาน


คุณคาดเดาเกี่ยวกับค่าที่ดีที่สุดของคืออะไร? พูดว่าหรือที่ใดที่หนึ่งระหว่างและ ? ( n ) = 2 n + 1 2 n 2 ff(n)=2n+12n2cn
Hsien-Chih Chang 張顯之

@ Hsien-Chih: ฉันสงสัยในสิ่งเดียวกันและฉันไม่มีการคาดเดาที่สมเหตุสมผล อย่างแรกคือมันไม่สำคัญที่จะเห็น f (n) ^2 ^ n (เราไม่ต้องการ +1) และในขณะที่ฉันคาดหวังว่าการปรับปรุงเชิงเส้นบนขอบเขตบนนี้ฉันไม่รู้ว่ามันแน่นถึงปัจจัยคงที่หรือไม่ (เพิ่มเติม)
Tsuyoshi Ito

(ต่อ) ประการที่สองสำหรับขอบเขตล่างถ้าฉันไม่ผิดการปรับแต่งเล็กน้อยของการวิเคราะห์ข้างต้นให้ขอบเขตล่างต่อไปนี้: สำหรับค่าคงที่ 0 <c <และ n ที่มีขนาดใหญ่พอสมควรLN}} การปรับแต่งเพิ่มเติมอาจเป็นไปได้ แต่เราไม่สามารถรับขอบเขตล่างเช่น 2 ^ {n ^ p} สำหรับ p> 1/2 ถ้าเราใช้โครงสร้าง NTM เดียวกัน ฉันคิดว่ามันเป็นคำถามที่น่าสนใจว่าการใช้การกระจายของจำนวนเฉพาะ (เช่น PNT) เป็นสิ่งจำเป็นสำหรับการสร้างตัวอย่างที่ไม่ดี (เพิ่มเติม) f(n)>e c 1/2f(n)>ecnlnn
Tsuyoshi Ito

(ต่อ) อย่างไรก็ตามหากคุณสนใจและต้องการตรวจสอบเพิ่มเติมอาจเป็นเรื่องที่ฉลาดที่จะมองหาวรรณกรรมก่อน ฉันจะไม่แปลกใจถ้าคำตอบนี้หรือสิ่งที่ดีกว่าปรากฏในวรรณกรรม
Tsuyoshi Ito

5
@Tsuyoshi: มันก็แสดงให้เห็นว่า Chrobak n รัฐ DFA สำหรับภาษาเอกสามารถจำลองโดย M-รัฐ NFA สำหรับn}}) ดังนั้นการก่อสร้างของคุณจะแน่นหากภาษาไม่เป็นไปด้วยดี ดู [Chr86]: cs.ust.hk/mjg_lib/Library/Chro86.pdfm=O(enlogn)
Hsien-Chih Chang 張顯之

19

แก้ไข AT 10/12/06:

ตกลงนี่เป็นสิ่งก่อสร้างที่ดีที่สุดที่ฉันจะได้รับดูว่ามีใครคิดไอเดียที่ดี

ทฤษฎีบท. สำหรับแต่ละมี -state NFAเหนือตัวอักษรด้วยเช่นนั้นสตริงที่สั้นที่สุดที่ไม่ได้อยู่ในมีความยาว1)( 5 n + 12 ) M Σ | Σ | = 5 L ( M ) ( 2 n - 1 ) ( n + 1 ) + 1n(5n+12)MΣ|Σ|=5L(M)(2n1)(n+1)+1

นี้จะช่วยให้เรา5})f(n)=Ω(2n/5)

การก่อสร้างนั้นค่อนข้างจะเหมือนกับของShallitยกเว้นว่าเราจะสร้าง NFA โดยตรงแทนที่จะเป็นตัวแทนของภาษาด้วยการแสดงออกปกติก่อน ปล่อย

Σ={[00],[01],[10],[11],}\}

สำหรับแต่ละเราจะสร้าง NFA ที่รู้จักภาษาโดยที่เป็นลำดับต่อไปนี้ ( ยกตัวอย่าง ):Σ - { s n } s n n = 3nΣ{sn}snn=3

s3=[00][00][01][00][01][10][11][11][01]1}

แนวคิดคือเราสามารถสร้าง NFA ประกอบด้วยห้าส่วน

  • เริ่มต้นซึ่งทำให้มั่นใจได้สตริงเริ่มต้นด้วย ;[00][00][01]
  • เทอร์มิเนเตอร์ซึ่งทำให้แน่ใจว่าสตริงลงท้ายด้วย ;[11][11][01]
  • ตัวนับซึ่งเก็บจำนวนสัญลักษณ์ระหว่างสอง 's เป็น ;nn
  • Add-หนึ่งตรวจสอบซึ่งรับประกันได้ว่าสัญลักษณ์เท่านั้นที่มีรูปแบบจะปรากฏขึ้น ในที่สุดxx+1
  • ตรวจสอบที่สอดคล้องกันซึ่งรับประกันได้ว่าสัญลักษณ์เท่านั้นที่มีรูปแบบจะปรากฏควบคู่กันไปxyyz

โปรดทราบว่าเราต้องการยอมรับแทนที่จะเป็นดังนั้นเมื่อเราพบว่าลำดับการป้อนข้อมูลนั้นไม่เชื่อฟังหนึ่งในพฤติกรรมข้างต้นเรายอมรับลำดับทันที มิฉะนั้นหลังจากขั้นตอน NFA จะอยู่ในสถานะปฏิเสธที่เป็นไปได้เท่านั้น และถ้าลำดับนั้นยาวกว่าNFA ก็ยอมรับเช่นกัน ดังนั้น NFA ใด ๆ ที่ปฏิบัติตามเงื่อนไขห้าข้อข้างต้นจะปฏิเสธเท่านั้น{ s n } | s n | | s n | s nΣ{sn}{sn}|sn||sn|sn

มันอาจจะง่ายต่อการตรวจสอบรูปต่อไปนี้โดยตรงแทนการพิสูจน์อย่างเข้มงวด:

NFA สำหรับการปฏิเสธ s_n

เราเริ่มที่สถานะบนซ้าย ส่วนแรกคือตัวเริ่มต้นและตัวนับจากนั้นตัวตรวจสอบที่สอดคล้องกันจุดสิ้นสุดในที่สุดตัวตรวจสอบ Add-One อาร์คทั้งหมดที่ไม่มีโหนดเทอร์มินัลชี้ไปที่สถานะล่างขวาซึ่งเป็นตัวรับเวลาทั้งหมด ขอบบางส่วนไม่มีการติดฉลากเนื่องจากไม่มีที่ว่าง แต่สามารถกู้คืนได้ง่าย เส้นประแสดงถึงลำดับของสถานะมีขอบn - 2n1n2

เราสามารถ (เจ็บปวด) ตรวจสอบว่า NFA ปฏิเสธเท่านั้นเนื่องจากเป็นไปตามกฎทั้งห้าด้านบน ดังนั้น -state NFA ด้วยได้ถูกสร้างขึ้นซึ่งสอดคล้องกับข้อกำหนดของทฤษฎีบท ( 5 n + 12 ) | Σ | = 5sn(5n+12)|Σ|=5

หากมีความไม่ชัดเจน / ปัญหาเกี่ยวกับการก่อสร้างโปรดออกความคิดเห็นและฉันจะพยายามอธิบาย / แก้ไข


คำถามนี้ได้รับการศึกษาโดยเจฟฟรีย์ทุม Shallit et al, และแน่นอนมูลค่าที่เหมาะสมของ.ยังคงเปิดให้บริการสำหรับ 1 (สำหรับภาษาที่มองเห็นความเห็นในคำตอบของ Tsuyoshi )| Σ | > 1f(n)|Σ|>1

ในหน้า 46-51 ของการพูดของเขาเกี่ยวกับความเป็นสากลเขาจัดให้มีการก่อสร้างเช่น:

ทฤษฎีบท. สำหรับสำหรับมีขนาดใหญ่พอมี state NFAบนตัวอักษรไบนารีเช่นว่าสตริงที่สั้นที่สุดที่ไม่ได้อยู่ในมีความยาวสำหรับ .N n M L ( M ) Ω ( 2 n ) C = 1 / 75nNNnML(M)Ω(2cn)c=1/75

ดังนั้นค่าที่ดีที่สุดสำหรับเป็นบางระหว่างและ n ฉันไม่แน่ใจว่าผลลัพธ์โดย Shallit ได้รับการปรับปรุงในปีที่ผ่านมาหรือไม่2 n / 75 2 nf(n)2n/752n


ฉันเล่นกับการทำงาน Shallit ของความหวังที่จะได้รับผูกพันที่ดีมากอยู่ใกล้กับ n สิ่งก่อสร้างของพวกเขาดูน่าสนใจโดยระบุลำดับความยาวซึ่งไม่สามารถแสดงได้ด้วยการแสดงออกปกติ "สั้น" ของความยาวและการแสดงออกปกติของความยาวสามารถอธิบายได้โดย NFA ขนาดfปัจจุบันผมสามารถที่จะปล่อยให้แต่เป็นความคิดที่ชาญฉลาดคือความต้องการที่จะเข้ามาใกล้ n Ω ( 2 n ) n + o ( n ) ( n ) ( n ) + 1 22 2 n2nΩ^(2n)cn+o(n)f(n)f(n)+1c222n
Hsien-Chih Chang 張顯之

2
ฉันไม่คิดว่าจะให้ข้อมูลเชิงลึกเพิ่มเติมสำหรับการศึกษาปัญหานี้ แต่การอ้างอิงทางวิชาการที่เหมาะสมสำหรับการพูดคุยของ Shallit คือ: K. Ellul, B. Krawetz, J. Shallit, M. Wang: นิพจน์ทั่วไป: ผลลัพธ์ใหม่และปัญหาแบบเปิด วารสาร Automata, ภาษาและ Combinatorics 10 (4): 407-437 (2005)
Hermann Gruber

@ Hermann: ขอบคุณสำหรับการอ้างอิงในขณะนี้ฉันไม่สามารถเข้าถึงกระดาษ แต่ฉันจะหาวิธีที่จะ
Hsien-Chih Chang 張顯之

ฉันคิดว่าการใช้ตัวนับเราสามารถแทนที่ตัวเริ่มต้นและตัวยุติด้วยเครื่องจิ๋ว 2 สถานะ ดังนั้นต่อไปนี้ลดขนาดของ NFA เพื่อ(1) 3n+O(1)
Hsien-Chih Chang 張顯之

1
รุ่น preprint ของผู้เขียนของกระดาษ JALC ที่ระบุไว้อยู่ที่นี่: cs.uwaterloo.ca/~shallit/Papers/re3.pdfข้อผูกมัดและการพิสูจน์จะเหมือนกันในฉบับพิมพ์
Hermann Gruber
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.