「あのとき、もっと早く出発すればよかった」「彼は疲れていたはずだ」——こんなニュアンスを英語で表現しようとして、手が止まった経験はありませんか?そんなときに必要なのが、「助動詞+have+過去分詞」、いわゆる「モーダルパーフェクト」という構造です。must have done、should have done、could have done……これらを使いこなせると、英語表現の幅が一気に広がります。まずは土台となる「なぜこの形が生まれるのか」をしっかり理解しましょう。
そもそも『助動詞+完了形』とは何か?構造と時制のしくみを理解する
現在の推量 vs 過去の推量:must と must have done の決定的な違い
助動詞 must には「〜に違いない」という推量の意味がありますが、単独では現在のことしか表せません。「あのとき〜だったはずだ」と過去を推量したいとき、must の後ろに have+過去分詞を加えることで、評価の視点を過去へ遡らせることができます。
| 形 | 例文 | 意味 |
|---|---|---|
| must+動詞の原形 | He must be tired. | 彼は(今)疲れているに違いない |
| must+have+過去分詞 | He must have been tired. | 彼は(あのとき)疲れていたに違いない |
| should+動詞の原形 | You should leave now. | (今)出発すべきだ |
| should+have+過去分詞 | You should have left earlier. | もっと早く出発すべきだった(のにしなかった) |
『助動詞+have+過去分詞』が生まれる理由:時制を遡る仕組み
助動詞は本来、時制を持ちません。過去形に見える could や would も、厳密には「過去の出来事を直接表す」ものではなく、「現在から距離を置いた仮定・丁寧さ」を示すものです。そこで「過去の出来事に対して何らかの評価を下す」ために、完了形(have+過去分詞)を組み合わせる必要が生じます。
【助動詞】+【have】+【過去分詞】という3つのブロックで成立します。助動詞が「話し手の判断・評価」を担い、have+過去分詞が「それが過去の出来事である」ことを示します。この2つの役割が組み合わさることで、「過去の出来事への評価・推量」が表現できるのです。
モーダルパーフェクトが使われる3つの文脈(推量・後悔・可能性)
助動詞+完了形が登場する場面は、大きく3つのカテゴリに分けられます。この記事全体はこの3つを軸に展開していきます。
- 過去の推量:must have done(〜だったに違いない)、can’t have done(〜だったはずがない)など、過去の状況を証拠から判断する
- 過去への後悔・非難:should have done(〜すべきだった)、shouldn’t have done(〜すべきでなかった)など、実際とは異なる行動を評価する
- 実現しなかった可能性:could have done(〜できたはずだ)、would have done(〜しただろう)など、条件次第で起こり得た出来事を表す
構造さえ理解すれば、どの助動詞でも同じロジックで応用できます。まずは「助動詞+have+過去分詞=過去への評価」という公式を頭に入れておきましょう。
must have done:「〜だったに違いない」過去の強い推量を使いこなす
must have done の意味と確信度:なぜ「に違いない」と言えるのか
must have done は、目の前の証拠や状況から論理的に導かれる、90%以上の確信を持った過去の推量を表します。「なんとなくそう思う」ではなく、「これだけの根拠があるのだから、そうに違いない」という強い確信がポイントです。
たとえば、帰宅したら部屋の電気が消えていて、コートも玄関にない——こんな状況を見れば「彼はもう帰ったに違いない」と推論できますよね。この推論プロセスこそが must have done の本質です。「証拠あり→高確信→must have done」という流れを意識してください。
must have done =「証拠・状況から論理的に導かれる高確信の過去推量」。感覚ではなく根拠があるときに使う表現です。
確信度のグラデーションを整理すると、次のようになります。助動詞によって話し手の確信の強さが変わることを意識しましょう。
| 表現 | 確信度の目安 | 日本語訳 |
|---|---|---|
| might have done | 約30〜40% | 〜だったかもしれない(弱い推量) |
| may have done | 約50% | 〜だったかもしれない |
| should have done | 約70〜80% | 〜だったはずだ |
| must have done | 約90%以上 | 〜だったに違いない(強い推量) |
否定形 can’t have done / couldn’t have done との使い分け
「〜だったはずがない」と言いたいとき、must not have done を使うのは誤りです。must not have done は「〜してはいけなかった(義務の否定)」という意味になってしまいます。否定の推量には必ず can’t have done または couldn’t have done を使いましょう。
肯定と否定でペアになる表現を覚えておくと便利です。
- 肯定の強い推量:He must have left already.(もう帰ったに違いない)
- 否定の強い推量:He can’t have left yet.(まだ帰ったはずがない)
実践例文で確認:日常会話・ビジネス・受験での頻出パターン
場面ごとの例文を確認して、実際の使い方を体感しましょう。
日常会話
She didn’t answer my calls all day. She must have been really busy.
(一日中電話に出なかった。よほど忙しかったに違いない。)
ビジネスシーン
The client accepted our proposal so quickly. They must have liked our presentation.
(クライアントがすぐに提案を受け入れた。プレゼンが気に入ったに違いない。)
TOEIC Part 5・大学受験の空所補充パターン
The report was submitted before the deadline, so the team ( ) worked overtime last night.
(レポートが期限前に提出されたので、チームは昨夜残業したに違いない。)
正解:must have
試験では「証拠・結果を示す文脈+過去の出来事」という組み合わせが must have done を選ぶサインです。文脈から確信度を読み取る練習を積み重ねることが、得点アップへの近道です。
should have done:後悔・非難・義務の未達成を英語で表現する
should have done の核心:「すべきだったのにしなかった」後悔と非難
should have done は、「本来そうすべきだったのに、実際にはしなかった」という義務・期待の未達成を表す表現です。must have done が「証拠からの推量」だったのに対し、should have done には必ず話者の感情——後悔や非難——が伴います。この感情の有無が最大の違いです。
主語が「I / We」なら自分への後悔、「You / He / She / They」なら他者への非難になるのが基本パターンです。同じ構造でも主語が変わるだけで、ニュアンスが大きく切り替わります。
I should have studied harder for the exam.(試験のためにもっと勉強すべきだった。)→ 自分への後悔
You should have called me earlier.(もっと早く電話すべきだったのに。)→ 相手への非難
shouldn’t have done:「すべきでなかったのにした」自責と他責
否定形の shouldn’t have done は、「実際にやってしまったが、やるべきではなかった」という意味になります。「余計なことをしてしまった」という後悔や、相手の行動への批判を表す場面で使います。
I shouldn’t have eaten so much.(あんなに食べるべきじゃなかった。)→ 自責
He shouldn’t have said that in the meeting.(彼は会議であんなことを言うべきじゃなかった。)→ 他者批判
ought to have done との違いと使い分け
ought to have done は should have done とほぼ同じ意味ですが、よりフォーマルで客観的・道徳的な響きがあります。個人的な感情より「社会的・倫理的に見てそうすべきだった」というニュアンスが強く、書き言葉や改まった場面でよく使われます。
| 表現 | ニュアンス | 使われやすい場面 |
|---|---|---|
| should have done | 後悔・個人的な非難 | 日常会話・口語 |
| ought to have done | 客観的・道徳的な義務の未達成 | フォーマル・書き言葉 |
感情ニュアンスの強さをコントロールする:後悔 vs 軽い批判 vs 強い非難
should have done は文脈・イントネーション・追加表現によって感情の強さが変わります。以下の感情スケールを意識すると使い分けが明確になります。
- 【後悔】I should have left earlier.(もっと早く出ればよかった。)— 自分に向けた静かな後悔
- 【軽い批判】You should have checked the deadline.(締め切り確認しておくべきだったよ。)— やんわりした指摘
- 【強い非難】You should have known better than that!(そんなこと、分かっていたはずでしょう!)— 強い叱責・怒りを伴う非難
試験では「It was wrong of him to lie.」と「He shouldn’t have lied.」が同義として書き換え問題に頻出です。「It was wrong of + 人 + to do」は「〜するとは(人として)よくなかった」という意味で、shouldn’t have done とほぼ同じ内容を表します。この対応関係をしっかり押さえておきましょう。
- It was wrong of her to ignore the warning. = She shouldn’t have ignored the warning.
- It was careless of him to forget the documents. = He shouldn’t have forgotten the documents.
could have done・might have done:実現しなかった可能性と控えめな推量
could have done の2つの顔:「できたはずなのにしなかった」と「〜だった可能性がある」
could have done には、まったく異なる2つの意味があります。文脈を読み間違えると意味が逆転してしまうので、しっかり区別しましょう。
1つ目は「実現しなかった可能性・非難」の用法です。「できたのにしなかった」という話者の不満や批判が込められています。
You could have called me! (電話できたでしょう!)
She could have warned us earlier. (もっと早く警告できたはずだ。)
2つ目は「過去の可能性の推量」の用法です。証拠は乏しく、あくまで「そういう可能性もあった」という控えめな見方を示します。
It could have been an accident. (事故だった可能性もある。)
The noise could have been the wind. (あの音は風だったかもしれない。)
非難・後悔の用法では「あなた/彼女」など特定の人物が主語になり、感情的なトーンが伴います。推量の用法では「it」など状況を指す主語が多く、話者は客観的な立場です。
might have done:過去の低い確率の推量と後悔のニュアンス
might have done は、must have done より確信度がずっと低い過去推量です。「もしかしたら〜だったかもしれない」という50%以下の可能性を示します。could have done の推量用法とほぼ同義ですが、might の方がやや確信度が低い印象を与えます。
She might have missed the train. (電車に乗り遅れたかもしれない。)
I might have left my keys at the office. (鍵をオフィスに置いてきたかもしれない。)
could have done vs should have done:可能性と義務の違いを整理する
この2つは形が似ているため混同しやすいですが、意味の核心がまったく異なります。could は「能力・可能性」、should は「義務・期待」がベースです。
| 表現 | 核心の意味 | 感情 | 例文 |
|---|---|---|---|
| could have done | できた(能力・可能性)のにしなかった | 非難・残念 | You could have helped. |
| should have done | すべきだった(義務・期待)のにしなかった | 後悔・非難 | You should have helped. |
“You could have helped.” は「手伝う能力があったのに」、”You should have helped.” は「手伝う義務があったのに」というニュアンスです。後者の方が責任を強く問う表現になります。
would have done:仮定法過去完了との接続と条件節なし用法
would have done は仮定法過去完了の帰結節として使うのが基本です。「もし〜だったなら、〜していただろう」という構造です。
If I had known, I would have called you. (知っていたら、電話していたでしょう。)
ただし、条件節なしで単独でも使えます。この場合は「(普通なら)〜していたでしょう」という過去の推測や、暗黙の条件を含んだ表現になります。TOEICのリスニングでも頻出です。
I would have told you, but I didn’t know myself. (言いたかったのですが、私自身知らなかったのです。)
That would have been a great opportunity. (それは素晴らしい機会だったでしょう。)
確信度×感情の全体比較:4つの助動詞+完了形を一覧で整理
| 表現 | 確信度 | 主な意味 | 感情 |
|---|---|---|---|
| must have done | 90%以上 | 〜だったに違いない(推量) | 確信・驚き |
| should have done | — | すべきだったのにしなかった | 後悔・非難 |
| could have done | 30〜50% | できたのにしなかった/可能性があった | 非難・客観的推量 |
| might have done | 20〜40% | 〜だったかもしれない(低確率推量) | 控えめ・不確か |
TOEICリスニングでは “She could have taken a different route.” や “He might have already left.” のような会話文が頻出。文脈から「推量」か「非難」かを素早く判断する練習を積もう。
場面別・感情別で選ぶ!モーダルパーフェクト使い分けチートシート
状況から逆引き:推量・後悔・非難・可能性——どの表現を使うべきか
「あの状況、英語でどう言えばいい?」という疑問に答えるのが逆引きアプローチです。話者が「何を伝えたいか」という意図を起点に、使うべき表現を選ぶのがモーダルパーフェクト習得の最短ルートです。
| 伝えたい意図 | 使う表現 | 例文 |
|---|---|---|
| 過去の出来事をほぼ確信して推量する | must have done | He must have left already. |
| 過去の可能性を控えめに推量する | might / could have done | She might have missed the train. |
| しなかったことへの後悔を表す | should have done | I should have studied harder. |
| 相手の行動を非難・批判する | shouldn’t have done | You shouldn’t have said that. |
| できたのにしなかった(残念・非難) | could have done | You could have called me. |
| 過去の出来事を強く否定して推量する | can’t / couldn’t have done | He can’t have done that alone. |
「推量」か「感情(後悔・非難)」かを先に判断すると、表現選びがぐっとラクになります。
日常会話での自然な使い方:独り言・対話・メールでの活用例
同じ表現でも、場面によって自然な言い回しが変わります。3つの場面別に確認しましょう。
- 独り言(後悔): “I should have brought an umbrella…” (傘を持ってくればよかった……)
- 友人への愚痴(非難): “He could have at least texted me.” (せめてメッセージくらい送れたはずなのに)
- ビジネスメール(丁寧な推量): “There might have been a misunderstanding.” (行き違いがあったかもしれません)
ビジネス文書では must have done より might have been / could have been のほうが断定を避けられるため好まれます。相手を責める shouldn’t have done はメールでは避け、口頭でも親しい間柄に限るのが無難です。
受験・TOEIC頻出パターン:空所補充・誤文訂正・言い換え問題を攻略
試験では書き換えパターンとひっかけの2軸で出題されます。大学受験の定番書き換えとTOEICの誤文訂正、両方をまとめて押さえましょう。
大学受験:頻出書き換えパターン
- It is certain that he was there. = He must have been there.
- It is impossible that she said that. = She can’t have said that.
- I regret that I didn’t call him. = I should have called him.
練習問題:空所補充にチャレンジ
次の日本語の意味に合うよう、空所に適切な語句を入れてください。
- 彼は昨夜そのメールを読んだに違いない。 → He ( ) the email last night.
- もっと早く出発すればよかった。 → I ( ) earlier.
- 彼女がそんなミスをしたはずがない。 → She ( ) such a mistake.
- 君は黙っていることもできたのに。 → You ( ) quiet.
- 彼らはまだ到着していないかもしれない。 → They ( ) yet.
- must have read(証拠のある強い確信)
- should have left(しなかったことへの後悔)
- can’t have made(過去の事実への強い否定推量)
- could have stayed(できたのにしなかった・非難)
- might not have arrived(控えめな否定推量)
- must not have と can’t have はどう違うの?
-
can’t have done は「〜したはずがない」という強い否定推量です。一方 must not have done は「〜しなかったに違いない」という肯定方向の確信(しなかった事実への推量)を表します。TOEICでは「強い否定推量=can’t have」と覚えておけば失点を防げます。
- could have done と might have done は交換できる?
-
推量の意味では「〜だった可能性がある」としてほぼ互換できます。ただし could have done には「できたのにしなかった」という非難・残念のニュアンスが加わる場合があるため、文脈で判断が必要です。might have done にはその含意はありません。
- should have done と ought to have done は同じ意味?
-
ほぼ同じ意味で使えます。どちらも「すべきだったのにしなかった」という後悔・非難を表します。ただし ought to have done はやや格式張った表現で、日常会話では should have done のほうが自然です。試験では書き換え問題で問われることがあります。
まとめ:助動詞+完了形をマスターして表現の幅を一段階広げよう
ここまで must have done・should have done・could have done・would have done の4表現を学んできました。これらをひとまとめに「モーダルパーフェクト」と呼び、過去の出来事に対する話者の判断・感情を表すのが最大の特徴です。それぞれの核心を5秒で思い出せるキーワードとして整理しておきましょう。
各表現の核心イメージを再確認:5秒で思い出せるキーワード整理
- must have done =「確信」:証拠から過去の出来事を強く断定する
- should have done =「後悔・非難」:すべきだったのにしなかった(またはその逆)
- could have done =「未実現の可能性」:できたのにしなかった、あるいは低確率の推量
- might have done =「控えめな推量」:もしかしたら〜だったかもしれない
- would have done =「仮定の帰結」:もし〜だったなら、〜していただろう
迷ったときは「話者が何を伝えたいか」に立ち返るのが最速の解決策です。断定したいなら must、後悔・非難なら should、未実現の可能性を示すなら could、仮定の結果を語るなら would——この軸を頭に入れておくだけで、とっさの場面でも適切な表現を選べるようになります。
次のステップ:仮定法・時制の一致との接続で理解をさらに深める
モーダルパーフェクトを習得したら、次は2つのテーマへ進むのがおすすめです。would have done は仮定法過去完了(If I had done … , I would have done …)の帰結節そのものであり、条件節と組み合わせることで表現の精度が飛躍的に上がります。また、時制の一致のルールを理解すると、間接話法で「彼は〜したに違いないと言った」などの複雑な文も自在に作れるようになります。
- 仮定法過去完了:If節+would have done の構造を徹底理解する
- 時制の一致:間接話法でモーダルパーフェクトがどう変化するかを確認する
- 混合仮定法:過去の条件が現在の結果に影響するパターンを学ぶ
知識を定着させるための日常習慣としては、日記や独り言英語が効果的です。「今日こうすればよかった」と感じた出来事を I should have done … や I could have done … で書き留めるだけで、実際の感情と表現が結びつき記憶に残りやすくなります。文法書を読み返すより、自分の体験に紐づけた一文を毎日1つ作る練習が、長期的な習得への近道です。
モーダルパーフェクトは「過去への気持ち」を英語で表す最強ツール。キーワードを軸に、仮定法・時制の一致へと学習を広げていきましょう。

