diff --git a/content/rooms/fragments/v2-state-res.md b/content/rooms/fragments/v2-state-res.md index 508f9c1a..7c811f9d 100644 --- a/content/rooms/fragments/v2-state-res.md +++ b/content/rooms/fragments/v2-state-res.md @@ -2,17 +2,17 @@ toc_hide: true --- -The room state *S*′(*E*) after an event *E* is defined in terms of the -room state *S*(*E*) before *E*, and depends on whether *E* is a state +The room state *A*(*E*) after an event *E* is defined in terms of the +room state *B*(*E*) before *E*, and depends on whether *E* is a state event or a message event: -- If *E* is a message event, then *S*′(*E*) = *S*(*E*). -- If *E* is a state event, then *S*′(*E*) is *S*(*E*), except that its +- If *E* is a message event, then *A*(*E*) = *B*(*E*). +- If *E* is a state event, then *A*(*E*) is *B*(*E*), except that its entry corresponding to *E*'s `event_type` and `state_key` is replaced by *E*'s `event_id`. -The room state *S*(*E*) before *E* is the *resolution* of the set of -states {*S*′(*E*1), *S*′(*E*2), …} consisting of +The room state *B*(*E*) before *E* is the *resolution* of the set of +states {*A*(*E*1), *A*(*E*2), …} consisting of the states after each of *E*'s `prev_event`s {*E*1, *E*2, …}, where the resolution of a set of states is given in the algorithm below. diff --git a/content/rooms/v1.md b/content/rooms/v1.md index 1519873b..d3777190 100644 --- a/content/rooms/v1.md +++ b/content/rooms/v1.md @@ -66,17 +66,17 @@ This is fixed in the state resolution algorithm introduced in room version 2. {{% /boxes/warning %}} -The room state *S*′(*E*) after an event *E* is defined in terms of the -room state *S*(*E*) before *E*, and depends on whether *E* is a state +The room state *A*(*E*) after an event *E* is defined in terms of the +room state *B*(*E*) before *E*, and depends on whether *E* is a state event or a message event: -- If *E* is a message event, then *S*′(*E*) = *S*(*E*). -- If *E* is a state event, then *S*′(*E*) is *S*(*E*), except that its +- If *E* is a message event, then *A*(*E*) = *B*(*E*). +- If *E* is a state event, then *A*(*E*) is *B*(*E*), except that its entry corresponding to *E*'s `event_type` and `state_key` is replaced by *E*'s `event_id`. -The room state *S*(*E*) before *E* is the *resolution* of the set of -states {*S*′(*E*′), *S*′(*E*″), …} consisting of the states after each +The room state *B*(*E*) before *E* is the *resolution* of the set of +states {*A*(*E*′), *A*(*E*″), …} consisting of the states after each of *E*'s `prev_event`s {*E*′, *E*″, …}. The *resolution* of a set of states is defined as follows. The resolved