For the following question, given a collision resistant function f: \{0,1\}^{1000} \to \{0,1\}^{256}.
Define function g: \{0,1\}^{1000} \to \{0,1\}^{128} as follows:
for every x, g(x) first run f(x), cut it into two strings, and throw away the last half, i.e. g(x) outputs the first half of f(x).
Would g be collision resistant? Please explain your answer. (If your answer is \"yes\", please justify your reasoning;
otherwise, please give a counterexample.