Research Article

Formal Modelling of PBFT Consensus Algorithm in Event-B

Listing 2

Invariants of M0.
Invariants
@inv1 G∈NODES→(messageresult)
@inv2 partition(NODES,Faulty,corr)
@inv3 3(corr)≥2(NODES)+1
@inv4 cache∈NODES→ℙ(message)
@inv5 ∀i·i∈corr⇒dom(G(i))⊆cache(i)
@inv6 pre∈NODES
@inv7 Pre_set⊆NODES
@inv8 ∀n· n ∈ corr ⇒ G(n)⊆True_execute
@inv9 3({i,j·i∈NODES∧j∈dom(G(i))∧(G(i))(j)=True_execute(j)∣i})≥2(NODES)+1