"can have done" and "could have done"?

Hi everyone, my name’s Linh. I have 2 english problems n wonder if someone can help me.

  1. What’s the differences between “can have done” and “could have done”?

  2. What’s the difference between this two sentences?

  • That weather affects a person’s mood is a belief generally held by pp who live in colder climates.
  • Weather affects a person’s mood is a belief generally held by pp who live in colder climates.
    Thank you so much for your help.

english-test.net/forum/ftopic7267.html

“I might do it” - The event of doing it is in the future, and you are still considering if you will do it or not.
“I may have done it” The event of doing it is in the past, and you cannot remember if you did it or not.
“I could do it”- You have the ability to do it. This is frequently used with an if-clause: I could do it if I wanted to. I could do it, if I had the proper tools.

  1. There is no different in meaning, but the second example is grammatically incorrect until you insert appropriate punctuation:
    “Weather affects a person’s mood,” is a belief generally held by people who live in colder climates.
    The second example sounds extremely clumsy though.

Unless someone can think of an example which hasn’t crossed my mind (an event which is not uncommon!) I don’t think “I can have done” is grammatically correct. “Could” is used with the past perfect subjunctive in the examples above.

Hi Linh,

‘Can’ has three main functions; (1) ability be able to (2) be possible that possibility (3) be allowed to permission. In all cases the following verb is in the infinitive. ‘Could’ suggests was able to or would be able to/ was possible that or would be possible that/ was allowed to or would be allowed to.

In your examples: ‘can have done’ there are 2 meanings: he is able to have done it/It is possible that he has done it. ‘Could have done it’ indicates he was able to do it or he would be able to do it/it was possible that he did it or it might be possible he did it/he was allowed to do it or he would be allowed to do it.

It is important to distinguish between the two ideas behind ‘could’ as in:

When he was young he could (was able to) swim for miles.

If he had the chance, he could (would be able to) swim the channel.

In answer to your second question about the two sentences I would suggest there is no basic difference in meaning. Putting ‘that’ at the beginning merely changes the emphasis and makes the statement more definite/dogmatic.

Alan

PS I can’t find any evidence of subjunctive in the examples.

Thank you so much for your explaination, Mr Alan.