Structure deduction in past - Modal + have/had + verb in past participle
Should(n´t) have
Should:
expressing obligation
Structure: should + infinitive form of a verb should be, should go, should do, etc.
We use should for the present and the future. We use shouldto give advice to someone and to say that something is a good idea. Should is weaker than have to and must.
You should tell them the truth. You shouldn't smoke; it's bad for you. I don't think you should do it.
Should have: expressing unfulfilled obligation in the past
Structure: should + (not) have + past participle of verb
We use should have to say that someone didn't do something, but it would have been the correct thing to do it.
You should have told them the truth. You shouldn't have gone there – it was a mistake. I don't think you should have done it.
We often use should haveto express regret about the past, or to say that we made a mistake.
I’m sorry for shouting at you – I shouldn’t have raised my voice.