Most people I know have strong views on forgiveness. We all hold ideas about what is forgivable and what is not, what it means about us if we forgive and if we don't, or what it means to be granted or denied forgiveness.
In the end though, forgiveness is a willingness to let go of our thoughts of hurt, anger, fear or sadness that surround an act. Once something is over in 'real time,' it is only kept alive by how willing we are to entertain it as a thought. If we were hurt, either emotionally or physically by someone, we suffer if we are not willing to drop our thoughts of it. In this sense, forgiveness is a beautifully selfish act. It allows us to let go and move on.
I have had clients point out to me that if they forgive someone who has hurt them, it signals that the behaviour, whatever it was, is acceptable. Actually, the behaviour is a completely separate issue. Some behaviour should never be tolerated. But, seeing that the behaviour, once steps have been taken to ensure it cannot be repeated, is no longer happening anywhere but in our heads, gives us the choice to either press 'repeat' over and over, and suffer as we re-experience it, or press the 'delete' button when the thoughts pop up. The choice really is ours to make, once we understand the nature of thought and how it is creating our experience.