Skip to content

Commit 4a046aa

Browse files
fangyi-zhouwenkokke
authored andcommitted
Bisimulation: add a note about requirements of bisimulation
Two simulations only form a bisimulation when the underlying relation are inverses of each other: https://cs.stackexchange.com/questions/541/when-are-two-simulations-not-a-bisimulation This commits adds clarification over the matter, by emphasising the inverse requirement. Signed-off-by: Fangyi Zhou <me@fangyi.io>
1 parent 7b09180 commit 4a046aa

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

src/plfa/part2/Bisimulation.lagda.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,9 +57,13 @@ in the target:
5757
This stronger condition is known as _lock-step_ or _on the nose_ simulation.
5858

5959
We are particularly interested in the situation where there is also
60-
a simulation from the target to the source: every reduction in the
60+
a simulation from the target to the source, using the inverse relation `~⁻¹`:
61+
every reduction in the
6162
target has a corresponding reduction sequence in the source. This
6263
situation is called a _bisimulation_.
64+
It's important to note that two simulations do not always give rise to a
65+
bisimulation in general, the underlying relation of two simulations needs to be
66+
inverse of each other to have a bisimulation.
6367

6468
Simulation is established by case analysis over all possible
6569
reductions and all possible terms to which they are related. For each

0 commit comments

Comments
 (0)