الإعلان عن الحقائق في برنامج البرولوج يجب أولا تحديد الأشياء (Objects) والعلاقات التي تمثل تلك الحقائق .فمثلا إذا كانت هناك حقيقة تقول أن ( Ali Likes Mohammad ) فالأشياء في هذه الحقيقة هي الأسماء (Ali , Mohammad )أما العلاقة بينهما فهي (Linkes) وتسمى بالمسند (Predicate) أي الصفة التي تتعلق بشيء ما أو العلاقة التي تربط بين شيئين أو اكثر. ولتمثيل هذه الحقيقة في برنامج البرولوج تكتب كالآتي :
.(Likes ( ali , mohammadويطلق على التعبير (Ali , Mohammad ) likes ) في لغة البرولوج لفظ العبارة ( Clause) ويمكن ترجمة اللغة المكتوبة بإحدى اللغات الطبيعية (الإنجليزية أو العربية ) إلى عبارة أو اكثر من عبارات البرولوج. ويتم ذلك بتحديد الأشياء التي يدور حولها موضوع الجملة وتحديد الصفات أو العلاقات التي تميزها, أو محمول الجملة.
كما يجب ملاحظة أن الاسم الذي يعبر عن صنف (Class ) معين من الأشياء يجب أن يختلف الاسم الذي يعبر عن عنصر محدد من ذلك الصنف ( Instance of the class) على سبيل المثال إذا أردنا كتابة برنامج خبير بواسطة لغة البرولوج ليستطيع تمييز سمكة معينة من أسماك القط ( Catfish ) وهي سمكة نشطة (Active) يجب إعلان حقيقتين هما:
.A catfish resembles an eal
.The catfish is extremely active
.(resemble ( catfish , eal
.(active ( catfish 1
وبمجرد تخزين الحقائق في قاعدة بيانات يمكن بعد ذلك الاستفسار ( Query ) عن أي أشياء والعلاقات التي تربط بينها فعلى سبيل المثال إذا أخذنا قاعدة المعرفة التي تمثل العلاقة بين ( Mohammad , Ali ) في المثال الأول فيمكن السؤال عن العلاقة بينهما بالسؤال التالي :
? ( likes( ali, mohammad
وبناء على هذا السؤال يقوم البرولوج بالبحث في قاعدة المعرفة(Knowledgebase ) عن عبارة (Clause) تطابق العبارة الموجودة في السؤال ويحدث الاتفاق عندما يتفق كل من المسند في عبارة السؤال مثل (Like ) مع المسند في الحقيقة الموجودة في قاعدة المعرفة وأيضا عندما تتفق معاملات السؤال مع مثيلاتها من المعاملات الحقيقة.
وبما أن السؤال يتفق مع الحقيقة يقوم البرولوج بالرد بالإيجاب (Yes) على ذلك السؤال ولكن إذا تغير ترتيب المعاملات, مثل
وبما أن السؤال يتفق مع الحقيقة يقوم البرولوج بالرد بالإيجاب (Yes) على ذلك السؤال ولكن إذا تغير ترتيب المعاملات, مثل
.(Likes ( mohammad , aliوهذا يعني أن الحاسب (أو برنامج البرولوج) لا يعلم حقيقة تتفق مع هذا السؤال , أو بمعنى أدق لا توجد عبارة تمثل هذه الحقيقة في قاعدة المعرفة.

ليست هناك تعليقات:
اضافة تعليق