पोलिश संकेतन

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

पोलिश नोटेशन शब्द को कभी-कभी लिया जाता है (इन्फिक्स नोटेशन के विपरीत) रिवर्स पोलिश नोटेशन को भी शामिल करने के लिए।

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

इतिहास
Jan Łukasiewicz, Remarks on Nicod's Axiom and on Generalizing Deduction, पृष्ठ 180 के एक पेपर का एक उद्धरण बताता है कि कैसे संकेतन का आविष्कार किया गया था: "1924 में मुझे कोष्ठक-मुक्त अंकन का विचार आया। मैंने अपने लेख Łukasiewicz(1), पृष्ठ में पहली बार उस संकेतन का उपयोग किया। 610, फुटनोट।"

Lukasiewicz द्वारा उद्धृत संदर्भ स्पष्ट रूप से पोलिश भाषा में लिथोग्राफ की गई रिपोर्ट है। लुकासिविक्ज़ रिमार्क्स ऑन निकॉड एक्सिओम एंड ऑन जेनरलाइज़िंग डिडक्शन द्वारा रेफ़रिंग पेपर की समीक्षा 1965 में जर्नल ऑफ़ सिंबॉलिक लॉजिक में हेनरी पोगोरज़ेल्स्की|हेनरी ए. पोगोरज़ेल्स्की द्वारा की गई थी। 1924 में मूसा शोनफिंकेल के लेख के संपादक हेनरिक बेहमन, तर्क सूत्रों में कोष्ठकों को हटाने का विचार पहले से ही था। Łukasiewicz ने अपने एक पत्र में कहा कि उनका अंकन सबसे कॉम्पैक्ट और पहला रैखिक रूप से लिखा गया कोष्ठक-मुक्त संकेतन है, लेकिन पहला नहीं जैसा कि Gottlob Frege ने 1879 में पहले से ही अपने कोष्ठक-मुक्त Begriffsschrift संकेतन का प्रस्ताव दिया था।

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

Łukasiewicz की 1951 की पुस्तक में, आधुनिक औपचारिक तर्क के दृष्टिकोण से अरस्तू की सिलोजिस्टिक, उन्होंने उल्लेख किया है कि उनके संकेतन का सिद्धांत कोष्ठक से बचने के लिए एक फ़ंक्शन के तर्क से पहले फ़ंक्शन प्रतीकों को लिखना था और उन्होंने अपने तार्किक पत्रों में अपने अंकन को तब से नियोजित किया था 1929. इसके बाद वह एक उदाहरण के रूप में उद्धृत करता है, 1930 का एक पेपर जो उसने प्रस्तावित कलन पर अल्फ्रेड टार्स्की के साथ लिखा था।

जबकि अब तर्क में ज्यादा इस्तेमाल नहीं किया जाता है, पोलिश संकेतन को तब से कंप्यूटर विज्ञान में जगह मिली है।

स्पष्टीकरण
संख्या 1 और 2 को जोड़ने के लिए अभिव्यक्ति को पोलिश संकेतन में लिखा गया है + 1 2 (उपसर्ग), बजाय के रूप में 1 + 2 (इनफिक्स)। अधिक जटिल अभिव्यक्तियों में, ऑपरेटर अभी भी अपने ऑपरेंड से पहले होते हैं, लेकिन ऑपरेंड खुद भी एक्सप्रेशन हो सकते हैं जिसमें फिर से ऑपरेटर और उनके ऑपरेंड शामिल हैं। उदाहरण के लिए, अभिव्यक्ति जो पारंपरिक इंफिक्स नोटेशन में लिखी जाएगी

पोलिश नोटेशन में लिखा जा सकता है

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

उत्पाद के प्रसंस्करण को तब तक के लिए टाल दिया जाता है जब तक कि इसके दो ऑपरेंड उपलब्ध नहीं हो जाते (यानी, 5 माइनस 6, और 7)। किसी भी संकेतन के साथ, अंतरतम अभिव्यक्तियों का मूल्यांकन पहले किया जाता है, लेकिन पोलिश संकेतन में इस अंतरतम-नेस को ब्रैकेटिंग के बजाय ऑपरेटरों और ऑपरेंडों के अनुक्रम द्वारा व्यक्त किया जा सकता है।

पारंपरिक इन्फिक्स नोटेशन में, संचालन के मानक क्रम को ओवरराइड करने के लिए कोष्ठक की आवश्यकता होती है, क्योंकि, उपरोक्त उदाहरण का जिक्र करते हुए, उन्हें स्थानांतरित करना

या उन्हें हटा रहा है

अभिव्यक्ति के अर्थ और परिणाम को बदल देता है। यह संस्करण पोलिश संकेतन में लिखा गया है

विभाजन या घटाव जैसे गैर-कम्यूटेटिव संचालन से निपटने के दौरान, ऑपरेटरों की अनुक्रमिक व्यवस्था को इस परिभाषा के साथ समन्वयित करना आवश्यक है कि ऑपरेटर अपने तर्कों को कैसे लेता है, यानी बाएं से दाएं। उदाहरण के लिए, ÷ 10 5, 5 के बाईं ओर 10 के साथ, 10 ÷ 5 का अर्थ है (10 को 5 से विभाजित करें के रूप में पढ़ें), या − 7 6, 7 बायें से 6 के साथ, 7 − 6 का अर्थ है (7 ऑपरेंड 6 से घटाना के रूप में पढ़ें)।

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

उपरोक्त स्केच्ड स्टैक मैनिपुलेशन काम करता है - मिरर किए गए इनपुट के साथ - रिवर्स पोलिश नोटेशन में एक्सप्रेशन के लिए भी।

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

ध्यान दें कि परिमाणक (तर्क)तर्क) कई-मूल्यवान लॉजिक्स पर लुकासिविक्ज़ के काम में प्रस्तावित मूल्यों से अधिक है।

जोज़ेफ़ मारिया बोचेंस्की | बोचेंस्की ने पोलिश संकेतन की एक प्रणाली की शुरुआत की, जो शास्त्रीय प्रस्तावपरक तर्क के सभी 16 द्विआधारी तार्किक संयोजकों का नाम है। शास्त्रीय प्रस्तावपरक तर्क के लिए, यह लुकासिविक्ज़ के अंकन का एक संगत विस्तार है। लेकिन संकेतन इस अर्थ में असंगत हैं कि बोचेंस्की प्रस्तावात्मक तर्क में एल और एम (गैर-निम्नीकरण और विलोम गैर-निम्नीकरण के लिए) का उपयोग करता है और लुकासिविक्ज़ मोडल तर्क में एल और एम का उपयोग करता है।

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

पोस्टफिक्स नोटेशन का उपयोग कई स्टैक-उन्मुख प्रोग्रामिंग भाषा जैसे परिशिष्ट भाग और फोर्थ (प्रोग्रामिंग भाषा) में किया जाता है। कॉफीस्क्रिप्ट सिंटैक्स भी फ़ंक्शन को प्रीफ़िक्स नोटेशन का उपयोग करने की अनुमति देता है, जबकि अभी भी अन्य भाषाओं में यूनरी पोस्टफ़िक्स सिंटैक्स का समर्थन करता है।

किसी एक्सप्रेशन के रिटर्न वैल्यू की संख्या एक एक्सप्रेशन में ऑपरेंड की संख्या और ऑपरेटरों की कुल संख्या के बीच के अंतर के बराबर होती है, जो ऑपरेटरों के रिटर्न वैल्यू की कुल संख्या को घटाती है।

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

यह भी देखें

 * रिवर्स पोलिश नोटेशन (RPN)
 * समारोह आवेदन
 * लैम्ब्डा कैलकुलस
 * करी
 * लिस्प (प्रोग्रामिंग भाषा)
 * एस-अभिव्यक्ति
 * पोलिश स्कूल ऑफ मैथमैटिक्स
 * हंगेरियन संकेतन
 * क्रिया-विषय-वस्तु (VSO)
 * क्रिया-वस्तु-विषय (VOS)
 * सिर-दिशात्मकता पैरामीटर
 * डब्ल्यूएफएफ 'एन प्रूफ

अग्रिम पठन

 * Translated by H. Weber in Storrs McCall, Polish Logic 1920–1939, Clarendon Press: Oxford (1967).
 * (77 pages)
 * (11 pages) (NB. Published in .)
 * (11 pages)