I should have studied last night, but I didn't.
I've come across this sentence in a grammar book. Why the present perfect is used after "should", but the past simple is used to say "I didn't"? The book doesn't explain this.
English Language Learners Stack Exchange is a question and answer site for speakers of other languages learning English. It only takes a minute to sign up.Sign up to join this community
should is a modal verb. You use should with the base form of a verb to give advice or an opinion. e.g. You should go to bed. -> Going to bed is a good thing to do or the right thing to do. If you want to talk about the past you use the structure should + have + 3rd form of the verb. You use should with have to say that something was expected to happen in the past, although it has not in fact happened. e.g.: You should have helped us. Why didn't you? You should have done something = You didn't do it, but it would have been the right thing to do.