解説記事 — フレーズフレーズミー

動詞の形(時制)

should have done・must have done の使い方|助動詞+have+過去分詞で過去を振り返る

30秒でわかる

can・must・should・may などの助動詞で過去の出来事を振り返るときは、後ろをhave+過去分詞にします。He can't have said so.(言ったはずがない)・You should have told me.(言ってくれればよかったのに)。助動詞を過去形にするのではなく、後ろの動詞のかたまりを have+過去分詞に変えるのがこの形の作り方です。迷ったら「その出来事はもう終わったことか?」と自問——終わったことなら have+過去分詞です。

×He couldn't say so.
He can't have said so.

まず、実際の間違いを見てください

次の3つは、当サービスの人手添削で実際に繰り返し指摘された誤答です(回数は同じ間違いが添削された実測値)。

例文: 彼がそう言ったはずがない。

×He couldn't say so.85回
He can't have said so.

「彼がそう言ったはずがない」のつもりの誤答です。couldn't say だと「言うことができなかった」という能力の話になってしまいます。「〜したはずがない」という過去への推量は can't(cannot)have+過去分詞。couldn't have said も使えますが、「はずがない…と思うんだけど」と少し控えめな響きになります。

例文: あなたは私のためにそのような高い誕生日プレゼントを買う必要はなかったのに。

×You need not to have bought such an expensive present.77回
You need not have bought such an expensive present.

「買う必要はなかったのに(でも買ってしまった)」の need は助動詞です。助動詞の後ろは原形なので、to は入りません——need not have bought とつなげます。

例文: 彼は私のことをほかの人と間違えたにちがいない。

×He must have mistook me for someone else.63回
He must have mistaken me for someone else.

形は合っているのに、have の後ろを過去形(mistook)にしてしまう誤りです。have の後ろは必ず過去分詞——mistake は mistake–mistook–mistaken と3つの形が全部違う動詞なので、特に狙われます。

第29位

「助動詞+have+過去分詞」のミスは、よくある誤り全222タイプの中で第29位。当サービスの人手添削12年分で3,803回指摘されました。「形そのものを知らない・使い忘れる」誤りと、「形は知っているが have の後ろを過去分詞にできない」誤りの2段構えになっているのが特徴です。

なぜ間違えるか——日本語のクセ

日本語では「言ったはずがない」「買う必要はなかったのに」「使うべきではなかった」と、文の最後の「〜た」ひとつで過去を示せます。推量(はず・かも・べき)の部分と、過去(〜た)の部分が、語尾の中で一体化しているのです。

英語ではこの2つが分業です。推量は助動詞(can't・must・should・may)が担当し、過去は have+過去分詞が担当します。日本語の感覚で「過去だから助動詞を過去形に」と考えると、couldn't say(できなかった)のように能力・許可の過去とまざってしまい、推量の意味が消えます。「〜たはず」「〜たのに」の「た」を見つけたら、助動詞ではなく後ろの動詞側を have+過去分詞に変える——これがこの形の核心です。

now must be tired =今の推量 見ているのも、疲れているのも「今」 must have mistaken =過去への推量 推量する今から、終わった出来事を振り返る
助動詞+原形は「今」の推量(上)。have+過去分詞を足すと、今の視点から過去の出来事を振り返る形になる(下)。振り返る矢印の分だけ have+過去分詞が必要。

図の内容を表にするとこうなります。「た」があるかどうかで右の列に切り替わります。

意味今のこと過去のこと(振り返り)
〜にちがいない/〜したにちがいないmust bemust have been
〜はずがない/〜したはずがないcan't becan't have been
〜かもしれない/〜したかもしれないmay/might bemay/might have been
〜すべきだ/〜すべきだった(のに)should doshould have done
〜する必要はない/必要はなかった(のに)need not doneed not have done

こう考える——書くときの判断手順

  1. 日本語に「〜したはず」「〜すべきだった」「〜したかもしれない」のような推量・後悔があるか——あるなら助動詞の出番
  2. その出来事はもう終わったことか——終わったことなら助動詞の後ろを have+過去分詞にする。今のことなら原形のまま(might be)
  3. have の後ろは過去形でなく過去分詞か確認する(mistook でなく mistaken・spend でなく spent)
  4. 否定の not は助動詞の直後に置く——should not have bought・can't have said(have の後ろに not を置く語順は減点対象)

ここまでは同じ、ここからは別

この形には、正解が1つに決まらない場面と、逆に付けすぎが減点になる場面があります。

まとめ——書いたあとのチェック

この間違い、自分もやるか試してみる

この記事で見た「彼がそう言ったはずがない。」を、実際に英語で書いてみてください。「はずがない」+「言った」をどう組み立てるかがそのまま試される問題です。書いた英文は AI がその場で採点します(登録は不要です)。

「彼がそう言ったはずがない。」を英語で書いてみる登録なしで、この1問をAIが採点します

データについて: 本文の回数・割合は、フレーズフレーズミーの人手添削データ12年分の集計値です(添削と誤りタグの照合 655,994回のうち、本記事のタグ「助動詞をともなう過去の表現(助動詞+have+過去分詞)」への照合が 3,803回・0.6%。集計 2026-08-13)。誤答例の「◯回」は、同じ間違いが人手添削と照合された回数です。誤答例はいずれも実際の学習者の答案に現れた文で、個人が特定できる情報は含みません。

著者: 株式会社コンテンツアンドシステムズ(人手添削18.4万件・採点基準416問を運営する、ITと教育の融合をミッションとする会社です)。データの出どころと記事の作り方は運営者とデータについてをご覧ください。

← 解説記事の一覧フレーズフレーズミーをはじめる