Couldn't I just run 500 instances of the proposed capped client? This is more about trading than generating - the generation is just to make it so the supply is limited.
Maybe, or maybe not. It would depend upon whether the code did any checking for running clients. The software could easily run some check and prevent a machine from running more than one client. Of course, there are ways around this, a la VMs, etc, but that's another issue altogether.
Say I have a RNG that can output 1024 different numbers, and we run it 1024*1024 times.
We will keep statistics of how many times it gives us what number between 0 and 1024.
The more we run it, the more difference in the array between the two numbers which got out putted the least and the most.
And so, I can say with a certain amount of security without looking like a fool that how RNGs are used in Bitcoin affects the "chance" of generating a block.
Actually, the number of outputs for the least output number and the number of the outputs for the most output number would tend, as you increased the number of runs to infinity, toward the same number. Specifically, each would tend toward RUNS*1/RNG_RANGE. This was my initial point - there is no luck involved - there's a mechanistic algorithmic process that simulates luck for a small set, but for any large number of runs or large number of machines performing runs, you get the result of the above formula.
We can't.
Bitcoin's Opensource so anyone can run a modified client and thus remove the cap!
Just because the program is open source doesn't mean that it can't check work for validity. This comment is akin to saying "Anyone could modify the program to create fifty billion bitcoins, since its open source." No. The other nodes on the network run checks to determine that blocks (I think blocks is the right terminology, I just found bitcoin recently) are legitimate. Similarly, there are a myriad of ways to sign work to verify that it is originating from an un-hacked client. This would reject work from clients which had been modified to remove the cap, or to remove the limit of one instance of the program per machine. Sure, someone is free to modify the source and remove all caps. However, if they do that, their work would be rejected by the network of legitimate clients, and the "hacked" client would be useless unless someone wanted to start an entire new chain, and thus a competitive currency.
The Linux kernel RNG is seeded by noise on the system actually.
Yes, dev/random works this way, but it is blocking, and as I said, very slow. Run "cat /dev/random" and see how quickly the bytes pour onto your screen - they trickle. This may or may not be fast enough for bitcoin - I haven't delved into the source as of yet. Conversely, dev/urandom does not work exclusively off of atmospheric noise, and thus is not truly random. Run "cat /dev/urandom" and you'll be deluged with pseudorandom noise. /dev/urandom, obviously, is more practical due to the fact that it doesn't hang the machine as it waits for more truly random data - it generates more as it needs it if there is none left in the kernel noise pool. Even with fully random clients, however, they tend, statistically, over time, to the RUNS*1/RNG_RANGE formula for each output possibility. Luck applies per each individual chance. Statistically, as the number of blocks processed grows, it ceases to be a factor.
My key point, or key question....Do those with faster computers have an advantage, or do they not? In the general forums people claim that the "luck" factor makes up for this...but statistics beg to differ. Granted, and I do agree, the point is trading, not generation, but essentially with generation we're handing out free (though inflating) money. I would like to think that the process is equitable and not based upon one's ability to afford, in USD, a beast of a machine. This would loosely tie the initial distribution of BTC to the present distribution of USD of those willing to contribute...and seems to undermine the currency philosophically, apart from being unfair.
Thanks for all the hearty discussion on the matter, everyone.