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

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

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

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

2
ภาษาปกติระนาบ
ในชั้นเรียนของฉันนักเรียนคนหนึ่งถามว่าออโตมาต้าที่ จำกัด ทั้งหมดสามารถวาดได้โดยไม่ต้องข้ามขอบ (ดูตัวอย่างทั้งหมดของฉัน) แน่นอนคำตอบนั้นเป็นค่าลบหุ่นยนต์ที่ชัดเจนสำหรับภาษามีโครงสร้างของK_5กราฟที่สมบูรณ์ในห้าโหนด . Yuval ได้แสดงโครงสร้างที่คล้ายกันสำหรับภาษาที่เกี่ยวข้อง{x ∈ { a , b }* * * *∣ #a( x ) + 2 #ข( x ) ≡ 0พอควร5}{x∈{a,ข}* * * *|#a(x)+2#ข(x)≡0พอควร5}\{\; x\in\{a,b\}^* \mid \#_a(x)+2\#_b(x) \equiv 0 \mod 5 \;\}K5K5K_5 คำถามของฉันคือต่อไปนี้: ทำอย่างไรเราจะแสดงให้เห็นว่าทุกหุ่นยนต์สถานะ จำกัด สำหรับภาษานี้ไม่เป็นระนาบ? ด้วย Myhill-Nerode เช่นการจำแนกลักษณะมันอาจจะพิสูจน์ได้ว่าโครงสร้างของภาษานั้นปรากฏอยู่ในแผนภาพ แต่เราจะทำให้สิ่งนี้แม่นยำได้อย่างไร และถ้าสามารถทำได้มีลักษณะของ "ภาษาปกติระนาบ" หรือไม่?

2
ทำไมภาษาปกติจึงเรียกว่า 'ปกติ'
ฉันเพิ่งเสร็จสิ้นบทแรกของบทนำสู่ทฤษฎีการคำนวณโดยMichael Sipserซึ่งอธิบายพื้นฐานของขอบเขตออโตมาตา เขากำหนดภาษาปกติเป็นสิ่งที่สามารถอธิบายได้ด้วยออโต้ จำกัด แต่ฉันไม่สามารถหาที่ที่เขาอธิบายได้ว่าทำไมภาษาปกติเรียกว่า "ปกติ" อะไรคือต้นกำเนิดของคำว่า "ปกติ" ในบริบทนี้ หมายเหตุ: ฉันเป็นสามเณรดังนั้นโปรดลองอธิบายอย่างง่าย ๆ !

2
เหตุใด C ประเภทโมฆะจึงไม่คล้ายกับประเภทที่ว่าง / ด้านล่าง
Wikipedia ตลอดจนแหล่งข้อมูลอื่น ๆ ที่ฉันได้พบรายการvoidประเภทC เป็นหน่วยประเภทซึ่งตรงข้ามกับประเภทที่ว่างเปล่า ฉันพบว่ามันสับสนเพราะฉันคิดว่าvoidเหมาะกับนิยามของประเภทที่ว่าง / ล่าง ไม่มีค่านิยมใด ๆ อยู่voidเท่าที่ฉันจะบอกได้ ฟังก์ชั่นที่มีประเภทคืนค่าเป็นโมฆะระบุว่าฟังก์ชั่นจะไม่ส่งคืนสิ่งใดดังนั้นจึงสามารถทำงานได้เพียงผลข้างเคียงเท่านั้น ตัวชี้ชนิดvoid*เป็นชนิดย่อยของชนิดตัวชี้อื่นทั้งหมด นอกจากนี้การแปลงไปยังและจากvoid*ใน C นั้นเป็นนัย ผมไม่แน่ใจว่าถ้าจุดสุดท้ายมีบุญใด ๆ ที่เป็นข้อโต้แย้งสำหรับvoidการเป็นประเภทที่ว่างเปล่าเป็นมากหรือน้อยเป็นกรณีพิเศษที่มีความสัมพันธ์ไม่มากที่จะvoid*void ในทางกลับกันvoidตัวมันเองไม่ใช่ประเภทย่อยของประเภทอื่นทั้งหมดซึ่งเท่าที่ฉันสามารถบอกได้ว่าเป็นข้อกำหนดสำหรับประเภทที่จะเป็นประเภทด้านล่าง
28 type-theory  c  logic  modal-logic  coq  equality  coinduction  artificial-intelligence  computer-architecture  compilers  asymptotics  formal-languages  asymptotics  landau-notation  asymptotics  turing-machines  optimization  decision-problem  rice-theorem  algorithms  arithmetic  floating-point  automata  finite-automata  data-structures  search-trees  balanced-search-trees  complexity-theory  asymptotics  amortized-analysis  complexity-theory  graphs  np-complete  reductions  np-hard  algorithms  string-metrics  computability  artificial-intelligence  halting-problem  turing-machines  computation-models  graph-theory  terminology  complexity-theory  decision-problem  polynomial-time  algorithms  algorithm-analysis  optimization  runtime-analysis  loops  turing-machines  computation-models  recurrence-relation  master-theorem  complexity-theory  asymptotics  parallel-computing  landau-notation  terminology  optimization  decision-problem  complexity-theory  polynomial-time  counting  coding-theory  permutations  encoding-scheme  error-correcting-codes  machine-learning  natural-language-processing  algorithms  graphs  social-networks  network-analysis  relational-algebra  constraint-satisfaction  polymorphisms  algorithms  graphs  trees 

5
ความแตกต่างระหว่างเครื่องจักรทัวริงกับเครื่องจักรสถานะ จำกัด ?
ฉันกำลังนำเสนอเกี่ยวกับเครื่องจักรทัวริงและฉันต้องการให้พื้นหลังของ FSM ก่อนที่จะแนะนำเครื่องจักรทัวริง ปัญหาคือฉันไม่รู้จริง ๆ ว่าอะไรแตกต่างกันมาก นี่คือสิ่งที่ฉันรู้ว่ามันแตกต่างกัน: FSM มีสถานะตามลำดับขึ้นอยู่กับเงื่อนไขที่ตรงกันในขณะที่เครื่องทัวริงทำงานบน "เทป" ที่ไม่มีที่สิ้นสุดพร้อมด้วยหัวที่อ่านและเขียน มีที่ว่างสำหรับความผิดพลาดใน FSM มากขึ้นเนื่องจากเราสามารถตกอยู่ในสถานะไม่สิ้นสุดได้อย่างง่ายดายในขณะที่มันไม่มากนักสำหรับเครื่องจักรทัวริง แต่นอกเหนือจากนั้นฉันไม่รู้ความแตกต่างที่มากขึ้นซึ่งทำให้ทัวริงเครื่องจักรดีกว่าของ FSM คุณช่วยฉันได้ไหม?

4
วิธีการจำลอง backreferences, lookaheads และ lookbehinds ใน automata state ที่ จำกัด ?
คำถามนี้ถูกโยกย้ายจาก Stack Overflow เพราะสามารถตอบได้ใน Computer Science Stack Exchange อพยพ 7 ปีที่ผ่านมา ฉันสร้างนิพจน์ทั่วไปอย่างง่าย lexer และ parser เพื่อทำนิพจน์ปกติและสร้างแผนภูมิการแยกวิเคราะห์ การสร้างออโตเมติกอัน จำกัด ที่ไม่ได้กำหนดค่าจากต้นไม้การแยกวิเคราะห์นี้ค่อนข้างง่ายสำหรับนิพจน์ทั่วไปขั้นพื้นฐาน อย่างไรก็ตามฉันไม่สามารถคาดศีรษะได้ว่าจะทำอย่างไรในการจำลองการอ้างอิงย้อนกลับ, Lookaheads และ Lookbehinds จากสิ่งที่ฉันอ่านในหนังสือมังกรสีม่วงฉันเข้าใจว่าการจำลอง lookahead ซึ่งนิพจน์ปกติrถูกจับคู่ถ้าหากการจับคู่ตามด้วยการจับคู่ของนิพจน์ทั่วไปคุณสร้างขอบเขตที่ไม่ จำกัด รัฐหุ่นยนต์ที่/จะถูกแทนที่ด้วยε เป็นไปได้หรือไม่ที่จะสร้างออโตเมติกอัน จำกัด ที่กำหนดได้ซึ่งทำเช่นเดียวกัน?r / sr/sr/sRrrsss///εε\varepsilon สิ่งที่เกี่ยวกับการจำลอง lookaheads เชิงลบและ lookbehinds? ฉันจะขอบคุณถ้าคุณจะเชื่อมโยงฉันไปยังแหล่งข้อมูลที่อธิบายวิธีการทำอย่างละเอียด

3
เงื่อนไขสำหรับ NFA สำหรับ DFA ที่เทียบเท่าจะมีขนาดสูงสุดได้อย่างไร
เรารู้ว่า DFA นั้นเทียบเท่ากับ NFA ในอำนาจการแสดงออก นอกจากนี้ยังมีอัลกอริทึมที่รู้จักกันสำหรับการแปลง NFA เป็น DFA (โชคไม่ดีที่ตอนนี้ฉันรู้จักนักประดิษฐ์ของอัลกอริทึมนั้น) ซึ่งในกรณีที่เลวร้ายที่สุดทำให้เรามีสถานะหาก NFA ของเรามีสถานะ2S2S2^SSSS คำถามของฉันคือ: สิ่งที่กำหนดสถานการณ์กรณีที่เลวร้ายที่สุด? นี่คือการถอดความของอัลกอริทึมในกรณีที่มีความกำกวม: ให้A = ( Q , Σ , δ, คิว0, F)A=(Q,Σ,δ,Q0,F)A = (Q,\Sigma,\delta,q_0,F)เป็น NFA เราสร้าง DFA A'= ( Q', Σ , δ', คิว'0, F')A'=(Q',Σ,δ',Q0',F')A' = (Q',\Sigma,\delta',q'_0,F')โดยที่ Q'= P( Q )Q'=P(Q)Q' = \mathcal{P}(Q) , F'= { …

1
ฉันจะเขียนหลักฐานโดยใช้การเหนี่ยวนำที่ความยาวของสายป้อนได้อย่างไร
ในหลักสูตรทฤษฎีการคำนวณของฉันปัญหามากมายของเราเกี่ยวข้องกับการใช้การเหนี่ยวนำที่ความยาวของสายป้อนเพื่อพิสูจน์งบเกี่ยวกับออโต้ จำกัด ฉันเข้าใจการอุปนัยทางคณิตศาสตร์ แต่เมื่อสายเข้ามาในการเล่นฉันได้รับจริงเพิ่มขึ้น ฉันซาบซึ้งจริง ๆ ถ้ามีคนจะผ่านขั้นตอนการทำเช่นขั้นตอนการพิสูจน์โดยขั้นตอน นี่คือตัวอย่างปัญหา (แบบฝึกหัด 2.2.10 จาก Hopcroft และ Ullman รุ่นที่ 3): พิจารณา DFA ด้วยตารางการเปลี่ยนแปลงต่อไปนี้: 0 1 ________ -> A | AB * B | บริติชแอร์เวย์ อธิบายภาษาที่ยอมรับโดย DFA นี้อย่างไม่เป็นทางการและพิสูจน์โดยอุปนัยเกี่ยวกับความยาวของสตริงป้อนเข้าที่คำอธิบายของคุณถูกต้อง นี่เป็นปัญหาที่ได้รับคำตอบในหนังสือดังนั้นฉันไม่ได้มองหาคนที่จะทำการบ้าน ฉันแค่ต้องการคนที่จะอธิบายให้ฉันตรงๆ คำตอบของหนังสือ: (นำมาจากที่นี่ ) หุ่นยนต์จะบอกว่าจำนวนของ 1 ที่เห็นคือเท่ากัน (state A) หรือคี่ (state B) ยอมรับในกรณีหลัง มันเป็นเรื่องง่ายที่จะเหนี่ยวนำให้กับ | w …

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

3
ภาษานี้ถูกกำหนดโดยใช้ช่วงเวลาคู่ปกติหรือไม่?
ปล่อย L ={ an| ∃หน้า≥ n พี, p + 2 เป็นจำนวนมาก} L={an|∃พี≥n พี, พี+2 เป็นนายก}.\qquad L = \{a^n \mid \exists_{p \geq n}\ p\,,\ p+2 \text{ are prime}\}. คือปกติ?LLL คำถามนี้มองที่น่าสงสัยได้อย่างรวดเร็วก่อนและฉันได้รู้ว่ามันมีการเชื่อมต่อกับการคาดเดาที่สำคัญคู่ ปัญหาของฉันคือการคาดเดายังไม่ได้รับการแก้ไขดังนั้นฉันไม่แน่ใจว่าฉันจะตัดสินใจได้อย่างไรว่าภาษาดังกล่าวเป็นปกติ

4
วิธีแสดงให้เห็นว่าภาษาปกติ“ ตรงกันข้าม” นั้นเป็นภาษาปกติ
ฉันติดคำถามต่อไปนี้: "ภาษาปกติเป็นภาษาที่แน่นอนที่ได้รับการยอมรับโดยออโต จำกัด เนื่องจากข้อเท็จจริงนี้แสดงให้เห็นว่าหากภาษาได้รับการยอมรับจากออโตเมติก จำกัดบางอันดังนั้นก็เป็นที่ยอมรับของบางอัน จำกัดประกอบด้วยทุกคำ ของย้อนกลับ "LLLLRLRL^{R}LRLRL^{R}LLL


3
ข้อ จำกัด ของออโตมาตะกับเครื่องสถานะ จำกัด ต่างกันอย่างไร?
ฉันใช้ FSM ในการออกแบบวงจรดิจิตอลตามลำดับ แต่ฉันไม่คุ้นเคยกับ Finite Automata ใครสามารถช่วยฉันในการทำความเข้าใจความแตกต่าง 'พื้นฐาน' ระหว่างสองคนนี้ได้หรือไม่?

2
ภาษาที่ยอมรับโดยออโตมาต้ารุ่น จำกัด ที่ปรับเปลี่ยนแล้ว
ยานยนต์ จำกัด ที่กำหนดขึ้นอย่างแน่นอน (DFA) เป็นแบบจำลองเครื่องรัฐที่สามารถยอมรับภาษาทั้งหมดและเพียงภาษาเดียว สามารถกำหนด DFAs (และมักจะ) ในลักษณะที่แต่ละรัฐจะต้องให้การเปลี่ยนแปลงบางอย่างสำหรับองค์ประกอบทั้งหมดของตัวอักษรอินพุต; กล่าวอีกนัยหนึ่งฟังก์ชันการเปลี่ยนควรเป็นฟังก์ชัน (รวม)δ:Q×Σ→Qδ:Q×Σ→Q\delta : Q \times \Sigma \rightarrow Q ลองนึกภาพสิ่งที่เราจะเรียกว่าออโตเมติก จำกัด ที่กำหนดขึ้นสองเท่า (DDFA) มันถูกกำหนดในทำนองเดียวกันกับ DFA โดยมีข้อยกเว้นสองข้อ: อันดับแรกแทนที่จะเป็นช่วงการเปลี่ยนภาพจากสถานะหนึ่งไปอีกสถานะหนึ่งสำหรับสัญลักษณ์อินพุตที่เป็นไปได้ทุกอันมันต้องนำไปสู่สถานะที่แตกต่างกันสองสถานะ วินาทีเพื่อยอมรับสตริงเส้นทางที่เป็นไปได้ทั้งหมดต้องเป็นไปตามเงื่อนไขข้อใดข้อหนึ่งดังต่อไปนี้: เส้นทางที่เป็นไปได้ทั้งหมดผ่าน DDFA นำไปสู่สถานะการยอมรับ (เราจะเรียกสิ่งนี้ว่า DDFA ประเภท 1) เส้นทางที่เป็นไปได้ทั้งหมดผ่าน DDFA นำไปสู่สถานะการยอมรับเดียวกัน (เราจะเรียกสิ่งนี้ว่า DDFA ประเภท 2) ตอนนี้สำหรับคำถามของฉัน: DDFA แบบ type-1 และ type-2 ภาษาใดยอมรับ มันเป็นกรณีที่ , L …

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