सभी को क्या किताबें पढ़नी चाहिए?


229

[ समयरेखा ]


इस सवाल में एक ही भावना है कि सभी को कौन से पेपर पढ़ना चाहिए और हर किसी को क्या वीडियो देखना चाहिए । यह सैद्धांतिक कंप्यूटर विज्ञान के विभिन्न क्षेत्रों में उल्लेखनीय पुस्तकों के लिए पूछता है।

पुस्तकें गणित-उन्मुख हो सकती हैं, फिर भी आपको कंप्यूटर वैज्ञानिक के लिए यह बहुत अच्छा लग सकता है। उदाहरण:

  • संभावना
  • असमानता
  • तर्क
  • ग्राफ सिद्धांत
  • साहचर्य
  • एल्गोरिथम का डिज़ाइन और विश्लेषण
  • कम्प्यूटेशन / कम्प्यूटेशनल जटिलता का सिद्धांत

कृपया प्रत्येक उत्तर उसी विषय की पुस्तकों के लिए समर्पित करें (जैसे कॉम्बिनेटरिक्स पर किताबें)।

नोट: शीर्षक भ्रामक हो सकता है। यहाँ एक स्पष्टीकरण दिया गया है: कंप्यूटर विज्ञान में X और Y दो क्षेत्र होने चाहिए। ऐसी किताबें हैं जो सभी को पसंद हैं

  • क्षेत्र में एक्स को पढ़ना चाहिए।
  • फील्ड में Y को पढ़ना चाहिए।
  • दोनों क्षेत्रों में पढ़ना चाहिए।

यह प्रश्न सभी 3 मामलों को ढूंढता है। दूसरे शब्दों में, यह बाद के मामले के लिए विशिष्ट नहीं है।

संपादित करें: जैसा कि दाई ले द्वारा सुझाया गया है , कृपया पुस्तक को भी पसंद करने के कारण पर प्रकाश डालें


संबंधित विषय:


चूँकि मैं इस प्रश्न का उत्तर नहीं दे सकता हूँ कि मैं इसे यहाँ करूँगा। असतत गणित - टीटीसी: असतत गणित आर्थर टी। बेंजामिन द्वारा। यह सेट थ्योरी से लेकर ग्राफ़ और प्रोबेबिलिटी तक विभिन्न विषयों पर एक व्याख्यान बंडल है।
पिथिकोस

कंप्यूटर की विज्ञान की प्रमुख शाखाओं को कवर करने वाली कैनोनिकल परिचयात्मक पाठ्यपुस्तकों की सूची क्या वहाँ से परिचयात्मक पुस्तक की सूची के साथ उल्लेखनीय पुस्तकों की तुलना करना दिलचस्प हो सकता है ? reddit / compsci पर सवाल। कुछ ओवरलैप है, लेकिन सौभाग्य से मतभेद पर्याप्त रूप से महत्वपूर्ण हैं।
थॉमस क्लिंपेल

जवाबों:


91

अभिकलनात्मक जटिलता:

यदि आप हाल की जटिलता पाठ्यपुस्तकों की तलाश कर रहे हैं। निम्नलिखित दो होने चाहिए।

इन दो पुस्तकों के बीच सामग्री का बहुमत तुलनीय है। हालांकि, कुछ प्रमुख अंतर मौजूद हैं: गोल्डीरिच जटिलता सिद्धांत के वैचारिक और दार्शनिक आधार की खोज करने के लिए अधिक स्थान समर्पित करता है, जबकि अरोरा / बराक विषयों के व्यापक चयन को शामिल करता है, जिसमें जटिलता के ठोस मॉडल, क्वांटम कम्प्यूटेशन और सर्किट सीमाएं शामिल हैं जो ज्यादातर अनुपस्थित हैं। पूर्व से।

एक अन्य विकल्प, जटिलता में एक पुरानी लेकिन कालातीत पाठ्यपुस्तक है:

पापादिमित्रिउ की पुस्तक प्रथम क्रम के तर्क के साथ-साथ एसएनपी, मैक्सिमन 0 कक्षाओं को कवर करने वाले अध्यायों के लिए उल्लेखनीय है।0 और एपीएक्स (अनुमानित की कठोरता की सैद्धांतिक नींव) , जो अधिक आधुनिक ग्रंथों से गायब हैं।

एक और (तुलनात्मक रूप से) पुराना है, लेकिन काफी उल्लेखनीय क्लासिक है:

यह कुछ / पहले पाठ्यपुस्तकों में से एक है जिसमें स्पष्ट रूप से "प्रूफ आइडिया:" के बीच "प्रमेय:" और "प्रूफ:" शामिल हैं, और किसी भी विषय पर सर्वश्रेष्ठ लिखित गणितीय पाठ्यपुस्तकों में से एक है । दूसरी ओर, यह केवल जटिलता का एक परिचय है, "उन्नत विषयों" (सन्निकटन, संभाव्य एल्गोरिदम, आईपी = PSPACE, और क्रिप्टो सहित) के लिए केवल एक 50-पृष्ठ अध्याय को समर्पित करना। जटिलता पर पहली पुस्तक के रूप में, या वास्तव में उत्कृष्ट लेखन के उदाहरण के रूप में, यह पुस्तक महान है

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


2
इन पुस्तकों में एक दूसरे से तुलना करने के इच्छुक लोगों के लिए, मैं अरोरा / बराक और गोदरिख की इस पुस्तक की समीक्षा की पेशकश कर सकता हूं जो मैंने हाल ही में SIGACT पुस्तक समीक्षा कॉलम के लिए लिखा था।
डैनियल अपॉन

1
अमेज़ॅन पर लांस फोर्टवे की अपनी पसंदीदा कम्प्यूटेशनल जटिलता पुस्तकों की सूची भी देखें: amzn.com/l/22R1UX0Y9YRT2
एलेसेंड्रो

5
Sipser की पुस्तक पर एकमात्र टिप्पणी यह ​​है कि वह कभी-कभी कम्प्यूटेबिलिटी सिद्धांत को कवर करते समय अमानक नामों का उपयोग करता है। उदाहरण के लिए, वह "अर्ध-पतनशील" के बजाय "पहचानने योग्य" का उपयोग करता है। लेकिन मुझे लगता है कि चूंकि पाठ्यपुस्तक का व्यापक रूप से उपयोग किया जाता है, इसलिए यह अब तक मानक बन सकता है।
दाई ले

4
दरअसल, यह सामान्य रूप से एक उत्कृष्ट टिप्पणी है, @ दई ले। मैं गोदरेज और अरोरा / बराक के बीच समान अंतरों के बारे में सोच सकता हूं। उदाहरण के लिए, गोल्डीरिच नाम का उपयोग करता है और अरोरा / बराक एफ एन पी नाम का उपयोग करता है , भले ही वे दोनों एक ही अवधारणा के बारे में बात कर रहे हों। PCFNP
डैनियल अपॉन

1
मैंने पाया है कि Sipser वास्तव में जटिलता सिद्धांत, ymmv को पढ़ाने के लिए Papadimitriou से कहीं अधिक उपयोगी है।
जेफ बर्ड्स

49

एनपी पूर्णता:

खैर, मुझे लगता है कि गैरी और जॉनसन के कंप्यूटर और इंट्रेक्टेबिलिटी: ए गाइड टू द थ्योरी ऑफ एनपी-कंप्लीटनेस इस सूची में शीर्ष पुस्तकों में से मिल जाएगी।


6
30 साल बाद भी जटिलता सिद्धांत का सबसे अच्छा परिचय।
एमिल

1
दशकों के बाद यह पुस्तक अभी भी एक जगह एनपी की पूरी समस्याओं की सबसे पूरी सूची है, जाहिरा तौर पर, लगभग एक विश्वकोश, और कई सीएस शोधकर्ता इस दृष्टिकोण को साझा करते प्रतीत होते हैं
vzn

1
यह एक सामान्य प्रश्न के लिए पूछे जाने वाले प्रश्न में जोड़ा जा सकता है, "क्या मेरी समस्या एक्स एनपी पूरी है?" जवाब के साथ, "1 इस पुस्तक को 1 चेक करें और फिर हमारे पास वापस
आएं

47

एल्गोरिदम का डिजाइन और विश्लेषण:

कॉर्मेन, थॉमस एच।, चार्ल्स ई। लिसेरसन, रोनाल्ड एल। रिवेस्ट और क्लिफोर्ड स्टीन। एल्गोरिदम का परिचय।

आर। मोटवानी, पी। राघवन। यादृच्छिक एल्गोरिदम।

मुझे यह पुस्तक रयान विलियम्स द्वारा MathOverflow: Algorithm Design by Kleinberg & Tardos द्वारा सुझाई गई पुस्तक मिली ।

एक और उत्कृष्ट पुस्तक है इंट्रोडक्शन टू अल्गोरिद्म: ए क्रिएटिव एप्रोच बाय उडी मंबर । यह पुस्तक एल्गोरिदम की एक सूची नहीं है; बल्कि, यह पाठक को "अमूर्त समस्याओं में गणितीय संरचना को पहचानने" के अंतर्ज्ञान के साथ प्रदान करने की कोशिश करता है। (एक समीक्षा से उद्धृत)


7
"सेग्विक और फ्लाजोलेट द्वारा एल्गोरिदम के विश्लेषण का परिचय" महान है।
Jay

डैनियल स्पीलमैन अपने "डिज़ाइन एंड एनालिसिस ऑफ़ अल्गोरिद्म" पाठ्यक्रम में क्लेनबर्ग और टार्डोस की पुस्तक का उपयोग करता है। मैंने इसे लिया, और वास्तव में पुस्तक को प्यार किया। मुझे यह CLRS की तुलना में बहुत अधिक स्वीकार्य लगा।
एलेक्स रिंकिंग

43

कंप्यूटर विज्ञान के लिए सामान्य गणित:


41

सिस्टम और प्रोग्रामिंग भाषा शब्दार्थ:

बेंजामिन पियर्स के प्रकार और प्रोग्रामिंग भाषा और प्रकार और प्रोग्रामिंग भाषाओं में अनुवर्ती उन्नत विषय । वे प्रोग्रामिंग लैंग्वेज के शब्दार्थों को व्यक्त करने के लिए ऑपरेशनल सेमेंटिक्स का उपयोग करने के साथ-साथ प्रोग्रामिंग लैंग्वेज डिजाइन में टाइप थ्योरी की भूमिका का एक ठोस अभी तक संक्षिप्त अवलोकन प्रदान करते हैं।


7
टाइप थ्योरी पर अधिक गणितीय परिप्रेक्ष्य के लिए, सोरेंसन और उर्जिकज़िन द्वारा "लेक्चरस ऑन ​​द करी-हॉवर्ड आइसोमॉर्फिज्म" एक शानदार शुरुआत है, जो कंस्ट्रक्टस के कलन और अप करने के लिए सभी प्रकार के टाइप किए गए लैम्ब्डा-कैल्कुली का एक अच्छा अवलोकन प्रदान करता है।
डोमिनिक मुलिगन

4
मैं इस विषय पर प्रोग्रामिंग भाषाओं के लिए जॉन मिशेल की नींव का सुझाव दूंगा। पिछली टिप्पणी के अनुसार, यह अधिक गणितीय रूप से परिपक्व है।
आर्टेम पेलेनिट्सिन

2
टीएपीएल के लिए अपवोट। FYI बेंजामिन पियर्स एक नई पुस्तक "सॉफ्टवेयर फाउंडेशन" के लेखकों में से एक है जो Coq का उपयोग करता है।
कुंजन क्षत्रिय

40

असमानता:

कंप्यूटर विज्ञान में किसी के लिए एक और मूल्यवान पुस्तक जो कभी भी किसी भी मात्रा (इसलिए, हर किसी को) के लिए बाध्य करना चाहती है: द कॉची-श्वार्ज़ मास्टर क्लास: माइकल स्टील द्वारा गणितीय गणितीय असमानताओं का एक परिचय

इस विषय पर एक विश्वकोशीय पुस्तक ए डिक्शनरी ऑफ़ इनइक्वालिटीज़ है । जबकि यह कवर-टू-कवर पढ़ने के लिए एक पुस्तक नहीं है, यह आपके निपटान में होना अच्छा है। पुस्तक का पूरक भी देखें ।

इसके अलावा, विकिपीडिया में असमानताओं की एक उत्कृष्ट सूची है

विशिष्ट विषयों के लिए, आप परामर्श कर सकते हैं:


1
अगर मैं अपने द्वारा एकत्र की गई किसी चीज़ का लिंक जोड़ सकता हूं (ऊपर के कुछ स्रोतों सहित कई अलग-अलग स्रोतों से), यहाँ आम असमानताओं की एक धोखा शीट है: lkozma.net/inequalities_cheat_sheet
Kozma

1
हार्डी, लिटलवुड, पोला, "असमानता", 1930 के दशक का रत्न (?)
कोडालू

38

दिलचस्प। डोनाल्ड ई। नुथ द्वारा कंप्यूटर प्रोग्रामिंग के कला का कोई भी उल्लेख नहीं है । बहुत अच्छे व्यायाम के साथ विषयों का एक बहुत विस्तृत उपचार।

मुझे इस किताब में 'रिसोरोविर सैंपलिंग' जैसे रत्न मिले हैं, केवल एक उदाहरण का उल्लेख करने के लिए।


4
TAOCP अभी भी प्रासंगिक और वॉल्यूम है। 4 ए अभी जारी किया गया है।
dbasnett

33

जैसा कि सिल्वेन Peyronnet ने पहले ही उल्लेख किया है, तर्क सैद्धांतिक कंप्यूटर विज्ञान का एक महत्वपूर्ण हिस्सा है। हालांकि, शुद्ध गणितज्ञों के लिए बनाई गई पाठ्यपुस्तकों से तर्क सीखना पर्याप्त नहीं है। दूसरे शब्दों में, "कंप्यूटर विज्ञान" के परिप्रेक्ष्य से तर्क सीखना भी महत्वपूर्ण है।

परिमित मॉडल सिद्धांत

हम उन तकनीकों को सीखना चाहते हैं जो परिमित संरचनाओं से निपटती हैं। यह सर्वविदित है कि मॉडल सिद्धांत से कई पारंपरिक उपकरण, जैसे, कॉम्पैक्टनेस और लोवेनहेम-स्कोलम प्रमेय, परिमित मॉडल पर लागू नहीं होते हैं। यह हमें परिमित मॉडल सिद्धांत के अध्ययन की ओर ले जाता है । इस क्षेत्र के लिए, मैं निम्नलिखित उत्कृष्ट पुस्तकों की सिफारिश करता हूं:

परिमित मॉडल सिद्धांत का एक उप-क्षेत्र वर्णनात्मक जटिलता है , जहां हम भाषाओं को परिभाषित करने के लिए आवश्यक तर्क के प्रकार से जटिलता वर्गों को चिह्नित करना चाहते हैं। वर्णनात्मक जटिलता के लिए निश्चित संदर्भ है:

प्रमाण जटिलता

कंप्यूटर विज्ञान में तर्क का एक अन्य महत्वपूर्ण क्षेत्र प्रूफ कॉम्प्लेक्सिटी है , जो जटिलता वर्गों, कमजोर तार्किक प्रणालियों और प्रस्ताव प्रमाण प्रणाली के बीच तीन तरह के संबंधों का एक अध्ययन है। निम्नलिखित दो संबंधित पहलुओं पर विचार किया जाता है: (i) प्रपोजल फॉर्मूले के सबूतों की जटिलता, और (ii) अंकगणित के कमजोर सिद्धांतों का अध्ययन, जिसे अंकगणित कहा जाता है ।

पहलू (i) का निम्नलिखित प्रश्न के साथ क्या करना है: "क्या एक प्रस्तावना प्रूफ प्रणाली है जिसमें प्रत्येक टॉटोलॉजी में टॉटोलॉजी के आकार के बहुपद का प्रमाण है?"

CVCVCC

PVPV

प्रमाण जटिलता पर उत्कृष्ट सर्वेक्षण के लिए, मैं निम्नलिखित दो पुस्तकों की सिफारिश करता हूं:

PV0

क्रेजिएक की पुस्तक थोड़ी अधिक चुनौतीपूर्ण है क्योंकि उन्होंने माना कि पाठक पहले से ही गणितीय तर्क और मॉडल सिद्धांत से परिचित हैं (या रास्ते में आवश्यक पृष्ठभूमि सीखने के लिए पर्याप्त इच्छुक हैं)। लेकिन आप इस पुस्तक को पढ़ने और समझने से बहुत कुछ सीखेंगे।


32

यादृच्छिक एल्गोरिदम:

संभाव्यता और कम्प्यूटिंग: माइकल मिज़ेनमाकर और एली उपफाल द्वारा यादृच्छिक एल्गोरिदम और संभाव्य विश्लेषण

यादृच्छिक एल्गोरिदम की मूल बातें समझाने के लिए महान पुस्तक। उदाहरणों और प्रमाणों को बहुत स्पष्ट रूप से समझाया गया है, और पालन करना आसान है। इसके अलावा, व्यायाम करने में बहुत मज़ा आता है।

(मार्कोस विलगरा द्वारा उत्तर दिया गया)

यादृच्छिक एल्गोरिदम का विश्लेषण:

एल्गोरिदम में काम करने वाले किसी भी व्यक्ति को यादृच्छिक एल्गोरिदम के विश्लेषण के लिए माप का एकाग्रता होना चाहिए , जो यहां पीडीएफ प्रारूप में डाउनलोड के लिए भी उपलब्ध है


3
इस पुस्तक का सुझाव एक अन्य विषय में दिया गया था (मुझे लगता है कि सुरेश)। मुझे यह बेहतरीन लगा। यहाँ उल्लेख करने के लिए हारून का धन्यवाद।
एमएस डौस्टी

29

क्रिप्टोग्राफी:

Oded Goldreich ( खंड 1: मूल उपकरण और खंड 2: मूल अनुप्रयोग ) द्वारा क्रिप्टोग्राफी की दो-वॉल्यूम पुस्तक नींव विषय पर एक उत्कृष्ट पुस्तक है। ( लेखक के मुखपृष्ठ से प्रारंभिक ड्राफ्ट उपलब्ध हैं ।) इस पुस्तक का एक छोटा संस्करण भी उपलब्ध है।

एक अन्य उत्कृष्ट पुस्तक है इंट्रोडक्शन टू मॉडर्न क्रिप्टोग्राफ़ी: प्रिंसिपल्स एंड प्रोटोकॉल्स बाय काट्ज़ एंड लिंडेल।

क्रिप्टोग्राफी की गणितीय पृष्ठभूमि में रुचि रखने वालों के लिए हॉफस्टीन एट अल द्वारा गणितीय क्रिप्टोग्राफी का एक परिचय स्वाभाविक पसंद है।

अन्य उत्कृष्ट पुस्तकें हैं:


विशिष्ट विषय:


2
1993 में उनके परिचय के बाद से, साहित्य में यादृच्छिक oracles का बड़े पैमाने पर उपयोग किया गया है; विशेष रूप से हस्ताक्षर योजनाओं में। मैं एक ऐसी पुस्तक नहीं जानता, जो इस क्षेत्र को उचित रूप से कवर करती हो। सुझावों का स्वागत है।
एम एस डौस्टी

1
यादृच्छिक ऑरेकल पर किताब होगा एक बड़ी मदद हो। मैं क्रिप्टो में काम नहीं करता, लेकिन मैंने काट्ज़ / लिंडेल को आगे-पीछे पढ़ा है। पाठ्यपुस्तक से क्रिप्टो साहित्य में संक्रमण इस विशिष्ट कारण से खुरदरा था। इसके अलावा, @ सादिक, जिज्ञासा से बाहर: आपके द्वारा पढ़ी गई पुस्तकों में से कोई भी रीवाइंडिंग का अच्छा कवरेज है?
डेनियल अपॉन

1
@ डैनियल: मार्टिन गग्ने की थीसिस "ए स्टडी ऑफ द रैंडम ओरेकल मॉडल" (यूसी डेविस, 2008) रैंडम ऑरकल्स पर एक अपेक्षाकृत अच्छा संदर्भ है (हालांकि अभी भी पूरा होने से बहुत दूर है)। "रिवाइंडिंग" प्रश्न के बारे में: मैं इसके बारे में एक किताब नहीं जानता, फिर भी मुझे लगता है कि मैंने इसे पूरी तरह से समझ लिया है। क्या आप कृपया विस्तृत कर सकते हैं कि आपको कौन सा भाग समस्याग्रस्त लगता है? आप इसे एक अलग विषय पर भी पूछ सकते हैं।
एमएस डौस्ती

@ सादिक, मैं इसके बारे में एक स्वतंत्र प्रश्न शुरू नहीं करने के लिए इच्छुक हूं, क्योंकि यह "मदद, क्या रिवाइंडिंग है" की तुलना में थोड़ा अधिक होगा? :) समस्याग्रस्त हिस्सा यह है कि रिवाइंडिंग उस क्रिप्टो पाठ्यक्रम में उपयोग की जाने वाली पाठ्यपुस्तक में नहीं थी जिसे मैंने लिया (यानी काट्ज़ / लिंडेल), इसलिए मैंने अवधारणा का परिचय कभी नहीं देखा। मुझे पता है कि यह क्रिप्टो साहित्य में नियमित रूप से दिखाई देता है, लेकिन जैसा कि कोई भी क्रिप्टोकरंसी अनुसंधान में सक्रिय रूप से शामिल नहीं है, मुझे संदेह है कि मैं सिर्फ पर्याप्त मुठभेड़ करके रीवाइंडिंग की एक ठोस समझ हासिल करने के लिए पर्याप्त पेपर पढ़ रहा हूं। शायद मैं रिवाइंडिंग की उत्पत्ति के बारे में एक प्रश्न पूछ सकता हूं ...
डैनियल एपोन

3
@ डैनियल: मेरी पुस्तक का परिचय समवर्ती शून्य-ज्ञान रिवाइंडिंग और प्रोटोकॉल रचना के संदर्भ में इसके द्वारा प्रेरित कठिनाइयों की व्याख्या करता है। अन्य स्रोत हैं: (1) ओडेड गोल्डरेच, ह्यूगो क्रैस्कीज: ऑन द कम्पोजिशन ऑफ जीरो-नॉलेज लोफ सिस्टम्स। स्याम जे। Comput। 25 (1): 169-192 (1996) और (2) सिंथिया वर्क, मोनी नोर, अमित सहाय: समवर्ती शून्य-ज्ञान। जे। एसीएम 51 (6): 851-898 (2004)।
एलोन रोसेन

25

कार्यात्मक प्रोग्रामिंग

  • विशुद्ध रूप से कार्यात्मक डेटा संरचनाएं क्रिस ओकासाकी द्वारा । डेटा संरचनाओं पर अधिकांश पुस्तकें C या C ++ जैसी अनिवार्य भाषा मानती हैं। हालांकि, इन भाषाओं के लिए डेटा संरचनाएं हमेशा कार्यात्मक भाषाओं में अच्छी तरह से अनुवाद नहीं करती हैं। यह पुस्तक एक कार्यात्मक भाषा में डेटा संरचनाओं और एल्गोरिदम को लागू करने के लिए सबसे अच्छे प्रदर्शनों में से एक है।
  • कार्यात्मक प्रोग्रामिंग: ब्रूस जे। मैकलेनन द्वारा अभ्यास और सिद्धांत । अपने नाम के बावजूद, यह पुस्तक अभ्यास-उन्मुख की तुलना में अधिक सिद्धांत-उन्मुख है। जो लोग इस पुस्तक को पढ़ते हैं, उनके पास इस विषय के बारे में बेहतर दृष्टिकोण होगा, जो इसे तदर्थ प्रोग्रामिंग द्वारा सीखते हैं।
  • रिचर्ड बर्ड द्वारा कार्यात्मक एल्गोरिथम डिजाइन के मोती । विषय पर एक ब्रांड-नई प्रदर्शनी, जो समस्या-समाधान के दृष्टिकोण को लेती है, और कार्यात्मक एल्गोरिदम के डिजाइन में आकर्षक विचारों का प्रदर्शन करके क्षेत्र की सुंदरता को दर्शाती है।
  • एडम Chlipala द्वारा निर्भर प्रकार के साथ प्रमाणित प्रोग्रामिंग । यह कोक सीखने में सबसे अच्छे संसाधनों में से एक है, और विशेष रूप से तर्क और नियम-आधारित प्रणालियों का उपयोग करके साबित करने के लिए कार्यक्रम प्रमाणन और प्रमेय को स्वचालित करने पर ध्यान केंद्रित करता है। उदाहरण व्यापक और आसान करने के लिए अनुसरण कर रहे हैं।

21

अनुमान एल्गोरिथ्म

वज़ीरानी द्वारा लिखी गई पुस्तक एप्रेज़िमेशन अल्गोरिद्म इस विषय पर सर्वश्रेष्ठ पुस्तक है। एक अन्य पुस्तक होकबाम द्वारा एनपी-हार्ड समस्याओं के लिए दृष्टिकोण एल्गोरिदम है।

यहाँ दो समीक्षकों द्वारा तुलना की जाती है:

मैं अपने काम के लिए एक दिशानिर्देश के रूप में एनपी-हार्ड समस्याओं के लिए अनुमानित एल्गोरिदम पर डोरिट होचबूम की पुस्तक का उपयोग कर रहा हूं। होचबूम की पुस्तक, बिना किसी संदेह के, भयानक है। हालांकि, सर्वेक्षण प्रारूप ने क्षेत्र के सर्वश्रेष्ठ लोगों को एक साथ लाने के पक्ष में एक सुचारू प्रवाह से समझौता किया। वाज़िरानी की पुस्तक शुरू से अंत तक इतनी चिकनी और सुरुचिपूर्ण होने के कारण इसे सही करती है। उत्कृष्ट समस्या सेट, अधिकांश समस्याओं के लिए उत्कृष्ट संकेत, और खुली समस्याओं के लिए समर्पित पुस्तक के अंत में एक खंड है, जो वास्तव में एक अच्छा फीचर है।

तथा

मैं लगभग पूरी तरह से एनपी-पूर्ण और एनपी-कठिन समस्याओं को हल करने से संबंधित पुस्तकों की तलाश कर रहा हूं। होचबूम की एक और किताब है और मेरे पास भी है। दुर्भाग्य से, यह पुस्तक एक शोध उन्मुख पुस्तक के रूप में अधिक है क्योंकि यह कई शोधकर्ताओं द्वारा लिखी गई है। यह दो हार्ड कवर के भीतर कई शोध पत्रों को पढ़ने जैसा है। इसका मतलब यह है कि किसी व्यक्ति को सन्निकटन एल्गोरिदम के साथ एक प्रकार का मध्यवर्ती स्तर का अनुभव होना चाहिए।

एक हालिया पुस्तक विलियमसन और शमॉयस द्वारा सन्निकटन एल्गोरिदम का डिज़ाइन है


21

साहचर्य

परिचयात्मक पुस्तकें। निम्नलिखित पुस्तकों में से कोई भी विषय के लिए एक उत्कृष्ट परिचय के रूप में काम कर सकता है:

अधिक उन्नत ग्रंथ।


21

साहचर्य

मैं फिलिप फ्लाजोलेट और रॉबर्ट सेडगविक द्वारा एनालिटिक कॉम्बिनेटरिक्स का हवाला देना चाहता हूं । यह एल्गोरिदम की गणना और विश्लेषण के लिए एक मजबूत गणितीय पृष्ठभूमि प्रदान करता है। मैं फिलिप फ्लेजोलेट को भी श्रद्धांजलि देना चाहता हूं, जो दो दिन पहले मर गए थे और एक महान गणितज्ञ और कंप्यूटर वैज्ञानिक थे।


20

कार्यक्रम का सत्यापन


1
कुछ पुस्तकें (मन्ना और आप्ट एट अल।) काफी दिनांकित हैं (मन्ना 1977 से है और आप्ट एट अल 1991 से), तर्क आधारित कार्यक्रम सत्यापन के क्षेत्र में पिछले एक दशक में बड़ी प्रगति हुई है। काश, कोई अद्यतित पाठ उपलब्ध न हो।
मार्टिन बर्गर

@MartinBerger जहां यह प्रमुख प्रगति के बारे में सीखा जा सकता है के रूप में किसी भी संकेत, अगर यह किसी भी हाल में पाठ्यपुस्तकों में नहीं है?
मिच

@ मिच मुझे डर है कि पाठ्यपुस्तकों में अभी तक नहीं लिखा गया है। हो सकता है कि इसाबेल / HOL और Coq जैसे इंटरैक्टिव टूल के बारे में कुछ साहित्य देखें। हाल ही में फेसबुक के "अनुमान" और इसके पीछे के सिद्धांत जैसे स्वचालित सत्यापन उपकरण देखें।
मार्टिन बर्जर

हथ और रयान बहुत शुरुआत के अनुकूल है। CS में सभी कठोर गणित से परिचित नहीं होने वाले व्यक्ति के लिए यह एक अच्छी शुरुआत है। यह पहली पुस्तक है जिसे मैंने सीएस के औपचारिक पक्ष के बारे में पढ़ा है और मुझे कभी भी मिला है! यह पहली पाठ्यपुस्तक भी है जिसे मैंने वास्तव में सभी पठन को पूरा किया है।
रेक्सयुआन

19

सूचना का सिद्धांत

डेविड मैकाय द्वारा सूचना का सिद्धांत, आविष्कार, और लर्निंग एल्गोरिदम

सूचना सिद्धांत पर अन्य प्रसिद्ध पाठ्यपुस्तकें विकिपीडिया पर पाई जा सकती हैं ।


शीर्षक "क्या किताबें सभी को पढ़ना चाहिए?", इसलिए सिफारिश चयनात्मक होनी चाहिए। कोई भी अमेज़ॅन / लाइब्रेरी से "सूचना सिद्धांत" पर पुस्तकों की एक बड़ी सूची पा सकता है, लेकिन यदि आपके पास केवल 2-3 विकल्प हैं, तो वे क्या होंगे? आपको केवल उन पुस्तकों या लेखों की अनुशंसा करनी चाहिए जिन्हें आपने बहुत ध्यान से पढ़ा है और अपने पूर्ण पसंदीदा के लिए संकीर्ण हैं!
डाय ले

1
@ दाई ले: आप सही हैं। मुझे लगता है कि सूची को संकुचित किया जाना चाहिए। (मैं सूची को ब्लोट करने के लिए व्यक्तिगत रूप से जिम्मेदार हूं!) हालांकि, यह एक सामुदायिक विकि पोस्ट है। मैंने एक लंबी सूची जोड़ी है जिसमें सुझाव दिया गया है कि उम्मीदवार क्या हैं। कृपया केवल सबसे उपयुक्त पुस्तकों को शामिल करने के लिए सूची ट्रिम करें।
बजे एमएस डौस्ती

1
@Sadeq: मुझे डर है कि शायद ही कभी ऐसा हो कि एक व्यक्ति दूसरे व्यक्ति की सूची को तोड़ देगा। जब तक पद अभी भी चालू रूप में है, तब तक यह पद के उद्देश्य के संबंध में पूरी तरह से बेकार है।
दाई ले

@ दाई: आप सही कह रहे हैं। लेकिन, चूंकि मैं "जानकारी सिद्धांत" का विशेषज्ञ नहीं हूं, इसलिए मैं सूची को खुद ट्रिम नहीं कर सकता। मैं कर सकता हूं: 1) मेरे द्वारा जोड़ी गई सूची को पूरी तरह से हटा दें (मूल सूची को छोड़कर), या 2) विशेषज्ञ का ध्यान आकर्षित करने के लिए पाठ में एक नोटिस जोड़ें। आपकी क्या सलाह है?
बजे एमएस डौस्ती

@Sadeq: मैं या तो सूचना सिद्धांत पर काम नहीं करता, अन्यथा मैं सूची को ट्रिम करने में मदद करता। मुझे पता है कि पुस्तक "थॉमस एम। कवर, जॉय ए थॉमस। सूचना सिद्धांत के तत्व" की सिफारिश लांस फोर्टेन सहित कई ने की है। लेकिन मुझे यकीन नहीं है कि हर किसी को इसे पढ़ना चाहिए या नहीं। मुझे लगता है कि हमें मूल पोस्टर का सम्मान करना चाहिए क्योंकि पुस्तक उनकी सबसे पसंदीदा हो सकती है। इसलिए पूरी सूची को हटाना एक अच्छा विकल्प है। मैं वास्तव में बहुत सीधा होने के लिए माफी चाहता हूं। क्या आप लोगों को यह समझाने के लिए भी कह सकते हैं कि वे अपनी किताबें क्यों सुझाते हैं?
दाई ले

19

वितरित एल्गोरिदम

नैन्सी लिंच द्वारा वितरित एल्गोरिदम यह वितरित कंप्यूटिंग के एक अग्रणी द्वारा लिखा गया एक क्लासिक पाठ है;

गेरार्ड तेल द्वारा वितरित एल्गोरिदम का परिचय बहुत अच्छा परिचय, स्नातक स्तर के पाठ्यक्रमों के लिए भी उपयुक्त; संदेश-पासिंग मॉडल पर ध्यान केंद्रित किया

वितरित कम्प्यूटिंग: फंडामेंटल्स, सिमुलेशन और उन्नत विषय हैगिट एटिआया और जेनिफर वेल्च इसमें उन्नत सामग्री शामिल है, जो पीएचडी स्तर के पाठ्यक्रमों के लिए उपयुक्त है; संदेश-गुजरना और साझा-मेमोरी मॉडल दोनों पर चर्चा की जाती है

वितरित एल्गोरिदम का डिजाइन और विश्लेषणनिकोला सैंटोरो द्वारा एक अपेक्षाकृत हाल की पुस्तक है, जिसका उपयोग स्नातक और पीएचडी दोनों स्तरों पर किया जा सकता है; सामग्री को प्रोटोकॉल डिजाइन पर जोर देने के साथ प्रस्तुत किया जाता है


19

क्वांटम कम्प्यूटिंग

इस विषय पर दो अन्य उत्कृष्ट परिचयात्मक पुस्तकें हैं:


17

अनुकूलन

मुझे पॉल नाहिन की व्हेन लिस्ट बेस्ट लगी।

अनिवार्य रूप से समस्याओं और व्यक्तित्वों के माध्यम से अनुकूलन का एक प्यारा इतिहास। बिल Gasarch कॉलम में से एक में 32-36 पृष्ठों पर एक अच्छी समीक्षा है

eiπ=1


17

संचार जटिलता:


ईयाल कुशलीवित्ज और नोआम निसान द्वारा संचार जटिलता

यह एक क्लासिक और बहुत अच्छी तरह से लिखी गई पुस्तक है। हालांकि अब तक थोड़ा पुराना है, फिर भी क्षेत्र के लिए सबसे अच्छा परिचयात्मक पुस्तक है। इसके अलावा, अभ्यास बेहद मजेदार हैं, और अवधारणाओं को समझाने के बाद बिल्कुल दिए गए हैं ताकि आप जो सीखते हैं उसे ठीक कर सकें।

यादृच्छिक संचार जटिलता का हिस्सा पहली पुस्तक के कुछ हिस्सों के साथ पूरक होना चाहिए।


Juraj Hromkovič द्वारा संचार जटिलता और समानांतर कम्प्यूटिंग

बहुत पूरा है, हालांकि कभी-कभी पढ़ने में थोड़ा मुश्किल होता है। सहज ज्ञान युक्त व्याख्याएं बहुत स्पष्ट हैं, और बहुत अच्छे अभ्यास हैं। दूसरे भाग में यह समानांतर कंप्यूटिंग के लिए कनेक्शन प्रस्तुत करता है।


16

एक और, बूलियन फूरियर विश्लेषण के लिए महान (जैसा कि शीर्षक से पता चलता है) और दोनों मूल बातें को कवर करना, अधिक उन्नत विषयों और (कई) अनुप्रयोगों, बूलियन फंक्शंस का विश्लेषण है , रयान ओ'डोनेल (2014) द्वारा। यह यहाँ पर भी मुफ्त में ऑनलाइन उपलब्ध है ।
क्लेमेंट सी।

16

कम्प्यूटेशनल बीजगणित

जैसा कि शिव ने कहा कि इस उत्तर में , इस क्षेत्र में साहित्य आम शब्दावली के बिना सभी जगह बिखरे हुए हैं। एक "प्रतीकात्मक संगणना", "बीजगणितीय जटिलता सिद्धांत", "कंप्यूटर बीजगणित" या "कम्प्यूटेशनल बीजगणित" की खोज करके उपयोगी संदर्भ पा सकते हैं। जैसा कि इस प्रश्न के उत्तर में सुझाया गया है ,

कम्प्यूटेशनल विश्लेषण

एक दिलचस्प क्षेत्र भी, जो वास्तविक कार्यों में अभिकलन से संबंधित है। इसे "कम्प्यूटेबल विश्लेषण" या "कम्प्यूटेबल कैलकुलस" के रूप में भी जाना जाता है।


16

साहचर्य

generatingfunctionology , हरबर्ट एस विल्फ़ द्वारा, कार्यों पैदा करने के सिद्धांत, एक चिकनी रास्ते में लिखा गया था और अभ्यास के साथ पैक के लिए एक उत्कृष्ट परिचय है। अगर वह अपनी सारी किताबें इस तरह लिखता है, तो मैं दूसरे पर शुरू होने का इंतजार नहीं कर सकता।

रिचर्ड स्टेनली द्वारा एन्यूमेरेटिव कॉम्बिनेटरिक्स एक महान संदर्भ (उन्नत) है।

कॉम्बिनेटरिक्स: पीटर कैमरन द्वारा विषय, तकनीक, एल्गोरिदम और मेटोसेक और नेसेट्रिल द्वारा गणित को असतत करने के लिए निमंत्रण, कॉम्बिनेटरिक्स के लिए ठीक परिचय हैं।

रॉबर्ट्स और टेस्समैन द्वारा एप्लाइड कॉम्बिनेटरिक्स लागू कॉम्बिनेटरिक्स पर एक विश्वकोशीय संदर्भ है।


14

तर्क:

यह इस सवाल के मेरे जवाब की एक शब्दशः है ।

बुनियादी गणितीय तर्क का ज्ञान, मेरी राय में, एक प्लस है। आप कोरी और लस्कर की दो पुस्तकों पर एक नज़र डाल सकते हैं।

गणितीय तर्क: अभ्यास के साथ एक कोर्स भाग I

गणितीय तर्क: अभ्यास के साथ एक कोर्स भाग II


हर्बर्ट एंडर्टन द्वारा तर्क के लिए गणितीय परिचय के बारे में कैसे?
रेक्सयुआन

14

3
जी। पोलिया द्वारा "इसे कैसे हल करें" की तुलना करता है? मुझे लगता है कि मैं सलाह पढ़ता हूं कि पोला मूल और बहुत बेहतर है, लेकिन मुझे यकीन नहीं है और इसे
इंटरवेब्स

2
पोल्या की "हाउ टू सॉल्व इट" (एचटीएसआई) वेलेमैन की पुस्तक की तुलना में एक अलग विषय को संबोधित करती है। पोल्या एक तरह की अफवाह है कि कठिन समस्याओं का समाधान कैसे खोजा जाए, जबकि वेलेमैन एक पाठ्यपुस्तक है जिसमें गणित की परंपराओं और भाषा का उपयोग करके समाधानों को औपचारिक रूप दिया जाए। एचटीएसआई के पास प्रमाणों के बारे में जानकारी है, लेकिन इसे बिना किसी संरचना के "ग्लोरीरी" रूप में प्रस्तुत किया गया है, जबकि वेलेमैन आपको अभ्यास के साथ एक व्यवस्थित पाठ्यक्रम प्रदान करता है। दोनों पढ़ने लायक हैं, लेकिन एक दूसरे को प्रतिस्थापित नहीं करता है।
नैट सीके

13

संख्या सिद्धांत

मैंने कई पुस्तकों को अक्सर कई पत्रों में उद्धृत किया। वे इस विषय पर उत्कृष्ट हैं, लेकिन उनमें से कुछ काफी पुराने हैं। यहाँ मैं क्या याद की एक सूची है:


आप रोसेन की किताब, या डोवर के बारे में क्या सोचते हैं?
मार्क सी

@ मर्क: वे भी अच्छे हैं। पोस्ट को संपादित क्यों न करें, और उन पुस्तकों को भी जोड़ें?
एमएस डौस्ती


11

प्रमाण सिद्धांत

ट्रॉल्स्ट्रा और स्कैवटेनबर्ग की पुस्तक बेसिक प्रूफ थ्योरी अब इस विषय पर एक वास्तविक पाठ है।

गिरार्ड, टेलर और लाफोंट के प्रमाण और प्रकार इस विषय पर एक छोटी पुस्तक है, और इसका एक संस्करण http://www.paultaylor.eu/stable/Proofs%2BTypes.html पर डाउनलोड के लिए उपलब्ध है


11

ग्राफ सिद्धांत

ग्राफ सिद्धांत के परिचय के लिए : पश्चिम द्वारा ग्राफ सिद्धांत का परिचय

ग्राफ सिद्धांत के बारे में अधिक जानकारी: बॉडी और मर्टी द्वारा ग्राफ सिद्धांत

व्यापक पुस्तक जिसमें नए विकास के साथ-साथ ग्राफ सिद्धांत में पुराने क्लासिक परिणाम शामिल हैं:

ग्राफ सिद्धांत: रेइनहार्ड डायस्टेल

दहनशील दृष्टिकोण वाले सतहों पर रेखांकन के लिए:

सतहों पर रेखांकन

और डिग्राफ के लिए:

Digraphs: सिद्धांत, एल्गोरिथम और अनुप्रयोग


1
वहाँ भी है रेखांकन के सिद्धांत क्लाउड बर्ज, ग्राफ सिद्धांत के संस्थापकों में से एक। और मिशेल मिनौक्स और मिशेल गोंडरन द्वारा रेखांकन और एल्गोरिदम
लैमिने

9

वीएलएसआई डिजाइन

मैं हार्डवेयर में नहीं हूँ। हालाँकि, चूंकि FAQ में VLSI में TCS के उप-क्षेत्रों में से एक शामिल है, इसलिए मैंने VLSI डिज़ाइन में प्रसिद्ध पुस्तकों के बारे में एक विशेषज्ञ से पूछा। वे यहाँ हैं:


इस क्षेत्र में, मैं इस अत्यंत पठनीय पुस्तक की सिफारिश करूंगा: Giovanni De Micheli द्वारा डिजिटल सर्किट के संश्लेषण और अनुकूलन
चान ली
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.