• π-演算

    編輯
    本詞條由“匿名用戶” 建檔。

    π-演算

    編輯

    在理論計算機科學中,π-演算(或 pi-演算)是一種過程演算。 π-演算允許通道名稱沿著通道本身進行通信,這樣它就能夠描述并發計算,其網絡配置可能在計算過程中發生變化。

    π-演算的術語很少,是一種小而富有表現力的語言(參見§語法)。 函數式程序可以編碼成 π-演算,編碼強調計算的對話性質,與游戲語義建立聯系。 π-演算的擴展,例如 spi 演算和應用 π,已經成功地推理了密碼協議。 除了最初用于描述并發系統之外,π-演算還被用于推理業務流程和分子生物學

    非正式定義

    編輯

    π-演算屬于過程演算家族,是描述和分析并發計算屬性的數學形式。 事實上,π-演算和 λ-演算一樣,非常小,不包含數字、布爾值、數據結構、變量、函數等原語,甚至不包含通常的控制流語句(如 if-then- 否則,同時)。

    過程構造

    π-演算的核心是名字的概念。 微積分的簡單性在于名稱作為通信渠道和變量的雙重作用。

    微積分中可用的過程結構如下(下一節給出了精確的定義):

    • 并發,寫成 P ∠ Q {\displaystyle P\mid Q} ,其中 P {\displaystyle P} 和 Q {\displaystyle Q} 是兩個并發執行的進程或線程。
    • 溝通,在哪里
      • 輸入前綴 c ( x ) 。 P {\displaystyle c\left(x\right).P} 是一個等待消息的進程,該消息在名為 c {\displaystyle c} 的通信通道上發送,然后作為 P {\displaystyle P} ,將收到的名稱綁定到名稱 x。 通常,此模型要么是一個期望來自網絡的通信的進程,要么是一個只能通過 goto c 操作使用一次的標簽 c。
      • 輸出前綴 cˉ ? y ? 。 P {\displaystyle {\overline {c}}\langle y\rangle .P} 描述名稱 y {\displaystyle y} 在繼續作為 P { \displaystyle P} 。 通常,這會模擬在網絡上發送消息或 goto c 操作。
    • 復制,書面! P {\displaystyle !\,P} ,可以看作是一個過程,它總是可以創建 P {\displaystyle P} 的新副本。 通常,這會為等待任意數量的 goto c 操作的網絡服務或標簽 c 建模。
    • 創建一個新名稱,寫作 ( ν x ) P {\displaystyle \left(\nu x\right)P} ,這可以看作是在 P { displaystyle P} 。 π-演算的常量僅由它們的名稱定義,并且始終是通信通道。 在流程中創建新名稱也稱為限制。
    • nil 進程,寫為 0 {\displaystyle 0} ,是一個執行完成并已停止的進程。

    雖然 π-演算的極簡主義讓我們無法寫出正常意義上的程序,但微積分很容易擴展。 特別是,很容易定義控制結構(如遞歸、循環和順序組合)和數據類型(如一階函數、真值、列表和整數)。 此外,已經提出了考慮分布或公鑰密碼學的 π-算法的擴展。 由于 Abadi 和 Fournet [1] 而應用的 π-演算通過使用任意數據類型擴展 π-演算,將這些不同的擴展置于正式的基礎上。

    一個小例子

    下面是一個由三個并行組件組成的流程的小例子。 通道名稱 x 只有前兩個組件知道。

    π-演算

    前兩個組件能夠在通道 x 上通信,名稱 y 綁定到 z。

    請注意,剩余的 y 不受影響,因為它是在內部范圍內定義的。第二個和第三個并行組件現在可以在通道名稱 z 上進行通信,并且名稱 v 綁定到 x。

    內容由匿名用戶提供,本內容不代表www.gelinmeiz.com立場,內容投訴舉報請聯系www.gelinmeiz.com客服。如若轉載,請注明出處:http://www.gelinmeiz.com/198214/

    (5)
    詞條目錄
    1. π-演算
    2. 非正式定義
    3. 過程構造
    4. 一個小例子

    輕觸這里

    關閉目錄

    目錄
    91麻精品国产91久久久久