علوم کامپیوتر نظری
با اینکه علوم کامپیوتر یکی از حوزههای نوپای دانش بشری است، اما به جرات میتوان گفت در چند دههی اخیر بیشترین و ژرفترین اثر را بر زندگی بشر و دیگر حوزههای دانش نهادهاست. کامپیوتر از سویی به عنوان یک ابزار محاسباتی بسیار قدرتمند، هر جا که صحبت از انجام محاسبات پیچیده باشد، مورد استفاده قرار میگیرد. محاسباتی مانند محاسبات مربوط به طراحی یک سازهی بزرگ، محاسبات دقیق مورد نیاز برای پرتاب یک فضاپیما، تحلیل دادههای هواشناسی و غیره. همچنین کامپیوتر علاوه بر توانایی پردازش سریع دادهها، توان ذخیرهسازی و انتقال سریع آنها را نیز دارد. این دو عامل باعث شدهاند که حوزههای میانرشتهای متعددی بین علوم کامپیوتر و دیگر حوزههای علم شکل بگیرند. از همین رو علوم کامپیوتر با طیف وسیعی و گوناگونی از موضوعات مختلف مانند الکترونیک، ریاضیات ، مدیریت، مهندسی صنایع، فیزیک، شیمی، اقتصاد، علوم ارتباطات و … شانه به شانه میشود. اما قلب تپندهی علوم کامپیوتر و حوزهای که میتوان گفت بیش از دیگر حوزهها در آن علوم کامپیوتر به تنهایی جلوه مینماید، علوم کامپیوتر نظری است. در این حوزه، همانگونه که از نامش برمیآید، ابعاد نظری دانش کامپیوتر مورد پژوهش و مطالعه قرارمیگیرد. اغلب این مباحث از بار ریاضی فراوانی برخوردارند، به گونهای که بیشتر آنها مانند نظریهی محاسبه، نظریهی الگوریتمی گراف، نظریهی الگوریتمی اعداد، نظریهی الگوریتمی بازیها، نظریهی انواع، نظریهی اطلاعات، زبانهای رسمی و نظریهی پیچیدگی تقریباً به تمامی از دل ریاضیات برآمده و در علوم کامپیوتر شکل جدیدی را تجربه میکنند. به بیان دیگر، در علوم کامپیوتر نظری به دنبال ایجاد و توسعهی روشها و ابزارهای ریاضی کارا برای تحلیل، طراحی وبهینهسازی اعمال و سیستمهای محاسباتی هستیم. مهمترین شاخههای علوم کامپیوتر نظری عبارتند از:
• نظریهی محاسبه
• نظریهی پیچیدگی
• نظریهی اطلاعات
• نظریهی گراف
• منطق
• الگوریتم و دادهساختار
• نظریهی زبانهای صوری
• محاسبات علمی