* must have (participle) is used to express a certainty that something happened in the past, normally by deduction. For example: "There are shards of glass on the inside, the window must have been broken from the outside!"
* may/might/could have (participle) are used to express deduction about a possibility. For example: "He may have been drinking last night because he looks terrible today!"
* can't/couldn't have (participle) are used to express past impossibility by deducation. For example: "He can't have studied much for the exam because he failed horribly."
* should/shouldn't have are used to express criticism about something in the past, or to express an opinion that something should have been done differently. For example: "I shouldn't have had that last beer, I have a terrible headache today!"
When you finish reading this explanation, click the link to hide it before you attempt the exercices below.
Various answers are accepted for these questions, below are the best/most common correct answers.
1. must have got 2. can't have left 3. must have forgotten 4. may have left 5. should have studied 6. shouldn't have told 7. must have rained 8. shouldn't have drunk 9. must have spent 10. may have been (NB. "may be" in the present also would be possible, but the exercise asks for + have + verb) 11. must have come 12. should have done 13. must have had 14. must have put 15. should not have wasted 16. can't have been 17. must have trained 18. should not have eaten