diff --git a/Concurrent Systems/notes/12 - CCS (che non so cosa voglia dire).md b/Concurrent Systems/notes/12 - CCS (che non so cosa voglia dire).md index 6706ee2..5c3d542 100644 --- a/Concurrent Systems/notes/12 - CCS (che non so cosa voglia dire).md +++ b/Concurrent Systems/notes/12 - CCS (che non so cosa voglia dire).md @@ -39,36 +39,22 @@ Dove: #### πŸ“œ Inference rules ##### 1. **Choice (Summation Rule)** +$${\sum_{i \in I} \alpha_i . P_i \xrightarrow{\alpha_j} P_j} \quad \text{for all } j \in I$$ -**$$βˆ‘_{i ∈ I} Ξ±α΅’.Pα΅’ ⟢^{Ξ±β±Ό} Pβ±Ό\space\space\spac, for \space all \space j \in I$$ - -> A process that has multiple options (`α₁.P₁ + Ξ±β‚‚.Pβ‚‚ + ...`) can nondeterministically choose any one of them. - ---- - -### 2. **Process Definition (Call/Expansion)** - -**`P{a₁/x₁ ... aβ‚™/xβ‚™} βŸΆα΅… P'` -`A(x₁...xβ‚™) β‰œ P` -β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€” -`A(a₁...aβ‚™) βŸΆα΅… P'`** +> A process that has multiple options (`α₁.P₁ + Ξ±β‚‚.Pβ‚‚ + ...`) can non-deterministically choose any one of them. +##### 2. **Process Definition (Call/Expansion)** +$$\frac{P\{a_1/x_1, \dots, a_n/x_n\} \xrightarrow{\alpha} P'}{A(a_1, \dots, a_n) \xrightarrow{\alpha} P'} \quad A(x_1, \dots, x_n) \triangleq P$$ > If a process `A(x₁...xβ‚™)` is defined as `P`, then invoking `A(a₁...aβ‚™)` behaves like `P` with the arguments substituted. ---- - -### 3. **Restriction (Hiding)** - -**`P βŸΆα΅… P'` and `Ξ± βˆ‰ {a, ā}` -β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€” -`P \ a βŸΆα΅… P' \ a`** +##### 3. **Restriction (Hiding)** +$$\frac{P \xrightarrow{\alpha} P'}{P \setminus a \xrightarrow{\alpha} P' \setminus a} \quad \text{if } \alpha \notin \{a, \bar{a}\}$$ > If process `P` can do action `Ξ±` and it’s **not** the hidden action (`a` or `ā`), then `P \ a` can also do it, and the resulting process remains restricted. ---- - -### 4. **Parallel Composition – Independent Actions** - +##### 4. **Parallel Composition – Independent Actions** +$$\frac{P_1 \xrightarrow{\alpha} P_1'}{P_1 \mid P_2 \xrightarrow{\alpha} P_1' \mid P_2}$$ +$$\frac{P_2 \xrightarrow{\alpha} P_2'}{P_1 \mid P_2 \xrightarrow{\alpha} P_1 \mid P_2'}$$ There are three rules here for different situations in `P₁ | Pβ‚‚`. ---