Structures

Observed-remove set

Alice must remove the old Eagle Creek beacon while Bob reports its replacement from another trail. Carol still has an older notebook and may receive their records in either order. The ranger needs the replacement to remain without restoring the old installation.

A replacement needs a new identity

Alice's original report gave the old beacon tag A:1. After she observes that installation, her removal names A:1. It does not remove every future beacon called Eagle Creek.

Bob adds the replacement while his station and Alice's station cannot exchange notes. His addition gets the fresh tag B:2. An observed-remove set removes only the addition identities that the removing replica observed.

Each additions-page row pairs a beacon name with its tag. Each removals-page row copies the same pair, so an old note cannot restore that installation. The notebook also keeps the highest tag number seen. Bob has seen A:1, so his next tag is B:2.

Notebook Additions page Removals page Highest tag number seen Visible list
Alice empty Eagle Creek: A:1 1 empty
Bob Eagle Creek: A:1
Eagle Creek: B:2
empty 2 Eagle Creek
Carol Eagle Creek: A:1 empty 1 Eagle Creek
The notebook preserves the name, identity, removal knowledge, and counter needed to interpret the next note.

After all records arrive, each additions page retains Eagle Creek: B:2, each removals page retains Eagle Creek: A:1, and each highest tag number is 2. The visible list contains Eagle Creek because the replacement tag remains.

Three field notebooks

Keep the replacement, not the old beacon

Alice removes the installation she observed while Bob concurrently installs a replacement under a fresh identity.

Merge rule Remove observed tags; keep concurrent fresh tags.

Alice

Eagle Creek is active

Visible beacon list

Eagle Creek

Checkpoint note Remove observed tag A:1

Bob

Eagle Creek is active

Visible beacon list

Eagle Creek

Checkpoint note Add Eagle Creek as B:2

Carol

Eagle Creek is active

Visible beacon list

Eagle Creek

Checkpoint note No note in this race

Trail relay No ordering decision 0 records shared

Mechanism evidence A:1 is the live old installation.

  1. No records shared yet.

Enable JavaScript to run the demo. The starting state and expected result remain in the lesson.

The old Eagle Creek installation is active. Race its removal against Bob's replacement.

The concurrent replacement wins

Alice could not name B:2 when she removed the old beacon because Bob had not sent it yet. Bob's addition is concurrent with her removal, so it survives. This is the set's add-wins rule.

A delayed copy of A:1 does not return. The replicas retain removal knowledge for that exact tag. The visible value is still Eagle Creek, but the notebook's surviving B:2 identity proves that it is the replacement.

The full reference lesson lets you temporarily block notes between Alice and Bob, preserve a stale copy, exchange the conflicting deltas, and inspect the live tags and tombstones.

Open the interactive observed-remove set lesson

Sources and implementation

The interactive lesson calls Watershed's OR-set kernel through the stable Atlas toolkit.