کتاب نظریه زبان ها و ماشین ها (The Theory of Formal Languages and Automata) مقدمه ای بر نظریه زبان ها و آتوماتا است که برای دانشجویان کارشناسی رشته های مهندسی و علوم کامپیوتر طراحی شده است. در این کتاب مدل های مختلف محاسباتی، بیان رسمی مدل ها و گرامرها، خواص محاسباتی و کاربردهای آنها، تصمیم-پذیری و ماشین تورینگ بررسی می شوند. پیش نیازهای لازم برای استفاده و یادگیری این کتاب مهارت در درس برنامه سازی پیشرفته، آشنایی با ساختمان داده ها و الگوریتم ها و همچنین آشنایی با مباحث مرتبط با ساختمان های گسسته است. هدف از مطالعه و یادگیری مطالب این کتاب داشتن دانش پایه و پیش نیازی برای دروس طراحی کامپایلرها، طراحی الگوریتم ها، نظریه محاسبات و همچنین دروس مرتبط با توصیف و مدل سازی رسمی سامانه های کامپیوتری است. با توجه به اهمیت درس نظریه زیان ها و ماشین ها برای داشتن دانش پایه در علوم محاسبات و همچنین اهمیت آن در آزمون های مختلف برای دانشجویان، انگیزه ای برای نویسندگان ایجاد شد تا بر اساس سال ها تجربه تدریس این درس و دروس پیش نیاز و همچنین با استفاده از مطالب کتاب های مرجع ارائه شده در دانشگاه های معتبر بین المللی کتابی جامع، ساده و مساله محور ارائه نمایند. برای پرهیز از تئوری صرف و اثبات طولانی قضایا، همچنین جلوگیری از خستگی خواننده و از طرف دیگر با آگاهی از دیدگاه بسیاری از دانشجویان مهندسی کامپیوتر بر تمایل به یادگیری مطالب کاربردی، سعی شده است که ارائه قضایا و اثبات آنها به خلاصه ترین شکل ممکن صورت گرفته و سادگی در ارائه مطالب نیز رعایت گردد. همچنین مطالب این کتاب بیشتر به سمت مساله محوری رفته است تا علاقه دانشجویان مبنی بر یادگیری مطالب کاربردی و مساله محور نیز رعایت گردد. اعتقاد داریم که با مطالعه کتاب هایی که به صورت مساله محور نگارش شده اند علاوه بر این که دانشجویان با قضایا و مباحث تئوری آشنا می شوند با نحوه به-کارگیری آنها برای حل مسائل نیز آشنا خواهند شد. در انتهای هر فصل نیز مسائل و تمرین های متعددی گردآوری و ارائه شده اند تا خواننده با تمرکز بر حل آنها جنبه مساله محوری را تقویت کند و علاوه بر تمرین بیشتر، نحوه استفاده از قضایای ریاضی و محاسباتی را در حل مسائل ممارست نماید. این کتاب در ده فصل تنظیم شده است که کلیه سرفصل های مشخص شده برای درس نظریه زبان ها و ماشین ها ت