निःशक्तता

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

यह शब्द 1870 में अमेरिकी गणितज्ञ बेंजामिन पीयर्स द्वारा प्रस्तुत किया गया था बीजगणित के तत्वों के संदर्भ में जो धनात्मक पूर्णांक शक्ति तक उठाए जाने पर अपरिवर्तित रहते हैं, और इसका शाब्दिक अर्थ (समान शक्ति होने की गुणवत्ता) से + विक्त: सामर्थ्य (समान + शक्ति) है ।

परिभाषा
बाइनरी ऑपरेटर $$\cdot$$ से लैस समुच्चय $$S$$ का एक तत्व $$x$$ $$\cdot$$ के अनुसार निःशक्तता कहा गया है यदि
 * $x\cdot x=x$.

बाइनरी ऑपरेशन $$\cdot$$ को निःशक्तता कहा जाता है यदि
 * $x\cdot x=x$ for all $x\in S$.

उदाहरण

 * मोनोइड में $$(\mathbb{N}, \times)$$ गुणन के साथ प्राकृतिक संख्याओं में से केवल 0 और 1 ही निःशक्तता हैं। वास्तविक में, $0\times 0 = 0$ और $1\times 1=1$ होता हैं।.
 * मोनोइड में $$(\mathbb{N}, $$ +) जोड़ के साथ प्राकृतिक संख्याओं में, केवल 0 ही निःशक्तता है। वास्तविक में, 0 + 0 = 0 होता हैं।
 * मैग्मा (बीजगणित) में $$(M, \cdot)$$, पहचान तत्व $$e$$ या शोषक तत्व $$a$$, यदि यह मौजूद है, तो यह निःशक्तता है। वास्तविक में, $e\cdot e=e$ और $a\cdot a=a$ होता हैं।
 * समूह में (गणित) $$(G, \cdot)$$, पहचान तत्व $$e$$ मात्र निष्पाप तत्व है। वास्तविक में, यदि $$x$$ का तत्व $$G$$ है जैसे कि $x\cdot x=x$, तब $x\cdot x=x\cdot e$ और अंत में $$x=e$$ के बाईं ओर $$x$$ के व्युत्क्रम तत्व से गुणा करना चाहिये।
 * मोनोइड्स में $$(\mathcal{P}(E), \cup)$$ और $$(\mathcal{P}(E), \cap)$$ सत्ता स्थापित की $$\mathcal{P}(E)$$ समुच्चय का $$E$$ संघ के साथ (समुच्चय सिद्धांत) $$\cup$$ और प्रतिच्छेद (समुच्चय सिद्धांत) $$\cap$$ क्रमश, $$\cup$$ और $$\cap$$ निःशक्तता हैं। वास्तविक में, $x\cup x=x$ for all $x\in \mathcal{P}(E)$, और $x\cap x=x$ for all $x\in \mathcal{P}(E)$ हैं।
 * मोनोइड्स में $$(\{0, 1\}, \vee)$$ और $$(\{0, 1\}, \wedge)$$ तार्किक संयोजन के साथ बूलियन डोमेन का $$\vee$$ और तार्किक संयोजन $$\wedge$$ क्रमश, $$\vee$$ और $$\wedge$$ निःशक्तता हैं। वास्तविक में, $x\vee x=x$ for all $x\in \{0, 1\}$, और $x\wedge x=x$ for all $x\in \{0, 1\}$ हैं।
 * जीसीडी डोमेन में (उदाहरण के लिए $$\mathbb{Z}$$), सबसे बड़े सामान्य विभाजक और कम से कम सामान्य गुणक की संक्रियाएँ निःशक्तता होती हैं।
 * बूलियन वलय में, गुणन निःशक्तता होता है।
 * उष्णकटिबंधीय अर्द्धवलय में, योग निःशक्तता है।
 * आव्यूह_वलय में, निःशक्तता आव्यूह का निर्धारक या तो 0 या 1 है। यदि निर्धारक 1 है, तो आव्यूह अनिवार्य रूप से पहचान आव्यूह है।

निःशक्तता फलन
मोनॉइड में $$(E^E, \circ)$$ समुच्चय से फलनों की $$E$$ स्वयं के लिए (देखें फलन_(गणित) समूह_घातांक) फलन संरचना के साथ $$\circ$$, निःशक्तता तत्व फलन $f\colon E\to E$ हैं, ऐसा है कि $f\circ f = f$, वह ऐसा $f(f(x))=f(x)$ for all $x\in E$ (दूसरे शब्दों में, छवि $$f(x)$$ प्रत्येक तत्व का $$x\in E$$ का निश्चित बिंदु (गणित) है $$f$$) है। उदाहरण के लिए:
 * निरपेक्ष मूल्य निःशक्तता है। वास्तविक में, $\operatorname{abs}\circ \operatorname{abs}=\operatorname{abs}$, वह है $\operatorname{abs}(\operatorname{abs}(x))=\operatorname{abs}(x)$ for all $x$;
 * निरंतर फलन निःशक्तता हैं;
 * पहचान फलन निःशक्तता है;
 * फर्श और छत के फलन, फर्श और छत के फलन और आंशिक भाग के फलन निष्प्रभावी हैं;
 * किसी समूह के पावर समुच्चय से समूह फलन का जनरेटिंग समुच्चय बेवकूफ है;
 * वास्तविकिक संख्या पर एफिन स्थान के शक्ति समुच्चय से उत्तल पतवार फलन स्वयं के लिए निःशक्तता है;
 * टोपोलॉजिकल स्पेस के पावर समुच्चय के क्लोजर (टोपोलॉजी) और इंटीरियर (टोपोलॉजी) फलन स्वयं के लिए निःशक्तता हैं;
 * क्लेन स्टार और क्लीन प्लस मोनोइड के पावर समुच्चय के स्वयं के फलन हैं;
 * सदिश स्थान के निःशक्तता एंडोमोर्फिज्म इसके प्रोजेक्शन (रैखिक बीजगणित) हैं।

यदि समुच्चय $$E$$ है $$n$$ तत्वों, हम इसे विभाजित कर सकते हैं $$k$$ चुने गए निश्चित बिंदु और $n-k$ के प्रकार गैर निश्चित अंक $$f$$, और तब $$k^{n-k}$$ विभिन्न निःशक्तता फलनों की संख्या है। इसलिए, सभी संभावित विभाजनों को ध्यान में रखते हुए,
 * $$\sum_{k=0}^n {n \choose k} k^{n-k}$$

समुच्चय पर संभावित बेकार फलनों की कुल संख्या है। n = 0, 1, 2, 3, 4, 5, 6, 7, 8, ... के लिए उपरोक्त योग द्वारा दिए गए निःशक्तता फलनों की संख्या का पूर्णांक अनुक्रम 1, 1, 3, 10, 41 से प्रारंभ होता है, 196, 1057, 6322, 41393, ... .

फलन रचना के तहत न तो निःशक्तता होने की गुण और न ही होने की गुण को संरक्षित किया जाता है। पूर्व के लिए उदाहरण के रूप में, $f(x)=x$ मॉड्यूलर अंकगणित 3 और $$g(x)=\max(x, 5)$$ दोनों निष्पाप हैं, किन्तु $f\circ g$ क्या नहीं है, यद्यपि $g\circ f$ होना होता है। उत्तरार्द्ध के लिए उदाहरण के रूप में, निषेध फलन $$\neg$$ बूलियन डोमेन पर निःशक्तता नहीं है, किन्तु $\neg\circ\neg$ है। इसी प्रकार, एकात्मक निषेध {{nowrap| $$-(\cdot)$$} वास्तविकिक संख्याओं का } निःशक्तता नहीं है, किन्तु $-(\cdot)\circ -(\cdot)$ है। दोनों ही स्थितियों में, रचना केवल पहचान फलन है, जो कि निःशक्तता है।

कंप्यूटर विज्ञान का अर्थ
कंप्यूटर विज्ञान में, जिस संदर्भ में इसे प्रायुक्त किया गया है, उसके आधार पर शब्दहीनता का अलग अर्थ हो सकता है:
 * अनिवार्य प्रोग्रामिंग में, साइड इफेक्ट (कंप्यूटर विज्ञान) के साथ सबरूटीन बेकार है यदि सबरूटीन को कई कॉल प्रणाली स्टेट पर सिंगल कॉल के समान प्रभाव डालते हैं, दूसरे शब्दों में यदि प्रणाली स्टेट स्पेस शुद्ध समारोह खुद से जुड़ा होता है सबरूटीन #परिभाषा में दिए गए गणितीय अर्थ में निःशक्तता है;
 * फलनात्मक प्रोग्रामिंग में, शुद्ध फलन निःशक्तता है यदि यह परिभाषा में दिए गए गणितीय अर्थ में निःशक्तता है।

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

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

निःशक्तता सबरूटीन्स का क्रम जहां कम से कम सबरूटीन दूसरों से अलग है, हालांकि, जरूरी नहीं है कि यदि बाद में सबरूटीन अनुक्रम में मान बदलता है, जो पहले के सबरूटीन पर निर्भर करता है - अनुक्रमिक संरचना के तहत निःशक्तता बंद नहीं है। उदाहरण के लिए, मान लीजिए कि चर का प्रारंभिक मान 3 है और सबरूटीन अनुक्रम है जो चर को पढ़ता है, फिर इसे 5 में बदल देता है, और फिर इसे फिर से पढ़ता है। अनुक्रम में प्रत्येक चरण निःशक्तता है: चर को पढ़ने वाले दोनों चरणों का कोई दुष्प्रभाव नहीं होता है और चर को 5 में बदलने वाले चरण का हमेशा ही प्रभाव होगा चाहे इसे कितनी बार निष्पादित किया जाए। चूँकि, पूरे अनुक्रम को बार निष्पादित करने से आउटपुट (3, 5) उत्पन्न होता है, किन्तु इसे दूसरी बार निष्पादित करने से आउटपुट (5, 5) उत्पन्न होता है, इसलिए यह क्रम बेकार नहीं है। हाइपरटेक्स्ट ट्रान्सफर प्रोटोकॉल (एचटीटीपी) में, निष्क्रियता और सुरक्षा प्रमुख विशेषताएँ हैं जो एचटीटीपी विधियों को अलग करती हैं। प्रमुख एचटीटीपी विधियों में से, GET, PUT और DELETE को मानक के अनुसार आदर्श विधि से प्रायुक्त किया जाना चाहिए, किन्तु पोस्ट होने की आवश्यकता नहीं है। संसाधन की स्थिति प्राप्त करें; PUT संसाधन की स्थिति को अद्यतन करता है; और DELETE संसाधन को हटा देता है। जैसा कि ऊपर दिए गए उदाहरण में है, डेटा पढ़ने का सामान्यतः कोई दुष्प्रभाव नहीं होता है, इसलिए यह इडेम्पोटेंट (वास्तविक में विक्षनरी: न्यूलिपोटेंट) है। किसी दिए गए डेटा को अपडेट करना और हटाना प्रत्येक सामान्यतः बेकार होता है जब तक अनुरोध अद्वितीय रूप से संसाधन की पहचान करता है और केवल उस संसाधन को भविष्य में फिर से पहचानता है। अद्वितीय पहचानकर्ताओं के साथ PUT और DELETE क्रमशः मान या शून्य-मान के चर के असाइनमेंट के साधारण स्थिति को कम करते हैं, और उसी कारण से निष्क्रिय हैं; अंतिम परिणाम हमेशा प्रारंभिक निष्पादन के परिणाम के समान होता है, चाहे प्रतिक्रिया भिन्न हो।

भंडारण या विलोपन में विशिष्ट पहचान की आवश्यकता का उल्लंघन सामान्यतः निष्क्रियता के उल्लंघन का कारण बनता है। उदाहरण के लिए, किसी विशिष्ट पहचानकर्ता को निर्दिष्ट किए बिना सामग्री के दिए गए समुच्चय को संग्रहीत करना या हटाना: POST अनुरोध, जिन्हें बेकार होने की आवश्यकता नहीं है, अधिकांश अद्वितीय पहचानकर्ता नहीं होते हैं, इसलिए पहचानकर्ता का निर्माण प्राप्त करने वाले प्रणाली को सौंप दिया जाता है जो तब बनाता है संगत नया रिकॉर्ड। इसी प्रकार, गैर-विशिष्ट मानदंडों के साथ PUT और DELETE अनुरोधों के परिणामस्वरूप प्रणाली की स्थिति के आधार पर अलग-अलग परिणाम हो सकते हैं - उदाहरण के लिए, सबसे हालिया रिकॉर्ड को हटाने का अनुरोध। प्रत्येक स्थिति में, बाद के निष्पादन प्रणाली की स्थिति को और संशोधित करेंगे, इसलिए वे बेकार नहीं हैं।

इवेंट स्ट्रीम प्रोसेसिंग में, ही परिणाम उत्पन्न करने के लिए प्रणाली की क्षमता को संदर्भित करता है, चाहे एक ही फ़ाइल, ईवेंट या संदेश एक से अधिक बार प्राप्त हो।

लोड-स्टोर आर्किटेक्चर में, निर्देश जो संभवत: पृष्ठ दोष का कारण बन सकते हैं, वे निःशक्तता हैं। इसलिए यदि कोई पेज फॉल्ट होता है, तो ऑपरेटिंग प्रणाली पेज को डिस्क से लोड कर सकता है और फिर फॉल्ट निर्देश को फिर से निष्पादित कर सकता है। ऐसे प्रोसेसर में जहां इस प्रकार के निर्देश बेकार नहीं होते हैं, पृष्ठ दोषों से निपटना कहीं अधिक जटिल होता है।

आउटपुट को सुधारते समय, एंड्राइड प्रीटी-प्रिंटिंग के निष्क्रिय होने की विश्वाश है। दूसरे शब्दों में, यदि आउटपुट पहले से ही सुंदर है, तो सुंदर-प्रिंटर के लिए कुछ नहीं करना चाहिए।

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

कई ऑपरेशन जो बेकार हैं, अधिकांश बाधित होने पर प्रक्रिया को फिर से प्रारंभ करने के विधि होते हैं – यदि यह बाधित होता है जो प्रारंभ से ही प्रारंभ करने की तुलना में बहुत तेजी से समाप्त होता है। उदाहरण के लिए, फ़ाइल स्थानांतरण को फिर से प्रारंभ करना फाइल्स को, सिंक्रोनाइज़, करना एक सॉफ्टवेयर निर्माण बनाना, एक एप्लिकेशन इंस्टॉल करना और पैकेज प्रबंधक के साथ इसकी सभी निर्भरताएँ, आदि।

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

यह भी देखें

 * बायोआर्डर समुच्चय
 * क्लोजर ऑपरेटर
 * निश्चित बिंदु (गणित)
 * कोड का प्रभावहीन
 * बेमिसाल विश्लेषण
 * इम्पोटेंट आव्यूह
 * निस्पृह संबंध – द्विआधारी संबंधों के लिए निःशक्तता का सामान्यीकरण
 * इन्वोल्यूशन (गणित)
 * पुनरावृत्त समारोह
 * मैट्रिसेस की सूची
 * नपुंसक
 * शुद्ध फलन
 * संदर्भित पारदर्शिता

अग्रिम पठन

 * "निःशक्तता" at the Free On-line Dictionary of Computing
 * p. 443
 * Peirce, Benjamin. Linear Associative Algebra 1870.
 * p. 443
 * Peirce, Benjamin. Linear Associative Algebra 1870.
 * p. 443
 * Peirce, Benjamin. Linear Associative Algebra 1870.
 * Peirce, Benjamin. Linear Associative Algebra 1870.