Statement 1: Is correct
A hash function takes a message of arbitrary length and generates a fixed length code because it is working on method of (mod )
for example if we take (mod 10) then code will come in 0 ,1,2,3 …..up to 9 always so its give the fixed length
statement 2: statement 2 is contrapositive of S1 so if s1 IS true then 2 will be false
statement 3:a hash function may give the same hash value for distinct message
yes it may because its always generate fixed length so it will be possible