Хорошо, я все еще не уверен, что следую тому, что вы хотите. Похоже, вы хотите функцию
f : I & rarr; O
где входные данные представляют собой строго случайную (равномерное распределение и т. Д.) Последовательность символов в алфавите I = {1 .. n }. (Таким образом, серия случайных натуральных чисел ≤ n .) Выходными данными является другая последовательность на O = {1 .. m }, и вы хотите, чтобы эта последовательность имела столько энтропии, сколько входы.
Хорошо, если я правильно понял, прежде всего, если m , вы не можете. Если m , то lg m n , поэтому энтропия набора выходных символов меньше.
Если m ≥ n , вы можете сделать это тривиально, просто выбрав i th элемента {1 .. м }. Энтропия будет одинаковой, так как количество возможных выходных символов одинаково. Они не будут «случайными» в том смысле, что они будут равномерно распределены по всему набору {1 .. m }, хотя, потому что обязательно (принцип голубя) некоторые символы не будут выбраны в все.
Если, с другой стороны, вы будете удовлетворены случайной последовательностью {1 .. m }, то вы можете сделать это, выбрав подходящий генератор псевдослучайных чисел, используя ваш вход из случайный источник как семя.