-
Notifications
You must be signed in to change notification settings - Fork 14
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
8a9512b
commit 96f4d71
Showing
2 changed files
with
23 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
# Analysis of the BlockSync Specification | ||
|
||
This document contains a report on analysis of BlockSync. We have two versions of the | ||
state machine, one with consensus abstracted away, and one in which the blocksync | ||
state machine and the consensus state machine are combined. | ||
|
||
## Invariants checked with quint run | ||
|
||
- `validRequestInvariant`: A request should only be sent to a server who has reported, via status message, having data for the requested height. | ||
- `noOldRequestsInv`: A client doesn't have open requests for past heights | ||
- `serverRespondsToRequestingPeersInvariant`: A server only replies to a request received from a client (The client request might have timed out). | ||
|
||
## Witnesses | ||
|
||
- `serverRespondsToRequestingPeersWitness`: This witness should report a scenario where a request timeouts, the client submits a new one, and a late response is received. | ||
|
||
## Temporal properties | ||
|
||
We don't check these properties but record them for documentation purposes. | ||
- `terminationRequest`: Every request will eventually terminate. | ||
|
||
|