発展 · Unit 75

仮定法過去完了

仮定法過去完了は「If + 主語 + had + 過去分詞, 主語 + would/could/might + have + 過去分詞」の形で、すでに過ぎ去った過去の事実と反対の状況を想像して話す表現です。

概念の説明

仮定法過去完了は「If + 主語 + had + 過去分詞, 主語 + would/could/might + have + 過去分詞」の形で、すでに過ぎ去った過去の事実と反対の状況を想像して話す表現です。

 

A.  形 — If + had + p.p., would/could/might + have + p.p. 

仮定法過去完了は if 節に had + 過去分詞(過去完了)、主節に would/could/might + have + 過去分詞を組み合わせて使いますIf + had + 過去分詞, would have + 過去分詞 の公式を丸ごと覚えます。

構造ニュアンス
If + had p.p., would have p.p.そうしたでしょうIf I had known, I would have called.
If + had p.p., could have p.p.できたでしょうIf she had tried, she could have won.
If + had p.p., might have p.p.そうしたかもしれないIf we had left earlier, we might have caught it.
  • If I had woken up earlier, I wouldn't have been late. (もっと早く起きていたら、遅刻しなかったのに。)
  • If they had invited us, we would have come. (彼らが私たちを招待していたら、私たちは来たのに。)
  • If she had studied medicine, she could have become a doctor. (彼女が医学を勉強していたら、医者になれたのに。)
  • If I had taken the bus, I might have arrived on time. (バスに乗っていたら、時間通りに着いたかもしれません。)

 

B.  意味 — 過去の事実の反対 

仮定法過去完了はすでに起きた過去のことをひっくり返して想像する表現なので、文の後ろには「(実際にはそうしなかった)」という含意が常に隠れています。後悔・残念・安堵・非難のような感情を伝えるときによく使います。

ニュアンス隠れた含意
後悔If I had studied more, I would have passed.勉強しなかった、不合格だった
残念If we had left earlier, we would have caught the flight.遅く出て逃した
安堵If I hadn't worn a helmet, I would have been hurt.かぶっていてケガしなかった
非難If you had told me, I would have helped.言わなかったので手伝えなかった
  • If I hadn't slept in, I would have caught the bus. (私が寝坊しなかったら、バスに乗れたのに。)
  • If he had apologized, she would have forgiven him. (彼が謝っていたら、彼女は彼を許したのに。)
  • If I had brought an umbrella, I wouldn't have gotten wet. (傘を持ってきていたら、濡れなかったのに。)
  • If she had told me the truth, I wouldn't have been upset. (彼女が私に真実を話していたら、私は腹を立てなかったのに。)

 

C.  時制の可視化 — 実際 vs 想像の対比 

仮定法過去完了は時間軸で「過去のある時点」を見ながらそのときの選択をひっくり返す表現なので、実際にあったことと想像したことの対比をはっきり覚えておくとニュアンスが生きます

実際 (事実)想像 (反対)
I didn't study. → I failed.If I had studied, I would have passed.
She left late. → She missed the train.If she had left early, she wouldn't have missed it.
We didn't know. → We didn't help.If we had known, we would have helped.
He didn't apologize. → She stayed angry.If he had apologized, she would have forgiven him.
  • If I had taken the job, I would have moved to New York. (その仕事を引き受けていたら、ニューヨークに引っ越したのに。)
  • If she hadn't forgotten her passport, she would have boarded the plane. (彼女がパスポートを忘れなかったら、飛行機に乗れたのに。)
  • If we had checked the weather, we wouldn't have gone hiking. (天気を確認していたら、ハイキングに行かなかったのに。)
  • If he had saved, he could have bought a car. (彼がお金を貯めていたら、車を買えたのに。)

重要ポイント

  1. 1仮定法過去完了はすでに過ぎ去った過去の事実をひっくり返して想像する表現なので、実際にはそうしなかったという含意が必ず隠れているという点が核心です。(例: If I had studied, ... → 実際は勉強しなかった)
  2. 2if 節に had + 過去分詞、主節に would/could/might + have + 過去分詞を組み合わせて使う二重構造が形の核心です。(例: If I had known, I would have called.)
  3. 3仮定法過去完了の if 節の中には絶対に would have や will have を使わず、had p.p. だけを使うという点が最もよく間違える箇所です。(例: If I had known, ...)
  4. 4主節の would/could/might はニュアンスだけが異なり、あとには必ず have + 過去分詞が来るという形を守ります。(例: I would have gone / could have gone)
  5. 5会話では would have / could have を would've / could've と自然に短縮して発音するのが一般的です。(例: I would've gone. / He could've helped.)

例文

If I had studied harder, I would have passed the exam.
もっと一生懸命勉強していたら、試験に合格したのに。
If she had left earlier, she would have caught the train.
彼女がもっと早く出ていたら、電車に乗れたのに。
If we had known, we would have helped you.
私たちが知っていたら、あなたを助けたのに。
If he had listened to me, he wouldn't have made that mistake.
彼が私の言うことを聞いていたら、そんなミスをしなかったのに。
If I had saved money, I could have bought the house.
お金を貯めていたら、その家を買えたのに。
このユニットには例文がもっとあります。登録すると全文を音声つきで確認できます。

こんな間違いに注意

If I would have known, I would have told you.
If I had known, I would have told you.
If she had left earlier, she wouldn't miss the train.
If she had left earlier, she wouldn't have missed the train.
If I had studied, I would passed the exam.
If I had studied, I would have passed the exam.
If he listened to me, he wouldn't have failed.
If he had listened to me, he wouldn't have failed.
If we had knew, we would have come.
If we had known, we would have come.
この概念、本当に理解できているか確かめましょう
読むことと解くことは別物です。間違えたらAIがどの概念でつまずいたかを教えてくれます。
無料で問題を解いてみる