Properties of Regular Languages

الفصل الرابع: خصائص اللغات المنتظمة والتبسيط

الهدف: إثبات عدم الانتظام (Pumping Lemma) وتبسيط الـ DFA (Minimization).
1

The Pumping Lemma (ضخ الكلمات)

أداة رياضية تستخدم لإثبات أن لغة معينة ليست منتظمة (Not Regular).

النص الرسمي:

لأي لغة منتظمة $L$، يوجد عدد ثابت $n$ (Pumping Length).
أي كلمة $w$ في اللغة طولها $\ge n$ يمكن تقسيمها إلى 3 أجزاء: $w = xyz$ بحيث:

  1. $|y| > 0$ (الجزء الأوسط ليس فارغاً).
  2. $|xy| \le n$ (التكرار يحدث في البداية).
  3. For all $i \ge 0$, $xy^iz \in L$ (يمكننا تكرار y لأي عدد وتبقى الكلمة في اللغة).
كيف نستخدمها للإثبات؟ (لعبة التناقض):
  1. افترض أن اللغة $L$ منتظمة (للوصول لتناقض).
  2. الخصم يعطيك $n$.
  3. أنت تختار كلمة ذكية $w$ تعتمد على $n$ (مثل $0^n1^n$).
  4. الخصم يقسمها إلى $xyz$ حسب الشروط.
  5. أنت تختار $i$ (عدد مرات التكرار) لتجعل الكلمة الجديدة $xy^iz$ خارج اللغة.
  6. بما أنك وجدت تناقضاً، فالفرضية خاطئة واللغة ليست منتظمة.
2

Closure Properties (خصائص الانغلاق)

إذا كان لدينا لغتان منتظمتان $L_1$ و $L_2$، فإن العمليات التالية تنتج لغة منتظمة أيضاً:

Union $L_1 \cup L_2$
Intersection $L_1 \cap L_2$
Concatenation $L_1 L_2$
Star $L_1^*$
Complement $\overline{L_1}$
Difference $L_1 - L_2$
Reversal $L_1^R$
Homomorphism $h(L_1)$
إذا خرجت عن هذه القائمة، فغالباً الخاصية غير محققة.
3

DFA Minimization (تبسيط الآلة)

Table Filling Algorithm (خوارزمية الجدول)

الهدف: دمج الحالات المتكافئة (Equivalent States) لتقليل حجم الـ DFA.

خطوات الحل:
  1. ارسم جدولاً لكل زوج من الحالات $(p, q)$.
  2. ضع علامة $\times$ للأزواج التي أحدها نهائي والآخر غير نهائي (مميزة فوراً).
  3. للأزواج المتبقية: إذا كان الانتقال برمز ما يؤدي إلى زوج مميز سابقاً، ميز هذا الزوج أيضاً.
  4. كرر الخطوة 3 حتى لا يوجد تغيير.
  5. الأزواج غير المميزة يتم دمجها.
B
C
D
A
x
x
؟
B
؟
x
C
x

Distinguishable Pairs Table

🛡️ EXAM VAULT (خزنة الاختبار)
TRAP / خطأ قاتل

Misusing Pumping Lemma

الـ Pumping Lemma تستخدم فقط لإثبات أن اللغة ليست منتظمة.
لا يمكنك استخدامها لإثبات أن اللغة منتظمة! (قد تنجح الـ Pumping للغة غير منتظمة أحياناً).

CLASSIC EXAMPLE

$L = \{0^n 1^n | n \ge 0\}$

هذه أشهر لغة غير منتظمة.
السبب: الـ DFA ذاكرته محدودة ولا يستطيع "العد" للتأكد من أن عدد الأصفار يساوي عدد الآحاد إذا كان العدد كبيراً جداً (أكبر من عدد حالاته).

→ السابق (Ch 3) الفصل التالي (Ch 5) ←