Возьмите часто используемую двоичную хэш-функцию - например, SHA-256. Как следует из названия, он выводит 256-битное значение.
Пусть A - множество всех возможных бинарных значений в 256 бит. А очень большой, но конечный.
Пусть B - множество всех возможных двоичных значений. B бесконечен.
Пусть C - множество значений, полученных при запуске SHA-256 на каждом члене B. Очевидно, что это невозможно сделать на практике, но я предполагаю, что мы все еще можем сделать математический анализ.
Мой вопрос: По необходимости C ⊆ A. Но C = A?
EDIT: Как было отмечено некоторыми ответами, это полностью зависит от рассматриваемой функции. Итак, если вы знаете ответ для какой-либо конкретной хэш-функции, скажите об этом!