diff --git a/Concurrent Systems/notes/12b - CCS cose varie.md b/Concurrent Systems/notes/12b - CCS cose varie.md index 1120388..f375353 100644 --- a/Concurrent Systems/notes/12b - CCS cose varie.md +++ b/Concurrent Systems/notes/12b - CCS cose varie.md @@ -47,7 +47,7 @@ Let's go! ## Congruence One of the main aims of an equivalence notion between processes is to make equational reasonings of the kind: “if P and Q are equivalent, then they can be interchangeably used in any execution context”. -This feature on an equivalence makes it a *congruence* +**This feature on an equivalence makes it a *congruence*** Not all equivalences are necessarily congruences (even though most of them are). To properly define a congruence, we first need to define an execution context, and then what it means to run a process in a context. Intuitively: ![200](../../Pasted%20image%2020250415090109.png) @@ -61,7 +61,7 @@ where M denotes a sum. An equivalence relation $R$ is a congruence if and only if $$\forall (P, Q) \in R, \forall C.(C[P], C[Q]) \in R$$ -Is bisimilarity a congruence? Yes. +**Is bisimilarity a congruence? Yes.** **Theorem:** $$if \space P ∼ Q \space then \space \forall C.C[P] ∼ C[Q]$$