
Confluence is concerned not with whether a process can branch, but with whether its branches can rejoin. If one state follows different rules to reach two intermediate results, can further steps still bring them to a common state?
Consider simplifying (1+2)+(3+4). We may evaluate the left side first and obtain 3+(3+4), or evaluate the right side first and obtain (1+2)+7. The paths differ, yet both can continue to 10. Confluence therefore permits local choices to vary while preserving the possibility of coordinating their eventual results.
It is not the same as commutativity. Commutativity asks whether swapping two specified operations immediately preserves the result. Confluence allows intermediate results to differ, requiring only that they can later be joined. Nor is it the same as canonical form: a canonical form is the representative common result, while confluence explains why different paths may reach it.
The concept matters because stability need not require identical steps. If divergences can still converge, a system can accommodate independent processing. If branches cannot be reconciled, a small early choice may become a permanent conflict. Confluence also does not guarantee that a process terminates, so “can rejoin” and “will finish” must be judged separately.
Discover more from Geoffrey Chen
Subscribe to get the latest posts sent to your email.