الإنتاج (علوم الحاسب): الفرق بين النسختين

[نسخة منشورة][نسخة منشورة]
تم حذف المحتوى تمت إضافة المحتوى
لا ملخص تعديل
JarBot (نقاش | مساهمات)
سطر 1:
'''الإنتاج''' أو '''قاعدة الإنتاج''' {{إنج|Production}} في [[علم الحاسوب]] هي [[قاعدة إعادة كتابة]]. والتي تصف أو تحدد استبدال أو اشتقاق رمز (على الغالب يكون رمز يمكننا الاشتقاق منه) لأكثر من مرة للوصول إلى جملة مطلوبة. لا ينبغي الخلط بينه وبين [[نظام الإنتاج (علوم الكمبيوتر)]].
 
(P) هي مجموعة منتهية أو محددة  يعتبر  المكون الرئيسي من مكونات [[القواعد الرسمية]] (خاصة قواعد [[اللغة التوليدية]]). المكونات الأخرى (N) عبارة عن مجموعة منتهية من (nonterminal) رموز [[القابلة للاشتقاق]] و [[مجموعات متفارقة]] عن N تعرف بال (α)، والرموز الغير [[قابلة للاشتقاق]](terminal) (Σ)، ورمز البداية والذي يعتبر رمز قابل للاشتقاق S ∈ N.
 
في [[القواعد غير مقيدة]]، سيكون الإنتاج في الشكل التالي u → v حيث إن   u و v عبارة عن [[كلمة (علم الحاسوب النظري)|سلسلة من الرموز]] القابلة للاشتقاق (α) والغير قابلة للاشتقاق  (Σ ،u) قد لا تكون [[سلسلة فارغة]]،  وإذا كانت V  هي سلسلة فارغة هذا يدل رمز ε أو λ. لذا فان الانتاجات هي من أعضاء [[جداء ديكارتي]]
سطر 9:
</math>
 
حيث V:=N ∪ Σ هي مفردات، ∗ هي [[نجمة كلين|نجمة كيلين]] لدلاله على  أن  الرمز إما انه لا يتكرر أبدا أو انه يتكرر مرة أو أكثر من مرة (صفر أو أكثر )  يشير إلى [[مجموعة من السلسلة]] و ∪ يدل على [[اتحاد (نظرية المجموعات)]]. إذا لم نسمح بوضع رمز البداية في v(الكلمة على الجانب الأيمن ) سيتطلب منا استبدال *V  بـ *( V ∖ { S } ) على الجانب الأيمن من رمز [[جداء ديكارتي]].<ref>[http://users.informatik.uni-halle.de/~ahyjb/dis.pdf Prioritatszahlerautomaten] und die Synchronisation von Halbspursprachen {{Webarchive|url=https://web.archive.org/web/20180117143012/http://users.informatik.uni-halle.de/~ahyjb/dis.pdf |date=17 يناير 2018}}</ref>
 
الأنواع الأخرى من القواعد الرسمية في تسلسل [[هرم جومسكي]] تفرض قيودًا إضافية على ما يشكل الإنتاج. وبشكل خاص في [[قواعد خالية من السياق]]، يجب أن يكون الجانب الأيسر من الإنتاج رمزًا واحدًا غير دائم. لذلك يتم إنتاج النموذج:
سطر 26:
على سبيل المثال، افترض أن الأبجدية تتكون من a و b ، مع رمز بداية S ، ولدينا القواعد التالية
 
نبدأ بـ S عند اختيارنا القاعدة الاولىالأولى فاننا سوف نقوم باستبدال S بaSb سوف نحصل على aSb
 
إذا اخترنا القاعدة 1 مرة أخرى، فإننا نستبدل S بـ aSb ونحصل على السلسلة aaSbb. نكرر هذا العملية إلى ان يتم الوصول إلى سسلسله مكونه من رموز غير قابله للاشتقاق (مثل  aوb) , وعند اختيارنا القاعدة الثانية  فاننا سوف نقوم باستبدال S بـba  و سوف نحصل على aababb
 
باستخدام الرموز <math>S \Rightarrow aSb \Rightarrow aaSbb \Rightarrow aababb</math> لغة القواعد هي مجموعة من كل السلاسل التي يمكن توليدها باستخدام هذه العملية
سطر 34:
<math>\{ba,abab,aababb,aaababbb\}</math>
 
== انظر ايضاأيضا ==
 
* [[آلة ذات حالات منتهية]]