仮定法(過去・過去完了)
If I were rich, I would travel. のように、現実とは違うことを「もし〜なら」と表します。
説明
仮定法は、「もし〜だったら」と現実ではないことを想像して表します。
「もし私が鳥なら飛んでいける」「あのとき諦めなければよかった」のように、現実と違う想像や叶わなかった仮定を表したいときに使います。
想像する時点が「今」か「過去」かで、文の形を使い分けます。今のことなら動詞を過去形に、過去のことなら had + 過去分詞にします。
2つの仮定法
今回のゴール
- 「実際にありうる条件」と「現実とは違う想像」の使い分けを覚える
- If + 過去形で「今の事実と違う想像」が言えるようになる
- If + had + 過去分詞で「過去の事実と違う想像」が言えるようになる
- if 節の動詞の形による条件 vs 想像の見分け方を覚える
「実際にありうる条件」と「現実とは違う想像」の使い分けを覚える
同じ If で始まる文でも、「起こりうる条件」と「現実とは違う想像」では意味が違います。見分けるのは 動詞の時制で、時制を1つ過去にずらすことで「これは現実ではない」と伝えます。
例文
If you study hard, you will pass the exam.
一生懸命勉強すれば、試験に受かるでしょう。
If I had a dog, I would walk it every day.
もし犬を飼っていたら、毎日散歩させるのですが。
If + 過去形で「今の事実と違う想像」が言えるようになる
If + 過去形 で「もし今〜だったら」と、現在の事実と違うことを想像します。動詞は過去形にしますが、意味は現在の想像です。
be動詞は were を使うのが基本で、I were / he were のように主語に関係なく were にします。会話では was が使われることもあります。
例文
If I were rich, I would travel around the world.
もしお金持ちだったら、世界中を旅行するのですが。
If I had more time, I could help you.
もっと時間があれば、手伝えるのですが。
If I knew the answer, I could tell you.
答えを知っていれば、教えられるのですが。
If + had + 過去分詞で「過去の事実と違う想像」が言えるようになる
過去の事実と違うことを想像する形です。「あの時こうしていれば…」という後悔を表すことが多いです。
if のまとまりには had + 過去分詞を使い、時制を1つさらにずらして「過去の過去」として表します。
例文
If I had studied harder, I would have passed the exam.
もっと勉強していたら、試験に合格していたでしょう。
If you had told me earlier, I could have helped you.
もっと早く言ってくれていたら、手伝えたのですが。
If I had left home earlier, I would have caught the train.
もっと早く家を出ていれば、その電車に乗れていたでしょう。
if 節の動詞の形による条件 vs 想像の見分け方を覚える
同じ if を使う文でも、動詞の形によって「起こりうる条件」か「想像上の仮定」かが変わります。現在形なら実現の可能性がある条件文、過去形なら現在の仮定法、had + 過去分詞なら過去の仮定法です。
例文
If she comes, we will start the game.
彼女が来たら、試合を始めます。
If she came, we would start the game.
もし彼女が来たら、試合を始めるのですが。
間違えやすいポイント
If I were rich, I will buy a car.
If I were rich, I would buy a car.
現在の事実と異なる仮定では、メインの文も would + 動詞の原形にします。will は実際にありうる条件(普通の条件文)に使います。なお会話では I were の代わりに I was も使われます。
If I studied harder, I will pass.
If I studied harder, I would pass.
仮定法過去のメインの文では would + 動詞の原形を使います。will は実際にありうる条件(普通の条件文)に使います。
If I have more time, I would study more.
If I had more time, I would study more.
現在の事実と異なる仮定では、if のまとまりを過去形にします。現在形にすると普通の条件文になってしまいます。
If I would have known, I would have come.
If I had known, I would have come.
仮定法過去完了の if のまとまりでは had + 過去分詞を使います。would はメインの文に置きます(if のまとまりには入れません)。
まとめ
- 「実際にありうる条件」と「現実とは違う想像」の使い分けを覚える
- If + 過去形で「今の事実と違う想像」が言えるようになる
- If + had + 過去分詞で「過去の事実と違う想像」が言えるようになる
- if 節の動詞の形による条件 vs 想像の見分け方を覚える