2025-11-23T10:13:16.980830

Closure Properties of General Grammars -- Formally Verified

Dvorak, Blanchette
We formalized general (i.e., type-0) grammars using the Lean 3 proof assistant. We defined basic notions of rewrite rules and of words derived by a grammar, and used grammars to show closure of the class of type-0 languages under four operations: union, reversal, concatenation, and the Kleene star. The literature mostly focuses on Turing machine arguments, which are possibly more difficult to formalize. For the Kleene star, we could not follow the literature and came up with our own grammar-based construction.
academic

خصائص الإغلاق للنحويات العامة -- تم التحقق منها رسميًا

المعلومات الأساسية

  • معرّف الورقة: 2302.06420
  • العنوان: Closure Properties of General Grammars -- Formally Verified
  • المؤلفون: مارتن دفوراك (معهد العلوم والتكنولوجيا النمسا)، جاسمين بلانشيت (جامعة لودفيج ماكسيميليان ميونخ)
  • التصنيف: cs.FL (اللغات الرسمية ونظرية الأوتوماتا)
  • المؤتمر: المؤتمر الدولي الرابع عشر حول إثبات النظريات التفاعلي (ITP 2023)
  • رابط الورقة: https://arxiv.org/abs/2302.06420

الملخص

تقدم هذه الورقة تشكيلاً رسميًا للنحويات العامة (أي النحويات من النوع 0) باستخدام مساعد إثبات Lean 3. يعرّف المؤلفون المفاهيم الأساسية لقواعد إعادة الكتابة والكلمات المشتقة من النحويات، ويثبتون باستخدام النحويات أن فئة لغات النوع 0 مغلقة تحت أربع عمليات: الاتحاد، والعكس، والتسلسل، وعملية كلين النجمية. تركز الأدبيات بشكل أساسي على حجج آلات تورينج، التي قد تكون أصعب في التشكيل الرسمي. بالنسبة لعملية كلين النجمية، لم يتمكن المؤلفون من اتباع الأدبيات وقدموا بناءً خاصًا بهم قائمًا على النحويات.

خلفية البحث والدافع

خلفية المشكلة

  1. أهمية نظرية اللغات الرسمية: تعتبر مفاهيم اللغات الرسمية أساسية في علوم الحاسوب، ويمكن التعرف عليها من خلال عدة أشكال رسمية، بما في ذلك آلات تورينج والنحويات الرسمية
  2. تكافؤ النحويات من النوع 0 وآلات تورينج: تميز آلات تورينج والنحويات العامة نفس فئة اللغات القابلة للعد بشكل متكرر أو لغات النوع 0
  3. قيود العمل الرسمي الحالي: يوجد عمل كبير حول تشكيل آلات تورينج في مساعدات الإثبات، لكن العمل على تشكيل النحويات العامة نسبيًا محدود

دافع البحث

  1. مزايا النحويات: النحويات العامة أسهل في التعريف من آلات تورينج، وبعض الإثباتات حول النحويات العامة أبسط بكثير من الإثباتات المماثلة لآلات تورينج
  2. أهمية خصائص الإغلاق: خصائص الإغلاق للغات النوع 0 هي نتائج أساسية في نظرية اللغات الرسمية
  3. الحاجة إلى التحقق الرسمي: الحاجة إلى إثباتات مدققة آليًا لضمان صحة هذه النتائج الأساسية

المساهمات الأساسية

  1. أول تشكيل رسمي للنحويات العامة: تعريف كامل لمفاهيم وعمليات النحويات من النوع 0 في Lean 3
  2. إثباتات رسمية لأربع خصائص إغلاق:
    • خاصية إغلاق الاتحاد
    • خاصية إغلاق العكس
    • خاصية إغلاق التسلسل
    • خاصية إغلاق عملية كلين النجمية
  3. بناء مبتكر لعملية كلين النجمية: نظرًا لافتقار الأدبيات إلى بناء قائم على النحويات، ابتكر المؤلفون طريقة بناء خاصة بهم قائمة على النحويات
  4. إطار عمل مجرد قابل لإعادة الاستخدام: تطوير هيكل lifted_grammar لتقليل الكود المكرر وتوفير أنماط إثبات عامة
  5. مكتبة Lean مفتوحة المصدر بحوالي 12,500 سطر: توفير تطبيق رسمي كامل لاستخدام المجتمع

شرح الطريقة

هيكل التعريفات الأساسية

نظام الرموز

inductive symbol (T : Type) (N : Type)
| terminal : T → symbol  
| nonterminal : N → symbol

تمثيل قواعد النحو

structure grule (T : Type) (N : Type) :=
( input_L : list (symbol T N))
( input_N : N)  
( input_R : list (symbol T N))
( output_string : list (symbol T N))

تعريف النحو

structure grammar (T : Type) :=
(nt : Type)
(initial : nt)
(rules : list (grule T nt))

تعريف العمليات الأساسية

علاقة تحويل النحو

def grammar_transforms (g : grammar T) (w1 w2 : list (symbol T g.nt)) : Prop :=
∃ r : grule T g.nt,
  r ∈ g.rules ∧
  ∃ u v : list (symbol T g.nt),
    w1 = u ++ r.input_L ++ [symbol.nonterminal r.input_N] ++ r.input_R ++ v ∧
    w2 = u ++ r.output_string ++ v

علاقة الاشتقاق

def grammar_derives (g : grammar T) : 
  list (symbol T g.nt) → list (symbol T g.nt) → Prop :=
relation.refl_trans_gen (grammar_transforms g)

نقاط الابتكار التقني

1. إطار عمل lifted_grammar المجرد

لتقليل الكود المكرر، طور المؤلفون هيكلاً مجردًا:

  • يحتوي على نحو أصغر g0 ونحو أكبر g
  • يوفر دوال lift_nt و sink_nt للتحويل بين أنواع غير نهائية مختلفة
  • يضمن الحقن والصحة للقواعس المقابلة

2. المعالجة المبتكرة لعملية التسلسل

بناء التسلسل التقليدي للنحويات الخالية من السياق يفشل في النحويات العامة. حل المؤلفين:

  • إنشاء وكلاء غير نهائيين لكل رمز نهائي
  • ضمان فصل كامل للرموز غير النهائية المستخدمة من قبل g1 و g2
  • تجنب مشاكل مطابقة السلاسل عبر حدود التسلسل

3. البناء الأصلي لعملية كلين النجمية

نظرًا لافتقار الأدبيات إلى بناء قائم على النحويات، ابتكر المؤلفون طريقة جديدة:

  • إدخال فاصل # لبناء "حجرات" معزولة للكلمات
  • استخدام منظف R للعبور من البداية إلى النهاية وإزالة الفواصل
  • مجموعة القواعد الجديدة: P* = P ∪ {Z → ZS#, Z → R#, R# → R, R# → ε} ∪ {Rt → tR | t ∈ T}

إعداد التجارب

البيئة الرسمية

  • مساعد الإثبات: Lean 3
  • المكتبة الرياضية: mathlib
  • حجم الكود: حوالي 12,500 سطر من كود Lean منسق بشكل جيد
  • البرمجة الفوقية: استخدام إطار عمل البرمجة الفوقية في Lean لتطوير أتمتة صغيرة الحجم

طريقة التحقق

  • الاستقراء الهيكلي: استخدام الاستقراء الهيكلي لإثبات علاقات الاشتقاق
  • تحليل الحالات: تحليل شامل لحالات تطبيق القواعد المختلفة
  • صيانة الثوابت: الحفاظ على الثوابت الرئيسية في الإثباتات المعقدة

نتائج التجارب

النظريات الرئيسية

  1. خاصية إغلاق الاتحاد: theorem T0_of_T0_u_T0 (L1 L2 : language T) : is_T0 L1 ∧ is_T0 L2 → is_T0 (L1 + L2)
  2. خاصية إغلاق العكس: theorem T0_of_reverse_T0 (L : language T) : is_T0 L → is_T0 (reverse_lang L)
  3. خاصية إغلاق التسلسل: theorem T0_of_T0_c_T0 (L1 L2 : language T) : is_T0 L1 ∧ is_T0 L2 → is_T0 (L1 * L2)
  4. خاصية إغلاق عملية كلين النجمية: theorem T0_of_star_T0 (L : language T) : is_T0 L → is_T0 L.star

تحليل تعقيد الإثبات

  • الاتحاد والعكس: نسبيًا بسيطة، تستخدم بشكل أساسي البناءات القياسية
  • التسلسل: تعقيد متوسط، تتطلب معالجة مشاكل مطابقة الحدود
  • عملية كلين النجمية: الأكثر تعقيدًا، حيث يتجاوز مجرد lemma star_induction 3000 سطر من الكود

النتائج الثانوية

  • النحويات الخالية من السياق: يمكن إعادة استخدام الإثباتات لإثبات إغلاق لغات خالية من السياق
  • lemmas التسلسل: theorem CF_of_CF_u_CF وغيرها يمكن تطبيقها مباشرة على اللغات الخالية من السياق

الأعمال ذات الصلة

تشكيل النحويات

  • النحويات الخالية من السياق: كارلسون وآخرون (Mizar)، مينامايد (Isabelle/HOL)، بارثوال ونوريش (HOL4)، فيرسوف وأوستالو (Agda)، راموس (Coq)
  • النحويات العامة: هذه الورقة هي أول تشكيل رسمي كامل

نماذج حسابية أخرى

  • الأوتوماتا المحدودة: طومسون وديليز (Lean)، تشكيل التعبيرات النمطية
  • آلات تورينج: تطبيقات في عدة مساعدات إثبات، حتى أن أحدث عمل بالباخ أثبت نظرية كوك-ليفين
  • حساب لامدا: نوريش (HOL4)، فورستر وآخرون (Coq)
  • الدوال الجزئية العودية: نوريش (HOL4)، كارنيرو (Lean)

الخلاصة والنقاش

الاستنتاجات الرئيسية

  1. النحويات أفضل من آلات تورينج: بالنسبة لإثباتات خصائص الإغلاق، قد تكون النحويات أكثر ملاءمة من آلات تورينج
  2. جدوى التشكيل الرسمي: يمكن تشكيل نتائج نظرية لغات معقدة بنجاح في مساعدات الإثبات الحديثة
  3. أهمية التجريد: التجريد الجيد (مثل lifted_grammar) حاسم للتشكيل الرسمي على نطاق واسع

القيود

  1. فئات التعقيد: لا يمكن للنحويات تعريف فئات تعقيد مهمة (مثل فئة P)، لا تزال هناك حاجة إلى نماذج مثل آلات تورينج
  2. البناء: لم يحاول المؤلفون جعل التطوير بناءً
  3. إغلاق التقاطع: لم يتم تشكيل إغلاق التقاطع، لأنهم لا يعرفون بناءً أنيقًا قائمًا على النحويات فقط

الاتجاهات المستقبلية

  1. تسلسل تشومسكي الكامل: إدراج النحويات الحساسة للسياق والخالية من السياق والنمطية في المكتبة
  2. إثباتات التكافؤ: محاولة إثبات تكافؤ النحويات العامة وآلات تورينج
  3. الربط مع mathlib: ربط نتائج mathlib للغات النمطية بهذه المكتبة

التقييم المتعمق

المميزات

  1. عمل رائد: أول تشكيل رسمي كامل للنحويات العامة، يملأ فجوة مهمة
  2. الابتكار التقني: البناء الأصلي لعملية كلين النجمية يعكس خبرة نظرية عميقة
  3. جودة الهندسة: 12,500 سطر من الكود عالي الجودة مع تصميم تجريد ممتاز
  4. المساهمة النظرية: إثبات أن الطرق القائمة على النحويات قد تكون أفضل من طرق آلات تورينج في بعض الحالات
  5. قابلية إعادة الاستخدام: التجريدات مثل lifted_grammar توفر أساسًا لأعمال لاحقة

أوجه القصور

  1. قيود القدرة التعبيرية: لا يمكن التعامل مع مفاهيم مهمة في نظرية التعقيد
  2. غياب البناء: لم يتم النظر في متطلبات الرياضيات البناءة
  3. عدم الاكتمال: غياب معالجة عمليات مهمة مثل التقاطع
  4. التوثيق: يمكن أن تكون شروحات بعض التفاصيل التقنية أكثر تفصيلاً

التأثير

  1. الأهمية النظرية: وضع أساس للتحقق الآلي من نظرية اللغات الرسمية
  2. قيمة المنهجية: عرض أفضل الممارسات للمشاريع الرسمية على نطاق واسع
  3. مساهمة المجتمع: ستعزز مكتبة الكود مفتوحة المصدر البحث ذي الصلة
  4. القيمة التعليمية: يمكن أن تكون حالة دراسة ممتازة لتعلم طرق التشكيل الرسمي

السيناريوهات المناسبة

  1. علوم الحاسوب النظرية: البحث في نظرية اللغات ونظرية الأوتوماتا
  2. الرياضيات الرسمية: البحث الذي يتطلب إثباتات صارمة
  3. التحقق من المترجمات: ضمان صحة تحليل النحو ومعالجة اللغة
  4. التعليم: مواد مساعدة لدورات اللغات الرسمية

المراجع

تستشهد الورقة بـ 26 مرجعًا مهمًا، تغطي:

  • الكتب المدرسية الكلاسيكية: نظرية التحليل لـ Aho و Ullman، نظرية الأوتوماتا لـ Hopcroft وآخرين
  • الأعمال الرسمية: تطبيقات نماذج حسابية في مساعدات إثبات مختلفة
  • توثيق الأدوات: المواد ذات الصلة بـ Lean 3 و mathlib

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