may have done 推测过去
may have done 表推测时，隐含“不确定”。
might have done 表推测时，隐含的“不确定性”比“may have done”更深。
He may not have finished the work.
They may not have known it beforehand.
You might have read about it in the papers.
-Whatever has happened to George?
-I don't know. He may have got lost.
How quickly time passed! It might have happened yesterday.
He might have seen the surprise in my face.