حساب التفاضل والتكامل π

في علم الحاسوب النظري ، يُعد حساب باي (أو حساب باي ) حسابًا للعمليات . يسمح حساب باي بنقل أسماء القنوات عبر القنوات نفسها، ومن هذا المنطلق، فهو قادر على وصف العمليات الحسابية المتزامنة التي قد يتغير تكوين شبكتها أثناء الحساب.

تتميز حسابات باي بقلة عدد مصطلحاتها، وهي لغة صغيرة لكنها معبرة (انظر قسم  بناء الجملة ). يمكن ترميز البرامج الوظيفية باستخدام حسابات باي ، ويؤكد هذا الترميز على طبيعة الحوار في الحوسبة، ويربطها بدلالات الألعاب . وقد حققت امتدادات حسابات باي ، مثل حسابات spi وحسابات باي التطبيقية، نجاحًا في الاستدلال حول البروتوكولات التشفيرية . إلى جانب استخدامها الأصلي في وصف الأنظمة المتزامنة، استُخدمت حسابات باي أيضًا للاستدلال في العمليات التجارية ، [ 1 ] وعلم الأحياء الجزيئي ، [ 2 ] والوكلاء المستقلين في الذكاء الاصطناعي .

تعريف غير رسمي

ينتمي حساب باي إلى عائلة حسابات العمليات ، وهي صيغ رياضية لوصف وتحليل خصائص الحوسبة المتزامنة. في الواقع، حساب باي ، مثل حساب لامدا ، بسيط للغاية لدرجة أنه لا يحتوي على عناصر أساسية مثل الأرقام، والقيم المنطقية، وهياكل البيانات، والمتغيرات، والدوال، أو حتى عبارات التحكم في التدفق المعتادة (مثل if-then-else, while).

بنى العمليات

يُعد مفهوم الاسم جوهرياً في حساب باي . وتكمن بساطة هذا الحساب في الدور المزدوج الذي تلعبه الأسماء كقنوات اتصال ومتغيرات .

تتضمن بنى العمليات المتاحة في حساب التفاضل والتكامل ما يلي [ 3 ] (يرد تعريف دقيق في القسم التالي):

  • التزامن ، مكتوبP|سؤال{\displaystyle P\mid Q}، أينP{\displaystyle P}وسؤال{\displaystyle Q}هما عمليتان أو خيطان يتم تنفيذهما في وقت واحد.
  • التواصل ، حيث
    • بادئة الإدخالج(x).P{\displaystyle c\left(x\right).P}هي عملية تنتظر رسالة تم إرسالها عبر قناة اتصال تسمىج{\displaystyle c}قبل المتابعة كـP{\displaystyle P}، وربط الاسم المستلم بالاسم x . عادةً ما يمثل هذا إما عملية تتوقع اتصالاً من الشبكة أو تسمية cقابلة للاستخدام مرة واحدة فقط بواسطة goto cعملية ما.
    • بادئة الإخراجج¯y.P{\displaystyle {\overline {c}}\langle y\rangle .P}يصف ذلك الاسمy{\displaystyle y}يتم بثها على القناةج{\displaystyle c}قبل المتابعة كـP{\displaystyle P}عادةً ، يمثل هذا إما إرسال رسالة على الشبكة أو goto cعملية ما.
  • النسخ ، مكتوب!P{\displaystyle !\,P} ، والتي يمكن اعتبارها عملية يمكنها دائمًا إنشاء نسخة جديدة منP{\displaystyle P}عادةً ما يقوم هذا النموذج إما بنمذجة خدمة الشبكة أو علامة cتنتظر أي عدد من goto cالعمليات.
  • إنشاء اسم جديد ، مكتوب(νx)P{\displaystyle \left(\nu x\right)P}، والتي يمكن اعتبارها عملية تخصيص ثابت جديد x داخلP{\displaystyle P}تُعرَّف ثوابت حساب التفاضل والتكامل π بأسمائها فقط، وهي دائمًا قنوات اتصال. ويُطلق على إنشاء اسم جديد في عملية ما اسم التقييد .
  • العملية الصفرية، مكتوبة0{\displaystyle 0}، هي عملية اكتمل تنفيذها وتوقفت.

على الرغم من أن بساطة حساب باي -calculus) تمنعنا من كتابة البرامج بالمعنى المعتاد، إلا أنه من السهل توسيع هذا الحساب. فعلى وجه الخصوص، يسهل تعريف كل من هياكل التحكم مثل الاستدعاء الذاتي، والحلقات، والتركيب التسلسلي، وأنواع البيانات مثل الدوال من الدرجة الأولى، وقيم الصواب ، والقوائم، والأعداد الصحيحة. علاوة على ذلك، تم اقتراح امتدادات لحساب باي تأخذ في الاعتبار التشفير بالمفتاح العام أو التشفير بالتوزيع . وقد طُبِّق حساب باي على يد عبادي وفورنيه .وضع هذه الامتدادات المختلفة على أساس رسمي من خلال توسيع حساب التفاضل والتكامل π بأنواع بيانات عشوائية.

مثال صغير

فيما يلي مثال بسيط لعملية تتكون من ثلاثة مكونات متوازية. اسم القناة x معروف فقط من خلال المكونين الأولين.

(νx)(x¯z.0|x(y).y¯x.x(y).0)|z(v).v¯v.0{\displaystyle {\begin{aligned}(\nu x)&\;(\;{\overline {x}}\langle z\rangle .\;0\\&\;|\;x(y).\;{\overline {y}}\langle x\rangle .\;x(y).\;0\;)\\&\;|\;z(v).\;{\overline {v}}\langle v\rangle .0\end{aligned}}}

يستطيع المكونان الأولان التواصل عبر القناة x ، ويرتبط الاسم y بالاسم z . وبالتالي، فإن الخطوة التالية في العملية هي

(νx)(0|z¯x.x(y).0)|z(v).v¯v.0{\displaystyle {\begin{aligned}(\nu x)&\;(\;0\\&\;|\;{\overline {z}}\langle x\rangle .\;x(y).\;0\;)\\&\;|\;z(v).\;{\overline {v}}\langle v\rangle .\;0\end{aligned}}}

لاحظ أن قيمة y المتبقية لا تتأثر لأنها مُعرَّفة في نطاق داخلي. يمكن للمكونين المتوازيين الثاني والثالث الآن التواصل عبر اسم القناة z ، ويصبح الاسم v مرتبطًا بـ x . الخطوة التالية في العملية هي الآن

(νx)(0|x(y).0|x¯x.0){\displaystyle {\begin{aligned}(\nu x)&\;(\;0\\&\;|\;x(y).\;0\\&\;|\;{\overline {x}}\langle x\rangle .\;0\;)\end{aligned}}}

لاحظ أنه بما أن الاسم المحلي x قد تم إخراجه، فإن نطاق x يتوسع ليشمل المكون الثالث أيضًا. أخيرًا، يمكن استخدام القناة x لإرسال الاسم x . بعد ذلك، تتوقف جميع العمليات المتزامنة.

(νx)(0|0|0){\displaystyle {\begin{aligned}(\nu x)&\;(\;0\\&\;|\;0\\&\;|\;0\;)\end{aligned}}}

التعريف الرسمي

بناء الجملة

ليكن Χ مجموعة من الكائنات تسمى أسماء . يتم بناء الصيغة المجردة لحساب π من قواعد BNF التالية (حيث x و y هما أي اسمين من Χ): [ 4 ]

P،سؤال::=x(y).Pالاستقبال على القناة x، اربط النتيجة بـ yثم قم بتشغيل P|x¯y.Pأرسل القيمة y قناة خارجية xثم قم بتشغيل P|P|سؤاليجري P و سؤال معًا|(νx)Pأنشئ قناة جديدة x واركض P|!Pتُنشئ نسخًا متكررة من P|0إنهاء العملية{\displaystyle {\begin{aligned}P,Q::=&\;x(y).P\,\,\,\,\,&{\text{Receive on channel }}x{\text{, bind the result to }}y{\text{, then run }}P\\&\;|\;{\overline {x}}\langle y\rangle .P\,\,\,\,\,&{\text{Send the value }}y{\text{ over channel }}x{\text{, then run }}P\\&\;|\;P|Q\,\,\,\,\,\,\,\,\,&{\text{Run }}P{\text{ and }}Q{\text{ simultaneously}}\\&\;|\;(\nu x)P\,\,\,&{\text{Create a new channel }}x{\text{ and run }}P\\&\;|\;!P\,\,\,&{\text{Repeatedly spawn copies of }}P\\&\;|\;0&{\text{Terminate the process}}\end{aligned}}}

في التركيب النحوي الملموس أدناه، ترتبط البادئات بشكل أكثر إحكامًا من التركيب المتوازي (|)، ويتم استخدام الأقواس لإزالة الغموض.

تُقيَّد الأسماء ببنية التقييد وبادئة الإدخال. رسميًا، تُعرَّف مجموعة الأسماء الحرة لعملية ما في حساب التفاضل والتكامل π استقرائيًا بالجدول أدناه. أما مجموعة الأسماء المقيدة لعملية ما، فتُعرَّف بأنها أسماء تلك العملية التي لا تندرج ضمن مجموعة الأسماء الحرة.

بناءأسماء حرة
x(y).P{\displaystyle x(y).P}x ؛ أسماء حرة لـ P باستثناء y
x¯y.P{\displaystyle {\overline {x}}\langle y\rangle .P}x ؛ y ؛ جميع الأسماء الحرة لـ P
P|سؤال{\displaystyle P|Q}جميع الأسماء المجانية لـ P و Q
(νx)P{\displaystyle (\nu x)P}أسماء حرة لـ P باستثناء x
!P{\displaystyle !P}جميع الأسماء المجانية لـ P
0{\displaystyle 0}لا أحد

التوافق الهيكلي

يُعد مفهوم التطابق البنيوي أساسيًا لكلٍ من دلالات الاختزال ودلالات الانتقال الموسومة . وتكون عمليتان متطابقتين بنيويًا إذا كانتا متطابقتين تمامًا من حيث البنية. وعلى وجه الخصوص، فإن التركيب المتوازي تبادلي وتجميعي.

وبشكل أدق، يُعرَّف التوافق الهيكلي بأنه أقل علاقة تكافؤ تحافظ عليها بنى العملية وتفي بما يلي:

التحويل ألفا :

  • Pسؤال{\displaystyle P\equiv Q}لوسؤال{\displaystyle Q}يمكن الحصول عليها منP{\displaystyle P}عن طريق إعادة تسمية اسم واحد أو أكثر من الأسماء المرتبطة فيP{\displaystyle P}.

بديهيات التركيب المتوازي :

  • P|سؤالسؤال|P{\displaystyle P|Q\equiv Q|P}
  • (P|سؤال)|RP|(سؤال|R){\displaystyle (P|Q)|R\equiv P|(Q|R)}
  • P|0P{\displaystyle P|0\equiv P}

بديهيات التقييد :

  • (νx)(νy)P(νy)(νx)P{\displaystyle (\nu x)(\nu y)P\equiv (\nu y)(\nu x)P}
  • (νx)00{\displaystyle (\nu x)0\equiv 0}

مبدأ التكرار :

  • !PP|!P{\displaystyle !P\equiv P|!P}

البديهية المتعلقة بالتقييد والتوازي :

  • (νx)(P|سؤال)(νx)P|سؤال{\displaystyle (\nu x)(P|Q)\equiv (\nu x)P|Q}إذا لم يكن x اسمًا حرًا لـسؤال{\displaystyle Q}.

تُعرف هذه البديهية الأخيرة باسم بديهية "توسيع النطاق". وتُعد هذه البديهية أساسية، لأنها تصف كيف يمكن توسيع نطاق اسم مرتبط x بواسطة عملية إخراج، مما يؤدي إلى توسيع نطاق x . في الحالات التي يكون فيها x اسمًا حرًاسؤال{\displaystyle Q}، يمكن استخدام التحويل ألفا للسماح باستمرار عملية التمديد.

دلالات الاختزال

نكتبPP{\displaystyle P\rightarrow P'}لوP{\displaystyle P}يمكنه تنفيذ خطوة حسابية، وبعد ذلك يصبح الآنP{\displaystyle P'}علاقة التخفيض هذه{\displaystyle \rightarrow }يُعرَّف بأنه العلاقة الأقل إغلاقًا في ظل مجموعة من قواعد الاختزال.

تتمثل قاعدة الاختزال الرئيسية التي تُجسد قدرة العمليات على التواصل عبر القنوات فيما يلي:

  • x¯z.P|x(y).سؤالP|سؤال[z/y]{\displaystyle {\overline {x}}\langle z\rangle .P|x(y).Q\rightarrow P|Q[z/y]}
أينسؤال[z/y]{\displaystyle Q[z/y]}يشير إلى العمليةسؤال{\displaystyle Q}الاسم الحرz{\displaystyle z}تم استبدالها بالظهورات الحرة لـy{\displaystyle y}إذا حدث حدوث حر لـy{\displaystyle y}يحدث في مكان حيثz{\displaystyle z}لن يكون مجانيًا، وقد يتطلب الأمر تحويلًا ألفا.

هناك ثلاث قواعد إضافية:

  • لوPسؤال{\displaystyle P\rightarrow Q}ثم أيضًاP|Rسؤال|R{\displaystyle P|R\rightarrow Q|R}.
تنص هذه القاعدة على أن التركيب المتوازي لا يعيق الحساب.
  • لوPسؤال{\displaystyle P\rightarrow Q}ثم أيضًا(νx)P(νx)سؤال{\displaystyle (\nu x)P\rightarrow (\nu x)Q}.
تضمن هذه القاعدة إمكانية إجراء العمليات الحسابية في ظل وجود قيد.
  • لوPP{\displaystyle P\equiv P'}وPسؤال{\displaystyle P'\rightarrow Q'}وسؤالسؤال{\displaystyle Q'\equiv Q}ثم أيضًاPسؤال{\displaystyle P\rightarrow Q}.

وتنص القاعدة الأخيرة على أن العمليات المتطابقة هيكلياً لها نفس الاختزالات.

إعادة النظر في المثال

أعد النظر في العملية

(νx)(x¯z.0|x(y).y¯x.x(y).0)|z(v).v¯v.0{\displaystyle (\nu x)({\overline {x}}\langle z\rangle .0|x(y).{\overline {y}}\langle x\rangle .x(y).0)|z(v).{\overline {v}}\langle v\rangle .0}

بتطبيق تعريف دلالات الاختزال، نحصل على الاختزال

(νx)(x¯z.0|x(y).y¯x.x(y).0)|z(v).v¯v.0(νx)(0|z¯x.x(y).0)|z(v).v¯v.0{\displaystyle (\nu x)({\overline {x}}\langle z\rangle .0|x(y).{\overline {y}}\langle x\rangle .x(y).0)|z(v).{\overline {v}}\langle v\rangle .0\rightarrow (\nu x)(0|{\overline {z}}\langle x\rangle .x(y).0)|z(v).{\overline {v}}\langle v\rangle .0}

لاحظ كيف أنه بتطبيق بديهية الاستبدال بالاختزال، فإن التكرارات الحرة لـy{\displaystyle y}تُصنف الآن على أنهاz{\displaystyle z}.

ثم نحصل على التخفيض

(νx)(0|z¯x.x(y).0)|z(v).v¯v.0(νx)(0|x(y).0|x¯x.0){\displaystyle (\nu x)(0|{\overline {z}}\langle x\rangle .x(y).0)|z(v).{\overline {v}}\langle v\rangle .0\rightarrow (\nu x)(0|x(y).0|{\overline {x}}\langle x\rangle .0)}

لاحظ أنه بما أن الاسم المحلي x قد تم إخراجه، فإن نطاق x قد امتد ليشمل المكون الثالث أيضًا. وقد تم توثيق ذلك باستخدام بديهية توسيع النطاق.

بعد ذلك، باستخدام بديهية الاستبدال بالاختزال، نحصل على

(νx)(0|0|0){\displaystyle (\nu x)(0|0|0)}

وأخيرًا، باستخدام بديهيات التركيب المتوازي والتقييد، نحصل على

0{\displaystyle 0}

الدلالات المصنفة

بدلاً من ذلك، يمكن إعطاء حساب باي دلالات انتقال مُصنَّفة (كما هو الحال مع حساب الأنظمة المتصلة ). في هذه الدلالات، يكون الانتقال من حالةP{\displaystyle P}إلى ولاية أخرىP{\displaystyle P'}بعد إجراء ماα{\displaystyle \alpha }يُشار إليه على النحو التالي:

  • PαP{\displaystyle P\,{\xrightarrow {\overset {}{\alpha }}}P'}

الولاياتP{\displaystyle P}وP{\displaystyle P'}تمثل العمليات وα{\displaystyle \alpha }إما أن يكون إجراء إدخالأ(x){\displaystyle a(x)}، إجراء إخراجأ¯x{\displaystyle {\overline {a}}\langle x\rangle }أو فعل صامت τ . [ 5 ]

تتمثل إحدى النتائج القياسية المتعلقة بالدلالات المصنفة في أنها تتفق مع دلالات الاختزال حتى التطابق البنيوي، بمعنى أن PP{\displaystyle P\rightarrow P'}إذا وفقط إذاPτP{\displaystyle P\,\xrightarrow {\overset {}{\tau }} \equiv P'}[ 6 ]

الإضافات والأنواع المختلفة

الصيغة المذكورة أعلاه هي صيغة مختصرة. ومع ذلك، يمكن تعديل الصيغة بطرق مختلفة.

عامل اختيار غير حتميP+سؤال{\displaystyle P+Q}يمكن إضافتها إلى الصيغة.

اختبار لتطابق الأسماء[x=y]P{\displaystyle [x=y]P}يمكن إضافتها إلى الصيغة. يمكن لعامل المطابقة هذا أن يعمل على النحو التالي:P{\displaystyle P}إذا وفقط إذا كان x وy{\displaystyle y}لها نفس الاسم. وبالمثل، يمكن إضافة عامل عدم تطابق للتمييز بين الأسماء . غالبًا ما تستخدم البرامج العملية التي يمكنها تمرير الأسماء (عناوين URL أو مؤشرات) هذه الوظيفة: لنمذجة هذه الوظيفة مباشرةً داخل الحساب، غالبًا ما تكون هذه الامتدادات وما شابهها مفيدة.

لا يسمح حساب باي غير المتزامن [ 7 ] [ 8 ] إلا بالمخرجات التي لا تحتوي على استمرار، أي ذرات الإخراج من الشكلx¯y{\displaystyle {\overline {x}}\langle y\rangle }مما ينتج عنه حساب تفاضلي أصغر. مع ذلك، يمكن تمثيل أي عملية في الحساب التفاضلي الأصلي بواسطة حساب π غير المتزامن الأصغر باستخدام قناة إضافية لمحاكاة الإقرار الصريح من العملية المستقبلة. بما أن المخرج الخالي من الاستمرارية يمكنه نمذجة رسالة قيد النقل، فإن هذا الجزء يوضح أن حساب π الأصلي ، الذي يستند بديهيًا إلى الاتصال المتزامن، يحتوي على نموذج اتصال غير متزامن معبر ضمن تركيبه. مع ذلك، لا يمكن التعبير عن عامل الاختيار غير الحتمي المحدد أعلاه بهذه الطريقة، حيث سيتم تحويل الاختيار غير المحمي إلى اختيار محمي؛ وقد استُخدمت هذه الحقيقة لإثبات أن الحساب التفاضلي غير المتزامن أقل تعبيرًا من الحساب المتزامن (مع عامل الاختيار). [ 9 ]

يسمح حساب التفاضل والتكامل متعدد الحدود π بنقل أكثر من اسم واحد في إجراء واحد:x¯z1،...،zن.P{\displaystyle {\overline {x}}\langle z_{1},...,z_{n}\rangle .P}(مخرجات متعددة الشركاء) وx(z1،...،zن).P{\displaystyle x(z_{1},...,z_{n}).P}(مدخل متعدد الحدود) . يمكن ترميز هذا الامتداد متعدد الحدود، المفيد خصوصًا عند دراسة أنواع عمليات تمرير الأسماء، في حساب الموناد عن طريق تمرير اسم قناة خاصة تُمرر من خلالها الوسائط المتعددة بالتتابع. يُحدد الترميز بشكل تكراري بواسطة البنود.

x¯y1،،yن.P{\displaystyle {\overline {x}}\langle y_{1},\cdots ,y_{n}\rangle .P}يتم ترميزها على النحو التالي(νw)x¯w.w¯y1..w¯yن.[P]{\displaystyle (\nu w){\overline {x}}\langle w\rangle .{\overline {w}}\langle y_{1}\rangle .\cdots .{\overline {w}}\langle y_{n}\rangle .[P]}

x(y1،،yن).P{\displaystyle x(y_{1},\cdots ,y_{n}).P}يتم ترميزها على النحو التاليx(w).w(y1)..w(yن).[P]{\displaystyle x(w).w(y_{1}).\cdots .w(y_{n}).[P]}

تبقى جميع بنيات العملية الأخرى دون تغيير بسبب عملية الترميز.

في ما سبق،[P]{\displaystyle [P]}يشير إلى ترميز جميع البادئات في الاستمرارP{\displaystyle P}بنفس الطريقة.

القدرة الكاملة للتكرار!P{\displaystyle !P}ليس ذلك ضرورياً. في كثير من الأحيان، لا يُؤخذ في الاعتبار سوى المدخلات المكررة.!x(y).P{\displaystyle !x(y).P}، والتي تنص بديهية التطابق الهيكلي الخاصة بها على ما يلي:!x(y).Px(y).P|!x(y).P{\displaystyle !x(y).P\equiv x(y).P|!x(y).P}.

عملية إدخال متكررة مثل!x(y).P{\displaystyle !x(y).P}يمكن فهمها على أنها خوادم تنتظر استدعاء القناة x من قبل العملاء. يؤدي استدعاء الخادم إلى إنشاء نسخة جديدة من العملية.P[أ/y]{\displaystyle P[a/y]}، حيث يمثل a الاسم الذي يمرره العميل إلى الخادم أثناء استدعاء الأخير.

يمكن تعريف حساب باي من الرتبة العليا حيث لا يتم إرسال الأسماء فحسب، بل يتم إرسال العمليات أيضًا عبر القنوات. قاعدة اختزال المفاتيح لحالة الرتبة العليا هي

x¯R.P|x(Y).سؤالP|سؤال[R/Y]{\displaystyle {\overline {x}}\langle R\rangle .P|x(Y).Q\rightarrow P|Q[R/Y]}

هنا،Y{\displaystyle Y}يشير إلى متغير عملية يمكن تهيئته بواسطة مصطلح عملية. وقد أثبت سانجيورجي أن القدرة على تمرير العمليات لا تزيد من قدرة حساب التفاضل والتكامل π على التعبير : إذ يمكن محاكاة تمرير عملية P بمجرد تمرير اسم يشير إلى P بدلاً من ذلك.

ملكيات

اكتمال تورينج

يُعدّ حساب باي نموذجًا عالميًا للحساب . وقد لاحظ ميلنر ذلك لأول مرة في بحثه "الدوال كعمليات" [ 10 ] ، حيث قدّم فيه ترميزين لحساب لامدا ضمن حساب باي . يحاكي أحد الترميزين استراتيجية التقييم الفوري (الاستدعاء بالقيمة) ، بينما يحاكي الآخر استراتيجية التقييم بالترتيب العادي (الاستدعاء بالاسم). في كليهما، تكمن الفكرة الأساسية في نمذجة ارتباطات البيئة - على سبيل المثال، " x مرتبط بالمصطلح" .م{\textstyle M}"– كوكلاء نسخ يستجيبون لطلبات روابطهم عن طريق إرسال اتصال بالمصطلحم{\displaystyle M}.

تتمثل خصائص حساب باي التي تجعل هذه الترميزات ممكنة في تمرير الأسماء والتكرار (أو، بشكل مكافئ، العوامل المعرفة بشكل تكراري). في غياب التكرار/التكرار، يتوقف حساب باي عن كونه كاملاً تورينج. ويتضح ذلك من حقيقة أن تكافؤ المحاكاة الثنائية يصبح قابلاً للتقرير بالنسبة لحساب باي الخالي من التكرار، وحتى بالنسبة لحساب باي ذي التحكم المحدود حيث يكون عدد المكونات المتوازية في أي عملية محدودًا بثابت. [ 11 ]

المحاكاة في حساب التفاضل والتكامل π

أما بالنسبة لحسابات العمليات، فإن حساب باي يسمح بتعريف تكافؤ المحاكاة الثنائية. في حساب باي ، يمكن أن يستند تعريف تكافؤ المحاكاة الثنائية (المعروف أيضًا بالتشابه الثنائي) إما إلى دلالات الاختزال أو إلى دلالات الانتقال المسمى.

توجد (على الأقل) ثلاث طرق مختلفة لتعريف التكافؤ الثنائي المُصنَّف في حساب باي : التكافؤ الثنائي المبكر، والتكافؤ الثنائي المتأخر، والتكافؤ الثنائي المفتوح. وينبع هذا من كون حساب باي حسابًا يعتمد على تمرير القيم.

فيما تبقى من هذا القسم، نتركص{\displaystyle p}وq{\displaystyle q}تشير إلى العمليات وR{\displaystyle R}تشير إلى العلاقات الثنائية على العمليات.

التماثل الثنائي المبكر والمتأخر

وقد صاغ كل من ميلنر وبارو ووالكر مفهومي التماثل المبكر والمتأخر في ورقتهم البحثية الأصلية حول حساب التفاضل والتكامل π . [ 12 ]

علاقة ثنائيةR{\displaystyle R}تُعتبر عملية التماثل الثنائي المبكر بين العمليات إذا كان لكل زوج من العمليات(ص،q)R{\displaystyle (p,q)\in R}،

  • حينماصأ(x)ص{\displaystyle p\,{\xrightarrow {a(x)}}\,p'}ثم لكل اسمy{\displaystyle y}يوجد بعضq{\displaystyle q'}بحيثqأ(x)q{\displaystyle q\,{\xrightarrow {a(x)}}\,q'}و(ص[y/x]،q[y/x])R{\displaystyle (p'[y/x],q'[y/x])\in R}؛
  • لأي إجراء غير متعلق بالإدخالα{\displaystyle \alpha }، لوصαص{\displaystyle {p{\xrightarrow {\overset {}{\alpha }}}p'}}ثم يوجد شيء ماq{\displaystyle q'}بحيثqαq{\displaystyle q{\xrightarrow {\overset {}{\alpha }}}q'}و(ص،q)R{\displaystyle (p',q')\in R}؛
  • ومتطلبات متناظرة معص{\displaystyle p}وq{\displaystyle q}تم التبديل.

العملياتص{\displaystyle p}وq{\displaystyle q}يقال إنها ثنائية التشابه المبكرة، مكتوبةصهـq{\displaystyle p\sim _{e}q}إذا كان الزوج(ص،q)R{\displaystyle (p,q)\in R}لبعض عمليات المحاكاة الثنائية المبكرةR{\displaystyle R}.

في التماثل الثنائي المتأخر، يجب أن يكون تطابق الانتقال مستقلاً عن الاسم الذي يتم نقله. علاقة ثنائيةR{\displaystyle R}تُعتبر عملية التماثل الثنائي المتأخرة على العمليات إذا كان لكل زوج من العمليات(ص،q)R{\displaystyle (p,q)\in R}،

  • حينماصأ(x)ص{\displaystyle p{\xrightarrow {a(x)}}p'}ثم بالنسبة للبعضq{\displaystyle q'}وهذا يعني أنqأ(x)q{\displaystyle q{\xrightarrow {a(x)}}q'}و(ص[y/x]،q[y/x])R{\displaystyle (p'[y/x],q'[y/x])\in R}لكل اسم ص ؛
  • لأي إجراء غير متعلق بالإدخالα{\displaystyle \alpha }، لوصαص{\displaystyle p{\xrightarrow {\overset {}{\alpha }}}p'}وهذا يعني وجود شيء ماq{\displaystyle q'}بحيثqαq{\displaystyle q{\xrightarrow {\overset {}{\alpha }}}q'}و(ص،q)R{\displaystyle (p',q')\in R}؛
  • ومتطلبات متناظرة معص{\displaystyle p}وq{\displaystyle q}تم التبديل.

العملياتص{\displaystyle p}وq{\displaystyle q}يقال إنها ثنائية متماثلة متأخرة، مكتوبةصلq{\displaystyle p\sim _{l}q}إذا كان الزوج(ص،q)R{\displaystyle (p,q)\in R}لبعض المحاكاة الثنائية المتأخرةR{\displaystyle R}.

كلاهماهـ{\displaystyle \sim _{e}}ول{\displaystyle \sim _{l}}تعاني هذه العمليات من مشكلة أنها ليست علاقات تطابق بمعنى أنها لا تُحفظ بواسطة جميع بنيات العمليات. وبشكل أدق، توجد عملياتص{\displaystyle p}وq{\displaystyle q}بحيثصهـq{\displaystyle p\sim _{e}q}لكنأ(x).صهـأ(x).q{\displaystyle a(x).p\not \sim _{e}a(x).q}يمكن معالجة هذه المشكلة من خلال النظر في علاقات التطابق القصوى المضمنة فيهـ{\displaystyle \sim _{e}}ول{\displaystyle \sim _{l}}، والمعروفة باسم التطابق المبكر والتطابق المتأخر ، على التوالي.

التماثل المفتوح

لحسن الحظ، هناك تعريف ثالث ممكن يتجنب هذه المشكلة، ألا وهي مشكلة التماثل الثنائي المفتوح ، وذلك بفضل سانجيورجي. [ 13 ]

علاقة ثنائيةR{\displaystyle R}تُعتبر العمليات ثنائية التماثل مفتوحة إذا كان لكل زوج من العناصر(ص،q)R{\displaystyle (p,q)\in R}ولكل استبدال اسمσ{\displaystyle \sigma }وكل فعلα{\displaystyle \alpha }، حينماصσαص{\displaystyle p\sigma {\xrightarrow {\overset {}{\alpha }}}p'}ثم يوجد شيء ماq{\displaystyle q'}بحيثqσαq{\displaystyle q\sigma {\xrightarrow {\overset {}{\alpha }}}q'}و(ص،q)R{\displaystyle (p',q')\in R}.

العملياتص{\displaystyle p}وq{\displaystyle q}يقال إنها ثنائية التشابه مفتوحة، مكتوبةصoq{\displaystyle p\sim _{o}q}إذا كان الزوج(ص،q)R{\displaystyle (p,q)\in R}لبعض المحاكاة الثنائية المفتوحةR{\displaystyle R}.

التماثل الثنائي المبكر والمتأخر والمفتوح متميز

التماثل الثنائي المبكر والمتأخر والمفتوح متميز. والاحتواءات صحيحة، لذاoلهـ{\displaystyle \sim _{o}\subsetneq \sim _{l}\subsetneq \sim _{e}}.

في بعض الحسابات الفرعية، مثل حساب باي غير المتزامن، من المعروف أن التماثل الثنائي المتأخر والمبكر والمفتوح يتطابق. مع ذلك، في هذا السياق، يُعدّ مفهوم التماثل الثنائي غير المتزامن أكثر ملاءمة . في الأدبيات، يشير مصطلح التماثل الثنائي المفتوح عادةً إلى مفهوم أكثر تعقيدًا، حيث تُفهرس العمليات والعلاقات بعلاقات تمييز؛ التفاصيل موجودة في ورقة سانجيورجي المذكورة أعلاه.

المكافئ الشائك

بدلاً من ذلك، يمكن تعريف تكافؤ المحاكاة الثنائية مباشرةً من دلالات الاختزال. نكتبصأ{\displaystyle p\Downarrow a}إذا كانت العمليةص{\displaystyle p}يسمح على الفور بإدخال أو إخراج بالاسمأ{\displaystyle a}.

علاقة ثنائيةR{\displaystyle R}تُعتبر العمليات المتراكبة تناظرًا ثنائيًا مسننًا إذا كانت علاقة متناظرة تحقق الشرط التالي: لكل زوج من العناصر(ص،q)R{\displaystyle (p,q)\in R}لدينا ذلك

(1)صأ{\displaystyle p\Downarrow a}إذا وفقط إذاqأ{\displaystyle q\Downarrow a}لكل اسمأ{\displaystyle a}

و

(2) لكل تخفيضصص{\displaystyle p\rightarrow p'}يوجد تخفيضqq{\displaystyle q\rightarrow q'}

بحيث(ص،q)R{\displaystyle (p',q')\in R}.

نقول ذلكص{\displaystyle p}وq{\displaystyle q}تكون متماثلة ثنائية مسننة إذا وُجد تماثل ثنائي مسنن.R{\displaystyle R}أين(ص،q)R{\displaystyle (p,q)\in R}.

بتعريف السياق على أنه حد π ذو ثقب []، نقول إن العمليتين P و Q متطابقتان بشكل شائك ، مكتوبتانPبسؤال{\displaystyle P\sim _{b}Q\,\!}، إذا كان ذلك لكل سياقج[]{\displaystyle C[]}لدينا ذلكج[P]{\displaystyle C[P]}وج[سؤال]{\displaystyle C[Q]}هي ثنائية التماثل الشائكة. ويتضح أن التطابق الشائك يتزامن مع التطابق الناتج عن ثنائية التماثل المبكرة.

التطبيقات

استُخدم حساب باي لوصف أنواع عديدة من الأنظمة المتزامنة. في الواقع، تقع بعض أحدث تطبيقاته خارج نطاق علوم الحاسوب التقليدية .

في عام ١٩٩٧، اقترح مارتن عبادي وأندرو جوردون امتدادًا لحساب باي ، وهو حساب سبي، كترميز رسمي لوصف بروتوكولات التشفير والاستدلال عليها. يوسع حساب سبي حساب باي ليشمل عمليات التشفير وفك التشفير. وفي عام ٢٠٠١، عمم مارتن عبادي وسيدريك فورنيه معالجة بروتوكولات التشفير لإنتاج حساب باي التطبيقي . يوجد الآن كم كبير من الأبحاث المخصصة لمتغيرات حساب باي التطبيقي ، بما في ذلك عدد من أدوات التحقق التجريبية. ومن الأمثلة على ذلك أداة ProVerif.يعود الفضل في ذلك إلى برونو بلانشيه، استنادًا إلى ترجمة حساب التفاضل والتكامل π التطبيقي إلى إطار برمجة بلانشيه المنطقية . ومن الأمثلة الأخرى برنامج Cryptyc.، وذلك بفضل أندرو جوردون وآلان جيفري، الذي يستخدم طريقة وو ولام لتأكيدات المطابقة كأساس لأنظمة الأنواع التي يمكنها التحقق من خصائص المصادقة للبروتوكولات المشفرة.

في حوالي عام 2002، أبدى هوارد سميث وبيتر فينغار اهتمامًا بإمكانية استخدام حساب باي كأداة لوصف نماذج العمليات التجارية. وبحلول يوليو 2006، دار نقاش في الأوساط العلمية حول مدى فائدة ذلك. ومؤخرًا، شكّل حساب باي الأساس النظري للغة نمذجة العمليات التجارية (BPML)، ولغة XLANG من مايكروسوفت. [ 14 ]

حظي حساب باي (π-calculus) باهتمام في علم الأحياء الجزيئي. ففي عام ١٩٩٩، أظهر أفيف ريغيف وإيهود شابيرو إمكانية وصف مسار الإشارات الخلوية (ما يُعرف بتسلسل RTK / MAPK )، وتحديدًا "الليغو" الجزيئي الذي يُنفذ مهام التواصل هذه، وذلك من خلال توسيع حساب باي . [ ٢ ] وبعد هذه الورقة البحثية الرائدة، وصف باحثون آخرون الشبكة الأيضية الكاملة لخلية بسيطة. [ ١٥ ] وفي عام ٢٠٠٩، اقترح أنتوني ناش وسارة كالفالا إطار عمل لحساب باي لنمذجة نقل الإشارة الذي يُوجه عملية تجميع فطر ديكتيوستيليوم ديسكويديوم . [ ١٦ ]

تاريخ

طُوِّرَ حساب باي (π-calculus) في الأصل على يد روبن ميلنر ، ويواكيم بارو، وديفيد ووكر عام ١٩٩٢، استنادًا إلى أفكار أوفي إنجبرغ وموغنس نيلسن. [ ١٧ ] ويمكن اعتباره امتدادًا لعمل ميلنر على حساب العمليات (CCS) ( حساب الأنظمة المتصلة ). وفي محاضرته في تورينج، يصف ميلنر تطوير حساب باي بأنه محاولة لتجسيد تجانس القيم والعمليات لدى الفاعلين . [ ١٨ ]

التطبيقات

تُطبّق لغات البرمجة التالية حساب التفاضل والتكامل π أو أحد متغيراته:

ملحوظات

  1. مواصفات OMG (2011). "نموذج تدوين العمليات التجارية (BPMN) الإصدار 2.0" ، مجموعة إدارة الكائنات . ص 21
  2. 1 2 ريغيف، أفيف ؛ ويليام سيلفرمان؛ إيهود ي. شابيرو (2001). "تمثيل ومحاكاة العمليات الكيميائية الحيوية باستخدام جبر عمليات حساب باي". الحوسبة الحيوية 2001: وقائع ندوة المحيط الهادئ . ص 459-470 . doi : 10.1142/9789814447362_0045 . ISBN  978-981-02-4515-3PMID 11262964 
  3. وينغ، جانيت م. (27 ديسمبر 2002). "أسئلة وأجوبة حول حساب التفاضل والتكامل π" (ملف PDF) .
  4. حساب التفاضل والتكامل للعمليات المتنقلة الجزء 1 الصفحة 10، بقلم ر. ميلنر، ج. بارو، ود. ووكر، نُشر في مجلة المعلومات والحوسبة 100(1) الصفحات 1-40، سبتمبر 1992
  5. روبن ميلنر، أنظمة الاتصالات والأنظمة المتنقلة: حساب باي، مطبعة جامعة كامبريدج، رقم ISBN 05216432011999
  6. سانجيورجي، د.، ووكر، د. (2003). ص 51، حساب باي. مطبعة جامعة كامبريدج.
  7. بودول، ج. (1992). عدم التزامن وحساب باي . التقرير الفني 1702، المعهد الوطني للبحوث في علوم الحاسوب والتحكم الآلي، صوفيا أنتيبوليس .
  8. هوندا، ك.؛ توكورو، م. (1991). حساب الكائنات للاتصال غير المتزامن. ECOOP 91. سبرينغر فيرلاغ.
  9. بالاميديسي، كاتوشيا (1997). "مقارنة القدرة التعبيرية لحساب باي المتزامن وغير المتزامن". وقائع الندوة الرابعة والعشرين لجمعية الحوسبة الآلية حول مبادئ لغات البرمجة : 256-265 . arXiv : cs/9809008 . Bibcode : 1998cs........9008P .
  10. ميلنر، روبن (1992). "الدوال كعمليات" (ملف PDF) . البنى الرياضية في علوم الحاسوب . 2 (2): 119-141 . doi : 10.1017/s0960129500001407 . hdl : 20.500.11820/159b09c0-1147-4f32-baf0-23bed198f12a . S2CID 36446818 . 
  11. دام، مادز (1997). "حول قابلية حسم مكافئات العمليات لحساب باي". علوم الحاسوب النظرية . 183 (2): 215-228 . doi : 10.1016/S0304-3975(96)00325-8 .
  12. ميلنر، ر.؛ ج. بارو؛ د. ووكر (1992). "حساب العمليات المتنقلة" (ملف PDF) . المعلومات والحوسبة . 100 (1): 1-40 . doi : 10.1016/0890-5401(92)90008-4 . hdl : 20.500.11820/cdd6d766-14a5-4c3e-8956-a9792bb2c6d3 .
  13. ^ سانجيورجي، د. (1996). “نظرية المحاكاة لحساب التفاضل والتكامل”. اكتا إنفورماتيكا . 33 : 69 – 97. دوى : 10.1007/s002360050036 . S2CID 18155730 . 
  14. "BPML | BPEL4WS: مسار تقارب نحو حزمة BPM قياسية." ورقة موقف BPMI.org. 15 أغسطس 2002.
  15. كياروجي، دافيدي؛ بييرباولو ديجانو؛ روبرتو مارانغوني (2007). "نهج حسابي للفحص الوظيفي للجينومات" . مجلة PLOS للبيولوجيا الحاسوبية . 3 (9): 1801-1806 . Bibcode : 2007PLSCB...3..174C . doi : 10.1371/ journal.pcbi.0030174 . PMC 1994977. PMID 17907794 .  
  16. ناش، أ.؛ كالفالا، س. (2009). "اقتراح إطار عمل لتحديد الموقع الخلوي لـ Dictyostelium باستخدام حساب π" (ملف PDF) . CoSMoS 2009 .
  17. إنجبرغ، يو.؛ نيلسن، إم. (1986). "حساب أنظمة الاتصال مع تمرير العلامات" . سلسلة تقارير DAIMI . 15 (208). doi : 10.7146/dpb.v15i208.7559 .
  18. روبن ميلنر (1993). "عناصر التفاعل: محاضرة جائزة تورينج" . مجلة الاتصالات ACM . 36 (1): 78-89 . doi : 10.1145/151233.151240 .

مراجع