There are 2^256 possible public keys.
We generate bitcoin addresses by hashing these public keys using SHA256 and then RIPEMD160.
Now, since 160 < 256 won't there necessarily be collisions - multiple public keys will have to map onto one bitcoin address?