دستور زبان منظم: تفاوت میان نسخه‌ها

محتوای حذف‌شده محتوای افزوده‌شده
خط ۱:
{{ویکی‌سازی}}
در [[علم رایانه]]، قواعد [[دستور زبان]] به نوعی دستور [[زبان رسمی]] اطلاق می‌شود که قواعد یک زبان را توصیف می‌کند.
 
== قواعد محکم دستور زبان ==
خط ۲۵:
و S علامت آغاز است. این دستور زبان همان زبانی را توصیف می‌کند که در عبارت a*bc* وجود دارد.
 
[[گرامر منظم]] راست G هرچند طولانی‌تر، اما ساده‌تر همین توصیف را برای عبارت N = {S, A, B, C}, ∑ = {a, b, c} توضیح می‌دهد که p در آن شامل قواعد زیر است:
:
:S -> A
خط ۵۴:
 
== قدرت مؤثر ==
میان قواعد یک گرامر منظم چپ (محکم) با قواعد غیرقطعی موجود در ماشین اتوماتیک نامحدود ارتباط مستقیم یک‌به‌یک وجود دارد. چنین دستور زبانی دقیقاً زبان مورد قبول ماشین اتوماتیک را ایجاد می‌کند؛ بنابراین، گرامر منظم چپ دقیقاً تمامی زبانهای منظم را بوجود می‌آورد. گرامر منظم راست برعکس این زبان‌ها را توصیف می کندکه آنها نیز خود [[زبان‌های منظم]] هستند.
هر گرامر منظم راست، قواعد راست را تعمیم می‌دهد، در حالیکه هر گرامر منظم راست می‌تواند با داخل نمودن نمادهای غیر قطعی جدید، دقیق شود، که نتیجه آن ایجاد زبان مشابهی می‌باشد، بنابراین گرامر منظم راست، زبانهای منظمی را نیز بوجود میاورد. بدین ترتیب گرامر منظم چپ تعمیم یافته نیز چنین عمل مشابهی را انجام می‌دهد.
اگر مجموعه تهی مورد پذیرش قرار نگیرد، تنها تمام زبان‌های منظمی که مجموعه تهی در آنها یافت نمی‌شود می‌توانند ایجاد شوند.
 
== ترکیب قواعد منظم چپ و راست ==
اگر ترکیب قواعد منظم چپ و راست مجاز باشد، ما هنوز هم یک گرامر خطی داریم، اما لزوماً یک گرامر منظم نیست. به‌علاوه، چنین گرامری نیازمند ایجاد یک [[زبان منظم]] نیست: تمامی گرامرهای خطی به سادگی می‌توانند به این شکل درآیند، و بنابراین، چنین گرامرهایی می‌توانند دقیقاً تمامی زبان‌های خطی، از جمله زبان‌های نامنظم را ایجاد کنند.
 
{{پانویس}}
خط ۷۱:
 
[[رده:زبان‌های صوری]]
[[رده:ویکی‌سازی رباتیک]]