Pres: can , should , must , can could , would , might , must
(theoretical) -------------------------------------------------------------------------------------- may, could, might
(factual) --------------------------------------------------------------------------------------
Past: could have, should have, _________ could may have , must have --------------------------------------------------------------------------------------
Past
Unfulfilled: could have, _________ _________ (could have) might have --------------------------------------------------------------------------------------
Pres: can , should , will*, could, may , shall*, might, would, should --------------------------------------------------------------------------------------
Past: could ________ would have ________ --------------------------------------------------------------------------------------
Past
Unfulfilled: could have, should have , (would have) could have, should have --------------------------------------------------------------------------------------
*Traditionally, will was reserved for promises, while shall was used for any other
expression of future willingness; however, this distinction has nearly disappeared
from the language, with will becoming the popular form for all expressions of
future.