Category: Notes

  • स्थानीय छवि निर्माण: कॉम्फीयूआई और फ्लक्स मॉडल

    आजकल, आपको क्लाउड सेवाओं पर निर्भर रहने की ज़रूरत नहीं है: आप पूरी तरह से अपने हार्डवेयर पर उच्च-गुणवत्ता वाली छवियां उत्पन्न कर सकते हैं। इस पोस्ट में, मैं वर्णन करूंगा कि ComfyUI का उपयोग करके आपके कंप्यूटर पर आधुनिक FLUX मॉडल को स्थानीय रूप से कैसे चलाया जाए।

    ComfyUI नोड-आधारित आर्किटेक्चर का उपयोग करता है। यह आपको इसकी अनुमति देता है:
    – पीढ़ी के हर चरण पर पूरी तरह से नियंत्रण रखें।
    – आसानी से तैयार “वर्कफ़्लोज़” साझा करें

    FLUX एक बड़ा मॉडल है, इसलिए हार्डवेयर आवश्यकताएँ SD 1.5 या SDXL से अधिक हैं:
    वीडियो कार्ड (जीपीयू): 12 जीबी वीआरएएम या उच्चतर (आरामदायक काम के लिए) के साथ एनवीडिया आरटीएक्स। यदि आपके पास 8 जीबी या उससे कम है, तो आपको परिमाणित संस्करण (जीजीयूएफ या एनएफ4) का उपयोग करना होगा।
    रैंडम एक्सेस मेमोरी (रैम): न्यूनतम 16 जीबी (अधिमानतः 32 जीबी और अधिक)।
    डिस्क स्थान: मॉडलों और घटकों के लिए लगभग 20-50 जीबी।

    FLUX शुरू करने का सबसे आसान तरीका तैयार टेम्पलेट का उपयोग करना है। बस वर्कफ़्लो विंडो में फ़्लक्स टेक्स्ट टू इमेज खोजें और इंस्टॉल करें।

    `टेक्स्ट टू इमेज (फ्लक्स.1 डेव)` नोड में अंग्रेजी में एक संकेत लिखें, रिज़ॉल्यूशन का चयन करें (फ्लक्स 1024×1024 और इससे भी अधिक के साथ अच्छा काम करता है) और RUN दबाएँ।

    पहली पीढ़ी में समय लग सकता है क्योंकि मॉडलों को वीडियो कार्ड मेमोरी में लोड किया जाएगा।

    https://github.com/comfyanonymous/ComfyUI

  • स्थानीय वाइब कोडिंग: एलएम स्टूडियो, वीएस कोड और जारी रखें

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

    स्थानीय वाइब कोडिंग के लिए उपकरण

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

    हार्डवेयर आवश्यकताएँ

    स्थानीय भाषा मॉडल स्मृति गहन हैं:
    वीडियो कार्ड (जीपीयू): 8 जीबी वीआरएएम या उच्चतर के साथ एनवीडिया (7-8 बिलियन पैरामीटर वाले मॉडल के साथ आरामदायक काम के लिए)। भारी मॉडलों के लिए 16 जीबी वीआरएएम की आवश्यकता होगी।
    डिस्क स्थान: विभिन्न डाउनलोड किए गए मॉडलों को संग्रहीत करने के लिए लगभग 500 जीबी।

    लिंक को कॉन्फ़िगर करना

    सेटअप प्रक्रिया काफी सरल है और टर्मिनल में जटिल हेरफेर की आवश्यकता नहीं है:
    1. एलएम स्टूडियो डाउनलोड और इंस्टॉल करें। क्वेन कोडर या gemma3:12b जैसे हल्के मॉडल को खोजने के लिए अंतर्निहित खोज का उपयोग करें।
    2. एलएम स्टूडियो में, स्थानीय सर्वर टैब पर जाएं और स्टार्ट सर्वर पर क्लिक करें। डिफ़ॉल्ट रूप से यह `http://localhost:1234/v1` पर प्रारंभ होगा।
    3. वीएस कोड खोलें और प्लगइन स्टोर से जारी रखें एक्सटेंशन इंस्टॉल करें।
    4. जारी रखें कॉन्फ़िगरेशन फ़ाइल खोलें और `ओपनाई` प्रदाता और एलएम स्टूडियो से अपने स्थानीय सर्वर का पता निर्दिष्ट करते हुए एक नया मॉडल जोड़ें।

    फिर आप जारी रखें साइडबार में सीधे अपने स्थानीय एलएलएम के साथ संवाद कर सकते हैं, अपने कोड के बारे में प्रश्न पूछ सकते हैं और नए घटक तैयार कर सकते हैं।

    यह क्यों काम करता है?

    जैसा कि मैंने पहले लिखा था, एलएलएम फ्लैट संरचना और WET (हर चीज़ दो बार लिखें) कोड के साथ बेहतर करते हैं। जब जटिल आर्किटेक्चर को डिजाइन करने की बात आती है तो स्थानीय पैरामीटर मॉडल GPT-4 जैसे दिग्गजों से कमतर हो सकते हैं, लेकिन वे बॉयलरप्लेट कोड उत्पन्न करने, सरल कार्यों को फिर से तैयार करने और तेजी से प्रोटोटाइप करने में सक्षम हैं।

    इसके अतिरिक्त, स्थानीय वाइब कोडिंग के साथ, आपका कोड मशीन को कभी नहीं छोड़ता है। यह इस संयोजन को कॉर्पोरेट विकास और संवेदनशील डेटा के साथ काम करने के लिए आदर्श बनाता है।

    आउटपुट

    स्थानीय तंत्रिका नेटवर्क एक प्रोग्रामर को पूरी तरह से बदलने या एक जटिल प्रणाली को डिजाइन करने में सक्षम नहीं हैं। हालाँकि, एलएम स्टूडियो + वीएस कोड + कंटिन्यू का संयोजन क्लाउड सेवाओं से स्वतंत्रता प्रदान करता है और गोपनीयता बनाए रखता है। यदि आप छोटे मॉडलों की सीमाओं को स्वीकार करने और परियोजना वास्तुकला को स्वतंत्र रूप से नियंत्रित करने के इच्छुक हैं तो यह नियमित कार्यों के लिए पूरी तरह से काम करने वाला सहायक उपकरण है।

    लिंक

    https://code.visualstudio.com/
    https://lmstudio.ai/
    https://continue.dev/

    स्रोत

    https://youtu.be/IqqCwhG46jY
    https://www.youtube.com/watch?v=7AImkA96mE8

  • स्थानीय वीडियो पीढ़ी: कॉम्फ़ीयूआई और एलटीएक्स-2.3

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

    वीडियो निर्माण के लिए उपकरण

    काम के लिए हमें आवश्यकता होगी:
    ComfyUI: नोड-आधारित आर्किटेक्चर के साथ एक शक्तिशाली इंटरफ़ेस जो आपको पीढ़ी प्रक्रिया को लचीले ढंग से अनुकूलित करने की अनुमति देता है।
    LTX-2.3: लाइटरिक्स का एक आधुनिक मॉडल, जो अपेक्षाकृत मध्यम वीडियो मेमोरी आवश्यकताओं के साथ सहज और विस्तृत वीडियो बनाने के लिए अनुकूलित है।

    हार्डवेयर आवश्यकताएँ

    छवियों के साथ काम करने की तुलना में वीडियो बनाना कहीं अधिक संसाधन-गहन प्रक्रिया है:
    वीडियो कार्ड (जीपीयू): 8 जीबी वीआरएएम के साथ एनवीडिया आरटीएक्स 768×512 के रिज़ॉल्यूशन के लिए आवश्यक न्यूनतम है। आरामदायक संचालन और उच्च रिज़ॉल्यूशन के लिए, 16-24 जीबी वीआरएएम होना अत्यधिक वांछनीय है।
    रैंडम एक्सेस मेमोरी (रैम): न्यूनतम 32 जीबी। डाउनलोड करते समय वीडियो मॉडल और VAE बहुत अधिक जगह लेते हैं।
    डिस्क स्थान: मॉडल और संबंधित घटकों के लिए लगभग 500 जीबी।

    सेटअप और लॉन्च

    ComfyUI में LTX-2.3 लॉन्च करने की प्रक्रिया इस प्रकार है:
    1. ComfyUI अपडेट करें: मॉडल अपेक्षाकृत नया है, इसलिए सुनिश्चित करें कि आपके पास इंटरफ़ेस का नवीनतम संस्करण स्थापित है।
    2. वर्कफ़्लो स्थापित करें: सबसे आसान तरीका LTX वीडियो के लिए तैयार JSON टेम्पलेट ढूंढना है। वीडियो अव्यक्त स्थान के साथ काम करने के लिए मॉडल को विशिष्ट नोड्स की आवश्यकता होती है।
    3. संकेत और पैरामीटर: अंग्रेजी में दृश्य का विवरण दर्ज करें। ध्यान दें कि LTX-2.3 गति को अच्छी तरह से समझता है (उदाहरण के लिए “कैमरा चारों ओर घूमता है”, “तेज गति”)।

    LTX-2.3 क्यों चुनें?

    LTX-2.3 उल्लेखनीय है क्योंकि यह मालिकाना क्लाउड सेवाओं के बराबर परिणाम देता है, लेकिन स्थानीय रूप से चलता है। यह आपको देता है:
    पूर्ण गोपनीयता: आपके संकेत और जेनरेट किए गए वीडियो अन्य लोगों के सर्वर पर नहीं जाते हैं।
    नियंत्रण: आप प्रत्येक प्रयास के लिए भुगतान किए बिना फ्रेम दर (एफपीएस), रिज़ॉल्यूशन और शीघ्र शक्ति के साथ प्रयोग कर सकते हैं।

    स्थानीय वीडियो पीढ़ी अभी भी सक्रिय विकास में है, और LTX-2.3 “होम हॉलीवुड” की दुनिया में एक शानदार प्रविष्टि है।

    लिंक

    https://github.com/comfyanonymous/ComfyUI
    https://huggingface.co/Lightricks/LTX-Video

  • स्थानीय संगीत पीढ़ी: कॉम्फीयूआई और एसीई-स्टेप-1.5 मॉडल

    आजकल, आपको सामग्री बनाने के लिए क्लाउड सेवाओं पर निर्भर रहने की ज़रूरत नहीं है: आप पूरी तरह से अपने हार्डवेयर पर उच्च गुणवत्ता वाला संगीत उत्पन्न कर सकते हैं। इस पोस्ट में, मैं वर्णन करूंगा कि ComfyUI का उपयोग करके आपके कंप्यूटर पर आधुनिक ACE-Step-1.5 मॉडल को स्थानीय रूप से कैसे चलाया जाए।

    ComfyUI नोड-आधारित आर्किटेक्चर का उपयोग करता है। यह आपको इसकी अनुमति देता है:
    – ऑडियो जेनरेशन के हर चरण को पूरी तरह से नियंत्रित करें।
    – आसानी से तैयार “वर्कफ़्लोज़” साझा करें।

    एसीई-स्टेप-1.5 संगीत निर्माण के लिए एक उन्नत मॉडल है जिसके लिए महत्वपूर्ण कम्प्यूटेशनल संसाधनों की आवश्यकता होती है। हार्डवेयर आवश्यकताएँ कई सरल सिंथेसाइज़र की तुलना में अधिक हैं:
    वीडियो कार्ड (जीपीयू): उच्च गुणवत्ता पर आरामदायक काम के लिए 8 जीबी वीआरएएम या उच्चतर (12 जीबी+ अनुशंसित) के साथ एनवीडिया आरटीएक्स।
    रैंडम एक्सेस मेमोरी (रैम): न्यूनतम 16 जीबी (अधिमानतः 32 जीबी और अधिक)।
    प्रोसेसर (सीपीयू): AVX/CUDA कंप्यूटिंग के लिए अच्छे समर्थन के साथ आधुनिक मल्टी-कोर प्रोसेसर।
    डिस्क स्थान: मॉडलों और घटकों के लिए लगभग 20-50 जीबी।

    ACE-Step-1.5 को चलाने का सबसे आसान तरीका तैयार ऑडियो जेनरेशन टेम्पलेट का उपयोग करना है। बस वर्कफ़्लो विंडो में संगीत टेक्स्ट से ऑडियो खोजें और इंस्टॉल करें।

    `प्रॉम्प्ट इनपुट` नोड में शैली और मनोदशा का वर्णन करने वाला एक संकेत लिखें (उदाहरण के लिए, “भारी बास के साथ उत्थान सिंथवेव ट्रैक”)। वांछित अवधि निर्दिष्ट करें और RUN दबाएँ।
    पहली पीढ़ी में समय लग सकता है, क्योंकि मॉडलों को वीडियो कार्ड मेमोरी में लोड किया जाएगा और जटिल ध्वनिक पैटर्न को संसाधित किया जाएगा।

    https://github.com/comfyanonymous/ComfyUI
    https://www.youtube.com/watch?v=UAlLD5fS7-c

  • ओलामा का उपयोग करते हुए स्थानीय तंत्रिका नेटवर्क

    यदि आपको चैटजीपीटी जैसा कुछ लॉन्च करने की इच्छा थी और आपके पास एक काफी शक्तिशाली कंप्यूटर है, उदाहरण के लिए एनवीडिया आरटीएक्स वीडियो कार्ड के साथ, तो आप ओलामा प्रोजेक्ट चला सकते हैं, जो आपको अपने स्थानीय मशीन पर तैयार एलएलएम मॉडल में से एक का बिल्कुल मुफ्त उपयोग करने की अनुमति देगा। ओलामा चैटजीपीटी के तरीके से एलएलएम मॉडल के साथ संवाद करने की क्षमता प्रदान करता है; नवीनतम संस्करण में, छवियों को पढ़ने और आउटपुट डेटा को json प्रारूप में प्रारूपित करने की क्षमता की भी घोषणा की गई है।

    मैंने प्रोजेक्ट को Apple M2 प्रोसेसर के साथ मैकबुक पर भी चलाया, और मुझे पता है कि AMD के वीडियो कार्ड के नवीनतम मॉडल समर्थित हैं।

    MacOS पर इंस्टॉल करने के लिए, ollama वेबसाइट पर जाएँ:
    https://ollama.com/download/mac

    “MacOS के लिए डाउनलोड करें” पर क्लिक करें, आप ollama-darwin.zip फॉर्म का एक संग्रह डाउनलोड करेंगे, संग्रह के अंदर Ollama.app होगा जिसे “एप्लिकेशन” में कॉपी करने की आवश्यकता है। इसके बाद, Ollama.app लॉन्च करें, सबसे अधिक संभावना है कि इंस्टॉलेशन प्रक्रिया पहले लॉन्च पर होगी। उसके बाद, ट्रे में आपने ओलामा आइकन देखा, ट्रे घड़ी के ठीक बगल में शीर्ष पर है।

    उसके बाद, एक नियमित macOS टर्मिनल लॉन्च करें, और किसी भी ओलामा मॉडल को डाउनलोड, इंस्टॉल और चलाने के लिए कमांड टाइप करें। उपलब्ध मॉडलों, विवरणों और उनकी विशेषताओं की सूची ओलामा वेबसाइट पर देखी जा सकती है:
    https://ollama.com/search

    यदि लॉन्च के समय यह आपके वीडियो कार्ड में फिट नहीं बैठता है तो सबसे कम पैरामीटर वाला मॉडल चुनें।

    उदाहरण के लिए, llama3.1:नवीनतम मॉडल लॉन्च करने का आदेश:

    ollama run llama3.1:latest
    

    विंडोज़ और लिनक्स के लिए इंस्टॉलेशन आम तौर पर समान है, एक मामले में एक ओलामा इंस्टॉलर होगा और पावरशेल के माध्यम से इसके साथ आगे काम किया जाएगा।
    लिनक्स के लिए, इंस्टॉलेशन एक स्क्रिप्ट का उपयोग करके किया जाता है, लेकिन मैं आपके विशिष्ट पैकेज मैनेजर के संस्करण का उपयोग करने की सलाह देता हूं। लिनक्स पर, ओलामा को नियमित बैश टर्मिनल के माध्यम से भी लॉन्च किया जा सकता है।

    सूत्रों का कहना है
    https://www.youtube.com/watch?v=Wjrdr0NU4Sk
    https://ollama.com

  • ffmpeg का उपयोग करके वीडियो स्थिरीकरण

    यदि आप वीडियो को स्थिर करना चाहते हैं और कैमरा शेक को दूर करना चाहते हैं, तो `ffmpeg` टूल एक शक्तिशाली समाधान प्रदान करता है। अंतर्निहित फ़िल्टर `vidstabdetect` और `vidstabtransform` के लिए धन्यवाद, आप जटिल वीडियो संपादकों का उपयोग किए बिना पेशेवर परिणाम प्राप्त कर सकते हैं।

    काम के लिए तैयारी

    शुरू करने से पहले, सुनिश्चित करें कि आपका `ffmpeg` `vidstab` लाइब्रेरी का समर्थन करता है। लिनक्स पर आप इसे कमांड से जांच सकते हैं:

    bash  
    ffmpeg -filters | grep vidstab  
    

    यदि लाइब्रेरी स्थापित नहीं है, तो आप इसे जोड़ सकते हैं:

    sudo apt install ffmpeg libvidstab-dev  
    

    ब्रू के माध्यम से macOS के लिए इंस्टालेशन:

    brew install libvidstab
    brew install ffmpeg
    

    अब चलिए प्रक्रिया पर आगे बढ़ते हैं।

    चरण 1: गति विश्लेषण

    सबसे पहले आपको वीडियो की गति का विश्लेषण करना होगा और स्थिरीकरण मापदंडों के साथ एक फ़ाइल बनानी होगी।

    ffmpeg -i input.mp4 -vf vidstabdetect=shakiness=10:accuracy=15 transfile=transforms.trf -f null -  
    

    पैरामीटर:

    अस्थिरता: वीडियो शेक स्तर (डिफ़ॉल्ट 5, अधिक जटिल मामलों के लिए 10 तक बढ़ाया जा सकता है)।
    सटीकता: विश्लेषण सटीकता (डिफ़ॉल्ट 15)।
    ट्रांसफ़ाइल: गति मापदंडों को सहेजने के लिए फ़ाइल का नाम।

    चरण 2: स्थिरीकरण लागू करें

    अब आप परिवर्तन फ़ाइल का उपयोग करके स्थिरीकरण लागू कर सकते हैं:

    ffmpeg -i input.mp4 -vf vidstabtransform=input=transforms.trf:zoom=5 output.mp4
    

    पैरामीटर:

    इनपुट: परिवर्तन मापदंडों के साथ फ़ाइल को इंगित करता है (पहले चरण में बनाया गया)।
    ज़ूम: काले किनारों को हटाने के लिए ज़ूम कारक (उदाहरण के लिए 5 – कलाकृतियों को हटाए जाने तक ऑटो ज़ूम)।

  • ट्यूरिंग कंप्यूटिंग मशीनें

    मैं आपके ध्यान में 1936 से एलन ट्यूरिंग के लेख “ऑन कंप्यूटेबल नंबर्स विद एन एप्लीकेशन टू द प्रॉब्लम ऑफ रिजॉल्यूशन” के पहले पन्नों का अनुवाद प्रस्तुत करता हूं। पहले अध्याय में कंप्यूटर का विवरण है, जो बाद में आधुनिक कंप्यूटिंग का आधार बन गया।

    लेख और स्पष्टीकरण का पूरा अनुवाद अमेरिकी लोकप्रिय चार्ल्स पेटज़ोल्ड की पुस्तक में पढ़ा जा सकता है, जिसका शीर्षक है “रीडिंग ट्यूरिंग: ए जर्नी थ्रू ट्यूरिंग हिस्टोरिकल आर्टिकल ऑन कम्प्यूटेबिलिटी एंड ट्यूरिंग मशीन्स” (आईएसबीएन 978-5-97060-231-7, 978-0-470-22905-7)

    मूल लेख:
    https://www.astro.puc.cl/~rparra/tools/PAPERS/turing_1936.pdf

    समाधान समस्या के अनुप्रयोग के साथ गणनीय संख्याओं पर

    ए. एम. ट्यूरिंग

    [28 मई 1936 को प्राप्त – 12 नवंबर 1936 को पढ़ें]

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

    पैराग्राफ 9 और 10 में मैं यह दिखाने के लिए कुछ तर्क देता हूं कि गणना योग्य संख्याओं में वे सभी संख्याएं शामिल होती हैं जिन्हें स्वाभाविक रूप से गणना योग्य माना जाता है। विशेष रूप से, मैं दिखाता हूँ कि संख्याओं के कुछ बड़े वर्ग गणना योग्य हैं। इनमें शामिल हैं, उदाहरण के लिए, सभी बीजगणितीय संख्याओं के वास्तविक भाग, बेसेल फ़ंक्शंस के शून्य के वास्तविक भाग, संख्याएँ π, ई और अन्य। हालाँकि, गणना योग्य संख्याओं में सभी निश्चित संख्याएँ शामिल नहीं होती हैं, जैसा कि एक निश्चित संख्या के निम्नलिखित उदाहरण से प्रमाणित होता है जो गणना योग्य नहीं है।

    यद्यपि गणना योग्य संख्याओं का वर्ग बहुत बड़ा है और कई मामलों में वास्तविक संख्याओं के वर्ग के समान है, फिर भी यह गणना योग्य है। §8 में मैं कुछ ऐसे तर्कों पर विचार करता हूं जो इसके विपरीत तर्क देते प्रतीत होंगे। जब इनमें से किसी एक तर्क को सही ढंग से लागू किया जाता है, तो ऐसे निष्कर्ष निकाले जाते हैं जो पहली नज़र में गोडेल* के समान होते हैं। इन परिणामों का अत्यंत महत्वपूर्ण अनुप्रयोग है। विशेष रूप से, जैसा कि नीचे दिखाया गया है (§11), समाधान समस्या का कोई समाधान नहीं हो सकता।

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

    1. कंप्यूटर

    हम पहले ही कह चुके हैं कि गणनीय संख्याएँ वे संख्याएँ हैं जिनके दशमलव स्थान परिमित साधनों द्वारा गिनने योग्य होते हैं। यहां एक स्पष्ट परिभाषा की आवश्यकता है। जब तक हम §9 तक नहीं पहुंच जाते, यह लेख यहां दी गई परिभाषाओं को सही ठहराने का कोई वास्तविक प्रयास नहीं करेगा। अभी के लिए, मैं सिर्फ यह नोट करूंगा कि (इसके लिए) तार्किक तर्क यह है कि मानव स्मृति, आवश्यकता से, सीमित है।

    आइए वास्तविक संख्या की गणना करने की प्रक्रिया में एक व्यक्ति की तुलना एक ऐसी मशीन से करें जो केवल सीमित संख्या में शर्तों q1, q2, …, qR को पूरा करने में सक्षम है; आइए इन स्थितियों को “एम-कॉन्फिगरेशन” कहें। यह (अर्थात, इस प्रकार परिभाषित) मशीन एक “टेप” (कागज के अनुरूप) से सुसज्जित है। मशीन से गुजरने वाली यह बेल्ट खंडों में विभाजित है। आइए उन्हें “वर्ग” कहें। ऐसे प्रत्येक वर्ग में किसी न किसी प्रकार का “प्रतीक” हो सकता है। किसी भी क्षण, केवल एक ही ऐसा वर्ग होता है, मान लीजिए कि वां, जिसमें वह प्रतीक होता है जो “इस मशीन में है।” आइए ऐसे वर्ग को “स्कैन किया हुआ प्रतीक” कहें। एक “स्कैन किया हुआ पात्र” ही एकमात्र ऐसा पात्र है जिसके बारे में मशीन को, ऐसा कहा जा सकता है, “सीधे तौर पर पता” होता है। हालाँकि, अपने एम-कॉन्फिगरेशन को बदलकर, मशीन उन कुछ पात्रों को प्रभावी ढंग से याद रख सकती है जिन्हें उसने पहले “देखा” (स्कैन किया है)। किसी भी क्षण मशीन का संभावित व्यवहार एम-कॉन्फ़िगरेशन क्यूएन और स्कैन किए गए प्रतीक*** द्वारा निर्धारित किया जाता है। आइए प्रतीकों की इस जोड़ी को qn, “कॉन्फ़िगरेशन” कहते हैं। इस प्रकार निर्दिष्ट कॉन्फ़िगरेशन किसी दी गई मशीन के संभावित व्यवहार को निर्धारित करता है। इनमें से कुछ कॉन्फ़िगरेशन में, जिनमें स्कैन किया गया वर्ग खाली है (यानी, कोई वर्ण नहीं है), मशीन स्कैन किए गए वर्ग पर एक नया वर्ण लिखती है, और इनमें से कुछ कॉन्फ़िगरेशन में यह स्कैन किए गए वर्ण को मिटा देती है। यह मशीन दूसरे वर्ग को स्कैन करने के लिए भी जाने में सक्षम है, लेकिन इस तरह यह केवल दाएं या बाएं बगल वाले वर्ग तक ही जा सकती है। इनमें से किसी भी ऑपरेशन के अलावा, मशीन का एम-कॉन्फ़िगरेशन बदला जा सकता है। इस मामले में, कुछ लिखित वर्ण अंकों का एक क्रम बनाएंगे, जो गणना की जा रही वास्तविक संख्या का दशमलव भाग है। उनमें से बाकी “स्मृति की सहायता” के लिए गलत चिह्नों से अधिक कुछ नहीं होंगे। इस स्थिति में, केवल उपर्युक्त गलत चिह्नों को ही मिटाया जा सकता है।

    मेरा दावा है कि यहां जिन ऑपरेशनों पर विचार किया गया है उनमें वे सभी ऑपरेशन शामिल हैं जिनका उपयोग गणना में किया जाता है। मशीन सिद्धांत की समझ रखने वाले पाठक के लिए इस कथन का तर्क समझना आसान है। इसलिए, अगले भाग में मैं “मशीन”, “टेप”, “स्कैन” आदि शब्दों के अर्थ की समझ के आधार पर संबंधित सिद्धांत को विकसित करना जारी रखूंगा।

    *गोडेल “प्रिंसिपिया गणित के औपचारिक रूप से अनिर्णीत वाक्यों पर (व्हाइटहेड और रसेल द्वारा 1910, 1912 और 1913 में प्रकाशित) और संबंधित सिस्टम, भाग I,” गणित का जर्नल। भौतिकी, जर्मन में मासिक बुलेटिन संख्या 38 (1931 के लिए, पृ. 173-198)।
    ** अलोंजो चर्च, “प्राथमिक संख्या सिद्धांत में एक अनिर्णीत समस्या,” गणित के अमेरिकी जे., नंबर 58 (1936), पीपी. 345-363।
    *** अलोंजो चर्च, “रिज़ॉल्यूशन समस्या पर एक नोट,” सिम्बोलिक लॉजिक के जे., नंबर 1 (1936), पीपी. 40-41