Fault-tolerance
Fault tolerance.
In typical BFT systems, including AleoBFT with static committees,
the notion of fault tolerance applies to the system as a whole,
based on the number of correct and faulty validators:
the system is fault-tolerant if the actual number of faulty validators
does not exceed f, which is calculated from the total n,
as formalized in max-faulty-for-total.
With dynamic committees, the notion applies to
every committee that arises during the execution of the protocol.
It has to be an assumption on every such committee:
it cannot be checked by validators,
who do not know which validator is correct vs. faulty.
Here we formalize this notion for committees,
which is then used as a hypothesis for
certain correctness theorems of AleoBFT.
Subtopics
- Committee-correct-members
- Addresses of the correct validators in a committee.
- Committee-faulty-members
- Addresses of the faulty validators in a committee.
- All-system-fault-tolerant-p
- Check if all the system states
in an execution corresponding to a sequence of events
are fault-tolerant.
- Validator-fault-tolerant-p
- Check if the active committees calculated by a validator
are all fault-tolerant.
- Committee-fault-tolerant-p
- Check if a committee is fault-tolerant.
- System-fault-tolerant-p
- Check if a system state is fault-tolerant.