Duplication can give fault-tolerance in three ways:
Replication: Providing multiple identical instances of the same system, directing tasks or requests to all of them in parallel, and choosing the correct result on the basis of a quorum;
Redundancy: Providing multiple identical instances of the same system and switching to one of the remaining instances in case of a failure (fall-back or backup);
Diversity: Providing multiple different implementations of the same specification, and using them like rep ...