网友对情态动词的推测性用法有很深的误解,导致你对问题的描述十分混乱。
1 情态动词的推测性用法,是指说话人主观推测某件事在过去发生了、在现在正在发生、或者在将来可能会发生。由于说话人不是谈论确定无疑的事实,而是在进行推测,所以谓语需要用表示推测意义的情态动词。
2 说话人站在现在的立场对过去的情况进行推测时,要用情态动词+have done形式。情态动词可以根据说话人推测时的不同信心程度而使用must, will, would, should, could, may, might等。例如:如果说话人确切知道汤姆昨天离开这个事实,就无须推测,而直接用一般过去时表示这个过去事实:Tom left yesterday.
如果说话人并不是确切知道这个事实,而是进行推测,则为:
Tom must/will/would/couuld/may/might have left yesterday.
推测性用法表示说话人推测这件事在过去发生了。
3 定语从句由关系词引导,关系代词为指代词,不是替代词。换句话说,关系代词和先行词共指同一个/同一些人或事物。这一点网友一定要清楚。现在看网友的句子:
People are recycling many things which they would have thrown away in the past
which指代many things. many things是现在人们正在再利用的东西。这些东西可能在过去被人们扔掉了吗?如果已经扔掉了还怎么再利用?所以,定语从句谓语would have thrown away表示的是与事实相反的假设而推理出来的情形。即要是现在不是现在而是过去,这些东西就已经被扔掉了。但事实是,现在是现在,不是过去,所以这些东西没有被扔掉,而是在再利用。所以,这个定语从句的谓语动词形式为虚拟语气,表示与过去事实相反的假设。从句隐含一个if虚拟条件句,If we had been in the past, people would have thrown away these things.
4 将这个定语从句谓语形式分析为情态动词的推测性用法是错误的。这一点很好证明。我们知道,表示对过去情况进行推测,用情态动词+have done形式。不同情态动词只是表示说话人推测时的不同信心程度。我们试着用must, will, may 来替换would, 看这个句子是否还成立:
People are recycling many things which they must have thrown away in the past.
People are recycling many things which they will have thrown away in the past.
People are recycling many things which they may have thrown away in the past.
以上三句中定语从句的谓语形式都是错误的。由此就可以排除原句的would have done为推测性用法。
5 People are recycling many things which they threw away in the past.
那么这个句子正确吗?这取决于说话人想要表达什么意思。如果说话人表示的是人们把过去扔掉了的东西捡了回来,加以再利用,这个句子就是正确的句子。
但这显然不是我们通常理解的意思。如果说话人想要表示的是:过去会被扔掉的东西,现在人们在再利用。那么这个句子就是错误,定语从句谓语形式错误!因为逻辑上,人们现在再利用的东西并不是已经在过去被扔掉的东西。定语从句一般过去时使用错误。这个句子就要改为网友原来的句子,即:
People are recycling many things which they would have thrown away in the past.