Vector Clocks — Causality
Event on A
Event on B
Event on C
Send A→B
Send B→C
Send C→A
Reset
Vector clock: each process tracks [a,b,c]. On send: increment own, attach VC. On receive: merge (max), increment own. a→b iff VC(a)≤VC(b).