Maximum number of faulty validators tolerated by the system.
(max-faulty systate) → max
This is
Function:
(defun max-faulty (systate) (declare (xargs :guard (system-statep systate))) (let ((__function__ 'max-faulty)) (declare (ignorable __function__)) (max-faulty-for-total (number-validators systate))))
Theorem:
(defthm natp-of-max-faulty (b* ((max (max-faulty systate))) (natp max)) :rule-classes :rewrite)
Theorem:
(defthm number-validators-lower-bound-wrt-max-faulty (implies (> (number-validators systate) 0) (>= (number-validators systate) (1+ (* 3 (max-faulty systate))))) :rule-classes :linear)
Theorem:
(defthm max-faulty-of-system-state-fix-systate (equal (max-faulty (system-state-fix systate)) (max-faulty systate)))
Theorem:
(defthm max-faulty-system-state-equiv-congruence-on-systate (implies (system-state-equiv systate systate-equiv) (equal (max-faulty systate) (max-faulty systate-equiv))) :rule-classes :congruence)