คำถามติดแท็ก fl.formal-languages

ภาษาทางการ, ไวยากรณ์, ทฤษฎีออโตมาตะ

11
อะไรคือการรู้แจ้งที่ฉันควรจะได้รับหลังจากศึกษาออโต้ จำกัด
ฉันได้ทบทวนทฤษฎีการคำนวณเพื่อความสนุกสนานและคำถามนี้ก็จู้จี้กับฉันมาระยะหนึ่งแล้ว (ตลกไม่เคยคิดเลยเมื่อฉันเรียนรู้ทฤษฎี Automata ในระดับปริญญาตรีของฉัน) ดังนั้น "ทำไม" เราจึงศึกษาออโต้ จำกัด (DFA / NFAs) ที่กำหนดและไม่ จำกัด อย่างแน่นอน ดังนั้นนี่คือคำตอบบางอย่างที่ฉันเกิดขึ้นหลังจากการแก้ปัญหา แต่ยังไม่เห็นการสนับสนุนโดยรวมของพวกเขาในช่วงเวลา 'aha': เพื่อศึกษาว่าพวกเขาคืออะไรและไม่สามารถ จำกัด ข้อ จำกัด เช่น ทำไม? เนื่องจากเป็นโมเดลพื้นฐานของการคำนวณเชิงทฤษฎีและจะวางรากฐานของโมเดลการคำนวณที่มีความสามารถมากกว่าอื่น ๆ อะไรทำให้พวกเขา 'พื้นฐาน' พวกเขามีที่เก็บข้อมูลเพียงหนึ่งบิตและการเปลี่ยนสถานะหรือไม่? โอเคอะไรนะ? ทั้งหมดนี้ช่วยตอบคำถามเกี่ยวกับความสามารถในการคำนวณอย่างไร ดูเหมือนว่าเครื่องทัวริงจะช่วยให้เข้าใจได้ดีและมีการคำนวณแบบ 'น้อยกว่า' เช่น PDAs, DFA / NFAs / Regexes เป็นต้น แต่หากไม่มีใครรู้ FAs สิ่งที่พวกเขาขาดหายไปคืออะไร? ดังนั้นแม้ว่าฉันจะ 'เข้าใจ' บ้าง แต่ฉันไม่สามารถตอบคำถามนี้กับตัวเองได้? คุณจะอธิบายได้ดีที่สุดว่า 'ทำไมต้องเรียน D …

5
ลำดับชั้น Chomsky ล้าสมัยหรือไม่?
ชัม (-Schützenberger) ลำดับชั้นที่ใช้ในตำราเรียนของวิชาวิทยาการคอมพิวเตอร์ แต่ก็เห็นได้ชัดครอบคลุมเฉพาะส่วนเล็ก ๆ ของภาษาอย่างเป็นทางการ (REG, CFL, CSL, RE) เมื่อเทียบกับแบบเต็มรูปแบบซับซ้อนสวนสัตว์แผนภาพ ลำดับชั้นมีบทบาทในการวิจัยปัจจุบันอีกต่อไปหรือไม่? ฉันพบการอ้างอิงเพียงเล็กน้อยถึง Chomsky ที่นี่ที่ cstheory.stackexchange และในComplexity Zooชื่อ Chomsky และSchützenbergerไม่ได้กล่าวถึงเลย การวิจัยในปัจจุบันเน้นที่วิธีการอธิบายอื่น ๆ มากกว่าไวยากรณ์อย่างเป็นทางการหรือไม่? ฉันกำลังมองหาวิธีการปฏิบัติเพื่ออธิบายภาษาที่เป็นทางการด้วยการแสดงออกที่แตกต่างกันและสะดุดกับการเติบโตของภาษาที่ไวต่อบริบท (GCSL) และภาษาที่ขยายลงอย่างเห็นได้ชัด (VPL) ซึ่งทั้งสองอยู่ระหว่างภาษา Chomsky แบบดั้งเดิม ไม่ควรปรับปรุงลำดับชั้น Chomsky เพื่อรวมไว้หรือไม่ หรือไม่มีประโยชน์ในการเลือกลำดับชั้นที่เฉพาะเจาะจงจากชุดคลาสความซับซ้อนเต็มรูปแบบ? ฉันพยายามเลือกเฉพาะภาษาที่สามารถอยู่ในช่องว่างของลำดับชั้นของ Chomsky เท่าที่ฉันเข้าใจ: REG (= Chomsky 3) ⊊ VPL ⊊ DCFL ⊊ CFL (= Chomsky 2) …

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

4
การค้นหานิพจน์ปกติขั้นต่ำเป็นปัญหาที่ทำให้สมบูรณ์หรือไม่
ฉันกำลังคิดถึงปัญหาต่อไปนี้: ฉันต้องการค้นหานิพจน์ทั่วไปที่ตรงกับชุดสตริงเฉพาะ (เช่นที่อยู่อีเมลที่ถูกต้อง) และไม่ตรงกับที่อื่น (ที่อยู่อีเมลไม่ถูกต้อง) สมมติว่าโดยการแสดงออกปกติเราหมายถึงเครื่องสถานะ จำกัด ที่กำหนดไว้อย่างดีบางอย่างฉันไม่คุ้นเคยกับคำศัพท์ที่แน่นอน แต่เราเห็นด้วยกับบางคลาสของนิพจน์ที่ได้รับอนุญาต แทนที่จะสร้างนิพจน์ด้วยตนเองฉันต้องการตั้งค่าบวกและชุดตัวอย่างเชิงลบ จากนั้นควรมีนิพจน์ที่ตรงกับตัว + ปฏิเสธสิ่งที่อยู่ในนั้นและมีความหมายน้อยที่สุด (จำนวนสถานะในออโตมาตะ) คำถามของฉันคือ: ได้รับการพิจารณาปัญหานี้แล้วจะกำหนดได้อย่างเป็นรูปธรรมมากขึ้นและสามารถแก้ไขได้อย่างมีประสิทธิภาพได้อย่างไร เราสามารถแก้มันในเวลาพหุนามได้หรือไม่? มันเป็น NP ที่สมบูรณ์เราสามารถประมาณมันได้ไหม? สำหรับคลาสของนิพจน์ใดที่ใช้งานได้ ฉันขอขอบคุณตัวชี้ไปที่ตำราบทความหรือสิ่งที่กล่าวถึงหัวข้อนี้ สิ่งนี้เกี่ยวข้องกับความซับซ้อนของ Kolmogorov หรือไม่? สิ่งนี้เกี่ยวข้องกับการเรียนรู้หรือไม่? หากการแสดงออกปกติสอดคล้องกับตัวอย่างของฉันเราสามารถพูดบางสิ่งเกี่ยวกับอำนาจการวางนัยทั่วไปของมันในตัวอย่างที่มองไม่เห็นได้หรือไม่ เกณฑ์ใดสำหรับการย่อเล็กสุดจะเหมาะสมกว่าสำหรับเรื่องนี้? อันไหนจะมีประสิทธิภาพมากกว่ากัน? สิ่งนี้มีการเชื่อมต่อกับการเรียนรู้ของเครื่องหรือไม่? ตัวชี้ใด ๆ จะเป็นประโยชน์ ... ขออภัยสำหรับคำถามที่ยุ่ง ๆ ชี้ให้ฉันไปในทิศทางที่ถูกต้องเพื่อหาสิ่งนี้ ขอบคุณมาก!

14
ทฤษฎีออโตมาต้ามีประโยชน์อย่างไร?
มีวิธีการสมัครในหัวข้อที่เกี่ยวข้องกับวิทยาศาสตร์คอมพิวเตอร์เชิงทฤษฎีอยู่เสมอ แต่ตำราและหลักสูตรระดับปริญญาตรีมักจะไม่อธิบายเหตุผลที่ว่าทฤษฎีออโตมาตะเป็นหัวข้อที่สำคัญและไม่ว่ามันจะยังคงมีการใช้งานในทางปฏิบัติ ดังนั้นนักศึกษาระดับปริญญาตรีอาจมีปัญหาในการทำความเข้าใจความสำคัญของทฤษฎีออโตมาตะและอาจคิดว่ามันไม่ได้มีประโยชน์อะไรอีกต่อไป ทฤษฎีออโตมาต้ายังคงมีประโยชน์ในทางปฏิบัติหรือไม่? มันควรเป็นส่วนหนึ่งของหลักสูตร CS ระดับปริญญาตรีหรือไม่?

6
การแสดงออกปกติไม่ได้
ถามคนที่มีพื้นฐานด้านวิทยาศาสตร์คอมพิวเตอร์ว่านิพจน์ปกติคืออะไรและคำตอบน่าจะเกินกว่าข้อ จำกัด ของการเข้าถึงออโตเมติก จำกัด ของรัฐ ตัวอย่างเช่น“ นิพจน์ทั่วไป” /^1?$|^(11+?)\1+$/ ที่สร้างขึ้นโดยบุคลิกภาพ Perl ตั้งข้อสังเกตAbigail (และเป็นส่วนหนึ่งของชุดทดสอบของ Perlตั้งแต่ปี 2002) อธิบายเครื่องที่ยอมรับตัวเลขเอกเพียงคอมโพสิต แต่การออกกำลังกาย 4.5 (ข)ในรุ่นที่สามของปีเตอร์ลินซ์ของแนะนำอย่างเป็นทางการภาษาและออโตมีการใช้ผู้อ่านแทรกสูบน้ำที่จะพิสูจน์ว่า L={an:n is not a prime number}L={an:n is not a prime number}\mathcal{L} = \left\{ a^n : n\ \mathrm{is\ not\ a\ prime\ number} \right\} ไม่ใช่ภาษาปกติ ในบริบทที่ความแตกต่างสำคัญเราควรเรียกการแสดงออกที่ทรงพลังกว่านี้อย่างเคร่งครัดว่าอย่างไร

11
หนังสือเกี่ยวกับทฤษฎีออโตมาตะสำหรับการศึกษาด้วยตนเอง
ฉันต้องการหนังสือทฤษฎีออโตมาตะ จำกัด พร้อมตัวอย่างมากมายที่ฉันสามารถใช้สำหรับการศึกษาด้วยตนเองและเพื่อเตรียมสอบ

1
ลำดับชั้นเหตุผลของ Eilenberg เกี่ยวกับออโตมาตาและภาษาที่ไม่เกี่ยวกับเหตุผล - ตอนนี้อยู่ที่ไหน
ในส่วนนำของหนังสือ Automata, ภาษาและเครื่องจักร (เล่ม A, B), ซามูเอลไอเลนเบิร์กยั่วเย้าสัญญาเล่ม C และ D ยั่วเย้าเรื่อง "ลำดับชั้น (เรียกว่าลำดับชั้นเหตุผล) ของปรากฏการณ์ที่ไม่มีเหตุผล ... ใช้ความสัมพันธ์เชิงเหตุผลเป็น เครื่องมือสำหรับการเปรียบเทียบชุดเหตุผลอยู่ที่ด้านล่างของลำดับชั้นนี้เลื่อนขึ้นหนึ่งพบ 'ปรากฏการณ์เกี่ยวกับพีชคณิต', '' ซึ่งนำไปสู่ ​​"กับไวยากรณ์ไวยากรณ์บริบทและภาษาฟรีบริบทของ Chomsky และหัวข้อที่เกี่ยวข้องหลาย." แต่ไอลีนเบิร์กไม่เคยตีพิมพ์เล่ม C เขาออกจากบันทึกย่อที่เขียนด้วยลายมือเบื้องต้นสำหรับสองสามบทแรก ( http://www-igm.univ-mlv.fr/~berstel/EilenbergVolumeC.html ) พร้อมรอยขีดข่วนเครื่องหมายคำถามบันทึกย่อด้านข้างและ ช่องว่าง แต่พวกเขาไม่ได้เปิดเผยอะไรมากไปกว่าจุดเริ่มต้นของวิธีการแบบอนุกรมพลังที่รู้จักกันดีในการใช้ไวยากรณ์ ดังนั้นคำถามที่แท้จริงของฉัน - ไม่มีใครรู้งานในบรรทัดเดียวกันเพื่อสร้างสิ่งที่ Eilenberg มีอยู่ในใจ? ถ้าไม่คิดว่าเนื้อหาใดใกล้เคียงกับความคิดของเขามากที่สุด เว็บไซต์http://x-machines.net/เป็นเรื่องเกี่ยวกับ x-machines ซึ่งเป็นหนึ่งในนวัตกรรมที่สำคัญของ Eilenberg แต่มันเกี่ยวข้องกับการใช้งานของ x-machines มากกว่าที่จะพัฒนาทฤษฎีในขณะที่ Eilenberg ดูเหมือนจะให้สัญญา นอกจากนี้ทุกคนรู้ว่าทำไม Eilenberg หยุดก่อนที่ความคืบหน้ามากเกี่ยวกับ …

2
{ } ไม่มีบริบทหรือไม่
ภาษา { } ไม่มีบริบทหรือไม่?aผมขJคk | ฉัน≠j,ฉัน≠k,j≠k aibjck | i≠j,i≠k,j≠ka^{i}b^{j}c^{k} ~|~ i \neq j, i \neq k, j \neq k ฉันรู้ว่าฉันพบคำถามหลากหลายรูปแบบเกือบทั้งหมดที่มีเงื่อนไขแตกต่างกันเกี่ยวกับความสัมพันธ์ระหว่าง i, j และ k แต่ไม่ใช่อันนี้ ฉันเดาว่ามันไม่ใช่บริบท แต่คุณมีหลักฐานหรือไม่?

4
มีเครื่อง "เล็ก" ที่สามารถจับคู่นิพจน์ปกติได้อย่างมีประสิทธิภาพหรือไม่
เป็นที่ทราบกันดีว่านิพจน์ทั่วไปสามารถรับรู้ได้โดย nondterministic finite automaton ที่มีขนาดตามสัดส่วนกับ expression ปกติหรือโดย FA ที่กำหนดขึ้นซึ่งอาจมีขนาดใหญ่ขึ้นแทน นอกจากนี้เมื่อพิจารณาจากสตริงและนิพจน์ทั่วไปr NFA สามารถทดสอบการเป็นสมาชิกในสัดส่วนเวลากับ| s | ⋅ | r | และ DFA สามารถทดสอบการเป็นสมาชิกในเวลาตามสัดส่วนกับ| s |sssRrr| s | ⋅ | r ||s|⋅|r||s| \cdot |r|| s ||s||s|. การชะลอตัวของ NFA เกิดขึ้นจากความจริงที่ว่าเราจำเป็นต้องติดตามชุดของสภาวะที่เป็นไปได้ที่หุ่นยนต์สามารถอยู่ได้ NFA เป็นไปได้ไหมที่จะมีประสิทธิภาพ (กล่าวคือในเวลาดีกว่าและพื้นที่ที่ดีกว่าO ( 2 | r | ) ) รู้จักการแสดงออกปกติถ้าเราอนุญาตให้ใช้เครื่องจักรที่ทรงพลังกว่าออโต จำกัด (ตัวอย่างเช่นมีความชัดเจนในการรับรู้ภาษาปกติด้วยการกดลงอัตโนมัติหรือเครื่องตอบโต้หรือไม่)O ( …

3
อัลกอริธึมที่รู้จักที่จะเปลี่ยนจาก DFA ไปเป็นนิพจน์ทั่วไป
ฉันสงสัยว่ามี '`ดีกว่า' '(ฉันจะอธิบายในแง่ใด) อัลกอริทึมที่จะเริ่มต้นจาก DFAและสร้างการแสดงออกปกติที่มากกว่าหนึ่งในหนังสือโดย Hopcroft และ Ullman (1979) ในการมีชุดที่ใช้แทนชุดของสตริงที่ใช้เอฟเอจากรัฐเพื่อโดยไม่ต้องผ่านรัฐใด ๆ เลขสูงกว่าkการก่อสร้างนี้ถึงแม้จะถูกต้องและมีประโยชน์มาก แต่ก็ค่อนข้างเป็นเรื่องเทคนิค r L ( A ) = L ( r ) R k i j q i q j kAA\mathcal{A}RRrL () = L ( r )L(A)=L(r)L(\mathcal{A})=L(r)RkฉันเจRijkR_{ij}^kQผมQผมq_iQJQJq_jkkk ฉันกำลังเขียนเอกสารเกี่ยวกับทฤษฎีออลพีชคณิตเกี่ยวกับพีชคณิตและฉันไม่ต้องการเบี่ยงเบนความสนใจผู้ชมของฉันด้วยรายละเอียดทางเทคนิคมากเกินไป (อย่างน้อยก็ไม่ใช่รายละเอียดที่ไม่เกี่ยวข้องกับผลลัพธ์ที่ฉันต้องการแสดง) แต่ฉันต้องการรวม หลักฐานการเทียบเท่าระหว่าง DFA และนิพจน์ทั่วไปเพื่อความสมบูรณ์ สำหรับบันทึกฉันใช้ Glushkov ออโตมาตะจากนิพจน์ทั่วไปไปยัง DFA ดูเหมือนง่ายกว่า -transitions …

2
มี DFA กี่ตัวที่ยอมรับสตริงที่กำหนดสองชุด
แก้ไขจำนวนเต็มnnnและตัวอักษรΣ = { 0 , 1Σ={0,1}\Sigma=\{0,1\} } กำหนดD F A ( n )DFA(n)DFA(n)ให้เป็นคอลเลกชันของออโตมาตา จำกัด ทั้งหมดในnnnรัฐด้วยสถานะเริ่มต้น 1 เรากำลังพิจารณาDFAs ทั้งหมด (ไม่ใช่แค่การเชื่อมต่อที่น้อยที่สุด จึง| D F A ( n ) | = n 2 n 2|DFA(n)|=n2n2n|DFA(n)| = n^{2n}2^n n ตอนนี้พิจารณาสองสตริงx , y ที่∈ Σ *และกำหนดK ( x , Y )ให้เป็นจำนวนขององค์ประกอบของD F ( n )ที่ยอมรับทั้งxและy …

2
เงื่อนไขสำหรับความเป็นสากลของ NFA
พิจารณา nondeterministic จำกัด ออโต= ( Q , Σ , δ , Q 0 , F )และฟังก์ชั่นF ( n ) นอกจากนี้เรากำหนดΣ ≤ k = ⋃ ฉัน≤ k ΣฉันA=(Q,Σ,δ,q0,F)A=(Q,Σ,δ,q0,F)A = (Q, \Sigma, \delta, q_0, F)f(n)f(n)f(n)Σ≤k=⋃i≤kΣiΣ≤k=⋃i≤kΣi\Sigma^{\leq k} = \bigcup_{i \leq k} \Sigma^i ตอนนี้ให้วิเคราะห์คำสั่งต่อไปนี้: หากΣ≤f(|Q|)⊆L(A)Σ≤f(|Q|)⊆L(A)\Sigma^{\leq f(|Q|)} \subseteq L(A)แล้วL(A)=Σ∗L(A)=Σ∗L(A) = \Sigma^* * มันง่ายที่จะแสดงว่าสำหรับf(n)=2n+1f(n)=2n+1f(n) = 2^n+1มันเป็นเรื่องจริงดังนั้นหากออโตมาตะสร้างทุกคำที่มีความยาวไม่เกิน2|Q|+12|Q|+12^{|Q|}+1แล้วมันผลิตΣ∗Σ∗\Sigma^* …

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

1
มีภาษาต้นไม้ทั่วไปหรือไม่ที่ความสูงเฉลี่ยของต้นไม้ที่มีขนาด
เรากำหนดภาษาต้นไม้ตามปกติในหนังสือTATA : เป็นชุดของต้นไม้ที่ได้รับการยอมรับจากหุ่นยนต์ต้นไม้ จำกัด (บทที่ 1) หรือชุดของต้นไม้ที่สร้างโดยไวยากรณ์ต้นไม้ปกติ (บทที่ 2) พิธีการทั้งสองมีความคล้ายคลึงกันอย่างใกล้ชิดกับ analogues สตริงที่รู้จักกันดี มีภาษาต้นไม้ทั่วไปหรือไม่ที่ความสูงเฉลี่ยของต้นไม้ที่มีขนาดnnnไม่ใช่Θ(n)Θ(n)\Theta(n)หรือΘ(n−−√)Θ(n)\Theta(\sqrt{n})? เห็นได้ชัดว่ามีภาษาต้นไม้ที่ความสูงของต้นไม้นั้นเป็นเส้นตรงตามขนาดของมัน และในหนังสือAnalytic Combinatoricsนั้นแสดงว่าต้นไม้ไบนารีขนาดมีความสูงเฉลี่ย2 √nnn n หากฉันเข้าใจข้อเสนอ VII.16 (หน้า. 537) ของหนังสือที่กล่าวถึงอย่างถูกต้องแสดงว่ามีภาษาย่อยของภาษาต้นไม้ทั่วไปที่มีความสูงเฉลี่ยΘ( √)2πn−−−√2πn2\sqrt{ \pi n}คือภาษาที่มีต้นไม้เป็นต้นไม้ที่เรียบง่ายหลากหลายที่สามารถเติมเต็มเงื่อนไขพิเศษได้Θ(n−−√)Θ(n)\Theta(\sqrt{n}) ดังนั้นฉันสงสัยว่ามีภาษาต้นไม้ปกติแสดงความสูงเฉลี่ยที่แตกต่างกันหรือว่ามีขั้วสองขั้วที่แท้จริงสำหรับภาษาต้นไม้ปกติ หมายเหตุ: คำถามนี้ถูกถามมาก่อนในวิทยาการคอมพิวเตอร์แต่มันยังไม่ได้ตอบมานานกว่าสามเดือน ฉันต้องการที่จะโพสต์ไว้ที่นี่อีกครั้งเพราะคำถามเก่าเกินไปที่จะย้ายและเนื่องจากยังมีความสนใจในคำถาม นี่คือลิงค์ไปยังโพสต์ต้นฉบับ

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