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

คำถามที่เกี่ยวข้องกับภาษาทางการไวยากรณ์และทฤษฎีออโตมาตะ

3
ภาษาของคู่ของคำที่มีความยาวเท่ากันซึ่งระยะการแฮ็มเป็น 2 หรือมากกว่านั้นโดยไม่มีบริบทหรือไม่
บริบทภาษาต่อไปนี้ฟรีหรือไม่ L={uxvy∣u,v,x,y∈{0,1}+,|u|=|v|,u≠v,|x|=|y|,x≠y}L={uxvy∣u,v,x,y∈{0,1}+,|u|=|v|,u≠v,|x|=|y|,x≠y}L = \{ uxvy \mid u,v,x,y \in \{ 0,1 \}^+, |u| = |v|, u \neq v, |x| = |y|, x \neq y\} ตามที่อธิบายไว้โดย sdcvvc คำในภาษานี้ยังสามารถอธิบายได้ว่าเป็นการรวมกันของคำสองคำที่มีความยาวเท่ากันในระยะการเชื่อมต่อที่มีค่าเท่ากับ 2 หรือมากกว่า ฉันคิดว่ามันไม่ใช่บริบท แต่ฉันมีเวลาพิสูจน์ยาก ฉันพยายามตัดภาษานี้ด้วยภาษาปกติ (เช่น เป็นต้น) จากนั้นให้ใช้บทแทรกและบทหรือ \ ลง. 0∗1∗0∗1∗ 0∗1∗0∗1∗ \ 0^*1^*0^*1^*

1
นิพจน์ปกติ“ หนาแน่น” สร้าง ?
นี่คือการคาดเดาสำหรับนิพจน์ทั่วไป: สำหรับการแสดงออกปกติให้ความยาวเป็นจำนวนของสัญลักษณ์ในนั้นละเว้นเครื่องหมายวงเล็บและตัวดำเนินการ เช่นRRR|R||R||R||0∪1|=|(0∪1)∗|=2|0∪1|=|(0∪1)∗|=2|0 \cup 1| = |(0 \cup 1)^*| = 2 การคาดเดา:ถ้าและมีความยาวทุกสตริงหรือน้อยกว่านั้น *|R|>1|R|>1|R| > 1L(R)L(R)L(R)|R||R||R|L(R)=Σ∗L(R)=Σ∗L(R) = \Sigma^* นั่นคือถ้าคือ 'หนาแน่น' ถึงยาว 's แล้วจริงสร้างทุกอย่างL(R)L(R)L(R)RRRRRR บางสิ่งที่อาจเกี่ยวข้อง: ต้องการเพียงส่วนเล็ก ๆ ของเพื่อสร้างสตริงทั้งหมด ยกตัวอย่างเช่นในไบนารีจะทำงานใด ๆSRRRR=(0∪1)∗∪SR=(0∪1)∗∪SR = (0 \cup 1)^* \cup SSSS จะต้องมีดาว Kleene ในในบางจุด หากไม่มีอยู่มันจะพลาดสตริงที่มีขนาดน้อยกว่า.RRR|R||R||R| มันจะเป็นการดีที่ได้เห็นหลักฐานหรือตัวอย่าง มีบางกรณีที่ฉันผิดพลาดหรือไม่? มีใครเห็นสิ่งนี้ (หรือบางอย่างที่คล้ายกัน) มาก่อนหรือไม่

6
ความสัมพันธ์ระหว่างภาษาการเขียนโปรแกรมนิพจน์ทั่วไปและภาษาที่เป็นทางการคืออะไร
ฉันได้ดูคำตอบสำหรับคำถามนี้และดูเหมือนว่าทุกคนรู้คำตอบโดยปริยายยกเว้นฉัน สันนิษฐานว่าเป็นเพราะคนเพียงคนเดียวที่สนใจคือผู้ที่มีการศึกษาระดับอุดมศึกษาในเรื่อง ในทางกลับกันฉันถูกโยนลงไปลึกสุดเพื่อรับงานมัธยมปลาย คำถามของฉันคือภาษาการเขียนโปรแกรมเกี่ยวข้องกับภาษาทางการอย่างไร ทุกที่ที่ฉันอ่านมีบางสิ่งที่เรียงตามแนวของ "ภาษาที่เป็นทางการใช้เพื่อกำหนดไวยากรณ์ของภาษาโปรแกรม" ตอนนี้จากสิ่งที่ฉันสามารถรวบรวมได้ภาษาทางการเป็นชุดของกฎการผลิตที่ใช้กับชุดสัญลักษณ์เฉพาะ (ตัวอักษรของภาษา) กฎการผลิตเหล่านี้กำหนดชุดการแปลงเช่น: b -> a aaa->c สิ่งนี้สามารถนำไปใช้ได้เช่น: abab->aaaa aaaa-> ca เช่นเดียวกับบันทึกย่อหากเรากำหนดว่าตัวอักษรของภาษาทางการของเราคือ {a, b, c} จากนั้น a และ b ไม่ใช่เทอร์มินัลและ c เป็นเทอร์มินัลเนื่องจากไม่สามารถเปลี่ยนได้ (โปรดแก้ไขให้ฉันด้วยถ้าฉันผิด ที่). ถ้าอย่างนั้นจะใช้กับภาษาโปรแกรมได้อย่างไร บ่อยครั้งที่มีการระบุด้วยว่า regex ใช้ในการแยกภาษาในรูปแบบข้อความเพื่อให้แน่ใจว่าไวยากรณ์นั้นถูกต้อง มันสมเหตุสมผลแล้ว จากนั้นจะกล่าวว่า regex ถูกกำหนดโดยภาษาทางการ Regex ส่งคืนจริงหรือเท็จ (จากประสบการณ์ของฉันอย่างน้อย) ขึ้นอยู่กับว่าสถานะออโตมาต้าที่ จำกัด ซึ่งแสดงถึง regex มาถึงจุดเป้าหมายหรือไม่ เท่าที่ฉันเห็นมันไม่มีส่วนเกี่ยวข้องกับการเปลี่ยนแปลง * สำหรับการรวบรวมโปรแกรมนั้นฉันคิดว่าภาษาทางการจะสามารถแปลงรหัสให้เป็นรหัสระดับล่างได้อย่างต่อเนื่องในที่สุดก็ถึงการชุมนุมผ่านชุดกฎที่ซับซ้อนซึ่งฮาร์ดแวร์นั้นสามารถเข้าใจได้ นั่นคือสิ่งที่มาจากมุมมองที่สับสนของฉัน …

6
นิยามภาษาแบบวนซ้ำและนับซ้ำสำหรับคนธรรมดา
คำถามนี้ถูกย้ายจาก Theoretical Computer Science Exchange Exchange เพราะสามารถตอบได้ใน Computer Science Stack Exchange อพยพ 6 ปีที่แล้ว ฉันเจอคำจำกัดความของภาษาแบบเรียกซ้ำและนับซ้ำ แต่ฉันไม่เข้าใจว่ามันคืออะไร บางคนได้โปรดบอกฉันว่าพวกเขาอยู่ในคำง่ายๆ?

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'= { …

4
ภาษาที่ไม่สามารถตัดสินใจได้มีอยู่ในตรรกะเชิงคอนสตรัคติวิสต์หรือไม่?
คอนสตรัคติวิสต์ลอจิกเป็นระบบที่เอากฎของคนที่ได้รับการยกเว้นกลางเช่นเดียวกับการปฏิเสธคู่เช่นสัจพจน์ มีคำอธิบายเกี่ยวกับวิกิพีเดียที่นี่และที่นี่ โดยเฉพาะอย่างยิ่งระบบไม่อนุญาตให้มีการพิสูจน์ด้วยความขัดแย้ง ฉันสงสัยว่ามีใครบ้างที่คุ้นเคยกับสิ่งนี้ที่มีผลต่อผลลัพธ์เกี่ยวกับทัวริง Machines และภาษาทางการ ฉันสังเกตเห็นว่าเกือบทุกข้อพิสูจน์ว่าภาษานั้นไม่สามารถตัดสินใจได้โดยอาศัยการพิสูจน์จากความขัดแย้ง ทั้งอาร์กิวเมนต์ Diagonalization และแนวคิดของการลดทำงานด้วยวิธีนี้ จะมีหลักฐานที่ "สร้างสรรค์" ของการมีอยู่ของภาษาที่ไม่สามารถตัดสินใจได้หรือไม่และถ้าเป็นเช่นนั้นจะมีลักษณะอย่างไร แก้ไข: เพื่อความชัดเจนความเข้าใจของฉันพิสูจน์โดยความขัดแย้งในตรรกะ constructivist ผิดและคำตอบได้ชี้แจงนี้

1
มีขั้นตอนวิธีการแยก CFG nongeneral ที่รับรู้ EPAL หรือไม่
EPAL ภาษาของ palindromes คู่ถูกกำหนดเป็นภาษาที่สร้างขึ้นโดยไวยากรณ์บริบทที่ไม่มีความชัดเจนต่อไปนี้: S→aaS→aaS \rightarrow a a S→bbS→bbS \rightarrow b b S→aSaS→aSaS \rightarrow a S a S→bSbS→bSbS \rightarrow b S b EPAL เป็น 'bane' ของอัลกอริทึมการแยกวิเคราะห์หลายอย่าง: ฉันยังไม่เคยพบอัลกอริทึมการแยกวิเคราะห์สำหรับ CFG ที่ไม่คลุมเครือซึ่งสามารถแยกไวยากรณ์ใด ๆ ที่อธิบายภาษา มักใช้เพื่อแสดงว่ามี CFG ที่ไม่คลุมเครือซึ่งไม่สามารถแยกวิเคราะห์โดยตัวแยกวิเคราะห์เฉพาะได้ นี่เป็นแรงบันดาลใจให้กับคำถามของฉัน: มีอัลกอริธึมการแยกวิเคราะห์ที่ยอมรับเฉพาะ CFG ที่ชัดเจนซึ่งใช้งานได้กับ EPAL หรือไม่ แน่นอนหนึ่งสามารถออกแบบ ad-hoc parser สอง pass- สำหรับไวยากรณ์ที่แยกวิเคราะห์ภาษาในเวลาเชิงเส้น ฉันสนใจวิธีการวิเคราะห์คำที่ไม่ได้ออกแบบมาเป็นพิเศษโดยคำนึงถึง EPAL

2
นิพจน์ปกติที่เข้ากันได้กับ Perl รองรับภาษาใดบ้าง
ในฐานะที่เป็นชื่อเรื่องว่าผมใช้เวลาสองสามชั่วโมงสุดสัปดาห์สุดท้ายพยายามที่จะตัดขึ้นใจของฉันเกี่ยวกับระดับของภาษาการจับคู่โดยการแสดงออกปกติ Perl ได้ที่ไม่รวมผู้ประกอบการจับคู่ใด ๆ ที่จะช่วยให้การรันโค้ดภายในรูปแบบ หากคุณไม่ได้รู้ว่าสิ่งที่เป็น PCREs โปรดอ่านนี้และนี้ ปัญหาคือทรัพยากรที่มีอยู่บนอินเทอร์เน็ตหยุดอยู่ที่ภาษาที่ไม่มีบริบทและ PCREs สามารถจับคู่ได้มากกว่านั้น (ดูด้านล่าง) แต่ฉันไม่รู้ว่าจะหาทฤษฏีหรือเอกสารเพิ่มเติมเกี่ยวกับเรื่องแบบนี้ได้ที่ไหน โดยเฉพาะอย่างยิ่ง: PCRE เป็นชุดภาษาปกติ (เนื่องจากไวยากรณ์ PCRE มีตัวดำเนินการภาษาปกติทั้งหมด) CFG ใด ๆ สามารถใส่ในรูปแบบปกติของ Greibach ซึ่งจะทำการลบการเรียกซ้ำไปทางซ้าย ฉันคิดว่าสิ่งนี้สามารถใช้โดย(?(DEFINE)...)กลุ่มเพื่อ "แปล" ไวยากรณ์เป็นรูทีนย่อยที่ตรงกันหลีกเลี่ยงที่จะสำลักในการเรียกซ้ำซ้ายโดยการแปล: non-terminal ที่หัวของการผลิตแต่ละครั้งจะกลายเป็นรูทีนย่อย (?<HEAD>...) เนื้อหาของการผลิตแต่ละครั้งจะถูกใส่ไว้ในรูทีนย่อย เทอร์มินัลถูกทิ้งไว้ตามที่เป็นอยู่มินัลจะกลายเป็นการร้องขอขั้นตอน (เช่น(?&NONTERMINAL)); โปรดักชั่นทั้งหมดที่มี nonterminal เช่นเดียวกับหัวเป็น ORed ร่วมกันโดยวิธีการของ|ผู้ประกอบการ (รวมทั้งการจัดกลุ่มเพิ่มเติมด้วย(?:...)ถ้าจำเป็น) รูปแบบนั้นจะกลายเป็น(?(DEFINE)...)กลุ่มที่มีการผลิต "แปล" ทั้งหมดและการร้องขอสำหรับกระบวนการของสัญลักษณ์เริ่มต้นเพื่อให้ตรงกับสตริงทั้งหมดเช่น^(?(DEFINE)...)(?&START)$ สิ่งนี้ควรจัดการกับ CFG ใด ๆ ดังนั้น PCREs ควรจะสามารถจับคู่ …

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

2
มีภาษาที่“ ไม่เป็นธรรมชาติ” ที่ไม่สามารถตัดสินใจได้หรือไม่?
มีภาษาใดที่ "เป็นธรรมชาติ" ซึ่งไม่สามารถตัดสินใจได้? โดย "natural" ฉันหมายถึงภาษาที่กำหนดโดยตรงโดยคุณสมบัติของสตริงไม่ใช่ผ่านทางเครื่องและเทียบเท่า กล่าวอีกนัยหนึ่งถ้าภาษาดูเหมือน โดยที่คือ TM, DFA (หรือ exp ปกติ), PDA (หรือไวยากรณ์), ฯลฯ จากนั้นไม่ใช่ธรรมชาติ อย่างไรก็ตามเป็นธรรมชาติL={⟨M⟩∣…}L={⟨M⟩∣…} L = \{ \langle M \rangle \mid \ldots \}MMMLLL L={xy…∣x is a prefix of y…}L={xy…∣x is a prefix of y…}L = \{xy \ldots \mid x \text{ is a prefix of y} \ldots …

4
มีวิธีอื่นในการอธิบายภาษาที่เป็นทางการนอกเหนือจากไวยากรณ์หรือไม่
คำถามนี้ถูกย้ายจาก Theoretical Computer Science Exchange Exchange เนื่องจากสามารถตอบได้ใน Computer Science Stack Exchange อพยพ 7 ปีที่ผ่านมา ฉันกำลังมองหาทฤษฎีทางคณิตศาสตร์ที่เกี่ยวข้องกับการอธิบายภาษาทางการ (ชุดของสตริง) โดยทั่วไปและไม่ใช่แค่ลำดับชั้นของไวยากรณ์

1
เครื่องจักรสำหรับภาษาที่ไม่มีบริบทซึ่งไม่มีอำนาจพิเศษจาก nondeterminism
เมื่อพิจารณาถึงรูปแบบการคำนวณของเครื่องจักรลำดับชั้นของ Chomsky นั้นมีลักษณะตามปกติ (ตามลำดับ), ออโตไฟไนต์, ออโตมาตาแบบกดลง, ออโตเมต้าที่มีขอบเขตเชิงเส้น สำหรับครั้งแรกและครั้งสุดท้ายในระดับที่1 (ภาษาที่ปกติและภาษานับซ้ำ) มันทำให้ความแตกต่างในการใช้พลังงานของรูปแบบไม่ว่าจะเป็นเครื่องที่เราพิจารณากำหนดหรือ nondeterministic ไม่มี DFAs คือเทียบเท่ากับ NFAs และเจเทียบเท่ากับ NTMs 2 อย่างไรก็ตามสำหรับ PDA และ LBAs สถานการณ์จะแตกต่างกัน พีดีเอที่กำหนดได้จะรับรู้ชุดของภาษาที่เล็กกว่าอย่างเข้มงวดกว่าพีดีเอที่กำหนดไว้ นอกจากนี้ยังเป็นคำถามเปิดที่สำคัญว่า LBA ที่กำหนดขึ้นมีประสิทธิภาพเท่ากับ LBA ที่ไม่ระบุชื่อหรือไม่ [1] สิ่งนี้จะถามคำถามของฉัน: มีรูปแบบของเครื่องที่แสดงลักษณะของภาษาที่ไม่มีบริบท แต่ไม่มีการกำหนดระดับใดที่ไม่เพิ่มพลังพิเศษ? (ถ้าไม่มีคุณสมบัติของ CFL ที่แนะนำเหตุผลสำหรับการนี้) ดูเหมือนว่าเป็นไปไม่ได้ (สำหรับฉัน) ที่จะพิสูจน์ได้ว่าภาษาที่ไม่มีบริบทต้องมีความไม่เชื่อในลัทธินิยม แต่อย่างใดแต่ดูเหมือนว่าจะไม่เป็นแบบจำลองเครื่อง คำถามส่วนขยายเหมือนกัน แต่สำหรับภาษาที่คำนึงถึงบริบท อ้างอิง S.-Y. Kuroda, "คลาสของภาษาและ Linear Bata Automata" , …

2
ภาษาที่ไม่มีบริบทในถูกปิดภายใต้ส่วนเติมเต็มหรือไม่?
ภาษาที่ไม่มีบริบทไม่ได้ปิดอยู่ภายใต้การใช้งานจริงเรารู้ว่า เท่าที่ฉันเข้าใจภาษาที่ไม่มีบริบทซึ่งเป็นชุดย่อยของสำหรับจดหมายบางตัวถูกปิดภายใต้ส่วนเติมเต็ม (!?) a , ba∗b∗a∗b∗a^*b^*a,ba,ba,b นี่คือข้อโต้แย้งของฉัน แต่ละภาษา CFมีกึ่งเชิงเส้น Parikh ภาพ\} ชุด Semilinear ถูกปิดภายใต้ส่วนประกอบ ชุดของเวกเตอร์ที่แสดงถึงชุดกึ่งเชิงเส้นสามารถแปลงเป็นไวยากรณ์เชิงเส้นได้อย่างง่ายดายπ ( L ) = { ( m , n ) ∣ a m b n ∈ L }LLLπ(L)={(m,n)∣ambn∈L}π(L)={(m,n)∣ambn∈L}\pi(L) = \{ (m,n) \mid a^mb^n \in L \} คำถาม. มีการอ้างอิงถึงข้อเท็จจริงนี้ได้อย่างง่ายดายหรือไม่? เทคนิคภาษาเหล่านี้จะเรียกว่าล้อมรอบคือส่วนหนึ่งของสำหรับคำบางคำw_1 w 1 , … , w …

3
แทรกบทแทรกสำหรับภาษาปกติที่ จำกัด ง่าย
Wikipediaมีคำจำกัดความของบทแทรกต่อไปนี้สำหรับ langauges ปกติ ... ให้เป็นภาษาปกติ จากนั้นจะมีจำนวนเต็ม ≥ 1 ขึ้นอยู่กับเช่นว่าทุกสตริงในของความยาวอย่างน้อย (เรียกว่า "pumping length") สามารถเขียนเป็น = (เช่นสามารถแบ่งออกเป็นสาม วัสดุพิมพ์) ที่สอดคล้องกับเงื่อนไขต่อไปนี้:LLLpppLLLwwwLLLppppppwwwxyzxyzxyzwww | | ≥ 1yyy | | ≤xyxyxyppp สำหรับทั้งหมด ≥ 0, ∈iiixyizxyizxy^izLLL ฉันไม่เห็นว่าสิ่งนี้น่าพึงพอใจสำหรับภาษาปกติที่ จำกัด อย่างง่าย ถ้าผมมีตัวอักษรของ { } และการแสดงออกปกติแล้วประกอบด้วยแค่คำหนึ่งซึ่งเป็นตามด้วยขตอนนี้ฉันต้องการที่จะดูว่าภาษาปกติของฉันเป็นไปตามที่สูบ ...a,ba,ba,babababLLLaaabbb ในฐานะที่เป็นซ้ำไม่มีอะไรในการแสดงออกปกติของฉันค่าของyyyต้องมีที่ว่างเปล่าเพื่อให้สภาพ 3 satisifed สำหรับฉันiiiแต่ถ้าเป็นเช่นนั้นมันล้มเหลวในเงื่อนไข 1 ซึ่งบอกว่าyyyจะต้องมีความยาวอย่างน้อย 1 ตัว! ถ้าฉันปล่อยให้yyyเป็นaaa , bbbหรือabababมันจะเป็นไปตามเงื่อนไขที่ 1 แต่ล้มเหลวในสภาพที่ 3 …

3
แยกวิเคราะห์ไวยากรณ์ที่ไม่มีบริบทโดยพลการซึ่งเป็นตัวอย่างสั้น ๆ
ฉันต้องการแยกภาษาเฉพาะโดเมนที่ผู้ใช้กำหนด ภาษาเหล่านี้มักจะใกล้กับสัญลักษณ์ทางคณิตศาสตร์ (ฉันไม่ได้แยกภาษาธรรมชาติ) ผู้ใช้กำหนด DSL ในสัญลักษณ์ BNF เช่นนี้ expr ::= LiteralInteger | ( expr ) | expr + expr | expr * expr การป้อนข้อมูลเช่น1 + ( 2 * 3 )ต้องได้รับการยอมรับในขณะที่การป้อนข้อมูลเช่น1 +ต้องได้รับการปฏิเสธเป็นไม่ถูกต้องและการป้อนข้อมูลเช่น1 + 2 * 3ต้องได้รับการปฏิเสธเป็นที่คลุมเครือ ความยากลำบากส่วนกลางที่นี่คือการรับมือกับไวยากรณ์ที่กำกวมในวิธีที่ใช้งานง่าย การ จำกัด ไวยากรณ์ให้ไม่คลุมเครือนั้นไม่ใช่ตัวเลือกนั่นคือวิธีการใช้ภาษา - แนวคิดคือผู้เขียนต้องการละเว้นวงเล็บเมื่อไม่จำเป็นต้องหลีกเลี่ยงความคลุมเครือ ตราบใดที่การแสดงออกไม่ชัดเจนฉันต้องแยกมันและถ้าไม่ฉันต้องปฏิเสธมัน โปรแกรมแยกวิเคราะห์ของฉันต้องทำงานกับไวยากรณ์ที่ไม่มีบริบทใด ๆ แม้แต่ที่คลุมเครือและต้องยอมรับอินพุตที่ไม่คลุมเครือทั้งหมด ฉันต้องการแผนผังการแยกวิเคราะห์สำหรับอินพุตที่ยอมรับทั้งหมด สำหรับการป้อนข้อมูลที่ไม่ถูกต้องหรือไม่ชัดเจนฉันต้องการข้อความแสดงข้อผิดพลาดที่ดี แต่เริ่มต้นด้วยสิ่งที่ฉันจะได้รับ โดยทั่วไปฉันจะเรียกใช้ parser …

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