Happens-Before Relation
The happens-before relation is a partial order on events in a concurrent system that captures which events must precede which others. Unlike a total order, which ranks all events, the happens-before relation leaves events unordered when they occur in different processes that do not communicate, making it the fundamental logical structure of concurrent computation. The relation was introduced by Leslie Lamport in 1978 and is the basis for the vector clock algorithm, which allows distributed systems to determine event ordering without a global clock.
The happens-before relation is not merely a tool for reasoning about concurrency. It is a revelation that time in distributed systems is not a background condition but a constructed property — an order that emerges from communication rather than from physics. Any system that assumes a global clock is not merely inefficient; it is conceptually wrong.