प्रक्रिया गणना: Difference between revisions
From Vigyanwiki
No edit summary |
No edit summary |
||
| (7 intermediate revisions by 3 users not shown) | |||
| Line 1: | Line 1: | ||
{{short description|Family of approaches for modelling concurrent systems}} | {{short description|Family of approaches for modelling concurrent systems}} | ||
[[कंप्यूटर विज्ञान]] में, '''प्रक्रिया गणना''' (या '''प्रक्रिया [[बीजगणित]]''') औपचारिक रूप से मॉडलिंग समवर्ती प्रणालियों के लिए संबंधित दृष्टिकोणों का एक विविध परिवार है। प्रक्रिया गणना स्वतंत्र कारकों या प्रक्रियाओं के संग्रह के बीच बातचीत, संचार और समक्रमण के उच्च-स्तरीय विवरण के लिए उपकरण प्रदान करती है। वे बीजगणितीय नियम भी प्रदान करते हैं जो प्रक्रिया विवरणों को हेरफेर और विश्लेषण करने की अनुमति देते हैं, और प्रक्रियाओं (उदाहरण के लिए, [[bisimulation|बिसिमुलेशन]] का उपयोग करना) के बीच समानता के बारे में औपचारिक तर्क की अनुमति देते हैं। प्रक्रिया गणना के प्रमुख उदाहरणों में संचार अनुक्रमिक प्रक्रियाएं, [[संचार प्रणालियों की गणना]], [[संचार प्रक्रियाओं का बीजगणित]], और [[टेम्पोरल ऑर्डरिंग विशिष्टता की भाषा]] सम्मिलित है।<ref name="baeten2004">{{cite journal|first=J.C.M. |last=Baeten| url = http://alexandria.tue.nl/extra1/wskrap/publichtml/200402.pdf | title = प्रक्रिया बीजगणित का एक संक्षिप्त इतिहास| journal = Rapport CSR 04-02 | publisher = Vakgroep Informatica, Technische Universiteit Eindhoven | year = 2004 }}</ref> परिवार में वर्तमान में जोड़े गए π-गणना, [[ परिवेश की गणना | एम्बिएंट गणना]] , पीईपीए, फ्यूजन गणना और [[ जोड़-गणना ]] सम्मिलित हैं। | [[कंप्यूटर विज्ञान]] में, '''प्रक्रिया गणना''' (या '''प्रक्रिया [[बीजगणित]]''') औपचारिक रूप से मॉडलिंग समवर्ती प्रणालियों के लिए संबंधित दृष्टिकोणों का एक विविध परिवार है। प्रक्रिया गणना स्वतंत्र कारकों या प्रक्रियाओं के संग्रह के बीच बातचीत, संचार और समक्रमण के उच्च-स्तरीय विवरण के लिए उपकरण प्रदान करती है। वे बीजगणितीय नियम भी प्रदान करते हैं जो प्रक्रिया विवरणों को हेरफेर और विश्लेषण करने की अनुमति देते हैं, और प्रक्रियाओं (उदाहरण के लिए, [[bisimulation|बिसिमुलेशन]] का उपयोग करना) के बीच समानता के बारे में औपचारिक तर्क की अनुमति देते हैं। प्रक्रिया गणना के प्रमुख उदाहरणों में संचार अनुक्रमिक प्रक्रियाएं, [[संचार प्रणालियों की गणना]], [[संचार प्रक्रियाओं का बीजगणित]], और [[टेम्पोरल ऑर्डरिंग विशिष्टता की भाषा|टेम्पोरल क्रम विशिष्टता की भाषा]] सम्मिलित है।<ref name="baeten2004">{{cite journal|first=J.C.M. |last=Baeten| url = http://alexandria.tue.nl/extra1/wskrap/publichtml/200402.pdf | title = प्रक्रिया बीजगणित का एक संक्षिप्त इतिहास| journal = Rapport CSR 04-02 | publisher = Vakgroep Informatica, Technische Universiteit Eindhoven | year = 2004 }}</ref> परिवार में वर्तमान में जोड़े गए π-गणना, [[ परिवेश की गणना | एम्बिएंट गणना]] , पीईपीए, फ्यूजन गणना और [[ जोड़-गणना ]] सम्मिलित हैं। | ||
== आवश्यक विशेषताएं == | == आवश्यक विशेषताएं == | ||
| Line 49: | Line 49: | ||
=== छिपाना === | === छिपाना === | ||
प्रक्रियाएं उन कनेक्शनों की संख्या को सीमित नहीं करती हैं जो किसी दिए गए अंतःक्रियात्मक बिंदु पर किए जा सकते हैं। किन्तु इंटरेक्शन बिन्दु हस्तक्षेप ( | प्रक्रियाएं उन कनेक्शनों की संख्या को सीमित नहीं करती हैं जो किसी दिए गए अंतःक्रियात्मक बिंदु पर किए जा सकते हैं। किन्तु इंटरेक्शन बिन्दु हस्तक्षेप (अर्थात् इंटरैक्शन) की अनुमति देते हैं। कॉम्पैक्ट, न्यूनतम और रचनात्मक प्रणालियों के संश्लेषण के लिए, हस्तक्षेप को प्रतिबंधित करने की क्षमता महत्वपूर्ण है। छिपाने के संचालन से समानांतर में एजेंटों की रचना करते समय बातचीत बिंदुओं के बीच बने कनेक्शनों को नियंत्रित करने की अनुमति मिलती है। छिपाने को विभिन्न विधियों से निरूपित किया जा सकता है। उदाहरण के लिए, π-कैलकुलस में <math>\mathit{P}</math> में एक नाम <math>\mathit{x}</math> के छिपने को <math>(\nu\; x)P</math> के रूप में व्यक्त किया जा सकता है, जबकि संचार अनुक्रमिक प्रक्रियाओं में इसे <math>P \setminus \{x\}</math> के रूप में लिखा जा सकता है। | ||
कॉम्पैक्ट, न्यूनतम और रचनात्मक प्रणालियों | |||
=== पुनरावर्तन और प्रतिकृति === | === पुनरावर्तन और प्रतिकृति === | ||
अब तक प्रस्तुत किए गए ऑपरेशन केवल परिमित अंतःक्रिया का वर्णन करते हैं और परिणामस्वरूप पूर्ण संगणनीयता के लिए अपर्याप्त हैं, जिसमें गैर-समाप्ति व्यवहार सम्मिलित है। पुनरावर्तन और [[प्रतिकृति (कंप्यूटिंग)]] ऐसे ऑपरेशन हैं जो अनंत व्यवहार के परिमित विवरण की अनुमति देते हैं। [[ प्रत्यावर्तन ]] अनुक्रमिक | अब तक प्रस्तुत किए गए ऑपरेशन केवल परिमित अंतःक्रिया का वर्णन करते हैं और परिणामस्वरूप पूर्ण संगणनीयता के लिए अपर्याप्त हैं, जिसमें गैर-समाप्ति व्यवहार सम्मिलित है। पुनरावर्तन और [[प्रतिकृति (कंप्यूटिंग)]] ऐसे ऑपरेशन हैं जो अनंत व्यवहार के परिमित विवरण की अनुमति देते हैं। [[ प्रत्यावर्तन ]] अनुक्रमिक संसार से अच्छी तरह से जाना जाता है। प्रतिकृति <math>!P</math> को <math>\mathit{P}</math> प्रक्रियाओं की एक अनगिनत अनंत संख्या की समांतर संरचना को संक्षिप्त करने के रूप में समझा जा सकता है: | ||
:<math> | :<math> | ||
| Line 68: | Line 63: | ||
=== अशक्त प्रक्रिया === | === अशक्त प्रक्रिया === | ||
प्रक्रिया गणना में सामान्यतः अशक्त प्रक्रिया | प्रक्रिया गणना में सामान्यतः अशक्त प्रक्रिया (जिसे विभिन्न रूप में दर्शाया जाता है <math>\mathit{nil}</math>, <math>0</math>, <math>\mathit{STOP}</math>, <math>\delta</math>, या कोई अन्य उपयुक्त प्रतीक) भी सम्मिलित होती है जिसमें कोई अंतःक्रिया बिंदु नहीं है। यह पूरी तरह से निष्क्रिय है और इसका एकमात्र उद्देश्य आगमनात्मक एंकर के रूप में कार्य करना है जिसके शीर्ष पर और अधिक रोचक प्रक्रियाएं उत्पन्न की जा सकती हैं। | ||
== असतत और सतत प्रक्रिया बीजगणित == | == असतत और सतत प्रक्रिया बीजगणित == | ||
प्रक्रिया बीजगणित का अध्ययन असतत समय और निरंतर | प्रक्रिया बीजगणित का अध्ययन असतत समय और निरंतर समय (वास्तविक समय या सघन समय) के लिए किया गया है।<ref>{{cite journal | title = Process algebra with timing: Real time and discrete time | citeseerx = 10.1.1.42.729 | first1 = J. C. M. | last1 = Baeten | first2 = C. A. | last2 = Middelburg | year = 2000 | pages = 627–684 }}</ref> | ||
== इतिहास == | == इतिहास == | ||
20वीं शताब्दी के पूर्वार्द्ध में, | 20वीं शताब्दी के पूर्वार्द्ध में, विभिन्न औपचारिकताओं को एक संगणनीय कार्य की अनौपचारिक अवधारणा पर कब्जा करने के लिए प्रस्तावित किया गया था, जिसमें μ-रिकर्सिव फ़ंक्शंस, [[ट्यूरिंग मशीन]] और [[लैम्ब्डा कैलकुलस|लैम्ब्डा गणना]] संभवतः आज सबसे प्रसिद्ध उदाहरण हैं। आश्चर्यजनक तथ्य यह है कि वे अनिवार्य रूप से समतुल्य हैं, इस अर्थ में कि वे सभी एक-दूसरे में एन्कोड करने योग्य हैं, [[चर्च-ट्यूरिंग थीसिस]] का समर्थन करते हैं। एक और साझा सुविधा पर संभवतः ही कभी टिप्पणी की जाती है: वे सभी अनुक्रमिक संगणना के मॉडल के रूप में सबसे आसानी से समझी जाती हैं। कंप्यूटर विज्ञान के बाद के समेकन के लिए संगणना और संचार के विशेष रूप से स्पष्ट प्रतिनिधित्व में संगणना की धारणा के अधिक सूक्ष्म सूत्रीकरण की आवश्यकता थी। संगामिति के मॉडल जैसे 1962 में प्रोसेस कैलकुली [[पेट्री नेट|पेट्री नेट्स]] और 1973 में [[अभिनेता मॉडल|एक्टर मॉडल]] पूछताछ की इस पंक्ति से उभरे। | ||
1973 से 1980 की अवधि के समय [[संचार प्रणालियों की गणना]] ( | 1973 से 1980 की अवधि के समय [[संचार प्रणालियों की गणना]] (सीसीएस) पर [[रॉबिन मिलनर]] के मौलिक कार्य के साथ प्रक्रिया कैलकुली पर शोध आरंभ हुआ। सी.ए.आर. होरे की संचार अनुक्रमिक प्रक्रियाएं (सीएसपी) पहली बार 1978 में सामने आईं, और बाद में 1980 के दशक के प्रारंभ में इसे पूर्ण विकसित प्रक्रिया कलन के रूप में विकसित किया गया। विकसित होते ही सीसीएस और सीएसपी के बीच विचारों का बहुत अधिक क्रॉस-फर्टिलाइजेशन हो गया। 1982 में [[Jan Bergstra|जन बर्गस्ट्रा]] और [[Jan Willem Klop|जन विलेम क्लोप]] ने संचार प्रक्रियाओं (एसीपी) के बीजगणित के रूप में जाने जाने वाले काम पर काम करना आरंभ किया, और अपने काम का वर्णन करने के लिए प्रक्रिया बीजगणित की प्रारंभ किया था।<ref name="baeten2004"/> सीसीएस, सीएसपी, और एसीपी प्रक्रिया गणना परिवार की तीन प्रमुख शाखाओं का गठन करते हैं: अन्य प्रक्रिया गणनाओं में से अधिकांश इन तीन गणनाओं में से किसी में अपनी जड़ों का पता लगा सकते हैं। | ||
== वर्तमान शोध == | == वर्तमान शोध == | ||
| Line 86: | Line 80: | ||
* कम्प्यूटेशनल घटना के बेहतर मॉडलिंग के लिए नई प्रक्रिया कैलकुली का विकास करना। | * कम्प्यूटेशनल घटना के बेहतर मॉडलिंग के लिए नई प्रक्रिया कैलकुली का विकास करना। | ||
* किसी दिए गए प्रक्रिया कैलकुस के अच्छे व्यवहार वाले उप-कैलकुली ढूँढना। यह मूल्यवान है क्योंकि (1) अधिकांश गणना इस अर्थ में काफी जंगली हैं कि वे सामान्य हैं और | * किसी दिए गए प्रक्रिया कैलकुस के अच्छे व्यवहार वाले उप-कैलकुली ढूँढना। यह मूल्यवान है क्योंकि (1) अधिकांश गणना इस अर्थ में काफी जंगली हैं कि वे सामान्य हैं और स्वैच्छिक प्रक्रियाओं के बारे में बहुत कुछ नहीं कहा जा सकता है; और (2) कम्प्यूटेशनल अनुप्रयोग संभवतः ही कभी पूरे गणना को समाप्त करते हैं। किन्तु वे केवल उन प्रक्रियाओं का उपयोग करते हैं जो बहुत सीमित रूप में होती हैं। प्रक्रियाओं के आकार को सीमित करना अधिकांश [[ प्रकार प्रणाली ]] के माध्यम से अध्ययन किया जाता है। | ||
* प्रक्रियाओं के लिए तर्क जो [[होरे तर्क]] के विचारों का पालन करते हुए प्रक्रियाओं के (अनिवार्य रूप से) मनमाने गुणों के बारे में तर्क करने की अनुमति देते हैं। | * प्रक्रियाओं के लिए तर्क जो [[होरे तर्क]] के विचारों का पालन करते हुए प्रक्रियाओं के (अनिवार्य रूप से) मनमाने गुणों के बारे में तर्क करने की अनुमति देते हैं। | ||
* व्यवहार सिद्धांत: दो प्रक्रियाओं के समान होने का क्या अर्थ है? हम कैसे तय कर सकते हैं कि दो प्रक्रियाएं अलग हैं या नहीं? क्या हम प्रक्रियाओं के समतुल्य वर्गों के प्रतिनिधि ढूंढ सकते हैं? सामान्यतः, प्रक्रियाओं को समान माना जाता है यदि कोई संदर्भ नहीं है, | * व्यवहार सिद्धांत: दो प्रक्रियाओं के समान होने का क्या अर्थ है? हम कैसे तय कर सकते हैं कि दो प्रक्रियाएं अलग हैं या नहीं? क्या हम प्रक्रियाओं के समतुल्य वर्गों के प्रतिनिधि ढूंढ सकते हैं? सामान्यतः, प्रक्रियाओं को समान माना जाता है यदि कोई संदर्भ नहीं है, अर्थात् समानांतर में चल रही अन्य प्रक्रियाएं, अंतर का पता लगा सकती हैं। दुर्भाग्य से, इस अंतर्ज्ञान को त्रुटिहीन बनाना सूक्ष्म है और अधिकतर समानता के अनावश्यक लक्षणों (जो कि अधिकांश स्थिति में रुकने की समस्या के परिणामस्वरूप अनिर्णायक भी होना चाहिए) को जन्म देता है। बिसिमुलेशन तकनीकी उपकरण है जो प्रक्रिया समकक्षों के बारे में तर्क करने में सहायता करता है। | ||
* | * गणना की अभिव्यक्ति। प्रोग्रामिंग अनुभव से पता चलता है कि कुछ भाषाओं में कुछ समस्याओं को हल करना दूसरों की तुलना में आसान होता है। यह घटना चर्च-ट्यूरिंग थीसिस द्वारा वहन की तुलना में कैलकुली मॉडलिंग संगणना की अभिव्यंजना के अधिक त्रुटिहीन लक्षण वर्णन की मांग करती है। ऐसा करने का विधि यह है कि दो औपचारिकताओं के बीच एन्कोडिंग पर विचार किया जाए और देखें कि कौन से गुण एन्कोडिंग संभावित रूप से संरक्षित कर सकते हैं। जितने अधिक गुणों को संरक्षित किया जा सकता है, एन्कोडिंग का लक्ष्य उतना ही अधिक अभिव्यंजक कहा जाता है। प्रक्रिया गणना के लिए, मनाए गए परिणाम यह हैं कि सिंक्रोनस π-गणना अपने एसिंक्रोनस वेरिएंट की तुलना में अधिक अभिव्यंजक है, उच्च-क्रम π-गणना के समान अभिव्यंजक शक्ति है,<ref>{{Cite journal|last=Sangiorgi|first=Davide|date=1993|editor-last=Gaudel|editor-first=M. -C.|editor2-last=Jouannaud|editor2-first=J. -P.|title=From π-calculus to higher-order π-calculus — and back|journal=TAPSOFT'93: Theory and Practice of Software Development|volume=668|series=Lecture Notes in Computer Science|language=en|publisher=Springer Berlin Heidelberg|pages=151–166|doi=10.1007/3-540-56610-4_62|isbn=9783540475989|doi-access=free}}</ref> किन्तु परिवेश कलन से कम है।{{citation needed|date=December 2011}} | ||
* मॉडल जैविक प्रणालियों (स्टोचैस्टिक π-गणना, बायोएम्बिएंट्स, बीटा बाइंडर्स, बायोपीईपीए, ब्रैन गणना) को मॉडल करने के लिए प्रक्रिया गणना का उपयोग करना। कुछ लोगों का मानना है कि प्रक्रिया-सैद्धांतिक उपकरणों द्वारा प्रदान की जाने वाली [[संरचना]] जीवविज्ञानियों को अपने ज्ञान को अधिक औपचारिक रूप से व्यवस्थित करने में | * मॉडल जैविक प्रणालियों (स्टोचैस्टिक π-गणना, बायोएम्बिएंट्स, बीटा बाइंडर्स, बायोपीईपीए, ब्रैन गणना) को मॉडल करने के लिए प्रक्रिया गणना का उपयोग करना। कुछ लोगों का मानना है कि प्रक्रिया-सैद्धांतिक उपकरणों द्वारा प्रदान की जाने वाली [[संरचना]] जीवविज्ञानियों को अपने ज्ञान को अधिक औपचारिक रूप से व्यवस्थित करने में सहायता कर सकती है। | ||
== सॉफ्टवेयर कार्यान्वयन == | == सॉफ्टवेयर कार्यान्वयन == | ||
| Line 100: | Line 94: | ||
== संगामिति के अन्य मॉडलों से संबंध == | == संगामिति के अन्य मॉडलों से संबंध == | ||
इतिहास मोनॉइड [[मुक्त वस्तु]] है जो सामान्य रूप से व्यक्तिगत संचार प्रक्रियाओं के इतिहास का प्रतिनिधित्व करने में सक्षम है। प्रक्रिया कैलकुस तब सुसंगत फैशन में [[इतिहास मोनोइड]] पर लगाई गई [[औपचारिक भाषा]] है।<ref>{{cite book | first = Antoni | last = Mazurkiewicz | chapter-url = http://www.ipipan.waw.pl/~amaz/papers.htm/trbook.ps | chapter-format = PostScript | chapter = Introduction to Trace Theory | pages = 3–41 | title = निशान की किताब| editor1-first = V. | editor1-last = Diekert | editor2-first = G. | editor2-last = Rozenberg | year = 1995 | publisher = World Scientific | location = Singapore | isbn = 981-02-2058-8 | access-date = 2009-04-29 | archive-date = 2011-06-13 | archive-url = https://web.archive.org/web/20110613105701/http://www.ipipan.waw.pl/~amaz/papers.htm/trbook.ps | url-status = dead }}</ref> यही है, इतिहास मोनोइड केवल समक्रमण के साथ घटनाओं का अनुक्रम रिकॉर्ड कर सकता है, किन्तु अनुमत राज्य संक्रमणों को निर्दिष्ट नहीं करता है। इस प्रकार, प्रक्रिया कलन इतिहास मोनॉइड के लिए है जो मुक्त मोनॉइड | इतिहास मोनॉइड [[मुक्त वस्तु]] है जो सामान्य रूप से व्यक्तिगत संचार प्रक्रियाओं के इतिहास का प्रतिनिधित्व करने में सक्षम है। प्रक्रिया कैलकुस तब सुसंगत फैशन में [[इतिहास मोनोइड]] पर लगाई गई [[औपचारिक भाषा]] है।<ref>{{cite book | first = Antoni | last = Mazurkiewicz | chapter-url = http://www.ipipan.waw.pl/~amaz/papers.htm/trbook.ps | chapter-format = PostScript | chapter = Introduction to Trace Theory | pages = 3–41 | title = निशान की किताब| editor1-first = V. | editor1-last = Diekert | editor2-first = G. | editor2-last = Rozenberg | year = 1995 | publisher = World Scientific | location = Singapore | isbn = 981-02-2058-8 | access-date = 2009-04-29 | archive-date = 2011-06-13 | archive-url = https://web.archive.org/web/20110613105701/http://www.ipipan.waw.pl/~amaz/papers.htm/trbook.ps | url-status = dead }}</ref> यही है, इतिहास मोनोइड केवल समक्रमण के साथ घटनाओं का अनुक्रम रिकॉर्ड कर सकता है, किन्तु अनुमत राज्य संक्रमणों को निर्दिष्ट नहीं करता है। इस प्रकार, प्रक्रिया कलन इतिहास मोनॉइड के लिए है जो मुक्त मोनॉइड (औपचारिक भाषा [[क्लेन स्टार]] द्वारा उत्पन्न [[वर्णमाला (कंप्यूटर विज्ञान)]] के सभी संभावित परिमित-लंबाई के समुच्चय का उपसमुच्चय है) के लिए औपचारिक भाषा है। | ||
संचार के लिए चैनलों का उपयोग प्रक्रिया गणना को [[समवर्ती कंप्यूटिंग]] के अन्य मॉडलों, जैसे पेट्री नेट और | संचार के लिए चैनलों का उपयोग प्रक्रिया गणना को [[समवर्ती कंप्यूटिंग]] के अन्य मॉडलों, जैसे पेट्री नेट और एक्टर मॉडल ([[अभिनेता मॉडल और प्रक्रिया गणना|एक्टर मॉडल और प्रक्रिया गणना]] देखें) से अलग करने वाली विशेषताओं में से है। प्रक्रिया गणना में चैनलों को सम्मिलित करने के लिए मूलभूत प्रेरणाओं में से कुछ बीजगणितीय विधियों को सक्षम करना था, जिससे बीजगणितीय रूप से प्रक्रियाओं के बारे में तर्क करना आसान हो गया। | ||
== यह भी देखें == | == यह भी देखें == | ||
* अनुक्रमिक प्रक्रियाओं का संचार करना | * अनुक्रमिक प्रक्रियाओं का संचार करना | ||
* [[ProVerif]] | * [[ProVerif|प्रोसत्यापन]] | ||
* [[स्टोकेस्टिक जांच]] | * [[स्टोकेस्टिक जांच]] | ||
* [[तामारिन प्रोवर]] | * [[तामारिन प्रोवर]] | ||
* लौकिक प्रक्रिया भाषा | * लौकिक प्रक्रिया भाषा | ||
* π- | * π-गणना | ||
== संदर्भ == | == संदर्भ == | ||
| Line 127: | Line 121: | ||
{{Concurrent computing}} | {{Concurrent computing}} | ||
{{DEFAULTSORT:Process Calculus}} | {{DEFAULTSORT:Process Calculus}} | ||