仮定法過去完了をわかりやすく 過去への仮定|英文法の地図

仮定法過去完了をわかりやすく解説する記事のアイキャッチ 文法項目別の解き方

仮定法過去完了の文でwould have+過去分詞のような形を見ると、haveがもう1つ増える理由が分からなくなることがあります。この迷いは、仮定法過去完了が指しているのが「今」ではなく「過去のある時点」だと気づいていない一点から起きます。

この記事で分かること

  • 仮定法過去完了が「過去の事実に反すること」をどう表すか
  • if節と主節を過去完了の形に組み立てる手順
  • 仮定法過去とどこで判断が分かれるか

対象:学校文法(仮定法過去完了)

仮定法過去完了とは何か:過去の事実に反する仮定を表す形

仮定法過去完了で表すのは、過去のある時点における事実に反する仮定です。骨格は「If+主語+had+過去分詞 〜, 主語+would/could/might have+過去分詞 〜.」です。if節・主節のどちらも過去完了の形を使います。

仮定法は中学校で基本的なものを学び、高校の学校文法でまとまって扱われます。仮定法過去完了もその一つです。仮定法過去が「今の事実」に反する内容を過去形で表すのに対し、仮定法過去完了は「過去のある時点の事実」に反する内容を、時制をもう1段階過去へずらして表します。この距離の作り方そのものは仮定法過去の使い方 現在の事実に反する仮定で扱いました。過去形が「現実からの距離」を示す仕組みが曖昧な場合は、先に確認しておくと判断が早くなります。

仮定法にはこのほか、実現の可能性が極めて低い仮定を表す仮定法未来と、wishに続く節で使う仮定法があります。wish構文の使い方 仮定法との関係を整理では、wishに続く節の仮定法を扱っています。

つまずくのは「時制をもう1段階ずらす」ところ

仮定法過去完了で手が止まる場面を分けると、次の2点にまとまります。

1つ目は、if節だけをhad+過去分詞にして、主節をwould+動詞の原形のままにしてしまうことです。仮定法過去の作り方が先に定着していると、主節のhaveを付け忘れ、指している時間が過去なのか今なのか宙に浮いた文になります。

2つ目は、話している内容が「今の事実」なのか「過去のある時点の事実」なのかを見極めずに、仮定法過去と仮定法過去完了のどちらを使うか判断してしまうことです。「あのとき〜だったら」という日本語だけでは、過去の一時点の話なのか、現在まで続く話なのかが伝わりにくく、判断を誤りやすくなります。

もう1つ紛らわしいのが、if節を伴わない通常の過去完了形(過去のある時点より前の出来事を表す用法)と、見た目がまったく同じhad+過去分詞を使う点です。仮定法かどうかは、if節があるかどうかと、主節がwould/could/might haveの形になっているかどうかで見分けます。

if節と主節を組み立てる3つの手順

以下の順番で確認してください。過去の事実に反するかを見極め、if節を過去完了にし、主節を組み立てる並びです。

仮定法過去完了を組み立てる3つの手順を示した図

手順1:過去のある時点の事実に反する内容かを判断する

話している内容が、今のことなのか、過去のある時点のことなのかをまず見極めます。過去の一時点の事実に反する内容であれば仮定法過去完了、現在の事実に反する内容であれば仮定法過去に進みます。

手順2:if節の動詞をhad+過去分詞にする

事実に反する過去の内容だと判断したら、if節の動詞をhad+過去分詞の形にします。仮定法過去がhad一段階だけを使うのに対し、仮定法過去完了はhad+過去分詞まで進め、時制をもう1段階過去へ押し下げます。

手順3:主節をwould/could/might have+過去分詞にする

主節は、主語の後にwould/could/might have+過去分詞を置く形です。ここでhaveを落として動詞の原形のままにすると、if節だけが過去完了で主節が仮定法過去という食い違った文になります。

写真家の加藤さんを例に、次の3文で手順の使い方を確認します。撮影会の当日にバッテリー切れで写真を撮れなかった、という場面です。

  • If Kato had charged it, he could have taken photos.(充電していたら、写真を撮れていただろう。)

→ 手順2でchargeをhad chargedにし、手順3でcould haveを使っています。過去の一時点(撮影当日)の事実に反する内容です。

  • If Kato had come early, he could have set up lights.(早く来ていたら、照明を準備できていただろう。)

→ 手順2でcomeをhad comeにし、手順3でcould haveを使っています。

同じ加藤さんの話でも、次の文は仮定法過去です。

  • If Kato charged it early, he could avoid the problem.(早めに充電すれば、この問題を避けられるだろう。)

→ 手順1で今後の行動一般に対する仮定だと判断し、if節はcharged、主節はcould+原形の仮定法過去です。

上の3文目は、過去の一度の出来事ではなく、今後にも当てはまる一般的な仮定を述べています。同じ人物・似た場面でも、指している時間が過去の一時点か、今も続く一般論かで、使う形がここまで変わります。

確認問題(編集部作成)

上の3手順だけで解ける問題を2問置きます。手を動かしてから解答を見てください。

【確認問題1】 IT企業でプロジェクトリーダーを務める松本さんは、先週の会議で資料を確認しておけばよかったと感じています。「事前に資料を確認していたら、松本さんはすぐに質問に答えられただろう」を英語にする場合、正しいのはどちらですか。

A. If Matsumoto had checked the file, he could have answered right away. B. If Matsumoto checked the file, he could answer right away.

【解答】 A

【解説】 手順1で、先週の会議という過去の一時点の事実に反する内容だと判断します。手順2でcheckをhad checkedにします。Aはcould haveを使っているため、手順3の判定に一致する選択肢です。

【確認問題2】 中学校で理科を教える岡田さんは、期末試験の前にもっと復習時間があればよかったと振り返っています。次の英文の空所に入るのはどちらですか。

If there (    ) more time for review, the average score would have been higher.

A. had been B. was

【解答】 A

【解説】 手順1で、期末試験前という過去の一時点の事実に反する内容だと判断します。手順2でbe動詞をhad beenにします。手順3ではwould haveを使っているため、if節も過去完了にそろえてください。

※本問・本例文は編集部が作成したオリジナルです。過去問・教材からの転載ではありません。

間違えやすい罠:仮定法過去・直説法過去完了との混同

見た目が似ている形が2つあるため、仮定法過去完了は「どの時点の、事実に反する話か」を見失った瞬間に崩れます。表で違いを確かめてください。

やりがちな判断正しい判断なぜずれるか
if節にwouldを使う(If Kato would have charged it, …)if節はhad+過去分詞にする(If Kato had charged it, …)if節で時制を動かすのは動詞そのもので、wouldを入れる場所ではないため
主節をwould+動詞の原形のままにする(…, he would avoid the problem.)主節はwould/could/might have+過去分詞にする(…, he could have avoided the problem.)主節が仮定法過去のままで、if節だけが過去完了になっています
仮定している時点を確かめないまま形を決める過去の一時点の事実に反する内容かを先に判断する仮定法過去と仮定法過去完了は、指している時間帯が違うだけで形の見た目が似ています
if節を伴わない通常の過去完了形と同じ形だと思い込むif節の有無と主節の形で仮定法かどうかを見分ける過去完了形(had+過去分詞)は、仮定法以外の場面(基準点より前の出来事を表す用法)でも使われます

この4つのずれを防ぐ鍵は、if節と主節を必ずセットで見る癖です。手順2と手順3を一緒に確認すれば、どちらか一方だけ直説法や仮定法過去のまま残ることはなくなります。仮定法過去と仮定法過去完了のどちらを使うか、判断の基準だけをまとめて比べたい場合は仮定法過去と仮定法過去完了の違いを整理するで確認できます。

学校文法では、if節を過去完了・主節をwould+動詞の原形にする組み合わせが「混合仮定法」として扱われることがあります。過去の事実に反する仮定の結果が今も続く場合に使われる形ですが、本記事では基本形である仮定法過去完了の作り方に絞って整理しました。

次に学ぶ論点:仮定法未来へ

仮定法過去完了は、仮定法過去の次に位置する論点です。時制をもう1段階過去にずらす考え方が曖昧な場合は、前の見出しで触れた仮定法過去の基本に戻って確認できます。

次に進むのは、実現の可能性がさらに低い仮定を表す仮定法未来です。were toとshouldをどう使い分けるかは仮定法未来の使い方 were toとshouldの違いにまとめています。分野全体の流れは、仮定法の全体像 過去・過去完了・未来・wishの関係の学習順マップで確認できます。

まとめ

  1. 仮定法過去完了は「If+主語+had+過去分詞 〜, 主語+would/could/might have+過去分詞 〜.」の形です。過去の事実に反する仮定を表します。
  2. 仮定法過去が「今」との距離を過去形で示すのに対し、仮定法過去完了は「過去のある時点」との距離を過去完了形で示します。
  3. 判断の手順は、過去の事実に反するかを見極め、if節をhad+過去分詞にする流れです。続けて、主節をwould/could/might have+過去分詞にします。
  4. if節を伴わない通常の過去完了形と形が同じでも、if節の有無と主節の形で仮定法かどうかを見分けられます。
  5. if節を過去完了・主節を仮定法過去の形にする混合仮定法は、学校文法で扱われることがありますが、本記事では基本形に絞って整理しました。

本記事は英語学習を目的とした情報であり、個別の学習指導・答案添削ではありません。 試験制度・出題形式は変更されることがあります。受験の際は必ず公式の最新情報をご確認ください。 → 免責事項(/policy/)

最終確認日:2026-09-21

タイトルとURLをコピーしました