下の例文を見てください。

  • If it rained today, I would not go out.

これは、現在、雨は降っていないのに、「もし今、雨が降っているならば」という現在の事実に反する仮定をしている文です。これが仮定法過去でした。

では、「もし昨日、雨が降ったならば」という過去の事実に反する仮定をしたい場合には、どうすればいいでしょうか。これが今日の課題です。

 

仮定法過去完了過去の事実に反する仮定)

下の例文を見てみましょう。

  • If it had rained yesterday, I would have gone out.

これは、昨日、雨は降らなかったのに、「もし昨日、雨が降ったならば」という過去の事実に反する仮定をしている文です。これを仮定法過去完了といいます。

仮定法過去完了は、"If "の部分の動詞を過去完了形にすることで、過去における仮定の意味を表します。(過去完了の説明を見たいときはここをクリック

また、「もし~ならば、~だろう」という後半部分は、上の例文のようにwouldcouldという助動詞と、その後にhave + 過去分詞という形を使って表します。例文をよく読んでパターンをつかんで下さい。

  • If he had entered the room, He would have died.(もし彼がその部屋へ入ったら、彼は死んでいただろう)(実際には部屋に入らなかったので死ななかった)
  • If I had studied more in my school days, I could have become a president.(学生時代にもっと勉強していれば、社長になれたんだが(実際には勉強しなかったので、社長になれなかった)
  • If you had driven more carefully, you would not have broken your car.(あなたがもっと注意して運転していたら、車を壊すことはなかったのに)(実際には不注意な運転をして、車を壊してしまった)
  • If I had been healthy those days, I could have played baseball.(あの頃私が健康だったら野球ができたんだが(実際には病気だったので、野球ができなかった)

注意!

 仮定法過去完了で、動詞がhaveである場合 (例:もしあのとき私が100万円持っていたら...)

過去完了は had + 過去分詞 & have の過去分詞は had

したがってhaveの過去完了は "had had ..." となります。

 

まだわかりにくい人のために

条件節:If I have a million yen, (もし100万円あれば...)←(可能性がある場合)

仮定法過去:If I had a million yen, (もし100万円あったなら)←(実際には持っていない)

仮定法過去完了:If I had had a million yen, (あのとき100万円あったなら)←(過去の事実に反する仮定)