Several devices can retain a meaningful order of events without sharing one perfectly synchronized clock. Local sequence and message dependencies provide a partial order. A numerical timestamp can respect that order without measuring physical duration.
Order from local events and messages
Consider three processes A, B and C, each with three locally ordered events. Within A, A1 precedes A2 and A2 precedes A3; the same convention applies to B and C. A message also places its sending event before its receiving event. Transitivity adds dependencies along chains of these relations.
Two distinct events are concurrent in this model if neither can reach the other through such a chain. Concurrent does not mean physically simultaneous. It means that the specified event and communication record supplies no happened-before relation between them. Unrecorded interactions would require a richer model.
Change the messages, then compare two events
Enable or disable the three possible messages. Select an ordered pair of events to see whether a dependency path connects them. Vertical position makes the diagram readable; it is not a calibrated clock.
A2 happens before C3. One dependency path: A2 → B2 → C3. Logical clocks: L(A2) = 2; L(C3) = 4.
Solid lines show local order; dashed arrows show enabled messages. Each event displays its Lamport logical clock L. Highlighted endpoints are the selected pair. These integers encode order, not seconds, distance or the speed of a signal.
A logical clock is not a physical clock
Start each process's logical counter at zero. For a local event, increment the counter. When an event receives a message, first take the maximum of the current local counter and the sender's recorded counter, then increment. The example has no other messages or initial dependencies.
With the first two messages enabled, A2 has L = 2, B2 has L = 3 and C3 has L = 4. The numbers increase along every dependency. They do not say that the transmission took one second, that the processes have identical rates or that equal labels mean simultaneous events.
Now disable B2 → C3 while keeping the selected pair A2 and C3. They become concurrent, yet their logical clocks are 2 and 3. The implication a precedes b ⇒ L(a) < L(b) holds; its converse does not. Sorting all events by logical clock, with a tie-breaking rule, produces a usable total order containing additional conventions.
A consistent record includes its dependencies
A set of completed events is causally consistent if it includes every predecessor of every event it contains. For a message, a snapshot can include the sending event while excluding the reception; the message is then in transit. Including a reception while omitting its sending event violates that consistency requirement.
This distinguishes an operational global record from a photograph taken at one universal instant. Chandy and Lamport's distributed-snapshot work develops a protocol for obtaining meaningful process and channel states under specified communication assumptions. A partial-order diagram alone is not that protocol.
From distributed order to physical time
Relativistic causal structure likewise limits which events can influence others, but a computer-network dependency graph is not a spacetime metric. It lacks proper durations, physical distances and the dynamics of actual signal propagation. The previous essays on light cones and clock synchronization explain different parts of that additional structure.
For SMM/DTT, the relevant question is whether different admissible inner schedules yield the same completed observations. The book's section on unobservable inner order states a condition for exchanging operations without changing future-test outcomes. Schedule independence must be demonstrated for the allowed operations; it does not follow simply from calling their order hidden.
The demonstration provides a finite dependency calculation. Deriving Lorentz symmetry or a physical duration scale requires further assumptions and results beyond it.
Sources and further reading
- L. Lamport, Time, Clocks, and the Ordering of Events in a Distributed System, Communications of the ACM 21 (1978), 558–565.
- K. M. Chandy and L. Lamport, Distributed Snapshots: Determining Global States of Distributed Systems, ACM Transactions on Computer Systems 3 (1985), 63–75.

