Modals of deduction: must / might / can't have
English uses "must have," "might/may/could have," and "can't/couldn't have" + past participle to express how certain we are about something that happened in the past, based on the evidence we have.
Certainty about the past: must have + past participle
When we are almost sure something happened because the evidence points strongly to it, we use "must have" followed by a past participle. This is a logical conclusion, not a fact we directly witnessed. We use it when we feel confident the conclusion is the only sensible explanation.
- •The ground is wet, so it must have rained last night.
- •She didn't answer, so she must have been asleep.
- •You passed the exam? You must have studied really hard.
- •They must have left already; the lights are off.
Possibility about the past: might / may / could have + past participle
When something was possible but we are not sure it happened, we use "might have," "may have," or "could have" with a past participle. These three are very close in meaning and all express uncertainty about a past event. They show that we are guessing among several possible explanations.
- •I can't find my keys; I might have left them at the office.
- •He's late. He may have missed the bus.
- •The noise could have been the cat, but I'm not certain.
- •She didn't reply, so she might not have seen the message.
Impossibility about the past: can't / couldn't have + past participle
When we are almost sure something did NOT happen because it seems impossible, we use "can't have" or "couldn't have" with a past participle. This is the strong negative of "must have" and expresses confident disbelief. Note that we use "can't have," not "mustn't have," for this meaning.
- •He can't have finished already; he only started ten minutes ago.
- •She couldn't have stolen it; she was with me all evening.
- •You can't have seen Tom yesterday — he's been abroad all week.
- •They couldn't have heard the alarm, or they would have left.