tags:

views:

435

answers:

7

Given:

  • a sequence of random numbers
  • X clients select Y numbers from the sequence, forming their own sub-sequences
  • the rules governing the selection process is not known

Is there a mathematical property that guarantees that each client will end up with a random sequence of numbers? That is, is a subset of a random sequence also guaranteed to be random regardless of the selection process?

UPDATE: I was trying to establish if I could use a single random-number generator to dish out values to multiple clients: http://stackoverflow.com/questions/203382/do-stateless-random-number-generators-exist -- That is, clients choose elements from the sequence without replacement. That being said, I was wondering about the general case as well (when the selection rules are not known).

+8  A: 

The subset will not be random if the rules governing the selection process include awareness of the actual values (which might be the case since these rules are not known).

MusiGenesis
For example, if the "selection process" is "pick one, look at it, and if it isn't `42` then discard it and pick another until it **is** `42`".
ChrisW
@ChrisW: well spoke. :)
MusiGenesis
Right on MusiGenesis. I always chuckle when someone tells me to "just pick one at random"
EvilTeach
+2  A: 

No, because if both clients select the same or an near position to start the sequence both have the same data. Individually they have random data, but not if you respect more than 1 user.

Random data could only be generated if you make sure that every number can only be accessed by one user and then maybe be removed from the list. Of course in this case you could also just use a normal random-number generator.

Georg
Good point. I'm glad I read your answer twice, because the first time it didn't make sense to me.
MusiGenesis
I'm doing my best, but sometimes the English language prevents me from writing clearly. :)
Georg
You're doing fine - the lack of understanding was totally in my head. :)
MusiGenesis
A: 

If

  • the number of clients was random
  • the number of picks was random
  • the size of the first random sequence was random

Then... no it still doesn't seem like it would be because the client's number of picks might be larger than the first sequence, in which case the randomness would disappear because the client would have to decide what to do when it made a pick and got nothing.

Maybe it would work if the first sequence was of infinite size.

Edit: sorry, you're probably looking for something mathematical here, in the form of a proof. I have no such proof :)

jcollum
A: 

I think part of what makes a sequence random is the ability to run the same algorithm and get different, unpredictable results.

In your description, if you repeated the process and the same X clients selected Y numbers from the original sequence, would they select the the same subsequences, and therefore get repeatable, predictable results?

If so, I would say it does NOT seem to be a random process. If however, your subsequence selection contains an element of randomness to it, then the subsequences would vary on sequential, otherwise identical runs, and the subsequences could be considered random.

abelenky
+5  A: 

Yes, your sub-sequence will be random (joint entropy), assuming the one restriction on your selection criteria is that you "do not put anything back". In other words, you cannot preferentially filter the sub-sequence as you pick it. The type of selection is then irrelevant... you can always pick the odd bits or the even bits or the first 10 bits or however you want to pick, and your sub-sequence will have exactly that many bits of entropy.

Of course, picking the same bit over does not add to your total entropy, in that there is no entropy left in that bit to add to your system. But the way in which the bit was picked a second time (i.e. if it was a random pick) may itself add some entropy.

That said, there's likely to be a high degree of correlation between each of the sub-sequences that each client gets, for the obvious reason that they may be using identical or overlapping selection criteria.

nezroy
+2  A: 

Is there a mathematical property that guarantees that ...

Excepting the counter-examples like the ones which 'MusiGenesis' and 'gs' gave, I think that there is a mathematical property (axiom or theorum, I don't know which) in statistics: which says something to the effect that the statistical properties of a parent population are more-or-less-well reflected in the properties of a randomly selected sample.

ChrisW
+1  A: 

The word "random" in "a sequence of random numbers" is generally construed to mean that there is no additional information about any element of the sequence from looking at any other elements of the sequence. (i.e. the a priori and a posteriori probability distributions of element Xi are the same before and after studying any of the other elements.)

As long as none of the numbers are used by more than one client, you should be fine. (edit: and as others have mentioned, you can't decide to accept one of the elements after you look at its value.)

Jason S
In practise many random number generators will not display such ideal behaviour. You may wish to write your own mersenne twister; they're simple to implement.
Blank Xavier