Skip to content

[distributed-systems/event-ordering] Repair the Lamport-clock note and separate logical order from physical time #166

Description

@elimelt

Goal

Make `content/distributed-systems/ordering-events-in-distributed-systems.md` a clean, source-grounded explanation of happened-before, total-order extensions, and physical clock synchronization.

Current gaps

  • The title/frontmatter says “Clock Synchronization,” while most of the page is Lamport ordering. Choose a clear title and split physical-clock synchronization into a separate note or a clearly bounded final section.
  • Correct the order-theory language: happened-before is an irreflexive partial order; a total-order extension is an arbitrary tie-break that preserves causality, not a reconstruction of real-world time.
  • The notation section currently contains malformed or contradictory definitions (for example, (a \Rightarrow b) is defined as “before or concurrent” but then implies (a\to b)). Replace it with a small, consistent notation table.
  • Give the Lamport mutual-exclusion algorithm as a standalone algorithm with exact request/reply/release rules, then cross-link the mutual-exclusion note instead of duplicating an incomplete version.
  • State the channel assumptions and liveness boundary: FIFO/reliable delivery and eventual delivery are required; arbitrary delay or a crashed participant can block this algorithm.
  • Add a three-process event diagram showing concurrent events, happened-before edges, Lamport timestamps, and a deterministic total-order tie-break.
  • Correct the external-events example: an event outside the modeled system cannot be ordered from the system trace alone; an actual causal message can establish order once it enters the model.
  • Rework the physical-clock section around clock rate, offset, drift, message delay, maximum error, and uncertainty. The current derivation uses a bound (\mu) without making the network/timing model explicit.
  • Cite the original papers for logical clocks and physical-clock synchronization, and remove unsupported “forward direction” claims unless they are explained with a concrete algorithm.

Sources to add

Acceptance criteria

  • The notation is internally consistent and every relation is defined once.
  • The note clearly distinguishes causal partial order, arbitrary total-order extension, and wall-clock synchronization.
  • A worked diagram/trace demonstrates the difference.
  • The physical-clock equations state assumptions and cite their source.
  • Frontmatter is normalized and cross-links to clocks and mutual exclusion are coherent.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions