البرمجة المنطقية والتصريحية
تعبر البرمجة المنطقية والتصريحية عن المشكلات كعلاقات وحقائق وقواعد، تاركةً البحث عن الحلول لمحرك استدلال بدلاً من التعليمات الصريحة خطوة بخطوة.
Definition
البرمجة المنطقية هي نموذج تصريحي يكون فيه البرنامج عبارة عن مجموعة من البنود المنطقية (حقائق وقواعد)، وتتم الحوسبة عن طريق الاستنتاج الآلي، عادةً الحل مع التوحيد، للإجابة على الاستفسارات مقابل تلك المعرفة.
Scope
يغطي هذا الموضوع البرمجة المنطقية القائمة على بنود هورن والحل (كما في برولوج)، وبرمجة المنطق المقيد، والفكرة التصريحية الأوسع لتحديد ما يجب أن يكون صحيحًا بدلاً من كيفية حسابه. ويشمل التوحيد، والبحث بالارتداد، ودلالات البرامج المنطقية النظرية النموذجية والنظرية البرهانية، وفصل المواصفات المنطقية عن التحكم.
Core questions
- ماذا يعني الحساب عن طريق إثبات هدف من بنود منطقية؟
- كيف يحقق التوحيد والارتداد البحث عبر برنامج علائقي؟
- كيف يتم تحديد فصل المنطق عن التحكم بدقة؟
- كيف توسع القيود البرمجة المنطقية البحتة؟
Key theories
- مبدأ الحل
- يقدم حل روبنسون قاعدة استدلال واحدة موجهة للآلة للمنطق من الدرجة الأولى، موفرًا المحرك الاستنتاجي الذي يجعل البرمجة المنطقية ممكنة حسابيًا.
- المنطق بالإضافة إلى التحكم
- يميز تحليل كوالسكي بين المحتوى المنطقي للبرنامج (ما هو صحيح) ومكون التحكم الخاص به (كيف يتم البحث عن البرهان)، ويؤطر البرمجة المنطقية كطريقة لتغيير التحكم مع الحفاظ على المنطق ثابتًا.
- الدلالات التصريحية والإجرائية للبرامج المنطقية
- يُضفي لويد الطابع الرسمي على الدلالات النظرية النموذجية، والنقطة الثابتة، والتشغيلية لبرامج المنطق المحددة ويثبت تطابقها، مما يؤسس معنى البرامج المنطقية.
Clinical relevance
تقوم التقنيات التصريحية والقائمة على المنطق بدعم لغات استعلام قواعد البيانات، وحلالات القيود، وتمثيل المعرفة، ومحركات القواعد. إن تركيزها على تحديد المشكلات بدلاً من الخوارزميات يجعلها مناسبة تمامًا لمهام البحث التوافقي، والتكوين، والاستدلال.
History
أرسى مبدأ الحل لـ روبنسون عام 1965 الأساس الاستنتاجي. في أوائل السبعينيات، أنشأ كولميراور وروسيل لغة برولوج، وصاغ كوالسكي التفسير الإجرائي لبنود هورن. ازدهر هذا النموذج خلال الثمانينيات، مؤثرًا على مشروع الجيل الخامس الياباني، وتوسع لاحقًا ليشمل برمجة المنطق المقيد وبرمجة مجموعات الإجابات.
Debates
- النقاء مقابل التحكم العملي
- توازن لغات البرمجة المنطقية بين مثالية المنطق التصريحي النقي والاحتياجات العملية للتحكم الصريح، مثل القطع والترتيب، والتي تحسن الكفاءة ولكنها تعرض الفصل النظيف بين المنطق والتحكم للخطر.
Key figures
- Robert Kowalski
- Alain Colmerauer
- J. Alan Robinson
- John Lloyd
- Philippe Roussel
Related topics
Seminal works
- kowalski1979
- robinson1965
- lloyd1987
- colmerauer1993
Frequently asked questions
- كيف تختلف البرمجة المنطقية عن البرمجة الأمرية؟
- بدلاً من تحديد تسلسل العمليات، يعلن برنامج المنطق عن الحقائق والقواعد، ويبحث محرك الاستدلال عن البراهين التي تجيب على الاستفسارات، لذلك يركز المبرمج على ما هو صحيح بدلاً من كيفية حسابه.
- ما هو التوحيد؟
- التوحيد هو عملية إيجاد استبدال يجعل مصطلحين منطقيين متطابقين؛ وهو الآلية الأساسية التي تطابق بها برامج المنطق الأهداف مع رؤوس البنود.