You are on page 1of 29

‫المجلد رقم ‪ ،06‬العدد ‪ ،01‬السنة ‪2015‬‬ ‫المجلة الدولية لعلوم وهندسة الحاسوب باللغة العربية‪،‬‬

‫توليد الجمل العربية باستخدام‬


‫لغة برولوغ‬

‫رضا بابا أحمد‬

‫جامعة معسكر‪ ،‬كلية اآلداب( واللغات‪ ،‬الجزائر‬

‫البريد االلكتروني‪redalog@yahoo.fr :‬‬

‫ملخص‬

‫توليد الجمل أحد ميادين المعالجة اآللية للغات الطبيعية يحتاج إليه كثير من األنظم ة‪ ،‬يتم‬
‫فيه إنشاء شكل لساني انطالقا من تمثيل داللي مرورا بع دة تم ثيالت تركيبي ة وص رفية‪.‬‬
‫على مستوى البنية التركيبية للجملة العربي ة ‪-‬س واء الفعلي ة منه ا أو االس مية بأنواعه ا‪-‬‬
‫‪11‬‬
‫توليد الجمل العربية باستخدام لغة برولوغ‬ ‫رضا بابا أحمد‪،‬‬

‫تُطرح مشكلة اختيار الوحدات المعجمية والمطابق ة واالق تران فيم ا بينه ا لتك وين جم ل‬
‫سليمة البناء ومتدا َول استعمالها عند المتكلِّمين‪ .‬الهدف من هذه الدراس ة ه و تحقي ق ه ذه‬
‫العملية بطريقة آلية‪ ،‬وذلك باالعتماد على إحدى لغات البرمجة (برولوغ)‪ .‬من أجل ذلك‪،‬‬
‫اتبعنا منهجية تقوم على ما يلي‪ :‬تبيين أهمي ة لغ ة برول وغ في دراس ة العربي ة وع رض‬
‫النموذج التركيبي الذي تنبني عليه الجملة العربية‪ ،‬ثم العمل على تحوي ل البني ة الجبري ة‬
‫للجملة ‪-‬كم ا يص وغها النح و التولي دي والنح و الع ربي‪ -‬إلى بني ة منطقي ة ليس هل تنفي ذ‬
‫البرنامج‪ ،‬وقد أتينا بأمثلة عن جمل فعلية واسمية متعددة البناء‪ .‬يُستنتج من ه ذه الدراس ة‬
‫أن لغة برولوغ وس يلة مالئم ة لتمثي ل المكون ات والتعب ير عن مختل ف العالق ات داخ ل‬
‫الجملة‪ ،‬كما أنها تساعد على ح ِّل مشكل المطابقة فيما بين تل ك المكون ات‪ .‬وعلى اعتب ار‬
‫أن البرمج ة الحاس وبية تس اعدنا على فهم عملي ة التولي د الطبيعي ة للجم ل‪ ،‬أك دت ه ذه‬
‫الدراسة على بعض النظريات النحوية حول بناء الجمل العربية‪.‬‬

‫الكلمات الجوهرية‪ :‬توليد اللغة الطبيعية‪ ،‬الجملة العربية‪ ،‬لغة برولوغ‪.‬‬

‫‪ 1‬مقدمة‬

‫إن التولي د اآللي للجم ل ه و ال ذي يتن اول إنتاجه ا بطريق ة اص طناعية أي باس تخدام‬
‫الحاسوب‪ .‬ألجل تحقيق هذه العملي ة يجب أن نت وفر على وص ف دقي ق ليس فق ط ح ول‬
‫بناء الجملة ولكن حول كيفية تأسيس هذا البناء من ذ أن ك ان ش بكة من المف اهيم وتنظيم ا‬
‫من الوحدات المعجمية إلى أن يصير سلسلة من األص وات المنطوق ة أو المكتوب ة‪ .‬ولق د‬
‫ز َّودنا النحاة واللسانيون بكثير من النظريات حول هذه العملي ة ال تي تحت اج إلى ص ياغة‬
‫رياضية ومنطقية حتى يمكن توظيفه ا في الحاس وب‪ .‬يتن اول ه ذا البحث جانب ا من ه ذه‬
‫العملي ة في اللغ ة العربي ة أال وه و تنظيم الوح دات المعجمي ة وربطه ا بواس طة قواع د‬
‫المطابقة من أجل الحصول على جم ل تتس م بالقواعدي ة والمقبولي ة أي تتص ف بس المة‬
‫التركيب واستحسانه عند المتكلمين باللغة العربي ة‪ .‬ومعل وم أن ه ت َّم اق تراح مجموع ة من‬
‫‪12‬‬
‫المجلد رقم ‪ ،06‬العدد ‪ ،01‬السنة ‪2015‬‬ ‫المجلة الدولية لعلوم وهندسة الحاسوب باللغة العربية‪،‬‬

‫الوسائل لصياغة الجملة العربية صياغة جبري ة من خالل النح و التولي دي‪ ،‬لكن برمج ة‬
‫هذه العملية بلغة برولوغ تقتضي ترجمة تلك البنى الجبرية إلى بنى منطقية ألن برول وغ‬
‫ي م دى‬ ‫يعتمد على المنطق من الدرجة األولى في التعبير عن مختل ف العب ارات‪ .‬ف إلى أ ِّ‬
‫يمكن أن نعتمد على هذه الطريقة التي يتبعها برولوغ في إنش اء جم ل عربي ة ؟ في ه ذه‬
‫الدراسة نحاول أن نجيب عن هذا التساؤل‪ .‬ومن أجل ذلك اتبعنا الخطة التالية‪ :‬أوال تبيين‬
‫أهمي ة اس تخدام لغ ة برمجي ة منطقي ة لتمثي ل الوح دات والعالق ات في اللغ ة العربي ة‪،‬‬
‫ولتشغيلها في تحلي ل الكالم أو إنتاج ه‪ ،‬وثاني ا ع رض نم وذج الجمل ة العربي ة في اللغ ة‬
‫العربية الذي عمل النح و التولي دي على ص ياغته ص ياغة ص ورية انطالق ا من وص ف‬
‫النحاة واللسانيين‪ .‬لكن هذا النموذج ال يمكن برمجته في الحاسوب ما لم يخضع لص ياغة‬
‫أخ رى منطقي ة تعم ل على ترجم ة بني ة الجمل ة الجبري ة إلى بني ة منطقي ة تظه ر فيه ا‬
‫المحموالت ومتعلَّقاتها ح تى يتس نَّى لن ا االس تعانة بلغ ة برول وغ‪ .‬وعلي ه اس تخدمت في‬
‫الجانب التطبيقي هذه اللغ ة في تولي د مجموع ة من الجم ل العربي ة‪ ،‬وهي على الت والي‪:‬‬
‫الجملة االسمية سواء التي يكون العامل فيها االبت داء أو حرف ا ناس خا‪ ،‬والجمل ة االس مية‬
‫التي خبرها جملة فعلية‪ ،‬وأخيرا الجمل ة الفعلي ة‪ .‬وق د تض منت تل ك ال برامج المنف ذة في‬
‫توليد الجمل تزويد الحاسوب بالبيانات الالزمة التي تمثِّل العناصر المكونة للجمل‪ ،‬وك ذا‬
‫البيانات التي تسمح بالمطابقة بينها من أجل تشكيل جمل سليمة البناء والتركيب‪.‬‬

‫‪ 2‬التوليد اآللي للجمل‬

‫يع ُّد التوليد اآللي للجمل أح د المي ادين المهم ة نظ را الرتباط ه بتطبيق ات حاس وبية ع دة‬
‫ولحاجة جل التطبيقات إليه كالترجمة اآللية‪ ،‬وقواعد البيان ات‪ .‬ه و أح د المج االت ال تي‬
‫تشملها المعالجة اآللية للغات الطبيعية وف رع اللس انيات الحاس وبية‪ ،‬حيث يتم في ه تولي د‬
‫صورة أو شكل لساني انطالقا من بيانات غير لس انية؛ أي يتم في ه إنت اج عب ارة في لغ ة‬
‫معينة ابتداءً من تمثيل صوري لمحتوى داللي‪ .‬وبالتالي‪ ،‬يتضمن التولي د تط وير أنظم ة‬
‫ق ادرة على إنت اج نص وص أو ملفوظ ات متس قة وس ليمة ومفهومة‪ ،‬حيث إن األنظم ة‬
‫‪13‬‬
‫توليد الجمل العربية باستخدام لغة برولوغ‬ ‫رضا بابا أحمد‪،‬‬

‫الحاسوبية المنجزة من أجل تولي د النص وص بط رق آلي ة ترج ع إلى س نوات ‪] .1970‬‬
‫باتمان وزوك‪[2003 ،‬‬
‫يقع هذا الميدان في مفترق الطرق بين علوم الحاسوب والذكاء االص طناعي واللس انيات‬
‫والعلوم المعرفية‪ ،‬ويقابل مجاال آخر يبدو متناظرا معه هو "تحليل اللغة الطبيعية"؛ ف إذا‬
‫كانت عملية التوليد تجري بتحويل المعنى إلى نص‪ ،‬ف إن عملي ة التحلي ل تب دأ من النص‬
‫لتستخرج المعنى الذي يتضمنه‪ .‬لو أجرينا مقارنة بين العمليتين لوج دنا أن إي راد التولي د‬
‫يتميز بتعدده واختالفه (المعنى المعجمي‪ ،‬الداللي‪ ،‬التداولي‪ ،‬الصرفي‪ ،‬التركيبي‪ )...‬وأن‬
‫إصداره هو واحد (النص نفسه)‪ .‬أما في عملية التحليل فنالح ظ العكس إذ يك ون اإلي راد‬
‫(النص) واحدا واإلصدار (المعنى) متعددا ومختلفا‪] .‬بلغير‪[1990 ،‬‬
‫يتألف نظام التوليد من عدة مكونات تهتم بتحديد محتوى النصوص‪ ،‬وتعمل على صياغة‬
‫شكل الرسالة‪ ،‬وتزوِّد النظام بمختلف الض وابط ال تي تعطي لمحت وى الرس الة وبياناته ا‬
‫المفهومية شكال لسانيا سليم البناء والتركيب ومقبوال في اللغة المدروسة‪] .‬رايتر‪2010 ،‬‬
‫[‬
‫سنقوم في ه ذا البحث ب إجراء عم ل تط بيقي يتض من تولي د جم ل عربي ة مرتك زا على‬
‫برمجة مباشرة؛ أي انطالقا من بيانات تمثل الكلمات ومن قواعد تركيبية وصرفية تمث ل‬
‫ق وانين المطابق ة بين الكلم ات لتشكِّل جمال‪ ،‬ت ورد كله ا في برن امج حاس وبي‪ ،‬فيج ري‬
‫النظ ام عملي ة التولي د آلي ا‪ .‬من أج ل تحقي ق ذل ك يمكن االعتم اد على لغ ة برول وغ‬
‫الحاسوبية‪.‬‬

‫لغة برولوغ ونموذج الجملة‬ ‫‪3‬‬

‫‪ 1.3‬لغة برولوغ‬

‫تتمتع لغة البرمجة المنطقية برول وغ بع دة خص ائص تجعله ا مفض لة ل دى الب احثين في‬
‫المعالجة اآللية للغات منها‪:‬‬
‫‪14‬‬
‫المجلد رقم ‪ ،06‬العدد ‪ ،01‬السنة ‪2015‬‬ ‫المجلة الدولية لعلوم وهندسة الحاسوب باللغة العربية‪،‬‬

‫‪ -‬أنه ا تحت وي على هياك ل بيان ات عريض ة ومعق دة‪ ،‬يمكن توظيفه ا بس هولة في بن اء‬
‫ال برامج وتغييره ا‪ ،‬مم ا يجع ل من الس هل تمثي ل الب نى التركيبي ة والداللي ة والم داخل‬
‫المعجمية؛‬
‫‪ -‬يمكن للبرنامج المنشأ بهذه اللغة أن يختَبر ويغير نفسه‪ ،‬فتسمح هذه الخاصية باس تعمال‬
‫مناهج مجردة للبرمجة‪.‬‬
‫‪ -‬برول وغ مع ّد لتمثي ل المع ارف ال تي تمَّت ص ورنتها ب المنطق من الدرجة األولى‪،‬‬
‫وامتدادات هذا المنطق سهلة التنفيذ؛‬
‫‪ -‬هي تستخدم في كل أنواع المحلالت؛‬
‫‪ -‬تقنية التوحيد متضمنة فيه ا‪ ،‬ه ذه التقني ة يمكن أن تس اهم في ص ياغة هياك ل البيان ات‬
‫خطوة خطوة وال يهم فيها ترتيب المراحل‪] .‬كوفنغتون‪[ 2013 ،‬‬
‫صممت لغة برولوغ في بدايات سنوات ‪ 1970‬على يد كولمروور‪ ،‬وك ان الغ رض‬ ‫ولقد ِّ‬
‫من تص ميمها برمج ة نظ ام لالتص ال بين اإلنس ان واآلل ة‪ ،‬وللمعالج ة اآللي ة للغ ات‬
‫الطبيعية‪ .‬ترتكز هذه اللغة على المنطق الصوري خاصة على حساب األخب ار‪].‬س تيهلي‬
‫وهشارد‪ [1989 ،‬وقد كتبت لهذه اللغة منذ تصميمها عدة مترجمات ذات قواعد تركيبي ة‬
‫مختلفة‪ ،‬من أشهرها ‪- SWI-Prolog‬وهو المعتمد في هذه الدراسة‪.-‬‬
‫وتجدر اإلشارة إلى أن عب د ذي اب العجيلي ق د يك ون من أوائ ل الب احثين الع رب ال ذين‬
‫حاولوا تحليل اللغة العربية باس تخدام لغ ة برول وغ‪ ،‬وذل ك في كتاب ه "الحاس وب واللغ ة‬
‫العربية"‪ ،‬وقد تناول فيه معالج ة العربي ة في مس توياتها التحليلي ة والتركيبي ة‪ ،‬والنحوي ة‬
‫والصرفية‪ ،‬والداللية واألسلوبية‪ ،‬والهجائية‪ ،‬باإلضافة إلى تعرضه للترجمة الفورية بين‬
‫العربية وغيرها من اللغات‪] .‬العناتي والجبر‪[2007 ،‬‬
‫باإلضافة إلى ذلك‪ ،‬فإن هناك دراسة حاولت تشغيل اللغة العربية باستخدام لغة برول وغ‪،‬‬
‫لكن بغرض صياغة المحلالت التركيبي ة للجم ل‪ .‬ه ذه الدراس ة ت رمي إلى إنش اء محل ل‬
‫للجم ل االس مية والفعلي ة العربي ة وسمِّي ه ذا المحل ل بـ‪ ،PANVS‬وه و يت ألف من‬
‫المكونات التالية‪:‬‬
‫‪ -‬نظام بين ّي مع المستخدم؛‬
‫‪15‬‬
‫توليد الجمل العربية باستخدام لغة برولوغ‬ ‫رضا بابا أحمد‪،‬‬

‫‪ -‬محلل معجمي؛‬
‫‪ -‬معجم؛‬
‫‪ -‬محلل صرفي؛‬
‫‪ -‬مدقق لألخطاء اإلمالئية؛‬
‫‪ -‬محلل تركيبي‪.‬‬
‫ومن أج ل تمثي ل مختل ف المع ارف النحوي ة العربي ة‪ ،‬تمَّت االس تعانة بأنح اء القض ية‬
‫المحددة‪ ،‬والتي تسمح بكتابة األنحاء المركبية في ش كل عب ارات منطقي ة به دف تش غيل‬
‫النظام عند استخدام لغة برولوغ‪] .‬الدايمي وعبد األمير‪[1994 ،‬‬

‫‪ 2.3‬النموذج التركيبي للجملة‬

‫تتألف الجملة من مركبات تتكون هي ب دورها من وح دات لك ل منه ا رتب ة مح ددة‪ .‬وق د‬
‫بينت النظرية النحوية العربية بأن لكل وحدة لسانية موضعا داخل الجملة‪ ،‬حتى لو تغ ير‬
‫ترتيب تلك الوحدات أو موقعه ا داخ ل الجمل ة من أج ل أغ راض ومقاص د معين ة‪ ،‬ف إن‬
‫مواضعها تبقى محفوظة‪.‬‬
‫إن الترتيب األصلي للجمل يبقى مدار اختالف بين اللسانيين؛ ففيما يعت بر كرين برك ب أن‬
‫الرتبة األصلية في اإلنجليزية هي 'فاعل فعل مفعول'‪ ،‬يق ترح مكك ولي أن تك ون الرتب ة‬
‫األصلية فيها هي 'فعل فاعل مفع ول'‪ .‬وأم ا في العربي ة‪ ،‬فيمي ل كرين برك إلى أن الرتب ة‬
‫األص لية فيه ا هي 'فع ل فاع ل مفع ول'‪ ،‬وتبع ه على ذل ك الفاس ي الفه ري‪ ،‬غ ير أن‬
‫تشومسكي ينكر وجود لغات من هذا النمط‪ ،‬اللهم إال أن تكون محوَّلة من الرتبة األصلية‬
‫'فاعل فعل مفعول'‪] .‬الفاسي الفهري‪[1985 ،‬‬
‫وعلى ذلك يقوم الباحثون بتحليل الجملة العربي ة إلى ش كلين‪ :‬الجمل ة االس مية ال تي تب دأ‬
‫باسم‪ ،‬والجملة الفعلية التي تبدأ بفعل‪:‬‬
‫‪16‬‬
‫المجلد رقم ‪ ،06‬العدد ‪ ،01‬السنة ‪2015‬‬ ‫المجلة الدولية لعلوم وهندسة الحاسوب باللغة العربية‪،‬‬

‫جملة اسمية ← ‪ #‬اسم ‪.# .............‬‬


‫جملة فعلية ← ‪ #‬فعل ‪.# .............‬‬
‫يمكن القول بالنتيجة‪:‬‬
‫‪ -‬إن الجملة الفعلية هي التي يعاد كتابتها إلى مركب فعلي ومركب اسمي‪:‬‬
‫جملة فعلية ← م فعلي م اسمي‬
‫‪ -‬وإن الجملة االسمية هي التي يعاد كتابتها إلى مركبين اسميين ]زكريا‪:[1986 ،‬‬
‫جملة اسمية ← م اسمي م اسمي‬
‫بالمقابل‪ ،‬يقترح الحاج صالح نموذجا أكثر تجري دا يض م الش كلين الس ابقين معًا ]الح اج‬
‫صالح‪:[2007 ،‬‬
‫‪[(g → np1) ± np2] ± d‬‬

‫حيث‪:‬‬
‫‪ :g‬العامل؛ ‪ :np1‬المعمول األول؛ ‪ :np2‬المعمول الثاني؛ ‪ :d‬المخصص؛‬
‫‪ gp‬زوج مرتب أو مركب =‪(g → np1) ‬‬
‫‪ n‬النواة =‪[(g → np1) ± np2] ‬‬
‫وعلى هذا تكون في الجملة االسمية العناصر التالية‪:‬‬
‫‪( g = 0 -‬مثال‪ :‬السماء صافية)؛‬
‫‪ = g -‬إن (مثال‪ :‬إن الصدقة تمحو الخطيئة)‪.‬‬
‫والجملة الفعلية تتكون من عدة عناصر لكن يكون العامل فيها فعال‪:‬‬
‫‪ = g -‬كتب (مثال‪ :‬كتبت التلميذة على السبورة)‪.‬‬
‫‪ = g -‬تذهب (مثال‪ :‬تذهِب الفرحة الحزن)‪...‬‬
‫وبالتالي‪ ،‬يكون الترتيب األصلي للجملة العربية على الشكل‪' :‬عام ل معم ول‪ 1‬معم ول‪2‬‬
‫مخصص'‪ ،‬وأبس ط تحقق ات ه ذا ال ترتيب تك ون في الجمل ة االس مية المكون ة من مبت دأ‬
‫وخبر‪ ،‬ومنها تتفرع كل التحقق ات األخ رى الممكن ة‪ ،‬وذل ك ألن ه في ه ذه الجمل ة ينع دم‬
‫العامل اللفظي ويمكن االس تغناء عن المخص ص‪ ،‬ب ل على المعم ول‪ 2‬أيض ا‪ ،‬وتحت وي‬
‫‪17‬‬
‫توليد الجمل العربية باستخدام لغة برولوغ‬ ‫رضا بابا أحمد‪،‬‬

‫المركبات فيها على أقل م ا يمكن من العناص ر كم ا في قول ه تع الى‪َ ﴿ :‬ولَئِن َس أ َ ْلتَهُم َّم ْن‬
‫َخلَقَهُ ْم لَيَقُولُ َّن هللاُ﴾ (الزخرف‪ ،)87 ،‬الش اهد في ه ذه اآلي ة الكريم ة ه و اإلتي ان بجمل ة‬
‫اسمية ال تحتوي إال على مركب اسمي هو المبتدأ مك َّون من لفظ الجاللة "هللا"‪.‬‬
‫وعليه وباالعتماد على األنحاء الص ورية المس تخدمة ض من المعالج ة اآللي ة للغ ات في‬
‫تحليل الجمل‪ ،‬يمكن اعتبار القواعد التي تولد الجمل العربية قواعد صورية يرم ز له ا بـ‬
‫‪ ،G‬وهي تنتج ك ل الجم ل العربي ة الس ليمة من حيث ال تركيب أي جمال قواعدي ة ليس‬
‫غير‪ ،‬وهي معرفة كاآلتي‪:‬‬
‫ُ‬
‫‪G = ({P, n, gp, g, np1, np2, d},‬‬
‫)}‪}, R, P‬إن‪ ,‬الجو‪ ,‬بارد‪ ,‬جدا{‬

‫بحيث‪:‬‬
‫* ‪ :P‬هو العنصر االبتدائي‪.‬‬
‫* {‪ :}P, n, gp, g, np1, np2, d‬هي مجموع ة الرم وز الالنهائي ة أو مجموع ة‬
‫المتغيرات‪.‬‬
‫* }إن‪ ,‬الجو‪ ,‬بارد‪ ,‬جدا{‪ :‬هي مجموعة الرموز النهائية‪.‬‬
‫* ‪ :R‬هو مجموعة منتهية من قواعد إعادة الكتابة‪.‬‬
‫* قواعد إعادة الكتابة هي على الشكل‪:‬‬
‫;‪R = { P  n d; n  gp np2‬‬
‫; إن ‪gp  g np1; g ‬‬
‫; بارد ‪ ; np2 ‬الجو ‪np1 ‬‬
‫} جدا ‪d ‬‬
‫النحو التوليدي للجمل العربية هو نحو السياقي حسب تراتبي ة تشومس كي؛ بم ا أن إنت اج‬
‫اللغة يتم بالتحديد عبر رمز غ ير نه ائي عن اليس ار وسلس لة غ ير معدوم ة عن اليمين‪،‬‬

‫‪18‬‬
‫المجلد رقم ‪ ،06‬العدد ‪ ،01‬السنة ‪2015‬‬ ‫المجلة الدولية لعلوم وهندسة الحاسوب باللغة العربية‪،‬‬

‫وأن هذه العملية تتم في كل الس ياقات وليس فق ط في ه ذا الس ياق‪ ،‬فك ل ‪ gp‬يمكن إع ادة‬
‫كتابته على شكل ‪ g np1‬في كل السياقات‪.‬‬
‫إن ه ذه األنح اء تس مح ب التعرف على الجم ل القواعدي ة (الس ليمة من حيث ال تركيب)‪،‬‬
‫وبتمثيل هذه الجمل في شجرات (الشكل‪ ،)1‬كما أن له ا ت أويال إثباتي ا يتالقى م ع طبيع ة‬
‫لغة برولوغ البرمجية‪ ،‬والتي تتضمن إمكانية وصف بنية العناصر اللس انية بمع زل عن‬
‫عملية المعالجة‪.‬‬
‫‪P‬‬

‫‪d‬‬ ‫‪n‬‬

‫‪np2‬‬ ‫‪gp‬‬

‫‪np1‬‬ ‫‪g‬‬

‫الجو بارد جدا‬ ‫إن‬

‫الشكل ‪ .1‬الشجرة التركيبية للجملة‬

‫تحتاج عملية تنفيذ توليد الجمل إلى تحويل هذه البنى الجبرية التركيبي ة إلى ب نى منطقي ة‬
‫من أجل أن تسهل برمجتها بلغة برولوغ (الجدول‪:)1‬‬

‫البنية المنطقية‬ ‫البنية التركيبية‬

‫‪np(X):- d(Y), n(Z), concat(Y,Z,X).‬‬ ‫‪NP  D N‬‬


‫‪19‬‬
‫توليد الجمل العربية باستخدام لغة برولوغ‬ ‫رضا بابا أحمد‪،‬‬

‫الجدول ‪ .1‬تحويل البنية الجبرية إلى بنية منطقية‬

‫في الخانة األولى ‪ :NP‬مركب اسمي‪ :D ،‬محدد‪ :N ،‬اسم‪ : ،‬رمز قاعدة إعادة الكتاب ة‪،‬‬
‫مثال "الـبنت"؛‬
‫في الخانة الثانية هذه العبارة المنطقية معناها أن سلسلة من الكلمات ‪ X‬هي مركب اسمي‬
‫إذا وجدت هناك سلسلة ‪ Y‬تكون محدِّدا‪ ،‬وسلسلة ‪ Z‬تكون اسما‪ ،‬وإذا ك انت ‪ X‬هي ال تي‬
‫تصل بين ‪ Y‬و‪.Z‬‬

‫تنفيذ عملية توليد الجمل‬ ‫‪4‬‬

‫سنقوم فيما يلي وباالعتماد على برنامج برولوغ بتوليد جمل انطالقا من أمثلة عش وائية‪،‬‬
‫ونركز على الجملة الفعلية المتكونة من فعل وفاعل‪ ،‬وعلى الجملة االسمية المتكون ة من‬
‫مبتدأ وخبر (اسم مفرد أو جملة فعلية)‪.‬‬
‫‪ 1.4‬توليد الجمل االسمية‬

‫‪ 1.1.4‬الجمل االسمية المتكونة من مبتدأ وخبر يكون اسما مفردا‪:‬‬


‫وهي أبسط صور التأليف في اللغة العربية إلى ج انب الجمل ة الفعلي ة المتكون ة من فع ل‬
‫وفاعل‪] .‬األنصاري‪ [1963 ،‬وفق نموذج الحاج صالح اآلنف الذكر‪:‬‬
‫‪g = 0‬؛ ‪ = np1‬المبتدأ؛ ‪ = np2‬الخبر؛ ‪.d = 0‬‬
‫أ‪ -‬نقوم بداية بإيراد الوقائع وهي العناصر اللسانية التي ستك ّون الجمل ة االس مية‪ ،‬ف نرمز‬
‫إلى المبتدأ بـ ‪ ،np_1‬وإلى الخبر بـ ‪.np_2‬‬
‫‪1‬‬ ‫‪).‬محمد(‪np_1‬‬
‫‪2‬‬ ‫‪).‬سلمى(‪np_1‬‬
‫‪3‬‬ ‫‪).‬نور(‪np_1‬‬

‫‪20‬‬
‫المجلد رقم ‪ ،06‬العدد ‪ ،01‬السنة ‪2015‬‬ ‫المجلة الدولية لعلوم وهندسة الحاسوب باللغة العربية‪،‬‬

‫‪4‬‬ ‫‪).‬الشمس(‪np_1‬‬
‫‪5‬‬ ‫‪).‬الموقف(‪np_1‬‬
‫‪6‬‬ ‫‪).‬كريم(‪np_2‬‬
‫‪7‬‬ ‫‪).‬كريمة(‪np_2‬‬
‫‪8‬‬ ‫‪).‬مجتهد(‪np_2‬‬
‫‪9‬‬ ‫‪).‬مجتهدة(‪np_2‬‬
‫‪10‬‬ ‫‪).‬مزدحم(‪np_2‬‬
‫‪11‬‬ ‫‪).‬مشرقة(‪np_2‬‬

‫ب‪ -‬ن ورد البيان ات الخاص ة بن وع تل ك العناص ر اللس انية (م ذكر أو م ؤنث) ح تى تتم‬
‫المطابقة بين المبتدأ والخبر‪ ،‬كما يمكن أن نزوِّده ببيانات العدد (مفرد‪ ،‬مثنى‪ ،‬جمع)‪.‬‬
‫‪12‬‬ ‫‪,masculine).‬محمد(‪gender‬‬
‫‪13‬‬ ‫‪,masculine).‬كريم(‪gender‬‬
‫‪14‬‬ ‫‪,masculine).‬مجتهد(‪gender‬‬
‫‪15‬‬ ‫‪,feminine).‬سلمى(‪gender‬‬
‫‪16‬‬ ‫‪,masculine).‬الموقف(‪gender‬‬
‫‪17‬‬ ‫‪,feminine).‬نور(‪gender‬‬
‫‪18‬‬ ‫‪,masculine).‬مزدحم(‪gender‬‬
‫‪19‬‬ ‫‪,feminine).‬كريمة(‪gender‬‬
‫‪20‬‬ ‫‪,feminine).‬الشمس(‪gender‬‬
‫‪21‬‬ ‫‪,feminine).‬مجتهدة(‪gender‬‬
‫‪22‬‬ ‫‪,feminine).‬مشرقة(‪gender‬‬

‫ج‪ -‬وبعد ذلك‪ ،‬نحدِّد القواعد الخاصة بالمطابقة بين المبتدأ والخبر في النوع‪:‬‬
‫‪23‬‬ ‫‪accord(X,Y) :- gender(X,Z),‬‬ ‫‪gender(Y,Z).‬‬

‫كم ا ه و معل وم‪ :‬تك ون المطابق ة بين المبت دأ والخ بر في الن وع والع دد إال في بعض‬
‫الحاالت‪.‬‬
‫د‪ -‬نح دِّد قواع د تولي د الجم ل‪ ،‬وقواع د كتابته ا‪ ،‬وتعميم ه ذه القواع د على ك ل الجم ل‬
‫الممكنة‪.‬‬
‫‪21‬‬
‫توليد الجمل العربية باستخدام لغة برولوغ‬ ‫رضا بابا أحمد‪،‬‬

‫‪24‬‬ ‫‪sentence(X,Y): np_1(X),np_2(Y),accord(X,Y).‬‬


‫‪25‬‬ ‫‪sentence1(_) : sentence(X, Y),write(X),write(' '),write(Y), nl.‬‬
‫‪26‬‬ ‫‪sentences : findall(X,sentence1(X), _).‬‬

‫وأخيرا‪ ،‬نطلب من البرنامج تكوين الجمل‪.‬‬


‫‪? sentences.‬‬
‫فتكون إجابة البرنامج كاآلتي‪:‬‬
‫‪1‬‬ ‫كريم‬ ‫محمد‬

‫‪2‬‬ ‫مجتهد‬ ‫محمد‬

‫‪3‬‬ ‫مزدحم‬ ‫محمد‬

‫‪4‬‬ ‫كريمة‬ ‫سلمى‬

‫‪5‬‬ ‫مجتهدة‬ ‫سلمى‬

‫‪6‬‬ ‫مشرقة‬ ‫سلمى‬

‫‪7‬‬ ‫كريمة‬ ‫نور‬

‫‪8‬‬ ‫مجتهدة‬ ‫نور‬

‫‪9‬‬ ‫مشرقة‬ ‫نور‬

‫‪10‬‬ ‫كريمة‬ ‫الشمس‬

‫‪11‬‬ ‫مجتهدة‬ ‫الشمس‬

‫‪12‬‬ ‫مشرقة‬ ‫الشمس‬

‫‪13‬‬ ‫كريم‬ ‫الموقف‬

‫‪14‬‬ ‫مجتهد‬ ‫الموقف‬

‫‪15‬‬ ‫مزدحم‬ ‫الموقف‬

‫‪22‬‬
‫المجلد رقم ‪ ،06‬العدد ‪ ،01‬السنة ‪2015‬‬ ‫المجلة الدولية لعلوم وهندسة الحاسوب باللغة العربية‪،‬‬

‫المالحظ بأن البرنامج قد قام بتكوين كل الجمل الممكنة انطالق ا من البيان ات ال تي قدِّمت‬
‫إليه‪ ،‬وبالطريقة التي أرشد إليها من خالل القواعد‪ ،‬وبالت الي ولَّد جمال س ليمة ال تركيب‪،‬‬
‫لكن الالفت لالنتباه أن بعض تلك الجمل سليمة التركيب غير مقبول لدى المتكلمين نظرا‬
‫لعدم صحة االرتباط بين السمات الداللية بين المبتدأ والخبر‪:‬‬
‫‪1‬‬ ‫مزدحم‬ ‫محمد‬
‫‪2‬‬ ‫كريمة‬ ‫الشمس‬
‫‪3‬‬ ‫مجتهدة‬ ‫الشمس‬
‫‪4‬‬ ‫كريم‬ ‫الموقف‬
‫‪5‬‬ ‫مجتهد‬ ‫الموقف‬
‫‪6‬‬ ‫مزدحم‬ ‫الموقف‬

‫من أجل تجاوز هذا المشكل نضيف إلى قائمة الوق ائع بيان ات تتعل ق بالحرك ة أو الحي اة‬
‫حتى يتفادى البرنامج تكوين تلك الجمل المتقدمة‪ ،‬ومع ذلك تظل نمذجة الجوانب الثقافي ة‬
‫واالعتقادي ة في غاي ة الص عوبة ح تى نتمكن من تجنب تك وين جم ل مث ل‪ :‬الص ادقون‬
‫زائلون‪ ،‬الظالمون مأجورون‪....‬‬
‫‪1‬‬ ‫‪).‬محمد(‪np_1‬‬
‫‪2‬‬ ‫‪).‬سلمى(‪np_1‬‬
‫‪3‬‬ ‫‪).‬نور(‪np_1‬‬
‫‪4‬‬ ‫‪).‬الشمس(‪np_1‬‬
‫‪5‬‬ ‫‪).‬الموقف(‪np_1‬‬
‫‪6‬‬ ‫‪).‬كريم(‪np_2‬‬
‫‪7‬‬ ‫‪).‬كريمة(‪np_2‬‬
‫‪8‬‬ ‫‪).‬مجتهد(‪np_2‬‬
‫‪9‬‬ ‫‪).‬مجتهدة(‪np_2‬‬
‫‪10‬‬ ‫‪).‬مزدحم(‪np_2‬‬
‫‪11‬‬ ‫‪).‬مشرقة(‪np_2‬‬
‫‪12‬‬ ‫‪,masculine,singular,animate).‬محمد(‪feature‬‬
‫‪13‬‬ ‫‪, masculine, singular,animate).‬كريم(‪feature‬‬
‫‪14‬‬ ‫‪, masculine, singular,animate).‬مجتهد(‪feature‬‬
‫‪15‬‬ ‫‪,feminine, singular,animate).‬سلمى(‪feature‬‬

‫‪23‬‬
‫توليد الجمل العربية باستخدام لغة برولوغ‬ ‫رضا بابا أحمد‪،‬‬

‫‪16‬‬ ‫‪,masculine,singular,non_animate).‬الموقف(‪feature‬‬
‫‪17‬‬ ‫‪,feminine, singular,animate).‬نور(‪feature‬‬
‫‪18‬‬ ‫‪,masculine,singular,non_animate).‬مزدحم(‪feature‬‬
‫‪19‬‬ ‫‪,feminine, singular,animate).‬كريمة(‪feature‬‬
‫‪20‬‬ ‫‪,feminine,singular,non_animate).‬الشمس(‪feature‬‬
‫‪21‬‬ ‫‪,feminine, singular,animate).‬مجتهدة(‪feature‬‬
‫‪22‬‬ ‫‪,feminine,singular,animate).‬مشرقة(‪feature‬‬
‫‪23‬‬ ‫‪,feminine,singular,non_animate).‬مشرقة(‪feature‬‬
‫‪24‬‬ ‫‪accord(X,Y) :- feature(X,A,B,C), feature(Y,A,B,C).‬‬

‫‪25‬‬ ‫‪sentence(X,Y):- np_1(X), np_2(Y), accord(X,Y).‬‬

‫‪26‬‬ ‫‪sentence1(_) :- sentence(X, Y),write(X),write(' '), write(Y), nl.‬‬

‫‪27‬‬ ‫‪sentences :- findall(X, sentence1(X), _).‬‬


‫‪?- sentences.‬‬

‫‪1‬‬ ‫محمد كريم‬


‫‪2‬‬ ‫محمد مجتهد‬
‫‪3‬‬ ‫سلمى كريمة‬
‫‪4‬‬ ‫سلمى مجتهدة‬
‫‪5‬‬ ‫سلمى مشرقة‬
‫‪6‬‬ ‫نور كريمة‬
‫‪7‬‬ ‫نور مجتهدة‬
‫‪8‬‬ ‫نور مشرقة‬
‫‪9‬‬ ‫الشمس مشرقة‬
‫‪10‬‬ ‫الموقف مزدحم‬
‫‪11‬‬ ‫‪true.‬‬

‫‪ 2.1.4‬الجمل االسمية المبدوءة بحرف ناسخ‪:‬‬


‫وهي الجمل االسمية التي دخل عليها حرف ناس خ ينص ب المبت دأ ويرف ع الخ بر‪ ،‬وهي‪:‬‬
‫"أن" ألن له ا أحكام ا خاص ة‪ ،‬باإلض افة إلى الجم ل‬ ‫إن‪ ،‬ليت‪ّ ،‬‬
‫لكن‪ ،‬لع ل‪ ،‬ولم ن ذكر َّ‬ ‫َّ‬
‫االسمية المبدوءة بالحروف المشبهات بـ"ليس"‪ْ ،‬‬
‫(إن‪ ،‬ما‪ ،‬ال) التي ترفع المبتدأ وتنص ب‬
‫الخبر‪ ،‬لكن نقتصر على أمثلة من النوع األول‪ .‬وبالتالي‪ ،‬يكون النموذج على هذا الشكل‪:‬‬

‫‪24‬‬
2015 ‫ السنة‬،01 ‫ العدد‬،06 ‫المجلد رقم‬ ،‫المجلة الدولية لعلوم وهندسة الحاسوب باللغة العربية‬

.d = 0 ،‫ = خبرها‬np2 ‫ = اسمها؛‬np1 ‫ لعل}؛‬،‫لكن‬ ّ ،‫ ليت‬،‫ = {إن‬g


‫ كم ا ن ورد األش كال الجدي دة‬،‫ نضيف إلى الوقائع المتقدمة البيانات الخاص ة بالنواس خ‬-
g_ac)‫ إن عامل نصب ← (إن‬:‫لألسماء السابقة‬
1 g_ac(‫)إن‬.
2 np_1(‫)الطفالن‬.
3 np_1(‫)الطفلين‬.
4 np_2(‫)باكيان‬.
5 np_2(‫)باكيين‬.
6 feature(‫إن‬,masculine,singular,animate,accusative).
7 feature(‫إن‬,feminine,singular,animate,accusative).
8 feature(‫إن‬,masculine,dual,animate,accusative).
9 feature(‫إن‬,feminine,dual,animate,accusative).
10 feature(‫إن‬,masculine,plural,animate,accusative).
11 feature(‫إن‬,feminine,plural,animate,accusative).
12 feature(‫إن‬,masculine,singular,non_animate,accusative).
13 feature(‫إن‬,feminine,singular,non_animate,accusative).
14 feature(‫إن‬,masculine,dual,non_animate,accusative).
15 feature(‫إن‬,feminine,dual,non_animate,accusative).
16 feature(‫إن‬,masculine,plural,non_animate,accusative).
17 feature(‫إن‬,feminine,plural,non_animate,accusative).
18 feature(‫الطفالن‬,masculine,dual,animate,nominative).
19 feature(‫الطفلين‬,masculine,dual,animate,accusative).
20 feature(‫باكيان‬,masculine,dual,animate,nominative).
21 feature(‫باكيين‬,masculine,dual,animate,accusative).

)‫ الج ر‬،‫ النص ب‬،‫المالحظ هنا هو إضافة بيانات جديدة تتعلق بالحاالت اإلعرابية (الرفع‬
.‫نظرا لأن دخول الناسخ يغير إعراب آخر االسمين‬
:‫ وتبقى قواعد الكتابة على حالها‬،‫ وتوليد الجمل‬،‫ نورد القواعد الخاصة بالمطابقة‬-
22 accord(X,Y,Z) :-
feature(X,A,B,C,accusative),
feature(Y,A,B,C,accusative),

25
‫توليد الجمل العربية باستخدام لغة برولوغ‬ ‫رضا بابا أحمد‪،‬‬

‫‪feature(Z,A,B,C,nominative).‬‬
‫‪23‬‬ ‫‪sentence(X,Y,Z) :- g_ac(X), np_1(Y), np_2(Z), accord(X,Y,Z).‬‬
‫‪24‬‬ ‫'(‪sentence1(_) :- sentence(X, Y, Z), write(X), write‬‬ ‫‪'),‬‬
‫'(‪write(Y), write‬‬ ‫‪'), write(Z), nl.‬‬
‫‪25‬‬ ‫‪sentences :- findall(X, sentence1(X), _).‬‬

‫‪?- sentences.‬‬
‫‪1‬‬ ‫باكيان‬ ‫الطفلين‬ ‫إن‬
‫‪2‬‬ ‫‪true.‬‬
‫‪ 3.1.4‬الجمل االسمية التي خبرها جملة فعلية‪:‬‬
‫الجملة االسمية التي يكون خبرها جملة هي التي يسميها النحاة بالجملة الكبرى‪ ،‬ويقابله ا‬
‫الجملة الصغرى وهي التي يكون خبرها مفردا ]األنص اري‪ ،[1995 ،‬والجمل ة المخ بر‬
‫بها قد تكون فعلية أو اسمية‪ ،‬والجملة الفعلية المخبر بها تشبه إلى حد كبير الجملة الفعلية‬
‫مما جعل بعض النحاة يعدونهما شيئا واحدا خاصة الكوفيين الذين يجوزون تقديم الفاع ل‬
‫على فعله‪ ،‬وبذلك تتماثل الجملة الفعلية والجملة االسمية التي خبرها جمل ة فعلي ة عن دهم‬
‫وتبعهم على ذل ك بعض اللس انيين المح دثين‪ ،‬غ ير أن ح االت المطابق ة ت بين أنهم ا‬
‫مختلفان‪ ،‬وسنتعرض إليها فيما يلي‪.‬‬
‫أ‪ -‬إيراد الوقائع الخاصة بالمكونات التي تكون فعال ‪ vp‬أو مبتدأ ‪.np‬‬
‫‪1‬‬ ‫‪).‬محمد(‪np‬‬
‫‪2‬‬ ‫‪).‬سلمى(‪np‬‬
‫‪3‬‬ ‫‪).‬نور(‪np‬‬
‫‪4‬‬ ‫‪).‬يكرم(‪vp‬‬
‫‪5‬‬ ‫‪).‬تكرم(‪vp‬‬
‫‪6‬‬ ‫‪).‬يجتهد(‪vp‬‬
‫‪7‬‬ ‫‪).‬تجتهد(‪vp‬‬
‫‪8‬‬ ‫‪).‬الطفالن(‪np‬‬
‫‪9‬‬ ‫‪).‬الدراجتان(‪np‬‬
‫‪10‬‬ ‫‪).‬تسرعان(‪vp‬‬
‫‪11‬‬ ‫‪).‬يصالن(‪vp‬‬
‫‪12‬‬ ‫‪).‬المدرسون(‪np‬‬
‫‪13‬‬ ‫‪).‬ينشغلون(‪vp‬‬
‫‪14‬‬ ‫‪).‬التلميذات(‪np‬‬

‫‪26‬‬
2015 ‫ السنة‬،01 ‫ العدد‬،06 ‫المجلد رقم‬ ،‫المجلة الدولية لعلوم وهندسة الحاسوب باللغة العربية‬

15 vp(‫)ينتبهن‬.

،‫ مث نى‬،‫ مف رد‬:‫ الع دد‬،‫ م ذكر أو م ؤنث‬:‫ توضيح بيان ات المق والت المم يزة (الن وع‬-‫ب‬
.‫جمع) التي تتطابق فيها المكونات‬
16 feature(‫محمد‬,masculine,singular,animate).
17 feature(‫يكرم‬,masculine,singular,animate).
18 feature(‫يجتهد‬,masculine,singular,animate).
19 feature(‫سلمى‬,feminine,singular,animate).
20 feature(‫نور‬,feminine,singular,animate).
21 feature(‫تكرم‬,feminine,singular,animate).
22 feature(‫تجتهد‬,feminine,singular,animate).
23 feature(‫الطفالن‬,masculine,dual,animate).
24 feature(‫الطفالن‬,masculine,dual,animate).
25 feature(‫يصالن‬,masculine,dual,animate).
26 feature(‫يصالن‬,masculine,dual,non_animate).
27 feature(‫الدراجتان‬,feminine,dual,non_animate).
28 feature(‫تسرعان‬,feminine,dual,animate).
29 feature(‫تسرعان‬,feminine,dual,non_animate).
30 feature(‫المدرسون‬,masculine,plural,animate).
31 feature(‫ينشغلون‬,masculine, plural,animate).
32 feature(‫التلميذات‬,feminine,plural,animate).
33 feature(‫ينتبهن‬, feminine,plural,animate).

‫ وتعميم هذه القواعد‬،‫ وقواعد كتابتها‬،‫ وتوليد الجمل‬،‫ إيراد القواعد الخاصة بالمطابقة‬-‫ج‬
.‫ وأخيرا وضع السؤال‬،‫على كل الجمل الممكنة‬
34 accord(X,Y,Z) :- feature(X,A,B,C), feature(Y, A,B,C),
feature(Z, A,B,C).

35 sentence(X,Y) :- np(X), vp(Y), accord(X,Y,Z).


36 sentence1(_) :- sentence(X, Y), write(X), write(' '),
write(Y), nl.

37 sentences :- findall(X, sentence1(X), _).


?- sentences.

27
‫توليد الجمل العربية باستخدام لغة برولوغ‬ ‫رضا بابا أحمد‪،‬‬

‫د‪ -‬اإلجابة‪.‬‬
‫‪1‬‬ ‫يكرم‬ ‫محمد‬
‫‪2‬‬ ‫يجتهد‬ ‫محمد‬
‫‪3‬‬ ‫تكرم‬ ‫سلمى‬
‫‪4‬‬ ‫تجتهد‬ ‫سلمى‬
‫‪5‬‬ ‫تكرم‬ ‫نور‬
‫‪6‬‬ ‫تجتهد‬ ‫نور‬
‫‪7‬‬ ‫يصالن‬ ‫الطفالن‬
‫‪8‬‬ ‫تسرعان‬ ‫الدراجتان‬
‫‪9‬‬ ‫ينشغلون‬ ‫المدرسون‬
‫‪10‬‬ ‫ينتبهن‬ ‫التلميذات‬
‫‪11‬‬ ‫‪true.‬‬

‫المالحظ هنا أن البرنامج لم يولِّد إال الجمل التي فيها تطابق بين المبتدأ والفع ل من خالل‬
‫الضمير العائد على المبتدأ‪ ،‬وهذا التطابق يكون في النوع والع دد‪ ،‬كم ا أن ه لم يولِّد جمال‬
‫غير مقبولة نظرا لتزويده بالبيانات الخاصة بالحركة‪.‬‬
‫‪ 2.4‬توليد الجمل الفعلية‬

‫نتطرق هنا إلى الجملة الفعلية في أبسط صورها وهي المتكونة من فعل وفاعل‪ .‬وحس ب‬
‫نموذج الحاج صالح تكون كاآلتي‪:‬‬
‫‪ = g‬فعل (ليس بالضرورة أن يكون الزما)؛ ‪ = sn1‬فاعل؛ ‪sn2= 0‬؛ ‪.d = 0‬‬
‫أ‪ -‬إيراد الوقائع الخاصة بالمكونات التي تكون مركبا فعليا ‪ vp‬أو اسميا ‪.np‬‬
‫‪1‬‬ ‫‪).‬محمد(‪np‬‬
‫‪2‬‬ ‫‪).‬سلمى(‪np‬‬
‫‪3‬‬ ‫‪).‬نور(‪np‬‬
‫‪4‬‬ ‫‪).‬يكرم(‪vp‬‬
‫‪5‬‬ ‫‪).‬تكرم(‪vp‬‬
‫‪6‬‬ ‫‪).‬يجتهد(‪vp‬‬
‫‪7‬‬ ‫‪).‬تجتهد(‪vp‬‬

‫‪28‬‬
2015 ‫ السنة‬،01 ‫ العدد‬،06 ‫المجلد رقم‬ ،‫المجلة الدولية لعلوم وهندسة الحاسوب باللغة العربية‬

8 np(‫)الطفالن‬.
9 np(‫)الدراجتان‬.
10 vp(‫)تسرع‬.
11 vp(‫)يصل‬.
12 np(‫)المدرسون‬.
13 vp(‫)ينشغل‬.
14 np(‫)التلميذات‬.
15 vp(‫)تنتبه‬.

.‫ توضيح البيانات التي يتطابق فيها الفعل والفاعل‬-‫ب‬


16 feature(‫محمد‬,masculine,animate).
17 feature(‫يكرم‬,masculine,animate).
18 feature(‫يجتهد‬,masculine,animate).
19 feature(‫سلمى‬,feminine,animate).
20 feature(‫نور‬,feminine,animate).
21 feature(‫نور‬,feminine,non_animate).
22 feature(‫تكرم‬,feminine,animate).
23 feature(‫تجتهد‬,feminine,animate).
24 feature(‫الطفالن‬,masculine,animate).
25 feature(‫يصل‬,masculine,animate).
26 feature(‫يصل‬,masculine,non_animate).
27 feature(‫الدراجتان‬,feminine,non_animate).
28 feature(‫تسرع‬, feminine,animate).
29 feature(‫تسرع‬, feminine,non_animate).
30 feature(‫المدرسون‬,masculine,animate).
31 feature(‫ينشغلون‬,masculine,animate).
32 feature(‫التلميذات‬,feminine,animate).
33 feature(‫ينتبهن‬, feminine,animate).

‫ وتعميم هذه القواعد على‬،‫ وقواعد كتابتها‬،‫ وتوليد الجمل‬،‫ إيراد قواعد مطابقة‬-‫ج‬
.‫ وأخيرا وضع السؤال‬،‫كل الجمل الممكنة‬

29
‫توليد الجمل العربية باستخدام لغة برولوغ‬ ‫رضا بابا أحمد‪،‬‬

‫‪34‬‬ ‫‪accord(X,Y) :- feature(X,A,B),feature(Y,A,B).‬‬

‫‪35‬‬ ‫‪sentence(X,Y) :- vp(X), np(Y), accord(X,Y).‬‬

‫‪36‬‬ ‫'(‪sentence1(_):- sentence(X, Y),write(X),write‬‬ ‫‪'),write(Y), nl.‬‬

‫‪37‬‬ ‫‪sentences :- findall(X, sentence1(X), _).‬‬


‫‪?- sentences.‬‬
‫د‪ -‬اإلجابة‪.‬‬
‫‪1‬‬ ‫محمد‬ ‫يكرم‬
‫‪2‬‬ ‫الطفالن‬ ‫يكرم‬
‫‪3‬‬ ‫المدرسون‬ ‫يكرم‬
‫‪4‬‬ ‫سلمى‬ ‫تكرم‬
‫‪5‬‬ ‫نور‬ ‫تكرم‬
‫‪6‬‬ ‫التلميذات‬ ‫تكرم‬
‫‪7‬‬ ‫محمد‬ ‫يجتهد‬
‫‪8‬‬ ‫الطفالن‬ ‫يجتهد‬
‫‪9‬‬ ‫المدرسون‬ ‫يجتهد‬
‫‪10‬‬ ‫سلمى‬ ‫تجتهد‬
‫‪11‬‬ ‫نور‬ ‫تجتهد‬
‫‪12‬‬ ‫التلميذات‬ ‫تجتهد‬
‫‪13‬‬ ‫سلمى‬ ‫تسرع‬
‫‪14‬‬ ‫نور‬ ‫تسرع‬
‫‪15‬‬ ‫الدراجتان‬ ‫تسرع‬
‫‪16‬‬ ‫التلميذات‬ ‫تسرع‬
‫‪17‬‬ ‫محمد‬ ‫يصل‬
‫‪18‬‬ ‫الطفالن‬ ‫يصل‬
‫‪19‬‬ ‫المدرسون‬ ‫يصل‬

‫إذن‪ ،‬قام البرنامج بتكوين كل الجمل الفعلية الممكنة‪ ،‬وطابق بين الفعل وفاعله في الن وع‬
‫والعدد‪ ،‬وذلك انطالقا من القواعد التي ز ِّود بها‪ ،‬بيد أنه ش ّكل جمال غ ير مقبول ة أيض ا‪،‬‬
‫وذلك لعدم تزويده بقيود داللية تمنع تكوين مثل هذه الجمل‪.‬‬

‫‪30‬‬
‫المجلد رقم ‪ ،06‬العدد ‪ ،01‬السنة ‪2015‬‬ ‫المجلة الدولية لعلوم وهندسة الحاسوب باللغة العربية‪،‬‬

‫وتجدر اإلشارة إلى أن هناك تش ابها بين الجمل تين الفعلي ة واالس مية ال تي خبره ا جمل ة‬
‫فعلية‪ ،‬والفرق يظه ر في أوج ه المطابق ة بحيث إن ه في الجمل ة الفعلي ة ال تط ابق إال في‬
‫الن وع (الت ذكير والت أنيث) ‪ -‬على الغ الب والمش هور من كالم الع رب‪ ،‬وال نأخ ذ في‬
‫االعتبار لغة "أكلوني البراغيث"‪ ،‬التي يتطابق فيها الفعل والفاعل في الع دد أيضا‪ .-‬أم ا‬
‫في الجملة االسمية التي خبره ا جمل ة فعلي ة فتك ون المطابق ة في الن وع والع دد (مف رد‪،‬‬
‫مثنى‪ ،‬جمع) باإلضافة إلى سمة الحركة طبعا‪.‬‬

‫‪ 5‬الخاتمة‬

‫وفي األخ ير‪ ،‬ح اولت ه ذه الدراس ة أن تق وي ع رى التواص ل بين مج الين ق د يب دوان‬
‫متنافرين هما المج ال اللس اني والمج ال الحاس وبي‪ ،‬وهي ت دعو إلى ع دم إبق اء ال درس‬
‫اللغوي حبيس الوصف والتنظير والخروج به إلى التط بيق واالختب ار في المي دان ال ذي‬
‫يمثِّله الحاسوب‪.‬‬
‫وقد مكنتنا عملية التشغيل اآللي من تأكيد فرضية النحاة البص ريين ال تي مفاده ا أن بني ة‬
‫الجملة الفعلية تختلف تماما عن بنية الجمل ة االس مية الك برى ال تي خبره ا جمل ة فعلي ة‪،‬‬
‫وبالمقابل عدم إمكانية التحق ق من فرض ية الكوف يين ال تي تتض من التماث ل بين البني تين‬
‫السابقتين‪ ،‬وه و م ا ع بروا علي ه بج واز تق دم الفع ل على فاعل ه‪ ،‬وق د ظه ر من عملي ة‬
‫البرمجة عدم تماثل البنيتين‪.‬‬
‫كما نشير هنا إلى أن االقتصار على إصدار السمات التركيبية والصرفية ‪-‬وإن كان مفيدا‬
‫في توليد جمل قواعدية‪ -‬ال يكفي إليراد جمل مقبول ة ل دى المتكلمين‪ ،‬وعلي ه نحت اج إلى‬
‫ربط تلك السمات التركيبي ة والص رفية بنظيراته ا من الس مات الداللي ة والتداولي ة ح تى‬
‫تكون العملية مكتملة‪.‬‬

‫‪ 6‬قائمة المراجع‬

‫‪] -1‬األنصاري‪:[1963 ،‬‬


‫‪31‬‬
‫توليد الجمل العربية باستخدام لغة برولوغ‬ ،‫رضا بابا أحمد‬

‫ محم د مح يي‬:‫ تحقي ق‬.‫ شرح قط ر الن دى وب ل الص دى‬.)1963( ‫ابن هشام األنصاري‬
.44 :‫ ص‬.‫ مصر‬،11 .‫ ط‬.‫ مطبعة السعادة‬.‫الدين عبد الحميد‬
:[1995 ،‫ ]األنصاري‬-2
‫ محم د مح يي‬:‫ تحقي ق‬.‫ مغني اللبيب عن كتب األعاريب‬.)1995( ‫ابن هشام األنصاري‬
.437 :‫ ص‬.2 .‫ ج‬.‫ بيروت‬.‫ المكتبة العصرية‬.‫الدين عبد الحميد‬
:[2003 ،‫ ]باتمان وزوك‬-3
John Bateman and Michael Zock (2003). Natural language generation. Ruslan Mitkov
(eds.). The Oxford Handbook of computational linguistics. Oxford University Press. New
York. pp. 285.
:[1990 ،‫ ]بلغير‬-4
Alain Polguère (1990). Structuration et mise en jeu procédurale d'un modèle linguistique
déclaratif dans un cadre de génération de texte. Thèse de doctorat. Université de Montréal.
pp. 6-7.
:[2007 ،‫ ]الحاج صالح‬-5
‫ م وفم‬.‫ بح وث ودراس ات في اللس انيات العربي ة‬.)2007( ‫عبد ال رحمن الح اج ص الح‬
.75-73 :‫ ص‬.‫ الجزائر‬.‫للنشر‬

:[1994 ،‫ ]الدايمي وعبد األمير‬-6


Khalid J. Al Daimi and Maha A. Abdel-Amir (1994). « The syntactic analysis of arabic by
machine ». Computers and Humanities. vol. 28. n° 1. Springer. Netherlands. p. 30.
:[ 2010 ،‫ ]رايتر‬-7
Ehud Reiter (2010). Natural language generation. Alexander Clark (eds.). The Handbook of
computational linguistics and natural language processing. Singapore, Wiley-Blackwell. p.
574.
:[1986 ،‫ ]زكريا‬-8
‫ المؤسس ة‬.‫ األلسنية التوليدية والتحويلية وقواعد اللغة العربية‬.)1986( ‫ميشال زكريا‬
.24 :‫ ص‬.‫ بيروت‬.2 .‫ ط‬.‫الجامعية‬
:[1989 ،‫ ]ستيهليه وهشارد‬-9
Jean-Luc Stehlé et Pierre Hochard (1989). Ordinateurs et langages. Ellipses. Paris. p. 117.
32
‫المجلد رقم ‪ ،06‬العدد ‪ ،01‬السنة ‪2015‬‬ ‫المجلة الدولية لعلوم وهندسة الحاسوب باللغة العربية‪،‬‬

‫]العناتي والجبر‪:[2007 ،‬‬ ‫‪-10‬‬


‫وليد العناتي و خالد الجبر (‪ .)2007‬دليل الباحث إلى اللسانيات الحاس وبية العربي ة‪ .‬دار‬
‫جرير‪ .‬ط‪ .1 .‬عمان‪ .‬ص‪.67 .‬‬
‫]الفاسي الفهري‪:[1985 ،‬‬ ‫‪-11‬‬
‫عب د الق ادر الفاس ي الفه ري (‪ .)1985‬اللس انيات واللغ ة العربية‪ .‬دار توبق ال‪ .‬ط‪.1 .‬‬
‫المغرب‪ .‬ص‪.105 :‬‬
‫]كوفنغتون‪:[ 2013 ،‬‬ ‫‪-12‬‬
‫‪Michael A. Covington (2013). Natural language processing for Prolog programmers.‬‬
‫‪Prentice-Hall. New Jersey. p. 12.‬‬

‫‪ 7‬قائمة المصطلحات المترجمة واألعالم‬

‫الترجمة االنجليزية‬ ‫المصطلح باللغة العربية‬


‫‪Prolog Logical programing‬‬ ‫برولوغ برمجة منطقية‬
‫‪Declarative interpretation‬‬ ‫تأويل إثباتي‬
‫‪Pragmatic‬‬ ‫تداولي (ذرائعي)‬
‫‪Syntactic‬‬ ‫تركيبي‬
‫‪Natural Language Generation‬‬ ‫توليد آلي للغة‬
‫‪Non-animate‬‬ ‫جامد‬
‫‪Dative‬‬ ‫جر‬
‫‪Plural‬‬ ‫جمع‬
‫‪Sentence‬‬ ‫جملة‬
‫‪Animate‬‬ ‫حركة‬
‫‪Semantic‬‬ ‫داللي‬
‫‪Nominative‬‬ ‫رفع‬
‫‪Query‬‬ ‫سؤال‬
‫‪Morphological‬‬ ‫صرفي‬
‫‪Number‬‬ ‫عدد‬
‫‪Cognitive sciences‬‬ ‫علوم معرفية‬
‫‪Grammaticality‬‬ ‫قواعدية‬
‫‪33‬‬
‫توليد الجمل العربية باستخدام لغة برولوغ‬ ،‫رضا بابا أحمد‬

Linguistics )‫لسانيات (علم اللغة‬


Feminine ‫مؤنث‬
Compiler ‫مترجم‬
Dual ‫مثنى‬
Determined ‫محدِّد‬
Masculine ‫مذكر‬
Phrase ‫مر َّكب‬
Parser ‫محلل‬
Specializer ‫مخصص‬
Natural Language Processing ‫معالجة آلية للغة الطبيعية‬
Lexical ‫معجمي‬
Singular ‫مفرد‬
Acceptability ‫مقبولية‬
Conceptual ‫مفهومي‬
Grammar ‫نحو‬
Generative ‫توليدي‬
Definite-Clause ‫القضية المحددة‬
Context-free ‫السياقي‬
syntagmatic ‫مركبي‬
Accusative ‫نصب‬
Gender ‫نوع‬
Fact ‫واقعة‬
Chomsky ‫تشومسكي‬
Greenberg ‫كرينبرك‬
Colmerauer ‫كولمروور‬
McCawley ‫مككولي‬

‫السيرة الذاتية للباحث‬

34
‫المجلد رقم ‪ ،06‬العدد ‪ ،01‬السنة ‪2015‬‬ ‫المجلة الدولية لعلوم وهندسة الحاسوب باللغة العربية‪،‬‬

‫رضا بابا أحمد‪ :‬أستاذ محاضر في قسم اللغة واألدب العربي بجامعة معسكر (الجزائر)‪،‬‬
‫ورئيس مشروع ماستر "تعليمية اللغة العربية"‪ ،‬من مواليد ‪ .1979‬حاص ل على ش هادة‬
‫الليس انس في اللغ ة العربي ة س نة ‪ ،2002‬ثم الماجس تير في اللس انيات التطبيقي ة س نة‬
‫‪ ،2006‬ثم الدكتوراه في اللسانيات الحاسوبية سنة ‪ 2014‬من جامعة تلمسان (الجزائ ر)‪.‬‬
‫يهتم بالمعالجة اآللي ة للغ ة العربي ة وتعليَّمته ا‪ ،‬ويش تغل ض من فري ق من الب احثين على‬
‫إعداد "معجم موضوعاتي للمعالجة اآللية للغة"‪ .‬شارك في ملتقيات دولي ة في الجزائ ر‪،‬‬
‫المغرب‪ ،‬السعودية‪ ،‬فرنسا‪.‬‬
‫المنشورات‪:‬‬
‫‪ « ،2011 ‬من أجل معالجة آلية للغة‪ :‬النظرية اللسانية المعنى‪-‬نص »‪ ،‬المجلة‬
‫المغاربية للغات‪ ،‬منشورات القدس‪ ،‬وهران‪ ،‬العدد ‪ ،07‬ص‪.198-173 :‬‬
‫‪ « ،2011 ‬مفهوم النموذج في الدراسة اللسانية الصورية »‪ ،‬مجلة قراءات‪،‬‬
‫منشورات كلية اآلداب جامعة معسكر‪ ،‬العدد ‪ ،02‬ص‪.234-223 :‬‬
‫‪ « ،2013 ‬النظرية اللسانية المعنى‪-‬نص »‪ ،‬مجلة القلم‪ ،‬وهران‪ ،‬العدد ‪ ،27‬ص‪:‬‬
‫‪.109-98‬‬
‫‪ « ،1434 ‬االستراتيجيات التواصلية في تعليم العربية لغير الناطقين بها »‪،‬‬
‫فعاليات المؤتمر الدولي لعلوم العربية في التعليم الجامعي بين التحصيل العلمي‬
‫والتكوين المهاري‪ ،‬جامعة أم القرى مكة المكرمة‪.‬‬

‫‪35‬‬
‫توليد الجمل العربية باستخدام لغة برولوغ‬ ،‫رضا بابا أحمد‬

‫الملخص باللغة االنجليزية‬

Generation of Arabic sentences using Prolog

Abstract
Generation of sentences, field of Natural language processing, is
crucial to a lot of systems. It creates a linguistic form out of semantic
representation. In fact we look for the way of selecting lexical units,
matching and pairing them with each other to form grammatical and
acceptable sentences. The aim of this study is to achieve this process
automatically, using Prolog. To do that, firstly we indicate the
importance of the Prolog language in Arabic study then we show the
model of sentence in Arabic. Instead, it is shown that the possibilities
of transforming the structural algebra as it is done in the generative
grammar and Arabic grammar into a logical structure to facilitate the
implementation of the program. That is to say, we have dealt with
examples of nominal and verbal sentences of multiple constructions.
Finally, it suitable to say that Prolog is a convenient way to represent
the components and the relation in the sentence, as it helps to solve the
problem of conformity among those components. Considering that
computer programming help us to understand the natural process of
36
2015 ‫ السنة‬،01 ‫ العدد‬،06 ‫المجلد رقم‬ ،‫المجلة الدولية لعلوم وهندسة الحاسوب باللغة العربية‬

generative sentences. This attempt confirms some grammatical


theories about the construction of Arabic sentences.

Keywords: Natural language generation, Arabic sentence, Prolog.

37
‫توليد الجمل العربية باستخدام لغة برولوغ‬ ‫رضا بابا أحمد‪،‬‬

‫‪38‬‬

You might also like