As I see it, if you don't vote the wrong president might win. Dirty txes jeopardise the asset value and you could be left with a tyrant in your chain who has even more voting stake. It's self-regulating in that way. But there may be another consistency issue I'm not aware of.
So there is a conflicting tx, your software is going to vote on it automatically. How do you pick which tx is the 'clean' one and which one is the 'dirty' one?
When your node encounters a conflict (a fork), where two signed blocks have the same parent (double spend attempt), it creates a vote referencing the block and broadcasts it to the network.
The nodes vote and the weighted majority (>51%) is taken as the real fork. The weight of a node's vote is the sum of the balances all accounts that have named that node as its representative.
The key thing here is that when a fork or missing block occurs, only the accounts referenced in the transaction are affected. The rest of the network proceeds with processing transactions for other accounts.
The voting mechanism is to wait for 4 voting periods (1 minute total) and keep a cumulative tally of incoming votes from the other representatives. The most popular block wins majority and is kept. The other block is discarded.