Is the structure "can have verb-ed" possible?

I have seen and heard sentences like these:

He could have gone too far.

John can't have eaten all the cake.

But I don't seem to encounter this structure:

She can have done the work.

I tried Googling it and found some examples, but I'm still unsure if it's acceptable.

I understand that "may have verb-ed" and "might have verb-ed" are frequently used in English. So if, in contrast, "can have verb-ed" is never used or is considered awkward, what's the reason for this?


An excellent question, which merits more investigation than might be possible here. The short answer is that in contexts like this can’t is not the negative of can, but the negative of must when used for deduction, as in She can’t have done the work and John can’t have eaten all the cake. The main uses of can in its positive form are to express possibility and ability, but not deduction.


We do have a tendency to make this a conditional statement, thus: "She could have done the work." Although "she can have" is grammatically reasonable and valid, my feeling is that it is little used because the definitive nature of "can" seems to contrast with the conditional nature of the situation itself.

Let me try to elucidate: Merely saying she "can have done" something implies that she might not have done it. There is an embedded question: If we are not saying she "did" in fact do the thing, then why aren't we saying it in this definitive way? If we are saying that she "can" have done it ("she has the ability to have done it"), but we are not actually saying that she did it, then we start to wonder: Did she do it or not? We must at least be implying that she might not have done it. And that also implies that there might be some reason why she didn't do it, something that prevented her from doing it.

All of this uncertainty tends to lead us into a conditional mode of saying what we were trying to say in the first place, and we wind up saying "she could have done" the thing.

This is my best guess for why "can have done" isn't really favored in common usage, but as Bill Franke points out, it does occur, and it's not wrong.