Order and uncertainty without a global clock

Separate causality from wall-clock time, then reason about leases, fencing, deadlines, and uncertainty in distributed execution.

10 published lessons1 module240 min of guided study
  1. 01
    Order and uncertainty without a global clockadvanced · 10 lessons

Follow the path or begin with a question. Every lesson is open.

Your notebook0 of 10 lessons completed

Your place, at your pace. Progress is optional and saved only in this browser when available.

Inside this module

Each lesson includes an interactive lab

Order and uncertainty without a global clock

Separate causality from wall-clock time, then reason about leases, fencing, deadlines, and uncertainty in distributed execution.

  1. 01

    Separate clock offset, drift, and synchronization evidence

    Calculate a timestamp-exchange estimate while keeping clock-rate bounds, path asymmetry, and elapsed-time clocks distinct.

    24 min
  2. 02

    Order known dependencies with logical counters

    Construct happened-before order and Lamport updates without interpreting counter differences as durations or reversed implications as causality.

    24 min
  3. 03

    Represent causal history component by component

    Use vector updates and componentwise comparison to distinguish ordered events from concurrency under an explicit participant model.

    24 min
  4. 04

    Combine a physical component with a causal tie-break

    Apply hybrid logical clock updates while distinguishing causal monotonicity, physical-clock assumptions, and finite representation limits.

    24 min
  5. 05

    Make real-time uncertainty part of the commit protocol

    Reason from guaranteed time intervals to a commit-wait condition without treating synchronization or sleeping alone as a transaction protocol.

    24 min
  6. 06

    Bound a lease using explicit clock assumptions

    Derive a conservative duration comparison while distinguishing lease authority, process pauses, delayed operations, and safe resource access.

    24 min
  7. 07

    Enforce authority at the resource with fencing tokens

    Use monotonic grant generations to reject stale effects while separating fencing from leases, authorization, and duplicate suppression.

    24 min
  8. 08

    Treat timeouts as suspicions under a failure model

    Distinguish delayed evidence from crash proof, relate completeness and accuracy, and calculate a narrowly specified false-suspicion model.

    24 min
  9. 09

    Carry a time budget across different clock domains

    Propagate remaining work budgets without copying local clock epochs, resetting retries, or mistaking cancellation for rollback.

    24 min
  10. 10

    Reconstruct a partial order without inventing missing history

    Combine local sequence, correlated messages, vector histories, and clock intervals while preserving unknown relationships in incomplete traces.

    24 min
All engineering modules