इंटरेक्शन नेट

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

परिभाषा
इंटरेक्शन नेट ग्राफ़ जैसी संरचना होती है जिसमें एजेंट और किनारे होते हैं। एक प्रकार का एजेंट $$\alpha$$ और समृद्धि के साथ $$\text{ar}(\alpha) = n \ge 0$$ एक प्रमुख बंदरगाह है और $$n$$ सहायक बंदरगाह. किसी भी पोर्ट को अधिकतम एक किनारे से जोड़ा जा सकता है। जो पोर्ट किसी किनारे से नहीं जुड़े होते हैं उन्हें फ्री पोर्ट कहा जाता है। फ्री पोर्ट मिलकर एक इंटरेक्शन नेट का इंटरफ़ेस बनाते हैं। सभी एजेंट प्रकार एक सेट से संबंधित हैं $$\Sigma$$ हस्ताक्षर कहा जाता है.

एक इंटरेक्शन नेट जिसमें केवल किनारे होते हैं उसे वायरिंग कहा जाता है और आमतौर पर इसे इस रूप में दर्शाया जाता है $$\omega$$. एक वृक्ष $$t$$ इसकी जड़ के साथ $$x$$ आगमनात्मक रूप से या तो किनारे के रूप में परिभाषित किया गया है $$x$$, या एक एजेंट के रूप में $$\alpha$$ इसके मुफ़्त प्रिंसिपल पोर्ट के साथ $$x$$ और इसके सहायक बंदरगाह $$x_i$$ अन्य पेड़ों की जड़ों से जुड़ा हुआ $$t_i$$.

ग्राफ़िक रूप से, इंटरेक्शन नेट की आदिम संरचनाओं को निम्नानुसार दर्शाया जा सकता है:

जब दो एजेंट अपने प्रमुख पोर्ट से एक दूसरे से जुड़े होते हैं, तो वे एक सक्रिय जोड़ी बनाते हैं। के लिए सक्रिय जोड़े में कोई भी इंटरैक्शन नियम पेश कर सकता है जो बताता है कि सक्रिय जोड़ी किसी अन्य इंटरैक्शन को कैसे फिर से लिखती है जाल। बिना किसी सक्रिय जोड़े वाले इंटरेक्शन नेट को सामान्य रूप में कहा जाता है। एक हस्ताक्षर $$\Sigma$$ (साथ $$\text{ar}: \Sigma \rightarrow \mathbb{N}$$ इस पर परिभाषित) एजेंटों के लिए परिभाषित इंटरैक्शन नियमों के एक सेट के साथ $$\alpha \in \Sigma$$ मिलकर एक अंतःक्रिया प्रणाली का निर्माण करते हैं।

इंटरेक्शन कैलकुलस
इंटरेक्शन नेट के पाठ्य प्रतिनिधित्व को इंटरेक्शन कैलकुलस कहा जाता है और इसे एक प्रोग्रामिंग भाषा के रूप में देखा जा सकता है।

आगमनात्मक रूप से परिभाषित पेड़ शब्दों के अनुरूप होते हैं $$t ::= \alpha(t_1, \dots, t_n)\ |\ x$$ इंटरेक्शन कैलकुलस में, कहां $$x$$ एक नाम कहा जाता है.

कोई भी इंटरैक्शन नेट $$N$$ पहले से परिभाषित वायरिंग और ट्री प्रिमिटिव का उपयोग करके निम्नानुसार फिर से तैयार किया जा सकता है:

जो इंटरेक्शन कैलकुलस में एक कॉन्फ़िगरेशन से मेल खाता है

$$c \equiv \langle t_1, \dots, t_m \ |\ v_1 = w_1, \dots, v_n = w_n \rangle$$,

कहाँ $$t_i$$, $$v_i$$, और $$w_i$$ मनमानी शर्तें हैं. क्रमबद्ध क्रम $$t_1,...,t_m$$ बाईं ओर को इंटरफ़ेस कहा जाता है, जबकि दाईं ओर समीकरणों का एक अव्यवस्थित मल्टीसेट होता है $$v_i = w_i$$. तारों $$\omega$$ नामों का अनुवाद करता है, और प्रत्येक नाम को कॉन्फ़िगरेशन में ठीक दो बार आना पड़ता है।

बिल्कुल वैसे ही जैसे $$\lambda$$-कैलकुलस, इंटरेक्शन कैलकुलस की धारणाएं हैं$$\alpha$$-परिवर्तन और प्रतिस्थापन स्वाभाविक रूप से कॉन्फ़िगरेशन पर परिभाषित होते हैं। विशेष रूप से, किसी भी नाम की दोनों घटनाओं को a से बदला जा सकता है यदि किसी दिए गए कॉन्फ़िगरेशन में उत्तरार्द्ध नहीं होता है तो नया नाम। तक के विन्यास को समतुल्य माना जाता है $$\alpha$$-रूपांतरण. बदले में, प्रतिस्थापन $$t[x := u]$$ नाम बदलने का परिणाम है $$x$$ एक शब्द में $$t$$ दूसरे शब्द के साथ $$u$$ अगर $$x$$ पद में बिल्कुल एक घटना है $$t$$.

किसी भी इंटरैक्शन नियम को ग्राफ़िक रूप से निम्नानुसार दर्शाया जा सकता है: कहाँ $$\alpha, \beta \in \Sigma$$, और इंटरेक्शन नेट $$N$$ दाहिनी ओर को इंटरेक्शन कैलकुलस में अनुवाद करने के लिए वायरिंग और ट्री प्रिमिटिव का उपयोग करके फिर से तैयार किया गया है $$\alpha[v_1,\dots, v_m] \bowtie \beta[w_1,\dots, w_n]$$ लाफोंट के नोटेशन का उपयोग करना।

इंटरेक्शन कैलकुलस ग्राफ़ से देखने की तुलना में अधिक विवरण में कॉन्फ़िगरेशन पर कमी को परिभाषित करता है इंटरेक्शन नेट पर परिभाषित पुनर्लेखन। अर्थात्, यदि $$\alpha[v_1,\dots, v_m] \bowtie \beta[w_1,\dots,w_n]$$, निम्नलिखित कमी:

$$\langle \vec t\ |\ \alpha(t_1,\dots,t_m) = \beta(u_1,\dots,u_n), \Delta\rangle \rightarrow \langle \vec t\ |\ t_1 = v_1,\dots, t_m = v_m, u_1 = w_1,\dots, u_n = w_n, \Delta\rangle$$ अंतःक्रिया कहलाती है. जब समीकरणों में से एक का रूप होता है $$x = u$$, अप्रत्यक्ष परिणाम लागू किया जा सकता है नाम की अन्य घटना के स्थान पर $$x$$ किसी अवधि में $$t$$:

$$\langle \dots t \dots \ |\ x = u, \Delta\rangle \rightarrow \langle \dots t[x := u] \dots \ |\ \Delta\rangle$$ या $$\langle \vec t\ |\ x = u, t = w, \Delta\rangle \rightarrow \langle \vec t\ |\ t[x := u] = w, \Delta \rangle$$.

एक समीकरण $$x = t$$ यदि गतिरोध कहा जाता है $$x$$ अवधि में घटित होता है $$t$$. आम तौर पर केवल गतिरोध-मुक्त इंटरेक्शन नेट पर ही विचार किया जाता है। साथ में, अंतःक्रिया और अप्रत्यक्षता कॉन्फ़िगरेशन पर कमी संबंध को परिभाषित करते हैं। तथ्य यह है कि कॉन्फ़िगरेशन $$c$$ अपने सामान्य स्वरूप में कम हो जाता है $$c'$$ कोई समीकरण न बचे होने को इस रूप में दर्शाया जाता है $$c \downarrow c'$$.

गुण
इंटरेक्शन नेट निम्नलिखित गुणों से लाभान्वित होते हैं:


 * स्थानीयता (केवल सक्रिय जोड़े को फिर से लिखा जा सकता है);
 * रैखिकता (प्रत्येक इंटरैक्शन नियम को निरंतर समय में लागू किया जा सकता है);
 * मजबूत संगम को वन-स्टेप डायमंड प्रॉपर्टी (यदि) के रूप में भी जाना जाता है $$c \rightarrow c_1$$ और $$c \rightarrow c_2$$, तब $$c_1 \rightarrow c'$$ और $$c_2 \rightarrow c'$$ कुछ के लिए $$c'$$).

ये गुण मिलकर बड़े पैमाने पर समानता की अनुमति देते हैं।

इंटरेक्शन कॉम्बिनेटर
सबसे सरल इंटरेक्शन सिस्टम में से एक जो किसी अन्य इंटरेक्शन सिस्टम का अनुकरण कर सकता है वह इंटरेक्शन कॉम्बिनेटर है। इसके हस्ताक्षर हैं $$\Sigma = \{\epsilon, \delta, \gamma\}$$ साथ $$\text{ar}(\epsilon) = 0$$ और $$\text{ar}(\delta) = \text{ar}(\gamma) = 2$$. इन एजेंटों के लिए इंटरैक्शन नियम हैं:


 * $$\epsilon \bowtie \alpha[\epsilon,\dots, \epsilon]$$ मिटाना कहते हैं;
 * $$\delta[\alpha(x_1,\dots, x_n), \alpha(y_1,\dots, y_n)] \bowtie \alpha[\delta(x_1, y_1),\dots, \delta(x_n, y_n)]$$ दोहराव कहा जाता है;
 * $$\delta[x, y] \bowtie \delta[x, y]$$ और $$\gamma[x, y] \bowtie \gamma[y, x]$$ विनाश कहा जाता है.

ग्राफ़िक रूप से, मिटाने और दोहराव के नियमों को निम्नानुसार दर्शाया जा सकता है:

एक गैर-समाप्ति अंतःक्रिया नेट के उदाहरण के साथ जो अपने आप में सिमट जाता है। इंटरेक्शन कैलकुलस में संबंधित कॉन्फ़िगरेशन से शुरू होने वाला इसका अनंत कमी क्रम इस प्रकार है:

$$ \begin{align} &\langle \varnothing\ |\ \delta(\epsilon, x) = \gamma(x, \epsilon)\rangle \rightarrow \\ &\langle \varnothing\ |\ \epsilon = \gamma(x_1, x_2),\ x = \gamma(y_1, y_2),\ x = \delta(x_1, y_1),\ \epsilon = \delta(x_2, y_2)\rangle \rightarrow^* \\ &\langle \varnothing\ |\ x_1 = \epsilon,\ x_2 = \epsilon,\ x = \gamma(y_1, y_2),\ x = \delta(x_1, y_1),\ x_2 = \epsilon,\ y_2 = \epsilon\rangle \rightarrow^* \\ &\langle \varnothing\ |\ \delta(\epsilon, x) = \gamma(x, \epsilon)\rangle \rightarrow \dots \end{align} $$

गैर-नियतात्मक विस्तार
इंटरेक्शन नेट अनिवार्य रूप से नियतात्मक हैं और गैर-नियतात्मक संगणनाओं को सीधे मॉडल नहीं कर सकते हैं। गैर-नियतात्मक विकल्प को व्यक्त करने के लिए, इंटरैक्शन नेट को विस्तारित करने की आवश्यकता है। वास्तव में, केवल एक एजेंट का परिचय देना ही पर्याप्त है $$\text{amb}$$ दो प्रमुख पोर्ट और निम्नलिखित इंटरैक्शन नियमों के साथ:

यह विशिष्ट एजेंट अस्पष्ट विकल्प का प्रतिनिधित्व करता है और इसका उपयोग किसी भी अन्य एजेंट को प्रमुख पोर्ट की मनमानी संख्या के साथ अनुकरण करने के लिए किया जा सकता है। उदाहरण के लिए, यह a को परिभाषित करने की अनुमति देता है $$\text{ParallelOr}$$ बूलियन ऑपरेशन जो अन्य तर्कों में होने वाली गणना से स्वतंत्र होकर, यदि इसका कोई भी तर्क सत्य है, तो सत्य लौटाता है।

यह भी देखें

 * इंटरेक्शन की ज्यामिति
 * ग्राफ पुनर्लेखन
 * लैम्ब्डा कैलकुलस
 * रेखीय ग्राफ व्याकरण
 * रेखीय तर्क
 * प्रमाण जाल