From 1e5371e6ab6ab1fe67cf7847900e3fde64c1440f Mon Sep 17 00:00:00 2001
From: "Peter J. Keleher" <keleher@cs.umd.edu>
Date: Tue, 7 Nov 2023 16:51:55 -0500
Subject: [PATCH] auto

---
 notes/pbft.md | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/notes/pbft.md b/notes/pbft.md
index 9a3b062..c5fd324 100644
--- a/notes/pbft.md
+++ b/notes/pbft.md
@@ -6,14 +6,17 @@
   - i.e., correct replicas will return identical results.
 
 ## Differences from fail-stop consensus
-- 3*f*+1 replicas instead of 2*f*+1 (non-byzantine consensus):
-  - must be possible to make progress w/ only *n - f* replicas (because *f* might be faulty and respond)
-  - however, the *f* not responding might be correct but slow (asynchrony), so there might be *f* bad responses in the *n - f* responses
-  - implies *(n - f - f) > f*, or *n >= 3f + 1* in order to guarantee majority
+- 3*f*+1 replicas instead of 2*f*+1 (non-byzantine consensus)
 - 3 phases instead of two
 - cryptographic signatures
 
-**Properties**
+## Proof Sketch
+- must be possible to make progress w/ only *n - f* replicas (because *f* might be faulty and respond)
+- however, the *f* not responding might be correct but slow (asynchrony), so there might be *f* bad responses in the *n - f* responses
+- implies *(n - f - f) > f*, or *n >= 3f + 1* in order to guarantee majority
+
+
+## Properties
 - safety, liveness (*n >= 3f+1*)
   - can't prove both in async environment
   - safety guaranteed through protocol
-- 
GitLab