最近有同学在外刊社群里面问到了一个问题:
有疑问的是这一个句子:
Astronauts and cosmonauts commute to an International Space Station that has little purpose beyond providing a destination for their capsules, whose design would have been familiar in the 1960s.
后半句中whose指代capsules,would have done在这里表示一种猜测用法,即“这些太空舱的设计在上世纪60年代的人看来可能会很熟悉”,作者在这里使用would have done的猜测用法来表达对过去数十年间太空技术发展的失望:即使是今天的飞船在上世纪60年代的人眼中也平平无奇。
很多同学因为受到虚拟语气用法的影响,会认为像would/could/might have done这样的结构只能用来表示与过去事实相反的假设情况。实际上,情态动词+have done还可以用来表示对事物的推测。
举个例子,新概念3第一课里面就有这样的句子:
As no pumas had been reported missing from any zoo in the country, this one must have been in the possession of a private collector and somehow managed to escape.
(由于全国的动物园没有一家报告丢了美洲狮,因此那只美洲狮一定是某位私人收藏家豢养的,不知怎么设法逃出来了)
这里使用must have been来对美洲狮的来源进行推测。第三课里面有这样的句子:
The city at one time must have been prosperous, for it enjoyed a high level of civilization.
(这座古城肯定一度很繁荣,因为它曾享有高度的文明)
这里must have been是对过去的推测。BBC新闻里面也有这样一个句子:
She showed a firm command of the issues, which she effectively mixed with personal touches. While citing her daughter, who died of drug addiction, during a question on marijuana legalisation could have seemed forced, her answer came across as sincere.
句子意思是:她对这些议题展现出了熟练的掌控度,并有效地将它们和个人风格相结合。在关于大麻合法化的问题上她提到了自己因吸毒而丧生的女儿,尽管这一做法可能会显得做作,但她的回答给人的感觉很真诚。
这里作者用could have seemed forced来推测引用女儿案例可能会给人带来的不真诚感觉。
除了“情态动词+have done”之外,我们也可以用“情态动词+do”或者“情态动词+be doing”来表示对事物的肯定推测,比如:
(1) His fans would already be familiar with Caroline. 他的崇拜者们肯定已经很熟悉卡罗琳了。
(2) The bus must be coming soon. (公交车估计很快就要来了)
值得注意的一点是,must表示推测时一般不用于否定句和疑问句,它的否定形式常用can’t/couldn’t,比如我们可以说:
Where can John have put the matches? He can’t have thrown them away. (约翰能把火柴放在哪儿呢?他应该不会把它们扔掉的)
He couldn't have been more than fourteen years old. (他不可能超过14岁。)
这里不能说:He mustn’t have thrown them away. / He mustn’t have been more than fourteen years old. 因为mustn’t通常用来表示强烈的禁止意味(used in negative sentences to say that something should not happen, because of a rule or law or because of the situation),比如:You mustn’t use the office phone for private calls.