Home › B2 › Grammar › Must have, might have, can’t have

Must have, might have, can’t have

B2  B2 grammar · lesson 10 of 21

In B1 you used must, might and can’t to guess about the present. Now you learn to make logical guesses about the past using these modals with have + past participle.

Rule

To make a deduction (a logical guess) about the past, use modal + have + past participle. The modal shows how sure we are.

How sure?ModalExample
about 100% yesmust have + past participleThe ground is wet. It must have rained.
perhapsmight / may / could have + past participleShe might have missed the bus.
perhaps notmight not / may not have + past participleHe may not have seen your message.
about 100% nocan’t / couldn’t have + past participleYou can’t have seen Tom. He’s abroad.

The opposite of must have is can’t have or couldn’t have, not mustn’t have.

Lucy isn’t answering her phone. She must have gone to bed.

I can’t find my keys. I might have left them at work.

Ali could have taken the wrong train. That’s why he’s late.

They can’t have finished already. They only started ten minutes ago.

Mia may not have heard the doorbell. Ring it again.

The window is broken. Someone must have thrown a ball.

He couldn’t have stolen the money. He was with me all day.

Continuous form

For an action in progress at a past time, use modal + have been + -ing: She didn’t answer. She must have been sleeping. For a passive meaning, use have been + past participle: The letter might have been sent to the wrong address.

Tip: Use the evidence you have. Strong evidence → must have. No real evidence, just an idea → might/could have. Evidence that it is impossible → can’t have.

Common mistakes

✗ He mustn’t have seen me. (meaning: I’m sure he didn’t)

✓ He can’t have seen me.

✗ She must had forgotten.

✓ She must have forgotten.

✗ They might have went home.

✓ They might have gone home.

✗ You must be very tired yesterday.

✓ You must have been very tired yesterday.

Be careful: could have can also mean a past chance that we did not use (You could have called me!). You will study this meaning in the next lesson.

Practice: 10 questions