1 & 2 - public key is generated from a private key. The private key can be used to generate a digital signature and a public key. So when you send some bitcoin with your digital signature, it can be verified that the bitcoin came from you. Because the the public key (or bitcoin address in this case) can be used with your digital signature to verify that you hold the private key.
You can also securely send someone a message encrypted with their public key than the person can unencrypt with their private key.
No one can determine your private key from your public key or digital signature. However the private key can be used to generate both the public key and digital signature. It only flows in 1 direction.