قواعد اللغة المفهرسة
تُعدّ القواعد المفهرسة تعميماً للقواعد الخالية من السياق، حيث تُزوّد الرموز غير الطرفية بقوائم من العلامات ، أو رموز الفهرسة . وتُسمى اللغة الناتجة عن قاعدة مفهرسة باللغة المفهرسة .
تعريف
التعريف الحديث لهوبكروفت وأولمان
في المنشورات المعاصرة التي تتبع هوبكروفت وأولمان (1979)، [ 2 ] يتم تعريف القواعد المفهرسة رسميًا على أنها مجموعة خماسية G = ⟨ N , T , F , P , S ⟩ حيث
- N هي مجموعة من المتغيرات أو الرموز غير الطرفية ،
- T هي مجموعة (" أبجدية ") من الرموز الطرفية،
- F هي مجموعة مما يسمى برموز الفهرسة ، أو الفهارس .
- S ∈ N هو رمز البداية ، و
- P هي مجموعة منتهية من الإنتاجات .
في قواعد الإنتاج، وكذلك في اشتقاقات القواعد المفهرسة، تُلحق سلسلة (مكدس) σ ∈ F * من رموز الفهرسة بكل رمز غير طرفي A ∈ N ، ويُرمز لها بـ A [ σ ]. [ ملاحظة 1 ] لا يجوز أن تتبع الرموز الطرفية مكدسات فهرسة. بالنسبة لمكدس فهرسة σ ∈ F * وسلسلة α ∈ ( N ∪ T ) * من الرموز الطرفية وغير الطرفية، فإن α [ σ ] تُشير إلى نتيجة إلحاق [ σ ] بكل رمز غير طرفي في α ؛ على سبيل المثال، إذا كانت α تساوي a B C d E حيث a و d ∈ T رمز طرفي، و B و C و E ∈ N رموز غير طرفية، فإن α [ σ ] تُشير إلى a B [ σ ] C [ σ ] d E [ σ ]. باستخدام هذه الرموز، يجب أن يكون كل إنتاج في P على الشكل التالي
- A [σ] → α[σ],
- A [σ] → B [ f σ]، أو
- A [ f σ] → α[σ],
حيث A و B ∈ N رموز غير طرفية، و f ∈ F فهرس، و σ ∈ F * سلسلة من رموز الفهرس، و α ∈ ( N ∪ T ) * سلسلة من الرموز غير الطرفية والطرفية. يكتب بعض المؤلفين "." بدلاً من " σ " لمكدس الفهرس في قواعد الإنتاج؛ فتصبح قاعدة النوع 1 و2 و3 على النحو التالي: A [..]→ α [..]، و A [..]→ B [ f ..] ، و A [ f ..]→ α [..] ، على التوالي.
تتشابه الاشتقاقات مع تلك الموجودة في قواعد اللغة الخالية من السياق، باستثناء مكدس الفهرسة المرفق بكل رمز غير طرفي. عند تطبيق قاعدة إنتاج مثل A [ σ ] → B [ σ ] C [ σ ]، يُنسخ مكدس فهرسة A إلى كل من B و C. علاوة على ذلك، يمكن للقاعدة إضافة رمز فهرسة إلى المكدس، أو إزالة رمز الفهرسة "العلوي" (أي الأيسر) منه.
بشكل رسمي، يتم تعريف العلاقة ⇒ ("الاشتقاق المباشر") على مجموعة ( N [ F * ]∪T ) * من "الأشكال الجملية" على النحو التالي:
- إذا كانت القاعدة A [ σ ] → α [ σ ] قاعدة إنتاج من النوع 1، فإن βA [ φ ] γ ⇒ βα [ φ ] γ ، وفقًا للتعريف أعلاه. أي أن مكدس الفهرسة φ في الجانب الأيسر من القاعدة يُنسخ إلى كل رمز غير طرفي في الجانب الأيمن.
- إذا كان A [ σ ] → B [ fσ ] قاعدة إنتاج من النوع 2، فإن βA [ φ ] γ ⇒ βB [ fφ ] γ . أي أن مكدس الفهرسة في الجانب الأيمن يُستمد من مكدس الفهرسة في الجانب الأيسر φ عن طريق إضافة f إليه.
- إذا كان A [ fσ ] → α [ σ ] قاعدة إنتاج من النوع 3، فإن βA [ fφ ] γ ⇒ βα [ φ ] γ ، باستخدام تعريف α [ σ ] مرة أخرى . أي، يتم سحب الفهرس الأول f من مكدس الجانب الأيسر، ثم يتم توزيعه على كل رمز غير طرفي في الجانب الأيمن.
وكما هو معتاد، تُعرَّف علاقة الاشتقاق ∗ ⇒ على أنها الإغلاق الانعكاسي المتعدي للاشتقاق المباشر ⇒. اللغة L ( G ) = { w ∈ T * : S ∗ ⇒ w } هي مجموعة جميع سلاسل الرموز النهائية القابلة للاشتقاق من رمز البداية.
التعريف الأصلي من أهو
تاريخيًا، طُرح مفهوم القواعد المفهرسة لأول مرة من قِبل ألفريد أهو (1968) [ 3 ] باستخدام صيغة مختلفة. عرّف أهو القاعدة المفهرسة بأنها مجموعة خماسية ( N ، T ، F ، P ، S ) حيث
- N عبارة عن أبجدية محدودة من المتغيرات أو الرموز غير النهائية
- T عبارة عن أبجدية محدودة من الرموز الطرفية
- F ⊆ 2 N × ( N ∪ T ) * هي المجموعة المنتهية لما يسمى بالأعلام (كل علم هو نفسه مجموعة مما يسمى بإنتاجات المؤشر )
- P ⊆ N × ( NF * ∪ T ) * هي المجموعة المنتهية من الإنتاجات
- S ∈ N هو رمز البداية
وكانت الاشتقاقات المباشرة كما يلي:
- يُطابق الإنتاج p = ( A → X1η1 ... Xkηk ) من P رمزًا غير طرفي A ∈ N متبوعًا بسلسلة علاماته (التي قد تكون فارغة) ζ ∈ F * . في هذا السياق، يُشتق γAζδ ، عبر p ، إلى γX1θ1 ... Xkθkδ ، حيث θi = ηiζ إذا كان Xi رمزًا غير طرفي ، وكلمة فارغة في غير ذلك. بالتالي، تُنسخ علامات A القديمة إلى كل رمز غير طرفي جديد ينتجه p . يمكن محاكاة كل إنتاج من هذا القبيل بواسطة إنتاجات مناسبة من النوعين 1 و2 في صيغة هوبكروفت/أولمان.
- يُطابق إنتاج الفهرس p = ( A → X1 ... Xk ) ∈ f الرمز Afζ (يجب أن يتطابق العلم f الذي يأتي منه مع الرمز الأول الذي يلي الرمز غير الطرفي A ) ، وينسخ سلسلة الفهرس المتبقية ζ إلى كل رمز غير طرفي جديد: γAfζδ ، ويُشتق إلى γX1θ1 ... Xkθkδ ، حيث θi هي الكلمة الفارغة عندما يكون Xi رمزًا طرفيًا، و ζ عندما يكون رمزًا غير طرفي. يتوافق كل إنتاج من هذا النوع مع إنتاج من النوع 3 في صيغة هوبكروفت/أولمان .
وقد استخدم هاياشي (1973، ص 65-66) هذا الأسلوب الرسمي على سبيل المثال. [ 4 ]
أمثلة
عمليًا، يمكن لمجموعات الفهارس أن تحصي وتتذكر القواعد التي تم تطبيقها وترتيبها. على سبيل المثال، يمكن للقواعد المفهرسة أن تصف اللغة الحساسة للسياق لثلاثيات الكلمات { www : w ∈ { a , b } * }:
S [ σ ] → S [ fσ ] T [ fσ ] → أ ت [ σ ] S [ σ ] → S [ gσ ] T [ gσ ] → ب ت [ σ ] S [ σ ] → T [ σ ] T [ σ ] T [ σ ] T [] → ε
ومن ثم يكون اشتقاق كلمة abbabbab
- S [ ] ⇒ S [ g ] ⇒ S [ gg ] ⇒ S [ fgg ] ⇒ T [ fgg ] T [ fgg ] T [ fgg ] ⇒ a T [ gg ] T [ fgg ] T [ fgg ] ⇒ ab T [ g ] T [ fgg ] T [ fgg ] ⇒ abb T [ ] T [ fgg ] T [ fgg ] ⇒ abb T [ fgg ] T [ fgg ] ⇒ ... ⇒ abb abb abb .
كمثال آخر، تُنتج القواعد النحوية G = ⟨ { S , T , A , B , C }, { a , b , c }, { f , g }, P , S ⟩ اللغة { a n b n c n : n ≥ 1 }، حيث تتكون مجموعة الإنتاج P من
S [ σ ] → T [ gσ ] A [ fσ ] → a A [ σ ] A [ gσ ] → a T [ σ ] → T [ fσ ] B [ fσ ] → b B [ σ ] ب [ gσ ] → ب تي [ σ ] → أ [ σ ] ب [ σ ] ج [ σ ] C [ fσ ] → c C [ σ ] C [ gσ ] → c
مثال على الاشتقاق هو
- S [] ⇒ T [ g ] ⇒ T [ fg ] ⇒ A [ fg ] B [ fg ] C [ fg ] ⇒ aA [ g ] B [ fg ] C [ fg ] ⇒ aA [ g ] bB [ g ] C [ fg ] ⇒ aA [ g ] bB [ g ] cC [ g ] ⇒ aa bB [ g ] cC [ g ] ⇒ aa bb cC [ g ] ⇒ aa bb cc .
كلا اللغتين المذكورتين في المثال ليستا خاليتين من السياق وفقًا لفرضية الضخ .
ملكيات
يميل هوبكروفت وأولمان إلى اعتبار اللغات المفهرسة فئة "طبيعية" ، لأنها تتولد بواسطة العديد من الأشكال الأخرى غير القواعد المفهرسة، أي [ 5 ] .
- آلات التكديس المتداخلة أحادية الاتجاه لـ Aho [ 6 ]
- قواعد فيشر الكلية [ 7 ]
- آلات غريباخ مع أكوام من الأكوام [ 8 ]
- التوصيف الجبري لمايباوم [ 9 ]
عمّم هاياشي [ 4 ] نظرية الضخ لتشمل القواعد المفهرسة. في المقابل، يقدم جيلمان [ 10 ] [ 11 ] "نظرية الانكماش" للغات المفهرسة.
القواعد النحوية المفهرسة الخطية
عرّف جيرالد غازدار فئة ثانية، هي القواعد المفهرسة الخطية ( LIG )، [ 14 ] باشتراط أن يُحدد رمز غير طرفي واحد على الأكثر في كل قاعدة إنتاجية كمستقبل للمكدس، [ ملاحظة 2 ] بينما في القواعد المفهرسة العادية، تستقبل جميع الرموز غير الطرفية نسخًا من المكدس. رسميًا، تُعرَّف القواعد المفهرسة الخطية بشكل مشابه للقواعد المفهرسة العادية، ولكن متطلبات شكل القاعدة الإنتاجية تُعدَّل على النحو التالي:
- أ [ σ ] → α [] ب [ σ ] β []،
- أ [ σ ] → α [] ب [ fσ ] β []،
- أ [ fσ ] → α [] ب [ σ ] β []،
حيث تُستخدم A و B و f و σ و α كما سبق ، و β ∈ ( N ∪ T ) * عبارة عن سلسلة من الرموز غير الطرفية والطرفية مثل α . [ ملاحظة 3 ] كما تُعرَّف علاقة الاشتقاق المباشر ⇒ بشكل مشابه لما سبق. تُعرِّف هذه الفئة الجديدة من القواعد فئةً أصغر من اللغات، [ 15 ] والتي تنتمي إلى الفئات الحساسة للسياق بشكل طفيف .
اللغة { www : w ∈ { a , b } * } قابلة للتوليد بواسطة قواعد نحوية مفهرسة، ولكن ليس بواسطة قواعد نحوية مفهرسة خطية، في حين أن كل من { ww : w ∈ { a , b } * } و { a n b n c n : n ≥ 1 } قابلة للتوليد بواسطة قواعد نحوية مفهرسة خطية.
إذا تم قبول كل من قواعد الإنتاج الأصلية والمعدلة، فإن فئة اللغة تظل هي اللغات المفهرسة. [ 16 ]
مثال
بفرض أن σ يمثل تسلسلًا عشوائيًا من رموز المكدس، يمكننا تعريف قواعد اللغة L = { a n b n c n | n ≥ 1 } [ ملاحظة 4 ] على النحو التالي:
S [ σ ] → أ س [ فσ ] ج S [ σ ] → T [ σ ] T [ fσ ] → T [ σ ] b T [] → ε
لاستخلاص السلسلة abc، لدينا الخطوات التالية:
- S [] ⇒ aS [ f ] c ⇒ aT [ f ] c ⇒ aT [] bc ⇒ abc
بصورة مماثلة:
- S [] ⇒ aS [ f ] c ⇒ aaS [ ff ] cc ⇒ aaT [ ff ] cc ⇒ aaT [ f ] bcc ⇒ aaT [] bbcc ⇒ aabbcc
القدرة الحاسوبية
اللغات المفهرسة خطيًا هي مجموعة فرعية من اللغات المفهرسة، وبالتالي يمكن إعادة ترميز جميع اللغات المفهرسة خطيًا (LIGs) كلغات مفهرسة (IGs)، مما يجعل اللغات المفهرسة خطيًا أقل قوة من اللغات المفهرسة، وبالتالي فإن التحويل من لغة مفهرسة خطيًا إلى لغة مفهرسة بسيط نسبيًا. [ 17 ] تبدو قواعد اللغات المفهرسة خطيًا بشكل عام كما يلي تقريبًا، باستثناء جزء الدفع/السحب من قاعدة إعادة الكتابة. الرموزوتمثل سلاسل من الرموز الطرفية و/أو غير الطرفية، ويجب أن يكون لأي رمز غير طرفي في أي منهما مكدس فارغ، وفقًا لتعريف مجموعة التعليمات المنطقية (LIG). وهذا، بالطبع، يتعارض مع كيفية تعريف مجموعات التعليمات (IGs): في مجموعة التعليمات، يجب أن يكون للرموز غير الطرفية التي لا يتم دفع مكدساتها أو سحبها منه نفس المكدس تمامًا مثل الرمز غير الطرفي المعاد كتابته. وبالتالي، بطريقة ما، نحتاج إلى وجود رموز غير طرفية فيووالتي، على الرغم من امتلاكها لمكدسات غير فارغة، تتصرف كما لو كانت لديها مكدسات فارغة.
ضع في اعتبارك القاعدةكمثال توضيحي. عند تحويل هذا إلى IG، يكون البديل لـلا بد أن يكون هناك شيء مايتصرف تمامًا مثلبغض النظر عنلتحقيق ذلك، يمكننا ببساطة وضع زوج من القواعد التي تأخذ أيأينليست فارغة، وتقوم بسحب الرموز من المكدس. ثم، عندما يصبح المكدس فارغًا، يمكن إعادة كتابته على النحو التالي:.
يمكننا تطبيق هذا بشكل عام لاستخلاص مجموعة معلوماتية من مجموعة معلوماتية. على سبيل المثال، إذا كانت المجموعة المعلوماتية للغةوهو كالتالي:
إن القاعدة الجملية هنا ليست قاعدة IG، ولكن باستخدام خوارزمية التحويل المذكورة أعلاه، يمكننا تحديد قواعد جديدة لـ، مع تغيير القواعد النحوية إلى:
تتوافق كل قاعدة الآن مع تعريف قاعدة الفهرسة، حيث تتلقى جميع الرموز غير الطرفية في الجانب الأيمن من قاعدة إعادة الكتابة نسخة من مكدس الرمز المعاد كتابته. وبالتالي، تستطيع قواعد الفهرسة وصف جميع اللغات التي تستطيع قواعد الفهرسة الخطية وصفها.
العلاقة بالصيغ الشكلية الأخرى
يُبيّن فيجاي-شانكر ووير (1994) [ 18 ] أن القواعد النحوية الخطية المفهرسة، والقواعد النحوية الفئوية التوافقية ، وقواعد النحو الشجرية المجاورة ، وقواعد النحو الرأسية ، جميعها تُعرّف نفس فئة لغات السلاسل النصية. ويختلف تعريفهم الرسمي للقواعد النحوية الخطية المفهرسة [ 19 ] عن التعريف المذكور أعلاه .
تُعدّ قواعد اللغة ذات التكافؤ الضعيف (LIGs) (وما يُكافئها بشكل ضعيف ) أقل تعبيرية (أي أنها تُولّد مجموعة فرعية فعلية) من اللغات التي تُولّدها عائلة أخرى من الصيغ المكافئة بشكل ضعيف، والتي تشمل: LCFRS و MCTAG و MCFG والقواعد النحوية البسيطة (MGs). ويمكن تحليل هذه العائلة الأخيرة (أيضًا) في وقت متعدد الحدود . [ 20 ]
قواعد الفهرسة الموزعة
يُعدّ نوع قواعد الفهرسة الموزعة (DIGs) شكلاً آخر من أشكال القواعد المفهرسة، وقد قدّمه ستوداشر (1993) [ 12 ] . ما يُميّز قواعد الفهرسة الموزعة عن قواعد آهو المفهرسة هو آلية نشر الفهارس. فعلى عكس قواعد آهو المفهرسة، التي تُوزّع مكدس الرموز بالكامل على جميع الرموز غير الطرفية أثناء عملية إعادة الكتابة، تُقسّم قواعد الفهرسة الموزعة المكدس إلى مكدسات فرعية، ثم تُوزّع هذه المكدسات الفرعية على رموز غير طرفية مُحدّدة.
يكون مخطط القاعدة العامة لقاعدة التوزيع الثنائي لـ DIG على النحو التالي:
- X [ f 1 ... f i f i +1 ... f n ] → α Y [f 1 ... f i ] β Z [ f i +1 ... f n ] γ
حيث α و β و γ هي سلاسل طرفية اختيارية. بالنسبة لسلسلة موزعة ثلاثيًا:
- X [ f 1 ... f i f i +1 ... f j f j +1 ... f n ] → α Y [f 1 ... f i ] β Z [ f i +1 ... f j ] γ W [ f j +1 ... f n ] η
وهكذا بالنسبة لأعداد أكبر من الرموز غير الطرفية في الجانب الأيمن من قاعدة إعادة الكتابة. عمومًا، إذا كان هناك m رمزًا غير طرفي في الجانب الأيمن من قاعدة إعادة الكتابة، يتم تقسيم المكدس m مرة وتوزيعه بين الرموز غير الطرفية الجديدة. لاحظ أن هناك حالة خاصة يكون فيها التقسيم فارغًا، مما يجعل القاعدة فعليًا قاعدة فهرسة خطية. لذلك، تُعد لغات الفهرسة الموزعة مجموعة شاملة للغات الفهرسة الخطية.
انظر أيضاً
ملحوظات
- ↑ "[" و "]" هما رمزان ميتا للإشارة إلى المكدس.
- ↑ جميع المحطات غير الطرفية الأخرى تتلقى مكدسًا فارغًا
- 1 2 من أجل توليد أي سلسلة نصية على الإطلاق، يجب قبول بعض قواعد الإنتاج التي لا تحتوي على أي رمز غير طرفي في جانبها الأيمن. ومع ذلك، لم يناقش غازدار هذه المسألة.
- ↑ انظر إلى القواعد المفهرسة بشكل صحيح للغة نفسها المذكورة أعلاه . القاعدة الأخيرة، وهي T []→ε، من القواعد المفهرسة الخطية لا تتوافق مع تعريف غازدار بالمعنى الدقيق، انظر [ ملاحظة 3 ].
مراجع
- 1 2 هوبكروفت، جون إي .؛ جيفري د. أولمان (1979). مقدمة في نظرية الأوتوماتا واللغات والحوسبة . أديسون-ويسلي. ISBN 978-0-201-02988-8.
- ↑ هوبكروفت وأولمان (1979)، [ 1 ] القسم 14.3، ص 389-390. تم حذف هذا القسم في الطبعة الثانية لعام 2003.
- ↑ أهو، ألفريد (1968). "القواعد المفهرسة - امتداد للقواعد الخالية من السياق" . مجلة ACM . 15 (4): 647-671 . doi : 10.1145/321479.321488 . S2CID 9539666 .
- 1 2 هاياشي، تاكيشي (1973). "حول أشجار الاشتقاق للقواعد المفهرسة: امتداد لنظرية uvwxy " . منشورات معهد البحوث للعلوم الرياضية . 9 : 61-92 . doi : 10.2977/prims/1195192738 .
- ↑ هوبكروفت وأولمان (1979)، [ 1 ] ملاحظات ببليوغرافية، ص 394-395
- ↑ ألفريد أهو (1969). "أتمتة المكدس المتداخلة" . مجلة ACM . 16 (3): 383-406 . doi : 10.1145/321526.321529 . S2CID 685569 .
- ↑ مايكل ج. فيشر (1968). "قواعد نحوية ذات إنتاجات شبيهة بالوحدات الكبيرة". وقائع الندوة السنوية التاسعة لمعهد مهندسي الكهرباء والإلكترونيات حول نظرية التبديل والأتمتة (SWAT) . الصفحات 131-142 . doi : 10.1109/SWAT.1968.12 .
- ↑ شيلا أ. غريباخ (1970). "لغات AFL الكاملة والاستبدال التكراري المتداخل" . المعلومات والتحكم . 16 (1): 7-35 . doi : 10.1016/s0019-9958(70)80039-0 .
- ↑ تي إس إي مايباوم (1974). "مقاربة معممة للغات الرسمية" . مجلة علوم الحاسوب والنظم . 8 (3): 409-439 . doi : 10.1016/s0022-0000(74)80031-0 .
- ↑ روبرت هـ. جيلمان (1996). "مبدأ الانكماش للغات المفهرسة". علوم الحاسوب النظرية . 163 ( 1-2 ): 277-281 . arXiv : math/9509205 . doi : 10.1016/0304-3975(96)00244-7 . S2CID 14479068 .
- ↑ روبرت هـ. جيلمان (سبتمبر 1995). "مبدأ الانكماش للغات المفهرسة". arXiv : math/9509205 .
- 1 2 ستوداشر، بيتر (1993)، "آفاق جديدة تتجاوز حرية السياق: قواعد DI (DIGs) وآلات DI." (ملف PDF) ، المؤتمر السادس للفرع الأوروبي لرابطة اللغويات الحاسوبية (EACL '93) ، الصفحات 358-367
- ↑ ديفيد ج. وير؛ أرافيند ك. جوشي (1988). "قواعد النحو الفئوية التوافقية: القدرة التوليدية وعلاقتها بأنظمة إعادة الكتابة الخطية الخالية من السياق" (ملف PDF) . وقائع الاجتماع السادس والعشرين لجمعية اللغويات الحاسوبية. الصفحات 278-285 .
- ↑ وفقًا لستوداشر (1993، ص 361 يسار، القسم 2.2)، [ 12 ] لم يُستخدم مصطلح "القواعد النحوية المفهرسة الخطية" في ورقة غازدار البحثية لعام 1988، ولكنه ظهر لاحقًا، على سبيل المثال في وير وجوشي (1988). [ 13 ]
- ↑ غازدار، جيرالد (1988). "إمكانية تطبيق القواعد المفهرسة على اللغات الطبيعية". في: يو. رايل وسي. روهرر (محرران). تحليل اللغة الطبيعية والنظريات اللغوية . دراسات في اللغويات والفلسفة. المجلد 35. شركة دي. ريدل للنشر. الصفحات 69-94 . ISBN 978-1-55608-055-5.
- ↑ غازدار (1988)، الملحق، ص 89
- ↑ غازدار 1988، الملحق، ص 89-91
- ↑ فيجاي-شانكر، ك.؛ وير، ديفيد ج. 1994. (1994). "تكافؤ أربعة امتدادات لقواعد اللغة الخالية من السياق" . نظرية الأنظمة الرياضية . 27 (6): 511-546 . doi : 10.1007/bf01191624 . S2CID 12336597 .
{{cite journal}}: صيانة CS1: الأسماء الرقمية: قائمة المؤلفين ( رابط ) - ↑ ص ٥١٧-٥١٨
- ^ يوهان فاك فان بينثيم. أليس تير مولين (2010). دليل المنطق واللغة ( الطبعة الثانية). إلسفير. ص. 404. ردمك 978-0-444-53727-0.
روابط خارجية
- فصل "معالجة اللغات الطبيعية في برولوج" حول القواعد النحوية المفهرسة واللغات
- اللغات الرسمية
- أطر القواعد النحوية
- اللغويات الحاسوبية
