must have + V(P.P): chắc hẳn là đã => Chỉ sự suy đoán logic dựa trên những hiện tượng có thật ở quá khứ
should have + V(P.P): Lẽ ra phải, lẽ ra nên => Chỉ một việc lẽ ra đã phải xảy ra trong quá khứ nhưng vì lý do nào đó lại không xảy ra.
Người ta hay dùng cấu trúc can’t have + V(P.P) để thể hiện 1 phỏng đoán về một việc không thể xảy ra trong quá khứ chứ không dùng can have. Bên cạnh đó người ta dùng could have + V(P.P): Có lẽ đã để diễn đạt một khả năng có thể ở quá khứ song người nói không dám chắc.
Dịch: Tom trông rất sợ hãi và buồn bã. Anh ấy chắc hẳn đã phải trải qua những điều khủng khiếp.