Problem Solving in Automata Languages and Complexity
در طول بیست سال گذشته، ماشینهای خودکار و زبانهای قرار دادی به عنوان یک درس تئوری مقدماتی در برنامهی درسی دانشجویان لیسانس و فارغ التحصیلان علوم کامپیوتر گنجانده شده است. مطالبی که در این درس تدریس میشود شامل نظریه ماشینهای خودکار، زبانهای قراردادی و مدلهای محاسباتی میشود. همچنین برای دورههای تکمیلی؛ نظریه محاسبات و نظریه پیچیدگی محاسبات پوشش داده شده است. با اینکه این مطالب در بیشتر زمینههای علوم کامپیوتر پایه ای هستند، در این درس به دانشجویان این فرصت داده میشود تا کار کردن با ابزارهای مختلف ریاضی برای اشیا انتزاعی غیر استاندارد را فرا بگیرند.
این کتاب با تاکید بر حل مسئله تالیف شده است. این روش معمولا به عنوان بهترین روش شناخته میشود؛ اگر چه تنها روش برای فراگیری موضوعات ریاضی در میان تجربههای زیاد حل مسئله نیست. با دست و پنجه نرم کردن با مسئله به صورت مستقیم، نه تنها تکنیکها و ابزارهای لازم را برای حل مشکل فرا میگیرید؛ بلکه مفاهیم پشت زمینه مسئله را نیز بهتر درک خواهید کرد. نظریه محاسبات، ذاتا مفهومی انتزاعی دارد و رویکرد حل مسئله مفید به نظر میرسد.
سرفصلهای کتاب Problem Solving in Automata, Languages, and Complexity:
1) Regular Languages
2) Finite Automata
3) Context-Free Languages
4) Turing Machines
5) Computability Theory
6) Computational Complexity