विज्ञान वह है जिसे हम कंप्यूटर को समझाने के लिए पर्याप्त अच्छी तरह समझते हैं; कला बाकी सब कुछ है।
Donald Ervin Knuth एक अमेरिकी कंप्यूटर वैज्ञानिक, गणितज्ञ और Stanford University में प्रोफेसर एमेरिटस हैं। वह 1974 में ACM Turing Award के प्राप्तकर्ता हैं, जिसे अनौपचारिक रूप से कंप्यूटर विज्ञान का नोबेल पुरस्कार माना जाता है। Knuth को "एल्गोरिदम विश्लेषण का पिता" कहा जाता है।
वह बहु-खंड कार्य The Art of Computer Programming के लेखक हैं। उन्होंने एल्गोरिदम की कम्प्यूटेशनल जटिलता के कठोर विश्लेषण के विकास में योगदान दिया और इसके लिए औपचारिक गणितीय तकनीकों को व्यवस्थित किया। इस प्रक्रिया में उन्होंने asymptotic notation को भी लोकप्रिय बनाया। सैद्धांतिक कंप्यूटर विज्ञान की कई शाखाओं में मौलिक योगदान के अलावा, Knuth TeX कंप्यूटर टाइपसेटिंग सिस्टम, संबंधित METAFONT फॉन्ट परिभाषा भाषा और प्रस्तुति प्रणाली, और Computer Modern परिवार के टाइपफेस के निर्माता हैं।
एक लेखक और विद्वान के रूप में, Knuth ने WEB और CWEB कंप्यूटर प्रोग्रामिंग सिस्टम बनाए जो साहित्यिक प्रोग्रामिंग को प्रोत्साहित और सुविधाजनक बनाने के लिए डिज़ाइन किए गए थे, और MIX/MMIX निर्देश सेट आर्किटेक्चर डिज़ाइन किए। Knuth सॉफ्टवेयर पेटेंट देने का दृढ़ता से विरोध करते हैं, जिन्होंने United States Patent and Trademark Office और European Patent Organisation को अपनी राय व्यक्त की है।
जीवनी
प्रारंभिक जीवन
Knuth का जन्म Milwaukee, Wisconsin में German-Americans Ervin Henry Knuth और Louise Marie Bohning के यहाँ हुआ था। उनके पिता एक छोटा प्रिंटिंग व्यवसाय चलाते थे और बहीखाता पद्धति पढ़ाते थे। Donald, Milwaukee Lutheran High School के एक छात्र, समस्याओं को हल करने के लिए नए तरीके सोचते थे। उदाहरण के लिए, आठवीं कक्षा में, उन्होंने "Ziegler's Giant Bar" में अक्षरों को पुनर्व्यवस्थित करके बनाए जा सकने वाले शब्दों की संख्या खोजने के लिए एक प्रतियोगिता में भाग लिया; न्यायाधीशों ने 2,500 ऐसे शब्दों की पहचान की थी। स्कूल से समय लाभ प्राप्त करके (एक नकली पेट दर्द के बहाने), और समस्या को दूसरे तरीके से काम करते हुए, Knuth ने एक अप्रकाशित शब्दकोश का उपयोग किया और यह निर्धारित किया कि प्रत्येक शब्दकोश प्रविष्टि इस वाक्यांश में अक्षरों का उपयोग करके बनाई जा सकती है। इस एल्गोरिदम का उपयोग करके, उन्होंने 4,500 से अधिक शब्दों की पहचान की, प्रतियोगिता जीती। पुरस्कार के रूप में, स्कूल को एक नया टेलीविजन और उसके सभी सहपाठियों के लिए कैंडी बार मिले।
शिक्षा
Knuth को Case Institute of Technology में भौतिकी का छात्रवृत्ति मिली, जो अब Case Western Reserve University का हिस्सा है, Cleveland, Ohio में, 1956 में नामांकन लिया। उन्होंने Theta Chi fraternity के Beta Nu Chapter में भी शामिल हुए। Case में भौतिकी का अध्ययन करते समय, Knuth को IBM 650, एक प्रारंभिक वाणिज्यिक कंप्यूटर से परिचित कराया गया। कंप्यूटर के मैनुअल को पढ़ने के बाद, Knuth ने अपने स्कूल में उपयोग की जाने वाली मशीन के लिए असेंबली और कंपाइलर कोड को फिर से लिखने का निर्णय लिया, क्योंकि वह मानते थे कि वह इसे बेहतर तरीके से कर सकते हैं।
1958 में, Knuth ने अपने स्कूल की बास्केटबॉल टीम को खेल जीतने में मदद करने के लिए एक प्रोग्राम बनाया। उन्होंने खिलाड़ियों को "मान" प्रदान किए ताकि अंक प्राप्त करने की संभावना को मापा जा सके, एक नई दृष्टिकोण जिसे Newsweek और CBS Evening News ने बाद में रिपोर्ट किया।
Knuth Case Institute की Engineering and Science Review के संस्थापक संपादकों में से एक था, जिसने 1959 में सर्वश्रेष्ठ तकनीकी पत्रिका के रूप में राष्ट्रीय पुरस्कार जीता। फिर उन्होंने भौतिकी से गणित की ओर रुख किया, और 1960 में Case से दो डिग्री प्राप्त कीं: उनकी बैचलर ऑफ साइंस डिग्री, और एक साथ faculty के विशेष पुरस्कार द्वारा विज्ञान के मास्टर, जिन्होंने उनके काम को असाधारण रूप से उत्कृष्ट माना।
1963 में, गणितज्ञ Marshall Hall को अपने सलाहकार के रूप में, उन्होंने California Institute of Technology से गणित में पीएचडी अर्जित की।
प्रारंभिक कार्य
अपनी पीएचडी प्राप्त करने के बाद, Knuth Caltech की faculty में एक सहायक प्रोफेसर के रूप में शामिल हुए।
उन्होंने कंप्यूटर प्रोग्रामिंग भाषा कंपाइलर पर एक किताब लिखने के लिए एक कमीशन स्वीकार किया। इस परियोजना पर काम करते समय, Knuth को लगा कि वह पहले कंप्यूटर प्रोग्रामिंग का एक मौलिक सिद्धांत विकसित किए बिना विषय का पर्याप्त रूप से इलाज नहीं कर सकते, जो The Art of Computer Programming बन गया। उन्होंने मूल रूप से इसे एक एकल किताब के रूप में प्रकाशित करने की योजना बनाई। जैसे ही Knuth ने इस किताब के लिए अपनी रूपरेखा विकसित की, उन्होंने निष्कर्ष निकाला कि उन्हें विषय को पूरी तरह से कवर करने के लिए छह खंड, और फिर सात की आवश्यकता है। उन्होंने पहला खंड 1968 में प्रकाशित किया।
The Art of Computer Programming के पहले खंड को प्रकाशित करने से ठीक पहले, Knuth Caltech छोड़ गए Institute for Defense Analyses की Communications Research Division के साथ रोजगार स्वीकार करने के लिए, जो तब Princeton University campus पर स्थित था, जो National Security Agency का समर्थन करने के लिए क्रिप्टोग्राफी में गणितीय अनुसंधान कर रहा था।
1967 में Knuth Society for Industrial and Applied Mathematics सम्मेलन में भाग लिया और किसी ने उससे पूछा कि वह क्या करते हैं। उस समय कंप्यूटर विज्ञान को संख्यात्मक विश्लेषण, कृत्रिम बुद्धिमत्ता और प्रोग्रामिंग भाषाओं में विभाजित किया गया था। अपने अध्ययन और The Art of Computer Programming किताब के आधार पर, Knuth ने निर्णय लिया कि अगली बार जब किसी ने उससे पूछा तो वह कहेंगे, "एल्गोरिदम विश्लेषण।"
Knuth फिर 1969 में Stanford University faculty में शामिल होने के लिए इस पद को छोड़ दिया, जहाँ वह अब Fletcher Jones Professor of Computer Science, Emeritus हैं।
लेखन
Knuth एक लेखक के साथ-साथ एक कंप्यूटर वैज्ञानिक हैं।
The Art of Computer Programming TAOCP
1970 के दशक में, Knuth ने कंप्यूटर विज्ञान को "एक बिल्कुल नया क्षेत्र जिसकी कोई वास्तविक पहचान नहीं है। और उपलब्ध प्रकाशनों का मानक इतना अधिक नहीं था। बहुत सारे पेपर जो निकल रहे थे वे काफी सरलता से गलत थे। ... तो मेरी प्रेरणाओं में से एक एक ऐसी कहानी को सीधा करना था जिसे बहुत बुरी तरह बताया गया था।" 2011 तक, उनकी श्रृंखला के पहले तीन खंड और चौथे खंड का भाग एक प्रकाशित हो चुका था। Concrete Mathematics: A Foundation for Computer Science 2nd ed., जो TAoCP के Volume 1 के गणितीय प्रारंभिकता अनुभाग के विस्तार के साथ उत्पन्न हुई, भी प्रकाशित हुई है। अप्रैल 2020 में, Knuth ने कहा कि वह volume 4 के part B पर कड़ी मेहनत कर रहे हैं, और वह अपेक्षा करते हैं कि किताब में कम से कम parts A through F होंगे।
अन्य कार्य
Knuth Surreal Numbers के लेखक भी हैं, John Conway के समुच्चय सिद्धांत निर्माण पर एक गणितीय उपन्यास। विषय को बस समझाने के बजाय, किताब गणित के विकास को दिखाने का प्रयास करती है। Knuth चाहते थे कि किताब छात्रों को मूल, रचनात्मक अनुसंधान करने के लिए तैयार करे।
1995 में, Knuth ने Marko Petkovšek, Herbert Wilf और Doron Zeilberger द्वारा किताब A=B के लिए प्राक्कथन लिखा। Knuth Word Ways: The Journal of Recreational Linguistics को भाषा पहेलियों का एक अनायास योगदानकर्ता भी हैं।
Knuth ने अनुक्रमणिका गणित में भी गहराई से उतरे हैं। उन्होंने 1960 के दशक से शुरू करके Journal of Recreational Mathematics में लेख प्रदान किए, और Joseph Madachy की Mathematics on Vacation में एक प्रमुख योगदानकर्ता के रूप में स्वीकृत थे।
Knuth YouTube पर कई Numberphile और Computerphile वीडियो में भी दिखाई दिए हैं जहाँ उन्होंने Surreal Numbers लिखने से लेकर वह ईमेल का उपयोग क्यों नहीं करते, के विषयों पर चर्चा की है।
Knuth की धार्मिक मान्यताओं के बारे में कार्य
कंप्यूटर विज्ञान पर अपने लेखन के अलावा, Knuth, एक Lutheran, 3:16 Bible Texts Illuminated के लेखक भी हैं, जिसमें वह एक व्यवस्थित नमूना प्रक्रिया के माध्यम से बाइबल की जांच करते हैं, अर्थात् प्रत्येक किताब के अध्याय 3, छंद 16 का विश्लेषण। प्रत्येक छंद के साथ calligraphic art में एक प्रस्तुति होती है, Hermann Zapf के नेतृत्व में calligraphers के एक समूह द्वारा योगदान दिया जाता है। बाद में, उन्हें MIT में अपने धर्म और कंप्यूटर विज्ञान के दृश्य पर व्याख्यान की एक श्रृंखला देने के लिए आमंत्रित किया गया, जो उनके 3:16 परियोजना के पीछे थी, जिसके परिणामस्वरूप एक अन्य किताब, Things a Computer Scientist Rarely Talks About, जहाँ उन्होंने व्याख्यान "God and Computer Science" प्रकाशित किए।
सॉफ्टवेयर पेटेंट पर विचार
शैक्षणिक और वैज्ञानिक समुदाय के सदस्य के रूप में, Knuth तुच्छ समाधानों के लिए सॉफ्टवेयर पेटेंट देने की नीति का दृढ़ता से विरोध करते हैं जो स्पष्ट होने चाहिए, लेकिन linear programming की interior-point method जैसे nontrivial समाधानों के लिए अधिक nuanced विचार व्यक्त किए हैं। उन्होंने United States Patent and Trademark Office और European Patent Organisation दोनों को सीधे अपनी असहमति व्यक्त की है।
Computer Musings
Knuth Stanford University में साल में कुछ बार informal lectures देते हैं, जिन्हें उन्होंने "Computer Musings" का शीर्षक दिया है। वह 2017 तक United Kingdom में Oxford University Department of Computer Science में visiting professor थे और Magdalen College के Honorary Fellow हैं।
प्रोग्रामिंग
डिजिटल टाइपसेटिंग
1970 के दशक में TAOCP के प्रकाशकों ने Monotype को phototypesetting के पक्ष में छोड़ दिया। Knuth बाद की प्रणाली की पिछली volumes की गुणवत्ता तक पहुंचने की अक्षमता से इतने निराश हो गए, जिन्हें पुरानी प्रणाली का उपयोग करके टाइपसेट किया गया था, कि उन्होंने डिजिटल टाइपसेटिंग पर काम करने के लिए समय निकाला और TeX और Metafont बनाया।
साहित्यिक प्रोग्रामिंग
TeX विकसित करते समय, Knuth ने प्रोग्रामिंग की एक नई पद्धति बनाई, जिसे उन्होंने literate programming कहा, क्योंकि वह मानते थे कि प्रोग्रामर को प्रोग्राम को साहित्य के कार्यों के रूप में सोचना चाहिए। "बजाय इस कल्पना करने के कि हमारा मुख्य कार्य कंप्यूटर को कुछ करने के लिए निर्देश देना है, बजाय इसके हम मनुष्यों को समझाने पर ध्यान केंद्रित करें कि हम एक कंप्यूटर को क्या करना चाहते हैं।"
Knuth ने WEB प्रणाली में literate programming के विचार को मूर्त किया। समान WEB स्रोत TeX फाइल को weave करने के लिए, और Pascal स्रोत फाइल को tangle करने के लिए उपयोग किया जाता है। ये अपने बदले में प्रोग्राम का एक पठनीय विवरण और एक क्रियान्वयन योग्य बाइनरी का उत्पादन करते हैं। सिस्टम का एक बाद का पुनरावृत्ति, CWEB, Pascal को C से बदल देता है।
Knuth ने TeX और METAFONT को प्रोग्राम करने के लिए WEB का उपयोग किया, और दोनों प्रोग्रामों को किताबों के रूप में प्रकाशित किया: The TeXbook, जो मूल रूप से 1984 में प्रकाशित हुई, और The METAFONTbook, जो मूल रूप से 1986 में प्रकाशित हुई। लगभग उसी समय, LaTeX, अब व्यापक रूप से अपनाया गया macro package TeX के आधार पर, पहली बार Leslie Lamport द्वारा विकसित किया गया था, जिन्होंने बाद में 1986 में इसकी पहली user manual प्रकाशित की


