Quorum stake in a committee.
(committee-quorum-stake commtt) → quorum
As in the BFT literature,
the quorum number in AleoBFT is
Some recent BFT literature uses
If the committee is not empty, the maximum tolerated faulty stake is less than the quorum stake.
Function:
(defun committee-quorum-stake (commtt) (declare (xargs :guard (committeep commtt))) (let ((__function__ 'committee-quorum-stake)) (declare (ignorable __function__)) (- (committee-total-stake commtt) (committee-max-faulty-stake commtt))))
Theorem:
(defthm natp-of-committee-quorum-stake (b* ((quorum (committee-quorum-stake commtt))) (natp quorum)) :rule-classes (:rewrite :type-prescription))
Theorem:
(defthm posp-of-committee-quorum-stake (implies (committee-nonemptyp commtt) (b* ((quorum (committee-quorum-stake commtt))) (posp quorum))) :rule-classes (:rewrite :type-prescription))
Theorem:
(defthm committee-max-faulty-stake-lt-committee-quorum-stake (implies (committee-nonemptyp commtt) (< (committee-max-faulty-stake commtt) (committee-quorum-stake commtt))) :rule-classes :linear)
Theorem:
(defthm committee-quorum-stake-of-committee-fix-commtt (equal (committee-quorum-stake (committee-fix commtt)) (committee-quorum-stake commtt)))
Theorem:
(defthm committee-quorum-stake-committee-equiv-congruence-on-commtt (implies (committee-equiv commtt commtt-equiv) (equal (committee-quorum-stake commtt) (committee-quorum-stake commtt-equiv))) :rule-classes :congruence)