هذه المقالة يتيمة. ساعد بإضافة وصلة إليها في مقالة متعلقة بها
يرجى مراجعة هذه المقالة وإزالة وسم المقالات غير المراجعة، ووسمها بوسوم الصيانة المناسبة.

نموذج تشومسكي الطبيعي

من ويكيبيديا، الموسوعة الحرة
اذهب إلى: تصفح، ‏ ابحث
N write.svg
هذه مقالة غير مراجعة. ينبغي أن يزال هذا القالب بعد أن يراجعها محرر ما عدا الذي أنشأها؛ إذا لزم الأمر فيجب أن توسم المقالة بقوالب الصيانة المناسبة. (أبريل 2011)

صيغة تشومسكي العادية تسمى اللغة الخالية من السياق في علوم الحاسب الآلي بأنها صيغة تشومسكي العادية (Chomsky normal form)، إذا كانت كافة قواعد إنتاجها على الصيغة:

أو
أو

حيث , و رموزا تمثل قيمة متغيرة، بينما رمزا α يمثل قيمة ثابتة، و S رمز بداية، و ε حقل فارغ. كما أن B أو C لا يمكن أن يمثلا رمز بداية. كل لغة بصيغة تشومسكي العادية خالية من السياق، وبالعكس يمكن تحويل كل لغة خالية من السياق إلى لغة بصيغة تشومسكي العادية. وهناك عدة لوغريتمات معروفة للقيام بمثل هذا التحويل. وتوصف التحويلات في أغلب الكتب الدراسية المتخصصة في نظرية الأتمتة، ومنها كتاب هوبكروفت وأولمان (Hopcroft and Ullman, 1979). وكما بيّن لانغ ولايس، فإن العيب في هذه التحويلات هو أنها قد تؤدي إلى مط غير مرغوب في حجم اللغة. وباستخدام | G | للرمز إلى حجم اللغة الأصلية G، فإن حجم المط في أسوأ الحالات قد يتراوح ما بين | G | 2 إلى 22 | G | ، تبعاً للتحول في اللوغاريتم المستخدم (Lange and Leiß, 2009).

تعريف بديل[عدل]

هناك وسيلة أخرى لتعريف صيغة تشومسكي العادية (Hopcroft and Ullman 1979, and Hopcroft et al. 2006): تكون اللغة الصورية في صيغة تشومسكي المختزلة إذا كانت كل قواعد إنتاجها على الصيغة:

أو

حيث A B C رموز لقيم متغيرة و α رمز لقيمة ثابتة. وباستخدام هذا التعريف قد يكون B و C رمز بداية.

تحويل لغة إلى صيغة تشومسكي العادية[عدل]

  1. أدخل S0
    أدخل متغير بداية جديد ، وقاعدة جديدة ، حيث هي متغير البداية السابق.
  2. قم بحذف جميع القواعد
    القواعد هي قواعد على الصيغة ، حيث و ، بينما V متغير نحر خالي من السياق CFG.
  1. قم بحذف أية قاعدة تكون على يمينها. لكل قاعدة تكون على يمينها قم بإضافة مجموعة من القواعد الجديدة التي تتألف من التجميعات المختلفة الممكنة لـ والتي أبدلت أو لم تبدل بـ . إذا كان لقاعدة A على يمينها، قم بإضافة قاعدة جديدة ، ما لم تكن R قد حذفت بالفعل في هذه العملية. فمثلا، أدرس المثال التالي:

فيما سبق قاعدة واحدة. وعندما نحذف ، نحصل على التالي:

  1. لاحظ أننا ذكرنا كل احتمالات ، وبالتالي ننتهي إلى إضافة 3 قواعد.
  2. احذف كافة قواعد الوحدة

بعد حذف كل قواعد ε، يمكنك أن تبدأ في حذف قواعد الوحدة، أو القواعد التي يحتوي حدها الأيمن على متغير واحد ولا يحتوي رموزاً لقيم ثابتة (وهو ما يتسق مع صيغة تشومسكي العادية).

  1. لحذف
    أضف القاعدة ، ما لم تكن قاعدة وحدة تم حذفها بالفعل.
  1. قم بتنقية القواعد المتبقية التي ليست على صيغة تشومسكي العادية

قم باستبدال بـ ، حيث متغيرات جديدة. إذا ، قم باستبدال في القواعد أعلاه بمتغير جديد ثم أضف القاعدة .

انظر أيضا[عدل]

نموذج جريباخ الطبيعي خوارزمية CYK

فيديو[عدل]

مراجع[عدل]

  • John E. Hopcroft, Rajeev Motwani, and Jeffrey D. Ullman. Introduction to Automata Theory, Languages, and Computation, 3rd Edition, Addison-Wesley, 2006. ISBN 0-321-45536-3. (See subsection 7.1.5, page 272.)
  • John E. Hopcroft and Jeffrey D. Ullman, Introduction to Automata Theory, Languages and Computation, Addison-Wesley Publishing, Reading Massachusetts, 1979. ISBN 0-201-02988-X. (See chapter 4.)
  • Michael Sipser (1997). Introduction to the Theory of Computation. PWS Publishing. ISBN 0-534-94728-X.  (Pages 98–101 of section 2.1: context-free grammars. Page 156.)
  • John Martin (2003). Introduction to Languages and the Theory of Computation. McGraw Hill. ISBN 0-07-232200-4.  (Pages 237–240 of section 6.6: simplified forms and normal forms.)
  • Michael A. Harrison (1978). Introduction to Formal Language Theory. Addison-Wesley. ISBN 978-0201029550.  (Pages 103–106.)
  • Lange, Martin and Leiß, Hans. To CNF or not to CNF? An Efficient Yet Presentable Version of the CYK Algorithm. Informatica Didactica 8, 2009. ((pdf)
  • Cole, Richard. Converting CFGs to CNF (Chomsky Normal Form), October 17, 2007. (pdf)
  • Sipser, Michael. Introduction to the Theory of Computation, 2nd edition.