सबसे पहले, "सैद्धांतिक कंप्यूटर विज्ञान" का अर्थ अलग-अलग लोगों के लिए अलग-अलग चीजें हैं। मुझे लगता है कि इस साइट पर अधिकांश उपयोगकर्ताओं के लिए, एक ऐतिहासिक कैरिकेचर (जो कुछ आधुनिक समाजशास्त्रीय प्रवृत्तियों को दर्शाता है) यह है कि "थ्योरी ए" और "थ्योरी बी" (उनके बीच कोई निहित आदेश संबंध नहीं है): थ्योरी ए में सिद्धांत शामिल हैं एल्गोरिदम, जटिलता सिद्धांत, क्रिप्टोग्राफी, और समान। थ्योरी बी में प्रोग्रामिंग भाषाओं के सिद्धांत, ऑटोमेटा के सिद्धांत आदि जैसी चीजें शामिल हैं। गणित में आपके स्वाद के आधार पर, आप एक दूसरे पर (या दोनों समान रूप से) पसंद कर सकते हैं। मैं "थ्योरी ए" से अधिक परिचित हूं, इसलिए मुझे वहां कुछ संदर्भ देना चाहिए:
शुरुआत Sipser की पुस्तक से करें। यह आपको ऑटोमेटा, ट्यूरिंग मशीन, कम्प्यूटेबिलिटी, कोलमोगोरोव जटिलता, पी बनाम एनपी, और कुछ अन्य जटिलता वर्गों का अच्छा परिचय देगा। यह बहुत अच्छी तरह से लिखा गया है (मेरी राय में, यह सबसे अच्छी लिखित तकनीकी पुस्तकों में से एक है )
एल्गोरिदम के लिए, क्लेनबर्ग-टार्डोस के लिए मेरी थोड़ी सी प्राथमिकता है, लेकिन वहां कई अच्छी परिचयात्मक किताबें हैं। आपको विशेष रूप से कम्प्यूटेशनल ज्यामिति में रुचि हो सकती है, जिसमें महान पुस्तकों का अपना सेट है।
यह देखते हुए कि आप एक गणित स्नातक छात्र हैं, इन किताबों से गायब टीसीएस की एक प्रमुख शाखा बीजीय जटिलता सिद्धांत है, जो अक्सर बीजगणित (कम्यूटेटिव और नॉन-कम्यूटेटिव), प्रतिनिधित्व सिद्धांत, समूह सिद्धांत, और बीजीय ज्यामिति से निकटता से संबंधित है। । यहाँ एक विहित पाठ है, जो है बर्गिसर-क्लॉज़ेन-शोकरोलही। यह कुछ हद तक विश्वकोश से सम्बंधित है, तो सबसे अच्छा परिचय नहीं हो सकता है, लेकिन मैं नहीं कर रहा हूँ यकीन है कि वहाँ है इस क्षेत्र में एक बहुत परिचयात्मक पुस्तक। आप चेन-कयाल-विगडरसन और शिप्का-येहुदायॉफ द्वारा सर्वेक्षण भी देख सकते हैं।
उसके बाद, मैं आपके गणितीय स्वाद के आधार पर, विशेष विषयों पर अधिक उन्नत पुस्तकों के माध्यम से ब्राउज़ करने का सुझाव दूंगा:
अरोड़ा-बराक अधिक आधुनिक जटिलता सिद्धांत है (जहां पर Sipser की पुस्तक समाप्त होती है, वहां बोलने के लिए जारी रहती है), आपको इसमें शामिल तकनीकों का मिश्रण (संयोजन और बीजगणित का मिश्रण, अधिकतर) देती है।
बूलियन फ़ंक्शन जटिलता पर जुकना की पुस्तक समान है, लेकिन विशेष रूप से बुलियन सर्किट जटिलता के लिए अधिक गहराई से (स्वाद में बहुत कम्बिनेटरियल)
ज्यामितीय जटिलता सिद्धांत। जियोमीटर के लिए यहां या लैंड्सबर्ग का परिचय देखें ।
बोडियन फंक्शंस के ओ'डॉनेल की पुस्तक विश्लेषण में अधिक फूरियर-विश्लेषणात्मक बेंट है।
क्रिप्टोग्राफी। यहां अधिक उन्नत गणितीय पहलू आमतौर पर संख्या सिद्धांत और बीजगणितीय ज्यामिति हैं। जबकि ये शुद्ध गणितीय पहलू क्रिप्टोग्राफी के केवल एक छोटे हिस्से का प्रतिनिधित्व करते हैं, वे एक महत्वपूर्ण हैं जो आपको दिलचस्प लग सकते हैं। मेरा क्षेत्र नहीं होने के कारण, मुझे यकीन नहीं है कि यहां एक अच्छी शुरुआत किताब है।
कोडिंग सिद्धांत। यहाँ, गणितीय सिद्धांत क्षेत्र-पैकिंग (Conway और Sloane द्वारा पुस्तक देखें) से लेकर बीजीय ज्यामिति तक (जैसे, स्टिचेनथ द्वारा पुस्तक) है। फिर से, मेरा क्षेत्र नहीं, इसलिए मुझे यकीन नहीं है कि ये सबसे अच्छे शुरुआती बिंदु हैं, लेकिन उनके माध्यम से फ़्लिप करने से आप जल्दी से स्वाद प्राप्त करेंगे और तय करेंगे कि क्या आप गहराई से खोदना चाहते हैं।
और फिर कई अन्य गणितीय विषय भी हैं जो केवल शोध साहित्य में दिखाई देते हैं, जैसे कि फेम, ग्राफ सिद्धांत, सी * -ललेजब्रस (मुझे सिर्फ कैडिसन-सिंगर अनुमान के लिए आपको इंगित करते हैं ), अपरिवर्तनीय सिद्धांत, प्रतिनिधित्व सिद्धांत, चतुष्कोण, और पर और पर। इनसे संबंधित प्रश्न भी देखें