CSP choice Created 2026-10-31 Updated 2026-11-05
In communicating sequential processes, CSP choice combines possible process behaviours. With external choice , an offered CSP event selected by the environment can determine which branch proceeds. Internal choice leaves the branch selection nondeterministic from the environment's viewpoint. For example, choosing externally between receiving
left and receiving right offers both alternatives; internally choosing a branch can remove one offer before the environment acts. Sets of execution traces alone can hide this distinction, so CSP failures semantics also records CSP refusal sets of CSP events that may be declined. CSP failures semantics 2026-11-05
CSP failures semantics augments visible traces with refusal information. In the stable failures model, a pair means that after visible trace , the process can reach a stable state with no internal transition and no offered event in . It records a possible refusal, not a requirement that every state reached after refuse .[ref]
External choice between offering and offering cannot initially refuse either offered event. Internal choice between the same branches may select the branch and refuse . Their visible trace sets can agree even though these refusals differ. Failures-divergences semantics additionally records possible infinite internal activity; it is a distinct model.