I have a disagreement with a person: I believe that the primary and most important goal of including proof-of-work (and therefore the nonce) in a block is to make it hard for an attacker to change that block (and since we are talking about a chain the next ones) without committing enough resources to recalculate not only the current but also all the blocks after that. Without it the attacker could simply create forks of the blockchain without any problems (free).
He claims that it is a mechanism is there to solve the problem of determining representation in majority decision making. If the majority were based on one-IP-address-one-vote, it could be subverted by anyone able to allocate many IPs. Proof-of-work is essentially one-CPU-one-vote.
Who is more right?