There are many consensus algorithms that exist in parallel computing that involve multiple computing units like virtual machines which make use of available resources and arrive at a single agreeable state for the combined system. This is done on the basis of voting which itself branches into several arrangements like voting, functions of central tendencies, weighted functions of central tendencies etc. Some applications that consensus algorithms try to cover are: deciding on transaction operations (read, write, commit); deciding on node leaders of a system; maintaining replicas in the state of a machine (also called a state machine) and creating consistency between them. Some common algorithms of this type are Proof of Work algorithm (PoW), the practical Byzantine fault tolerance algorithm (PBFT), the proof-of-stake algorithm (PoS) and the delegated proof-of-stake algorithm (DPoS), Paxos algorithm and the Raft consensus algorithm.