نظریه زبان ها و نظریه زبان ها و ماشین هاماشین ها
- زبان اول - فصل زبان اول فصلو منظم و های منظم های
حالت های حالت ماشین های ماشینشریف متناهیمتناهی صنعتی شریف دانشگاه صنعتی دانشگاه
8888بهار بهار
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
ماشین حالت متناهی ماشین حالت متناهی
ماشین حالت ساده ترین مدل محاسباتی کامپیوترها، یک •است. (finite State Machine یا finite Automaton)متناهی
مناسب برای مدلسازی کامپیوترهایی با حافظه بسیار •محدود
استفاده چنین (Embedded Systems)در سیستم های نهفته •ماشین هایی بسیار رایج است.
همتای احتمالی (Markov Chains) زنجیره های مارکوفی•ماشین های حالت متناهی هستند.
این مدل ها درمدلسازی پروتکل های شبکه های • برای تشخیص الگوهای OCRکامپيوتری، پردازش گفتار و
موجود در داده ها کاربرد دارند.
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
یک مثال سادهیک مثال ساده
کنترلر یک در خودکار•
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
یک مثال ساده - ادامهیک مثال ساده - ادامه
نمودار حالت•
جدول گذار)انتقال حالت(•
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
تعریف ریاضیتعریف ریاضی
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
مثالمثال
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
زبان یک ماشین حالت متناهیزبان یک ماشین حالت متناهی
نتیجه پردازش هر رشته از عالئم ورودی توسط یک • (reject)رد یا (accept)پذیرشماشین حالت متناهی
است. M مجموعه تمام رشته هایی باشد که ماشین Aاگر •
می گوییم و می M را زبان ماشین Aمی پذیرد، L(M( = A نویسیم:
)می تشخیص می دهد را A زبان Mمی گوییم ماشین •پذیرد(
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
بازگشت به مثال قبلبازگشت به مثال قبل
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
مثالمثال
M4 تمام رشته هایی از a و b.را می پذیرد که ابتدا و انتهای آن یکسان است
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
تعریف صوری پذیرشتعریف صوری پذیرش
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
زبان منظمزبان منظم
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
مثالمثال
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
طراحی یک ماشین حالت متناهیطراحی یک ماشین حالت متناهیخودتان را به جای ماشین تصور کنید.•
را بپذیرد.001یک ماشین حالت متناهی که رشته های شامل •حاالت ممکن عبارتند از:•
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
اعمال روی زبان های منظماعمال روی زبان های منظم
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
بسته بودن مجموعه زبان های منظم نسبت بسته بودن مجموعه زبان های منظم نسبت به اجتماعبه اجتماع
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
اثباتاثبات
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
بسته بودن مجموعه زبان های منظم نسبت بسته بودن مجموعه زبان های منظم نسبت به الحاقبه الحاق
. داریم قطعیت عدم مفهوم تعریف به نیاز ویژگی این اثبات برای
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
DFADFA و و NFANFAتفاوت میان تفاوت میان
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
DFADFA و و NFANFAمقایسه مفهوم پذیرش در مقایسه مفهوم پذیرش در
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
مثالمثال
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
تعریف صوری ماشین حالت متناهی تعریف صوری ماشین حالت متناهی ((NFANFA))غیرقطعیغیرقطعی
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
مثالمثال
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
هاهاDFADFAها و ها و NFANFAهم ارزی هم ارزی
ی که رفتار آن را شبیه سازی DFA به NFA: تبدیل ایده اثبات•می کند.
حالت باشد، برای شبیه سازی آن توسط kی دارای NFAاگر •حالت نیاز خواهیم داشت. k2 به DFAیک
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
اثباتاثبات
، ماشین جدید را می εبدون در نظر گرفتن گذارهای ابتدا •سازیم.
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
εε گذارهایگذارهایدر نظر گرفتن در نظر گرفتن
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
εε گذارهایگذارهایدر نظر گرفتن در نظر گرفتن
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
نتیجهنتیجه
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
مثالمثال
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
مثال - ادامه مثال - ادامه
حذف حاالت غیر قابل دسترسی
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
اثبات قضایای بسته بودن با اثبات قضایای بسته بودن با NFANFAاستفاده از استفاده از
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
اثبات بسته بودن نسبت به اجتماعاثبات بسته بودن نسبت به اجتماع
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
اثبات- ادامهاثبات- ادامه
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
اثبات بسته بودن نسبت به الحاقاثبات بسته بودن نسبت به الحاق
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
اثبات- ادامهاثبات- ادامه
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
اثبات بسته بودن نسبت به *اثبات بسته بودن نسبت به *
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
اثبات- ادامهاثبات- ادامه
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
عبارات منظمعبارات منظم
آیا این تعریف دور ندارد؟
ترتیب تقدم عملگرها: *، الحاق، اجتماع
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
مثالمثال
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
مثال – ادامه مثال – ادامه
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
هم ارزی عبارات منظم و ماشین های هم ارزی عبارات منظم و ماشین های حالت متناهیحالت متناهی
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
اثباتاثبات
ی با زبان NFA را به Rنشان می دهیم چگونه می توان عبارت منظم •معادل تبدیل کرد.
هر یک از شش حالت مختلف در تعریف عبارات منظم را در نظر می •گیریم.
را ساخت؟NFAدر سه حالت آخر چه طور می توان •
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
مثالمثال
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
اثبات طرف دیگراثبات طرف دیگر
باید نشان دهیم که اگر یک •زبان منظم باشد، می توان آن را با یک عبارت منظم نمایش
داد. GNFA را به DFAابتدا یک •
متناظر آن تبدیل می کنیم. را به عبارت GNFAسپس •
منظم تبدیل می نماییم.•GNFA یک ماشین غیرقطعی
است که در آن گذارها به جای عالئم الفبا می توانند عبارات
منظم باشند.
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
GNFAGNFAتعریف صوری تعریف صوری
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
چند فرضچند فرض
ویژگی های زیر را نیز باید GNFAبرای سادگی، فرض می کنیم •داشته باشد:
از حالت شروع به هر حالت دیگر یک گذار وجود دارد و هیچ گذاری به –حالت شروع وارد نمی شود.
تنها یک حالت پایان و نامساوی با حالت شروع وجود دارد که هیچ –گذاری از آن خارج نمی شود اما از هر حالت یک گذار به آن داریم.
� یک گذار – از هر حالتی به جز این دو حالت، به تمام حالت ها یک دقیقاوجود دارد.
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
Eliminating a stateEliminating a state
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
11 ExampleExample
22 ExampleExample
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
GrammarGrammar• A grammar G is a 4-tuple G = )V, Σ, R, S(where:• V is a finite set of variables,• Σ is a finite, disjoint from V, of
terminals,• R is a finite set of rules,• S V is the start variable.
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
RuleRule• A rule is of the form x → y
where x (V Σ)+ and y (V Σ)*.
• The rules are applied in the following manner: given a string w of the form
w = uxv,
• we say that the rule x → y is applicable to this string, and we may use it to replace x with y, thereby obtaining a new string
z = uyv.
• This is written as
w z.
دانشگاه بهار 88 ها ماشین و ها زبان نظریه
شریف صنعتی
DerivationDerivation• If
w1 w2 … wnwe say that w1 derives wn and write
w1 wn• Thus, we always have
w w
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
*
*
Language of a GrammarLanguage of a Grammar
• Let G = )V, Σ, R, S( be a grammar. Then, the set
Is the language generated by G.
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
*
( ) { *: }L G w T S w
ExampleExample• Consider the grammar
G = ){S}, {a,b}, P, S}with P given by
S → aSb
S → ε
Then
S aSb aaSbb aabb
So we can writeS aabb
• Then, L)G( = {an bn: n ≥ 0}
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
*
A notation for GrammarsA notation for Grammars• Consider the grammar
G = ){S}, {a,b}, P, S}with P given by
S → aSb
S → ε• The above grammar is usually written as:
G: S → aSb | ε
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
Regular GrammarsRegular Grammars• A grammar G = )V, Σ, R, S( is said to be right-
linear if all rules are of the formA → xB
A → x
where A, B V, and x Σ*. A grammar is said to be left-linear if all rules are of the form
A → Bx
A → x• A regular grammar is one that is either right-linear or
left-linear.
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
TheoremTheorem• Theorem Let G = )V, Σ, R, S( be a
right-linear grammar. Then L)G( is a regular language.
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
ExampleExample
• Construct a nfa that accepts the language generated by the grammar
V0 → aV1
V1 → abV0 | b
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
V0 VfV1
V2
b
a
a
b
TheoremTheorem• Theorem If L is a regular language
on the alphabet Σ, then there exists a right-linear grammar G = )V, Σ, R, S( such that L = L)G(.
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
TheoremTheorem• Theorem A language is regular if and only if there
exists a left-linear grammar G such that L = L)G(.
• Outline of the proof: Given any left-linear grammar with rules of the form
A → Bx
A → x
we can construct a right-linear Ĝ by replacing every such rule of G with
A → xRB
A → xR
Respectively. We have L(G) = L(Ĝ)R .
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
TheoremTheorem• Theorem A language L is regular if
and only if there exists a regular grammar G such that L = L)G(.
دانشگاه بهار 88 ها ماشین و ها زبان نظریهشریف صنعتی
Recommended