User:Weaam98/sandbox

في المنطق وعلوم الكمبيوتر ، التوحيد هو عملية حسابية لحل المعادلات بين التعبيرات الرمزية. اعتمادًا على التعبيرات (تسمى أيضًا المصطلحات) التي يُسمح لها بالحدوث في مجموعة المعادلات (وتسمى أيضًا مشكلة التوحيد) ، وأي التعبيرات تعتبر متساوية ، يتم تمييز العديد من أطر التوحيد. إذا كانت المتغيرات ذات الترتيب الأعلى ، أي المتغيرات التي تمثل الوظائف ، مسموحًا بها في تعبير ما ، فإن العملية تسمى توحيد الترتيب الأعلى ، وإلا توحيد الدرجة الأولى. إذا كان الحل مطلوبًا لجعل طرفي كل معادلة متساويين حرفيًا ، فإن العملية تسمى التوحيد النحوي أو التوحيد الحر ، أو التوحيد الدلالي أو المعادل ، أو التوحيد الإلكتروني ، أو نظرية نموذج التوحيد.

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

على سبيل المثال ، باستخدام x ، y ، z كمتغيرات ، فإن مجموعة المعادلة المفردة {cons (x، cons (x، nil)) = cons (2، y)} هي مشكلة توحيد نحوية من الدرجة الأولى لها الاستبدال {x ↦ 2، y cons (2، nil)} كحل وحيد لها. مسألة التوحيد النحوية من الدرجة الأولى {y = cons (2، y)} ليس لها حل على مجموعة من المصطلحات المحدودة ؛ ومع ذلك ، فإنه يحتوي على الحل الوحيد {y ↦ cons (2، cons (2، cons (2، ...)))} على مجموعة الأشجار اللانهائية. مشكلة التوحيد الدلالية من الدرجة الأولى {a⋅x = x⋅a} لها كل استبدال للصيغة {x ↦ a⋅ ... ⋅a} كحل في نصف مجموعة ، أي إذا كانت (⋅) تعتبر ترابطية ؛ نفس المشكلة ، التي يتم عرضها في مجموعة أبليان ، حيث (⋅) تعتبر أيضًا تبادلية ، لها أي استبدال على الإطلاق كحل. المجموعة المفردة {a = y (x)} هي مشكلة توحيد نحوية من الدرجة الثانية ، لأن y متغير دالة. أحد الحلول هو {x ↦ a، y ↦ (دالة الهوية)}؛ واحد آخر هو {y ↦ (دالة ثابتة ترسم كل قيمة إلى a) ، x ↦ (أي قيمة)}.

تم اكتشاف خوارزمية التوحيد لأول مرة بواسطة جاك هيربراند ،في حين أن أول تحقيق رسمي يمكن أن يُنسب إلى جون آلان روبنسون ، الذي استخدم التوحيد النحوي من الدرجة الأولى باعتباره لبنة أساسية من إجراءات حله للمنطق من الدرجة الأولى ، وهي خطوة كبيرة إلى الأمام في تكنولوجيا التفكير الآلي ، حيث أزال مصدرًا واحدًا للانفجار التوافقي: البحث عن إنشاء مثيل للمصطلحات. اليوم ، لا يزال التفكير الآلي هو مجال التطبيق الرئيسي للتوحيد. يتم استخدام التوحيد النحوي من الدرجة الأولى في البرمجة المنطقية وتنفيذ نظام نوع لغة البرمجة ، خاصة في خوارزميات الاستدلال من النوع المستندة إلى Hindley-Milner. يستخدم التوحيد الدلالي في حلول SMT وخوارزميات إعادة كتابة المصطلح وتحليل بروتوكول التشفير. يتم استخدام توحيد الترتيب الأعلى في مساعدي الإثبات ، على سبيل المثال Isabelle و Twelf ، ويتم استخدام الأشكال المقيدة من توحيد الترتيب الأعلى (توحيد النمط الأعلى ترتيبًا) في بعض تطبيقات لغة البرمجة ، مثل lambdaProlog ، حيث تكون أنماط الترتيب الأعلى معبرة ، ومع ذلك فإن إجراءات التوحيد المرتبطة بها تحتفظ بخصائص نظرية أقرب إلى التوحيد من الدرجة الأولى.