نظریه پیچیدگی
دانش رده بندی مسائل بر اساس سختی محاسباتی
برای غلبه بر پیچیدگی چه می توان کرد؟
تغییر مسئله پس از کشف که عامل دشواری آن
تقریب زدن راه حل مسئله
ارائه روش هایی که در حالت متوسط عملکرد خوبی دارند؛
استفاده از روش های تصادفی
کاربردها
به عنوان مثال در رمزنگاری، هدف این است که رمزگشایی با توان محاسباتی مهاجم غیرممکن باشد.
عناوین مورد بحث
نظریه پیچیدگی
نظریه محاسبه پذیری
نظریه ماشین ها
مبانی ریاضی
الفبا
رشته ها
زبان ها
نظریه محاسبه پذیری
ماشین ها چه مسائلی را می توانند حل کنند؟
رده بندی مسائل در دو گروه قابل محاسبه و غیرقابل محاسبه
مدل های نظری برای ماشین ها
به علت قدرتمندی مدل هایی مانند RAM یا ماشین تورینگ اثبات این که چه مسائلی را می توانند حل کنند دشوار است.
نظریه ماشین ها
تعریف و ویژگی های مدل های ریاضی محاسبه
مدل ماشین حالت متناهی
در پردازش متن، کامپایلرها و طراحی سخت افزار کاربرد دارد.
مدل ماشین پشته ای
در زبان های برنامه سازی و هوش مصنوعی کاربرد دارد.
Logic
انواع منطق
Propositional logic منطق کامل
Predicate logic منطق مُسندی
تعريف منطق
Syntax
مجموعه اي از متغيرها و انواع عملگرها
{p, q, r, …} متغيرها
و
} , ν, →, ↔^{┐, عملگرها
Semantic
معنايي که توسط جدول درستي براي دنباله اي از نمادها به تعداد محدود بار، به
همراه يک Syntax خاص، تعريف مي شود.
تعاريف
فرمول : دنباله اي محدود از نمادها به تعداد محدود بار به همراه يک Syntax خاص
Logical System: مجموعه اي از اصول و قواعد استنتاج
اصول (axioms): گزاره هايي از منطق مورد نظر که هميشه درست است، تعداد آنها مي تواند محدود يا نامحدود باشد.
قواعد استنتاج: قواعدي که از طريق آنها مي توان از دو گزارۀ درست به يک گزارۀ درست ديگر رسيد.