อ่าน 2 นาที
ภาษาที่ไม่ขึ้นกับบริบทแบบกำหนดได้
ใน ทฤษฎีภาษาเชิงรูปธรรม ภาษา บริบทอิสระแบบกำหนดได้ ( DCFL ) เป็น เซตย่อยที่แท้จริง ของ ภาษาบริบทอิสระ กล่าว คือ เป็นภาษาบริบทอิสระที่สามารถยอมรับได้โดย...
ภาษาที่ไม่ขึ้นกับบริบทแบบกำหนดได้
ในทฤษฎีภาษาเชิงรูปธรรมภาษาบริบทอิสระแบบกำหนดได้ ( DCFL ) เป็นเซตย่อยที่แท้จริงของ ภาษาบริบทอิสระ กล่าว คือ เป็นภาษาบริบทอิสระที่สามารถยอมรับได้โดยออโตมาตาแบบพุชดาวน์แบบกำหนดได้ DCFL นั้นไม่กำกวมเสมอ หมายความว่า ไวยากรณ์ของภาษา นั้นไม่กำกวม เนื่องจากมีภาษาบริบทอิสระที่ไม่กำกวมแบบไม่กำหนดได้ ดังนั้น DCFL จึงเป็นเซตย่อยที่แท้จริงของภาษาบริบทอิสระที่ไม่กำกวม
DCFL มีประโยชน์ในทางปฏิบัติอย่างมาก เนื่องจากสามารถแยกวิเคราะห์ได้ในเวลาเชิงเส้นและรูปแบบที่จำกัดต่างๆ ของ DCFG ก็มีตัวแยกวิเคราะห์ที่ใช้งานง่าย ดังนั้นจึงมีการใช้งานอย่างแพร่หลายในสาขาวิทยาศาสตร์คอมพิวเตอร์
คำอธิบาย
แนวคิดของ DCFL มีความเกี่ยวข้องอย่างใกล้ชิดกับออโตมาตาพุชดาวน์แบบกำหนด (DPDA) นั่นคือ พลังทางภาษาของ ออโตมาตาพุชดาวน์จะลดลงหากเราทำให้มันเป็นแบบกำหนด ออโตมาตาพุชดาวน์จะไม่สามารถเลือกระหว่างทางเลือกการเปลี่ยนสถานะที่แตกต่างกันได้ และเป็นผลให้ไม่สามารถจดจำภาษาแบบไร้บริบทได้ทั้งหมด[ 1 ]ไวยากรณ์ที่ไม่กำกวมไม่ได้สร้าง DCFL เสมอไป ตัวอย่างเช่น ภาษาของพาลินโดรมที่ มีความยาวคู่ บนตัวอักษร 0 และ 1 มีไวยากรณ์แบบไร้บริบทที่ไม่กำกวม S → 0S0 | 1S1 | ε สตริงใดๆ ของภาษานี้ไม่สามารถแยกวิเคราะห์ได้โดยไม่ต้องอ่านตัวอักษรทั้งหมดก่อน ซึ่งหมายความว่าออโตมาตาพุชดาวน์ต้องลองการเปลี่ยนสถานะทางเลือกเพื่อรองรับความยาวที่เป็นไปได้ต่างๆ ของสตริงที่แยกวิเคราะห์บางส่วน[ 2 ]
คุณสมบัติ
ภาษาบริบทอิสระเชิงกำหนดสามารถรับรู้ได้ด้วย เครื่อง ทัวริงเชิงกำหนดในเวลาพหุนามและ พื้นที่ O (log 2 n ) ผลที่ตามมาคือDCFLเป็นเซตย่อยของคลาสความซับซ้อนSC [ 3 ]
เซตของภาษาบริบทอิสระเชิงกำหนดปิดภายใต้การดำเนินการต่อไปนี้: [ 4 ]
- ส่วนเติมเต็ม
- โฮโมมอร์ฟิซึมผกผัน
- ผลหารที่ถูกต้องกับภาษาปกติ
- pre: pre( ) คือเซ็ตย่อยของสตริงทั้งหมดที่มีคำนำหน้าที่เหมาะสมซึ่งเป็นส่วนหนึ่งของ.
- min: min( ) คือเซตย่อยของสตริงทั้งหมดที่ไม่มีคำนำหน้าที่เหมาะสมใน.
- max: max( ) คือเซตย่อยของสตริงทั้งหมดที่ไม่ใช่คำนำหน้าของสตริงที่ยาวกว่าใน.
เซตของภาษาบริบทอิสระเชิงกำหนดจะไม่ปิดภายใต้การดำเนินการต่อไปนี้: [ 4 ]
ความสำคัญ
ภาษาในกลุ่มนี้มีความสำคัญในทางปฏิบัติอย่างมากในวิทยาศาสตร์คอมพิวเตอร์ เนื่องจากสามารถแยกวิเคราะห์ได้อย่างมีประสิทธิภาพมากกว่าภาษาบริบทอิสระที่ไม่แน่นอน ความซับซ้อนของโปรแกรมและเวลาในการทำงานของออโตมาตาแบบพุชดาวน์ที่แน่นอนนั้นน้อยกว่าออโตมาตาแบบไม่แน่นอนอย่างมาก ในการใช้งานแบบง่ายๆ ออโตมาตาแบบไม่แน่นอนจะต้องสร้างสำเนาของสแต็กทุกครั้งที่เกิดขั้นตอนที่ไม่แน่นอน อัลกอริทึมที่รู้จักกันดีที่สุดในการทดสอบการเป็นสมาชิกในภาษาบริบทอิสระใดๆ คืออัลกอริทึมของ Valiantซึ่งใช้เวลา O( n².378 ) โดยที่nคือความยาวของสตริง ในทางกลับกัน ภาษาบริบทอิสระที่แน่นอนสามารถยอมรับได้ในเวลา O( n ) โดย ตัวแยก วิเคราะห์LR( k ) [ 5 ]นี่เป็นสิ่งสำคัญมากสำหรับ การแปล ภาษาคอมพิวเตอร์เนื่องจากภาษาคอมพิวเตอร์จำนวนมากอยู่ในกลุ่มภาษาประเภทนี้
ดูเพิ่มเติม
สรุปเนื้อหา
ข้อมูลสำคัญจากบทความ
ข้อมูลสำคัญเกี่ยวกับ ภาษาที่ไม่ขึ้นกับบริบทแบบกำหนดได้
ใน ทฤษฎีภาษาเชิงรูปธรรม ภาษา บริบทอิสระแบบกำหนดได้ ( DCFL ) เป็น เซตย่อยที่แท้จริง ของ ภาษาบริบทอิสระ กล่าว คือ เป็นภาษาบริบทอิสระที่สามารถยอมรับได้โดย...
คำอธิบาย
แนวคิดของ DCFL มีความเกี่ยวข้องอย่างใกล้ชิดกับ ออโตมาตาพุชดาวน์แบบกำหนด (DPDA) นั่นคือ พลังทางภาษาของ ออโตมาตาพุชดาวน์ จะลดลงหากเราทำให้มันเป็นแบบกำหนด ออโตมาตาพุชดาวน์จะไม่สามารถเลือกระหว่างทางเลือกการเปลี่ยนสถานะที่แตกต่างกันได้...
คุณสมบัติ
ภาษาบริบทอิสระเชิงกำหนดสามารถรับรู้ได้ด้วย เครื่อง ทั วริงเชิงกำหนด ในเวลาพหุนามและ พื้นที่ O (log 2 n ) ผลที่ตามมาคือ DCFL เป็นเซตย่อยของคลาสความซับซ้อน SC [ 3 ]
ความสำคัญ
ภาษาในกลุ่มนี้มีความสำคัญในทางปฏิบัติอย่างมากในวิทยาศาสตร์คอมพิวเตอร์ เนื่องจากสามารถแยกวิเคราะห์ได้อย่างมีประสิทธิภาพมากกว่าภาษาบริบทอิสระที่ไม่แน่นอน...