Skip to content
This repository was archived by the owner on Apr 26, 2024. It is now read-only.

Commit 2b1216a

Browse files
author
David Robertson
committed
One last tweak
1 parent 9b181bf commit 2b1216a

File tree

1 file changed

+5
-4
lines changed

1 file changed

+5
-4
lines changed

docs/auth_chain_difference_algorithm.md

+5-4
Original file line numberDiff line numberDiff line change
@@ -42,11 +42,12 @@ events.
4242

4343
Instead, we break down the graph into *chains*. A chain is a subset of a DAG
4444
with the following property: for any pair of events `E` and `F` in the chain,
45-
the chain contains a path `E -> F` or a path `F -> E`. Each event in the chain
45+
the chain contains a path `E -> F` or a path `F -> E`. This forces a chain to be
46+
linear (without forks) e.g. `E -> F -> G -> ... -> H`. Each event in the chain
4647
is given a *sequence number* local to that chain. The oldest event `E` in the
47-
chain has sequence number 1. If `E` has a child in the chain, the child has
48-
sequence number 2; if `E` has a grandchild, the grandchild has sequence number
49-
3; and so on.
48+
chain has sequence number 1. If `E` has a child `F` in the chain, then `F` has
49+
sequence number 2. If `E` has a grandchild `G` in the chain, then `G` has
50+
sequence number 3; and so on.
5051

5152
Synapse ensures that each persisted event belongs to exactly one chain, and
5253
tracks how the chains are connected to one another. This allows us to

0 commit comments

Comments
 (0)