On a separate note, George pointed out that without Virtual Voting, there is nothing that requires the Pillars to follow the plasma ordering we are discussing. That lead me down the “Virtual Voting” rabbit hole in the whitepaper with ChatGPT. Here is what it says about our virtual voting.
This is off topic and not relevant to the discussion about dynamic plasma.
Consensus Timeline & Virtual Epochs:
The consensus timeline is divided into virtual epochs. Within each epoch, nodes process transactions and make decisions based on the total stake present during that epoch.
Voting Mechanism:
The node will broadcast its vote in the next epoch.
If a node knows the transactions between two epochs and applies a deterministic ordering algorithm, all remaining honest nodes will arrive at the same decision. After a node has a supermajority of messages with all transactions between two epochs, it starts to virtually vote on the ordering.
This virtual vote isn’t a traditional vote. Instead of sending additional network messages, it uses a set of rules that define a deterministic way to order the transactions. Factors used in ordering include the PoW link weight, the timestamp of transaction arrival, and the hash of the transaction as a tiebreaker.
Once a node orders the transactions, it knows that the order is the same for all nodes. Thus, it marks them in the ledger, assigning an ID to each transaction.
Stake-Based Voting:
In a decentralized environment, traditional quorum-based voting is vulnerable to Sybil attacks. To counteract this, nodes can lock a certain amount of stake to obtain different roles in the network, such as becoming sentinel or pillar nodes.
The virtual voting process is determined based on the total stake during a virtual epoch. Pillar nodes with stake make decisions within the consensus algorithm to finalize transactions. Nodes can unlock their stake at any time. However, consensus nodes have an “unstaking period” they must wait through.