คำถามติดแท็ก automata

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

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


4
ติดดาวภาษาฟรีเทียบกับภาษาปกติ
ผมสงสัยว่าตั้งแต่*ตัวเองเป็นภาษาดาวฟรีจะมีภาษาที่ปกติที่ไม่ได้เป็นภาษาดาวฟรีหรือไม่ คุณยกตัวอย่างได้ไหมa∗a∗a^* (จากwikipdia ) Lawson กำหนดภาษาที่ไม่มีดาวเป็น: ภาษาปกติได้รับการกล่าวถึงว่าไม่มีดาวหากสามารถอธิบายได้ด้วยการแสดงออกปกติที่สร้างขึ้นจากตัวอักษรของตัวอักษรสัญลักษณ์ชุดที่ว่างเปล่าผู้ประกอบการบูลีนทั้งหมดรวมถึงการประกอบและการต่อเรียงกัน นี่คือหลักฐานการ*เป็นดาวฟรี:a∗a∗a^* ∅∅\emptysetเป็นดาวฟรี⟹⟹\Longrightarrow Σ∗=∅¯Σ∗=∅¯\Sigma^*=\bar{\emptyset}เป็นดาวฟรี⟹⟹\Longrightarrow หาก ⊆ Σแล้ว Σ * Σ *เป็นดาวฟรี ⟹ หาก ⊆ Σแล้ว * = ¯ Σ * ( Σ ∖ ) Σ *คือ ดาวฟรีA⊆ΣA⊆ΣA\subseteq\SigmaΣ∗AΣ∗Σ∗AΣ∗\Sigma^*A\Sigma^*⟹⟹\LongrightarrowA⊆ΣA⊆ΣA\subseteq\SigmaA∗=Σ∗(Σ∖A)Σ∗¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯A* * * *=Σ* * * *(Σ∖A)Σ* * * *¯A^*=\overline{\Sigma^*(\Sigma \setminus A)\Sigma^*} ในบรรทัดสุดท้ายที่เรามี* = ¯ Σ * ( …

2
ความเท่าเทียมกันของสอง DFAs เป็นปัญหาที่ตัดสินใจได้หรือไม่?
หากกำหนด DFA สองตัวปัญหาในการค้นหาว่าพวกเขาสร้างภาษาเดียวกันเป็นปัญหาที่ตัดสินใจได้หรือไม่ ฉันรู้แล้วว่าความเท่าเทียมกันของสอง CFL นั้นไม่สามารถตัดสินใจได้ แต่สิ่งที่เกี่ยวกับความเท่าเทียมกันของสอง DFAs? การพิจารณาปัญหาส่วนใหญ่ของ DFA นั้นสามารถตัดสินใจได้ซึ่งเป็นการตัดสินใจเช่นนี้หรือไม่

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

1
ไม่สามารถแปลงจาก NFA เป็น DFA
ฉันมีปัญหาง่ายๆในการทำ DFA ซึ่งรับอินพุตทั้งหมดที่เริ่มต้นด้วยตัวอักษรคู่ (aa, bb) หรือลงท้ายด้วยตัวอักษรคู่ (aa, bb), ให้เป็นชุดตัวอักษรของ ภาษาที่กำหนดΣ={a,b}Σ={a,b}\Sigma =\{a, b\} ฉันพยายามที่จะแก้ปัญหาในทางอ้อมโดย: การสร้างการแสดงออกปกติ ทำให้ NFA ที่สอดคล้องกัน ใช้การสร้าง powerset เพื่ออนุมาน DFA การลดจำนวนสถานะใน DFA ให้น้อยที่สุด ขั้นตอนที่ 1: การแสดงออกปกติสำหรับปัญหาที่กำหนดคือ (ท่ามกลางผู้อื่นนับไม่ถ้วน): ((aa|bb)(a|b)*)|((a|b)(a|b)*(aa|bb)) ขั้นตอนที่ 2: NFAสำหรับการแสดงออกที่กำหนดคือ: (ที่มา: livefilestore.com ) ในรูปแบบตาราง NFA คือ: State Input:a Input:b ->1 2,5 3,5 2 4 - 3 - 4 …

1
การแยกประเภทการปรับแต่ง
ที่ทำงานฉันได้รับมอบหมายให้อนุมานข้อมูลบางประเภทเกี่ยวกับภาษาแบบไดนามิก ฉันเขียนลำดับของข้อความไปยังletนิพจน์ที่ซ้อนกันเช่น: return x; Z => x var x; Z => let x = undefined in Z x = y; Z => let x = y in Z if x then T else F; Z => if x then { T; Z } else { F; Z } เนื่องจากฉันเริ่มต้นจากข้อมูลประเภททั่วไปและพยายามอนุมานประเภทที่เฉพาะเจาะจงมากขึ้นตัวเลือกที่เป็นธรรมชาติคือประเภทการปรับแต่ง ตัวอย่างเช่นตัวดำเนินการตามเงื่อนไขส่งคืนการรวมของประเภทของสาขาที่เป็นจริงและเท็จ …
11 programming-languages  logic  type-theory  type-inference  machine-learning  data-mining  clustering  order-theory  reference-request  information-theory  entropy  algorithms  algorithm-analysis  space-complexity  lower-bounds  formal-languages  computability  formal-grammars  context-free  parsing  complexity-theory  time-complexity  terminology  turing-machines  nondeterminism  programming-languages  semantics  operational-semantics  complexity-theory  time-complexity  complexity-theory  reference-request  turing-machines  machine-models  simulation  graphs  probability-theory  data-structures  terminology  distributed-systems  hash-tables  history  terminology  programming-languages  meta-programming  terminology  formal-grammars  compilers  algorithms  search-algorithms  formal-languages  regular-languages  complexity-theory  satisfiability  sat-solvers  factoring  algorithms  randomized-algorithms  streaming-algorithm  in-place  algorithms  numerical-analysis  regular-languages  automata  finite-automata  regular-expressions  algorithms  data-structures  efficiency  coding-theory  algorithms  graph-theory  reference-request  education  books  formal-languages  context-free  proof-techniques  algorithms  graph-theory  greedy-algorithms  matroids  complexity-theory  graph-theory  np-complete  intuition  complexity-theory  np-complete  traveling-salesman  algorithms  graphs  probabilistic-algorithms  weighted-graphs  data-structures  time-complexity  priority-queues  computability  turing-machines  automata  pushdown-automata  algorithms  graphs  binary-trees  algorithms  algorithm-analysis  spanning-trees  terminology  asymptotics  landau-notation  algorithms  graph-theory  network-flow  terminology  computability  undecidability  rice-theorem  algorithms  data-structures  computational-geometry 

3
อัลกอริทึมสำหรับการลดขนาดออโตเมติกของ Moore
อัลกอริธึมของ Brzozowski สามารถขยายไปยังออโตเมตของมัวร์ได้ แต่ความซับซ้อนของเวลานั้นมีความซับซ้อนโดยทั่วไป มีอัลกอริธึมอื่น ๆ สำหรับการลดขนาดออโตเมติกให้เล็กที่สุดหรือไม่? อะไรคือเวลาทำงานของอัลกอริทึมเหล่านี้ถ้ามี?

2
DFA ที่เล็กที่สุดที่ยอมรับสตริงที่กำหนดและปฏิเสธสตริงที่กำหนดอื่น ๆ
ป.ร. ให้ไว้สองชุด, Bของสตริงมากกว่าตัวอักษรΣเราสามารถคำนวณที่เล็กที่สุดที่กำหนดขอบเขตของรัฐหุ่นยนต์ (DFA) Mเช่นว่า⊆ L ( M )และL ( M ) ⊆ Σ * ∖ B ?A,BA,BA,BΣΣ\SigmaMMMA⊆L(M)A⊆L(M)A \subseteq L(M)L(M)⊆Σ∗∖BL(M)⊆Σ∗∖BL(M) \subseteq \Sigma^*\setminus B กล่าวอีกนัยหมายถึงชุดตัวอย่างเชิงบวก สตริงทั้งหมดในAต้องได้รับการยอมรับจาก DFA Bหมายถึงชุดตัวอย่างเชิงลบ DFA ไม่ควรยอมรับสตริงในBAAAAAABBBBBB มีวิธีแก้ปัญหานี้หรือไม่อาจใช้เทคนิคการย่อขนาด DFAหรือไม่ ฉันนึกภาพได้ว่าการสร้างหุ่นยนต์คล้าย DFA ที่มีสถานะอยู่สามแบบ: ยอมรับสถานะปฏิเสธสถานะและ "ไม่สนใจ" (ข้อมูลใด ๆ ที่ลงท้ายด้วยสถานะ "ไม่สนใจ" สามารถยอมรับได้ หรือถูกปฏิเสธ) แต่เราสามารถหาวิธีที่จะลดสิ่งนี้ให้เป็น DFA สามัญได้หรือไม่? คุณอาจคิดว่านี่เป็นปัญหาของการเรียนรู้ DFA โดยให้ตัวอย่างที่เป็นบวกและลบ นี่คือแรงบันดาลใจจาก สนามกอล์ฟ …

2
ภาษาที่เกี่ยวข้องกับจำนวนอตรรกยะไม่ใช่ CFL
ฉันทำงานหนักในตำราเรียนและฉันก็ไม่สามารถหาวิธีดำเนินการได้ นี่คือปัญหา สมมติว่าเรามีภาษาL = { a ฉันb j : ฉัน≤ j γ , ฉัน≥ 0 , j ≥ 1 }L={aibj:i≤jγ,i≥0,j≥1}L = \{a^ib^j: i \leq j \gamma, i\geq 0, j\geq 1\}โดยที่γγ\gammaเป็นจำนวนอตรรกยะ ฉันจะพิสูจน์ได้อย่างไรว่าLLLไม่ใช่ภาษาที่ไม่มีบริบท ในกรณีที่ationalγ\gammaมีเหตุผลมันค่อนข้างง่ายที่จะสร้างไวยากรณ์ที่ยอมรับภาษา แต่เนื่องจากγγ\gammaไม่มีเหตุผลฉันจึงไม่รู้จะทำยังไง ดูเหมือนว่าบทแทรกใด ๆ จะทำงานที่นี่ บางทีทฤษฎีบทของ Parikh อาจจะทำงานที่นี่เนื่องจากดูเหมือนว่าสัญชาตญาณดูเหมือนว่าภาษานี้จะไม่มีภาพ Parikh semilinear ประกอบ แบบฝึกหัดนี้มาจาก "หลักสูตรที่สองในภาษาทางการและทฤษฎีออโตมาตา" โดย Jeffrey Shallit แบบฝึกหัด 25 บทที่ …

3
ฉันจะตรวจสอบว่า DFA เทียบเท่ากับ NFA ได้อย่างไร
ฉันเรียนรู้วิธีการแปลง NFA ให้เป็น DFA และฉันต้องการให้แน่ใจว่าฉันทำถูกต้อง เห็นได้ชัดว่าการกลับไปในทิศทางอื่นไม่ใช่เรื่อง ไม่มีใครรู้วิธีการตรวจสอบว่า DFA เทียบเท่ากับ NFA หรือไม่

2
ชัดเจนสมบูรณ์พิสูจน์ว่าเป็นภาษาทัวริงแข่งขัน?
ฉันเคยเห็นเว็บไซต์ที่อ้างว่า "พิสูจน์" ว่า HTML5 + CSS นั้นกำลังทำให้สมบูรณ์ ฉันได้เห็นเว็บไซต์ที่อ้างว่า "พิสูจน์" ว่า SQL นั้นเป็นทัวริงที่สมบูรณ์ ฉันเคยเห็นเว็บไซต์จำนวนมากที่อ้างว่า "อธิบาย" ว่าทัวริงสมบูรณ์หมายความว่าอย่างไร พอ! ฉันจะหาหนังสือ (เขียนโดยผู้เชี่ยวชาญในทฤษฎีการคำนวณ) หรือบทความที่ผ่านการตรวจสอบโดยเพื่อน (ในวารสารที่มีชื่อเสียง) ที่แสดงหลักฐานว่า "ภาษา XYZ นี้สามารถอธิบายเครื่องคำนวณซึ่งมีอำนาจการคำนวณเดียวกัน เป็นทัวริงจักร "?

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

1
จะพิสูจน์ได้อย่างไรว่า lo-loops ไม่จำเป็นใน PDAs
ในบริบทของการตรวจสอบheap ออโตมาตาฉันต้องการพิสูจน์ว่าตัวแปรเฉพาะไม่สามารถยอมรับภาษาที่ไม่คำนึงถึงบริบท เนื่องจากเราไม่มีรูปแบบของไวยากรณ์ที่เทียบเท่ากันฉันต้องการหลักฐานที่ใช้เฉพาะออโตมาตะ ดังนั้นฉันต้องแสดงให้เห็นว่าฮีปออโตมาตาสามารถจำลองโดยLBA s (หรือโมเดลที่เทียบเท่า) ฉันคาดหวังว่าการพิสูจน์จะทำงานคล้ายกับการแสดงออโตมาตาแบบกดลงที่ยอมรับภาษาย่อยที่มีความอ่อนไหวตามบริบท อย่างไรก็ตามหลักฐานทั้งหมดที่ฉันรู้ว่าทำงานโดย ใช้ไวยากรณ์ - นี่คือความจริงที่เห็นได้ชัดโดยนิยาม - หรือ ไม่คลุมเครือ (เช่นที่นี่ ) ปัญหาของฉันคือ PDA (resp. HA) สามารถมีรอบของ -transitions ที่อาจเขียนสัญลักษณ์ลงใน stack (resp. heap) LBA ไม่สามารถจำลองการวนซ้ำโดยพลการของลูปดังกล่าวได้ จากลำดับชั้นของชัมสกีที่ได้มาด้วยไวยากรณ์เรารู้ว่าεε\varepsilon ทุกภาษาที่ไม่มีบริบทมี - PDA ฟรีหรือεε\varepsilon LBA ที่จำลองขึ้นมาสามารถป้องกันการวนซ้ำ -ca บ่อยเกินไปεε\varepsilon โดยสังเขปนี่เป็นสิ่งที่ชัดเจน: วงจรดังกล่าวเขียนสัญลักษณ์อย่างอิสระจากอินพุตดังนั้นเนื้อหาสแต็ก (ฮีป) จะเก็บข้อมูลเป็นเส้นตรงตามความยาวของรอบเท่านั้น นอกจากนี้คุณยังไม่ได้มีวิธีการกำจัดสิ่งใหม่อีกครั้ง (ถ้าคุณต้องการ) อื่น ๆ อีกกว่าการใช้ -cycle ในสาระสำคัญรอบดังกล่าวไม่ได้มีส่วนร่วมในการจัดการกับอินพุตถ้าทำซ้ำหลาย ๆ ครั้งดังนั้นพวกเขาจึงไม่จำเป็นεε\varepsilon …

2
เครื่องมือแก้เขาวงกตสายตาสั้นที่เหมาะสมที่สุด
ฉันหลงกลไปกับการสาธิตเขาวงกตของ Google Blockyและจดจำกฎเดิม ๆ ว่าหากคุณต้องการแก้ปัญหาเขาวงกตเพียงแค่ถือมือซ้ายไว้กับกำแพง มันใช้งานได้สำหรับเขาวงกตที่เชื่อมต่อง่าย ๆ และสามารถใช้งานได้โดยตัวแปลงสัญญาณไฟไนต์ จำกัด ให้หุ่นยนต์ของเราเป็นตัวแทนของทรานสดิวเซอร์โดยดำเนินการดังต่อไปนี้และสิ่งที่สังเกตได้: การดำเนินการ: ไปข้างหน้า ( ) เลี้ยวซ้าย ( ← ) เลี้ยวขวา ( → )↑↑\uparrow←←\leftarrow→→\rightarrow สิ่งที่สังเกตได้: กำแพงข้างหน้า ( ), ไม่มีกำแพงข้างหน้า ( ⊤ )⊥⊥\bot⊤⊤\top จากนั้นเราสามารถสร้างช่างแก้ตัวทางซ้ายมือเป็น (อภัยรูปวาดขี้เกียจของฉัน): การเห็นสิ่งที่สังเกตได้จะทำให้เราติดตามสถานะที่เหมาะสมออกไปจากรัฐในขณะดำเนินการกระทำที่เกี่ยวข้องกับขอบนั้น หุ่นยนต์นี้จะแก้เขาวงกตที่เชื่อมต่อทั้งหมดแม้ว่ามันอาจจะใช้เวลาหลังจากการตาย เราเรียกว่าหุ่นยนต์อื่นดีกว่าAถ้า:BBB AAA ใช้ขั้นตอนเพิ่มเติมอย่างเคร่งครัดในจำนวน จำกัด เท่านั้นเขาวงกตและBBB ใช้ขั้นตอนน้อยลงอย่างเคร่งครัด (โดยเฉลี่ยสำหรับตัวแปรที่น่าจะเป็น) กับจำนวนเขาวงกตที่ไม่ จำกัดBBB คำถามสองข้อของฉัน: มีหุ่นยนต์ จำกัด ที่ดีกว่าที่วาดไว้ข้างต้นหรือไม่? จะเกิดอะไรขึ้นถ้าเรายอมให้ตัวแปลงสัญญาณที่น่าจะเป็น มีหุ่นยนต์ จำกัด …

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