تالار گفتمان مانشت
عبارت منظم - نسخه‌ی قابل چاپ

عبارت منظم - fsmtnc - 18 دى ۱۳۹۶ ۱۰:۰۰ ق.ظ

سلام
من پاسخ این سوال رو لازم دارم اگه کسی می تونه جواب بده ممنون میشم

عبارت منظم پذیرفته شده توسط گرامر زیر را مشخص نمایید؟
s>asc|A
A>bAc|ℵ

عبارت منظمی که بعد از هر b یک a ظاهر شده باشد؟ به این صورت درسته؟ *((c∪a)*(ba)( c∪a))
ممنون میشم جواب بدین
خیلی خیلی ممنون

RE: عبارت منظم - msour44 - 21 دى ۱۳۹۶ ۰۶:۵۵ ب.ظ

سلام
درباره زبان گرامر:
[tex]S\: \Longrightarrow a^nA\: c^n\Longrightarrow a^nb^mAc^mc^n\Longrightarrow a^nb^mc^{n+m}[/tex]
با n بار اشتقاق روی قاعده ی اول در نهایت از قانون دوم استفاده کرد و به جای s متغیر A قرار می دهیم و با m با اشتقاق روی قانون سوم و در نهایت استفاده از قانون چهارم به زبان [tex]\{a^nb^mc^{n+m}\: \: |\: n,m\ge0\}[/tex] این زبان منظم نیست و مستقل از متن است پس نمی توان برای ان عبارت منظم نوشت
عبارت منظمی که بعد از هر b یک a ظاهر شود با الفبای [tex]\{a,b,c\}[/tex]:
دو حالت داریم اول اینکه از b استفاده نشود [tex](a+c)^{\ast}[/tex] و حالت دوم از b استفاده می شود که باید بعد از هر b یک a ظاهر شود یعنی کوچکترین رشته ی ما ba است ولی قبل و بعد از ان می تواندهر تعداد c , aبا هر ترکیبی وجود داشته باشد و از طرفی کل عبارت را هم استار می کنیم تا بتوانیم رشته های که تعداد زیادی b دارند نیز ایجاد کنیم یعنی [tex]((a+c)^{\ast}ba(a+c)^{\ast})^{\ast}[/tex] که با اجتماع شدن با حالت اول در نهایت خواهیم داشت[tex](a+c)^{\ast}+((a+c)^{\ast}ba(a+c)^{\ast})^{\ast}[/tex]
باید توجه کرد که عبارت منظم یک زبان منحصر به فرد نیست و میتوان بی نهایت عبارت منظم برای یک زبان نوشت.