Đáp án D
Cấu trúc:
- may/ might (not) have Vpp/_ed: diễn đạt 1 sự suy đoán không chắc chắn, không có cơ sở ở quá khứ
- can + have + Vpp/_ed: dùng để diễn tả sự suy đoán có cơ sở ở quá khứ
- should + have + Vpp/_ed: lẽ ra đã nên, không nên làm gì (diễn tả sự chỉ trích, hay hối hận về việc gì đã xảy ra)
Tạm dịch: Tôi biết rằng hôm qua bạn đã không gặp tôi bởi vì tôi đang ở Hà Nội. Chắc hẳn là bạn đã không gặp tôi. -> suy đoán có cơ sở ở quá khứ.