۱
subtitle
ارسال: #۱
  
سوال در مورد یک زبان مستقل از متن
دوستان میشه لطفا برام توضیح بدین که چرا این زبان مستقل از متن است؟
زبان : w1cw2 با این شرط ها
w1 وw2 متعلق به + {a,b} و
w1 با معکوس w2 برابر نباشد
ببخشید که این طوری نوشتمش
زبان : w1cw2 با این شرط ها
w1 وw2 متعلق به + {a,b} و
w1 با معکوس w2 برابر نباشد
ببخشید که این طوری نوشتمش
۲
ارسال: #۲
  
RE: سوال در مورد یک زبان مستقل از متن
این سوال یکی از سخت ترین سوالات کتاب نظریه زبان ها و ماشین های پروفسور لینز است. برای اثبات مستقل از متن بودن یک زبان، کافی است گرامر مستقل از متنی برای آن بیاوریم. در زیر گرامر مستقل از متن آورده ایم :
گرامر :
[tex]S\: \longrightarrow\: aSa\: |\: bSb\: |\: aAb\: |\: bAa\: |\: aB\: |\: bB\: |\: Ca\: |\: Cb[/tex]
[tex]A\: \longrightarrow\: aA\: |\: bA\: |\: Aa\: |\: Ab\: |\: c\: [/tex]
[tex]B\: \longrightarrow\: aB\: |\: bB\: |\: c\: [/tex]
[tex]C\: \longrightarrow\: Ca\: |\: Cb\: |\: c\: [/tex]
گرامر :
[tex]S\: \longrightarrow\: aSa\: |\: bSb\: |\: aAb\: |\: bAa\: |\: aB\: |\: bB\: |\: Ca\: |\: Cb[/tex]
[tex]A\: \longrightarrow\: aA\: |\: bA\: |\: Aa\: |\: Ab\: |\: c\: [/tex]
[tex]B\: \longrightarrow\: aB\: |\: bB\: |\: c\: [/tex]
[tex]C\: \longrightarrow\: Ca\: |\: Cb\: |\: c\: [/tex]
۱
ارسال: #۳
  
RE: سوال در مورد یک زبان مستقل از متن
چون
w1 وw2 متعلق به + {a,b} پس ما تا قبل از دیدن c هر چه می بینیم w1 است و بعد از دین هر چه می بیینیم جزو w2
برای نوشتن ماشین پشته ای کافی است با دین هر کاراکتری از w1 عینا همان کاراکتر را به پشته وارد کنید و بعد از آن با ددین هر کاراکتر w2 در صورتیکه آن کاراکتر با نماد بالای پشته برابر بود نماد بالای پشته را حذف می کنیم و به محض دیدن یک نابرابری در بین کاراکتر ورودی و نماد بالای پشته به حالت پایانی می رویم
اینم ماشینش که البته q2 حالت پایانیه
[tex]\delta(q_0,\: a,\: z)=(q_0,az)[/tex]
[tex]\delta(q_0,\: a,\: a)=(q_0,aa)[/tex]
[tex]\delta(q_0,\: b,\: z)=(q_0,bz)[/tex]
[tex]\delta(q_0,\: b,\: b)=(q_0,bb)[/tex]
[tex]\delta(q_0,\: a,\: b)=(q_0,ab)[/tex]
[tex]\delta(q_0,\: b,\: a)=(q_0,ba)[/tex]
[tex]\delta(q_0,\: c,\: a)=(q_0,a)[/tex]
[tex]\delta(q_0,\: c,\: b)=(q_0,b)[/tex]
[tex]\delta(q_1,\: a,\: a)=(q_1,\: \lambda)[/tex]
[tex]\delta(q_1,\: b,\: b)=(q_1,\: \lambda)[/tex]
[tex]\delta(q_1,\: a,\: b)=(q_2,\: \lambda)[/tex]
[tex]\delta(q_1,\: b,\: a)=(q_2,\: \lambda)[/tex]
[tex]\delta(q_2,\: b,\: b)=(q_2,\: \lambda)[/tex]
[tex]\delta(q_2,\: b,\: a)=(q_2,\: \lambda)[/tex]
[tex]\delta(q_2,\: a,\: b)=(q_2,\: \lambda)[/tex]
[tex]\delta(q_2,\: a,\: a)=(q_2,\: \lambda)[/tex]
w1 وw2 متعلق به + {a,b} پس ما تا قبل از دیدن c هر چه می بینیم w1 است و بعد از دین هر چه می بیینیم جزو w2
برای نوشتن ماشین پشته ای کافی است با دین هر کاراکتری از w1 عینا همان کاراکتر را به پشته وارد کنید و بعد از آن با ددین هر کاراکتر w2 در صورتیکه آن کاراکتر با نماد بالای پشته برابر بود نماد بالای پشته را حذف می کنیم و به محض دیدن یک نابرابری در بین کاراکتر ورودی و نماد بالای پشته به حالت پایانی می رویم
اینم ماشینش که البته q2 حالت پایانیه
[tex]\delta(q_0,\: a,\: z)=(q_0,az)[/tex]
[tex]\delta(q_0,\: a,\: a)=(q_0,aa)[/tex]
[tex]\delta(q_0,\: b,\: z)=(q_0,bz)[/tex]
[tex]\delta(q_0,\: b,\: b)=(q_0,bb)[/tex]
[tex]\delta(q_0,\: a,\: b)=(q_0,ab)[/tex]
[tex]\delta(q_0,\: b,\: a)=(q_0,ba)[/tex]
[tex]\delta(q_0,\: c,\: a)=(q_0,a)[/tex]
[tex]\delta(q_0,\: c,\: b)=(q_0,b)[/tex]
[tex]\delta(q_1,\: a,\: a)=(q_1,\: \lambda)[/tex]
[tex]\delta(q_1,\: b,\: b)=(q_1,\: \lambda)[/tex]
[tex]\delta(q_1,\: a,\: b)=(q_2,\: \lambda)[/tex]
[tex]\delta(q_1,\: b,\: a)=(q_2,\: \lambda)[/tex]
[tex]\delta(q_2,\: b,\: b)=(q_2,\: \lambda)[/tex]
[tex]\delta(q_2,\: b,\: a)=(q_2,\: \lambda)[/tex]
[tex]\delta(q_2,\: a,\: b)=(q_2,\: \lambda)[/tex]
[tex]\delta(q_2,\: a,\: a)=(q_2,\: \lambda)[/tex]
ارسال: #۴
  
RE: سوال در مورد یک زبان مستقل از متن
سلام. متشکر. با اجازتون این چند خط رو ویرایش میکنم:
دوتای اول برای تغییر حالته و بقیه برای امکان خالی شدن پشته و گیر کردن به ازای ورودی های بعدیه. آخر پشته رو در حالت نهایی b قرار دادم و تغییرش ندادم.
(۲۶ اردیبهشت ۱۳۹۳ ۰۲:۴۹ ق.ظ)fatemeh69 نوشته شده توسط: [tex]\delta(q_0,\: c,\: a)=(q_1,a)[/tex]
[tex]\delta(q_0,\: c,\: b)=(q_1,b)[/tex]
[tex]\delta(q_1,\: a,\: b)=(q_2,\: b)[/tex]
[tex]\delta(q_1,\: b,\: a)=(q_2,\: b)[/tex]
[tex]\delta(q_2,\: b,\: b)=(q_2,\: b)[/tex]
[tex]\delta(q_2,\: a,\: b)=(q_2,\: b)[/tex]
دوتای اول برای تغییر حالته و بقیه برای امکان خالی شدن پشته و گیر کردن به ازای ورودی های بعدیه. آخر پشته رو در حالت نهایی b قرار دادم و تغییرش ندادم.
۰
ارسال: #۵
  
RE: سوال در مورد یک زبان مستقل از متن
(۲۴ اردیبهشت ۱۳۹۳ ۰۵:۳۸ ب.ظ)negar.v نوشته شده توسط: دوستان میشه لطفا برام توضیح بدین که چرا این زبان مستقل از متن است؟
زبان : w1cw2 با این شرط ها
w1 وw2 متعلق به + {a,b} و
w1 با معکوس w2 برابر نباشد
ببخشید که این طوری نوشتمش
برای اثبات مستقل از متن بودن یک زبان باید گرامر مستقل از متنی برایش موجود باشد و برای رد آن هم از لم پامپینگ استفاده می شود.
۰
ارسال: #۶
  
RE: سوال در مورد یک زبان مستقل از متن
(۲۴ اردیبهشت ۱۳۹۳ ۰۵:۳۸ ب.ظ)negar.v نوشته شده توسط: دوستان میشه لطفا برام توضیح بدین که چرا این زبان مستقل از متن است؟
زبان : w1cw2 با این شرط ها
w1 وw2 متعلق به + {a,b} و
w1 با معکوس w2 برابر نباشد
ببخشید که این طوری نوشتمش
سلام
همونطور که میدونیم زبان w1w2 با این شرط که w1 و w2 متعلق به + {a,b} و w1 برابر با معکوس w2 باشد، مستقل از متن است
( peter linz , all edition )
متونیم اثبات کنیم بر اساس مثال فوق که زبان w1w2 به قسمی کهw1 با معکوسw2 برابر نباشد هم مستقل از متن است و لذا به راحتی می توان اثبات کرد که زبان w1w2 با شرط گفته شده، مستقل از متن است .
اگر کمی سعی کنید میتوانید ماشین پشته ای آن را بنویسید.
در صورت ابهام به فیسبوک من پیام بدین
مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمیباشید. جهت مشاهده پیوندها ثبت نام کنید.
۰
Can I see some ID?
Feeling left out?
نگران نباش، فقط روی این لینک برای ثبت نام کلیک کن. رمزت رو فراموش کردی؟ اینجا به یادت میاریم! close