Poiché questo non sembra essere stato ancora fatto, suggerirò una risposta da un punto di vista puramente teorico:
Sia X, Y due variabili casuali in {0,1} ^ n.
Sia f (x, y) = x XOR y
Ora, H (X, Y) = H (X) + H (Y | X) = H (Y) + H (X | Y), e poiché l'entropia dell'informazione è sempre non negativa, abbiamo H (X , Y) > = H (X) e H (X, Y) > = H (Y). Quindi la variabile casuale join (X, Y) ha almeno un'entropia pari a quella di ogni singola variabile casuale (l'uguaglianza si verifica quando una variabile casuale dipende perfettamente dall'altra).
Tuttavia, quando si applica una funzione a una variabile casuale, si riduce la sua entropia (nessuna riduzione se f è biiettiva, ma questo non è certamente vero per il nostro caso), quindi abbiamo H (f (X, Y)) < H (X, Y). Una prova è qui (domanda due).
Ora, la domanda di OP è se è possibile rendere H (f (X, Y)) più grande di entrambi H (X) e H (Y)? La risposta è sì.
Scriviamo X come (X_1, ..., X_n) e Y come (Y_1, ..., Y_n). Consideriamo ora un caso estremo in cui X_1 è costante e il resto dei bit sono iid Bernoulli con p = 0.5, e Y_1 è Bernoulli con p = 0.5 e indipendente da X, mentre gli altri bit di Y sono costanti, quindi H (X) = n-1, H (Y) = 1 e H (f (X, Y)) = n, maggiore di entrambi H (X) e H (Y).
Questa potrebbe non essere una risposta molto interessante, ma penso che risponda esattamente a ciò che l'OP chiede.
Modifica
Penso che una domanda che l'OP ha in mente sia: è possibile ottenere un numero casuale peggiore di entrambi gli input quando lo facciamo? La risposta è anche sì.
Considera X Bernoulli con p = 0.5. E Y = NON X. Prima di combinare X e Y, otteniamo H (X) = H (Y) = 1. Ma, X XOR Y == 1, quindi H (f (X, Y)) = 0! Oops ...
Quindi sicuramente non solo XOR arbitrariamente due numeri casuali e aspettati di ottenerne uno migliore.
EDIT 2:
Una discussione interessante di seguito ha fatto sorgere una domanda importante: se X e Y sono indipendenti, X XOR è almeno casuale come sia X che Y? Mark ha assolutamente ragione: la risposta è sì.
Ecco perché:
Prima nota che per qualsiasi due variabili casuali U e V, abbiamo H (U) > = H (U | V). L'uguaglianza vale quando U e V sono indipendenti. Intuitivamente, questo significa che conoscere qualcosa su V non fa mai male se stiamo cercando di scoprire dove si trova U. Una dimostrazione formale riduce H (U) -H (U | V) a una divergenza KL, che è sempre non negativa.
Ora, usando la stessa notazione di cui sopra, abbiamo:
H (f (X, Y), X) = H (f (X, Y) | X) + H (X) = H (X | f (X, Y)) + H (f (X, Y))
Poiché per ogni x fissa, abbiamo H (f (x, Y)) = H (Y) (attenzione: non vero per arbitrario f, ma abbiamo questo dato che abbiamo definito f (x, y) essere x XOR y), abbiamo H (f (X, Y) | X) = H (Y), e questo ci dà:
H (X) + H (Y) = H (X | f (X, Y)) + H (f (X, Y))
Ma poiché H (X) > = H (X | f (X, Y)), abbiamo:
H (Y) < = H (f (X, Y))
e per simmetria:
H (X) < = H (f (X, Y))
Quindi questa è una buona notizia. La cattiva notizia è che testare l'indipendenza non è probabilmente più facile che provare la casualità, se non più difficile. Quindi non ci aiuta tanto come sembra.
btw, come si sentono tutti a chiedere a SE di abilitare MathJax qui in modo che possiamo fare alcuni calcoli matematici quando necessario?