苦手な人が多い、英文法の難しい単元を分かりやすく解説する「英文法の苦手を克服」シリーズです。今回は「助動詞+have+過去分詞」です。高校の英文法「助動詞」の単元で扱う項目ですね。
「助動詞と完了形合体してる?」
「助動詞+have+過去分詞(完了形?)がたくさんあって分からない」
「助動詞+現在完了形?」
など、こんがらがっている人もいるかもしれません。この機会にしっかりと理解しましょう。
結論から言うと、助動詞+have+過去分詞は、過去のことについての推量や、過去の行為についての非難や後悔を表す形です。この記事では、9つの形を一覧表と図で整理し、例文で訳し方を確認します。間違えやすいポイントと、確認問題5問も用意しました。
助動詞+完了形(have+過去分詞)の一覧
まず、助動詞+have+過去分詞(p.p.)の一覧を紹介します。
| 形 | 意味 | グループ |
|---|---|---|
| may have+過去分詞 | ~したかもしれない、~だったかもしれない | 推量 |
| might have+過去分詞 | ~したかもしれない、~だったかもしれない | 推量 |
| could have+過去分詞 | (理屈から、客観的に考えて)~したかもしれない/~できたのに(しなかった) | 推量/後悔・非難 |
| must have+過去分詞 | ~したに違いない、~だったに違いない | 推量 |
| cannot(can’t)have+過去分詞 | ~したはずがない、~だったはずがない | 推量 |
| should have+過去分詞 | ~したはずだ、~だったはずだ/~すべきだったのに(しなかった) | 推量/後悔・非難 |
| ought to have+過去分詞 | should have+過去分詞とほぼ同じ | 推量/後悔・非難 |
| should not(ought not to)have+過去分詞 | ~すべきではなかったのに(してしまった) | 後悔・非難 |
| need not have+過去分詞 | ~する必要はなかったのに(してしまった) | 後悔・非難 |
たくさんあるように見えます。ですが、「過去の推量」と「過去の行為についての後悔・非難」の2つのグループに分けると、整理しやすくなります。

以下、ひとつひとつ詳しく見ていきましょう。
助動詞+完了形(have+過去分詞)の使い方・訳し方
have+過去分詞が付くと意味がどう変わる?
助動詞に have+過去分詞がつくことによって、過去のことを表せるようになります。具体的には、「過去のことについての推量や、過去の行為についての非難や後悔を表す」ことができます。
- He must be tired.
(彼は疲れているに違いない。) - He must have been tired.
(彼は疲れていたに違いない。)
助動詞の後ろには、動詞の原形しか置けません。そのため、過去形の代わりに have+過去分詞を置いて、「1つ前の時」のことだと示すわけです。
ポイントは、「〜に違いない」と判断しているのは今で、判断している内容が過去だということです。

不定詞や動名詞などでも、完了形を使うことで時制をずらすことがあります。この助動詞+完了形も同じですね。
助動詞の意味を確認
- may(~かもしれない)
- must(~にちがいない)
- should(~すべきだ、~のはずだ)
- can(~の可能性がある)
- need(~する必要がある)
「助動詞+完了形」が分からないという人は、助動詞の意味を覚えていないだけのことも多いです。
「can=~できる」「must=~しなければならない」のように、各助動詞の意味を1つしか覚えていない場合もあるでしょう。その場合は、上記の「可能性・推量」を表す用法なども覚えておきましょう。助動詞+完了形では、こちらの意味が表されます。
過去の推量を表す助動詞+完了形(〜したかもしれない・〜したに違いない)
1つ目のグループは「過去の推量」です。今の時点から、過去のことを「〜だったかもしれない」「〜だったに違いない」と推し量ります。
may have+過去分詞(~したかもしれない、~だったかもしれない)
- He may have been at home.
(彼は家にいたかもしれない。)
過去のことに対する推量を表します。
might have+過去分詞(~したかもしれない、~だったかもしれない)
- He might have been at home.
(ひょっとしたら彼は家にいたかもしれない。)
助動詞が過去形になっているので、控えめな表現になります。may の場合よりも可能性が下がる感じです。
ただし、日常会話では may have と might have がほぼ同じ意味で使われることも多いようです。
could have+過去分詞((理屈から、客観的に考えて)~したかもしれない、~だったかもしれない)
- You could have left your bag in the shop.
(あなたはその店にかばんを忘れたのかもしれない。)
過去に対する推量ですが、こちらは客観的に考えた可能性を述べる表現です。
must have+過去分詞(~したに違いない、~だったに違いない)
- She must have known the truth.
(彼女は真実を知っていたに違いない。)
過去のことに対する確信を表します。
cannot(can’t)have+過去分詞(~したはずがない、~だったはずがない)
- It cannot have been true.
(それは本当だったはずがない。)
cannot(can’t)で「~のはずがない」という意味を表します。それに完了形がくっついて、過去のことについての表現になります。
確信の強さの目安:must have・may have・can’t have
推量のグループは、話し手がどれくらい確信しているかで使い分けます。must have が最も強く、can’t have は「ほぼありえない」という強い否定です。

パーセンテージのような正確な数字があるわけではありません。あくまで目安として、強さの順番をつかんでおきましょう。
過去の後悔・非難を表す助動詞+完了形(〜すべきだったのに)
2つ目のグループは、過去の行為についての後悔や非難です。裏には「実際はしなかった(してしまった)」という事実があります。
should have+過去分詞(~したはずだ、~だったはずだ、~すべきだったのに(しなかった))
こちらは2パターンあります。
- The game should have started at noon.
(その試合は正午に始まっていたはずだ。)
1つ目は、完了の予想を表す用法です。この例文は「~したはずだ」という予想なので、実際にそうなっていなかった可能性もあります。
さらに、予想したことと結果が違ったことを表す場合もあります。「~するはずだったのに(実際はしなかった)」という意味です。
- You should have told the truth.
(あなたは真実を話すべきだったのに(実際は話さなかった)。) - I should have studied harder.
(もっと勉強しておけばよかった。)
2つ目は、過去に行われたことについての非難や後悔を表す表現です。相手に言えば非難、自分のことなら後悔になります。
should not(ought not to)have+過去分詞(~すべきではなかったのに(してしまった))
- You should not have told the truth.
(あなたは真実を話すべきではなかったのに(実際は話してしまった)。)
過去に行われたことについての非難や後悔を表す用法です。
need not have+過去分詞(~する必要はなかったのに(してしまった))
- You need not have hurried.
(あなたは急ぐ必要はなかったのに(実際は急いだ)。)
実際に行われたことについて、する必要はなかったということを表します。
could have+過去分詞(~できたのに(しなかった))
- You could have called me.
(電話してくれればよかったのに。) - We could have won the game.
(あの試合は勝てたのに。)
過去にできたはずのことを、実際にはしなかった(できなかった)ときに使います。相手に向けて言うと、「〜してくれてもよかったのに」という軽い非難になります。
推量の could have と形は同じなので、どちらの意味かは文脈で判断します。
そのほかの助動詞+完了形(will have・would have)
will have+過去分詞(未来完了形)
- The concert will have finished by three.
(コンサートは3時までには終わってしまっているだろう。)
未来完了形も「助動詞+完了形」の1つですので紹介しておきます。未来完了形は「未来のある時点で完了したこと」などを表すので、過去のことは表しません。
would have+過去分詞(~しただろうに)
- If I had known, I would have told you.
(知っていたら、あなたに伝えたのに。)
仮定法過去完了で、過去の事実と違うことを仮定するときに使います。同じ形で、could have(~できただろうに)や might have(~したかもしれないのに)も使われます。
よくある間違い:助動詞+現在完了形ではない
「助動詞+現在完了形」ではない
must have been は、現在完了の have been に must がついた形に見えます。ですが、助動詞の後ろの have+過去分詞は、過去のことを表すための形です。「ずっと〜している」のような現在完了の意味はありません。
そのため、yesterday のような過去を表す語と一緒に使えます。現在完了では、これはできません。
- ○ He must have been busy yesterday.
(彼は昨日忙しかったに違いない。) - × He has been busy yesterday.(現在完了は yesterday と一緒に使えない)
「~したはずがない」は mustn’t have ではなく can’t have
must have(~したに違いない)の反対は、can’t have(~したはずがない)です。must not は「~してはいけない」という禁止の意味が中心なので、強い否定の推量には can’t を使います。
- He can’t have done it.
(彼がそれをしたはずがない。)
must have と should have の違い
どちらも「~したはず」と訳せることがあるので、混同しやすい組み合わせです。
| 英文(和訳) | 表すこと | 実際は? |
|---|---|---|
| He must have left. (彼は出発したに違いない。) | 過去についての確信 | 出発したと強く思っている |
| He should have left by now. (彼はもう出発したはずだ。) | 予想 | 確かめていない |
| He should have left earlier. (彼はもっと早く出発すべきだったのに。) | 非難・後悔 | 出発しなかった |
見分け方:must have は「状況から見て間違いない」という確信です。should have は「本来ならそうなっているはず・そうすべきだった」という、あるべき姿との比較です。
might(may の過去形)だけでは「~したかもしれない」にならない
might は may の過去形です。ですが、推量の might は「過去」ではなく「控えめさ」を表します。過去のことを推量するときは、have+過去分詞を使います。
- × He might be at home yesterday.
- ○ He might have been at home yesterday.
(彼は昨日、家にいたかもしれない。)
確認問題:助動詞+完了形を選んでみよう
( )の中から、文に合うものを選んでください。
- I’m sorry. I ( should have / must have ) called you earlier.
- The ground is wet. It ( must have / can’t have ) rained last night.
- He was in Tokyo all day yesterday. He ( must have / can’t have ) seen you in Osaka.
- It didn’t rain after all. You ( need not have / must have ) brought an umbrella.
- I’m not sure, but she ( may have / should not have ) missed the train.
解答と解説(タップで開く)
- should have:謝っているので、「すべきだったのに」という後悔です。
(ごめんなさい。もっと早く電話すべきでした。) - must have:地面がぬれているという根拠から、強く確信しています。
(地面がぬれている。昨夜雨が降ったに違いない。) - can’t have:一日中東京にいたので、大阪で会うのはありえません。
(彼は昨日一日中東京にいた。大阪であなたに会ったはずがない。) - need not have:雨は降らなかったので、傘は必要ありませんでした。
(結局雨は降らなかった。傘を持ってくる必要はなかったのに。) - may have:「よく分からないけれど」なので、弱い推量です。
(よく分からないけれど、彼女は電車に乗り遅れたのかもしれない。)
まとめ
「助動詞+完了形(have+過去分詞)」の理解&整理はできたでしょうか。
- 助動詞+have+過去分詞は、過去のことへの推量と、過去の行為への後悔・非難を表す
- 推量:may have・might have・could have(かもしれない)、must have(に違いない)、can’t have(はずがない)
- 後悔・非難:should have(すべきだったのに)、should not have(すべきではなかったのに)、need not have(必要はなかったのに)
- 現在完了ではないので、yesterday など過去を表す語と一緒に使える
中でも大切なのは、「各助動詞の意味」と「have+過去分詞(完了形)で過去についてのことを表すことができる」の2点です。この2点をしっかりと押さえていれば、思ったよりも簡単に感じるのではないでしょうか。
最後に:文法書で知識を整理しよう
もし、不明な点があれば、総合英語や英文法書で確認してみてください。
- 向いている人:自然な例文で、文法の使い方を確かめたい人。疑問点を辞書のように調べたい人
- 向いていない人:問題をたくさん解きながら覚えたい人(別途、問題集が必要です)
あわせて読みたい:『表現のための実践ロイヤル英文法』のレビューと使い方!自然な英語を学べる現代のスタンダードな英文法書です【黄ロイヤル】
Kindle版の英文法書を使うと、疑問点などを調べる時にかなり便利です。効率よく英語学習を進めることができると思いますので、1冊は持っておいて損はないでしょう。
あわせて読みたい:英文法書のKindle版がおすすめ!メリットだらけ&便利すぎるので英語の勉強に活用しよう!
あわせて読みたい:洋書初心者がペーパーバックを読めるようになる方法・中学英語からの最短ルート【英語多読】
あわせて読みたい:日本人が洋書を読めないのはなぜ?主な理由と、読めるようになるのに必要なこと【英語多読】
その他の英文法の難しい単元を分かりやすく解説した「英文法の苦手を克服!」シリーズの記事も、ぜひ読んでみてください。
